/* ==========================================================
   TuSeguroMas · Correduría de seguros
   Hoja de estilos principal (paleta tomada del logotipo)
   ========================================================== */

@font-face{font-family:"Poppins";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/poppins-regular.woff") format("woff")}
@font-face{font-family:"Poppins";font-weight:500;font-style:normal;font-display:swap;src:url("../fonts/poppins-medium.woff") format("woff")}
@font-face{font-family:"Poppins";font-weight:700;font-style:normal;font-display:swap;src:url("../fonts/poppins-bold.woff") format("woff")}

:root{
  --burdeos:#70101D;
  --burdeos-osc:#3F0810;
  --burdeos-med:#8C1A2B;
  --burdeos-tinte:#F8ECEE;
  --tinta:#17120F;
  --oro:#B98A4E;
  --oro-claro:#EBD9BC;
  --verde:#6FA37F;
  --verde-clara:#8FBF9E;
  --verde-oscura:#5C9272;
  --verde-tinte:#EEF5F0;
  --crema:#FBF7F2;
  --gris:#635B56;
  --linea:#E9E1DA;
  --blanco:#fff;
  --ok:#1F7A4D;
  --radio:16px;
  --sombra:0 10px 30px rgba(63,8,16,.12);
  --sombra-suave:0 4px 14px rgba(63,8,16,.08);
  --ancho:1200px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:16px;line-height:1.6;color:var(--tinta);background:var(--blanco)}
img,svg{max-width:100%;display:block}
a{color:var(--burdeos);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{line-height:1.2;margin:0 0 .5em;font-weight:700;letter-spacing:-.01em}
h1{font-size:clamp(2rem,4.6vw,3.2rem)}
h2{font-size:clamp(1.55rem,3vw,2.2rem)}
h3{font-size:1.15rem}
p{margin:0 0 1em}
ul{margin:0;padding:0;list-style:none}
:focus-visible{outline:3px solid var(--oro);outline-offset:2px;border-radius:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.saltar{position:absolute;left:-999px;top:0;background:var(--burdeos);color:#fff;padding:.6rem 1rem;z-index:200}
.saltar:focus{left:0}

.wrap{width:100%;max-width:var(--ancho);margin:0 auto;padding:0 20px}
.seccion{padding:72px 0}
.seccion.crema{background:var(--crema)}
.seccion.oscura{background:var(--burdeos-osc);color:#fff}
.cabecera-seccion{max-width:720px;margin:0 auto 40px;text-align:center}
.cabecera-seccion p{color:var(--gris);font-size:1.05rem}
.oscura .cabecera-seccion p{color:rgba(255,255,255,.8)}
.etiqueta{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--oro);margin-bottom:.6rem}

.ico{width:1.25em;height:1.25em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* ---------- Botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:inherit;font-weight:700;font-size:1rem;padding:.85rem 1.5rem;border-radius:999px;border:2px solid transparent;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s,color .15s;text-decoration:none!important;line-height:1.2}
.btn:hover{transform:translateY(-1px)}
.btn-primario{background:var(--burdeos);color:#fff;box-shadow:0 6px 16px rgba(112,16,29,.3)}
.btn-primario:hover{background:var(--burdeos-med)}
.btn-oro{background:var(--oro);color:var(--tinta)}
.btn-oro:hover{background:#c99b5e}
.btn-borde{background:transparent;color:var(--burdeos);border-color:var(--burdeos)}
.btn-borde:hover{background:var(--burdeos);color:#fff}
.btn-claro{background:#fff;color:var(--burdeos)}
.btn-blanco-borde{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.btn-blanco-borde:hover{background:#fff;color:var(--burdeos)}
.btn-grande{padding:1rem 2rem;font-size:1.05rem}
.btn-bloque{width:100%}

/* ---------- Barra superior ---------- */
.topbar{background:var(--burdeos-osc);color:#fff;font-size:.85rem}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:38px}
.topbar a{color:#fff;display:inline-flex;align-items:center;gap:.4rem}
.topbar .grupo{display:flex;gap:1.4rem;flex-wrap:wrap}
.topbar .mensaje{opacity:.85}

/* ---------- Cabecera ---------- */
.cab{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--linea)}
.cab .wrap{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:74px}
.logo{flex:0 0 auto}
.logo img{height:60px;width:auto;max-width:none;object-fit:contain}
.nav{display:flex;align-items:center;gap:.25rem}
.nav>ul{display:flex;align-items:center;gap:.25rem}
.nav a.enlace,.nav button.enlace{font:inherit;font-weight:500;color:var(--tinta);background:none;border:0;padding:.6rem .9rem;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;text-decoration:none}
.nav a.enlace:hover,.nav button.enlace:hover,.nav .tiene-mega:hover>button{background:var(--burdeos-tinte);color:var(--burdeos)}
.nav a.activo{color:var(--burdeos)}
.tiene-mega{position:relative}
.mega{position:absolute;left:50%;top:100%;transform:translateX(-30%);width:min(800px,92vw);background:#fff;border:1px solid var(--linea);border-radius:var(--radio);box-shadow:var(--sombra);padding:22px 24px 22px 32px;display:none;overflow:hidden}
.tiene-mega:hover .mega,.tiene-mega.abierto .mega,.tiene-mega:focus-within .mega{display:block}
.mega::before{content:"";position:absolute;left:0;top:0;bottom:0;width:8px;background:linear-gradient(180deg,var(--burdeos) 0 48%,var(--verde) 52% 100%)}
.mega .col-titulo{display:inline-flex;align-items:center;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#fff;font-weight:700;padding:.3rem .85rem;border-radius:999px;margin:0 0 1rem}
.mega .col-titulo-veh{background:var(--burdeos)}
.mega .col-titulo-per{background:var(--verde)}
.mega-grid{display:grid;gap:.5rem}
.mega-grid-veh{grid-template-columns:repeat(4,minmax(0,1fr))}
.mega-grid-per{grid-template-columns:repeat(5,minmax(0,1fr))}
.mega-divisor{height:1px;background:var(--linea);margin:1.15rem 0}
.mega a{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.6rem .35rem;border-radius:14px;color:var(--tinta);font-weight:600;font-size:.86rem;line-height:1.25;text-decoration:none;text-align:center}
.mega-grupo-veh a:hover{background:var(--burdeos-tinte)}
.mega-grupo-per a:hover{background:var(--verde-tinte)}
.mega .ico-caja{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:#fff;flex:none}
.mega-grupo-veh .ico-caja{background:radial-gradient(circle at 32% 28%,var(--burdeos-med),var(--burdeos) 70%);box-shadow:0 6px 14px rgba(112,16,29,.28)}
.mega-grupo-per .ico-caja{background:radial-gradient(circle at 32% 28%,var(--verde-clara),var(--verde-oscura) 70%);box-shadow:0 6px 14px rgba(92,146,114,.28)}
.mega .ico-caja .ico{width:20px;height:20px}
.cab-acciones{display:flex;align-items:center;gap:.8rem}
.tel{display:flex;align-items:center;gap:.5rem;font-weight:700;color:var(--burdeos);font-size:.95rem}
.tel small{display:block;font-weight:400;color:var(--gris);font-size:.72rem;line-height:1}
.burger{display:none;background:none;border:0;padding:.4rem;color:var(--tinta);cursor:pointer}
.burger .ico{width:28px;height:28px}

@media (max-width:1060px){
  .tel{display:none}
  .burger{display:block}
  .nav{position:fixed;inset:0 0 0 auto;width:min(360px,88vw);background:#fff;flex-direction:column;align-items:stretch;padding:80px 20px 30px;transform:translateX(100%);transition:transform .25s;box-shadow:-10px 0 30px rgba(0,0,0,.15);overflow-y:auto;z-index:150}
  .nav.abierto{transform:none}
  .nav>ul{flex-direction:column;align-items:stretch;gap:0}
  .nav a.enlace,.nav button.enlace{width:100%;justify-content:space-between;padding:.9rem .6rem;font-size:1.05rem;border-bottom:1px solid var(--linea);border-radius:0}
  .mega{position:static;transform:none;width:auto;box-shadow:none;border:0;padding:.5rem 0 1rem .95rem;display:none}
  .tiene-mega:hover .mega{display:none}
  .tiene-mega.abierto .mega{display:block}
  .mega-grid-veh,.mega-grid-per{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mega a{flex-direction:row;text-align:left;padding:.55rem .5rem}
  .mega .ico-caja{width:36px;height:36px}
  .nav-cerrar{position:absolute;top:18px;right:18px;background:none;border:0;cursor:pointer;color:var(--tinta)}
  .fondo-nav{position:fixed;inset:0;background:rgba(23,18,15,.5);z-index:140;display:none}
  .fondo-nav.abierto{display:block}
  .cab-acciones .btn{padding:.6rem 1rem;font-size:.9rem}
}
@media (min-width:1061px){.nav-cerrar{display:none}.fondo-nav{display:none!important}}
@media (max-width:640px){.topbar .mensaje{display:none}.cab-acciones .btn{display:none}.logo img{height:52px}}

/* ---------- Hero ---------- */
.hero{position:relative;color:#fff;background:
  radial-gradient(900px 500px at 85% -10%,rgba(185,138,78,.35),transparent 60%),
  radial-gradient(700px 500px at -10% 110%,rgba(140,26,43,.6),transparent 60%),
  linear-gradient(135deg,var(--burdeos-osc),var(--burdeos));
  overflow:hidden}
.hero::after{content:"";position:absolute;right:-120px;bottom:-140px;width:520px;height:600px;opacity:.07;background:url("../img/icon-512.webp") center/contain no-repeat;pointer-events:none}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding-top:64px;padding-bottom:72px;position:relative;z-index:1}
.hero h1{color:#fff}
.hero h1 em{font-style:normal;color:var(--oro-claro)}
.hero .lead{font-size:1.15rem;color:rgba(255,255,255,.88);max-width:540px}
.hero-puntos{display:grid;gap:.7rem;margin:1.6rem 0 0}
.hero-puntos li{display:flex;align-items:center;gap:.75rem;font-weight:500}
.hero-puntos .ico-caja{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.14);display:grid;place-items:center;color:var(--oro-claro)}
.hero.interior .wrap{padding-top:52px;padding-bottom:60px}
.migas{font-size:.85rem;margin-bottom:1rem;color:rgba(255,255,255,.75)}
.migas a{color:rgba(255,255,255,.9)}
.migas span{margin:0 .4rem;opacity:.6}
@media (max-width:920px){.hero .wrap{grid-template-columns:1fr;gap:32px;padding-top:40px;padding-bottom:48px}}

/* ---------- Tarjeta comparador ---------- */
.comparador{background:#fff;color:var(--tinta);border-radius:22px;box-shadow:0 24px 60px rgba(0,0,0,.35);padding:22px;border-top:5px solid var(--oro)}
.comparador h2,.comparador h3.titulo-form{font-size:1.25rem;margin:0 0 .25rem}
.comparador .sub{color:var(--gris);font-size:.9rem;margin-bottom:1rem}
.tabs{display:flex;gap:.4rem;overflow-x:auto;padding-bottom:.6rem;margin:0 -4px 1rem;scrollbar-width:thin;min-width:0}
.tab{flex:none;display:inline-flex;align-items:center;gap:.45rem;font:inherit;font-weight:500;font-size:.9rem;padding:.55rem .95rem;border-radius:999px;border:1.5px solid var(--linea);background:#fff;color:var(--tinta);cursor:pointer;transition:all .15s;margin-left:4px}
.tab:hover{border-color:var(--burdeos);color:var(--burdeos)}
.tab[aria-selected="true"]{background:var(--burdeos);border-color:var(--burdeos);color:#fff}
.panel-form[hidden]{display:none}
.mas-lista{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.mas-lista a{display:flex;align-items:center;gap:.6rem;padding:.75rem .9rem;border:1.5px solid var(--linea);border-radius:12px;color:var(--tinta);font-weight:500;font-size:.92rem;text-decoration:none}
.mas-lista a:hover{border-color:var(--burdeos);background:var(--burdeos-tinte);color:var(--burdeos)}
.mas-lista .ico{color:var(--burdeos)}

form .fila{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem}
form .fila.una{grid-template-columns:1fr}
form .fila[hidden]{display:none}
.tar-paso[hidden]{display:none}
.tar-paso{animation:tar-paso-in .35s ease}
@keyframes tar-paso-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.campo label{display:block;font-size:.8rem;font-weight:500;margin-bottom:.25rem;color:var(--gris)}
.campo input,.campo select,.campo textarea{width:100%;font:inherit;font-size:.95rem;padding:.7rem .85rem;border:1.5px solid var(--linea);border-radius:12px;background:#fff;color:var(--tinta);transition:border-color .15s,box-shadow .15s}
.campo textarea{min-height:110px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:none;border-color:var(--burdeos);box-shadow:0 0 0 3px rgba(112,16,29,.15)}
.campo input:user-invalid{border-color:#b3261e}
.legal-check{display:flex;gap:.6rem;align-items:flex-start;font-size:.78rem;color:var(--gris);margin:.4rem 0 1rem;line-height:1.45}
.legal-check input{margin-top:.2rem;accent-color:var(--burdeos);width:1.05rem;height:1.05rem;flex:none}
.aviso-form{font-size:.75rem;color:var(--gris);text-align:center;margin:.7rem 0 0}
.aviso-form a{color:var(--burdeos);font-weight:600}
.comparador-pordias{max-width:770px;margin:0 auto}
.widget-pordias{min-height:325px;max-width:100%;overflow-x:auto}
.widget-pordias #pys-widget{color:var(--gris);font-size:.9rem;text-align:center;padding:2rem 0}
.form-ok{display:none;text-align:center;padding:1.5rem .5rem}
.form-ok.visible{display:block}
.form-ok .ico{width:52px;height:52px;color:var(--ok);margin:0 auto .5rem}
.enviado form{display:none}
.hp{position:absolute!important;left:-9999px!important}
@media (max-width:520px){form .fila{grid-template-columns:1fr}.mas-lista{grid-template-columns:1fr}}

/* ---------- Barra de confianza ---------- */
.confianza{background:#fff;border-bottom:1px solid var(--linea)}
.confianza ul{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:22px 0}
.confianza li{display:flex;align-items:center;gap:.8rem;font-size:.92rem;line-height:1.3}
.confianza strong{display:block;font-size:1.05rem;color:var(--burdeos)}
.confianza .ico-caja{width:46px;height:46px;border-radius:14px;background:var(--burdeos-tinte);color:var(--burdeos);display:grid;place-items:center;flex:none}
.confianza .ico{width:24px;height:24px}
@media (max-width:860px){.confianza ul{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.confianza ul{grid-template-columns:1fr}}

/* ---------- Tarjetas de seguros ---------- */
.rejilla-seguros{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.tarjeta-seguro{display:flex;flex-direction:column;background:#fff;border:1.5px solid var(--linea);border-radius:var(--radio);padding:24px;color:var(--tinta);text-decoration:none!important;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative}
.tarjeta-seguro:hover{transform:translateY(-4px);box-shadow:var(--sombra);border-color:var(--burdeos)}
.tarjeta-seguro .ico-caja{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,var(--burdeos),var(--burdeos-med));color:#fff;display:grid;place-items:center;margin-bottom:1rem}
.tarjeta-seguro .ico-caja .ico{width:28px;height:28px}
.tarjeta-seguro h3{margin-bottom:.35rem}
.tarjeta-seguro p{color:var(--gris);font-size:.92rem;flex:1}
.tarjeta-seguro .desde{font-size:.82rem;color:var(--gris);margin-bottom:.9rem}
.tarjeta-seguro .desde strong{color:var(--burdeos);font-size:1.05rem}
.tarjeta-seguro .ir{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;color:var(--burdeos)}
.tarjeta-seguro:hover .ir .ico{transform:translateX(4px)}
.tarjeta-seguro .ir .ico{transition:transform .18s}
/* Tarjetas de "Personas y hogar" (hogar, salud, vida, decesos, mascotas) en verde, igual que en el megamenú; Vehículos se queda en burdeos */
.tarjeta-seguro-per .ico-caja{background:linear-gradient(135deg,var(--verde),var(--verde-oscura))}
.tarjeta-seguro-per:hover{border-color:var(--verde-oscura)}
.tarjeta-seguro-per .desde strong{color:var(--ok)}
.tarjeta-seguro-per .ir{color:var(--verde-oscura)}
@media (max-width:1020px){.rejilla-seguros{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.rejilla-seguros{grid-template-columns:repeat(2,1fr);gap:14px}.tarjeta-seguro{padding:18px}}
@media (max-width:480px){.rejilla-seguros{grid-template-columns:1fr}}

/* ---------- Pasos ---------- */
.pasos{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;counter-reset:paso}
.paso{position:relative;background:#fff;border-radius:var(--radio);padding:32px 26px 26px;box-shadow:var(--sombra-suave);border:1px solid var(--linea)}
.paso::before{counter-increment:paso;content:counter(paso);position:absolute;top:-22px;left:24px;width:44px;height:44px;border-radius:50%;background:var(--oro);color:var(--tinta);font-weight:700;font-size:1.2rem;display:grid;place-items:center;box-shadow:0 4px 10px rgba(185,138,78,.5)}
.paso .ico{width:34px;height:34px;color:var(--burdeos);margin-bottom:.8rem}
.paso p{color:var(--gris);margin:0}
@media (max-width:860px){.pasos{grid-template-columns:1fr;gap:38px}}

/* ---------- Ventajas ---------- */
.dos-col{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.ventajas{display:grid;gap:1.2rem}
.ventaja{display:flex;gap:1rem}
.ventaja .ico-caja{width:48px;height:48px;border-radius:14px;background:rgba(255,255,255,.12);color:var(--oro-claro);display:grid;place-items:center;flex:none}
.crema .ventaja .ico-caja,.blanca .ventaja .ico-caja{background:var(--burdeos-tinte);color:var(--burdeos)}
.ventaja h3{margin-bottom:.15rem}
.ventaja p{margin:0;opacity:.85;font-size:.95rem}
.tarjeta-destacada{background:linear-gradient(145deg,var(--burdeos),var(--burdeos-osc));color:#fff;border-radius:24px;padding:36px;box-shadow:var(--sombra);position:relative;overflow:hidden}
.tarjeta-destacada::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:rgba(185,138,78,.25)}
.tarjeta-destacada>*{position:relative;z-index:1}
.tarjeta-destacada .btn{margin-top:.5rem}
@media (max-width:860px){.dos-col{grid-template-columns:1fr;gap:32px}}

/* ---------- Ejemplos de precio ---------- */
.rejilla-precios{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.precio{background:#fff;border:1.5px solid var(--linea);border-radius:var(--radio);padding:26px 22px;text-align:center}
.precio .ico{width:34px;height:34px;color:var(--burdeos);margin:0 auto .5rem}
.precio .cantidad{font-size:2.2rem;font-weight:700;color:var(--burdeos);line-height:1.1}
.precio .cantidad small{font-size:.95rem;font-weight:500;color:var(--gris)}
.precio .detalle{color:var(--gris);font-size:.9rem;margin:.4rem 0 1rem}
.nota{font-size:.82rem;color:var(--gris);text-align:center;margin-top:1.4rem}
@media (max-width:1020px){.rejilla-precios{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.rejilla-precios{grid-template-columns:1fr}}

/* ---------- Guías ---------- */
.rejilla-guias{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.guia{display:flex;flex-direction:column;background:#fff;border:1.5px solid var(--linea);border-radius:var(--radio);overflow:hidden;color:var(--tinta);text-decoration:none!important;transition:transform .18s,box-shadow .18s}
.guia:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.guia .cab-guia{height:110px;background:linear-gradient(135deg,var(--burdeos-osc),var(--burdeos-med));color:var(--oro-claro);display:grid;place-items:center}
.guia .cab-guia .ico{width:44px;height:44px}
.guia .cuerpo{padding:18px 20px 22px;display:flex;flex-direction:column;flex:1}
.guia .cuerpo .cat{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--oro);margin-bottom:.4rem}
.guia h3{font-size:1.02rem;margin-bottom:.4rem}
.guia p{color:var(--gris);font-size:.88rem;flex:1;margin-bottom:.8rem}
.guia .leer{font-weight:700;color:var(--burdeos);font-size:.9rem}
@media (max-width:1020px){.rejilla-guias{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.rejilla-guias{grid-template-columns:1fr}}

/* ---------- FAQ ---------- */
.faq{max-width:820px;margin:0 auto;display:grid;gap:.8rem}
.faq details{background:#fff;border:1.5px solid var(--linea);border-radius:14px;padding:0}
.faq summary{list-style:none;cursor:pointer;padding:1.1rem 3rem 1.1rem 1.3rem;font-weight:500;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:1.3rem;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--burdeos);font-weight:400;line-height:1}
.faq details[open]{border-color:var(--burdeos)}
.faq details[open] summary::after{content:"–"}
.faq .respuesta{padding:0 1.3rem 1.2rem;color:var(--gris)}
.faq .respuesta p:last-child{margin:0}

/* ---------- Banda CTA ---------- */
.banda{background:linear-gradient(120deg,var(--burdeos-osc),var(--burdeos));color:#fff;padding:56px 0}
.banda .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center}
.banda h2{color:#fff;margin-bottom:.4rem}
.banda p{color:rgba(255,255,255,.85);margin:0}
.llamada{display:flex;flex-direction:column;gap:.55rem}
.llamada-fila{display:flex;gap:.6rem;background:#fff;border-radius:999px;padding:.4rem;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.llamada-fila input{flex:1;min-width:0;border:0;font:inherit;padding:.6rem 1rem;border-radius:999px;background:transparent}
.llamada-fila input:focus{outline:none}
.llamada-fila .btn{padding:.7rem 1.3rem}
.banda .mini{font-size:.75rem;margin-top:.6rem;color:rgba(255,255,255,.7)}
@media (max-width:860px){.banda .wrap{grid-template-columns:1fr}}
@media (max-width:480px){.llamada-fila{flex-direction:column;border-radius:20px}.llamada-fila input{padding:.8rem 1rem}}

/* ---------- Páginas de producto ---------- */
.contenido-prod{display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:start}
.contenido-prod article h2{margin-top:2.2rem}
.contenido-prod article h2:first-child{margin-top:0}
.lista-check{display:grid;gap:.65rem;margin:1rem 0 1.5rem}
.lista-check li{display:flex;gap:.7rem;align-items:flex-start}
.lista-check .ico{color:var(--ok);margin-top:.25rem}
.modalidades{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin:1.2rem 0 2rem}
.modalidad{border:1.5px solid var(--linea);border-radius:var(--radio);padding:20px;background:#fff}
.modalidad h3{color:var(--burdeos)}
.modalidad p{color:var(--gris);font-size:.92rem;margin:0}
.lateral{position:sticky;top:96px;display:grid;gap:18px}
.caja-lateral{background:var(--crema);border:1.5px solid var(--linea);border-radius:var(--radio);padding:22px}
.caja-lateral.burdeos{background:var(--burdeos);color:#fff;border-color:var(--burdeos)}
.caja-lateral h3{font-size:1.05rem}
.caja-lateral a.enlace-lat{display:flex;align-items:center;gap:.6rem;padding:.55rem 0;color:var(--tinta);font-weight:500;border-bottom:1px solid var(--linea);text-decoration:none}
.caja-lateral a.enlace-lat:last-child{border:0}
.caja-lateral a.enlace-lat:hover{color:var(--burdeos)}
.caja-lateral a.enlace-lat .ico{color:var(--burdeos)}
@media (max-width:960px){.contenido-prod{grid-template-columns:1fr}.lateral{position:static}}

/* ---------- Artículos (guías) ---------- */
.articulo{max-width:780px;margin:0 auto}
.articulo h2{margin-top:2rem;font-size:1.5rem}
.articulo p,.articulo li{font-size:1.04rem}
.articulo ul.puntos{list-style:disc;padding-left:1.3rem;margin:0 0 1.2rem}
.articulo ul.puntos li{margin-bottom:.5rem}
.articulo .destacado{background:var(--burdeos-tinte);border-left:4px solid var(--burdeos);padding:1rem 1.2rem;border-radius:0 12px 12px 0;margin:1.5rem 0}
.meta{color:var(--gris);font-size:.88rem;margin-bottom:1.5rem}

/* ---------- Contacto / legal ---------- */
.tarjetas-contacto{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:40px}
.tarjeta-contacto{background:#fff;border:1.5px solid var(--linea);border-radius:var(--radio);padding:26px;text-align:center}
.tarjeta-contacto .ico{width:34px;height:34px;color:var(--burdeos);margin:0 auto .6rem}
.tarjeta-contacto strong{display:block;font-size:1.1rem}
@media (max-width:760px){.tarjetas-contacto{grid-template-columns:1fr}}
.legal{max-width:820px;margin:0 auto}
.legal h2{font-size:1.35rem;margin-top:2rem}
.legal .pendiente{background:#FFF6DC;border:1px dashed var(--oro);padding:.1rem .4rem;border-radius:6px;font-weight:500}

/* ---------- Pie ---------- */
.pie{background:var(--tinta);color:rgba(255,255,255,.8);padding:64px 0 0;font-size:.92rem}
.pie a{color:rgba(255,255,255,.8)}
.pie a:hover{color:#fff}
.pie .rejilla-pie{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:32px}
.pie h4{color:#fff;font-size:.95rem;margin-bottom:1rem;letter-spacing:.02em}
.pie li{margin-bottom:.55rem}
.pie .marca{background:#fff;border-radius:14px;padding:12px 16px;display:inline-block;margin-bottom:1rem}
.pie .marca img{height:65px;width:auto;max-width:none;object-fit:contain}
.pie .contacto-pie li{display:flex;gap:.6rem;align-items:center}
.pie .contacto-pie .ico{color:var(--oro)}
.pie .redes-pie{display:flex;gap:.6rem;margin:1rem 0 0;padding:0}
.pie .redes-pie li{margin:0}
.pie .redes-pie a{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:rgba(255,255,255,.1)}
.pie .redes-pie a:hover{background:var(--oro);color:var(--tinta)}
.pie .redes-pie .ico{width:16px;height:16px}
.pie .legal-pie{border-top:1px solid rgba(255,255,255,.14);margin-top:44px;padding:22px 0;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.82rem}
.pie .legal-pie p{margin:0}
.pie .aviso-corr{font-size:.78rem;color:rgba(255,255,255,.6);margin-top:1rem;max-width:520px}
@media (max-width:1020px){.pie .rejilla-pie{grid-template-columns:1fr 1fr 1fr}.pie .col-marca{grid-column:1/-1}}
@media (max-width:560px){.pie .rejilla-pie{grid-template-columns:1fr 1fr}}

/* ---------- WhatsApp flotante y cookies ---------- */
.wa-flotante{position:fixed;right:18px;bottom:18px;z-index:90;display:flex;align-items:center;gap:.5rem;background:#1FA855;color:#fff;font-weight:700;padding:.75rem 1.1rem;border-radius:999px;box-shadow:0 8px 24px rgba(0,0,0,.28);text-decoration:none!important}
.wa-flotante:hover{background:#1a9048;transform:translateY(-2px)}
.wa-flotante .ico{width:24px;height:24px}
@media (max-width:520px){.wa-flotante span{display:none}.wa-flotante{padding:.9rem}}

/* ---------- Chatbot "Tusi" (FAQ automático) ---------- */
.chatbot-boton{position:fixed;left:18px;bottom:18px;z-index:95;width:64px;height:64px;padding:0;border:3px solid #fff;border-radius:50%;background:var(--burdeos);box-shadow:0 8px 24px rgba(0,0,0,.28);cursor:pointer;overflow:hidden}
.chatbot-boton img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.chatbot-boton:hover{transform:translateY(-2px)}
.chatbot-panel{position:fixed;left:18px;bottom:96px;z-index:96;width:360px;max-width:calc(100vw - 36px);height:min(520px,70vh);background:#fff;border-radius:18px;box-shadow:0 20px 56px rgba(0,0,0,.32);display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--linea)}
.chatbot-panel[hidden]{display:none}
.chatbot-cab{display:flex;align-items:center;gap:.65rem;background:var(--burdeos);color:#fff;padding:.8rem 1rem;flex:0 0 auto}
.chatbot-cab img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.55)}
.chatbot-cab div{flex:1;display:flex;flex-direction:column;line-height:1.3;min-width:0}
.chatbot-cab div span{font-size:.76rem;opacity:.85}
.chatbot-cerrar{background:none;border:0;color:#fff;font-size:1.3rem;line-height:1;cursor:pointer;padding:.2rem .4rem;border-radius:8px}
.chatbot-cerrar:hover{background:rgba(255,255,255,.15)}
.chatbot-mensajes{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.55rem;background:var(--crema)}
.chatbot-msg{max-width:88%;padding:.55rem .75rem;border-radius:14px;font-size:.9rem;line-height:1.42}
.chatbot-msg p{margin:0}
.chatbot-msg.bot{align-self:flex-start;background:#fff;border:1px solid var(--linea);border-bottom-left-radius:4px;color:var(--tinta)}
.chatbot-msg.user{align-self:flex-end;background:var(--burdeos);color:#fff;border-bottom-right-radius:4px}
.chatbot-msg a{display:inline-block;margin-top:.35rem;font-weight:700;color:var(--burdeos)}
.chatbot-msg.user a{color:#fff;text-decoration:underline}
.chatbot-chips{display:flex;flex-wrap:wrap;gap:.4rem;padding:0 .9rem .6rem;flex:0 0 auto}
.chatbot-chip{border:1.5px solid var(--burdeos);color:var(--burdeos);background:#fff;border-radius:999px;padding:.32rem .7rem;font-size:.8rem;font-weight:600;cursor:pointer}
.chatbot-chip:hover{background:var(--burdeos);color:#fff}
.chatbot-form{display:flex;gap:.5rem;padding:.65rem;border-top:1px solid var(--linea);flex:0 0 auto}
.chatbot-form input{flex:1;border:1.5px solid var(--linea);border-radius:999px;padding:.55rem .9rem;font:inherit;min-width:0}
.chatbot-form input:focus{outline:2px solid var(--oro);outline-offset:1px}
.chatbot-form button{border-radius:50%;width:40px;height:40px;padding:0;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-size:1rem}
@media (max-width:520px){
  .chatbot-boton{left:12px;bottom:12px;width:56px;height:56px}
  .chatbot-panel{left:8px;right:8px;bottom:76px;width:auto;max-width:none}
}
@media print{.chatbot-boton,.chatbot-panel{display:none}}

.cookies{position:fixed;left:16px;right:16px;bottom:16px;z-index:120;max-width:640px;margin:0 auto;background:#fff;border:1.5px solid var(--linea);border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.3);padding:18px 20px;display:none;gap:1rem;align-items:center;flex-wrap:wrap}
.cookies.visible{display:flex}
.cookies p{margin:0;flex:1 1 260px;font-size:.85rem;color:var(--gris)}
.cookies .botones{display:flex;gap:.5rem}
.cookies .btn{padding:.55rem 1.1rem;font-size:.88rem}

@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.topbar,.cab,.wa-flotante,.chatbot-boton,.chatbot-panel,.cookies,.banda,.pie{display:none}}

/* ---------- Ajustes finales ---------- */
.banda .form-ok{color:#fff}
.banda .form-ok .ico{color:var(--oro-claro)}
.banda .form-ok a{color:#fff;text-decoration:underline}
.hero .comparador .form-ok h3{color:var(--tinta)}
.hero h1{font-size:clamp(1.9rem,3.4vw,2.7rem)}
.hero.interior h1{font-size:clamp(1.8rem,3.2vw,2.5rem)}
.btn,.nav a.enlace,.nav button.enlace,.tel{white-space:nowrap}
.nav a.enlace,.nav button.enlace{padding:.6rem .75rem}
@media (max-width:1900px) and (min-width:1061px){.tel{display:none}}
@media (max-width:1480px) and (min-width:1061px){.nav a.enlace,.nav button.enlace{padding:.45rem .42rem;font-size:.86rem}.nav,.nav>ul{gap:.1rem}.cab .wrap{gap:.5rem}.cab-acciones .btn{padding:.55rem .8rem;font-size:.85rem}.logo img{height:52px}}
.hero .wrap>*,.dos-col>*,.contenido-prod>*,.banda .wrap>*,.comparador{min-width:0}
.modalidades.n2{grid-template-columns:repeat(2,1fr)}
.modalidades.n3{grid-template-columns:repeat(3,1fr)}
.modalidades.n4{grid-template-columns:repeat(2,1fr)}
@media (max-width:1100px){.modalidades.n3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.modalidades.n2,.modalidades.n3,.modalidades.n4{grid-template-columns:1fr}}
.cab{z-index:160}

.topbar .horario-top{display:inline-flex;align-items:center;gap:.4rem;opacity:.85}
@media (max-width:640px){.topbar .grupo{gap:.4rem 1rem;justify-content:center;width:100%}.topbar .wrap{padding-top:6px;padding-bottom:6px}}
.legal ul.puntos{list-style:disc;padding-left:1.3rem;margin:0 0 1.2rem}
.legal ul.puntos li{margin-bottom:.5rem}
.legal .acciones{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.4rem 0}
.legal .btn{white-space:normal;text-align:center}
.legal .btn{color:#fff}.legal .btn-borde{color:var(--burdeos)}.legal .btn-borde:hover{color:#fff}

@media (max-width:380px){.btn-grande{max-width:100%;white-space:normal;text-align:center;padding-left:1rem;padding-right:1rem}}

/* ---------- Política de privacidad ---------- */
.legal h2[id]{scroll-margin-top:100px}
.legal .resumen-legal{background:var(--burdeos-tinte);border-left:4px solid var(--burdeos);border-radius:0 12px 12px 0;padding:1.1rem 1.3rem;margin:2.2rem 0 0}
.legal .resumen-legal strong{display:block;color:var(--burdeos);margin-bottom:.25rem}
.legal .resumen-legal p{margin:0}
.legal .meta-legal{color:var(--gris);font-size:.88rem;margin:0 0 1.5rem}
.legal .indice-legal{border:1.5px solid var(--linea);border-radius:14px;padding:1.1rem 1.4rem;margin-bottom:.5rem;background:#fff}
.legal .indice-legal strong{display:block;margin-bottom:.4rem}
.legal .indice-legal ol{margin:0;padding-left:1.3rem;columns:2;column-gap:2rem}
.legal .indice-legal li{margin:.2rem 0;break-inside:avoid}
.legal .indice-legal a{text-decoration:none;color:var(--burdeos);font-weight:500}
.legal .indice-legal a:hover{text-decoration:underline}
.legal .ficha{margin:1rem 0;border:1.5px solid var(--linea);border-radius:14px;overflow:hidden;background:#fff}
.legal .ficha>div{display:grid;grid-template-columns:190px 1fr;gap:1rem;padding:.7rem 1.1rem;border-top:1px solid var(--linea)}
.legal .ficha>div:first-child{border-top:0}
.legal .ficha dt{color:var(--gris);font-weight:500}
.legal .ficha dd{margin:0;font-weight:500}
.legal .tabla-scroll{margin:1rem 0}
.legal .tabla-legal{width:100%;border-collapse:separate;border-spacing:0;border:1.5px solid var(--linea);border-radius:14px;overflow:hidden;font-size:.93rem;background:#fff}
.legal .tabla-legal th{background:var(--burdeos);color:#fff;text-align:left;padding:.75rem 1rem;font-weight:600}
.legal .tabla-legal td{padding:.85rem 1rem;vertical-align:top;border-top:1px solid var(--linea)}
.legal .tabla-legal tbody tr:nth-child(even) td{background:var(--crema)}
@media (max-width:760px){
  .legal .indice-legal ol{columns:1}
  .legal .ficha>div{grid-template-columns:1fr;gap:.1rem}
  .legal .tabla-legal,.legal .tabla-legal tbody,.legal .tabla-legal tr,.legal .tabla-legal td{display:block;width:100%}
  .legal .tabla-legal thead{display:none}
  .legal .tabla-legal tr{border-top:1px solid var(--linea)}
  .legal .tabla-legal tr:first-child{border-top:0}
  .legal .tabla-legal td{border-top:0;padding:.5rem 1rem}
  .legal .tabla-legal td::before{content:attr(data-label);display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--burdeos);font-weight:600;margin-bottom:.15rem}
}

/* ---------- Empresas ---------- */
.nav a.enlace-empresas{font-weight:700;color:var(--burdeos);background:var(--burdeos-tinte);margin-right:.5rem}
.nav a.enlace-empresas:hover{background:var(--burdeos);color:#fff}
@media (max-width:1480px) and (min-width:1061px){.nav a.enlace-empresas{margin-right:.25rem}}
@media (max-width:1060px){.nav a.enlace-empresas{background:none;margin-right:0}}

.tarjeta-empresas{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:center;position:relative;overflow:hidden;
  background:linear-gradient(120deg,var(--burdeos-osc) 0%,var(--burdeos) 70%,var(--burdeos-med) 100%);color:#fff;border-radius:var(--radio);padding:36px 40px;
  text-decoration:none!important;box-shadow:var(--sombra);border:1.5px solid rgba(185,138,78,.55);transition:transform .18s,box-shadow .18s}
.tarjeta-empresas::after{content:"";position:absolute;right:-60px;bottom:-90px;width:320px;height:380px;opacity:.07;background:url("../img/icon-512.webp") center/contain no-repeat;pointer-events:none}
.tarjeta-empresas:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(63,8,16,.35)}
.tarjeta-empresas .etiqueta{color:var(--oro-claro)}
.tarjeta-empresas h3{color:#fff;font-size:clamp(1.4rem,2.4vw,1.9rem);line-height:1.2;margin-bottom:.6rem}
.tarjeta-empresas p{color:rgba(255,255,255,.88);margin:0 0 1.2rem}
.tarjeta-empresas .btn{pointer-events:none}
.te-chips{display:flex;flex-wrap:wrap;gap:.55rem;position:relative;z-index:1;margin:0;padding:0;list-style:none}
.te-chips li{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .85rem;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);font-weight:500;font-size:.9rem}
.te-chips .ico{width:18px;height:18px;color:var(--oro-claro)}
.te-chips .mas-chip{background:transparent;border-style:dashed;color:var(--oro-claro)}
.tarjeta-empresas .te-texto{position:relative;z-index:1;min-width:0}
@media (max-width:860px){.tarjeta-empresas{grid-template-columns:1fr;gap:22px;padding:28px 24px}}

.rejilla-sectores{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.sector{background:#fff;border:1.5px solid var(--linea);border-radius:var(--radio);padding:24px;color:var(--tinta);text-decoration:none!important;min-width:0}
.sector .ico-caja{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,var(--burdeos),var(--burdeos-med));color:#fff;display:grid;place-items:center;margin-bottom:1rem}
.sector .ico-caja .ico{width:26px;height:26px}
.sector h3{font-size:1.05rem;margin-bottom:.35rem}
.sector p{color:var(--gris);font-size:.9rem;margin:0}
.sector-otro{grid-column:span 2;background:var(--burdeos-tinte);border-color:transparent;display:flex;flex-direction:column;justify-content:center;transition:border-color .18s,transform .18s}
.sector-otro:hover{border-color:var(--burdeos);transform:translateY(-3px)}
.sector-otro p{flex:0 0 auto;margin-bottom:.8rem}
.sector-otro .ir{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;color:var(--burdeos)}
@media (max-width:1020px){.rejilla-sectores{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){.rejilla-sectores{grid-template-columns:repeat(2,1fr);gap:14px}.sector{padding:18px}}
@media (max-width:440px){.rejilla-sectores{grid-template-columns:1fr}.sector-otro{grid-column:auto}}

.aviso-colaboradores{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;background:var(--burdeos-tinte);border:1.5px solid var(--linea);border-radius:var(--radio);padding:28px 32px;margin-top:2.5rem}
.aviso-colaboradores .btn{flex:0 0 auto;white-space:nowrap}
@media (max-width:700px){.aviso-colaboradores{flex-direction:column;align-items:flex-start;padding:22px;text-align:left}.aviso-colaboradores .btn{width:100%;justify-content:center}}

.rejilla-coberturas{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.cobertura{scroll-margin-top:100px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--radio);padding:24px;min-width:0}
.cobertura .ico-caja{width:48px;height:48px;border-radius:14px;background:rgba(255,255,255,.12);color:var(--oro-claro);display:grid;place-items:center;margin-bottom:.9rem}
.cobertura h3{color:#fff;font-size:1.05rem;margin-bottom:.35rem}
.cobertura p{color:rgba(255,255,255,.82);font-size:.92rem;margin:0}
.nota-oscura{text-align:center;color:rgba(255,255,255,.7);font-size:.85rem;margin:2rem auto 0;max-width:640px}
@media (max-width:1020px){.rejilla-coberturas{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.rejilla-coberturas{grid-template-columns:1fr}}

.pie .rejilla-pie{grid-template-columns:1.3fr repeat(5,1fr);gap:24px}
@media (max-width:1020px){.pie .rejilla-pie{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:560px){.pie .rejilla-pie{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.te-chips{gap:.4rem}.te-chips li{padding:.38rem .65rem;font-size:.8rem;gap:.35rem}.te-chips .ico{width:15px;height:15px}}

/* ---------- Elección de canal en formularios ---------- */
.canal{border:0;padding:0;margin:.2rem 0 .9rem;min-width:0}
.canal legend{font-size:.85rem;font-weight:500;color:var(--tinta);padding:0;margin-bottom:.45rem}
.canal{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.canal legend{grid-column:1/-1}
.canal-op{position:relative;cursor:pointer;min-width:0}
.canal-op input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.canal-op span{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.65rem .8rem;border:1.5px solid var(--linea);border-radius:12px;background:#fff;transition:border-color .15s,background .15s;line-height:1.25}
.canal-op .ico{width:20px;height:20px;color:var(--burdeos);margin-bottom:.15rem}
.canal-op b{font-size:.9rem;color:var(--tinta)}
.canal-op small{font-size:.75rem;color:var(--gris)}
.canal-op input:checked+span{border-color:var(--burdeos);background:var(--burdeos-tinte);box-shadow:0 0 0 1px var(--burdeos) inset}
.canal-op input:checked+span small{color:var(--burdeos);font-weight:500}
.canal-op input:focus-visible+span{outline:2px solid var(--oro);outline-offset:2px}
.form-error{display:none;background:#FDECEC;border:1px solid #E7A5A5;color:#7A1F1F;border-radius:10px;padding:.65rem .85rem;font-size:.88rem;margin:0 0 .8rem}
.form-error:not([hidden]){display:block}
.form-error a{color:inherit;text-decoration:underline}
@media (max-width:380px){.canal{grid-template-columns:1fr}}

/* ---------- Captcha simple (anti-spam, pensado para leerse bien) ---------- */
.captcha{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;background:#fff;border:1.5px dashed var(--burdeos);border-radius:14px;padding:.65rem .8rem;margin:0 0 .9rem}
.captcha-txt{font-size:.82rem;color:var(--tinta);font-weight:500;margin:0}
.captcha-codigo{font-family:"Poppins",monospace;font-size:1.5rem;font-weight:800;letter-spacing:.4em;color:var(--burdeos);background:var(--burdeos-tinte);border-radius:8px;padding:.15rem .25rem .15rem .55rem;line-height:1.25;user-select:none}
.captcha-in{width:5.4rem;flex:none;padding:.5rem .5rem;border:1.5px solid var(--linea);border-radius:10px;font:inherit;font-size:1.2rem;font-weight:700;letter-spacing:.25em;text-align:center;text-transform:uppercase;color:var(--tinta);background:#fff}
.captcha-in:focus-visible{outline:2px solid var(--oro);outline-offset:2px;border-color:var(--burdeos)}
.captcha-banda{margin:0;border-radius:16px}
@media (max-width:380px){.captcha{gap:.5rem .6rem}.captcha-codigo{font-size:1.3rem;letter-spacing:.3em}}

/* ---------- Tarificador de vehículos (coche, moto, furgoneta, camión) ---------- */
.tarificador{margin-top:.2rem}
.tar-calc .tar-paso-titulo{display:flex;align-items:center;gap:.6rem;font-weight:700;font-size:1.02rem;color:var(--tinta);margin:1.5rem 0 .9rem}
.tar-calc .tar-paso-titulo:first-child{margin-top:0}
.tar-paso-titulo span{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:50%;background:var(--oro);color:var(--tinta);font-weight:700;font-size:.85rem}
.tar-nota{display:block;color:var(--gris);font-size:.78rem;margin:-.45rem 0 .8rem}
.campo small{color:var(--gris);font-weight:400}
.tar-req{color:#A4283A;font-weight:700}
.tar-req-nota{margin:-.35rem 0 .9rem;color:#8C1A2B}
.tar-req-nota .tar-req{margin-right:.1rem}

.tar-resultado{margin-top:.2rem}
.tar-resultado h2{font-size:1.25rem;margin:0 0 1rem}
.tar-resumen{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--burdeos-tinte);border-radius:12px;padding:.85rem 1rem;margin-bottom:1.1rem}
.tar-resumen strong{display:block;font-size:.95rem;color:var(--burdeos)}
.tar-resumen span{display:block;font-size:.8rem;color:var(--gris);margin-top:.1rem}
.tar-editar{flex:none;background:#fff;border:1.5px solid var(--burdeos);color:var(--burdeos);font-weight:600;font-size:.8rem;padding:.45rem .9rem;border-radius:999px;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}
.tar-editar:hover{background:var(--burdeos);color:#fff}

.tar-coberturas{border:0;padding:0;margin:0 0 1rem}
.tar-lista-cob{list-style:none;margin:0;padding:0}
.tar-cob{position:relative;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .9rem;margin-bottom:.6rem;border:1.5px solid var(--linea);border-radius:12px;background:#fff;transition:border-color .15s,background .15s}
.tar-cob:has(.tar-cob-detalle){flex-direction:column;align-items:stretch}
.tar-cob input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.tar-cob-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.tar-cob-txt{display:flex;flex-direction:column;gap:.1rem}
.tar-cob-txt b{font-size:.92rem;color:var(--tinta)}
.tar-cob-txt small{font-size:.76rem;color:var(--gris)}
.tar-cob-precio{display:flex;flex-direction:column;align-items:flex-end;flex:none;text-align:right;gap:.1rem}
.tar-cob-precio strong{font-size:1.05rem;color:var(--tinta)}
.tar-cob-precio small{font-size:.72rem;color:var(--gris)}
.tar-cob:has(input:checked){border-color:var(--burdeos);background:var(--burdeos-tinte);box-shadow:0 0 0 1px var(--burdeos) inset}
.tar-cob:has(input:checked) .tar-cob-txt b,.tar-cob:has(input:checked) .tar-cob-precio strong{color:var(--burdeos)}
.tar-cob input:focus-visible{outline:2px solid var(--oro);outline-offset:2px}
/* Producto no disponible a la edad indicada (p.ej. Completa a partir de 71 años en el tarificador de salud) */
.tar-cob-no-disp{cursor:default;opacity:.55;background:#f7f7f7}
.tar-cob-no-disp .tar-cob-precio strong{color:var(--gris);font-size:.92rem}
/* Líneas con lo más importante del producto elegido: ocultas hasta que el cliente selecciona esa tarjeta */
.tar-cob-detalle{position:relative;z-index:1;list-style:none;margin:0;padding:0;max-height:0;overflow:hidden;opacity:0;transition:max-height .2s ease,opacity .15s ease}
.tar-cob:has(input:checked) .tar-cob-detalle{max-height:12em;opacity:1;margin-top:.6rem;padding-top:.6rem;border-top:1px dashed var(--linea)}
.tar-cob-detalle li{font-size:.76rem;color:var(--gris);line-height:1.4;padding:.1rem 0 .1rem 1.1rem;position:relative}
.tar-cob-detalle li::before{content:"✓";position:absolute;left:0;color:var(--burdeos);font-weight:700}
.tar-cob:has(input:checked) .tar-cob-detalle li::before{color:var(--burdeos)}
/* En los seguros de Personas y hogar (salud) el resaltado del producto elegido es en verde, no en burdeos (ese color queda para Vehículos) */
[data-tarificador-salud] .tar-cob:has(input:checked){border-color:var(--verde-oscura);background:var(--verde-tinte);box-shadow:0 0 0 1px var(--verde-oscura) inset}
[data-tarificador-salud] .tar-cob:has(input:checked) .tar-cob-txt b,[data-tarificador-salud] .tar-cob:has(input:checked) .tar-cob-precio strong{color:var(--verde-oscura)}
[data-tarificador-salud] .tar-cob-detalle li::before,[data-tarificador-salud] .tar-cob:has(input:checked) .tar-cob-detalle li::before{color:var(--verde-oscura)}

.tar-letra{font-size:.76rem;color:var(--gris);line-height:1.5;margin:0 0 1.1rem}
.tar-cierre{text-align:center}
.tar-estado{font-size:.88rem;font-weight:500;color:var(--tinta);margin:0 0 .7rem;min-height:1.3em}
.btn-wa{background:#1FA855;color:#fff}
.btn-wa:hover{background:#1a9048}
.btn-copiar{background:#fff;border-color:var(--burdeos);color:var(--burdeos);margin-top:.6rem}
.btn-copiar:hover{background:var(--burdeos);color:#fff}
.btn-copiar.es-copiado{background:var(--burdeos);color:#fff}
@media (max-width:380px){.tar-resumen{flex-direction:column;align-items:flex-start}.tar-editar{align-self:flex-end}.tar-cob{padding:.65rem .75rem}}
