/* Constancia v3 — sistema sobrio con carácter. Ver DESIGN.md. */
/* Fraunces itálica (acento) y Figtree (cuerpo), ambas autoalojadas en fonts/. Sin dependencia de Google Fonts. */
@font-face{font-family:'Fraunces';font-weight:500;font-style:italic;font-display:swap;src:url(../fonts/fraunces-latin-italic-500.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fraunces';font-weight:500;font-style:italic;font-display:swap;src:url(../fonts/fraunces-latinext-italic-500.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Figtree';font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/figtree-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-weight:500;font-style:normal;font-display:swap;src:url(../fonts/figtree-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-weight:600;font-style:normal;font-display:swap;src:url(../fonts/figtree-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Figtree';font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/figtree-latin-700-normal.woff2) format('woff2')}

:root{
  --c-hueso:#f1ece3; --c-superficie:#faf7f1; --c-tinta:#1b2634; --c-etiqueta:#5c6773;
  --c-marino:#10213f; --c-crema:#efe9dd; --c-acento:#3f6f96; --c-oro:#8a6414; --c-oro-claro:#e7c577;
  --c-celeste:#dde7f1; --c-durazno:#f1e2d4; --c-salvia:#dfe7df; --c-borde:#e3ddd0; --c-linea:#c9bfa8;
  --sp-1:.5rem; --sp-2:.75rem; --sp-3:1.25rem; --sp-4:1.875rem; --sp-5:2.75rem; --sp-6:3.75rem;
  --seccion-y:clamp(3rem,6vw,5rem); --r:20px;
  --margen:clamp(1.25rem,5vw,3.5rem);
  --ease:cubic-bezier(.23,1,.32,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:'Figtree',system-ui,sans-serif;font-size:clamp(1.05rem,1.04rem+.1vw,1.2rem);line-height:1.55;color:var(--c-tinta);background:var(--c-hueso)}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,p,ol,ul,dl,dd,figure{margin:0}
ol,ul{padding:0;list-style:none}
a{color:var(--c-acento);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:color 150ms ease-out}
a:hover{color:var(--c-marino)}
:focus-visible{outline:2px solid var(--c-acento);outline-offset:2px}
.serif{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:500}
.contenedor{max-width:1180px;margin:0 auto;padding:0 var(--margen)}
.seccion{padding:var(--seccion-y) 0;scroll-margin-top:76px}
.saltar{position:absolute;left:-9999px;top:0;background:var(--c-marino);color:var(--c-crema);padding:.6rem 1rem;border-radius:0 0 8px 0;z-index:20}
.saltar:focus{left:0}
.saltar:hover{color:var(--c-crema)}

/* Tipografía */
h1{font-weight:700;font-size:clamp(2.6rem,1.6rem+4vw,5rem);line-height:1.03;letter-spacing:-.02em;text-wrap:balance}
h2{font-weight:700;font-size:clamp(2rem,1.4rem+2.3vw,3rem);line-height:1.06;letter-spacing:-.015em;text-wrap:balance}
h1 .serif,h2 .serif{font-weight:500;color:var(--c-oro);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;text-decoration-color:#d9b25f}
.prosa p{max-width:64ch}
.prosa p+p{margin-top:var(--sp-3)}

/* Pill, botones */
.pill{display:inline-flex;align-items:center;gap:.5rem;border:1px solid var(--c-tinta);border-radius:999px;padding:.4rem 1rem;font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;line-height:1.3;color:var(--c-tinta)}
.pill::before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:var(--c-oro);flex:0 0 auto}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:46px;padding:.9rem 1.5rem;font:600 .95rem/1.2 'Figtree',sans-serif;text-decoration:none;cursor:pointer;color:var(--c-hueso);background:var(--c-tinta);border:1px solid var(--c-tinta);border-radius:999px;transition:background-color 150ms ease-out,color 150ms ease-out,transform 100ms ease-out}
.btn:hover{background:var(--c-marino);border-color:var(--c-marino);color:var(--c-hueso)}
.btn:active{transform:scale(.98)}
.btn--sec{background:transparent;color:var(--c-tinta)}
.btn--sec:hover{background:var(--c-tinta);color:var(--c-hueso)}
.btn--claro{background:var(--c-crema);color:var(--c-marino);border-color:var(--c-crema)}
.btn--claro:hover{background:#fff;color:var(--c-marino)}

/* Header */
.cabecera{position:sticky;top:0;z-index:15;background:var(--c-hueso);border-bottom:1px solid var(--c-borde)}
.cabecera__fila{display:flex;align-items:center;justify-content:space-between;height:64px}
.cabecera__logo{display:inline-flex;line-height:0}
.nav__lista{display:none}
.nav__boton{display:inline-flex;align-items:center;min-height:44px;font:600 .95rem/1 'Figtree';background:none;border:0;color:var(--c-tinta);cursor:pointer;padding:.5rem}
.nav__panel{position:absolute;left:0;right:0;top:64px;background:var(--c-hueso);border-bottom:1px solid var(--c-borde);padding:var(--sp-3) var(--margen);display:none}
.nav__panel.abierto{display:block}
.nav__panel .nav__lista{display:block}
.nav__panel .nav__lista li{border-top:1px solid var(--c-borde)}
.nav__panel .nav__lista a{display:block;padding:1rem .25rem;color:var(--c-tinta);text-decoration:none;font-weight:500}
.nav__cta{margin-top:var(--sp-3);width:100%}
@media(min-width:1280px){
  .nav{display:flex;align-items:center;gap:1.5rem}
  .nav__boton{display:none}
  .nav__panel{position:static;display:flex;align-items:center;gap:1.4rem;background:none;border:0;padding:0}
  .nav__panel .nav__lista{display:flex;gap:1.4rem}
  .nav__panel .nav__lista li{border:0}
  .nav__panel .nav__lista a{padding:0;font-size:.95rem;color:var(--c-tinta);text-decoration:none}
  .nav__panel .nav__lista a:hover,.nav__panel .nav__lista a[aria-current="page"]{color:var(--c-acento)}
  .nav__cta{margin:0;width:auto;min-height:40px;padding:.55rem 1.1rem}
}

/* Hero / portada */
.hero{padding:clamp(2.5rem,5vw,4.5rem) 0 var(--seccion-y)}
.hero h1{margin:1.3rem 0 0;max-width:17ch}
.hero__intro{font-size:clamp(1.05rem,1.5vw,1.25rem);color:var(--c-etiqueta);max-width:54ch;margin:1.4rem 0 1.8rem}
.hero__acc{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}
.hero__acc .btn--lg{min-height:52px;padding:1rem 1.7rem;font-size:1rem}
.hero__mosaico{display:grid;grid-template-columns:1fr;gap:.9rem;margin-top:var(--sp-5)}
.hero__mosaico figure{border-radius:var(--r);overflow:hidden}
.hero__mosaico img{width:100%;height:100%;object-fit:cover}
@media(min-width:720px){
  .hero__mosaico{grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:1rem}
  .hero__mosaico li:nth-child(1){grid-row:1/3}
  .hero__mosaico figure{height:100%}
  .hero__mosaico li:nth-child(1) figure{min-height:420px}
  .hero__mosaico li:nth-child(2) figure,.hero__mosaico li:nth-child(3) figure{min-height:205px}
}
.stats{display:flex;gap:clamp(1.75rem,5vw,4rem);flex-wrap:wrap;margin-top:var(--sp-5)}
.stat b{display:block;font-size:clamp(2.1rem,3.6vw,3rem);font-weight:700;letter-spacing:-.02em;line-height:1}
.stat b .serif{color:var(--c-oro);font-weight:500}
.stat span{display:block;color:var(--c-etiqueta);font-size:.92rem;margin-top:.35rem}

/* Intro de página interior (hero reducido, un solo riel de lectura) */
.intro{padding:clamp(2.25rem,5vw,3.75rem) 0 var(--seccion-y)}
.intro h1{font-size:clamp(2.3rem,1.7rem+2.4vw,3rem);margin:1.1rem 0 0;max-width:22ch}
.intro__lead{font-size:clamp(1.1rem,1.3vw,1.3rem);color:var(--c-etiqueta);max-width:62ch;margin-top:1.3rem}
.intro__lead+.intro__lead{margin-top:var(--sp-3)}

/* Etiqueta de sección + regla */
.lab{margin-bottom:1.2rem}
.sec-intro{color:var(--c-etiqueta);max-width:60ch;margin-top:.9rem;font-size:1.1rem}
.col-texto{max-width:66ch}
h2+.regla,.lab+h2{margin-top:.8rem}

/* Tarjetas de momento (pastel) */
.momentos{display:grid;grid-template-columns:1fr;gap:1.1rem;margin-top:var(--sp-4)}
@media(min-width:640px){.momentos{grid-template-columns:1fr 1fr}}
@media(min-width:960px){.momentos{grid-template-columns:repeat(2,1fr)}}
.momento{border-radius:var(--r);padding:1.7rem 1.6rem 1.8rem;display:flex;flex-direction:column}
.momento--a{background:var(--c-celeste)} .momento--b{background:var(--c-durazno)}
.momento--c{background:var(--c-salvia)} .momento--d{background:var(--c-superficie);border:1px solid var(--c-borde)}
.momento__ic{width:2.8rem;height:2.8rem;border:1px solid var(--c-tinta);border-radius:50%;display:grid;place-items:center;margin-bottom:1rem}
.momento__ic svg{width:1.35rem;height:1.35rem;fill:none;stroke:var(--c-tinta);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.momento h3{font-size:1.35rem;font-weight:700;letter-spacing:-.01em}
.momento p{color:var(--c-tinta);opacity:.85;font-size:.98rem;margin:.5rem 0 1.2rem;max-width:40ch}
.momento .btn{margin-top:auto;align-self:flex-start}

/* Áreas de página de servicio (lista sobria, un solo riel) */
.frentes{margin-top:var(--sp-4)}
.frente{border-top:1px solid var(--c-borde);padding:1.3rem 0}
.frente:last-child{border-bottom:1px solid var(--c-borde)}
.frente h3{font-size:clamp(1.15rem,1.05rem+.4vw,1.35rem);font-weight:700;letter-spacing:-.01em}
.frente p{color:var(--c-etiqueta);margin-top:.3rem;max-width:64ch}

/* Diagrama de proceso: ruta de hitos sobre un eje (DESIGN.md 12, secuencia) */
.ruta{display:flex;flex-direction:column;gap:1.6rem;position:relative;margin-top:var(--sp-5)}
.ruta::before{content:"";position:absolute;left:29px;top:14px;bottom:14px;width:0;border-left:2px dotted var(--c-linea)}
.hito{display:flex;align-items:center;gap:1rem;position:relative}
.hito__ic{flex:0 0 auto;width:60px;height:60px;border-radius:50%;border:1.5px solid var(--c-acento);background:var(--c-hueso);display:grid;place-items:center;position:relative;z-index:1}
.hito__ic svg{width:1.6rem;height:1.6rem;fill:none;stroke:var(--c-acento);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.hito--fin .hito__ic{background:var(--c-marino);border-color:var(--c-marino)}
.hito--fin .hito__ic svg{stroke:var(--c-oro-claro)}
.hito__lab{display:flex;align-items:baseline;gap:.55rem}
.hito__n{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:500;color:var(--c-oro);font-size:1.25rem;line-height:1}
.hito__t{font-size:1.2rem;font-weight:700;letter-spacing:-.01em}
@media(min-width:760px){
  .ruta{flex-direction:row;align-items:center;gap:0;min-height:230px;margin-top:var(--sp-6)}
  .ruta::before{left:30px;right:30px;top:50%;bottom:auto;transform:translateY(-50%);width:auto;height:0;border-left:0;border-top:2px dotted var(--c-linea)}
  .hito{flex:1;justify-content:center}
  .hito__lab{position:absolute;left:50%;transform:translateX(-50%);width:9.5rem;flex-direction:column;align-items:center;text-align:center;gap:.2rem}
  .hito:nth-child(odd) .hito__lab{bottom:calc(50% + 42px)}
  .hito:nth-child(even) .hito__lab{top:calc(50% + 42px)}
  .hito__t{font-size:1.02rem}
  .hito__n{font-size:1.3rem}
}

/* Comparación "dice / descubre" */
.compara{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:var(--sp-4)}
@media(min-width:720px){.compara{grid-template-columns:1fr 1fr}}
.compara__par{background:var(--c-superficie);border:1px solid var(--c-borde);border-radius:var(--r);padding:1.5rem}
.compara__fila{display:grid;gap:.5rem}
.compara__et{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--c-acento)}
.compara__dice{font-size:1.2rem;font-weight:600}
.compara__flecha{height:1px;background:var(--c-linea);margin:1rem 0}
.compara__desc{color:var(--c-etiqueta)}

/* Casos */
.casos{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:var(--sp-4)}
@media(min-width:960px){.casos{grid-template-columns:repeat(4,1fr)}}
.caso{background:var(--c-superficie);border:1px solid var(--c-borde);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.caso__foto{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--c-crema)}
.caso__foto img{width:100%;height:100%;object-fit:cover;transition:transform 450ms var(--ease)}
.caso:hover .caso__foto img{transform:scale(1.04)}
.caso__txt{padding:1.1rem 1.3rem 1.4rem;display:flex;flex-direction:column;gap:.2rem;flex:1}
.caso__txt h3{font-size:1.2rem;font-weight:700}
.caso__tipo{color:var(--c-etiqueta);font-size:.9rem}
.caso__txt .btn{margin-top:.9rem;align-self:flex-start;min-height:40px;padding:.5rem 1.1rem;font-size:.88rem}

/* Índice de casos (tarjeta con logo, titular y etiquetas) */
.casos-idx{display:grid;grid-template-columns:1fr;gap:1.1rem;margin-top:var(--sp-4)}
@media(min-width:720px){.casos-idx{grid-template-columns:1fr 1fr}}
.caso-idx{background:var(--c-superficie);border:1px solid var(--c-borde);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.caso-idx__foto{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--c-crema)}
.caso-idx__foto img{width:100%;height:100%;object-fit:cover;transition:transform 450ms var(--ease)}
.caso-idx:hover .caso-idx__foto img{transform:scale(1.04)}
.caso-idx__txt{padding:1.3rem 1.4rem 1.5rem;display:flex;flex-direction:column;flex:1}
.caso-idx__txt h2{font-size:1.3rem;font-weight:700;letter-spacing:-.01em}
.caso-idx__titular{margin-top:.5rem;max-width:48ch}
.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.9rem}
.chips li{font-size:.75rem;color:var(--c-etiqueta);border:1px solid var(--c-borde);border-radius:999px;padding:.25rem .7rem}
.caso-idx__estado{margin-top:.8rem;font-weight:600;color:var(--c-oro)}
.caso-idx__txt .btn{margin-top:1.1rem;align-self:flex-start;min-height:40px;padding:.5rem 1.1rem;font-size:.88rem}

/* Ficha de caso (columna única, fotos reales) */
.volver{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:1.1rem;font-size:.92rem;text-decoration:none;color:var(--c-acento)}
.volver:hover{color:var(--c-marino)}
.caso-tipo{color:var(--c-etiqueta);margin-top:.7rem;font-size:1.1rem}
.caso-foto{border-radius:var(--r);overflow:hidden;margin-top:var(--sp-3)}
.caso-foto img{display:block;width:100%;height:auto}
.caso-foto--ancho img{max-height:480px;object-fit:cover;object-position:center}
.caso-foto--vert{max-width:460px}
.caso-foto--logo{display:grid;place-items:center;padding:2rem}
.caso-foto--logo img{width:auto;max-width:70%;max-height:220px}
.caso-paso{padding-top:var(--sp-5)}
.caso-paso__n{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:500;color:var(--c-oro);font-size:1.4rem;line-height:1}
.caso-paso h2{font-size:clamp(1.4rem,1.2rem+1vw,1.9rem);margin-top:.25rem;letter-spacing:-.01em}
.caso-paso p{margin-top:.7rem;max-width:64ch}
.caso-quedo{margin-top:var(--sp-6);background:var(--c-superficie);border:1px solid var(--c-borde);border-radius:var(--r);padding:clamp(1.5rem,3vw,2.2rem)}
.caso-quedo h2{font-size:clamp(1.3rem,1.1rem+1vw,1.6rem)}
.caso-quedo p{margin-top:.6rem;max-width:64ch}

/* Ficha de caso v2: estructura editorial con ritmo (molde nuevo) */
.caso-hero{border-radius:var(--r);overflow:hidden;margin-top:var(--sp-4);aspect-ratio:3/2;background:var(--c-crema)}
.caso-hero img{width:100%;height:100%;object-fit:cover;display:block}
.caso-m{padding:var(--sp-5) 0;border-top:1px solid var(--c-borde);display:grid;gap:var(--sp-3)}
.caso-m:first-of-type{border-top:0;padding-top:var(--sp-5)}
@media(min-width:820px){.caso-m{grid-template-columns:1fr 1fr;gap:var(--sp-5);align-items:center}.caso-m:nth-child(even) .caso-m__media{order:-1}}
.caso-m__n{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:500;color:var(--c-oro);font-size:1.3rem;line-height:1}
.caso-m h2{font-size:clamp(1.35rem,1.15rem+1vw,1.8rem);margin-top:.25rem;letter-spacing:-.01em}
.caso-m p{margin-top:.7rem;max-width:52ch}
.caso-m__media{border-radius:var(--r);overflow:hidden;background:var(--c-crema)}
.caso-m__media img{width:100%;height:auto;display:block}
.caso-m__media--marca{display:grid;place-items:center;aspect-ratio:4/3;background:var(--c-superficie);border:1px solid var(--c-borde)}
.caso-m__media--marca img{width:auto;height:auto;max-width:58%;max-height:66%;object-fit:contain}
.caso-result{margin-top:var(--sp-6)}
.caso-result__lab{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--c-oro)}
.caso-result__t{font-size:clamp(1.3rem,1.1rem+1.1vw,1.75rem);font-weight:600;line-height:1.3;letter-spacing:-.01em;margin-top:.6rem;max-width:30ch;text-wrap:balance}

/* Bloque de contraste marino */
.cta-marino{margin:var(--seccion-y) 0 0}
.cta-marino__box{background:var(--c-marino);color:var(--c-crema);border-radius:var(--r);padding:clamp(2rem,5vw,3.75rem)}
.cta-marino__box h2{color:var(--c-crema);max-width:20ch}
.cta-marino__box h2 .serif{color:var(--c-oro-claro);text-decoration-color:#9a7a33}
.cta-marino__box p{color:#cdc6b8;max-width:52ch;margin-top:var(--sp-3)}
.cta-marino__acc{margin-top:var(--sp-4)}
.datos-marino{display:grid;grid-template-columns:1fr;gap:.6rem;margin-top:var(--sp-4);border-top:1px solid #2a3a56;padding-top:var(--sp-4)}
@media(min-width:640px){.datos-marino{grid-template-columns:repeat(2,1fr)}}
@media(min-width:960px){.datos-marino{grid-template-columns:repeat(4,1fr)}}
.datos-marino li span{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#9aa6b8;margin-bottom:.2rem}
.datos-marino a{color:var(--c-crema)}
.datos-marino a:hover{color:#fff}

/* Tira de pasos (resumen de proceso) */
.pasos-linea{display:grid;grid-template-columns:repeat(2,1fr);gap:.9rem 1.5rem;margin-top:var(--sp-4)}
@media(min-width:720px){.pasos-linea{grid-template-columns:repeat(4,1fr)}}
.pasos-linea li{display:flex;align-items:baseline;gap:.6rem;border-top:1px solid var(--c-borde);padding-top:.7rem}
.pasos-linea .n{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:500;font-size:1.4rem;color:var(--c-oro);line-height:1}
.pasos-linea h3{font-size:1rem;font-weight:600}

/* Franja de recurso */
.recurso{background:var(--c-superficie);border:1px solid var(--c-borde);border-radius:var(--r);padding:clamp(1.5rem,3vw,2.2rem);margin-top:var(--sp-4)}
.recurso p{max-width:70ch;color:var(--c-etiqueta)}

/* Formularios */
.form{max-width:560px}
.form fieldset{border:0;padding:0;margin:0 0 var(--sp-4)}
.form legend{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--c-oro);margin-bottom:var(--sp-2);padding:0}
.campo{margin-bottom:var(--sp-3)}
.campo label{display:block;font-weight:600;font-size:.92rem;margin-bottom:.4rem}
.campo input,.campo textarea,.campo select{width:100%;font:inherit;color:var(--c-tinta);background:var(--c-superficie);border:1px solid var(--c-linea);border-radius:12px;padding:.7rem .9rem}
.campo textarea{resize:vertical}
.campo input:focus-visible,.campo textarea:focus-visible,.campo select:focus-visible{outline:2px solid var(--c-acento);outline-offset:1px;border-color:var(--c-acento)}
.campo [aria-invalid="true"]{border-color:var(--c-oro)}
.error{display:block;color:var(--c-oro);font-weight:600;font-size:.88rem;margin-top:.35rem}
.error[hidden]{display:none}
.trampa{position:absolute;left:-9999px}
.form .btn{margin-top:var(--sp-2)}
.privacidad{color:var(--c-etiqueta);font-size:.9rem;margin-top:var(--sp-2)}
.estado{margin-top:var(--sp-3);font-weight:600}
.contacto-grid{display:grid;gap:var(--sp-5);margin-top:var(--sp-4)}
@media(min-width:860px){.contacto-grid{grid-template-columns:1fr 1.4fr;gap:var(--sp-6);align-items:start}}
.datos{display:grid;gap:var(--sp-3)}
.datos li span{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--c-etiqueta);margin-bottom:.2rem}
.datos li{font-size:1.05rem}

/* Preguntas frecuentes (acordeón nativo) */
.faq{border-top:1px solid var(--c-borde);margin-top:var(--sp-4)}
.faq__item{border-bottom:1px solid var(--c-borde)}
.faq__item summary{cursor:pointer;list-style:none;padding:1.2rem 2.5rem 1.2rem 0;font-size:1.1rem;font-weight:600;position:relative}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary::after{content:"+";position:absolute;right:.2rem;top:50%;transform:translateY(-50%);font-size:1.6rem;color:var(--c-acento);font-weight:400;line-height:1}
.faq__item[open] summary::after{content:"\2212"}
.faq__item .prosa{padding:0 0 1.4rem;max-width:68ch}
.faq__item .prosa p{color:var(--c-etiqueta)}

/* Bio (Acerca de) */
.bio{display:grid;gap:var(--sp-4)}
@media(min-width:760px){.bio{grid-template-columns:300px 1fr;gap:var(--sp-5);align-items:start}}
.bio__foto{border-radius:var(--r);overflow:hidden}
.bio__foto img{width:100%;height:auto;display:block}
.bio__cargo{color:var(--c-etiqueta);margin-top:.3rem}

/* Sesiones de curso */
.sesiones{display:grid;grid-template-columns:1fr;gap:1.1rem;margin-top:var(--sp-4)}
@media(min-width:720px){.sesiones{grid-template-columns:repeat(3,1fr)}}
.sesion{border-radius:var(--r);padding:1.6rem 1.5rem 1.7rem}
.sesion--a{background:var(--c-celeste)} .sesion--b{background:var(--c-durazno)} .sesion--c{background:var(--c-salvia)}
.sesion__n{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:500;color:var(--c-oro);font-size:1.6rem;line-height:1}
.sesion h3{font-size:1.2rem;font-weight:700;margin-top:.4rem}
.sesion__meta{color:var(--c-etiqueta);font-size:.9rem;margin-top:.2rem}
.sesion p{margin-top:.6rem;opacity:.9}

/* Footer */
.pie{background:var(--c-marino);color:var(--c-crema);margin-top:var(--seccion-y)}
.pie__fila{display:grid;gap:var(--sp-4);padding:var(--seccion-y) 0 var(--sp-5)}
@media(min-width:760px){.pie__fila{grid-template-columns:1.6fr 1fr 1fr 1.6fr;gap:var(--sp-5)}}
.pie__marca img{margin-bottom:var(--sp-2)}
.pie__desc{color:#cdc6b8;max-width:34ch;font-size:.95rem}
.pie__t{font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#9aa6b8;margin-bottom:.7rem}
.pie__col li{margin-bottom:.45rem}
.pie a{color:var(--c-crema);text-decoration:none}
.pie a:hover{color:#fff;text-decoration:underline}
.pie__lugar{margin-top:.6rem;color:#9aa6b8;font-size:.9rem}
.pie__legal{border-top:1px solid #2a3a56;padding:var(--sp-3) 0;color:#9aa6b8;font-size:.85rem}
.pie__legal p{margin:.2rem 0}

/* CTA fijo móvil */
.cta-fijo{position:fixed;left:0;right:0;bottom:0;padding:.6rem var(--margen);background:var(--c-hueso);border-top:1px solid var(--c-borde);z-index:14}
.cta-fijo .btn{width:100%}
@media(min-width:960px){.cta-fijo{display:none}}

/* Movimiento */
.rv{opacity:0;transform:translateY(12px)}
.on .rv,.rv.on{opacity:1;transform:none;transition:opacity 420ms var(--ease),transform 420ms var(--ease);transition-delay:calc(var(--i,0)*70ms)}
@media(prefers-reduced-motion:reduce){.rv{opacity:1!important;transform:none!important;transition:none!important}}

/* Ajustes 2026-10-09 */
@media(min-width:1280px){
  .cabecera .contenedor{padding-left:2.5rem;padding-right:2.5rem}
  .cabecera__logo{margin-right:2rem}
  .nav,.nav__panel{gap:1rem}
  .nav__panel .nav__lista{gap:1rem}
  .nav__panel .nav__lista a{font-size:.9rem;white-space:nowrap}
  .nav__cta{padding:.55rem 1rem}
}
.pasos-cta{margin-top:3rem}
.pie__marca img{width:176px;height:auto}
@media(min-width:720px){
  main p{text-align:justify;hyphens:auto;-webkit-hyphens:auto;hyphenate-limit-chars:8 4 4}
  main .pasos-cta,main .compara p,main .caso p,main .form p{text-align:left;hyphens:manual;-webkit-hyphens:manual}
}
.pie__fila,.pie__legal{padding-left:var(--margen);padding-right:var(--margen)}

/* Pasos con descripcion 2026-10-09 */
.pasos-detalle{list-style:none;margin:var(--sp-5) 0 0;padding:0;display:grid;gap:1.5rem;max-width:46rem}
.pasos-detalle li{display:grid;grid-template-columns:2.75rem 1fr;gap:1rem;padding-top:1.5rem;border-top:1px solid var(--c-borde)}
.pasos-detalle__n{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:500;color:var(--c-oro);font-size:1.25rem;line-height:1.4}
.pasos-detalle h3{margin:0 0 .35rem;font-size:1.2rem;letter-spacing:-.01em}
.pasos-detalle p{margin:0}

/* Titulo del inicio 2026-10-09 */
.hero h1,.intro h1{max-width:none;font-size:clamp(2.2rem, 1.4rem + 2.2vw, 2.9rem)}
