/* ═══════════════════════════════════════════════════════════════
   PERDÓN PRÁCTICO — sistema de diseño v1 (staging)
   Familia visual: claridad/modularidad tipo Ali Abdaal,
   identidad propia: sol + cielo + crema, serif Fraunces.
   ═══════════════════════════════════════════════════════════════ */

/* ── tokens ── */
:root{
  /* color */
  --crema:#FDF8F1;        /* fondo base luminoso */
  --tinta:#22261F;        /* texto principal */
  --tinta-suave:#5C6156;  /* texto secundario */
  --sol:#F6C445;          /* protagonista 1 — amarillo sol */
  --cielo:#8FBEDC;        /* protagonista 2 — azul cielo */
  --coral:#EE7A52;        /* acento expresivo (trazos, detalles) */
  --salvia:#8FAE94;       /* acento calmado */
  /* washes de sección */
  --wash-sol:#FBEFD2;
  --wash-cielo:#E9F2F9;
  --wash-coral:#FBE8DE;
  --wash-salvia:#EBF1EA;
  --blanco:#FFFFFF;
  /* tipografía */
  --serif:"Fraunces",Georgia,serif;
  --sans:"Inter Tight",system-ui,Helvetica,sans-serif;
  /* geometría */
  --radius:1.25rem;
  --radius-s:.75rem;
  --margin:clamp(1.4rem,.7rem + 3vw,3rem);
  --maxw:72rem;
  --ease:cubic-bezier(.22,.8,.24,1);
  --shadow:0 10px 34px rgba(34,38,31,.08);
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--crema);color:var(--tinta);font-family:var(--sans);
  font-weight:400;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img,svg,video{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{font:inherit;cursor:pointer;}
:focus-visible{outline:3px solid var(--cielo);outline-offset:3px;border-radius:4px;}

.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--margin);padding-right:var(--margin);}

/* ── tipografía ── */
.eyebrow{font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;font-weight:600;color:var(--tinta-suave);}
h1,h2,h3,.serif{font-family:var(--serif);font-weight:560;letter-spacing:-.01em;}
h1{font-size:clamp(2.3rem,1.3rem + 4.6vw,4.6rem);line-height:1.08;}
h2{font-size:clamp(1.8rem,1.2rem + 2.8vw,3.2rem);line-height:1.14;}
h3{font-size:clamp(1.25rem,1.05rem + 1vw,1.7rem);line-height:1.2;}
.lead{font-size:clamp(1.05rem,.95rem + .6vw,1.35rem);line-height:1.6;color:var(--tinta-suave);max-width:36rem;}
p{max-width:60ch;}
em{font-style:italic;}
.hl{position:relative;white-space:nowrap;}
.hl svg{position:absolute;left:-2%;bottom:-.18em;width:104%;height:.35em;overflow:visible;}
.hl svg path{fill:none;stroke:var(--sol);stroke-width:7;stroke-linecap:round;}
.hl--coral svg path{stroke:var(--coral);}
.hl--cielo svg path{stroke:var(--cielo);}

/* ── botones ── */
.btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--sol);color:var(--tinta);
  font-weight:600;font-size:1rem;padding:.85rem 1.5rem;border-radius:3rem;border:0;
  transition:transform .25s var(--ease),box-shadow .25s;}
.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow);}
.btn--ink{background:var(--tinta);color:var(--crema);}
.btn--ghost{background:transparent;border:2px solid var(--tinta);}
.btn--sm{font-size:.9rem;padding:.6rem 1.15rem;}
.tlink{display:inline-flex;align-items:center;gap:.45rem;font-weight:600;font-size:.95rem;
  text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:2px;}
.tlink span{transition:transform .25s var(--ease);}
.tlink:hover span{transform:translateX(4px);}

/* ── header ── */
.hd{position:sticky;top:0;z-index:60;background:color-mix(in srgb,var(--crema) 88%,transparent);
  backdrop-filter:blur(10px);border-bottom:1px solid rgba(34,38,31,.07);}
.hd__in{display:flex;align-items:center;gap:1.4rem;padding:.85rem var(--margin);max-width:var(--maxw);margin:0 auto;}
.hd__logo{font-family:var(--serif);font-weight:600;font-size:1.18rem;letter-spacing:-.01em;margin-right:auto;white-space:nowrap;}
.hd__logo em{color:var(--coral);font-style:italic;}
.hd__nav{display:flex;gap:1.3rem;font-size:.92rem;font-weight:500;align-items:center;}
.hd__nav a{opacity:.8;transition:opacity .2s;white-space:nowrap;}
.hd__nav a:hover{opacity:1;}
.hd__nav .hd__cta{display:none;} /* el CTA del menú solo existe en móvil */
.hd__burger{display:none;background:none;border:0;width:42px;height:42px;border-radius:.6rem;}
.hd__burger span{display:block;height:2px;background:var(--tinta);margin:5px 8px;border-radius:2px;transition:transform .3s var(--ease),opacity .3s;}
@media(max-width:900px){
  .hd__nav{position:fixed;inset:57px 0 auto 0;background:var(--crema);flex-direction:column;
    padding:1.2rem var(--margin) 1.6rem;gap:1rem;border-bottom:1px solid rgba(34,38,31,.08);
    transform:translateY(-130%);transition:transform .35s var(--ease);}
  .hd__nav.open{transform:none;}
  .hd__burger{display:block;}
  .hd__in > .hd__cta{display:none;}
  .hd__nav .hd__cta{display:inline-flex;margin-top:.4rem;opacity:1;}
}

/* ── secciones ──
   OJO: solo padding vertical. Antes era `padding: X 0`, cuyo `0` horizontal
   pisaba el padding lateral de `.wrap` (definido antes en la hoja) y dejaba
   las secciones pegadas al borde en móvil. */
.sec{padding-top:clamp(4.4rem,3rem + 5.5vw,8.5rem);padding-bottom:clamp(4.4rem,3rem + 5.5vw,8.5rem);}
.sec__head{max-width:44rem;margin-bottom:clamp(2.6rem,1.9rem + 3vw,4.6rem);}
.sec__head .eyebrow{display:block;margin-bottom:.9rem;}
.sec__head p{margin-top:1.2rem;}
.chapter{border-radius:clamp(1.2rem,1rem + 1.5vw,2.2rem);}
.chapter--sol{background:var(--wash-sol);}
.chapter--cielo{background:var(--wash-cielo);}
.chapter--coral{background:var(--wash-coral);}
.chapter--salvia{background:var(--wash-salvia);}
.chapter--blanco{background:var(--blanco);}
.chapter .inpad{padding:clamp(2rem,1.4rem + 3vw,4.2rem);}

/* ── hero ── */
.hero{padding:clamp(3.2rem,2rem + 5vw,6.5rem) 0 clamp(2.6rem,2rem + 3vw,4.5rem);}
.hero__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,1.4rem + 3vw,4rem);align-items:center;}
.hero h1{margin:1.1rem 0 1.5rem;}
.hero .firma{margin-top:1.8rem;font-family:var(--serif);font-style:italic;font-size:clamp(1.05rem,1rem + .5vw,1.3rem);color:var(--tinta-suave);}
.hero__cta{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:2.2rem;align-items:center;}
.hero__art{position:relative;aspect-ratio:1/1.05;width:100%;}
.hero__art .sun{position:absolute;inset:8% 6% auto auto;width:62%;aspect-ratio:1;border-radius:50%;background:var(--sol);}
.hero__art .foto{position:absolute;left:4%;bottom:6%;width:54%;aspect-ratio:1;border-radius:50%;
  overflow:hidden;border:4px solid var(--crema);box-shadow:var(--shadow);}
.hero__art .foto img{width:100%;height:100%;object-fit:cover;object-position:center 20%;}
.hero__art .spark{position:absolute;width:26px;height:26px;}
.hero__art .spark--a{top:6%;left:12%;transform:rotate(18deg);}
.hero__art .spark--b{right:2%;bottom:38%;transform:rotate(-12deg);}
.hero__art .cloudA{position:absolute;left:0;top:18%;width:56%;height:24%;border-radius:3rem;background:var(--wash-cielo);}
.hero__art .cloudB{position:absolute;right:0;bottom:20%;width:48%;height:20%;border-radius:3rem;background:var(--wash-coral);}
.hero__art .word{position:absolute;right:-2%;bottom:4%;font-family:var(--serif);font-style:italic;
  font-size:clamp(.95rem,.75rem + .9vw,1.35rem);transform:rotate(-5deg);color:var(--tinta);}
@media(max-width:860px){.hero__grid{grid-template-columns:1fr;}.hero__art{max-width:22rem;margin:0 auto;order:-1;}}

/* ── franja de confianza ── */
.trust{border-top:1px solid rgba(34,38,31,.08);border-bottom:1px solid rgba(34,38,31,.08);
  padding:1.6rem 0;}
.trust__in{display:flex;flex-wrap:wrap;gap:1rem 2.6rem;justify-content:center;align-items:baseline;}
.trust__in span{font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--tinta-suave);line-height:2;}

/* ── captura ── */
.cap{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.6rem,1.2rem + 2vw,3rem);align-items:center;}
.cap form{display:grid;gap:.8rem;}
.field label{display:block;font-size:.8rem;font-weight:600;margin-bottom:.35rem;}
.field input[type=text],.field input[type=email],.field select,.field textarea{
  width:100%;background:var(--blanco);border:2px solid rgba(34,38,31,.14);border-radius:.8rem;
  padding:.75rem .9rem;font:inherit;color:var(--tinta);}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--cielo);}
.consent{display:flex;gap:.6rem;align-items:flex-start;font-size:.8rem;color:var(--tinta-suave);}
.consent input{margin-top:.2rem;width:1rem;height:1rem;}
.form-note{font-size:.8rem;color:var(--tinta-suave);}
.form-state{display:none;background:var(--wash-cielo);border-radius:.8rem;padding:.9rem 1rem;font-size:.9rem;}
.form-state.show{display:block;}
@media(max-width:860px){.cap{grid-template-columns:1fr;}}

/* ── router (¿qué estás atravesando?) ── */
.router{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1.3rem,1rem + 1.4vw,2.2rem);}
.door{background:var(--blanco);border-radius:var(--radius);padding:clamp(1.8rem,1.3rem + 1.8vw,2.7rem);
  display:flex;flex-direction:column;gap:1rem;box-shadow:0 2px 0 rgba(34,38,31,.04);
  transition:transform .3s var(--ease),box-shadow .3s;}
.door:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.door .mark{width:52px;height:52px;border-radius:.9rem;display:grid;place-items:center;font-size:1.2rem;}
.door h3{font-size:clamp(1.15rem,1rem + .8vw,1.5rem);line-height:1.28;}
.door p{font-size:.95rem;line-height:1.6;color:var(--tinta-suave);}
.door .tlink{margin-top:auto;padding-top:.6rem;}
@media(max-width:760px){.router{grid-template-columns:1fr;}}

/* ── experiencias (ahora) ── */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,.8rem + 1.2vw,1.8rem);}
.exp{border-radius:var(--radius);padding:clamp(1.9rem,1.4rem + 2.2vw,3.1rem);display:flex;flex-direction:column;gap:1rem;}
.exp .k{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;font-weight:600;color:var(--tinta-suave);}
.exp .sub{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--tinta-suave);}
.exp p{font-size:.98rem;line-height:1.62;}
.exp .btn{margin-top:auto;align-self:flex-start;margin-top:1.2rem;}
@media(max-width:760px){.duo{grid-template-columns:1fr;}}
.soonbar{margin-top:clamp(1.2rem,1rem + 1.2vw,2rem);background:var(--blanco);border-radius:var(--radius);
  padding:clamp(1.3rem,1rem + 1.2vw,2rem);display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.6rem;}
.soonbar .pill{background:var(--wash-sol);border-radius:2rem;padding:.35rem .8rem;font-size:.68rem;
  letter-spacing:.18em;text-transform:uppercase;font-weight:600;}
.soonbar p{font-size:.92rem;color:var(--tinta-suave);flex:1;min-width:14rem;}

/* ── método / ciclo ── */
.ciclo{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:1.6rem 0;}
.ciclo .paso{background:var(--blanco);border-radius:2.4rem;padding:.7rem 1.2rem;font-weight:600;font-size:.95rem;
  font-family:var(--serif);}
.ciclo .fl{color:var(--coral);font-weight:700;}
.frames{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2rem;}
.frame{background:var(--blanco);border-radius:var(--radius-s);padding:1.5rem 1.6rem;}
.frame h4{font-family:var(--serif);font-size:1.08rem;margin-bottom:.3rem;}
.frame p{font-size:.9rem;line-height:1.6;color:var(--tinta-suave);}
@media(max-width:760px){.frames{grid-template-columns:1fr;}}

/* ── programa insignia ── */
.actos{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2.2rem;}
.acto{background:var(--blanco);border-radius:var(--radius);padding:1.9rem;}
.acto .n{font-family:var(--serif);font-style:italic;color:var(--coral);font-size:.95rem;}
.acto h3{margin:.35rem 0 .5rem;}
.acto p{font-size:.92rem;line-height:1.6;color:var(--tinta-suave);}
@media(max-width:760px){.actos{grid-template-columns:1fr;}}

/* ── obra / recursos / enseñanzas ── */
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;}
.tile{border-radius:var(--radius);padding:1.7rem;display:flex;flex-direction:column;gap:.8rem;min-height:13rem;}
.tile h3{font-size:1.12rem;}
.tile p{font-size:.9rem;line-height:1.6;color:var(--tinta-suave);}
.tile .tlink{margin-top:auto;font-size:.88rem;}
/* tarjetas de contenido a color pleno (vida tipo Ali) */
.tile--sol{background:var(--sol);}
.tile--cielo{background:var(--cielo);}
.tile--coral{background:var(--coral);}
.tile--salvia{background:var(--salvia);}
.tile--sol .eyebrow,.tile--cielo .eyebrow,.tile--coral .eyebrow,.tile--salvia .eyebrow{color:rgba(34,38,31,.6);}
.tile--sol h3,.tile--cielo h3,.tile--coral h3,.tile--salvia h3{font-size:1.3rem;}
.tile--sol,.tile--cielo,.tile--coral,.tile--salvia{transform:rotate(0deg);transition:transform .3s var(--ease),box-shadow .3s;}
.tile--sol:hover,.tile--cielo:hover,.tile--coral:hover,.tile--salvia:hover{transform:translateY(-4px) rotate(-.5deg);box-shadow:var(--shadow);}
@media(max-width:980px){.tiles{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.tiles{grid-template-columns:1fr;}}

/* ── sobre José ── */
.jose{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(1.8rem,1.3rem + 2.5vw,3.5rem);align-items:center;}
.jose__foto{border-radius:var(--radius);overflow:hidden;position:relative;}
.jose__foto img{width:100%;aspect-ratio:4/5;object-fit:cover;}
.jose p{margin-top:1.1rem;color:var(--tinta-suave);font-size:.98rem;line-height:1.65;}
@media(max-width:820px){.jose{grid-template-columns:1fr;}.jose__foto{max-width:20rem;}}

/* ── testimonios (en curación) ── */
.testi{background:var(--blanco);border-radius:var(--radius);padding:clamp(1.6rem,1.2rem + 2vw,2.8rem);
  display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center;}
.testi p{color:var(--tinta-suave);font-size:.95rem;flex:1;min-width:16rem;}

/* ── footer ── */
.ft{background:var(--tinta);color:#EDEBE4;margin-top:clamp(3rem,2rem + 4vw,6rem);}
.ft a{opacity:.85;transition:opacity .2s;}
.ft a:hover{opacity:1;}
.ft__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;padding:clamp(2rem,1.5rem + 2vw,3rem) 0 1.6rem;}
.ft__col{display:flex;flex-direction:column;gap:.55rem;font-size:.92rem;font-weight:300;}
.ft__h{font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;font-weight:600;color:var(--sol);margin-bottom:.5rem;}
.ft__disc{font-size:.8rem;line-height:1.6;color:rgba(237,235,228,.55);max-width:46rem;padding-bottom:1.6rem;}
.ft__bar{border-top:1px solid rgba(237,235,228,.14);padding:1.2rem 0 1.6rem;display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;justify-content:space-between;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;}
/* políticas plegadas: el footer respira, el texto legal sigue disponible */
.ft__legal{margin-bottom:1.4rem;}
.ft__legal summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:.5rem;
  font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(237,235,228,.55);}
.ft__legal summary::-webkit-details-marker{display:none;}
.ft__legal summary::after{content:"+";font-size:.9rem;transition:transform .3s var(--ease);}
.ft__legal[open] summary::after{transform:rotate(45deg);}
.ft__legal summary:hover{color:rgba(237,235,228,.85);}
.ft__legal .ft__disc{padding-top:1rem;padding-bottom:0;}
.ft__legal .ft__disc + .ft__disc{padding-top:.6rem;}
@media(max-width:860px){.ft__grid{grid-template-columns:repeat(2,1fr);}}

/* ── reveals ── */
.rv{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
.rv.in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none;}
  *,*::before,*::after{animation:none!important;transition:none!important;}
  html{scroll-behavior:auto;}
}

/* ── cinta staging ── */
.ribbon{position:fixed;bottom:0;left:0;z-index:130;background:var(--tinta);color:var(--crema);
  font-weight:600;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;
  padding:.35rem .7rem;border-top-right-radius:.3rem;}
/* las marcas de staging solo se ven fuera de perdonpractico.co (pp.js pone data-env) */
html:not([data-env="staging"]) [data-staging]{display:none!important}

/* ═══════════════════════════════════════════════════════════════
   REBRAND v2 — sistema del libro (board oficial) × MindMarket
   Paleta: negro/crema/lila/azul/verde bosque/rosa · Glifos animados
   Display: Krona One (eco del wordmark) · Grotesk: Space Grotesk
   ═══════════════════════════════════════════════════════════════ */
:root{
  --negro:#1a1a1a; --crema:#f0ece0; --blanco:#ffffff;
  --lila:#b9a5e0; --azul:#4f74d4; --verde:#14442e; --rosa:#f2a0c0;
  --lila-w:#e8e0f5; --azul-w:#dfe6f7; --rosa-w:#fae4ee; --verde-w:#dde6de;
  /* alias del sistema anterior → re-viste subpáginas sin tocarlas */
  --tinta:var(--negro); --tinta-suave:#585c52;
  --sol:var(--lila); --cielo:var(--azul); --coral:var(--rosa); --salvia:var(--verde);
  --wash-sol:var(--lila-w); --wash-cielo:var(--azul-w);
  --wash-coral:var(--rosa-w); --wash-salvia:var(--verde-w);
  --display:"Krona One",var(--sans);
  --grot:"Space Grotesk",var(--sans);
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --shadow:0 14px 40px rgba(26,26,26,.14);
}
body{background:var(--crema);}
h1,h2,h3,.serif{font-family:var(--grot);font-weight:700;letter-spacing:-.038em;}
h1{letter-spacing:-.045em;line-height:1.04;}
h2{line-height:1.08;}
.eyebrow{font-family:var(--display);font-weight:400;font-size:.6rem;letter-spacing:.18em;color:var(--tinta-suave);}
.mono{font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--tinta-suave);}
.hd__logo{font-family:var(--display);font-weight:400;font-size:.92rem;letter-spacing:.08em;text-transform:uppercase;}
.hd__logo em{color:inherit;font-style:normal;}
.hl svg path{stroke:var(--lila);}
.hl--coral svg path{stroke:var(--rosa);}
.hl--cielo svg path{stroke:var(--azul);}

/* tiles legacy → paleta board */
.tile--sol{background:var(--lila);}
.tile--cielo{background:var(--azul);color:var(--crema);}
.tile--cielo .eyebrow,.tile--cielo p{color:rgba(240,236,224,.75);}
.tile--coral{background:var(--rosa);}
.tile--salvia{background:var(--verde);color:var(--crema);}
.tile--salvia .eyebrow,.tile--salvia p{color:rgba(240,236,224,.75);}

/* botones por color (sistema MindMarket con paleta board) */
.btn{background:var(--negro);color:var(--crema);}
.btn--lila{background:var(--lila);color:var(--negro);}
.btn--azul{background:var(--azul);color:var(--crema);}
.btn--verde{background:var(--verde);color:var(--crema);}
.btn--rosa{background:var(--rosa);color:var(--negro);}
.btn--crema{background:var(--crema);color:var(--negro);}
.btn--line{background:transparent;color:inherit;border:2px solid currentColor;}
.btn--ink{background:var(--negro);color:var(--crema);}
.btn--ghost{border-color:var(--negro);}

/* bandas de color full-bleed (capítulos) */
.band{position:relative;}
.band--negro{background:var(--negro);color:var(--crema);}
.band--negro .eyebrow{color:rgba(240,236,224,.55);}
.band--negro .lead,.band--negro p{color:rgba(240,236,224,.78);}
.band--lila{background:var(--lila);color:var(--negro);}
.band--lila .eyebrow{color:rgba(26,26,26,.55);}
.band--lila .lead{color:rgba(26,26,26,.75);}
.band--verde{background:var(--verde);color:var(--crema);}
.band--verde .eyebrow,.band--verde .lead{color:rgba(240,236,224,.72);}

/* cinta ajedrez + marquee */
.checker{height:30px;background:repeating-conic-gradient(var(--negro) 0% 25%,var(--crema) 0% 50%) 0 0/30px 30px;}
.marq{overflow:hidden;background:var(--negro);color:var(--crema);padding:.85rem 0;}
.marq__in{display:inline-flex;gap:3.2rem;white-space:nowrap;will-change:transform;
  animation:marq 26s linear infinite;font-family:var(--display);font-size:.72rem;
  letter-spacing:.22em;text-transform:uppercase;align-items:center;}
.marq__in .st{color:var(--rosa);}
@keyframes marq{to{transform:translateX(-50%);}}

/* ── glifos de marca animados ── */
.gl{display:block;}
.gl--eye .pupila{transform-origin:center;animation:blink 6s infinite;}
@keyframes blink{0%,90%,100%{transform:scaleY(1);}93%{transform:scaleY(.06);}96%{transform:scaleY(1);}}
.gl--diana{animation:pulse 3.6s var(--ease) infinite;transform-origin:center;}
@keyframes pulse{0%,100%{transform:scale(1);}50%{transform:scale(.94);}}
.gl--star{animation:twinkle 4.4s ease-in-out infinite;transform-origin:center;}
@keyframes twinkle{0%,100%{transform:scale(1) rotate(0deg);}50%{transform:scale(.88) rotate(6deg);}}
.gl--ast{animation:girar 26s linear infinite;transform-origin:center;}
@keyframes girar{to{transform:rotate(360deg);}}
.gl--arcs{animation:rise 5s ease-in-out infinite;transform-origin:center bottom;}
@keyframes rise{0%,100%{transform:translateY(0);}50%{transform:translateY(-5%);}}

/* hero cuadrícula de marca (portada del libro) */
.cuadro{display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:30rem;
  border-radius:.6rem;overflow:hidden;box-shadow:var(--shadow);}
.cuadro>div{aspect-ratio:1;display:grid;place-items:center;padding:14%;}
.cuadro .q-negro{background:var(--negro);}
.cuadro .q-lila{background:var(--lila);}
.cuadro .q-azul{background:var(--azul);}
.cuadro .q-verde{background:var(--verde);}
.cuadro .wm{font-family:var(--display);color:var(--crema);font-size:clamp(.8rem,.6rem + 1vw,1.15rem);
  letter-spacing:.1em;text-transform:uppercase;line-height:1.6;}

/* tarjetas-cuadrante del router */
.qdoor{border-radius:.6rem;padding:clamp(1.7rem,1.3rem + 1.8vw,2.6rem);
  display:flex;flex-direction:column;gap:1rem;min-height:20rem;
  transition:transform .3s var(--ease),box-shadow .3s;}
.qdoor:hover{transform:translateY(-5px);box-shadow:var(--shadow);}
.qdoor--lila{background:var(--lila);color:var(--negro);}
.qdoor--azul{background:var(--azul);color:var(--crema);}
.qdoor--verde{background:var(--verde);color:var(--crema);}
.qdoor--rosa{background:var(--rosa);color:var(--negro);}
.qdoor .gl{width:52px;height:52px;}
.qdoor h3{font-size:clamp(1.3rem,1.05rem + 1.2vw,1.85rem);line-height:1.16;}
.qdoor p{font-size:.95rem;line-height:1.6;opacity:.82;max-width:34rem;}
.qdoor .tlink{margin-top:auto;padding-top:.8rem;}
.qdoor--azul .tlink,.qdoor--verde .tlink{color:var(--crema);}

/* franja de autoridad */
.auth{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;}
.auth>div{border-top:2px solid var(--negro);padding-top:1.1rem;}
.auth h3{font-size:1.05rem;letter-spacing:-.02em;line-height:1.3;}
.auth p{font-size:.88rem;color:var(--tinta-suave);margin-top:.4rem;}
@media(max-width:900px){.auth{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.auth{grid-template-columns:1fr;}}

/* movimientos del camino (3 actos) */
.movs{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2.2rem;}
.mov{background:rgba(240,236,224,.07);border:1px solid rgba(240,236,224,.16);
  border-radius:.6rem;padding:1.6rem;}
.mov .mono{color:var(--rosa);}
.mov h3{margin:.5rem 0 .5rem;color:var(--crema);}
.mov p{font-size:.92rem;}
@media(max-width:760px){.movs{grid-template-columns:1fr;}}

/* cascada de entrada (coreografía MindMarket) */
.rv .cd{opacity:0;transform:translateY(16px);transition:opacity .7s var(--ease),transform .7s var(--ease);}
.rv.in .cd{opacity:1;transform:none;}
.rv.in .cd2{transition-delay:.14s;}
.rv.in .cd3{transition-delay:.28s;}
.rv.in .cd4{transition-delay:.4s;}
@media(prefers-reduced-motion:reduce){
  .marq__in,.gl--eye .pupila,.gl--diana,.gl--star,.gl--ast,.gl--arcs{animation:none!important;}
  .rv .cd{opacity:1;transform:none;transition:none;}
}

/* captura lila (un solo campo) */
.capone{max-width:44rem;}
.capone form{display:flex;gap:.7rem;margin-top:1.8rem;flex-wrap:wrap;}
.capone input[type=email]{flex:1;min-width:14rem;background:var(--blanco);border:2px solid var(--negro);
  border-radius:3rem;padding:.85rem 1.3rem;font:inherit;}
.capone input[type=email]:focus{outline:3px solid var(--azul);outline-offset:2px;}
.capone .micro{font-size:.78rem;color:rgba(26,26,26,.65);margin-top:1rem;max-width:34rem;}

/* ecosistema */
.eco{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem;}
.eco__main{grid-column:1/-1;background:var(--negro);color:var(--crema);border-radius:.6rem;
  padding:clamp(1.8rem,1.4rem + 2vw,3rem);display:flex;flex-wrap:wrap;gap:1.2rem 2.4rem;align-items:center;}
.eco__main h3{color:var(--crema);}
.eco__main p{color:rgba(240,236,224,.75);flex:1;min-width:16rem;font-size:.95rem;}
.eco__it{border:2px solid var(--negro);border-radius:.6rem;padding:1.5rem;display:flex;flex-direction:column;gap:.6rem;}
.eco__it p{font-size:.9rem;color:var(--tinta-suave);}
.eco__it .tlink{margin-top:auto;padding-top:.6rem;}
@media(max-width:760px){.eco{grid-template-columns:1fr;}}

/* footer sobre negro con cierre display */
.ft .cierre{font-family:var(--display);font-size:clamp(.95rem,.8rem + 1vw,1.5rem);
  letter-spacing:.12em;text-transform:uppercase;color:var(--crema);line-height:1.7;
  padding:clamp(2.2rem,1.8rem + 2vw,3.6rem) 0 0;}
.ft__h{color:var(--lila);font-family:var(--display);font-weight:400;font-size:.6rem;letter-spacing:.18em;}

/* header: el CTA debe seguir visible en móvil (doc §2) */
@media(max-width:900px){
  .hd__in > .hd__cta{display:inline-flex;font-size:.72rem;padding:.5rem .85rem;}
}
/* grids responsivos de las bandas nuevas */
@media(max-width:860px){
  [data-grid-jose]{grid-template-columns:1fr!important;}
  [data-grid-cap]{grid-template-columns:1fr!important;}
}

/* ═══ v3 — header pill flotante + hero morado eléctrico + loader ═══ */
/* loader de marca: el ojo que abre y cierra mientras carga */
.loader{position:fixed;inset:0;z-index:300;background:var(--lila);display:grid;place-items:center;
  transition:opacity .45s var(--ease),visibility .45s;}
.loader.done{opacity:0;visibility:hidden;pointer-events:none;}
.loader svg{width:clamp(72px,10vw,110px);}
/* parpadeo temprano y frecuente: el loader vive ~700ms, el guiño debe alcanzar a verse */
.loader .pupila{transform-origin:center;animation:loaderblink .85s infinite;}
@keyframes loaderblink{0%,32%,100%{transform:scaleY(1);}38%{transform:scaleY(.06);}44%{transform:scaleY(1);}}
@media(prefers-reduced-motion:reduce){.loader .pupila{animation:none;}}

/* header como píldora flotante (comportamiento MindMarket, identidad PP) */
.hd{position:fixed;top:0;left:0;right:0;background:transparent;border:0;backdrop-filter:none;}
.hd__in{background:var(--blanco);border-radius:3rem;box-shadow:0 8px 30px rgba(26,26,26,.10);
  margin:.9rem auto 0;width:calc(100% - 2*var(--margin));
  padding:.55rem .7rem .55rem 1.4rem;max-width:calc(var(--maxw) - 2rem);}
.hd__nav{font-weight:500;}
body{padding-top:0;}
@media(max-width:900px){
  .hd__nav{position:fixed;inset:76px var(--margin) auto;background:var(--blanco);border-radius:1.4rem;
    box-shadow:0 14px 40px rgba(26,26,26,.16);border:0;padding:1.1rem 1.4rem;}
}

/* hero morado: palabras gigantes + glifos vivos asomándose */
.heroband{background:var(--lila);color:var(--negro);position:relative;overflow:hidden;
  height:100svh;min-height:640px;display:grid;align-items:center;justify-items:center;text-align:center;
  padding:clamp(5rem,9vh,7rem) var(--margin) clamp(7rem,16vh,10rem);}
.heroband .eyebrow{color:rgba(26,26,26,.55);}
.heroband h1{font-size:clamp(2.2rem,.3rem + 5.8vw,5.5rem);line-height:1.06;letter-spacing:-.045em;
  margin:1.1rem 0 0;max-width:none;}
.heroband h1 .l{white-space:nowrap;}
@media(max-width:720px){.heroband h1 .l{white-space:normal;}}
.heroband .tag{font-family:var(--grot);font-weight:500;font-size:clamp(1.15rem,1rem + 1vw,1.9rem);
  letter-spacing:-.03em;color:rgba(26,26,26,.8);}
.heroband .reconoce{margin:1.2rem auto 0;max-width:34rem;font-size:clamp(.98rem,.9rem + .4vw,1.12rem);
  line-height:1.6;color:rgba(26,26,26,.66);}
.heroband .hero__cta{justify-content:center;}
/* glifos asomándose desde el borde inferior */
.peek{position:absolute;bottom:0;left:0;right:0;height:clamp(8rem,18vh,12rem);pointer-events:none;}
.peek .pk{position:absolute;bottom:-12%;animation:float 5.5s ease-in-out infinite;}
.peek .pk svg{width:100%;height:auto;display:block;}
.pk--eye{left:6%;width:clamp(90px,12vw,170px);animation-delay:.2s;}
.pk--diana{left:27%;width:clamp(80px,10vw,150px);bottom:-18%!important;animation-delay:1.1s;}
.pk--star{right:26%;width:clamp(85px,11vw,160px);animation-delay:.6s;transform:rotate(-8deg);}
.pk--ast{right:6%;width:clamp(95px,12vw,175px);bottom:-20%!important;animation-delay:1.6s;}
@keyframes float{0%,100%{transform:translateY(0) rotate(0deg);}50%{transform:translateY(-14%) rotate(3deg);}}
@media(prefers-reduced-motion:reduce){.peek .pk{animation:none;}}
@media(max-width:700px){
  .pk--diana{left:30%;} .pk--star{right:28%;}
}

/* píldora móvil compacta — alineada a los gutters del contenido */
@media(max-width:900px){
  .hd__in{margin:.7rem auto 0;width:calc(100% - 2*var(--margin));padding:.45rem .5rem .45rem 1rem;gap:.7rem;}
  .hd__logo{font-size:.72rem;letter-spacing:.06em;}
  .hd__in > .hd__cta{white-space:nowrap;font-size:.66rem;padding:.55rem .85rem;}
  .hd__burger{width:36px;height:36px;}
  .hd__nav{inset:70px .8rem auto;}
}

/* panel móvil totalmente oculto al estar cerrado */
@media(max-width:900px){
  .hd__nav{visibility:hidden;opacity:0;transition:transform .35s var(--ease),opacity .3s,visibility .35s;}
  .hd__nav.open{visibility:visible;opacity:1;}
}

/* micro-interacciones: los glifos reaccionan al hover de su puerta */
.qdoor .gl{transition:transform .4s var(--ease);}
.qdoor:hover .gl--eye .pupila{animation:blink 1.1s infinite;}
.qdoor:hover .gl--diana{animation-duration:1.2s;}
.qdoor:hover .gl--star{animation-duration:1.4s;}
.qdoor:hover .gl--ast{animation-duration:5s;}
.btn,.tlink{will-change:transform;}

/* marquee con onda (wave-scroll) */
.marq__in span{display:inline-block;animation:bob 2.6s ease-in-out infinite;}
.marq__in span:nth-child(4n+2){animation-delay:.4s;}
.marq__in span:nth-child(4n+3){animation-delay:.8s;}
.marq__in span:nth-child(4n){animation-delay:1.2s;}
@keyframes bob{0%,100%{transform:translateY(0);}50%{transform:translateY(-4px);}}
@media(prefers-reduced-motion:reduce){.marq__in span{animation:none;}}

/* ═══ header en 2 momentos: cortina tipo MindMarket ═══ */
.hstage{position:relative;}
.hstage .heroband{position:sticky;top:0;}
.hm2{position:relative;z-index:2;background:var(--rosa);min-height:100svh;
  display:grid;align-items:center;overflow:hidden;
  padding:clamp(5rem,10vh,8rem) 0 clamp(12rem,26vh,17rem);
  border-radius:1.6rem 1.6rem 0 0;box-shadow:0 -18px 50px rgba(26,26,26,.18);}
.hm2__in{width:100%;}
.hm2__ttl{font-family:var(--grot);font-weight:700;letter-spacing:-.045em;line-height:1.08;
  font-size:clamp(1.9rem,1rem + 3.4vw,3.6rem);max-width:18ch;margin:0;}
.hm2__txt{font-family:var(--sans);font-weight:450;letter-spacing:-.01em;line-height:1.55;
  font-size:clamp(1.02rem,.94rem + .5vw,1.28rem);max-width:46ch;color:rgba(26,26,26,.74);}
.hm2__ttl + .hm2__txt{margin-top:1.6rem;}
.hm2__txt + .hm2__txt{margin-top:1rem;}
.peek--big{height:clamp(10rem,24vh,16rem);}
.peek--big .pk--eye{width:clamp(120px,16vw,240px);left:4%;}
.peek--big .pk--diana{width:clamp(100px,13vw,200px);left:28%;}
.peek--big .pk--star{width:clamp(105px,14vw,210px);right:27%;}
.peek--big .pk--ast{width:clamp(120px,15vw,230px);right:4%;}

/* ═══ appreciation wall — mosaico masonry texto+video ═══ */
.wall{columns:3;column-gap:clamp(.9rem,.6rem + 1vw,1.3rem);}
@media(max-width:900px){.wall{columns:2;}}
@media(max-width:600px){.wall{columns:1;}}
.tcard{break-inside:avoid;margin-bottom:clamp(.9rem,.6rem + 1vw,1.3rem);
  border-radius:1rem;overflow:hidden;background:var(--blanco);
  border:1px solid rgba(26,26,26,.08);box-shadow:0 4px 18px rgba(26,26,26,.05);}
/* tarjeta texto */
.tcard__hd{display:flex;gap:.7rem;align-items:center;padding:1.2rem 1.3rem 0;}
.tcard__av{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  font-family:var(--grot);font-weight:700;font-size:1.05rem;flex:none;color:var(--crema);}
.av--lila{background:var(--lila);color:var(--negro);}
.av--azul{background:var(--azul);}
.av--verde{background:var(--verde);}
.av--rosa{background:var(--rosa);color:var(--negro);}
.tcard__name{display:block;font-weight:600;font-size:.95rem;line-height:1.1;}
.tcard__ctx{display:block;font-size:.78rem;color:var(--tinta-suave);margin-top:.15rem;}
.tcard__q{padding:.9rem 1.3rem 1.3rem;font-size:1rem;line-height:1.5;color:#2c2e2a;}
.tcard--lila{border-top:4px solid var(--lila);}
.tcard--azul{border-top:4px solid var(--azul);}
.tcard--verde{border-top:4px solid var(--verde);}
.tcard--rosa{border-top:4px solid var(--rosa);}
/* tarjeta video — Shorts verticales (9:16) con fachada + embed al dar play */
.tcard--video{border:0;}
.vthumb{position:relative;aspect-ratio:9/16;display:grid;place-items:center;
  background-size:cover;background-position:center 28%;overflow:hidden;}
.vthumb[data-yt]{cursor:pointer;}
.vthumb[data-yt] .vplay{cursor:pointer;}
/* velo inferior para que el nombre y el play se lean sobre el poster */
.vshade{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0) 42%),
             radial-gradient(circle at 50% 46%,rgba(0,0,0,.28),transparent 46%);}
.vframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:1rem;z-index:3;}
.vplay,.vname{position:relative;z-index:2;}

/* María: primera del mosaico (prioridad por posición), encuadre retrato
   para darle un poco más de presencia sin sacarla del mosaico */
.vthumb--intro{aspect-ratio:4/5;background-position:center center;}
/* OJO: background-color (no el shorthand) para no pisar background-size:cover del poster */
.vthumb--lila{background-color:var(--lila);}
.vthumb--azul{background-color:var(--azul);}
.vthumb--verde{background-color:var(--verde);}
.vthumb--rosa{background-color:var(--rosa);}
.vplay{width:58px;height:58px;border-radius:50%;border:0;background:rgba(26,26,26,.55);
  display:grid;place-items:center;transition:transform .3s var(--ease);}
.vthumb:hover .vplay{transform:scale(1.08);}
.vname{position:absolute;left:1rem;bottom:.9rem;color:var(--crema);font-weight:600;font-size:.92rem;
  text-shadow:0 1px 8px rgba(0,0,0,.4);}
.vname em{font-style:normal;opacity:.7;font-weight:400;font-size:.8rem;}
.vquote{padding:1rem 1.3rem;font-weight:600;font-size:1rem;line-height:1.35;}
.vquote--lila{background:var(--lila);color:var(--negro);}
.vquote--azul{background:var(--azul);color:var(--crema);}
.vquote--verde{background:var(--verde);color:var(--crema);}
.vquote--rosa{background:var(--rosa);color:var(--negro);}

/* ═══ scrollytelling del hero: pin + word scrub (skill del estudio) ═══
   P1 (lila) queda fijada por su carril .scrubgap mientras el texto se
   enciende palabra a palabra; P2 (rosada) se vuelve sticky al cubrir y
   scrubea con su propio carril. Sin motion: carriles a 0 y texto completo. */
.scrubgap{height:0;}
.motion .hstage .hm2{position:sticky;top:0;}
.heroband .sw,.hm2 .sw{opacity:1;}
.motion .heroband .sw,.motion .hm2 .sw{opacity:.16;will-change:opacity;}
/* CTA: aparece cuando el scrub va terminando */
.motion .heroband [data-scta],.motion .hm2 [data-scta]{opacity:0;transform:translateY(12px);
  transition:opacity .5s var(--ease),transform .5s var(--ease);}
.motion .heroband [data-scta].is-on,.motion .hm2 [data-scta].is-on{opacity:1;transform:none;}
/* línea de progreso del scrub (micro-interacción) */
.scrubline{display:none;}
.motion .scrubline{display:block;position:relative;height:2px;width:min(220px,38vw);
  background:rgba(26,26,26,.14);margin:2.4rem auto 0;border-radius:2px;overflow:hidden;}
.motion .hm2 .scrubline{margin:2.4rem 0 0;}
.scrubline__fill{position:absolute;inset:0;background:rgba(26,26,26,.7);border-radius:2px;
  transform:scaleX(0);transform-origin:left;display:block;}

/* ═══ landings de producto (programas/experiencias) ═══ */
/* VSL: video sales letter en el hero del producto */
.vsl{max-width:46rem;margin:clamp(2rem,1.5rem + 2vw,3rem) auto 0;}
.vsl__frame{position:relative;aspect-ratio:16/9;border-radius:1rem;overflow:hidden;
  display:grid;place-items:center;box-shadow:0 20px 60px rgba(0,0,0,.35);}
.vsl__frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 24%;}
.vsl__frame .vshade{background:linear-gradient(to top,rgba(0,0,0,.55),rgba(0,0,0,0) 45%),
  radial-gradient(circle at 50% 50%,rgba(0,0,0,.25),transparent 50%);}
.vsl__cap{position:absolute;left:1.3rem;bottom:1.1rem;z-index:2;color:var(--crema);
  font-weight:600;font-size:.95rem;text-shadow:0 1px 10px rgba(0,0,0,.5);}
.vsl__cap em{font-style:normal;opacity:.7;font-weight:400;font-size:.82rem;}

/* dolores: lista de espejos con glifo */
.pains{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1.2rem,1rem + 1.2vw,2rem);max-width:56rem;}
.pain{display:flex;gap:1.1rem;align-items:flex-start;padding:1.4rem 1.5rem;background:var(--blanco);
  border-radius:.8rem;border:1px solid rgba(26,26,26,.08);}
.pain .gl{width:44px;height:44px;flex:none;margin-top:.15rem;}
.pain p{font-size:1.02rem;line-height:1.55;font-weight:450;}
@media(max-width:760px){.pains{grid-template-columns:1fr;}}

/* journey: actos desplegables (currículo tipo Mindvalley, estética PP) */
.jmoves{display:grid;gap:1rem;max-width:52rem;}
.jmove{background:rgba(240,236,224,.06);border:1px solid rgba(240,236,224,.18);border-radius:.8rem;}
.jmove summary{display:flex;align-items:center;gap:1.2rem;padding:1.3rem 1.5rem;cursor:pointer;list-style:none;}
.jmove summary::-webkit-details-marker{display:none;}
.jmove summary .mono{color:var(--rosa);flex:none;}
.jmove summary h3{color:var(--crema);font-size:clamp(1.2rem,1.05rem + .8vw,1.6rem);margin:0;}
.jmove__plus{margin-left:auto;color:var(--crema);font-size:1.4rem;font-weight:300;
  transition:transform .3s var(--ease);}
.jmove[open] .jmove__plus{transform:rotate(45deg);}
.jmove__body{padding:0 1.5rem 1.5rem;color:rgba(240,236,224,.8);}
.jmove__arc{font-family:var(--grot);font-weight:500;letter-spacing:-.02em;color:var(--crema);
  font-size:1.05rem;margin-bottom:.8rem;}
.jmove__body ul{margin:0;padding-left:1.2rem;display:grid;gap:.45rem;}
.jmove__body li{font-size:.96rem;line-height:1.55;}
@media(max-width:560px){.jmove summary{flex-wrap:wrap;gap:.4rem .9rem;}}

/* cómo funciona: grid de formato */
.hows{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;}
.how{background:var(--blanco);border-radius:.8rem;padding:1.5rem;border:1px solid rgba(26,26,26,.08);}
.how h3{font-size:1.15rem;margin-top:.5rem;}
.how p{font-size:.9rem;line-height:1.6;color:var(--tinta-suave);margin-top:.4rem;}
@media(max-width:980px){.hows{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.hows{grid-template-columns:1fr;}}

/* muro en dos columnas para landings */
.wall--duo{columns:2;max-width:52rem;margin:0 auto;}
@media(max-width:640px){.wall--duo{columns:1;}}

/* formulario de lista de espera (tarjeta blanca sobre banda lila) */
.wform{background:var(--blanco);border-radius:1rem;padding:clamp(1.5rem,1.2rem + 1.5vw,2.2rem);
  display:grid;gap:.9rem;box-shadow:0 14px 40px rgba(26,26,26,.12);}
.wform .btn{justify-content:center;}

/* FAQ desplegable */
.faqs{display:grid;gap:.8rem;}
.faq{background:var(--blanco);border:1px solid rgba(26,26,26,.09);border-radius:.8rem;}
.faq summary{padding:1.15rem 1.4rem;cursor:pointer;font-weight:600;list-style:none;
  display:flex;align-items:center;gap:1rem;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";margin-left:auto;font-size:1.3rem;font-weight:300;
  transition:transform .3s var(--ease);flex:none;}
.faq[open] summary::after{transform:rotate(45deg);}
.faq p{padding:0 1.4rem 1.3rem;color:var(--tinta-suave);font-size:.97rem;line-height:1.65;}

/* banda azul (landing Dios sin iglesia) */
.band--azul{background:var(--azul);color:var(--crema);}
.band--azul .eyebrow{color:rgba(240,236,224,.6);}
.band--azul .lead{color:rgba(240,236,224,.8);}

/* ═══ lenguaje editorial v2 — ensayo Cobalt→PP (landings de producto) ═══
   Tipografía mixta (grot bold + Fraunces itálica), highlight-pastilla,
   statements gigantes, índice enorme del journey y fotos colageadas. */
.vx{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:530;letter-spacing:-.005em;}
.hl2{background:var(--lila);color:var(--negro);border-radius:.4em;padding:.03em .2em;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;}
.band--verde .hl2{background:var(--rosa);}
/* statement: la sección ES una frase gigante */
.stmt{font-family:var(--grot);font-weight:700;letter-spacing:-.038em;line-height:1.18;
  font-size:clamp(1.7rem,.95rem + 3.2vw,3.5rem);max-width:26ch;margin:0 auto;
  text-align:center;text-wrap:balance;}
/* sección dolor centrada con titular gigante + fotos sueltas */
.pland-dolor .sec__head{max-width:46rem;text-align:center;margin-left:auto;margin-right:auto;position:relative;z-index:2;}
.pland-dolor h2{font-size:clamp(2rem,1.1rem + 3.6vw,4.2rem);}
.pland-dolor .pains{margin:0 auto;}
.scatter{position:relative;}
.scatter img{position:absolute;border-radius:1rem;object-fit:cover;display:none;
  box-shadow:0 16px 44px rgba(26,26,26,.16);}
@media(min-width:1040px){
  .scatter img{display:block;}
  .scatter .sc1{width:170px;height:210px;left:1.5%;top:-1.5rem;transform:rotate(-4deg);}
  .scatter .sc2{width:150px;height:185px;right:2%;top:-2.2rem;transform:rotate(3deg);}
}
/* journey como índice gigante */
.jmove summary h3{font-size:clamp(1.5rem,1.05rem + 2vw,2.6rem);}
.jmove__arc{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:500;font-size:1.12rem;}
/* citas del muro con acento itálico */
.tcard__q .vx{font-weight:560;}

/* ═══ hero de sales page: imagen full-bleed + scrollytelling (ref. Lunera) ═══ */
.sherowrap{position:relative;}
.motion .sherowrap .shero{position:sticky;top:0;}
.shero{min-height:100svh;display:grid;align-items:center;justify-items:center;text-align:center;
  position:relative;overflow:hidden;color:var(--crema);
  background:#0b0e14 center 42%/cover no-repeat;
  padding:clamp(6rem,12vh,9rem) var(--margin) clamp(3.5rem,8vh,5rem);}
.shero::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(7,9,14,.6) 0%,rgba(7,9,14,.22) 30%,rgba(7,9,14,.08) 48%,rgba(7,9,14,.5) 100%);}
.shero>*{position:relative;z-index:2;}
.shero .eyebrow{color:rgba(240,236,224,.75);}
.shero__q{font-family:var(--grot);font-weight:500;letter-spacing:-.02em;
  font-size:clamp(1.15rem,1rem + 1.1vw,1.7rem);color:rgba(240,236,224,.95);
  margin-top:1.5rem;text-shadow:0 1px 16px rgba(0,0,0,.55);}
.shero h1{font-size:clamp(2.5rem,1.3rem + 5vw,5.4rem);line-height:1.03;letter-spacing:-.045em;
  color:var(--crema);margin:.9rem 0 0;text-shadow:0 2px 28px rgba(0,0,0,.55);}
.shero__sub{font-family:var(--grot);font-weight:500;letter-spacing:-.02em;
  font-size:clamp(1.05rem,.95rem + .8vw,1.45rem);color:rgba(240,236,224,.92);
  margin:1.4rem auto 0;max-width:34rem;text-shadow:0 1px 14px rgba(0,0,0,.55);}
.shero .scrubline{margin-left:auto;margin-right:auto;background:rgba(240,236,224,.22);}
.shero .scrubline__fill{background:var(--crema);}

/* ═══ Dios sin Iglesia v2 — landing + banda de la home (oct 2026) ═══
   Mismo sistema: paleta board, Space Grotesk + Fraunces itálica, glifos.
   Solo se suman piezas para contar el recorrido; nada de lo anterior cambia. */
[hidden]{display:none!important;} /* que ningún display:grid/flex reviva un bloque oculto */

/* hero de sales page: texto secundario bajo el CTA */
.shero__micro{margin:1.1rem auto 0;max-width:30rem;font-size:.92rem;line-height:1.55;
  color:rgba(240,236,224,.85);text-shadow:0 1px 12px rgba(0,0,0,.6);}
/* si el hero no cabe en la pantalla (móviles bajos) no se fija: el CTA siempre a la vista */
.motion .sherowrap .shero.is-static{position:relative;}
.shero.is-static .scrubline{display:none;}

/* nota honesta (objetivos, estados pendientes) */
.note{font-size:.88rem;line-height:1.6;color:var(--tinta-suave);margin-top:1.4rem;max-width:46rem;}
.band--azul .note,.band--negro .note,.band--verde .note{color:rgba(240,236,224,.7);}

/* qué es: la idea en dos párrafos, centrada bajo el statement */
.manif{max-width:40rem;margin:clamp(1.8rem,1.4rem + 1.6vw,2.6rem) auto 0;text-align:center;}
.manif p{max-width:none;font-size:clamp(1.05rem,.98rem + .45vw,1.3rem);line-height:1.6;color:rgba(240,236,224,.88);}
.manif p + p{margin-top:1rem;}

/* ¿te suena?: lista editorial, sin tarjetas */
.lines{list-style:none;max-width:52rem;border-bottom:1px solid rgba(26,26,26,.14);}
.lines li{border-top:1px solid rgba(26,26,26,.14);padding:clamp(1.05rem,.9rem + .6vw,1.5rem) 0;
  font-family:var(--grot);font-weight:500;letter-spacing:-.025em;line-height:1.3;font-size:clamp(1.2rem,1rem + 1vw,1.9rem);}

/* encuentros: número · título + verbo · desplegable con 3 respuestas rápidas */
.jmoves--dsi{max-width:none;}
.jmoves--dsi .jmove summary{display:grid;grid-template-columns:4.4rem 1fr auto;
  grid-template-areas:"d n p" "d t p" "d v p";column-gap:1.3rem;row-gap:.15rem;align-items:center;}
.jmoves--dsi .jmove summary .mono{grid-area:n;}
.jmoves--dsi .jmove summary h3{grid-area:t;}
.jmoves--dsi .jmove__plus{grid-area:p;margin-left:0;}
/* la fecha de cada encuentro, como hoja de calendario */
.jdate{grid-area:d;align-self:center;display:flex;flex-direction:column;align-items:center;text-align:center;
  background:var(--crema);color:var(--negro);border-radius:.6rem;overflow:hidden;line-height:1;padding-bottom:.5rem;}
.jdate [data-k=mes]{display:block;width:100%;padding:.32rem 0;font-family:var(--display);font-size:.5rem;
  letter-spacing:.18em;text-transform:uppercase;}
.jdate--lila [data-k=mes]{background:var(--lila);}
.jdate--rosa [data-k=mes]{background:var(--rosa);}
.jdate--verde [data-k=mes]{background:var(--verde);color:var(--crema);}
.jdate--negro [data-k=mes]{background:var(--negro);color:var(--crema);}
.jdate b{font-family:var(--grot);font-weight:700;letter-spacing:-.04em;font-size:1.85rem;margin-top:.4rem;}
.jdate [data-k=semcorta]{font-family:"Fraunces",Georgia,serif;font-style:italic;font-size:.82rem;color:var(--tinta-suave);margin-top:.2rem;}
.jmove__verb{grid-area:v;font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:500;
  font-size:clamp(1rem,.95rem + .35vw,1.2rem);color:rgba(240,236,224,.8);}
.jmoves--dsi .jmove__body{padding:.4rem 1.5rem 1.7rem calc(1.5rem + 4.4rem + 1.3rem);}
.jmove__txt{font-size:1rem;line-height:1.6;color:rgba(240,236,224,.86);max-width:42rem;}
.jmove__take{margin-top:1.1rem;padding-top:.9rem;border-top:1px solid rgba(240,236,224,.22);max-width:42rem;
  font-family:var(--grot);font-weight:500;letter-spacing:-.015em;font-size:1.05rem;line-height:1.4;color:var(--crema);}
.jmove__take b{font-family:var(--mono);font-weight:400;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--rosa);margin-right:.55rem;}
.jmoves--dsi .jmove summary:focus-visible{outline-offset:-3px;border-radius:.8rem;}
@media(max-width:700px){
  .jmoves--dsi .jmove summary{grid-template-columns:3.6rem 1fr auto;column-gap:1rem;padding:1.1rem 1.1rem;}
  .jdate b{font-size:1.5rem;}
  .jmoves--dsi .jmove__body{padding:0 1.2rem 1.4rem;}
}
.rec__cta{margin-top:clamp(2rem,1.6rem + 1.5vw,2.8rem);display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.6rem;}

/* cómo funciona: datos confirmados (solo aparecen si están en la config) */
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.8rem;margin-top:1rem;}
.facts:not(:has(> div:not([hidden]))){display:none;}
.facts > div{background:var(--blanco);border-radius:.8rem;padding:1rem 1.2rem;border:1px solid rgba(26,26,26,.08);}
.facts dt{font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--tinta-suave);}
.facts dd{font-weight:600;margin-top:.3rem;line-height:1.4;}

/* inscripción abierta (estado B) */
.price{font-family:var(--grot);font-weight:700;letter-spacing:-.03em;font-size:clamp(1.6rem,1.2rem + 1.6vw,2.4rem);line-height:1.1;}
.band--lila .micro{font-size:.82rem;color:rgba(26,26,26,.7);}
.form-state a{text-decoration:underline;}

/* home: Dios sin Iglesia en el lugar prioritario */
.dsi{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,1.4rem + 3vw,4.5rem);align-items:center;}
.dsi__sub{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:500;letter-spacing:-.01em;
  font-size:clamp(1.25rem,1rem + 1.1vw,1.85rem);line-height:1.25;color:var(--crema);margin-top:.5rem;}
.dsi__steps{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:1.6rem;max-width:34rem;}
.dsi__steps li{border:1px solid rgba(240,236,224,.3);border-radius:.6rem;padding:.75rem .9rem;
  font-family:var(--grot);font-weight:500;letter-spacing:-.015em;font-size:.95rem;line-height:1.3;color:var(--crema);}
.dsi__steps .mono{display:block;color:var(--rosa);margin-bottom:.25rem;}
.dsi__cta{display:flex;flex-wrap:wrap;gap:.9rem 1.4rem;align-items:center;margin-top:2rem;}
.dsi__cta .tlink{color:var(--crema);}
.dsi__img{border-radius:.8rem;overflow:hidden;aspect-ratio:4/5;max-width:28rem;margin-left:auto;
  box-shadow:0 22px 60px rgba(10,20,60,.35);}
.dsi__img img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;}
@media(max-width:860px){.dsi{grid-template-columns:1fr;}.dsi__img{aspect-ratio:16/10;max-width:none;margin:0;}}
/* otras propuestas, sin protagonismo ni fechas */
.otros{margin-top:clamp(3rem,2.2rem + 3vw,5rem);padding-top:clamp(1.6rem,1.2rem + 1.5vw,2.4rem);
  border-top:1px solid rgba(240,236,224,.25);display:grid;grid-template-columns:repeat(2,1fr);gap:.9rem 1.4rem;}
.otros > .mono,.otros__note{grid-column:1/-1;color:rgba(240,236,224,.7);}
.otros__note{font-size:.85rem;}
.otro{display:flex;flex-direction:column;gap:.3rem;padding:1rem 1.15rem;border-radius:.7rem;
  border:1px solid rgba(240,236,224,.25);color:var(--crema);transition:background .25s;}
.otro:hover{background:rgba(240,236,224,.08);}
.otro b{font-family:var(--grot);letter-spacing:-.02em;font-size:1.05rem;}
.otro span{font-size:.9rem;line-height:1.5;color:rgba(240,236,224,.75);}
@media(max-width:640px){.otros{grid-template-columns:1fr;}}
.tiles--3{grid-template-columns:repeat(3,1fr);}
@media(max-width:760px){.tiles--3{grid-template-columns:1fr;}}
.vsl__cap{right:1.3rem;text-align:left;}

/* hero de sales page con José a un lado (Dios sin Iglesia): texto a la izquierda,
   él a la derecha con su libro; en móvil el texto baja y su cara queda arriba */
.shero--side{justify-items:start;text-align:left;background-color:#0b141c;background-position:78% 30%;
  padding-left:max(var(--margin),calc((100% - var(--maxw))/2 + var(--margin)));}
.shero--side::before{background:linear-gradient(90deg,rgba(7,10,14,.78) 0%,rgba(7,10,14,.5) 36%,rgba(7,10,14,0) 62%);}
.shero--side > .rv{max-width:36rem;}
.shero--side .shero__sub,.shero--side .shero__micro{margin-left:0;margin-right:0;}
.shero--side .scrubline{margin-left:0;}
.dsi__img img[src*="dios-hero-jose"]{object-position:100% 30%;}
/* pantallas verticales (móvil y tablet): la foto arriba con la cara despejada, el texto abajo */
@media(max-aspect-ratio:1/1){
  .shero--side{align-items:end;background-size:auto 66%;background-position:83% 74px;
    padding-bottom:clamp(2.6rem,7vh,4rem);}
  .shero--side::before{background:linear-gradient(180deg,rgba(7,10,14,.05) 0%,rgba(7,10,14,.05) 38%,
    rgba(7,10,14,.8) 58%,#0b141c 74%,#0b141c 100%);}
}
@media(max-aspect-ratio:1/1) and (max-height:700px){
  .shero--side{background-size:auto 40%;background-position:83% 62px;}
  .shero--side::before{background:linear-gradient(180deg,rgba(7,10,14,.05) 0%,rgba(7,10,14,.05) 27%,
    rgba(7,10,14,.8) 40%,#0b141c 50%,#0b141c 100%);}
  .shero--side .eyebrow,.shero--side .scrubline{display:none;}
  .shero--side .shero__q{margin-top:0;}
}

/* fechas en el hero y en la banda de la home */
.shero__when{font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;
  color:rgba(240,236,224,.85);margin-top:1.1rem;text-shadow:0 1px 10px rgba(0,0,0,.6);}
.dsi__when{font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(240,236,224,.92);margin-top:.9rem;}

.cal__cta{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1rem;margin-top:clamp(1.4rem,1.1rem + 1vw,2rem);}
.cal__hora{flex-basis:100%;font-size:.9rem;color:rgba(240,236,224,.75);}
.rec__meta{font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(240,236,224,.8);}
.sec__head p.rec__meta{margin-top:.9rem;}
