/* ===================================================================
   AYNIMAL — Dra. Carmen Vílchez · Nutrición veterinaria
   DESIGN SYSTEM + LANDING · v2
   Newsreader (display) + Hanken Grotesk (texto) · Paleta oficial
   =================================================================== */

/* ============================ TOKENS ============================ */
:root{
  --petrol:#2c5f7f;
  --petrol-deep:#234d68;
  --petrol-ink:#152a38;
  --slate:#5b7a8f;
  --sky:#a8c5d8;
  --sage:#b8d4c8;
  --peach:#ff9f83;
  --peach-2:#ffb8a3;
  --peach-soft:#ffe6dc;

  --cream:#f5f1ed;
  --cream-2:#efe9e2;
  --cream-photo:#dccbc0;
  --white:#fcfaf7;
  --ink:#1f3240;
  --ink-soft:#45575f;
  --muted:#71828b;
  --line:rgba(44,95,127,.13);

  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Hanken Grotesk",system-ui,-apple-system,sans-serif;
  --fs-display:clamp(2.5rem,4.5vw,4rem);
  --fs-h2:clamp(2rem,3.7vw,3.15rem);
  --fs-h3:clamp(1.3rem,1.9vw,1.65rem);
  --fs-lead:clamp(1.1rem,1.5vw,1.32rem);
  --fs-body:1.0625rem;
  --fs-small:.9rem;
  --fs-kicker:.8rem;

  --container:1180px;
  --gutter:clamp(1.2rem,4vw,2.6rem);
  --section-y:clamp(4.5rem,9.5vw,8rem);

  --r-sm:12px;--r:20px;--r-lg:30px;--r-pill:999px;
  --shadow-sm:0 2px 12px -6px rgba(31,50,64,.22);
  --shadow:0 24px 50px -30px rgba(31,50,64,.42);
  --shadow-lg:0 40px 80px -36px rgba(44,95,127,.5);

  --ease:cubic-bezier(.2,.7,.2,1);

  --surface-page:var(--cream);
  --surface-raised:var(--white);
  --surface-tint:var(--cream-2);
  --surface-photo:var(--cream-photo);
  --action-primary:var(--petrol);
  --action-primary-hover:var(--petrol-deep);
  --accent-warm:var(--peach);
  --content-max:1180px;
  --reading-max:44rem;
  --rule:1px solid var(--line);
}

/* ============================ BASE ============================ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
section[id]{scroll-margin-top:7rem}
body{
  margin:0;font-family:var(--sans);font-size:var(--fs-body);line-height:1.6;
  color:var(--ink);background:var(--cream);
  overflow-x:clip;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img,picture,svg{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{margin:0;font-family:var(--serif);font-weight:500;line-height:1.1;letter-spacing:-.008em;text-wrap:balance}
p{margin:0;text-wrap:pretty}
::selection{background:var(--peach);color:#fff}
:focus-visible{outline:2.5px solid var(--petrol);outline-offset:3px;border-radius:4px}

/* ============================ UTILIDADES ============================ */
.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:var(--section-y)}
.section--tint{background:var(--cream-2)}
.section--sky{background:linear-gradient(180deg,#eef4f7,#e6eef3)}
.section--dark{position:relative;background:var(--petrol-ink);color:#dbe4e9;overflow:hidden}
.section--dark::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 15% 0%,rgba(90,140,170,.22),transparent 55%);pointer-events:none}
.section--dark>*{position:relative}
.section--dark h2,.section--dark h3{color:#fff}

.section-head{max-width:46rem;margin-bottom:clamp(2.4rem,4.5vw,3.6rem)}
.section-head--center{margin-inline:auto;text-align:center}

.eyebrow{
  display:inline-flex;align-items:center;gap:.6em;margin:0 0 1.1rem;
  font-size:var(--fs-kicker);font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--petrol);
}
.eyebrow::before{content:"";width:1.6rem;height:2px;background:var(--peach);border-radius:2px}
.section-head--center .eyebrow{justify-content:center}
.section--dark .eyebrow{color:var(--peach-2)}

.section-title{font-size:var(--fs-h2);color:var(--ink);letter-spacing:-.02em}
.section-intro{margin-top:1.15rem;font-size:var(--fs-lead);line-height:1.5;color:var(--ink-soft);max-width:44ch}
.section-head--center .section-intro{margin-inline:auto}
.section--dark .section-intro{color:#c2d0d8}

/* palabra resaltada */
.mark{
  background:linear-gradient(transparent 64%,rgba(255,159,131,.40) 64%,rgba(255,159,131,.40) 92%,transparent 92%);
  padding:0 .02em;
}
.italic{font-style:italic}

/* iconos */
.ico{width:1.5em;height:1.5em;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;display:block}

/* ============================ BOTONES ============================ */
.btn{
  --pad-y:.98em;--pad-x:1.6em;
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-family:var(--sans);font-weight:600;font-size:1rem;line-height:1;white-space:nowrap;
  padding:var(--pad-y) var(--pad-x);border-radius:var(--r-pill);cursor:pointer;border:1.5px solid transparent;
  transition:transform .25s var(--ease),background .25s var(--ease),box-shadow .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease);
}
.btn--primary{background:var(--petrol);color:var(--white);box-shadow:0 1px 2px rgba(31,50,64,.2)}
.btn--primary:hover{background:var(--petrol-deep);transform:translateY(-2px);box-shadow:0 16px 30px -14px rgba(44,95,127,.75)}
.btn--peach{background:var(--peach);color:#5a2416}
.btn--peach:hover{background:var(--peach-2);transform:translateY(-2px);box-shadow:0 16px 30px -14px rgba(255,120,90,.6)}
.btn--ghost{background:transparent;border-color:rgba(44,95,127,.4);color:var(--petrol)}
.btn--ghost:hover{background:rgba(44,95,127,.08);border-color:var(--petrol)}
.btn--text{min-height:44px;background:none;border:none;color:var(--petrol);font-weight:600;padding:.6em .2em}
.btn--text .ico{width:1.1em;height:1.1em;transition:transform .3s var(--ease)}
.btn--text:hover .ico{transform:translateX(4px)}
.btn--text__name{font-family:var(--serif);font-weight:600;font-style:italic}
.btn--lg{--pad-y:1.12em;--pad-x:2.1em;font-size:1.06rem}
.reassure{margin-top:.9rem;font-size:.82rem;color:var(--muted);display:inline-flex;align-items:center;gap:.45em}
.reassure .ico{width:1em;height:1em;stroke:var(--sage);stroke-width:2}

/* ============================ HEADER ============================ */
.site-header{
  position:fixed;inset:0 0 auto 0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:clamp(.85rem,1.8vw,1.3rem) var(--gutter);
  transition:background .3s var(--ease),box-shadow .3s var(--ease)}
.site-header.is-scrolled{background:rgba(250,246,241,.96);box-shadow:0 1px 0 var(--line),0 10px 30px -22px rgba(31,50,64,.4)}
.brand{display:flex;min-height:44px;flex-direction:column;justify-content:center;line-height:1}
.brand__mark{font-family:var(--serif);font-weight:600;font-size:clamp(1.5rem,2.3vw,1.9rem);color:var(--petrol);letter-spacing:-.01em}
.brand__by{font-size:.72rem;color:var(--slate);margin-top:.28rem;letter-spacing:.01em}
.site-nav{display:flex;align-items:center;gap:clamp(1rem,2.2vw,2rem)}
.site-nav a:not(.btn){display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;font-weight:500;font-size:.95rem;color:var(--ink);position:relative;padding:.2rem .35rem}
.site-nav a:not(.btn)::after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--peach);transition:right .3s var(--ease)}
.site-nav a:not(.btn):hover::after{right:0}

/* ============================ HERO ============================ */
.hero{position:relative;display:grid;min-height:min(94vh,900px);background:var(--cream-photo);overflow:hidden}
.hero>*{grid-area:1/1}
.hero__media{align-self:stretch;justify-self:stretch}
/* translateX corre a Carmen a la derecha para que el gato entre entero; revela crema (misma que el fondo) por la izquierda */
.hero__media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 58%;transform:translateX(14%)}
.hero__scrim{z-index:1;background:linear-gradient(100deg,var(--cream-photo) 0%,rgba(220,203,192,.92) 30%,rgba(220,203,192,.5) 48%,rgba(220,203,192,0) 64%)}
.hero__content{position:relative;z-index:2;align-self:center;justify-self:start;width:min(650px,100%);padding:clamp(6rem,10vh,7.5rem) var(--gutter) 2rem clamp(1.5rem,5vw,4.5rem)}
.hero__title{max-width:16ch;font-size:clamp(2.6rem,4vw,3.7rem);margin:0 0 1.4rem;color:var(--ink);letter-spacing:-.026em;line-height:1.02}
.hero__sub{margin:0 0 1.8rem;max-width:40ch;font-size:var(--fs-lead);line-height:1.5;color:var(--ink-soft)}
.cta-row{display:flex;align-items:center;gap:clamp(.8rem,2vw,1.5rem);flex-wrap:wrap}
.trust{margin:1.35rem 0 0;max-width:68ch;font-size:.78rem;line-height:1.45;color:var(--slate)}
.trust .pending{color:var(--muted);font-weight:500;padding:0 .12em}
.pill{display:inline-flex;align-items:center;gap:.5em;padding:.58em 1.05em;border-radius:var(--r-pill);background:rgba(252,250,247,.92);border:1px solid rgba(255,255,255,.7);box-shadow:var(--shadow-sm);font-size:.86rem;font-weight:600;color:var(--petrol)}
.pill .ico{width:1.05em;height:1.05em;stroke:var(--peach);stroke-width:2}
.pill:nth-child(2) .ico{stroke:var(--sage)}
.pill:nth-child(3) .ico{stroke:var(--slate)}

/* ============================ STATS ============================ */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,3vw,2.5rem);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:clamp(2rem,4vw,2.8rem)}
.stat__num{font-family:var(--serif);font-size:clamp(1.7rem,2.7vw,2.4rem);font-weight:600;color:var(--petrol);line-height:1;letter-spacing:-.01em}
.stat__label{margin-top:.55rem;font-size:.92rem;color:var(--ink-soft);line-height:1.4}

/* ============================ DOS RUTAS ============================ */
.journeys{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1rem,2vw,1.5rem)}
.journey{position:relative;padding:clamp(1.8rem,3vw,2.7rem);border-top:2px solid var(--petrol);background:var(--white)}
.journey:nth-child(2){border-top-color:var(--peach)}
.journey__number{font-family:var(--serif);font-style:italic;color:var(--slate)}
.journey h3{max-width:18ch;margin:.55rem 0 .8rem;font-size:var(--fs-h3)}
.journey p{max-width:48ch;color:var(--ink-soft)}
.journey .btn{margin-top:1.1rem}

/* ============================ PROBLEMA ============================ */
.pains{display:grid;grid-template-columns:repeat(2,1fr);gap:0 2.4rem}
.pain{display:flex;gap:1rem;align-items:flex-start;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:1.2rem .2rem;box-shadow:none}
.pain__ic{flex:0 0 auto;width:2.7rem;height:2.7rem;border-radius:50%;display:grid;place-items:center;background:var(--peach-soft);color:#c65a3c}
.pain__ic .ico{width:1.35rem;height:1.35rem}
.pain p{font-size:1rem;line-height:1.5}
.pain p b{color:var(--ink);font-weight:600}
.pain-note{margin-top:2rem;font-family:var(--serif);font-size:clamp(1.35rem,2.2vw,1.85rem);font-style:italic;font-weight:500;color:var(--petrol);max-width:30ch;line-height:1.3}

/* ============================ MÉTODO / 3 BASES ============================ */
.name-story{max-width:42rem;margin-top:1.5rem;font-size:var(--fs-lead);line-height:1.55;color:#cfdae1}
.bases{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:repeat(2,1fr);gap:clamp(1rem,2vw,1.6rem);margin-top:clamp(2.6rem,4vw,3.6rem)}
.base{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:var(--r);padding:clamp(1.7rem,2.5vw,2.3rem)}
.base:first-child{grid-row:1/3;display:flex;min-height:24rem;flex-direction:column;justify-content:center;background:linear-gradient(150deg,rgba(255,159,131,.16),rgba(255,255,255,.045))}
.base__ic{width:2.6rem;height:2.6rem;border-radius:12px;background:rgba(255,159,131,.16);display:grid;place-items:center;color:var(--peach-2);margin-bottom:1.1rem}
.base__ic .ico{width:1.4rem;height:1.4rem}
.base h3{margin:.35rem 0 .6rem;color:#fff;font-size:var(--fs-h3)}
.base p{color:#bcc8d4;color:#bcccd4;line-height:1.55;font-size:1rem}

/* ============================ CÓMO FUNCIONA ============================ */
.steps{display:grid;grid-template-columns:repeat(2,1fr);gap:0 clamp(2rem,5vw,5rem)}
.steps::before{display:none}
.step{position:relative;padding:1.7rem 0 2rem;border-top:1px solid var(--line)}
.step h3{font-size:var(--fs-h3);margin-bottom:.55rem}
.step p{color:var(--ink-soft);font-size:.98rem;line-height:1.55}
.step__meta{display:inline-flex;align-items:center;gap:.4em;margin-top:.8rem;font-size:.8rem;font-weight:600;color:var(--petrol);background:#fff;border:1px solid var(--line);padding:.34em .75em;border-radius:var(--r-pill)}
.step__meta .ico{width:.95em;height:.95em;stroke:var(--peach)}

/* ============================ PARA QUIÉN ============================ */
.species{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,1.8rem)}
.spec{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:0 0 clamp(1.5rem,2.2vw,2rem);overflow:hidden;box-shadow:none;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.spec:first-child{grid-row:1/3}
.spec:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.spec__media{margin:0 0 1.4rem;aspect-ratio:16/8;overflow:hidden;background:var(--cream-photo)}
.spec:first-child .spec__media{aspect-ratio:4/3}
.spec__media img{width:100%;height:100%;object-fit:cover}
.spec:first-child .spec__media img{object-position:center 36%}
.spec:nth-child(2) .spec__media img{object-position:center 46%}
.spec:nth-child(3) .spec__media img{object-position:center 42%}
.spec__top{display:flex;align-items:center;justify-content:space-between;margin:0 clamp(1.5rem,2.2vw,2rem) 1.1rem}
.spec__ic{width:3.2rem;height:3.2rem;border-radius:16px;background:var(--cream);display:grid;place-items:center;color:var(--petrol)}
.spec__ic .ico{width:1.8rem;height:1.8rem;stroke-width:1.5}
.spec__tag{font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--petrol);background:var(--cream);padding:.45em .85em;border-radius:var(--r-pill)}
.spec h3{font-size:var(--fs-h3);margin:0 clamp(1.5rem,2.2vw,2rem) .6rem}
.spec p{margin-inline:clamp(1.5rem,2.2vw,2rem);color:var(--ink-soft);line-height:1.55;font-size:1rem}
.spec--star{border-color:rgba(255,159,131,.6);box-shadow:0 24px 50px -30px rgba(255,120,90,.55)}
.spec--star .spec__ic{background:var(--peach-soft);color:#c65a3c}
.spec--star .spec__tag{background:var(--peach-soft);color:#c65a3c}

.credibility-grid{display:block}
.credibility-grid .spec{display:grid;grid-template-columns:3.5rem minmax(10rem,14rem) 1fr;gap:clamp(1rem,3vw,2.5rem);align-items:start;padding:1.6rem 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;overflow:visible}
.credibility-grid .spec:last-child{border-bottom:1px solid var(--line)}
.credibility-grid .spec:hover{transform:none;box-shadow:none}
.credibility-grid .spec__top{margin:0}
.credibility-grid .spec h3,.credibility-grid .spec p{margin:0}

/* ============================ VÍDEO ============================ */
#video .container{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(2rem,5vw,5rem);align-items:center}
#video .section-head{margin:0}
.video{grid-column:2;grid-row:1/3;width:100%;max-width:940px;margin-inline:auto}
.video__link{grid-column:1;margin-top:1.2rem}
.video-embed{position:relative;aspect-ratio:16/9;border-radius:var(--r-lg);overflow:hidden;background:linear-gradient(135deg,var(--petrol),var(--petrol-ink));box-shadow:var(--shadow-lg);display:grid;place-items:center;cursor:pointer}
.video-embed::after{content:"Vídeo pendiente · Reel «Esto es AYNIMAL»";position:absolute;bottom:1rem;left:1rem;font-size:.8rem;color:rgba(255,255,255,.72);background:rgba(0,0,0,.28);padding:.34em .8em;border-radius:var(--r-pill)}
.play{position:relative;width:5.2rem;height:5.2rem;border-radius:50%;background:var(--peach);display:grid;place-items:center}
.play::before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--peach);opacity:.4;z-index:-1;animation:pulse 2.8s var(--ease) infinite}
.play svg{margin-left:4px}
@keyframes pulse{0%{transform:scale(1);opacity:.4}70%{transform:scale(1.9);opacity:0}100%{transform:scale(1.9);opacity:0}}
@media (prefers-reduced-motion:reduce){.play::before{animation:none}}

/* ============================ QUIÉN SOY ============================ */
.about{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(1.8rem,4vw,4rem);align-items:center}
.about__photo{position:relative;border-radius:var(--r-lg);overflow:hidden;background:var(--cream-photo);aspect-ratio:4/5;box-shadow:var(--shadow)}
.about__photo img{width:100%;height:100%;object-fit:cover}
.creds{list-style:none;padding:0;margin:1.7rem 0 0;display:grid;gap:.85rem}
.creds li{display:flex;gap:.75rem;align-items:center;font-size:1rem;color:var(--ink)}
.creds__ic{flex:0 0 auto;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--sage);display:grid;place-items:center;color:#1f4a3c}
.creds__ic .ico{width:.95rem;height:.95rem;stroke-width:2.4}

/* ============================ TESTIMONIOS ============================ */
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.6rem)}
.tcard{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:clamp(1.6rem,2.4vw,2.1rem);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1.15rem}
.tcard__stars{display:flex;gap:.15rem;color:var(--peach)}
.tcard__stars .ico{width:1.05rem;height:1.05rem;fill:var(--peach);stroke:none}
.tcard__quote{font-family:var(--serif);font-size:1.12rem;line-height:1.5;color:var(--ink)}
.tcard__who{display:flex;align-items:center;gap:.8rem;margin-top:auto}
.tcard__av{width:2.8rem;height:2.8rem;border-radius:50%;background:linear-gradient(135deg,var(--sky),var(--sage));flex:0 0 auto}
.tcard__name{font-weight:600;font-size:.95rem}
.tcard__meta{font-size:.82rem;color:var(--muted)}
.ph-note{margin-top:1.7rem;text-align:center;font-size:.85rem;color:var(--muted);display:flex;justify-content:center;gap:.5em;align-items:center}
.ph-note .ico{width:1em;height:1em;stroke:var(--peach)}

/* ============================ PRECIO ============================ */
.price-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1rem,2vw,1.6rem);align-items:stretch}
.price-card{position:relative;display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.8rem,2.6vw,2.4rem);box-shadow:var(--shadow-sm)}
.price-card:not(.price-card--feat){background:rgba(252,250,247,.72);box-shadow:none}
.price-card--feat{grid-column:1/-1;display:grid;grid-template-columns:.72fr 1.28fr;gap:.5rem clamp(2.5rem,6vw,6rem);align-items:start;border:1.5px solid var(--petrol);box-shadow:var(--shadow)}
.price-card--feat h3,.price-card--feat .price-card__price,.price-card--feat .price-card__desc,.price-card--feat .btn{grid-column:1}
.price-card--feat .plist{grid-column:2;grid-row:1/6;margin:0}
.price-card--feat .btn{align-self:end}
.price-badge{position:absolute;top:-.85rem;left:50%;transform:translateX(-50%);background:var(--petrol);color:var(--white);font-size:.74rem;font-weight:600;letter-spacing:.04em;padding:.42em 1.05em;border-radius:var(--r-pill);white-space:nowrap}
.price-card h3{font-size:1.32rem}
.price-card__price{font-family:var(--serif);font-size:2.7rem;font-weight:600;color:var(--petrol);margin:.55rem 0 .2rem;letter-spacing:-.01em}
.price-card__price small{font-size:1rem;color:var(--muted);font-family:var(--sans);font-weight:500}
.price-card__desc{color:var(--ink-soft);font-size:.95rem;margin-bottom:1.3rem}
.plist{list-style:none;padding:0;margin:0 0 1.7rem;display:grid;gap:.7rem}
.plist li{display:flex;gap:.6rem;align-items:flex-start;font-size:.95rem;color:var(--ink);line-height:1.4}
.plist .ico{flex:0 0 auto;width:1.2em;height:1.2em;stroke:var(--petrol);stroke-width:2.2;margin-top:.12em}
.price-card .btn{margin-top:auto}
.value-anchor{margin-top:2rem;display:flex;gap:.9rem;align-items:center;justify-content:center;text-align:center;flex-wrap:wrap;background:var(--peach-soft);border-radius:var(--r);padding:1.1rem 1.4rem;font-size:.95rem;color:var(--ink-soft);max-width:40rem;margin-inline:auto}
.value-anchor b{color:var(--ink)}
.launch-note{margin-top:1.3rem;text-align:center;font-size:.9rem;color:var(--muted)}

/* ============================ FAQ ============================ */
.faq{max-width:760px;margin-inline:auto}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;text-align:left;cursor:pointer;font-family:var(--sans);font-weight:600;font-size:1.08rem;color:var(--ink);padding:1.35rem 2.5rem 1.35rem 0;position:relative;list-style:none}
.faq-q::-webkit-details-marker{display:none}
.faq-q::after{content:"";position:absolute;right:.35rem;top:1.75rem;width:.85rem;height:.85rem;background:
  linear-gradient(var(--petrol),var(--petrol)) center/100% 2px no-repeat,
  linear-gradient(var(--petrol),var(--petrol)) center/2px 100% no-repeat;transition:transform .3s var(--ease)}
.faq-item[open] .faq-q::after{transform:rotate(90deg);opacity:.6}
.faq-a{padding:0 2.5rem 1.5rem 0;color:var(--ink-soft);line-height:1.65;font-size:1rem}
.disclaimer-box{margin-top:2.6rem;background:var(--cream-2);border:1px solid var(--line);border-left:3px solid var(--peach);border-radius:var(--r);padding:1.35rem 1.6rem;font-size:.92rem;line-height:1.65;color:var(--ink-soft)}
.disclaimer-box b{color:var(--ink)}

/* ============================ CTA FINAL ============================ */
.final-cta{text-align:center}
.final-cta h2{font-size:clamp(2.1rem,4.2vw,3.4rem);max-width:18ch;margin-inline:auto;color:#fff}
.final-cta p{margin:1.3rem auto 2.1rem;max-width:42ch;color:#c2d0d8;font-size:var(--fs-lead)}
.final-cta .reassure{color:#8ea4ae;margin-top:1.5rem;justify-content:center}
.final-cta .reassure .ico{stroke:var(--sage)}

/* ============================ FOOTER ============================ */
.site-footer{background:var(--petrol-ink);color:#aebcc4;padding-block:clamp(3.2rem,6vw,4.6rem) 2rem}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:2.5rem}
.footer-brand .brand__mark{color:#fff}
.footer-brand p{margin-top:1rem;max-width:32ch;font-size:.95rem;line-height:1.65}
.footer-col h4{font-family:var(--sans);font-weight:600;font-size:.82rem;letter-spacing:.11em;text-transform:uppercase;color:var(--peach-2);margin-bottom:1.05rem}
.footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:.65rem}
.footer-col a{display:inline-flex;min-height:44px;align-items:center;font-size:.95rem;color:#aebcc4;transition:color .2s}
.footer-col a:hover{color:#fff}
.footer-pending{display:block;font-size:.9rem;color:#849aa3}
.footer-bottom{margin-top:3rem;padding-top:1.7rem;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.82rem;color:#849aa3}
.footer-bottom a{display:inline-flex;min-height:44px;align-items:center;padding-inline:.12rem}
.footer-bottom a:hover{color:#fff}
.footer-legal-note{margin-top:1rem;font-size:.78rem;color:#728891;line-height:1.55;max-width:72ch}

/* ============================ REVEAL ============================ */
@media (prefers-reduced-motion:no-preference){
  [data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
  [data-reveal].in{opacity:1;transform:none}
  .hero__content>*{opacity:0;transform:translateY(14px);animation:rise .8s var(--ease) forwards}
  .hero__content>*:nth-child(1){animation-delay:.05s}
  .hero__content>*:nth-child(2){animation-delay:.15s}
  .hero__content>*:nth-child(3){animation-delay:.25s}
  .hero__content>*:nth-child(4){animation-delay:.35s}
  .hero__content>*:nth-child(5){animation-delay:.45s}
  @keyframes rise{to{opacity:1;transform:none}}
}

/* ============================ RESPONSIVE ============================ */
@media (max-width:960px){
  .about{grid-template-columns:1fr}
  .about__photo{max-width:420px}
  .stats{grid-template-columns:repeat(2,1fr);gap:1.7rem}
  .steps{grid-template-columns:repeat(2,1fr);row-gap:2.6rem}
  .steps::before{display:none}
  .bases,.species,.tgrid,.price-grid{grid-template-columns:1fr;gap:1.1rem}
  .bases{grid-template-rows:auto}
  .base:first-child,.spec:first-child{grid-row:auto;min-height:auto}
  .price-card--feat{grid-column:auto;display:flex;order:-1;transform:none}
  .price-card--feat .plist{margin:0 0 1.7rem}
  .footer-top{grid-template-columns:1fr 1fr}
}
@media (max-width:768px){
  .site-nav{display:none}
  .hero{display:flex;flex-direction:column;min-height:auto;padding-top:5rem}
  .hero__content{order:1;width:100%;min-width:0;padding:2.2rem var(--gutter) 2.5rem;background:var(--cream-photo)}
  .hero__media{order:2;width:100%;aspect-ratio:16/10}
  .hero__media img{width:100%;height:100%;object-fit:cover;object-position:center 60%;transform:none}
  .hero__scrim{display:none}
  .hero__title{font-size:clamp(2.55rem,12vw,3.25rem)}
  .hero__sub{max-width:38ch;font-size:1.08rem}
  .hero .eyebrow{display:flex;max-width:100%;flex-wrap:wrap;font-size:.72rem;line-height:1.45;white-space:normal}
  .hero .btn--primary{width:100%}
  .trust{color:var(--ink-soft)}
  .journeys{grid-template-columns:1fr}
  .pains{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr;row-gap:0}
  .species{grid-template-rows:auto}
  .credibility-grid .spec{grid-template-columns:3rem 1fr}
  .credibility-grid .spec p{grid-column:2}
  #video .container{display:block}
  #video .section-head{margin-bottom:2rem}
  .video{max-width:none}
  .video__link{margin-top:1rem}
}
@media (max-width:560px){
  .stats{grid-template-columns:1fr 1fr;gap:1.4rem}
  .footer-top{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column}
}
@media (max-width:400px){.hero__title{font-size:2.45rem}}

/* ============================ COMPARTIDOS (garantía · urgencia · CTA móvil) ============================ */
.guarantee{display:flex;gap:1.1rem;align-items:flex-start;background:linear-gradient(180deg,#e8f1ec,#dcebe2);border-radius:var(--r);padding:1.5rem 1.7rem;max-width:640px;margin:1.6rem auto 0}
.guarantee svg{flex:0 0 auto;width:2.2rem;height:2.2rem;stroke:#2c6a54;fill:none;stroke-width:1.6}
.guarantee p{font-size:1rem;line-height:1.55;color:#234a3c}
.guarantee b{color:#123528}
.urgency{display:inline-flex;align-items:center;gap:.5em;font-size:.9rem;font-weight:600;color:#c65a3c;background:var(--peach-soft);padding:.5em 1em;border-radius:var(--r-pill);margin-bottom:1.4rem}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mobile-cta{display:none}
@media (max-width:768px){
  .mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;justify-content:center;align-items:center;gap:.5em;background:var(--petrol);color:var(--white);font-family:var(--sans);font-weight:600;padding:1rem max(1rem,env(safe-area-inset-right)) calc(1rem + env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));box-shadow:0 -8px 24px -12px rgba(31,50,64,.5)}
  body{padding-bottom:calc(3.6rem + env(safe-area-inset-bottom))}
}

/* ============================ REDISEÑO COMERCIAL ============================ */
.commercial-hero{min-height:min(100svh,860px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--surface-photo)}
.commercial-hero__copy{align-self:center;padding:clamp(6rem,9vh,8rem) var(--gutter) clamp(2.75rem,6vh,4.5rem) max(var(--gutter),calc((100vw - 1600px)/2 + var(--gutter)))}
.commercial-hero__media{min-width:0;overflow:hidden}
.commercial-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center 52%}
.commercial-hero__title{font-size:clamp(3rem,4.6vw,4.35rem);line-height:.98;letter-spacing:-.035em;max-width:15.5ch}
.commercial-hero__lead{margin-top:1.25rem;max-width:39ch;font-size:var(--fs-lead);color:var(--ink-soft)}
.commercial-hero .cta-row{margin-top:1.5rem}
.commercial-hero .trust{margin-top:1.35rem;max-width:58ch}

.diagnosis-list{display:grid;grid-template-columns:repeat(2,1fr);border-top:var(--rule)}
.diagnosis-item{display:grid;grid-template-columns:2.5rem 1fr;gap:1rem;padding:1.5rem 1.2rem 1.7rem 0;border-bottom:var(--rule)}
.diagnosis-item:nth-child(odd){padding-right:clamp(1rem,4vw,3.5rem)}
.diagnosis-item:nth-child(even){padding-left:clamp(1rem,4vw,3.5rem);border-left:var(--rule)}
.diagnosis-item__n{font-family:var(--serif);font-style:italic;color:var(--peach);font-size:1.1rem}
.diagnosis-item h3{margin-bottom:.35rem;font-size:1.18rem}
.diagnosis-item p{color:var(--ink-soft);font-size:.96rem;line-height:1.55}

.entry-routes{display:grid;grid-template-columns:1.2fr .8fr;border-top:var(--rule);border-bottom:var(--rule)}
.entry-route{padding:clamp(2rem,4vw,3.5rem)}
.entry-route+.entry-route{border-left:var(--rule)}
.entry-route--primary{background:var(--surface-raised)}
.entry-route h3{font-size:clamp(1.6rem,2.6vw,2.25rem);max-width:18ch}
.entry-route p{margin:1rem 0 1.5rem;max-width:42ch;color:var(--ink-soft)}

.authority-editorial{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.authority-editorial__photo{aspect-ratio:4/5;overflow:hidden;border-radius:var(--r)}
.authority-editorial__photo img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.authority-editorial__proof{margin-top:2rem;display:grid;grid-template-columns:repeat(2,1fr);gap:0 2rem;border-top:var(--rule)}
.authority-editorial__proof div{padding:1.1rem 0;border-bottom:var(--rule)}
.authority-editorial__proof b{display:block;font-family:var(--serif);font-size:1.2rem;color:var(--petrol)}
.authority-editorial__proof span{font-size:.9rem;color:var(--ink-soft)}

.method-preview{display:grid;grid-template-columns:1.15fr .85fr;border-top:var(--rule);border-bottom:var(--rule)}
.method-preview__lead{padding:clamp(2rem,5vw,4.5rem) clamp(2rem,5vw,4.5rem) clamp(2rem,5vw,4.5rem) 0}
.method-preview__lead p{margin-top:1.2rem;max-width:42ch;color:var(--ink-soft)}
.method-preview__steps{border-left:var(--rule)}
.method-preview__step{padding:1.8rem clamp(1.5rem,4vw,3rem);border-bottom:var(--rule)}
.method-preview__step:last-child{border-bottom:0}
.method-preview__step span{display:block;margin-bottom:.35rem;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--petrol)}
.method-preview__step h3{font-size:1.35rem}
.method-preview__step p{margin-top:.45rem;color:var(--ink-soft);font-size:.95rem}

.species-editorial{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1rem,2vw,1.5rem)}
.species-editorial__feature,.species-editorial__item{position:relative;overflow:hidden;background:var(--surface-raised);border:var(--rule)}
.species-editorial__feature{min-height:36rem}
.species-editorial__stack{display:grid;gap:clamp(1rem,2vw,1.5rem)}
.species-editorial img{width:100%;height:100%;object-fit:cover}
.species-editorial__feature img{position:absolute;inset:0}
.species-editorial__overlay{position:absolute;inset:auto 0 0;padding:clamp(1.5rem,4vw,3rem);background:linear-gradient(transparent,rgba(21,42,56,.92));color:#fff}
.species-editorial__overlay h3{color:#fff;font-size:clamp(1.6rem,3vw,2.3rem)}
.species-editorial__overlay p{margin-top:.5rem;max-width:40ch;color:#d5e0e5}
.species-editorial__item{display:grid;grid-template-columns:.82fr 1.18fr;min-height:17rem}
.species-editorial__item div{padding:clamp(1.3rem,3vw,2.2rem)}
.species-editorial__item h3{font-size:1.45rem}
.species-editorial__item p{margin-top:.55rem;color:var(--ink-soft)}

.result-editorial{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,6vw,6rem)}
.result-editorial__list{border-top:var(--rule)}
.result-editorial__item{padding:1.25rem 0;border-bottom:var(--rule)}
.result-editorial__item b{display:block;font-family:var(--serif);font-size:1.2rem}
.result-editorial__item p{margin-top:.3rem;color:var(--ink-soft)}

.offer-bridge{padding:var(--section-y) max(var(--gutter),calc((100vw - var(--container))/2 + var(--gutter)));display:grid;grid-template-columns:1fr .8fr;gap:clamp(2rem,6vw,6rem);align-items:end;background:linear-gradient(180deg,#eef4f7,#e6eef3)}
.offer-bridge__terms{border-top:var(--rule)}
.payment-split{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.payment-split>div{padding:1.25rem;background:var(--surface-raised)}
.payment-split b{display:block;font-family:var(--serif);font-size:1.65rem;color:var(--petrol)}
.payment-split span{font-size:.82rem;color:var(--ink-soft)}

.commercial-faq{max-width:760px}
.consultation-exit{background:var(--petrol-ink);color:#dbe4e9;text-align:center}
.consultation-exit h2{color:#fff}
.consultation-exit p{margin:1rem auto 1.8rem;max-width:42ch;color:#c2d0d8}

/* ============================ VSL / AYNIMAL ============================ */
.vsl-page{background:var(--surface-page)}
.vsl-intro{min-height:min(100svh,820px);display:grid;align-items:center;padding:clamp(6rem,10vh,8rem) 0 clamp(3rem,6vw,4.5rem);background:var(--cream-2)}
.vsl-intro__grid{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.vsl-intro h1{font-size:clamp(2.8rem,4.2vw,4rem);line-height:1;letter-spacing:-.03em;max-width:15ch}
.vsl-player{width:100%;aspect-ratio:16/9}
.vsl-prose{max-width:46rem;margin-inline:auto}
.vsl-prose p{font-size:1.08rem;line-height:1.72;color:var(--ink-soft);margin-bottom:1.1rem}
.vsl-prose .lede{font-family:var(--serif);font-size:clamp(1.35rem,2.4vw,1.8rem);line-height:1.35;color:var(--petrol)}
.vsl-light-method{display:grid;grid-template-columns:repeat(3,1fr);border-top:var(--rule);border-bottom:var(--rule)}
.vsl-light-method article{padding:clamp(1.5rem,3vw,2.5rem)}
.vsl-light-method article+article{border-left:var(--rule)}
.vsl-fit{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1rem,3vw,2rem)}
.vsl-fit article{padding:clamp(1.5rem,3vw,2.2rem);border-top:3px solid var(--petrol);background:var(--surface-raised)}
.vsl-fit article:last-child{border-color:var(--peach)}
.vsl-offer{max-width:760px;margin-inline:auto;background:var(--surface-raised);border:1.5px solid var(--petrol);padding:clamp(2rem,5vw,4rem);box-shadow:var(--shadow)}
.vsl-offer__price{font-family:var(--serif);font-size:clamp(3.2rem,7vw,5.4rem);line-height:1;color:var(--petrol)}
.vsl-offer__deposit{margin-top:1rem;padding:1.2rem 0;border-top:var(--rule);border-bottom:var(--rule)}
.vsl-offer__deposit b{font-size:1.15rem;color:var(--ink)}
.vsl-offer__deposit p{margin-top:.35rem;color:var(--ink-soft)}
.vsl-offer .btn{width:100%;margin-top:1.5rem}

/* ============================ DESIGN SYSTEM VIVO ============================ */
.ds-shell{display:grid;grid-template-columns:17rem minmax(0,1fr);min-height:100vh;background:var(--surface-page)}
.ds-rail{position:sticky;top:0;z-index:20;height:100vh;overflow:auto;padding:1.5rem;background:var(--petrol-ink);color:#dbe4e9}
.ds-rail__brand{display:block;margin-bottom:2rem;font-family:var(--serif);font-size:1.35rem;color:#fff}
.ds-rail__group{margin-top:1.5rem}
.ds-rail__label{display:block;margin-bottom:.35rem;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--peach-2)}
.ds-rail a{display:flex;min-height:44px;align-items:center;padding:.45rem .65rem;border-radius:8px;color:#b9c8d0;font-size:.9rem}
.ds-rail a:hover,.ds-rail a[aria-current="true"]{background:rgba(255,255,255,.1);color:#fff}
.ds-main{min-width:0}
.ds-cover{padding:clamp(3rem,7vw,7rem);background:var(--surface-photo)}
.ds-cover h1{font-size:clamp(3rem,6vw,5.2rem);max-width:12ch;letter-spacing:-.04em}
.ds-lead{margin-top:1rem;max-width:54ch;font-size:1.15rem;color:var(--ink-soft)}
.ds-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}
.ds-section{padding:clamp(3rem,7vw,6rem);border-top:var(--rule);scroll-margin-top:1rem}
.ds-section>h2{font-size:clamp(2.2rem,4vw,3.4rem)}
.ds-section>p{margin-top:.65rem;max-width:62ch;color:var(--ink-soft)}
.ds-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:2rem}
.ds-section-title h2{font-size:clamp(2.2rem,4vw,3.4rem)}
.ds-section-title span{font-family:var(--serif);font-style:italic;color:var(--peach)}
.ds-canvas{display:block;margin-top:2rem;overflow:hidden;background:var(--surface-raised);border:var(--rule);box-shadow:var(--shadow-sm)}
.ds-gallery .ds-canvas{margin:0}
.ds-canvas__label{padding:.7rem 1rem;border-bottom:var(--rule);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--slate)}
.ds-canvas__body{padding:clamp(1.5rem,4vw,3.5rem)}
.ds-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:1rem}
.ds-specs>div{padding:1rem;background:var(--surface-raised)}
.ds-specs b{display:block;color:var(--ink)}
.ds-specs p{margin-top:.25rem;font-size:.88rem;color:var(--ink-soft)}
.ds-code-details{margin-top:1rem;border:var(--rule);background:var(--surface-raised)}
.ds-code-details summary{min-height:48px;display:flex;align-items:center;padding:0 1rem;cursor:pointer;font-weight:600;color:var(--petrol)}
.ds-code-details .ds-code{border-radius:0;border:0}
.ds-foundations{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}
.ds-token{padding:1.25rem;background:var(--surface-raised);border:var(--rule)}
.ds-token__swatch{height:6rem;margin-bottom:1rem}
.ds-token code{font-size:.78rem;color:var(--slate)}
.ds-do-dont{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1rem}
.ds-do-dont>div{padding:1.25rem;background:var(--surface-raised);border-top:3px solid #2c6a54}
.ds-do-dont>div:last-child{border-color:#c65a3c}
.canva-preview{aspect-ratio:4/5;display:flex;flex-direction:column;justify-content:flex-end;padding:1.2rem;background:var(--cream-photo);margin-bottom:1rem}
.canva-preview h4{font-size:1.7rem;line-height:1.02}
.ds-code{margin:0;padding:1rem 1.2rem;overflow:auto;background:var(--petrol-ink);color:#cfe0e8;font:500 .78rem/1.65 "JetBrains Mono",monospace}
.ds-palette{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}
.ds-swatch{overflow:hidden;background:var(--surface-raised);border:var(--rule)}
.ds-swatch__color{height:7rem}
.ds-swatch__meta{padding:1rem}
.ds-swatch__meta b{display:block}
.ds-swatch__meta code{font-size:.78rem;color:var(--slate)}
.ds-swatch--petrol .ds-swatch__color{background:#2c5f7f}
.ds-swatch--ink .ds-swatch__color{background:#152a38}
.ds-swatch--peach .ds-swatch__color{background:#ff9f83}
.ds-swatch--cream .ds-swatch__color{background:#f5f1ed}
.ds-swatch--cream2 .ds-swatch__color{background:#efe9e2}
.ds-swatch--white .ds-swatch__color{background:#fcfaf7}
.ds-swatch--text .ds-swatch__color{background:#1f3240}
.ds-swatch--muted .ds-swatch__color{background:#71828b}
.ds-type-stack{display:grid;gap:1rem;margin-top:2rem}
.ds-type-sample{display:grid;grid-template-columns:minmax(0,1fr) 14rem;gap:2rem;align-items:end;padding:1.5rem;background:var(--surface-raised);border:var(--rule)}
.ds-type-sample small{font-size:.78rem;color:var(--slate)}
.ds-type-display{font-family:var(--serif);font-size:clamp(2.5rem,5vw,4.5rem);line-height:.98;letter-spacing:-.035em}
.ds-type-heading{font-family:var(--serif);font-size:var(--fs-h2);line-height:1.06}
.ds-type-body{max-width:55ch;color:var(--ink-soft)}
.ds-button-demo{display:flex;align-items:center;flex-wrap:wrap;gap:1rem}
.ds-browser{overflow:hidden;background:var(--surface-raised);border:var(--rule);box-shadow:var(--shadow)}
.ds-browser__bar{display:flex;align-items:center;gap:.4rem;height:2.5rem;padding:0 .8rem;background:var(--cream-2);border-bottom:var(--rule)}
.ds-browser__bar i{width:.55rem;height:.55rem;border-radius:50%;background:var(--peach)}
.ds-browser__bar i:nth-child(2){background:var(--sky)}
.ds-browser__bar i:nth-child(3){background:var(--sage)}
.ds-browser iframe{display:block;width:200%;height:52rem;border:0;transform:scale(.5);transform-origin:0 0;pointer-events:none}
.ds-page-map{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1rem}
.ds-page-map ol{margin:0;padding:1.2rem 1.2rem 1.2rem 2.6rem;background:var(--surface-raised);border:var(--rule)}
.ds-page-map li{padding:.45rem;color:var(--ink-soft)}
.measure-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}
.measure-card{background:var(--surface-raised);border:var(--rule);padding:1.4rem}
.measure-card h3{margin:.8rem 0;font-size:1.45rem;color:var(--petrol)}
.measure-card dl{display:grid;grid-template-columns:8rem 1fr;gap:.55rem 1rem;margin:0}
.measure-card dt{font-weight:700;color:var(--ink)}
.measure-card dd{margin:0;color:var(--ink-soft)}
.measure-table{width:100%;border-collapse:collapse;margin-top:1rem;font-size:.9rem}
.measure-table th,.measure-table td{padding:.75rem;border-bottom:var(--rule);text-align:left;vertical-align:top}
.measure-table th{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--slate)}
.canva-preview--story{aspect-ratio:9/16}
.canva-preview--deck{aspect-ratio:16/9}
.canva-preview--a4{aspect-ratio:210/297;background:var(--white);border:var(--rule)}
.canva-preview__eyebrow{font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--petrol)}
.ds-iconset{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.ds-iconset>div{display:grid;place-items:center;min-height:7rem;background:var(--surface-raised);border:var(--rule);color:var(--petrol)}
.ds-iconset span{margin-top:.4rem;font-size:.75rem;color:var(--slate)}

@media (min-width:961px) and (max-height:780px){
  .commercial-hero__copy{padding-top:5.5rem;padding-bottom:2.5rem}
  .commercial-hero__title{font-size:clamp(3rem,4.2vw,3.85rem);max-width:16ch}
  .commercial-hero__lead{margin-top:1rem;font-size:1.08rem}
  .commercial-hero .cta-row{margin-top:1.2rem}
  .commercial-hero .trust{margin-top:1rem}
  .vsl-intro{padding-top:5.5rem;padding-bottom:2.75rem}
  .vsl-intro h1{font-size:clamp(2.8rem,3.8vw,3.65rem);max-width:16ch}
  .vsl-intro .section-intro{margin-top:1rem;font-size:1.08rem}
  .vsl-intro .cta-row{margin-top:1.2rem}
  .vsl-intro .trust{margin-top:1rem}
}

@media (max-width:960px){
  .commercial-hero,.authority-editorial,.offer-bridge,.vsl-intro__grid{grid-template-columns:1fr}
  .commercial-hero__media{min-height:32rem}
  .method-preview{grid-template-columns:1fr}
  .method-preview__steps{border-left:0;border-top:var(--rule)}
  .species-editorial{grid-template-columns:1fr}
  .result-editorial{grid-template-columns:1fr}
  .ds-shell{grid-template-columns:1fr}
  .ds-rail{position:relative;height:auto}
  .ds-rail__nav{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}
  .ds-rail__group{margin:0}
  .ds-palette{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:768px){
  .commercial-hero{display:flex;flex-direction:column}
  .commercial-hero__copy{padding:6rem var(--gutter) 2.5rem}
  .commercial-hero__media{min-height:0;aspect-ratio:16/10}
  .commercial-hero__title{font-size:clamp(2.7rem,12vw,3.6rem)}
  .diagnosis-list,.entry-routes,.payment-split,.vsl-light-method,.vsl-fit,.ds-gallery,.ds-specs,.ds-foundations,.ds-do-dont,.ds-page-map,.measure-grid,.ds-type-sample{grid-template-columns:1fr}
  .diagnosis-item:nth-child(even),.entry-route+.entry-route,.vsl-light-method article+article{border-left:0}
  .diagnosis-item:nth-child(even){padding-left:0}
  .species-editorial__item{grid-template-columns:1fr}
  .species-editorial__item figure{aspect-ratio:16/9}
  .ds-rail__nav{grid-template-columns:repeat(2,1fr)}
  .ds-palette,.ds-iconset{grid-template-columns:repeat(2,1fr)}
  .measure-card dl{grid-template-columns:1fr}
}

/* ============================ PÁGINAS LEGALES ============================ */
.legal-wrap{max-width:760px;margin-inline:auto;padding:clamp(6.5rem,12vh,9rem) var(--gutter) 4rem}
.lg-warn{background:var(--peach-soft);border-left:3px solid var(--peach);border-radius:0 var(--r) var(--r) 0;padding:1rem 1.3rem;margin-bottom:2.4rem;font-size:.92rem;line-height:1.55;color:var(--ink-soft)}
.lg-warn b{color:var(--ink)}
.legal .lg-title{font-family:var(--serif);font-weight:500;font-size:clamp(2rem,4vw,2.8rem);letter-spacing:-.02em;line-height:1.1;color:var(--ink);margin:0 0 .4rem}
.legal .lg-updated{color:var(--muted);font-size:.9rem;margin:0 0 2rem}
.legal h2{font-family:var(--serif);font-weight:500;font-size:1.5rem;color:var(--petrol);margin:2.4rem 0 .8rem;letter-spacing:-.01em}
.legal h3{font-family:var(--sans);font-weight:600;font-size:1rem;color:var(--ink);margin:1.6rem 0 .5rem}
.legal p{margin:0 0 1rem;line-height:1.7;color:var(--ink-soft)}
.legal strong,.legal b{color:var(--ink);font-weight:600}
.legal ul,.legal ol{margin:0 0 1.2rem;padding-left:1.4rem;color:var(--ink-soft);line-height:1.65}
.legal li{margin:0 0 .5rem}
.legal a{color:var(--petrol);text-decoration:underline;text-underline-offset:2px}
.legal [class*="placeholder"],.legal .ph{color:#c86a4e}
.lg-table{width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:.9rem}
.lg-table th{background:var(--petrol);color:#fff;text-align:left;padding:.6rem .8rem;font-weight:600;font-size:.78rem;letter-spacing:.03em;text-transform:uppercase}
.lg-table td{padding:.6rem .8rem;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink-soft)}
.lg-nav{margin-top:3rem;padding-top:1.6rem;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:1.4rem;font-size:.9rem}
.lg-nav a{color:var(--slate);font-weight:500}
.lg-nav a:hover{color:var(--petrol)}
.lg-nav a[aria-current]{color:var(--petrol);font-weight:600}

/* ============================ PÓSTER DE VÍDEO (hero VSL + puente en la landing) ============================ */
.video-embed--poster{background:linear-gradient(rgba(21,42,56,.32),rgba(21,42,56,.5)),url(assets/hero-desktop.jpg) center/cover}
.video-embed--poster::after{display:none}
a.video-embed{text-decoration:none}
