/* conti.css v2 — sistema de diseño. Grilla de contenido de un eje, hero por página. */
@font-face{font-family:"Conti Serif";src:url("/fuentes/source-serif-4-latin.woff2") format("woff2");font-weight:600 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+2122,U+2212}
:root{--tinta:#16202B;--tinta-2:#2C3A4A;--papel:#FAF8F5;--papel-2:#F1EDE6;--blanco:#FFFFFF;--linea:#DCD5C9;--gris:#55606E;--bronce:#8A6A2F;--bronce-texto:#6F5325;--bronce-claro:#D6B26A;--accion:#1F5B4E;--accion-fuerte:#17463C;--aviso:#8A4B10;--aviso-fondo:#FBF2E4;--dato:#1F3D6B;--dato-fondo:#EEF2F9;--foco:#C9A227;--serif:"Conti Serif",Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--t-base:1.0625rem;--t-chico:.9375rem;--t-h3:clamp(1.1875rem,1rem + .6vw,1.375rem);--t-h2:clamp(1.4375rem,1.15rem + 1.1vw,1.8125rem);--t-h1:clamp(1.875rem,1.35rem + 2.2vw,2.875rem);--alto:1.68;--medida:46rem;--ancho:74rem;--canal:clamp(1.25rem,4vw,2.5rem);--header-h:4.5rem;--e1:.25rem;--e2:.5rem;--e3:.75rem;--e4:1rem;--e5:1.5rem;--e6:2rem;--e7:3rem;--e8:4.5rem;--radio:8px;--sombra-1:0 1px 2px rgba(22,32,43,.05);--sombra-2:0 14px 34px rgba(22,32,43,.13)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
html,body{overflow-x:clip}
body{margin:0;background:var(--papel);color:var(--tinta);font:var(--t-base)/var(--alto) var(--sans);-webkit-font-smoothing:antialiased}
img,svg,video{max-width:100%;height:auto}
table{border-collapse:collapse;width:100%}
::selection{background:#EBDDBE;color:var(--tinta)}
h1,h2,h3,:target{scroll-margin-top:calc(var(--header-h) + var(--e5))}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.22;text-wrap:balance;margin:0}
h1{font-size:var(--t-h1);letter-spacing:-.014em}
h2{font-size:var(--t-h2);margin:var(--e7) 0 var(--e4)}
h2::after{content:"";display:block;width:2.75rem;height:3px;margin-top:.45rem;border-radius:99px;background:var(--bronce)}
h3{font-size:var(--t-h3);font-weight:600;margin:var(--e5) 0 var(--e3)}
p{margin:0 0 var(--e4)}
ul,ol{margin:0 0 var(--e5);padding-left:1.35em}
li{margin-bottom:var(--e2)}
.entrada{font-size:clamp(1.125rem,1.02rem + .5vw,1.3125rem);line-height:1.6;color:var(--tinta-2);max-width:60ch}
.rotulo{font-family:var(--sans);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--bronce-texto);margin:0 0 var(--e3);display:flex;flex-wrap:nowrap;align-items:center;gap:.5em .65em}
.rotulo::before{content:"";flex:none;align-self:flex-start;margin-top:.62em;width:1.75rem;height:2px;background:var(--bronce);border-radius:99px}
a{color:var(--accion);text-underline-offset:.18em;text-decoration-thickness:.06em}
main p a,main li a,main td a{text-decoration:underline;text-decoration-color:#c9bfa9}
main p a:hover,main li a:hover,main td a:hover{text-decoration-color:currentColor;background:#f0e9da}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--foco);outline-offset:2px;border-radius:4px}
.vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.salto{position:absolute;left:-999px;top:0;z-index:100;background:var(--tinta);color:var(--blanco);padding:var(--e3) var(--e5);text-decoration:none}
.salto:focus{left:0}
/* ---- grilla de contenido: un solo eje de lectura ---- */
main{display:grid;grid-template-columns:[full-start] 1fr [contenido-start] min(var(--medida),calc(100% - 2*var(--canal)),calc(100vw - 2*var(--canal))) [contenido-end] 1fr [full-end];padding:var(--header-h) 0 var(--e8);align-content:start;max-width:100%}
main>*{grid-column:contenido;min-width:0}
main>.hero{grid-column:full}
.hero--portada~.tarjetas,.hero--portada~.urgencias,main>.consulta,main>.contacto-caja,main>.resenas,.hero--portada~.pasos{grid-column:full;width:100%;max-width:calc(var(--ancho) + 2*var(--canal));margin-inline:auto;padding-inline:var(--canal)}
/* ---- cabecera ---- */
.cabecera{position:fixed;inset:0 0 auto;z-index:50;background:var(--tinta);border-bottom:1px solid rgba(214,178,106,.45);box-shadow:0 10px 30px rgba(10,16,23,.28)}
.cabecera__barra{display:flex;align-items:center;gap:var(--e4);height:var(--header-h);max-width:var(--ancho);margin-inline:auto;padding-inline:var(--canal)}
.marca{display:inline-flex;align-items:baseline;gap:.5em;text-decoration:none;font-family:var(--serif);color:var(--blanco);margin-right:auto}
.marca__icono{flex:none;width:1.65rem;height:auto;align-self:center}
.marca__conti{font-weight:700;font-size:1.375rem;letter-spacing:.03em}
.marca__resto{font-weight:600;font-size:.72rem;letter-spacing:.32em;color:var(--bronce-claro)}
.nav-fija{display:none;gap:var(--e4)}
.nav-fija a{color:rgba(255,255,255,.92);text-decoration:none;font-size:.9375rem;padding:var(--e3) var(--e2);border-bottom:2px solid transparent}
.nav-fija a:hover,.nav-fija a[aria-current="page"]{color:var(--blanco);border-bottom-color:var(--bronce-claro)}
@media (min-width:62rem){.nav-fija{display:flex}}
.icono{min-width:48px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:var(--e2);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.2);border-radius:9px;color:var(--blanco);font:600 .875rem var(--sans);padding-inline:var(--e3);cursor:pointer;text-decoration:none}
.icono:hover{border-color:var(--bronce-claro);background:rgba(214,178,106,.12)}
.menu{position:relative}
.menu>summary{list-style:none}
.menu>summary::-webkit-details-marker{display:none}
.menu[open]>summary{border-color:var(--foco)}
.panel{position:fixed;top:var(--header-h);right:0;bottom:0;width:min(27rem,100vw);background:var(--tinta);color:var(--blanco);overflow-y:auto;border-top:1px solid rgba(255,255,255,.12);box-shadow:-12px 0 40px rgba(0,0,0,.35)}
.panel__interior{padding:var(--e5) var(--e5) var(--e7)}
.panel__titulo{font-family:var(--serif);font-size:.8125rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--bronce-claro);margin:0 0 var(--e3)}
.cluster{border-bottom:1px solid rgba(255,255,255,.12)}
.cluster>summary{font-family:var(--serif);font-size:1.0625rem;font-weight:600;padding:var(--e4) 0;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between}
.cluster>summary::-webkit-details-marker{display:none}
.cluster>summary::after{content:"+";font-size:1.25rem;color:var(--bronce-claro)}
.cluster[open]>summary::after{content:"–"}
.cluster a{display:flex;align-items:center;min-height:44px;padding:var(--e2) 0 var(--e2) var(--e4);color:rgba(255,255,255,.86);text-decoration:none;font-size:.9375rem;border-left:2px solid transparent}
.cluster a:hover{color:var(--blanco);border-left-color:var(--bronce-claro)}
.cluster a[aria-current="page"]{color:var(--blanco);border-left-color:var(--foco);font-weight:600}
.panel__contacto{margin-top:var(--e5);display:grid;gap:var(--e3)}
/* ---- hero ---- */
.hero{width:100%;padding:clamp(2rem,5vw,3.5rem) var(--canal) clamp(1.75rem,4vw,2.75rem);margin-bottom:var(--e6)}
.hero__interior{max-width:var(--medida);margin-inline:auto}
.hero h1{margin:0 0 var(--e4)}
.hero--claro{background:var(--blanco);border-bottom:1px solid var(--linea)}
.hero--oscuro{background:radial-gradient(70rem 32rem at 108% -18%,#2E455C 0%,rgba(46,69,92,0) 62%),radial-gradient(50rem 26rem at -12% 118%,#1D2E3E 0%,rgba(29,46,62,0) 55%),var(--tinta);color:rgba(255,255,255,.92);border-bottom:3px solid var(--bronce)}
.hero--oscuro h1{color:var(--blanco)}
.hero--oscuro .entrada{color:rgba(255,255,255,.85)}
.hero--oscuro .rotulo{color:var(--bronce-claro)}
.hero--oscuro .rotulo::before{background:var(--bronce-claro)}
.hero--oscuro .migas{color:rgba(255,255,255,.6)}
.hero--oscuro .migas a{color:rgba(255,255,255,.6)}
.hero--oscuro .migas a:hover{color:var(--blanco)}
.hero--oscuro .migas [aria-current="page"]{color:rgba(255,255,255,.92)}
.hero--oscuro .boton--sobrio{color:var(--blanco);border-color:rgba(255,255,255,.55)}
.hero--oscuro .boton--sobrio:hover{background:var(--blanco);color:var(--tinta);border-color:var(--blanco)}
.hero--oscuro .anclas a{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.22);color:rgba(255,255,255,.88)}
.hero--oscuro .anclas a:hover{border-color:var(--bronce-claro);color:var(--blanco)}
.hero--oscuro .anclas span{color:rgba(255,255,255,.55)}
.hero--oscuro .entrada a{color:#BFE3D3;text-decoration:underline;text-decoration-color:rgba(214,178,106,.55)}
.hero--oscuro .entrada a:hover{color:var(--blanco);text-decoration-color:var(--bronce-claro)}
.hero--portada{position:relative;overflow:hidden;margin-bottom:0;display:flex;align-items:center;min-height:calc(100vh - var(--header-h));min-height:calc(100dvh - var(--header-h));padding-top:clamp(2.5rem,6vw,4rem);padding-bottom:clamp(3rem,7vw,4.5rem);background:var(--tinta)}
.hero--portada::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(22,32,43,.96) 0%,rgba(22,32,43,.93) 32%,rgba(22,32,43,.72) 58%,rgba(22,32,43,.4) 82%,rgba(22,32,43,.24) 100%),linear-gradient(0deg,rgba(22,32,43,.6) 0%,rgba(22,32,43,0) 40%)}
.hero__foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.hero--portada .hero__interior{width:100%;position:relative;z-index:2}
.hero--portada h1{font-size:clamp(2.25rem,1.5rem + 3vw,3.5rem);max-width:22ch;text-shadow:0 1px 18px rgba(0,0,0,.35)}
.hero-areas{display:flex;flex-wrap:wrap;gap:.4em .85em;list-style:none;margin:0 0 var(--e4);padding:0;font:600 .95rem/1.4 var(--sans);color:rgba(255,255,255,.82)}
.hero-areas li{display:flex;align-items:center;gap:.85em}
.hero-areas li:not(:last-child)::after{content:"";width:4px;height:4px;border-radius:99px;background:var(--bronce-claro)}
.hero-areas a{color:inherit;text-decoration:none}
.hero-areas a:hover{color:var(--bronce-claro);text-decoration:underline}
/* ---- migas / anclas / cta ---- */
.migas ol{display:flex;flex-wrap:wrap;gap:var(--e2);list-style:none;padding:0;margin:0 0 var(--e5);font-size:.875rem;color:var(--gris)}
.migas li{margin:0}
.migas li+li::before{content:"›";margin-right:var(--e2);color:var(--bronce)}
.migas a{color:inherit;text-decoration:none}
.migas a:hover{text-decoration:underline}
.migas [aria-current="page"]{color:var(--tinta);font-weight:600}
.anclas{display:flex;flex-wrap:wrap;align-items:center;gap:var(--e2);margin:var(--e5) 0 0;font-size:.875rem}
.anclas span{font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;color:var(--gris);margin-right:var(--e2)}
.anclas a{border:1px solid var(--linea);border-radius:999px;padding:.38em 1em;background:var(--papel);color:var(--tinta-2);text-decoration:none}
.anclas a:hover{border-color:var(--accion);color:var(--accion)}
.hero-cta{display:flex;flex-wrap:wrap;gap:var(--e3);margin:var(--e5) 0 0}
.hero-cta .boton--primario{min-height:54px;font-size:1.0625rem;padding-inline:var(--e6)}
.hero-cta .boton--primario svg{width:1.3em;height:1.3em}
.boton{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:var(--e3) var(--e6);border-radius:var(--radio);font:600 1rem/1.2 var(--sans);text-decoration:none;border:2px solid transparent;cursor:pointer;text-align:center;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.boton--primario{background:var(--accion);color:var(--blanco);border-color:var(--accion);box-shadow:0 8px 20px rgba(31,91,78,.28)}
.boton--primario:hover{background:var(--accion-fuerte);border-color:var(--accion-fuerte);transform:translateY(-1px)}
.boton--sobrio{background:transparent;color:var(--tinta);border-color:#9aa5ad}
.boton--sobrio:hover{background:var(--tinta);color:var(--blanco);border-color:var(--tinta)}
.boton{gap:.55em}
.boton svg{width:1.2em;height:1.2em;flex:none}
.wa-flotante{position:fixed;right:clamp(1rem,3vw,1.75rem);bottom:clamp(1rem,3vw,1.75rem);z-index:60;display:flex;align-items:center;justify-content:center;gap:.6em;width:3.6rem;height:3.6rem;padding:0;border-radius:999px;background:var(--accion);color:var(--blanco);text-decoration:none;font:700 1rem var(--sans);box-shadow:0 12px 30px rgba(23,70,60,.45),0 2px 6px rgba(0,0,0,.18);transition:transform .18s ease,box-shadow .18s ease,opacity .2s ease,visibility .2s}
.wa-flotante--oculto{opacity:0;visibility:hidden;transform:translateY(1rem)}
.wa-flotante svg{width:1.6rem;height:1.6rem}
.wa-flotante:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 18px 44px rgba(23,70,60,.5);background:var(--accion-fuerte)}
.wa-flotante__texto{display:none}
@media (min-width:48rem){.wa-flotante{width:auto;height:auto;padding:.95rem 1.5rem .95rem 1.2rem}.wa-flotante__texto{display:inline}}
.cta-linea{margin:var(--e5) 0}
.cta-inline{font-weight:600;text-decoration:none;border-bottom:2px solid var(--bronce-claro)}
.cta-inline:hover{border-bottom-color:var(--accion)}
/* ---- cajas ---- */
.caja{border:1px solid var(--linea);border-left:4px solid var(--gris);border-radius:10px;padding:var(--e5);margin:var(--e6) 0;background:var(--blanco);box-shadow:var(--sombra-1)}
.caja p:last-child,.caja ul:last-child,.caja ol:last-child{margin-bottom:0}
.caja__titulo{margin:0 0 var(--e2);font-family:var(--serif);font-weight:700;font-size:1.0625rem}
.caja--definicion{border-left-color:var(--bronce)}
.caja--definicion .caja__titulo{color:var(--bronce-texto)}
.caja--aviso{border-left-color:var(--aviso);background:var(--aviso-fondo)}
.caja--aviso .caja__titulo{color:var(--aviso)}
.caja--dato{border-left-color:var(--dato);background:var(--dato-fondo)}
.caja--dato .caja__titulo{color:var(--dato)}
.caja--accion{border-color:var(--accion);border-left-width:4px}
.caja--accion .caja__titulo{color:var(--accion)}
/* ---- texto oficial (ficha_norma) ---- */
.oficial{margin:var(--e6) 0;padding:var(--e5) var(--e5) var(--e4);background:var(--papel-2);border:1px solid var(--linea);border-radius:10px;box-shadow:var(--sombra-1)}
.oficial__rotulo{margin:0 0 var(--e3);font:700 .75rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--bronce-texto)}
.oficial__epigrafe{margin:0 0 var(--e3);font-family:var(--serif);font-weight:700;font-style:italic;color:var(--tinta-2)}
.oficial p:not(.oficial__epigrafe):not(.oficial__pie){font-family:var(--serif);line-height:1.75;color:var(--tinta);margin:0 0 var(--e4)}
.oficial__pie{margin:var(--e3) 0 0;padding-top:var(--e3);border-top:1px dashed var(--linea);font-size:.8125rem;color:var(--gris)}
/* ---- listas especiales ---- */
.pasos{list-style:none;counter-reset:paso;padding:0;margin:var(--e5) 0 var(--e6)}
.pasos li{counter-increment:paso;position:relative;padding:0 0 var(--e4) 3.3rem;margin:0}
.pasos li::before{content:counter(paso);position:absolute;left:0;top:.05rem;width:2.25rem;height:2.25rem;border-radius:50%;background:var(--bronce);color:var(--blanco);font:700 1.05rem/2.25rem var(--serif);text-align:center;box-shadow:0 4px 10px rgba(138,106,47,.35)}
.pasos li+li{border-top:1px dashed var(--linea);padding-top:var(--e4)}
.distinciones{margin:var(--e5) 0 var(--e6);display:grid;gap:var(--e4)}
.distincion{border:1px solid var(--linea);border-left:4px solid var(--bronce-claro);border-radius:10px;background:var(--blanco);padding:var(--e4) var(--e5);box-shadow:var(--sombra-1)}
.distincion p{margin:0}
.distincion__par{font-family:var(--serif);margin-bottom:var(--e2);color:var(--bronce-texto)}
.urgencias{list-style:none;margin:var(--e5) auto var(--e7);display:grid;gap:var(--e4);grid-template-columns:repeat(auto-fill,minmax(min(17rem,100%),1fr))}
.urgencias>li{min-width:0}
.urgencias a{position:relative;display:flex;align-items:center;min-height:5rem;padding:var(--e4) var(--e5) var(--e4) 3.4rem;background:var(--blanco);border:1px solid var(--linea);border-radius:12px;text-decoration:none;color:var(--tinta);font-family:var(--serif);font-weight:600;font-size:1.05rem;line-height:1.4;box-shadow:var(--sombra-1);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.urgencias a::before{content:"“";position:absolute;left:1.1rem;top:1.9rem;font:700 2.6rem/0 var(--serif);color:var(--bronce-claro)}
.urgencias a:hover{transform:translateY(-3px);box-shadow:var(--sombra-2);border-color:var(--accion);color:var(--accion)}
/* ---- tablas ---- */
.tabla{overflow-x:auto;margin:var(--e5) 0 var(--e6);border:1px solid var(--linea);border-radius:10px;background:var(--blanco)}
.tabla table{min-width:100%}
.tabla th{text-align:left;background:var(--papel-2);padding:var(--e3) var(--e4);border-bottom:2px solid var(--linea);white-space:nowrap;font-family:var(--serif)}
.tabla td{padding:var(--e3) var(--e4);border-bottom:1px solid #EAE4D8;vertical-align:top}
.tabla tr:last-child td{border-bottom:0}
/* ---- FAQ ---- */
.faq{margin:var(--e4) 0 var(--e6);border:1px solid var(--linea);border-radius:12px;background:var(--blanco);padding:0 var(--e5);box-shadow:var(--sombra-1)}
.faq__item+.faq__item{border-top:1px solid #EAE4D8}
.faq__item>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:var(--e4);padding:var(--e4) 0;font-family:var(--serif);font-weight:600;font-size:1.0625rem}
.faq__item>summary:hover{color:var(--accion)}
.faq__item>summary::-webkit-details-marker{display:none}
.faq__item>summary::after{content:"+";flex:none;width:1.7rem;height:1.7rem;border:1.5px solid var(--bronce-claro);border-radius:50%;color:var(--bronce-texto);font:600 1.1rem/1.55rem var(--sans);text-align:center;transition:transform .15s ease}
.faq__item[open]>summary::after{content:"–";border-color:var(--bronce)}
.faq__cuerpo{padding:0 0 var(--e5)}
.faq__cuerpo p:last-child{margin-bottom:0}
/* ---- reseñas ---- */
.resenas{position:relative;margin:var(--e5) auto var(--e4)}
.resenas__pista{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 2*var(--e4))/3);gap:var(--e4);align-items:start;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:2px 0 var(--e2)}
.resenas__pista::-webkit-scrollbar{display:none}
.resena{scroll-snap-align:start;margin:0;display:flex;flex-direction:column;gap:var(--e3);background:var(--blanco);border:1px solid var(--linea);border-radius:12px;padding:var(--e5);box-shadow:var(--sombra-1)}
.resena__cab{display:flex;align-items:center;gap:var(--e3)}
.resena__avatar,.persona__avatar{flex:none;width:2.75rem;height:2.75rem;border-radius:50%;display:grid;place-items:center;background:var(--tinta);color:#fff;font:600 1.15rem var(--sans)}
.persona__avatar{color:var(--bronce-claro);font-size:.95rem;letter-spacing:.04em}
.persona__foto,.hero__retrato{display:block;border-radius:50%;object-fit:cover;background:var(--papel-2)}
.persona__foto{width:5rem;height:5rem}
.hero__retrato{width:8rem;height:8rem;margin:0 0 var(--e4);box-shadow:var(--sombra-2);border:3px solid var(--blanco)}
.tarjeta--persona p{margin:0;font-size:var(--t-chico);color:var(--tinta-2)}
.tarjeta--persona .persona__matricula{font-size:.8125rem;color:var(--bronce-texto)}
.resena:nth-child(4n+2) .resena__avatar{background:var(--accion)}
.resena:nth-child(4n+3) .resena__avatar{background:var(--bronce)}
.resena:nth-child(4n) .resena__avatar{background:var(--dato)}
.resena__nombre{flex:1;font-weight:700;font-size:1.0625rem}
.resena__estrellas{margin:0;color:#F4B400;font-size:1.3rem;line-height:1;letter-spacing:.04em}
.resena__texto,.resena__texto p{margin:0}
.resena__texto p{font-size:.975rem;line-height:1.55}
.resena__mas{display:none;align-self:flex-start;padding:0;border:0;background:none;font:600 .9rem var(--sans);color:var(--accion);text-decoration:underline;cursor:pointer}
.resenas--js .resena__texto p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden;min-height:9.3em}
.resenas--js .resena__mas{display:block;visibility:hidden}
.resenas--js .resena--cortada .resena__mas{visibility:visible}
.resenas--js .resena--abierta .resena__texto p{display:block}
.resenas__flecha{position:absolute;top:50%;width:3rem;height:3rem;margin-top:-1.5rem;border:0;border-radius:50%;background:rgba(22,32,43,.1);color:var(--tinta);font:300 2.1rem/1 var(--sans);cursor:pointer}
.resenas__flecha:hover{background:rgba(22,32,43,.2)}
.resenas__flecha:disabled{opacity:.3;cursor:default}
.resenas__flecha--ant{left:calc(var(--canal) - 1.5rem)}
.resenas__flecha--sig{right:calc(var(--canal) - 1.5rem)}
.resenas__pie{text-align:center;margin:0 0 var(--e7)}
/* ---- portada ---- */
.hero--portada~.pasos{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--e4)}
.hero--portada~.pasos li{padding:4.25rem var(--e5) var(--e5);background:var(--blanco);border:1px solid var(--linea);border-radius:12px;box-shadow:var(--sombra-1)}
.hero--portada~.pasos li::before{left:var(--e5);top:var(--e5)}
.hero--portada~h2{text-align:center}
.hero--portada~h2::after{margin-inline:auto}
.hero--portada~h2:has(+p+:is(.tarjetas,.urgencias,.pasos,.resenas))+p,.hero--portada~:is(.pasos,.tarjetas)+p{text-align:center;text-wrap:balance}
@media (max-width:64rem){.resenas__pista{grid-auto-columns:calc((100% - var(--e4))/2)}.hero--portada~.pasos{grid-template-columns:1fr 1fr}}
@media (max-width:40rem){.serial a,.consulta__contacto,.resena__mas{display:inline-flex;align-items:center;justify-content:center;min-height:44px}.hero-areas a{padding-block:.55em}.resenas__pista{grid-auto-columns:86%}.resenas__flecha{display:none}.hero--portada~.pasos{grid-template-columns:1fr}}
/* ---- tarjetas ---- */
.tarjetas{display:grid;width:100%;gap:var(--e4);grid-template-columns:repeat(auto-fit,minmax(min(16.5rem,100%),1fr));margin:var(--e5) auto var(--e7)}
.tarjetas>*{min-width:0}
.hero--portada~.tarjetas--areas{grid-template-columns:repeat(5,1fr)}
@media (max-width:64rem){.hero--portada~.tarjetas--areas{grid-template-columns:1fr 1fr}}
@media (max-width:30rem){.hero--portada~.tarjetas--areas{grid-template-columns:1fr}}
.tarjeta{background:var(--blanco);border:1px solid var(--linea);border-radius:12px;padding:var(--e5);box-shadow:var(--sombra-1);display:flex;flex-direction:column;gap:var(--e2);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.tarjeta:hover{transform:translateY(-3px);box-shadow:var(--sombra-2);border-color:#C7D2CD}
.tarjeta__titulo{margin:0;font-size:1.075rem;line-height:1.35}
.tarjeta__titulo a{text-decoration:none;color:var(--tinta)}
.tarjeta__titulo a::after{content:"→";display:inline-block;margin-left:.4em;color:var(--bronce);transition:transform .18s ease}
.tarjeta:hover .tarjeta__titulo a{color:var(--accion)}
.tarjeta:hover .tarjeta__titulo a::after{transform:translateX(4px)}
.tarjeta p{margin:0;font-size:var(--t-chico);color:var(--gris)}
.tarjeta__lista{list-style:none;padding:var(--e3) 0 0;margin:auto 0 0;border-top:1px dashed var(--linea);font-size:var(--t-chico)}
.tarjeta__lista li{margin:0 0 .3rem}
.tarjeta__lista a{text-decoration:none;color:var(--tinta-2)}
.tarjeta__lista a:hover{color:var(--accion);text-decoration:underline}
.tarjeta--situacion .tarjeta__titulo,.tarjeta--persona .tarjeta__titulo{font-family:var(--serif)}

/* ---- tarjetas de área (portada): ícono circular + título centrado ---- */
.tarjetas--areas .tarjeta{align-items:center;text-align:center;padding:var(--e6) var(--e5) var(--e5)}
.tarjetas--areas .tarjeta__titulo{font-size:1.125rem}
.tarjetas--areas .tarjeta__titulo a{display:flex;flex-direction:column;align-items:center;gap:var(--e3)}
.tarjetas--areas .tarjeta__titulo a::after{content:none}
.tarjeta__icono{display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;
  border-radius:50%;background:var(--papel-2);color:var(--bronce-texto);flex-shrink:0;
  transition:background .18s ease,color .18s ease}
.tarjeta__icono svg{width:1.7rem;height:1.7rem}
.tarjetas--areas .tarjeta:hover .tarjeta__icono{background:var(--tinta);color:var(--bronce-claro)}
.tarjetas--areas .tarjeta p{text-align:center}
.tarjetas--areas .tarjeta__lista{text-align:left;width:100%;margin-top:0}
/* ---- fuentes / serial / valor ---- */
.fuentes ul{list-style:none;padding:0}
.fuentes li{padding:var(--e3) 0;border-bottom:1px dashed var(--linea)}
.fuentes__tipo{color:var(--gris);font-size:var(--t-chico)}
.serial{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--e3);margin:var(--e6) 0;padding-top:var(--e4);border-top:1px solid var(--linea);font-size:var(--t-chico)}
.serial a{text-decoration:none;font-weight:600}
.serial a:hover{text-decoration:underline}
/* ---- consulta (CTA de cierre) ---- */
.consulta{background:radial-gradient(46rem 24rem at 106% -30%,#2E455C 0%,rgba(46,69,92,0) 60%),var(--tinta);color:var(--blanco);border-radius:16px;padding:clamp(1.75rem,4vw,3rem);margin:var(--e7) auto var(--e5);border:1px solid #2B3D4F;border-top:3px solid var(--bronce);box-shadow:0 24px 60px rgba(16,26,37,.25)}
.consulta .rotulo{color:var(--bronce-claro)}
.consulta .rotulo::before{background:var(--bronce-claro)}
.consulta h2{margin-top:0;color:var(--blanco)}
.consulta h2::after{background:var(--bronce-claro)}
.consulta p{color:rgba(255,255,255,.87);max-width:40rem}
.consulta__botones{display:flex;flex-wrap:wrap;align-items:center;gap:var(--e3);margin-top:var(--e5)}
.consulta .boton--sobrio{color:var(--blanco);border-color:rgba(255,255,255,.55)}
.consulta .boton--sobrio:hover{background:var(--blanco);color:var(--tinta);border-color:var(--blanco)}
.consulta__nota{margin:var(--e4) 0 0;font-size:var(--t-chico);color:rgba(255,255,255,.7)}
.consulta__contacto{color:var(--bronce-claro);text-decoration:none;font-weight:600}
.consulta__contacto:hover{text-decoration:underline}
/* ---- firma ---- */
.firma{margin-top:var(--e7);padding-top:var(--e4);border-top:1px solid var(--linea);font-size:var(--t-chico);color:var(--gris)}
.firma__aviso{font-size:.8125rem}
/* ---- contacto ---- */
.contacto-caja{display:grid;gap:var(--e5);grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));background:var(--blanco);border:1px solid var(--linea);border-radius:14px;padding:var(--e6);margin:var(--e5) auto var(--e6);box-shadow:var(--sombra-1)}
.contacto-caja__titulo{font-family:var(--serif);font-weight:700;font-size:1.25rem;margin:0 0 var(--e2)}
.contacto-caja__nap{font-style:normal;line-height:1.7;margin:0 0 var(--e3)}
.contacto-caja__linea{margin:0 0 var(--e2)}
.contacto-caja__botones{display:flex;flex-direction:column;gap:var(--e3);justify-content:center}
/* ---- buscador ---- */
.buscador{display:flex;gap:var(--e3);margin:var(--e2) 0 var(--e5)}
.buscador input{flex:1;min-height:50px;padding:var(--e2) var(--e4);font:inherit;border:1px solid #9aa5ad;border-radius:var(--radio);background:var(--blanco);color:var(--tinta)}
.resultados{margin:0 0 var(--e6)}
.resultado{padding:var(--e4) 0;border-bottom:1px solid var(--linea)}
.resultado h3{margin:0 0 var(--e1)}
.resultado h3 a{text-decoration:none}
.resultado h3 a:hover{text-decoration:underline}
.resultado p{margin:0;font-size:var(--t-chico);color:var(--gris)}
.resultado__ruta{font-size:.8125rem;color:var(--bronce-texto)}
/* ---- pie ---- */
.pie{background:var(--tinta-2);color:var(--blanco);margin-top:var(--e8);padding:var(--e7) var(--canal) var(--e5);border-top:3px solid var(--bronce)}
.pie__interior{max-width:var(--ancho);margin-inline:auto}
.pie__rejilla{display:grid;gap:var(--e6);grid-template-columns:repeat(auto-fit,minmax(min(15rem,100%),1fr))}
.pie__marca{font-family:var(--serif);font-weight:700;letter-spacing:.14em;font-size:1.05rem;margin:0 0 var(--e3)}
.pie__nap{font-style:normal;line-height:1.8;margin:0 0 var(--e3);color:rgba(255,255,255,.88)}
.pie__nap a{color:var(--blanco)}
.pie__horario,.pie__mapa{font-size:var(--t-chico);color:rgba(255,255,255,.72);margin:0 0 var(--e2)}
.pie__mapa a{color:rgba(255,255,255,.9)}
.pie__titulo{font-family:var(--sans);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--bronce-claro);margin:0 0 var(--e3)}
.pie__col ul{list-style:none;padding:0;margin:0}
.pie__col li{margin:0}
.pie__col a{display:inline-flex;align-items:center;min-height:36px;color:rgba(255,255,255,.85);text-decoration:none;font-size:.9375rem}
.pie__col a:hover{color:var(--bronce-claro);text-decoration:underline}
.pie__legal{margin-top:var(--e6);padding-top:var(--e4);border-top:1px solid rgba(255,255,255,.16);display:flex;flex-wrap:wrap;gap:var(--e3) var(--e5);justify-content:space-between;font-size:.8125rem;color:rgba(255,255,255,.68)}
.pie__legal p{margin:0;max-width:46rem}
.pie__legal nav{display:flex;flex-wrap:wrap;gap:var(--e4)}
.pie__legal a{color:rgba(255,255,255,.85)}
