/* Ganchos de acción compartidos: puntos de venta, correo, asesor, redes */
.cta-grid{display:grid;grid-template-columns:1fr;gap:12px}
.cta{border:1px solid var(--line);border-radius:var(--r);padding:20px}
.cta-ancha{grid-column:1/-1}
.cta-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px}
.cta-head .ci{background:var(--navy-50);color:var(--navy);box-shadow:none}
.cta h3,.cta h4{font-family:var(--f-head);font-size:.95rem;font-weight:700;color:var(--navy);line-height:1.3}
.cta-head p{font-size:.85rem;color:var(--ink-2);margin-top:2px}
.cta-fila{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.cta-sep{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.btn-sm{height:44px;padding:0 18px;font-size:.84rem;white-space:nowrap}
.btn-sm svg{width:16px;height:16px}
.cta select,.cta input[type=email]{flex:1;min-width:190px;height:44px;border:1.5px solid var(--line-2);border-radius:999px;font:inherit;font-size:.9rem;font-weight:600;color:var(--ink);background:var(--surface);transition:border-color .15s,box-shadow .15s}
.cta input[type=email]{padding:0 18px}
.cta select{padding:0 40px 0 18px;appearance:none;-webkit-appearance:none;cursor:pointer;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23182A46' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 16px center/14px no-repeat}
.cta select:focus,.cta input[type=email]:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 4px rgba(24,42,70,.1)}
.cta-estado{font-size:.82rem;color:var(--ink-2);margin-top:10px}
.cta-estado:empty{display:none}
.cta-estado.ok{color:#1d6b3a;font-weight:600}
.cta-estado.error{color:var(--error);font-weight:600;min-height:0}
.tiendas{list-style:none;display:grid;gap:8px;margin-top:12px}
.tiendas:empty{display:none}
.tiendas li{display:grid;grid-template-columns:1fr auto;gap:8px 12px;padding:14px;background:var(--bg);border-radius:var(--r-sm)}
.t-txt{display:flex;flex-direction:column;gap:1px;min-width:0}
.t-nom{font-family:var(--f-head);font-weight:700;font-size:.88rem;color:var(--ink)}
.t-dir{font-size:.82rem;color:var(--ink-2)}
.t-hor{font-size:.78rem;color:var(--ink-3)}
.t-dist{font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.88rem}
.t-acc{grid-column:1/-1;display:flex;gap:6px 16px;flex-wrap:wrap;font-size:.8rem}
.t-acc:empty{display:none}
.t-acc a{display:inline-flex;gap:5px;align-items:center;text-decoration:none}
.t-acc a:hover{text-decoration:underline}
.t-acc svg{width:14px;height:14px}
.online{margin-top:14px;font-size:.86rem}
.online summary{cursor:pointer;font-weight:700;color:var(--navy);padding:4px 0}
.link-ext{display:inline-flex;gap:6px;align-items:center;margin-top:14px;font-size:.84rem}
.link-ext svg{width:14px;height:14px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:.84rem;color:var(--ink-2);margin-top:12px;cursor:pointer}
.check input{width:18px;height:18px;margin-top:1px;accent-color:var(--navy);flex-shrink:0}
.legal{font-size:.76rem;color:var(--ink-3);margin-top:8px}
.legal a{font-weight:600}
.cta-oscuro{background:var(--navy);border-color:var(--navy)}
.cta-oscuro h3,.cta-oscuro h4{color:#fff}
.cta-oscuro .cta-head p{color:rgba(255,255,255,.78)}
.cta-oscuro .cta-head .ci{background:rgba(255,255,255,.1);color:var(--oro-claro)}
.btn-wsp{background:#25D366;color:#06371a;text-decoration:none}
.btn-wsp:hover{background:#3ee07c}
.redes{display:flex;gap:8px;flex-wrap:wrap}
.red{display:inline-flex;gap:8px;align-items:center;height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--line-2);font-size:.84rem;font-weight:700;color:var(--navy);text-decoration:none;transition:background-color .15s}
.red:hover{background:var(--navy-50)}
.red svg{width:16px;height:16px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(max-width:520px){
  .cta-fila>input,.cta-fila>select,.cta-fila>.btn{flex:1 1 100%}
  .cta{padding:18px 16px}
}

