/* Tessella Salud, sistema visual (ver docs/24_DISENO_SITIO.md)
   Una sola familia, Archivo, usada en dos anchos: semicondensada para títulos, como los rótulos de un atlas, y normal para leer.
   Un solo juego de colores: tinta, papel, niebla y los cinco quintos de necesidad que también usan los PDF. El ámbar es la señal:
   botón principal, foco del teclado y «su municipio» en el mapa. Nada más lleva ámbar. */
@font-face{font-family:"Archivo";src:url(/assets/archivo.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap}
:root{
  color-scheme: light;
  --bg:#ffffff; --bg-soft:#f2f5f8; --bg-hondo:#14273b;
  --ink:#14273b; --ink-soft:#34475b; --ink-mute:#5a6a7a;
  --line:#dfe6ec; --line-2:#c6d2dc;
  --q1:#e7eef6; --q2:#b9cfe6; --q3:#7ea7d1; --q4:#3f73ab; --q5:#12436d; --q0:#eceff2;
  --senal:#ffc425; --senal-hondo:#e9ae00;
  --enlace:#1f5f99;            /* 6,4:1 sobre blanco */
  --ok:#1f7a4d; --alza:#a8431b; --baja:#1f7a4d;
  --sans:"Archivo",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --disp:var(--sans); --mono:var(--sans);
  --estrecho:84%;              /* ancho de los títulos */
  --r:4px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums lining-nums}
img{max-width:100%;display:block;height:auto}
a{color:var(--enlace);text-decoration:none}
p a,li a,td a,dd a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{text-decoration:underline;text-underline-offset:3px}
:focus-visible{outline:3px solid var(--senal);outline-offset:2px;border-radius:2px}
.env{max-width:1180px;margin:0 auto;padding:0 24px}
@media (max-width:600px){.env{padding:0 16px}}
.mono{font-variant-numeric:tabular-nums}
.salto{position:absolute;left:-9999px}.salto:focus{left:16px;top:12px;z-index:99;background:var(--senal);color:var(--ink);padding:8px 14px}

/* ── barra ── */
header.top{background:#fffffff5;backdrop-filter:blur(8px);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}
.top .env{display:flex;align-items:center;gap:20px;height:64px}
.top .marca{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:700;font-stretch:var(--estrecho);font-size:21px;letter-spacing:-.005em;white-space:nowrap}
.top .marca img{height:36px;width:auto}
.icono-servicio{display:block;height:48px;width:auto;margin:0 0 18px}
.top .marca:hover{text-decoration:none}
.top nav{display:flex;gap:24px;margin-left:auto;font-size:15px;align-items:center}
.top nav a{color:var(--ink-soft);font-weight:500}
.top nav a.cta{color:var(--ink);padding:9px 16px;font-size:15px}
.top nav a[aria-current="page"]{color:var(--ink);font-weight:700}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid var(--line-2);border-radius:var(--r);padding:8px 12px;font:600 14px var(--sans);color:var(--ink)}
@media (max-width:860px){
  .menu-btn{display:block}
  .top nav{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;flex-direction:column;align-items:flex-start;padding:16px 24px 22px;border-bottom:1px solid var(--line);gap:14px}
  .top nav.abierto{display:flex}
}

/* ── tipografía ──
   Escala 1,25 sobre 17 px: 14 · 17 · 21 · 26 · 33 · 52. Títulos semicondensados, sin punto final y sin tracking negativo forzado. */
h1,h2,h3,h4{font-family:var(--sans);margin:0;text-wrap:balance;color:var(--ink);font-stretch:var(--estrecho)}
h1{font-size:clamp(34px,4.4vw,52px);line-height:1.06;font-weight:680;letter-spacing:-.012em}
h2{font-size:clamp(26px,2.6vw,33px);line-height:1.15;font-weight:650;letter-spacing:-.008em;margin-bottom:14px}
h3{font-size:21px;line-height:1.3;font-weight:640;margin:32px 0 8px}
p{max-width:66ch;margin:0 0 16px}
.lede{font-size:clamp(18px,1.6vw,21px);color:var(--ink-soft);max-width:58ch;line-height:1.5}
.rot{display:none}

/* ── secciones ── */
section{padding:84px 0}
section.suave{background:var(--bg-soft)}
section.honda{background:var(--bg-hondo);color:#fff}
section.honda h2,section.honda h3{color:#fff}
section.honda p{color:#d5e0ea}
section.honda a{color:#fff}
.hero{padding:56px 0 48px}
@media (max-width:600px){section{padding:56px 0}.hero{padding:32px 0 32px}}

.chip{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--alza);border:1px solid currentColor;border-radius:99px;padding:4px 12px}
.nota-estado{border-left:3px solid var(--q3);background:var(--bg-soft);padding:16px 20px;margin:24px 0;max-width:74ch;font-size:15px;color:var(--ink-soft)}

/* ── botones ── */
.botones{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.cta{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--senal);color:var(--ink);border:1.5px solid var(--senal);
  border-radius:var(--r);padding:12px 22px;font:650 16px/1.2 var(--sans);cursor:pointer;text-decoration:none}
.cta:hover{background:var(--senal-hondo);border-color:var(--senal-hondo);text-decoration:none}
.cta.sec{background:transparent;color:var(--ink);border-color:var(--line-2)}
.cta.sec:hover{border-color:var(--ink)}
section.honda .cta:not(.sec){color:var(--ink)}
section.honda .cta.sec{color:#fff;border-color:#fff}
section.honda .cta.sec:hover{background:#fff;color:var(--ink)}

/* ── cifras ── */
.cifras{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px;margin:40px 0 0;padding-top:24px;border-top:1px solid var(--line-2)}
.cifra .v{font-size:30px;font-weight:620;font-stretch:var(--estrecho);line-height:1.05}
.cifra .et{font-size:15px;color:var(--ink-soft);margin-top:8px;line-height:1.4}
.cifra .d span,.cifra .d s{text-decoration:none;font-size:13.5px;color:var(--ink-mute)}

/* ── tarjetas ── */
.rejilla{display:grid;grid-template-columns:repeat(auto-fit,minmax(272px,1fr));gap:28px;margin-top:30px}
.tarj{display:flex;flex-direction:column;gap:8px}
.tarj .cod{font-size:14px;font-weight:700;color:var(--q4)}
.tarj h3,.tarj h4{font-size:20px;font-weight:640;line-height:1.25}
.tarj p{font-size:15.5px;color:var(--ink-soft);margin:0;flex:1}
.tarj .enl{font-size:15px;font-weight:600}

ul.lista{padding:0;list-style:none;max-width:72ch;margin:0}
ul.lista li{padding-left:20px;position:relative;margin-bottom:10px;color:var(--ink-soft)}
ul.lista li::before{content:"";position:absolute;left:0;top:.78em;width:9px;height:2px;background:var(--q4)}
ul.lista li b{color:var(--ink);font-weight:620}

/* ── tablas ── */
.scroll{overflow-x:auto;margin-top:22px;-webkit-overflow-scrolling:touch}
table{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
th{text-align:left;font-size:14px;font-weight:620;color:var(--ink-soft);border-bottom:1.5px solid var(--ink);padding:10px 12px}
td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink-soft)}
td:first-child{color:var(--ink)}
td.n{text-align:right;white-space:nowrap}

/* ── formularios ── */
label{font-size:14.5px;font-weight:600;color:var(--ink)}
input[type=text],input[type=email],input[type=search],input[type=tel],select{width:100%;font:16px var(--sans);color:var(--ink);padding:11px 12px;
  border:1px solid var(--line-2);border-radius:var(--r);background:#fff}
input:focus,select:focus{outline:3px solid var(--senal);outline-offset:0;border-color:var(--ink)}
.campo{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.ayuda{font-size:13.5px;color:var(--ink-mute)}
.error{background:#fdf0ea;border-left:3px solid var(--alza);padding:12px 16px;margin:0 0 20px;color:var(--ink);max-width:70ch}
.exito{background:#e9f5ee;border-left:3px solid var(--ok);padding:12px 16px;margin:0 0 20px;color:var(--ink);max-width:70ch}

/* ── contacto ── */
.contacto{display:flex;gap:40px;flex-wrap:wrap;align-items:flex-start}
.contacto .col{flex:1;min-width:260px}
.correo{font-size:clamp(24px,2.8vw,32px);font-weight:620;font-stretch:var(--estrecho);color:inherit}

/* ── pie ── */
footer{background:var(--bg-hondo);color:#c9d6e2;padding:56px 0 64px;font-size:14px}
footer a{color:#fff}
footer p{max-width:80ch;margin:0 0 12px}
footer b{color:#fff}
.pie-cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;margin-bottom:36px}
.pie-cols .pie-h{color:#fff;font-size:15px;line-height:1.3;font-weight:620;letter-spacing:0;margin:0 0 10px}.pie-marca{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:700;font-stretch:var(--estrecho);color:#fff;margin-bottom:10px}.pie-marca img{width:auto;height:40px;flex:none}
.pie-cols ul{list-style:none;padding:0;margin:0}
.pie-cols li{margin:0 0 8px}
.pie-legal{border-top:1px solid #2c4258;padding-top:24px;font-size:13px;color:#a9bacb}
@media (max-width:760px){.pie-cols{grid-template-columns:1fr 1fr}}

.nota-estado a,.acepto a,.clasif a{text-decoration:underline;text-underline-offset:3px}
.scroll:focus-visible{outline:3px solid var(--senal);outline-offset:2px}
.compra-mun{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 40px;align-items:start;margin-top:32px;padding:24px 0 0;border-top:1.5px solid var(--ink);max-width:1000px}
@media (max-width:760px){.compra-mun{grid-template-columns:1fr}}
.compra-mun p{margin:0 0 8px;font-size:16px;color:var(--ink-soft)}.compra-mun .compra-tit{font-size:21px;font-weight:650;font-stretch:var(--estrecho);color:var(--ink);margin-bottom:6px}.compra-precio{font-size:21px;font-weight:650;color:var(--ink)}.compra-mun .botones{margin:4px 0 0}.compra-mun ul{margin:10px 0 0}
.h-lista,.h-candado{font-size:21px;line-height:1.3;font-weight:640;margin:30px 0 8px}
.candado .h-candado{margin:0 0 8px;font-size:24px}
.heroe-nota{font-size:14.5px;color:var(--ink-mute);margin:16px 0 0;max-width:52ch}.buscador .ayuda{font-size:13.5px;color:var(--ink-mute);margin:8px 0 0}
/* Tessella Salud · componentes del producto: mapas por quinto, perfil, planes, capa de detalle. */
:root{
  --pro:#12436d; --pro-bg:#eef3f6;
}
.migas{font-size:13px;color:var(--ink-mute);margin:0 0 22px}
.migas a{color:var(--ink-mute)}
.migas span{margin:0 6px;color:var(--line-2)}
.hero .lede{margin-top:18px}
.q{display:inline-block;width:12px;height:12px;border-radius:2px;vertical-align:-1px;margin-right:6px;border:1px solid #0000001a}
.q1{background:var(--q1)}.q2{background:var(--q2)}.q3{background:var(--q3)}.q4{background:var(--q4)}.q5{background:var(--q5)}
.banda{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--ink-soft)}
.escala-q{display:flex;gap:2px;margin:10px 0 4px;max-width:420px}
.escala-q i{flex:1;height:10px;display:block}
.escala-q+div{display:flex;justify-content:space-between;max-width:420px;font-size:11.5px;color:var(--ink-mute)}
.mapa-svg{width:100%;height:auto;max-height:640px}
.mapa-svg path{stroke:#fff;stroke-width:.6;vector-effect:non-scaling-stroke;transition:opacity .15s}
.mapa-svg a:hover path,.mapa-svg a:focus path{opacity:.75;stroke:var(--ink);stroke-width:1.4}
.mapa-svg path.foco{stroke:var(--ink);stroke-width:2.2}
.dos-col{display:grid;grid-template-columns:1.25fr 1fr;gap:36px;align-items:start}
@media (max-width:820px){.dos-col{grid-template-columns:1fr}}
.datos-mun{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);margin:24px 0}
.datos-mun div{background:var(--bg);padding:16px 16px 14px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.datos-mun b{display:block;font-size:22px;font-weight:620;font-stretch:var(--estrecho);line-height:1.1}
.datos-mun span{font-size:12.5px;color:var(--ink-mute)}
.perfil{display:grid;gap:10px;max-width:640px;margin-top:20px}
.perfil .fila{display:grid;grid-template-columns:150px 1fr 44px;gap:12px;align-items:center;font-size:14px}
.perfil .barra{height:10px;background:var(--bg-soft);position:relative;border-radius:1px}
.perfil .barra i{position:absolute;left:0;top:0;bottom:0;border-radius:1px}
.perfil .barra::after{content:"";position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:var(--ink-mute)}
.perfil .v{font-family:var(--mono);font-size:12.5px;text-align:right}
.clasif{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
.clasif span{font-size:12.5px;border:1px solid var(--line-2);border-radius:2px;padding:4px 10px;background:var(--bg)}
.clasif span b{font-weight:600}
.candado{border-top:1.5px solid var(--ink);padding:22px 0 0;margin:26px 0;max-width:74ch}
.candado h3{margin:0 0 8px;font-size:22px}
.candado ul{margin:8px 0 14px;padding-left:20px;color:var(--ink-soft);font-size:14.5px}
.etq-pro{font-size:15px;font-weight:600;color:var(--ink-soft);margin-bottom:4px}
.planes{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px;margin-top:30px}
.plan{border:1px solid var(--line-2);border-radius:var(--r);padding:24px 22px;display:flex;flex-direction:column;gap:10px;background:var(--bg)}
.plan.destacado{border:2px solid var(--ink)}
.plan h3{margin:0;font-size:24px}
.plan .precio{font-size:28px;font-weight:650;font-stretch:var(--estrecho);line-height:1}
.plan .precio small{font-family:var(--sans);font-size:12px;color:var(--ink-mute);display:block;margin-top:6px;letter-spacing:.02em}
.plan ul{margin:4px 0 8px;padding-left:18px;font-size:14px;color:var(--ink-soft);flex:1}
.plan .cta{justify-content:center}
.lista-mun{columns:3 220px;column-gap:28px;font-size:14px;margin:18px 0 0;padding:0;list-style:none}
.lista-mun li{break-inside:avoid;padding:3px 0;border-bottom:1px solid var(--line)}
.lista-mun a{color:var(--ink)}
.anuncio{display:none}
.anuncio.activo{display:block;margin:30px 0;min-height:100px;border:1px dashed var(--line-2);background:var(--bg-soft);
  font-size:11px;color:var(--ink-mute);text-align:center;padding:8px}
.anuncio.activo::before{content:"Publicidad";display:block;letter-spacing:.16em;text-transform:uppercase;margin-bottom:6px}
.archivos{list-style:none;padding:0;margin:20px 0;max-width:720px}
.archivos li{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.archivos li span{font-size:12px;color:var(--ink-mute);white-space:nowrap}
.ficha-dic{border-top:1px solid var(--line);padding:16px 0}
.ficha-dic h4{font-size:21px;font-weight:700;margin:0 0 4px}
.ficha-dic dl{display:grid;grid-template-columns:130px 1fr;gap:4px 14px;font-size:13.5px;margin:8px 0 0;max-width:80ch}
.ficha-dic dt{color:var(--ink-mute)}
.ficha-dic dd{margin:0;color:var(--ink-soft)}
@media (max-width:600px){.ficha-dic dl{grid-template-columns:1fr}.perfil .fila{grid-template-columns:110px 1fr 38px}.env{padding:0 16px}}

/* ── portada ── */
.portada{padding-top:40px}
.heroe-rejilla{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:center}
.heroe-texto h1{max-width:17ch}
.buscador{margin-top:32px;max-width:500px}
.buscador label{display:block;margin-bottom:8px;font-size:16px;font-weight:620}
.buscador input{font-size:18px;padding:14px 14px;border:1.5px solid var(--ink)}
.buscador .ayuda{margin:8px 0 0}
.resultado{margin-top:16px;padding:16px 0 0;border-top:1px solid var(--line-2)}
.resultado p{margin:0 0 8px}
.res-titulo{font-size:20px;font-weight:650;font-stretch:var(--estrecho)}
.res-enl{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin-top:14px!important}
.res-enl .cta{padding:10px 16px;font-size:15px}
.res-enl a:not(.cta){text-decoration:underline;text-underline-offset:3px}
.heroe-nota{font-size:15px;color:var(--ink-mute);margin:28px 0 0;max-width:50ch}
.heroe-nota a{text-decoration:underline;text-underline-offset:3px}
.heroe-mapa{margin:0}
.heroe-mapa svg,.heroe-mapa img{width:100%;height:auto;max-height:78vh}
.heroe-mapa path{stroke:#fff;stroke-width:.35;vector-effect:non-scaling-stroke;cursor:pointer}
.heroe-mapa path:hover{opacity:.8}
.heroe-mapa path.foco{fill:var(--senal)!important;stroke:var(--ink);stroke-width:2}
.heroe-mapa figcaption{font-size:14px;color:var(--ink-mute);max-width:48ch}
.heroe-mapa figcaption a{display:inline-block;margin-top:6px;text-decoration:underline;text-underline-offset:3px}
.escala-txt{display:flex;justify-content:space-between;max-width:420px;font-size:13px;color:var(--ink-mute);margin-bottom:8px}
@media (max-width:900px){.heroe-rejilla{grid-template-columns:1fr;gap:32px}.heroe-mapa svg,.heroe-mapa img{max-height:none}}

/* Secciones como un informe: el título en una columna estrecha a la izquierda, el contenido a la derecha. */
.bloque{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:24px 56px;align-items:start}
.bloque-tit h2{margin-bottom:12px}
.bloque-tit p{font-size:16px;color:var(--ink-soft);max-width:38ch}
.bloque-tit a{text-decoration:underline;text-underline-offset:3px}
@media (max-width:900px){.bloque{grid-template-columns:minmax(0,1fr);gap:8px}.bloque-tit p{max-width:60ch}}

.entregables{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:start}
.entregable{margin:0}
.entregable img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top;border:1px solid var(--line-2);background:#fff}
.entregable figcaption{font-size:14px;color:var(--ink-soft);margin-top:10px;line-height:1.45}
.entregable figcaption b{color:var(--ink);font-weight:620;display:block}
@media (max-width:700px){.entregables{grid-template-columns:1fr 1fr;gap:18px}}

.dos-listas{display:grid;grid-template-columns:1fr 1fr;gap:8px 40px}
.dos-listas h3{margin:0 0 14px;font-size:19px}
@media (max-width:700px){.dos-listas{grid-template-columns:minmax(0,1fr)}.dos-listas h3{margin-top:24px}}

.tabla-precios{min-width:560px}
.tabla-precios tbody th{font-size:16px;font-weight:620;color:var(--ink);border-bottom:1px solid var(--line);padding:14px 12px 14px 0;vertical-align:top}
.tabla-precios tbody th span{display:block;font-weight:400;font-size:14px;color:var(--ink-mute);margin-top:2px;max-width:46ch}
.tabla-precios thead th:first-child{padding-left:0}
.tabla-precios td{padding:14px 12px;vertical-align:top;font-size:15.5px}
.tabla-precios td:last-child{min-width:170px}
.tabla-precios td.n{font-size:17px;color:var(--ink);font-weight:620}
.tabla-nota{margin-top:10px}

ol.pasos{list-style:none;counter-reset:paso;padding:0;margin:8px 0 0;max-width:62ch}
ol.pasos li{counter-increment:paso;position:relative;padding:0 0 12px 34px;color:var(--ink-soft)}
ol.pasos li::before{content:counter(paso);position:absolute;left:0;top:0;font-weight:650;color:var(--ink);font-stretch:var(--estrecho);font-size:17px}

.servicios{display:grid;grid-template-columns:1fr;gap:0;margin:0}
.servicio{position:relative;padding:18px 0 18px 54px;border-top:1px solid var(--line)}
.servicio:last-child{border-bottom:1px solid var(--line)}
.servicio img{position:absolute;left:0;top:18px;width:36px;height:36px}
.servicio dt{font-size:18px;font-weight:640;font-stretch:var(--estrecho)}
.servicio dt a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:4px}
.servicio dt a:hover{text-decoration-color:var(--ink)}
.servicio dd{margin:4px 0 0;color:var(--ink-soft);font-size:15.5px;max-width:62ch}

.metodo-txt p{max-width:64ch}
.metodo-txt a{text-decoration:underline;text-underline-offset:3px}
.autor{border-top:1px solid var(--line-2);padding-top:18px;margin-top:24px}
.autor p{font-size:15.5px;color:var(--ink-soft)}

.contacto-fin .wa{font-size:clamp(24px,2.8vw,32px);font-weight:650;font-stretch:var(--estrecho);margin:8px 0 0}
.contacto-fin .wa a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--senal);text-decoration-thickness:3px;text-underline-offset:6px}

.casos{display:grid;gap:44px;margin-top:36px}
.testimonios{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;margin-top:48px}
.testimonios blockquote{margin:0;border-left:3px solid var(--q3);padding:4px 0 4px 20px}
.testimonios blockquote p{font-size:19px;color:var(--ink)}
.testimonios footer{background:none;padding:0;color:var(--ink-mute);font-size:14.5px}
.testimonios footer b{color:var(--ink)}
.faq{max-width:760px}
.faq details{border-top:1px solid var(--line-2)}
.faq details:last-child{border-bottom:1px solid var(--line-2)}
.faq summary{cursor:pointer;font-weight:620;font-size:17px;padding:16px 36px 16px 0;list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:24px;width:9px;height:9px;border-right:1.5px solid var(--ink-mute);border-bottom:1.5px solid var(--ink-mute);transform:rotate(45deg)}
.faq details[open] summary::after{transform:rotate(-135deg);top:28px}
.faq details>div{padding:0 0 18px;color:var(--ink-soft)}
.faq details>div p{margin-bottom:10px}
.faq a{text-decoration:underline;text-underline-offset:3px}

/* ── compra ── */
.compra{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:start}
@media (max-width:860px){.compra{grid-template-columns:minmax(0,1fr)}}
.form-compra{background:#fff;border:1px solid var(--line-2);border-top:1.5px solid var(--ink);padding:26px}
.form-compra fieldset{border:0;padding:0;margin:0 0 6px}
.form-compra legend{font-weight:650;font-stretch:var(--estrecho);font-size:20px;margin-bottom:12px}
.opciones-plan{display:grid;gap:8px;margin-bottom:16px}
.opciones-plan label{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line-2);border-radius:var(--r);padding:12px 14px;cursor:pointer;font-weight:500}
.opciones-plan label:has(input:checked){border-color:var(--ink);background:var(--bg-soft)}
.opciones-plan input{margin-top:4px;accent-color:var(--ink)}
.opciones-plan span{display:grid;grid-template-columns:1fr auto;gap:0 12px;width:100%}.opciones-plan b{font-weight:620}.opciones-plan em{font-style:normal;font-weight:620;color:var(--ink);text-align:right}.opciones-plan span>:not(b):not(em){grid-column:1/-1}
.total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line-2);padding-top:14px;margin:8px 0 16px}
.total b{font-size:26px;font-weight:650;font-stretch:var(--estrecho)}
.acepto{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:14.5px;margin:6px 0 16px}
.acepto input{margin-top:4px;accent-color:var(--ink)}
.form-compra .cta{width:100%;font-size:17px;padding:15px}
.medios{font-size:13.5px;color:var(--ink-mute);margin-top:12px}
.oculto{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.legal h2{margin-top:44px;font-size:26px}
.legal h3{font-size:19px}
.legal p,.legal li{max-width:76ch}
.heroe-mapa .anillo{fill:none;stroke:var(--ink);stroke-width:2.5;vector-effect:non-scaling-stroke;pointer-events:none}
section.honda.azul{background:var(--q5)}
.cifra.pequena .v{font-size:22px;line-height:1.15}


.cotizar-form .cta{width:100%}
.sec-serv{padding:56px 0;border-top:1px solid var(--line)}
.hero+.sec-serv{border-top:0;background:var(--bg-soft)}
.bloque-txt>:first-child{margin-top:0}
.bloque-txt h3{font-size:19px}
@media (max-width:600px){.sec-serv{padding:40px 0}}
.compra .tabla-precios{min-width:0}
.compra .tabla-precios td:last-child{min-width:0;font-size:14.5px}
.compra .tabla-precios tbody th span{font-size:13.5px}
@media (max-width:600px){
  .tabla-precios{min-width:0}
  .tabla-precios thead{position:absolute;left:-9999px}
  .tabla-precios tr{display:grid;grid-template-columns:minmax(0,1fr) auto;border-bottom:1px solid var(--line)}
  .tabla-precios tbody th,.tabla-precios td{border:0;padding:12px 0 0}
  .tabla-precios td.n{padding-left:12px}
  .tabla-precios td:last-child{grid-column:1/-1;min-width:0;padding:4px 0 12px;font-size:14px;color:var(--ink-mute)}
  .tabla-precios td:last-child::before{content:"Entrega: "}
}
.ficha-ind{border-top:1px solid var(--line);padding:16px 0}.ficha-ind h4{font-size:21px;font-weight:700;margin:0 0 4px}.ficha-ind dl{display:grid;grid-template-columns:130px 1fr;gap:4px 14px;font-size:13.5px;margin:8px 0 0;max-width:80ch}.ficha-ind dt{color:var(--ink-mute)}.ficha-ind dd{margin:0;color:var(--ink-soft)}.ficha-ind .que{font-size:14.5px;color:var(--ink-soft)}h3.dim-dic{margin-top:36px}@media (max-width:600px){.ficha-ind dl{grid-template-columns:1fr}}