/* ============================================================
   alarmase.com — Diseño de conversión v3
   Lenguaje: Apple iOS 27 (Liquid Glass, cápsulas, Dynamic Type)
   Paleta ESTRICTA: negro, blanco y rojo.
   ============================================================ */
@font-face{font-family:'InterVar';
  src:url('/assets/fonts/inter-var.woff2?v=1') format('woff2-variations'),
      url('/assets/fonts/inter-var.woff2?v=1') format('woff2');
  font-weight:100 900;font-style:normal;font-display:swap}
:root{
  --k:#000;--k900:#0A0A0A;--k800:#151515;--k700:#2B2B2B;--k600:#4A4A4A;
  --k500:#6E6E6E;--k400:#9B9B9B;--k300:#C9C9C9;--k200:#E4E4E4;--k100:#F2F2F2;--k50:#FAFAFA;
  --w:#FFF;--r:#E30613;--r-dark:#B80510;--r-soft:#FFF1F2;
  /* iOS 27 — jerarquía de labels */
  --lab-2:rgba(60,60,67,.6);--lab-3:rgba(60,60,67,.3);
  --sep:rgba(0,0,0,.12);--sep-d:rgba(255,255,255,.12);
  --bg-grouped:#F2F2F2;                    /* Backgrounds Grouped/Light */
  /* radios iOS: cápsula, tarjeta, sheet */
  --cap:999px;--card:28px;--sheet:34px;--ctrl:16px;
  --fs:-apple-system,BlinkMacSystemFont,'SF Pro Display','SF Pro Text','InterVar','Segoe UI',Roboto,sans-serif;
  --font-display:var(--fs);--font-sans:var(--fs);
  --navy:var(--k900);--navy-900:var(--k);--navy-800:var(--k800);--navy-700:var(--k700);--navy-600:var(--k600);
  --emerald:var(--r);--emerald-600:var(--r-dark);--emerald-300:var(--k300);--emerald-100:var(--k100);--emerald-50:var(--k50);
  --sky:var(--k600);--sky-50:var(--k50);--sky-100:var(--k100);--violet:var(--k900);--violet-50:var(--k50);
  --violet-100:var(--k100);--coral:var(--r);--coral-50:var(--r-soft);--coral-100:var(--k200);
  --amber:var(--k600);--amber-50:var(--k50);--amber-100:var(--k100);--pink:var(--k200);
}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--fs);color:var(--k800);background:var(--w);letter-spacing:-.01em;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1,h2,h3,h4{font-family:var(--fs);color:var(--k);font-weight:700;letter-spacing:-.025em;line-height:1.12}
h2{font-size:clamp(1.4rem,1.15rem + 1.1vw,2rem);margin:0 0 10px}
h3{font-size:1.0625rem;font-weight:600;letter-spacing:-.015em}   /* Headline 17pt */
p,li{color:var(--lab-2);line-height:1.47;font-size:17px}          /* Body 17/22 */
strong,b{color:var(--k);font-weight:600}
.v2-wrap{width:min(1140px,92vw);margin:0 auto;position:relative;z-index:1}

/* ============ TARJETA DE FORMULARIO (sheet iOS) ============ */
.v2-card{background:var(--w);border-radius:var(--sheet);overflow:hidden;position:sticky;top:16px;
  box-shadow:0 2px 6px rgba(0,0,0,.06),0 28px 64px -12px rgba(0,0,0,.5)}
.v2-card__head{padding:24px 26px 16px}
.v2-card__title{font-size:1.35rem;font-weight:700;color:var(--k);margin:0 0 6px;letter-spacing:-.03em;line-height:1.2}
.v2-card__sub{font-size:15px;color:var(--lab-2);margin:0;line-height:1.4}
.v2-card__body{padding:6px 26px 26px}
.v2-row{display:grid;grid-template-columns:1fr 122px;gap:11px}
.v2-field{margin-bottom:13px}
.v2-field label{display:block;font-size:12px;font-weight:600;color:var(--lab-2);margin-bottom:7px;
  text-transform:uppercase;letter-spacing:.05em}
.v2-field .opt{text-transform:none;letter-spacing:0;font-weight:400;color:var(--lab-3)}
.v2-input{width:100%;box-sizing:border-box;font-family:var(--fs);font-size:17px;color:var(--k);min-height:52px;
  padding:14px 20px;border:0;border-radius:var(--cap);background:var(--bg-grouped);letter-spacing:-.01em;
  transition:box-shadow .18s,background .18s}
.v2-input::placeholder{color:var(--lab-3)}
.v2-input:hover{background:#EAEAEA}
.v2-input:focus{outline:none;background:var(--w);box-shadow:0 0 0 3.5px rgba(227,6,19,.16),inset 0 0 0 1.5px var(--r)}
.v2-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:9px;min-height:56px;background:var(--r);
  color:var(--w);border:0;font-family:var(--fs);font-size:17.5px;font-weight:600;letter-spacing:-.015em;
  padding:16px 20px;border-radius:var(--cap);cursor:pointer;
  box-shadow:0 10px 26px -8px rgba(227,6,19,.62),inset 0 1px 0 rgba(255,255,255,.22);
  transition:transform .16s cubic-bezier(.2,.8,.3,1),background .18s,box-shadow .18s}
.v2-btn:hover{background:var(--r-dark);transform:scale(1.014)}
.v2-btn:active{transform:scale(.985)}
.v2-btn:disabled{opacity:.55;cursor:wait;transform:none}
.v2-consent{display:flex;gap:11px;align-items:flex-start;margin:15px 0 0;font-size:13px;color:var(--lab-2);
  line-height:1.42;text-transform:none;letter-spacing:0}
.v2-consent input{margin-top:1px;width:22px;height:22px;accent-color:var(--r);flex:0 0 auto}
.v2-consent a{color:var(--k);text-decoration:underline;text-underline-offset:2px}
.v2-safe{display:flex;align-items:center;gap:10px;margin-top:14px;padding:13px 15px;border-radius:var(--ctrl);
  background:var(--bg-grouped);font-size:13px;color:var(--lab-2);line-height:1.42;text-transform:none;letter-spacing:0}
.v2-safe svg{flex:0 0 17px}

/* ============ BARRA DE CONFIANZA ============ */
.v2-trust{background:var(--w);border-bottom:.5px solid var(--sep);padding:22px 0}
.v2-trust__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.v2-trust__i{display:flex;gap:12px;align-items:center;font-size:14px;color:var(--k800);font-weight:500;line-height:1.35;letter-spacing:-.012em}
.v2-trust__i svg{flex:0 0 23px}

/* ============ PASOS ============ */
.v2-steps{background:var(--bg-grouped);padding:54px 0}
.v2-steps h2{text-align:center;margin:0 0 8px}
.v2-steps .lead2{text-align:center;color:var(--lab-2);margin:0 auto 32px;max-width:54ch;font-size:16px}
.v2-steps__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.v2-step{background:var(--w);border-radius:var(--card);padding:26px 24px;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.v2-step__n{width:34px;height:34px;border-radius:50%;background:var(--k);color:var(--w);display:flex;
  align-items:center;justify-content:center;font-weight:600;font-size:15px;margin-bottom:15px}
.v2-step h3{margin:0 0 7px}
.v2-step p{font-size:15.5px;margin:0}

/* ============ BARRA MÓVIL (Liquid Glass) ============ */
.v2-bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:60;display:none;
  padding:0;border-radius:var(--cap);
  background:rgba(248,248,248,.2);backdrop-filter:blur(28px) saturate(1.8);-webkit-backdrop-filter:blur(28px) saturate(1.8);
  box-shadow:0 8px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.45),inset 0 -1px 0 rgba(255,255,255,.18)}
.v2-bar a{flex:1;text-align:center;min-height:56px;display:flex;align-items:center;justify-content:center;
  border-radius:var(--cap);font-weight:600;font-size:17px;letter-spacing:-.015em;text-decoration:none;
  background:var(--r);color:var(--w);box-shadow:0 8px 20px -6px rgba(227,6,19,.55)}

/* ============ RESTO DE LA PÁGINA (uniformidad) ============ */
.section{padding:52px 0}
.section.alt,.wash-emerald,.section.wash-emerald{background:var(--bg-grouped)!important}
.chip{background:var(--bg-grouped);color:var(--k800);border:0;border-radius:var(--cap);
  padding:8px 15px;font-size:12.5px;font-weight:600;letter-spacing:.01em}
.chip--navy{background:var(--k);color:var(--w)}
.chip .dot{background:var(--r)}
.btn{font-family:var(--fs);font-weight:600;border-radius:var(--cap);letter-spacing:-.015em;min-height:50px;transition:.16s}
.btn-primary{background:var(--r);color:var(--w);border:0;box-shadow:0 10px 24px -8px rgba(227,6,19,.55)}
.btn-primary:hover{background:var(--r-dark)}
.cuota,.catalog-item,.trust-item,.faq-item,.card{border-radius:var(--card);border:0;background:var(--w);
  box-shadow:0 1px 3px rgba(0,0,0,.05)}
.price,.cuota strong{color:var(--k)}
.trust{background:var(--w);border-bottom:.5px solid var(--sep)}
header{border-bottom:.5px solid var(--sep)}
footer{background:var(--k);color:#8A8A8A}
footer a{color:#C9C9C9}footer a:hover{color:var(--w)}
/* aviso legal discreto — cierra la página en negro (sin franja blanca) */
.v2-disclaimer{font-size:11.5px;color:#6E6E6E;text-align:center;line-height:1.45;background:var(--k);
  padding:16px 14px 20px;margin:0}

@media (max-width:900px){
  .v2-grid{grid-template-columns:1fr;gap:24px}
  .v2-card{position:static}
  .v2-steps__grid{grid-template-columns:1fr}
  .v2-trust__grid{grid-template-columns:1fr 1fr;gap:16px}
  .v2-hero{padding:22px 0 38px}
  .v2-bar{display:flex}
  .v2-price{max-width:none}
  .section{padding:40px 0}
  /* el hueco para la barra flotante lo pone el bloque NEGRO final: sin franja blanca */
  body{padding-bottom:0}
  .v2-disclaimer{padding-bottom:calc(20px + 76px + env(safe-area-inset-bottom))}
}
@media (max-width:380px){
  .v2-price{flex-direction:column;align-items:flex-start;gap:12px}
  .v2-price__t{border-left:0;border-top:1px solid rgba(255,255,255,.14);padding-left:0;padding-top:12px;width:100%}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* === especificidad: ganamos al CSS antiguo (mismos estilos, selector más fuerte) === */
form.lead-form .v2-input,
.v2-card .v2-input,
.v2-card input[type="tel"],
.v2-card input[type="text"]{
  -webkit-appearance:none;appearance:none;
  border:0!important;border-radius:var(--cap)!important;background:var(--bg-grouped)!important;
  min-height:52px!important;padding:14px 20px!important;font-size:17px!important;color:var(--k)!important;
  box-shadow:none!important;text-transform:none!important;letter-spacing:-.01em!important}
form.lead-form .v2-input:focus,.v2-card .v2-input:focus,
.v2-card input[type="tel"]:focus,.v2-card input[type="text"]:focus{
  background:var(--w)!important;box-shadow:0 0 0 3.5px rgba(227,6,19,.16),inset 0 0 0 1.5px var(--r)!important}
form.lead-form .v2-input::placeholder,.v2-card input::placeholder{color:var(--lab-3)!important;text-transform:none!important}
/* consentimiento y sello: SIEMPRE en minúsculas, pase lo que pase */
.v2-card .v2-consent,.v2-card .v2-consent *,
.v2-card .v2-safe,.v2-card .v2-safe *{
  text-transform:none!important;letter-spacing:0!important;font-weight:400!important}
.v2-card .v2-consent{font-size:13px!important;color:var(--lab-2)!important;line-height:1.42!important}
.v2-card .v2-consent a{font-weight:500!important;color:var(--k)!important}
.v2-card .v2-safe{font-size:13px!important;color:var(--lab-2)!important}
/* etiquetas: versalita fina iOS */
.v2-card .v2-field label{text-transform:uppercase!important;letter-spacing:.05em!important;
  font-size:12px!important;font-weight:600!important;color:var(--lab-2)!important}
.v2-card .v2-field .opt{text-transform:none!important;letter-spacing:0!important;font-weight:400!important;color:var(--lab-3)!important}
/* botón en cápsula, por encima de .btn antiguo */
form.lead-form .v2-btn,.v2-close .v2-btn,.v2-bar a{border-radius:var(--cap)!important;text-transform:none!important}

/* === CIERRE PERFECTO DE PÁGINA (sin franjas, sin botones duplicados) === */
/* 1) el botón flotante antiguo se retira: lo sustituye .v2-bar */
.mcta,#mcta{display:none!important}
/* 2) footer en NEGRO puro, sin degradado gris */
footer,.footer{background:var(--k)!important;background-image:none!important;color:#8A8A8A!important;margin-top:0!important}
.footer a{color:#C9C9C9!important}
.footer a:hover{color:var(--w)!important}
.footer h3,.footer h4,.footer strong{color:var(--w)!important}
/* 3) sin hueco entre el cierre y el footer */
.v2-close{margin:0!important}
.v2-close + footer,.v2-close + .footer{margin-top:0!important;padding-top:44px!important}
.post-crumbs{background:var(--k)!important;margin:0!important}
/* 4) barra flotante: separada del banner de cookies */
.cookie-banner{bottom:calc(84px + env(safe-area-inset-bottom))!important;border-radius:var(--card)!important}
@media (min-width:901px){.cookie-banner{bottom:calc(1rem + env(safe-area-inset-bottom))!important}}

/* ====== CONTENIDO LARGO: columna centrada y legible (móvil primero) ====== */
.v2-body{background:var(--w);padding:52px 0}
.v2-body .v2-inner{max-width:720px;margin:0 auto}       /* columna centrada */
.v2-body h2{font-size:clamp(1.35rem,1.1rem + 1.1vw,1.9rem);margin:44px 0 14px;letter-spacing:-.028em;
  line-height:1.18;text-align:left}
.v2-body h2:first-child{margin-top:0}
.v2-body h3{font-size:1.0625rem;font-weight:600;margin:0 0 6px;color:var(--k)}
.v2-body p{font-size:17.5px;line-height:1.62;color:var(--k700);margin:0 0 17px;
  text-align:left;text-wrap:pretty;hyphens:none}
.v2-body strong{color:var(--k);font-weight:600}
.v2-body ul,.v2-body ol{margin:0 0 20px;padding-left:22px}
.v2-body li{font-size:17px;line-height:1.6;color:var(--k700);margin-bottom:11px}
.v2-body li::marker{color:var(--r)}
.v2-body ol li::marker{font-weight:600;color:var(--r)}
.v2-body a{color:var(--k);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;
  text-decoration-color:var(--k300)}
.v2-body a:hover{text-decoration-color:var(--r);color:var(--r)}
/* FAQ como tarjetas iOS */
.v2-faq{background:var(--bg-grouped);border-radius:var(--ctrl);padding:19px 21px;margin-bottom:11px}
.v2-faq h3{margin:0 0 7px}
.v2-faq p{margin:0;font-size:16.5px;color:var(--k600)}
/* encabezado de sección centrado (lo que se lee de un vistazo) */
.v2-body__head{text-align:center;max-width:640px;margin:0 auto 38px}
.v2-body__head h2{text-align:center;margin:0 0 10px}
.v2-body__head p{text-align:center;color:var(--lab-2);font-size:17px}
@media (max-width:900px){
  .v2-body{padding:38px 0}
  .v2-body h2{font-size:1.45rem;margin:34px 0 12px}
  .v2-body p,.v2-body li{font-size:17px;line-height:1.6}
  .v2-body ul,.v2-body ol{padding-left:19px}
}




/* ================= HERO CLARO: todo blanco, imagen fusionada ================= */
.v2-hero{background:var(--w);color:var(--k);padding:28px 0 46px;position:relative;overflow:visible}
.v2-hero::after{display:none}
.v2-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:40px;align-items:stretch}  /* misma altura */
.v2-col{display:flex;flex-direction:column}
.v2-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 15px;border-radius:var(--cap);
  background:var(--bg-grouped);border:0;color:var(--k700);font-size:12px;font-weight:600;
  letter-spacing:.045em;text-transform:uppercase;align-self:flex-start;backdrop-filter:none}
.v2-eyebrow .pin{width:6px;height:6px;border-radius:50%;background:var(--r);box-shadow:none}
.v2-h1{font-size:clamp(1.95rem,1.2rem + 2.6vw,3.1rem);line-height:1.06;font-weight:700;letter-spacing:-.038em;
  margin:16px 0 0;color:var(--k)}
.v2-h1 em{font-style:normal;color:var(--r)}
/* PRECIO en claro */
.v2-price{display:flex;align-items:center;gap:18px;margin:20px 0 18px;padding:16px 20px;border-radius:var(--card);
  background:var(--bg-grouped);box-shadow:none;max-width:none}
.v2-price__n{display:flex;align-items:baseline;gap:3px;line-height:1;white-space:nowrap}
.v2-price__n b{font-size:clamp(2.2rem,1.7rem + 1.7vw,2.9rem);font-weight:700;color:var(--k);letter-spacing:-.045em}
.v2-price__n i{font-style:normal;font-size:1.3rem;font-weight:600;color:var(--k)}
.v2-price__n s{text-decoration:none;font-size:.95rem;color:var(--lab-2);font-weight:500;margin-left:2px}
.v2-price__t{border-left:1px solid var(--k200);padding-left:18px}
.v2-price__t strong{display:block;color:var(--k);font-size:14.5px;font-weight:600;margin-bottom:3px}
.v2-price__t span{display:block;color:var(--lab-2);font-size:12.5px;line-height:1.4}
.v2-sub{font-size:17px;line-height:1.5;color:var(--lab-2);margin:0 0 20px;max-width:none}
.v2-sub strong{color:var(--k);font-weight:600}
.v2-points{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.v2-points li{display:flex;gap:12px;align-items:flex-start;font-size:16px;color:var(--k700);line-height:1.42}
.v2-points svg{flex:0 0 21px;margin-top:1px}
/* IMAGEN: fusionada, sin caja, sin fondo, ocupa el resto de la columna */
.v2-kit{margin:auto 0 0;padding:0;background:none;box-shadow:none;border-radius:0;line-height:0;
  width:100%;padding-top:14px}
.v2-kit img{display:block;width:100%;height:auto;background:none;mix-blend-mode:normal}
/* TARJETA DEL FORMULARIO: clara, definida con un borde fino (no sombra dura) */
.v2-card{background:var(--w);border:1px solid var(--k200);border-radius:var(--sheet);overflow:hidden;
  position:static;box-shadow:0 1px 2px rgba(0,0,0,.04),0 18px 40px -22px rgba(0,0,0,.28);
  display:flex;flex-direction:column;height:100%}
.v2-card__body{flex:1}
/* CIERRE en claro */
.v2-close{background:var(--bg-grouped);color:var(--k);padding:52px 0;text-align:center;border-top:1px solid var(--k200)}
.v2-close h2{color:var(--k);margin:0 0 10px}
.v2-close p{color:var(--lab-2);max-width:54ch;margin:0 auto 24px;font-size:17px}
.v2-close .v2-btn{max-width:360px;margin:0 auto;text-decoration:none}
/* pie legal: claro también */
.v2-disclaimer{font-size:11.5px;color:var(--lab-2);text-align:center;line-height:1.45;background:var(--w);
  padding:16px 14px 20px;margin:0;border-top:1px solid var(--k200)}
footer,.footer{background:var(--w)!important;background-image:none!important;color:var(--lab-2)!important;
  border-top:1px solid var(--k200)}
.footer a{color:var(--k700)!important}
.footer a:hover{color:var(--r)!important}
.footer h3,.footer h4,.footer strong{color:var(--k)!important}
.post-crumbs{background:var(--w)!important}
.post-crumbs a{color:var(--k600)!important}

@media (max-width:900px){
  .v2-hero{padding:20px 0 32px}
  .v2-grid{grid-template-columns:1fr;gap:22px}
  .v2-card{height:auto}
  .v2-kit{margin:0;padding-top:16px}
  .v2-price{margin:18px 0 16px}
  .v2-disclaimer{padding-bottom:calc(20px + 76px + env(safe-area-inset-bottom))}
}
@media (max-width:380px){
  .v2-price{flex-direction:column;align-items:flex-start;gap:12px}
  .v2-price__t{border-left:0;border-top:1px solid var(--k200);padding-left:0;padding-top:12px;width:100%}
}

/* ====== HERO CENTRADO: todo el bloque alineado al centro ====== */
.v2-hero .v2-col:first-child{align-items:center;text-align:center}
.v2-hero .v2-eyebrow{align-self:center}
.v2-hero .v2-h1{text-align:center;width:100%}
.v2-hero .v2-sub{text-align:center;width:100%;max-width:62ch;margin-left:auto;margin-right:auto}
.v2-hero .v2-price{justify-content:center;width:100%}
.v2-hero .v2-points{width:100%;max-width:62ch;margin-left:auto;margin-right:auto}
.v2-hero .v2-points li{justify-content:center;text-align:left}
.v2-hero .v2-kit{width:100%}
@media (max-width:900px){
  .v2-hero .v2-points li{justify-content:flex-start}
  .v2-hero .v2-sub{max-width:none}
}

/* ====== BLOQUE "Securitas Direct = Verisure": todo centrado ====== */
.v2-marca{text-align:center}
.v2-marca .sec-head{text-align:center;margin-bottom:18px}
.v2-marca .sec-head h2{text-align:center;margin:12px auto 0;max-width:22ch}
.v2-marca .chip{display:inline-flex}
.v2-marca p{text-align:center;max-width:66ch;margin:0 auto 16px}
.v2-marca p:last-child{margin-bottom:0}
@media (max-width:900px){
  .v2-marca .sec-head h2{max-width:none}
  .v2-marca p{max-width:none}
}

/* ============ LEGIBILIDAD: precios destacados y cero blanco-sobre-blanco ============ */
/* todos los precios en rojo y con peso: imposible que pasen desapercibidos */
.v2-eur{color:var(--r)!important;font-weight:700!important;white-space:nowrap}
.v2-close p .v2-eur,.v2-card__sub .v2-eur{color:var(--r)!important}
.v2-price__n b,.v2-price__n i{color:var(--k)}
.price,.cuota strong,.precio,.oferta-precio strong{color:var(--r)!important;font-weight:700}

/* FOOTER claro: nada en blanco sobre blanco */
footer,.footer{background:var(--w)!important;background-image:none!important;color:var(--k600)!important}
.footer *{color:inherit}
.footer h3,.footer h4,.footer strong,.footer b{color:var(--k)!important;font-weight:600}
.footer a{color:var(--k700)!important;text-decoration:none}
.footer a:hover{color:var(--r)!important}
.footer p,.footer li,.footer span,.footer small{color:var(--k600)!important}
.footer img{filter:none!important}
.post-crumbs,.post-crumbs *{background:var(--w)!important;color:var(--k600)!important}
.post-crumbs a{color:var(--k700)!important}
.post-crumbs [aria-current]{color:var(--k)!important}
.v2-disclaimer{color:var(--k500)!important;background:var(--w)!important}

/* cualquier texto que hubiera quedado blanco fuera de fondo oscuro */
.v2-close h2,.v2-close p{color:var(--k)!important}
.v2-close p{color:var(--k600)!important}
.v2-body p,.v2-body li{color:var(--k700)!important}
.v2-faq p{color:var(--k600)!important}
/* excepciones legítimas: texto blanco SOLO sobre rojo o negro */
.v2-btn,.v2-btn *,.v2-bar a,.btn-primary,.chip--navy,.v2-step__n{color:var(--w)!important}

/* ============ CONTRASTE AA: menú superior y precios ============ */
/* el menú venía en blanco (diseño oscuro): sobre cabecera clara era invisible */
header a,header .nav a,.nav a,.menu a,header nav a{color:var(--k800)!important}
header a:hover,.nav a:hover,header nav a:hover{color:var(--r)!important}
header .btn,header .btn-primary,header a.btn{color:var(--w)!important}
header .chip,header .chip--navy{color:var(--w)!important}
/* rojo de TEXTO más oscuro: pasa AA (4.5:1) sobre blanco y sobre gris claro */
.v2-eur,.price,.cuota strong,.precio{color:#B80510!important}
.v2-h1 em{color:#D4050F}

/* ============ CONTRASTE AA REAL (medido, no supuesto) ============ */
/* 1) el CTA del menú es texto blanco sobre negro: no debe heredar el color oscuro */
header a.nav-cta,.nav a.nav-cta,a.nav-cta{color:var(--w)!important;background:var(--k)!important}
/* 2) los grises de iOS (rgba 60,60,67,.6) se quedan en 3,4:1 sobre blanco.
      Se sustituyen por grises NEUTROS que sí pasan AA (4,5:1). */
:root{--lab-2:#6E6E6E;--lab-3:#8A8A8A}
.v2-sub,.v2-card__sub,.v2-price__t span,.v2-price__n s,.v2-safe,.v2-consent,
.v2-steps .lead2,.v2-close p,.v2-faq p,.v2-body p,.v2-body li,.v2-field label,
.footer p,.footer li,.footer span,.v2-disclaimer{color:#5E5E5E!important}
.v2-body p,.v2-body li,.v2-faq p{color:#3D3D3D!important}
.v2-field label{color:#5E5E5E!important}
.v2-input::placeholder{color:#8A8A8A!important}
.v2-price__n s{color:#5E5E5E!important}

/* precio en rojo oscuro: legible también sobre el gris del bloque de cierre */
.v2-close p .v2-eur,.v2-card__sub .v2-eur,.v2-eur{color:#A8040E!important;font-weight:700!important}
.v2-field .opt{color:#6E6E6E!important}
.v2-card .v2-field label .opt,.v2-field label .opt,span.opt{color:#6E6E6E!important}

/* ====== LOGO DE MARCA: equilibrado en cabecera, pie y menú móvil ====== */
.logo-mark{height:40px!important;width:40px!important;object-fit:contain;filter:none!important;
  display:block;transition:transform .2s cubic-bezier(.2,.8,.3,1)}
.logo:hover .logo-mark{transform:scale(1.06)}
.footer-logo{height:52px!important;width:52px!important;object-fit:contain;filter:none!important;
  display:block;margin:0 auto 14px}
.drawer-head .logo-mark{height:36px!important;width:36px!important}
@media (max-width:900px){ .logo-mark{height:36px!important;width:36px!important} }

/* ====== HERO ANTIGUO (páginas core) al lenguaje claro iOS 27 ====== */
.v2-hero-legacy{background:var(--w)!important;color:var(--k)!important;border-bottom:1px solid var(--k200)}
.v2-hero-legacy::before,.v2-hero-legacy::after{display:none!important}
.v2-hero-legacy h1,.v2-hero-legacy h2,.v2-hero-legacy h3{color:var(--k)!important}
.v2-hero-legacy p,.v2-hero-legacy li,.v2-hero-legacy .lead{color:#5E5E5E!important}
.v2-hero-legacy .chip{background:var(--bg-grouped)!important;color:var(--k700)!important;border:0!important}
.v2-hero-legacy .hero-features li{color:#3D3D3D!important}
.v2-hero-legacy .oferta-card{background:var(--bg-grouped)!important;color:var(--k)!important;box-shadow:none!important;
  border-radius:var(--card)!important}
.v2-hero-legacy .oferta-titulo{color:#5E5E5E!important}
.v2-hero-legacy .oferta-precio strong,.v2-hero-legacy .oferta-precio{color:#A8040E!important}
.v2-hero-legacy .euro-mes span{color:#5E5E5E!important}
.v2-hero-legacy .oferta-despues,.v2-hero-legacy .oferta-duracion{color:#5E5E5E!important}
.v2-hero-legacy .form{background:var(--w)!important;border:1px solid var(--k200);border-radius:var(--sheet)!important}
.v2-hero-legacy .form h3{color:var(--k)!important}
.v2-hero-legacy .form-sub{color:#5E5E5E!important}
/* formularios del sitio antiguo con el mismo lenguaje iOS */
.form input{border:0!important;border-radius:var(--cap)!important;background:var(--bg-grouped)!important;
  min-height:52px!important;padding:14px 20px!important;font-size:17px!important;font-family:var(--fs)!important}
.form input:focus{background:var(--w)!important;box-shadow:0 0 0 3.5px rgba(227,6,19,.16),inset 0 0 0 1.5px var(--r)!important;outline:none!important}
.form button[type=submit],.form .btn{border-radius:var(--cap)!important;min-height:56px!important;font-size:17.5px!important;
  font-weight:600!important;background:var(--r)!important;color:var(--w)!important;
  box-shadow:0 10px 26px -8px rgba(227,6,19,.62)!important}
.form label{color:#5E5E5E!important;font-size:12px!important;text-transform:uppercase;letter-spacing:.05em;font-weight:600!important}
.form .consent,.form .consent *{color:#5E5E5E!important;text-transform:none!important;letter-spacing:0!important;font-size:13px!important}
/* secciones y tarjetas del sitio antiguo */
.section h2,.sec-head h2{color:var(--k)!important}
.section p,.section li{color:#3D3D3D!important}
.trust-item,.catalog-item,.cuota,.faq-item{background:var(--w)!important;border:1px solid var(--k200)!important;
  border-radius:var(--card)!important;box-shadow:none!important}
.trust-item strong,.cuota strong{color:var(--k)!important}

/* ── índice de cobertura (/mapa/) ───────────────────────────────── */
.v2-inner ul.v2-cols{
  list-style:none;margin:.9rem 0 1.6rem;padding:0;
  columns:2;column-gap:2rem;
}
@media(min-width:760px){ .v2-inner ul.v2-cols{columns:3} }
@media(min-width:1100px){ .v2-inner ul.v2-cols{columns:4} }
.v2-inner ul.v2-cols li{
  break-inside:avoid;margin:0 0 .42rem;padding:0;
  font-size:.97rem;line-height:1.45;text-align:left;
}
.v2-inner ul.v2-cols li::before{content:none}
.v2-inner ul.v2-cols a{
  color:#151515;text-decoration:none;
  border-bottom:1px solid #E4E4E4;
  transition:color .18s ease,border-color .18s ease;
}
.v2-inner ul.v2-cols a:hover,
.v2-inner ul.v2-cols a:focus-visible{color:#A8040E;border-color:#A8040E}
.v2-mut{color:#5E5E5E;font-size:.86em;white-space:nowrap}
.v2-inner h3 a{color:#0A0A0A;text-decoration:none;border-bottom:2px solid #E30613}
.v2-inner h3 a:hover{color:#A8040E}

/* ── miga de pan ─────────────────────────────────────────────────── */
.v2-miga{background:var(--w);border-bottom:1px solid #EDEDED;font-size:.86rem}
.v2-miga>div{display:flex;align-items:center;justify-content:center;gap:.5rem;
  flex-wrap:wrap;padding:.7rem 1.15rem}
.v2-miga a{color:#5E5E5E;text-decoration:none}
.v2-miga a:hover,.v2-miga a:focus-visible{color:#A8040E;text-decoration:underline}
.v2-miga span{color:#8A8A8A}
.v2-miga b{color:#151515;font-weight:600}

/* ── localidades cercanas ────────────────────────────────────────── */
.v2-cerca{background:#FAFAFA;padding:clamp(2.6rem,6vw,4.4rem) 0;text-align:center}
.v2-cerca h2{font-size:clamp(1.5rem,3.4vw,2.1rem);letter-spacing:-.02em;
  margin:0 0 .5rem;color:#0A0A0A}
.v2-cerca__s{color:#5E5E5E;margin:0 auto 1.9rem;max-width:34rem;font-size:1rem}
.v2-cerca__g{list-style:none;margin:0 auto;padding:0;max-width:52rem;
  display:grid;gap:.7rem;grid-template-columns:repeat(2,1fr)}
@media(min-width:640px){ .v2-cerca__g{grid-template-columns:repeat(4,1fr)} }
.v2-cerca__g li{margin:0;padding:0}
.v2-cerca__g li::before{content:none}
.v2-cerca__g a{display:flex;flex-direction:column;align-items:center;gap:.15rem;
  background:var(--w);border:1px solid #EAEAEA;border-radius:18px;
  padding:.85rem .7rem;text-decoration:none;
  transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.v2-cerca__g a:hover,.v2-cerca__g a:focus-visible{
  border-color:#E30613;transform:translateY(-2px);
  box-shadow:0 6px 18px rgba(0,0,0,.06)}
.v2-cerca__g b{color:#151515;font-weight:600;font-size:.98rem;line-height:1.25}
.v2-cerca__g span{color:#6E6E6E;font-size:.82rem}
.v2-cerca__p{margin:1.7rem auto 0;color:#5E5E5E;font-size:.95rem;max-width:40rem}
.v2-cerca__p a{color:#A8040E;font-weight:600}

/* ── confirmación de envío ───────────────────────────────────────── */
.v2-ok{background:var(--w);text-align:center;padding:clamp(3rem,8vw,5.5rem) 0 clamp(1.5rem,4vw,2.5rem)}
.v2-ok__check{width:74px;height:74px;margin:0 auto 1.4rem;border-radius:999px;
  background:#E30613;color:#fff;display:grid;place-items:center;
  box-shadow:0 10px 30px rgba(227,6,19,.24)}
.v2-ok__check svg{width:38px;height:38px}
.v2-ok h1{font-size:clamp(1.9rem,5vw,3rem);letter-spacing:-.03em;margin:0 0 .8rem;color:#0A0A0A}
.v2-ok__sub{color:#3D3D3D;font-size:clamp(1rem,2.2vw,1.15rem);line-height:1.6;
  max-width:38rem;margin:0 auto}
.v2-ok__sub strong{color:#0A0A0A}
