@font-face {
  font-family: "Manrope";
  src: url("assets/fonts/manrope-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
}

/* ============================================================
   ASFALTO PRO — MOBILE (≤760px)
   Escrito a partir do DOM real do index.html.

   DECISÕES
   1. Tudo alinhado à ESQUERDA. Sem exceção, em nenhuma seção.
   2. Escala de espaço: 4 8 12 16 24 32 40 56 72
   3. Escala de tipo: 12 13 15 17 20 24 30 42
   4. Anatomia fixa de cabeçalho: filete → eyebrow → título → lead
   5. Fundos alternados (claro / areia / escuro) marcam capítulo
   6. Fluxo puro: sem vw, sem min-height, sem texto sobre foto
   ============================================================ */

:where(.hero-grid,.method-grid,.outcomes-grid,.evidence-grid,
       .teacher-grid,.offer-grid,.field-grid,.opportunity-grid,
       .audience-grid,.situation-grid,.module-grid,.logic-list,
       .desire-list,.price-includes,.audience-professions){
  max-width:100%;min-width:0;
}
:where(.hero-grid,.method-grid,.outcomes-grid,.evidence-grid,
       .teacher-grid,.offer-grid,.field-grid) > *{min-width:0;max-width:100%}

:root{
  --ink:#14150e;
  --ink-2:#42443a;
  --muted:#65675e;
  --paper:#fffdf8;
  --sand:#f5f1e7;
  --dark:#141510;
  --dark-2:#1f2019;
  --line:#e5e0d3;
  --line-dark:rgba(255,255,255,.11);
  --accent:#e5a51f;
  --accent-ink:#8a5c0a;

  --s1:4px;  --s2:8px;  --s3:12px; --s4:16px;
  --s5:24px; --s6:32px; --s7:40px; --s8:56px; --s9:72px;

  --pad:22px;
  --r:14px;
}

/* ---------- BASE ---------- */
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:20px;-webkit-text-size-adjust:100%}
body{
  margin:0;padding-bottom:80px;
  background:var(--paper);color:var(--ink);
  font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:15px;line-height:1.66;text-align:left;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
ul,ol{margin:0;padding:0;list-style:none}
p{margin:0 0 var(--s4);color:var(--muted)}
p:last-child{margin-bottom:0}
h1,h2,h3{margin:0;color:var(--ink);letter-spacing:-.028em}
h1{font-size:30px;font-weight:800;line-height:1.16}
h2{font-size:24px;font-weight:800;line-height:1.22}
h3{font-size:18px;font-weight:750;line-height:1.34}
strong{font-weight:750}
.skip-link{position:absolute;left:-9999px}

.container{width:100%;padding-inline:var(--pad)}
.section{padding:var(--s9) 0}

/* ---------- CABEÇALHO DE SEÇÃO ----------
   .eyebrow é sempre um <p>. Nunca usar seletor de tag aqui. */
.section-heading,
.opportunity-heading,
.inside-heading,
.faq-title,
.method-copy,
.outcomes-copy,
.evidence-copy,
.field-copy,
.teacher-copy,
.offer-copy{text-align:left}

.section-heading,
.opportunity-heading,
.inside-heading,
.faq-title{margin-bottom:var(--s7)}

.eyebrow{
  position:relative;
  margin:0 0 var(--s3);padding-top:var(--s3);
  color:var(--accent-ink);
  font-size:12px;font-weight:800;letter-spacing:.14em;
  line-height:1.4;text-transform:uppercase;
}
.eyebrow::before{
  content:"";position:absolute;top:0;left:0;
  width:32px;height:2px;border-radius:2px;background:var(--accent);
}
.eyebrow-light{color:var(--accent-ink)}     /* padrão: sobre fundo claro */
.opportunity .eyebrow-light,
.situations  .eyebrow-light,
.offer       .eyebrow-light,
.final-cta   .eyebrow-light,
.bonus-card  .eyebrow-light{color:var(--accent)}   /* sobre fundo escuro */

.section-heading h2,
.opportunity-heading h2,
.inside-heading h2,
.faq-title h2,
.method-copy h2,
.outcomes-copy h2,
.evidence-copy h2,
.field-copy h2,
.teacher-copy h2,
.offer-copy h2{margin-bottom:var(--s4)}

/* lead: primeiro parágrafo depois do título */
.section-heading > p:not(.eyebrow),
.field-copy > p:not(.eyebrow):first-of-type,
.opportunity-intro,
.method-copy > p,
.outcomes-copy > p,
.evidence-copy > p,
.inside-heading > p{font-size:17px;line-height:1.55;color:var(--ink-2)}

/* ---------- BOTÕES ---------- */
.button,.price-cta{
  display:flex;width:100%;min-height:56px;
  align-items:center;justify-content:center;
  padding:16px 20px;border:0;border-radius:12px;
  background:var(--accent);color:var(--ink);
  font-family:inherit;font-size:15px;font-weight:800;
  line-height:1.25;text-align:center;
}
.button-dark{background:var(--dark);color:#fff}
.button > span[aria-hidden]{display:none}
.text-link{
  display:inline-flex;width:max-content;min-height:48px;
  align-items:center;gap:var(--s2);
  font-size:15px;font-weight:750;
  border-bottom:1px solid currentColor;
}
.text-link-light{color:var(--ink);border-color:currentColor}
.opportunity .text-link-light,
.situations  .text-link-light,
.offer       .text-link-light,
.final-cta   .text-link-light{color:#fff;border-color:rgba(255,255,255,.45)}

/* ---------- HEADER ---------- */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,253,248,.97);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.nav-wrap{display:flex;align-items:center;min-height:60px;padding-inline:var(--pad)}
.desktop-nav,.site-header .button{display:none}
.brand{display:flex;align-items:center;gap:10px}
.brand-mark{width:4px;height:32px;border-radius:3px;background:var(--accent)}
.brand > span:last-child{display:flex;flex-direction:column;gap:2px;line-height:1.2}
.brand strong{font-size:15px;letter-spacing:-.02em}
.brand small{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);white-space:nowrap}

/* ============================================================
   HERO
   ============================================================ */
.hero{
  padding:38px 0 52px;
  background:
    linear-gradient(90deg,rgba(229,165,31,.07) 1px,transparent 1px) 0 0/42px 42px,
    linear-gradient(rgba(229,165,31,.07) 1px,transparent 1px) 0 0/42px 42px,
    var(--paper);
}
.hero-grid{display:flex;flex-direction:column;gap:0;padding-inline:var(--pad)}
.hero-copy{display:contents}
.hero-brand-lockup{
  display:inline-flex;flex-direction:column;align-items:center;
  gap:6px;margin-bottom:var(--s5);
}
.hero-brand-method{
  display:flex;align-items:center;gap:7px;
  color:#725a2c;font-size:9px;font-weight:800;
  letter-spacing:.11em;line-height:1.35;text-transform:uppercase;
  white-space:nowrap;
}
.hero-brand-method::before,
.hero-brand-method::after{
  content:"";width:16px;height:2px;border-radius:2px;background:var(--accent);
}
.hero-brand-product{
  color:var(--ink);font-size:30px;font-weight:800;
  letter-spacing:-.045em;line-height:.98;
}
.hero-brand-product span{color:#a26700}
.hero-copy > .eyebrow{
  display:block;order:1;margin-bottom:var(--s4);padding-top:0;
  font-size:10px;line-height:1.4;text-align:center;
}
.hero-copy > .eyebrow::before{display:none}
.hero-copy h1{
  order:2;max-width:560px;margin:0 auto var(--s4);
  font-size:28px;line-height:1.1;text-align:center;
}
.promise-highlight{
  position:relative;z-index:0;display:inline-block;
  isolation:isolate;white-space:nowrap;
}
.promise-highlight::before{
  content:"";position:absolute;z-index:-1;
  left:-.06em;right:-.08em;bottom:.06em;height:.38em;
  background:linear-gradient(
    96deg,
    rgba(229,165,31,.14),
    rgba(229,165,31,.42) 22%,
    rgba(229,165,31,.31) 78%,
    rgba(229,165,31,.12)
  );
  clip-path:polygon(1% 15%,100% 0,98.5% 90%,0 100%);
  transform:rotate(-.7deg);
}
.hero-lead{
  order:3;max-width:560px;margin:0 auto 26px;
  color:var(--ink-2);font-size:16px;font-weight:600;line-height:1.5;
  text-align:center;
}
.hero-lead-mobile-line{display:block}
.hero-lead strong{color:var(--ink);font-weight:800}
.hero-actions{
  display:flex;order:5;flex-direction:column;align-items:stretch;
  gap:12px;margin:20px 0 0;
}
.hero-actions .button{width:100%}
.hero-actions .text-link{display:none}
.hero-points{
  display:none;gap:8px;margin:0;padding:0;
  color:var(--ink-2);font-size:13px;font-weight:700;list-style:none;
}
.hero-points li{position:relative;padding-left:16px}
.hero-points li::before{
  content:"";position:absolute;top:.58em;left:0;
  width:6px;height:6px;border-radius:50%;background:var(--accent);
}
.hero-visual{position:relative;order:4}
.portrait-card{
  overflow:hidden;border:1px solid #2e3028;border-radius:20px;
  background:#151610;box-shadow:0 20px 52px rgba(29,27,19,.16);
}
.portrait-stage{
  position:relative;overflow:hidden;width:100%;
  min-height:390px;border:0;border-radius:0;
  background:
    linear-gradient(138deg,transparent 0 49%,rgba(229,165,31,.13) 49% 68%,transparent 68%),
    linear-gradient(150deg,#2b2d25,#151610 70%);
  box-shadow:none;
}
.portrait-stage::after{
  content:"";position:absolute;right:0;bottom:0;left:0;height:23%;
  background:linear-gradient(to top,rgba(14,15,11,.58),transparent);
  pointer-events:none;
}
.hero-portrait{
  position:absolute;z-index:1;right:auto;bottom:0;left:50%;
  width:auto;height:100%;max-width:90%;object-fit:contain;object-position:bottom center;
  transform:translateX(-50%);
}
.portrait-credentials{
  position:relative;z-index:2;display:block;width:auto;
  padding:14px 16px 16px;border-top:1px solid rgba(255,255,255,.1);
  background:#11120e;text-align:center;
}
.portrait-credentials > span{
  display:block;margin-bottom:5px;color:#efb844;font-size:10px;font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;
}
.portrait-credentials strong{
  color:#fff;font-size:12px;letter-spacing:-.015em;line-height:1.5;
}

/* ============================================================
   AULA EM VÍDEO
   ============================================================ */
.video-section{
  overflow:visible;padding:14px 0 var(--s8);
  background:var(--paper);
}
.video-section-inner{padding-inline:var(--pad)}
.video-heading{
  max-width:560px;margin:0 auto 18px;text-align:center;
}
.video-heading h2{
  margin:0 0 10px;color:var(--ink);font-size:24px;font-weight:800;
  letter-spacing:-.03em;line-height:1.2;text-align:center;
}
.video-heading .eyebrow{margin-bottom:8px;padding-top:0;text-align:center}
.video-heading .eyebrow::before{display:none}
.video-heading > p:last-child{
  margin:0;color:var(--ink-2);font-size:15px;font-weight:650;
  line-height:1.5;text-align:center;
}
.video-stage{position:relative;width:100%;aspect-ratio:16/9}
.video-shell{
  position:absolute;inset:0;overflow:hidden;
  padding:3px;border-radius:calc(var(--r) + 2px);
  border:1px solid rgba(20,21,14,.18);background:#10110d;
  box-shadow:0 20px 48px rgba(25,23,15,.16);
}
.vsl-video{
  display:block;width:100%;height:100%;border-radius:var(--r);
  background:#070805;object-fit:cover;
}
.vsl-sound-gate{
  position:absolute;z-index:3;top:50%;left:50%;
  display:flex;width:calc(100% - 28px);flex-direction:column;
  align-items:center;gap:3px;padding:14px 12px 13px;
  border:1px solid rgba(255,255,255,.58);border-radius:11px;
  color:#fff;
  background:rgba(20,21,15,.78);
  transform:translate(-50%,-50%);cursor:pointer;
  box-shadow:0 14px 34px rgba(0,0,0,.32);
  backdrop-filter:blur(15px) saturate(115%);
  -webkit-backdrop-filter:blur(15px) saturate(115%);
}
.video-shell.has-sound .vsl-sound-gate{display:none}
.vsl-sound-state{
  margin-bottom:2px;color:rgba(255,255,255,.68);font-size:9px;font-weight:800;
  letter-spacing:.11em;text-transform:uppercase;
}
.vsl-sound-gate strong{
  color:#fff;font-size:18px;line-height:1.14;letter-spacing:-.03em;
}
.vsl-sound-action{font-size:12px;font-weight:750}
.vsl-sound-visual{
  display:block;margin:1px 0;
}
.vsl-muted-icon{position:relative;width:68px;height:55px}
.vsl-muted-speaker{
  position:absolute;top:10px;left:2px;width:36px;height:36px;background:#fff;
  clip-path:polygon(0 35%,35% 35%,76% 5%,76% 95%,35% 65%,0 65%);
}
.vsl-muted-wave{
  position:absolute;border:4px solid transparent;border-right-color:#fff;border-radius:50%;
  transform-origin:left center;animation:vslWavePulse 1.35s ease-in-out infinite;
}
.vsl-muted-wave-one{top:17px;right:15px;width:18px;height:22px}
.vsl-muted-wave-two{
  top:8px;right:1px;width:32px;height:39px;animation-delay:-.62s;
}
.vsl-muted-slash{
  position:absolute;top:25px;left:0;width:68px;height:5px;border-radius:999px;
  background:#fff;box-shadow:0 0 0 1px rgba(15,16,12,.18);transform:rotate(36deg);
}
@keyframes vslWavePulse{
  0%,100%{opacity:.22;transform:scale(.88)}
  50%{opacity:1;transform:scale(1)}
}
.vsl-sound-gate small{color:rgba(255,255,255,.66);font-size:9px;font-weight:650}
.vsl-resume{
  position:absolute;z-index:3;top:50%;left:50%;
  display:flex;align-items:center;gap:8px;padding:10px 13px;
  border:1px solid rgba(255,255,255,.58);border-radius:999px;
  color:#fff;background:rgba(20,21,15,.78);
  transform:translate(-50%,-50%);cursor:pointer;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}
.vsl-resume[hidden]{display:none}
.vsl-resume-mark{
  width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;
  border-left:9px solid #fff;
}
.vsl-resume strong{color:#fff;font-size:10px;letter-spacing:.04em;white-space:nowrap;text-transform:uppercase}
.vsl-pause{display:none!important}
.vsl-floating-close{
  position:absolute;z-index:4;top:6px;right:6px;
  display:none;width:30px;height:30px;place-items:center;padding:0;
  border:1px solid rgba(255,255,255,.42);border-radius:50%;
  color:#fff;background:rgba(12,13,9,.8);cursor:pointer;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.vsl-floating-close span{font-size:20px;font-weight:400;line-height:1}
.vsl-progress{
  position:absolute;z-index:5;right:6px;bottom:6px;left:6px;
  height:3px;overflow:hidden;border-radius:999px;
  background:rgba(255,255,255,.2);pointer-events:none;
}
.vsl-progress-fill{
  display:block;width:100%;height:100%;border-radius:inherit;
  background:linear-gradient(90deg,#f4c152,#e8a51a);
  box-shadow:0 0 9px rgba(232,165,26,.42);
  transform:scaleX(var(--vsl-progress,0));transform-origin:left center;
  transition:transform .24s linear;
}
.vsl-status{
  position:absolute;width:1px;height:1px;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;
}
.video-noscript{margin:12px auto 0;color:var(--muted);font-size:12px;line-height:1.55;text-align:center}
.video-shell.is-floating{
  position:fixed;z-index:110;inset:auto 12px 84px auto;
  width:min(52vw,220px);aspect-ratio:16/9;padding:2px;border-radius:12px;
  box-shadow:0 16px 42px rgba(0,0,0,.4);
  animation:vslFloatIn .24s ease both;
}
.video-shell.is-floating .vsl-video{border-radius:9px}
.video-shell.is-floating .vsl-floating-close{display:grid}
.video-shell.is-floating .vsl-progress{right:4px;bottom:4px;left:4px;height:2px}
.video-shell.is-floating .vsl-sound-gate{
  width:calc(100% - 18px);gap:1px;padding:8px 7px;border-radius:8px;
}
.video-shell.is-floating .vsl-sound-state,
.video-shell.is-floating .vsl-sound-gate small,
.video-shell.is-floating .vsl-sound-visual{display:none}
.video-shell.is-floating .vsl-sound-gate strong{font-size:12px}
.video-shell.is-floating .vsl-sound-action{font-size:9px}
@keyframes vslFloatIn{
  from{opacity:0;transform:translateY(10px) scale(.96)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

/* ---------- CREDENCIAIS ---------- */
.credibility{background:var(--sand);border-block:1px solid var(--line)}
.credibility-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}
.credibility-grid > div{
  display:flex;flex-direction:column;gap:var(--s1);
  padding:var(--s5) var(--s4);background:var(--sand);
}
.credibility-grid strong{font-size:20px;font-weight:800;letter-spacing:-.03em;line-height:1.15}
.credibility-grid span{font-size:13px;line-height:1.45;color:var(--muted)}

/* ============================================================
   OPORTUNIDADE — escuro
   ============================================================ */
.opportunity{background:var(--dark)}
.opportunity h2{color:#fff}
.opportunity-intro{color:#fff!important}
.opportunity-subcopy{margin:0;color:#9b9d93;font-size:15px}
.opportunity-grid{display:block}
.opportunity-grid > * + *{margin-top:var(--s3)}

.opportunity-card{border-radius:var(--r);background:var(--paper)}
.opportunity-card-body{padding:var(--s5);text-align:left}
.opportunity-card h3{
  margin-bottom:var(--s3);color:var(--accent-ink);
  font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
}
.opportunity-value{
  display:block;margin-bottom:var(--s2);color:var(--ink);
  font-size:30px;font-weight:800;letter-spacing:-.04em;line-height:1.05;
}
.opportunity-feature{
  margin-bottom:var(--s3);color:var(--ink);
  font-size:17px;font-weight:750;line-height:1.4;letter-spacing:-.015em;
}
.opportunity-card > div > p:last-child{margin:0;font-size:15px;color:var(--muted)}

/* ============================================================
   PARA QUEM É
   ============================================================ */
.audience-grid{display:block}
.audience-grid > * + *{margin-top:var(--s5)}
.audience-card{
  overflow:hidden;border:1px solid var(--line);border-radius:var(--r);background:#fff;
}
.audience-photo{margin:0}
.audience-photo img{width:100%;height:190px;object-fit:cover}
.audience-card-body{padding:var(--s5)}
.audience-card h3{margin-bottom:var(--s4);font-size:19px}
.audience-professions{display:flex;flex-wrap:wrap;gap:var(--s2);margin-bottom:var(--s4)}
.audience-professions li{
  padding:6px 11px;border-radius:999px;
  background:var(--sand);border:1px solid var(--line);
  font-size:13px;font-weight:700;color:var(--ink-2);
}
.audience-hook{
  display:block;margin-bottom:var(--s3);
  font-size:16px;font-weight:750;line-height:1.45;color:var(--ink);
}
.audience-card-body > p{margin:0;font-size:15px}

/* ============================================================
   PRESSÃO NA PISTA
   ============================================================ */
.field-section{background:var(--sand);border-block:1px solid var(--line)}
.field-grid{display:flex;flex-direction:column;padding-inline:var(--pad)}
.field-copy{order:1;padding:0;margin-bottom:var(--s5)}
.field-copy > p:not(.eyebrow){font-size:16px;line-height:1.55;color:var(--ink-2)}
.field-image{order:2;margin:0}
.field-image img{width:100%;height:200px;object-fit:cover;border-radius:var(--r)}

.situations{background:var(--dark)}
.situations h2{color:#fff}
.situations .section-heading{margin-bottom:var(--s6)}
.situation-grid{display:block}
.situation-grid > * + *{margin-top:var(--s3)}
.situation-card{
  padding:var(--s5);border-radius:var(--r);
  background:var(--dark-2);border:1px solid var(--line-dark);text-align:left;
}
.situation-card > span{
  display:block;margin-bottom:var(--s3);color:var(--accent);
  font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
}
.situation-card h3{margin-bottom:var(--s3);color:#fff;font-size:17px;line-height:1.45}
.situation-card p{margin:0;color:#9b9d93;font-size:15px}

/* ============================================================
   MÉTODO
   ============================================================ */
.method-grid{display:block;padding-inline:var(--pad)}
.method-copy{margin-bottom:0}
.logic-list{display:block}
.logic-list > * + *{margin-top:var(--s3)}
.logic-list > article{
  display:grid;grid-template-columns:auto 1fr;gap:var(--s4);align-items:start;
  padding:var(--s5);border-radius:var(--r);
  background:var(--sand);border:1px solid var(--line);
}
.logic-list > article > span{
  color:var(--accent-ink);font-size:15px;font-weight:800;letter-spacing:.02em;
}
.logic-list h3{margin-bottom:var(--s2);font-size:17px}
.logic-list p{margin:0;font-size:15px}

/* ============================================================
   CONTEÚDO
   ============================================================ */
.inside{padding-bottom:var(--s7);background:var(--sand);border-top:1px solid var(--line)}
.inside-heading{margin-bottom:var(--s6)}
.large-product-window{overflow:hidden;border-radius:var(--r);background:#12130f}
.window-bar{display:none}

.curriculum{background:var(--sand);padding-top:var(--s7)}
.module-grid{display:block}
.module-grid > * + *{margin-top:var(--s3)}
.module-card{
  overflow:hidden;border:1px solid var(--line);border-radius:var(--r);background:#fff;
}
.module-card img{width:100%;aspect-ratio:16/9;object-fit:cover}
.module-body{padding:var(--s5);text-align:left}
.module-body > span{
  display:block;margin-bottom:var(--s2);color:var(--accent-ink);
  font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;
}
.module-body h3{margin-bottom:var(--s3);font-size:18px}
.module-body p{margin:0;font-size:15px}

.bonus-card{
  display:flex;flex-direction:column;overflow:hidden;
  margin-top:var(--s5);border-radius:var(--r);background:var(--dark);
}
.bonus-card img{width:100%;aspect-ratio:16/9;object-fit:cover}
.bonus-card > div{padding:var(--s5);text-align:left}
.bonus-card h3{margin-bottom:var(--s3);color:#fff;font-size:20px}
.bonus-card p{margin:0;color:#9b9d93;font-size:15px}

/* ============================================================
   DEPOIS DO CURSO
   ============================================================ */
.outcomes-grid{display:flex;flex-direction:column;padding-inline:var(--pad)}
.outcomes-copy{margin-bottom:var(--s5)}
.desire-list{display:block}
.desire-list li{
  display:grid;grid-template-columns:32px 1fr;gap:var(--s3);
  padding:var(--s5) 0;border-bottom:1px solid var(--line);
}
.desire-list li:first-child{padding-top:0}
.desire-list li:last-child{border-bottom:0}
.desire-list li > span{
  color:var(--accent-ink);font-size:16px;font-weight:800;line-height:1.55;
}
.desire-list p{margin:0;font-size:15px;color:var(--ink-2)}
.desire-list strong{color:var(--ink)}
.section-cta{margin-top:var(--s6)}

/* ============================================================
   PROVA + PROFESSOR
   ============================================================ */
.evidence{background:var(--sand);border-block:1px solid var(--line)}
.evidence-grid{display:flex;flex-direction:column;padding-inline:var(--pad)}
.evidence-copy{margin-bottom:var(--s5)}
.evidence-number{
  padding:var(--s6) var(--s5);border-radius:var(--r);
  background:var(--dark);text-align:left;
}
.evidence-number strong{
  display:block;color:#fff;
  font-size:48px;font-weight:800;line-height:1;letter-spacing:-.05em;
}
.evidence-number strong span{font-size:.55em}
.evidence-number p{margin:var(--s3) 0 0;color:#9b9d93;font-size:14px;line-height:1.5}

.teacher-grid{display:flex;flex-direction:column;padding-inline:var(--pad)}
.teacher-photo{order:1;max-width:none;margin:0 0 var(--s6)}
.teacher-photo img{width:100%;border-radius:var(--r)}
.teacher-copy{order:2}
.teacher-intro{
  margin-bottom:var(--s5);
  font-size:16px;font-weight:700;color:var(--ink);line-height:1.5;
}
.teacher-copy > p:not(.eyebrow){font-size:15px}

/* ============================================================
   OFERTA
   ============================================================ */
.offer{background:var(--dark)}
.offer-grid{display:flex;flex-direction:column;padding-inline:var(--pad)}
.offer-copy{margin-bottom:var(--s6)}
.offer-copy h2{color:#fff}
.offer-copy ul{display:block}
.offer-copy li + li{margin-top:var(--s3)}
.offer-copy li{
  position:relative;padding-left:26px;padding-right:var(--s2);
  color:#c1c3b9;font-size:15px;line-height:1.55;
}
.offer-copy li::before{
  content:"✓";position:absolute;left:0;top:0;color:var(--accent);font-weight:800;
}
.offer-copy li strong{color:#fff;font-weight:750}

.price-card{
  scroll-margin-top:16px;
  padding:var(--s6) var(--s5);border-radius:var(--r);
  background:var(--paper);text-align:left;
}
.price-badge{
  display:inline-block;margin-bottom:var(--s5);
  padding:7px 13px;border-radius:999px;
  border:1px solid rgba(138,92,10,.28);background:rgba(229,165,31,.11);
  color:var(--accent-ink);
  font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
}
.price-card-head{
  display:flex;flex-direction:column;align-items:flex-start;
  gap:4px;margin-bottom:var(--s5)
}
.price-card-head h3{margin:0;font-size:24px;line-height:1.05}
.price-card-head p{
  margin:0;color:var(--ink);
  font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
}
.price-card-head > span{
  color:var(--accent-ink);font-size:10px;font-weight:800;
  letter-spacing:.11em;line-height:1.35;text-transform:uppercase;
}

.price{padding-bottom:var(--s5);margin-bottom:var(--s5);border-bottom:1px solid var(--line)}
.price-anchor{display:block;margin-bottom:var(--s2);font-size:14px;font-weight:650;color:var(--muted)}
.price-anchor s{color:#8f9188}
.price > small{display:block;font-size:14px;font-weight:750;color:var(--muted)}
.price > strong{
  display:block;white-space:nowrap;
  margin:var(--s2) 0;color:var(--ink);
  font-size:44px;font-weight:800;letter-spacing:-.045em;line-height:1.05;
}
.price sup{
  margin-right:1px;font-size:18px;font-weight:750;
  vertical-align:.55em;letter-spacing:-.01em;
}
.price > strong span{font-size:26px;letter-spacing:-.03em}
.price em{display:block;margin-top:var(--s2);font-style:normal;font-size:15px;color:var(--muted)}

.price-includes{display:block;margin:var(--s5) 0}
.price-includes > li + li{margin-top:var(--s3)}
.price-includes li{
  position:relative;padding-left:25px;
  font-size:14px;font-weight:600;color:var(--ink-2);line-height:1.5;
}
.price-includes li::before{content:"✓";position:absolute;left:0;top:0;color:#1c7a3c;font-weight:800}

.secure-line{
  display:flex;align-items:center;gap:var(--s2);
  padding-top:var(--s4);border-top:1px solid var(--line);
}
.secure-line p{margin:0;font-size:13px;color:var(--muted)}
.secure-mark{font-size:14px;line-height:1}
.guarantee-mini{display:none}

/* ---------- GARANTIA ---------- */
.guarantee{padding:var(--s8) 0}
.guarantee{background:var(--paper)}
.guarantee-card{
  display:flex;flex-direction:column;align-items:flex-start;gap:var(--s3);
  padding:var(--s6) var(--s5);
  border:1px solid var(--line);border-radius:var(--r);background:var(--sand);
}
.guarantee-card > div:not(.guarantee-number){width:100%}
.guarantee-number{
  display:flex;align-items:center;justify-content:center;
  width:64px;height:64px;flex-shrink:0;
  border-radius:50%;background:var(--accent);color:var(--ink);
  font-size:28px;font-weight:800;line-height:1;letter-spacing:-.03em;
}
.guarantee-card .eyebrow{padding-top:0}
.guarantee-card .eyebrow::before{display:none}
.guarantee-card h2{margin-bottom:var(--s3);font-size:21px}
.guarantee-card p{margin:0;font-size:15px}

/* ============================================================
   FAQ
   ============================================================ */
.faq{background:var(--sand);border-top:1px solid var(--line)}
.faq-layout{padding-inline:var(--pad)}
.faq-title{margin-bottom:var(--s5)}
.accordion{display:block}
.faq-item{display:block;border-bottom:1px solid var(--line)}
.faq-item:first-child{border-top:1px solid var(--line)}
.faq-item button{
  display:block;position:relative;width:100%;min-height:60px;
  padding:var(--s4) 36px var(--s4) 0;border:0;background:0;color:var(--ink);
  font-family:inherit;font-size:16px;font-weight:750;line-height:1.45;
  text-align:left;cursor:pointer;
}
.faq-item button b{
  position:absolute;right:0;top:50%;transform:translateY(-50%);
  color:var(--accent-ink);font-size:22px;font-weight:400;line-height:1;
  transition:transform .2s ease;
}
.faq-item button[aria-expanded="true"] b{transform:translateY(-50%) rotate(45deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-answer > p{margin:0;padding-bottom:var(--s5);font-size:15px}
.faq-item button[aria-expanded="true"] + .faq-answer{max-height:420px}

/* ============================================================
   FECHAMENTO + RODAPÉ
   ============================================================ */
.final-cta{background:var(--dark);padding:var(--s9) 0 0}
.final-cta-inner{display:flex;flex-direction:column;gap:var(--s6)}
.final-cta h2{color:#fff;font-size:26px}
.final-support{
  display:flex;flex-direction:column;align-items:flex-start;gap:var(--s4);
  margin-top:var(--s8);padding:var(--s5) 0 var(--s6);
  border-top:1px solid var(--line-dark);
}
.final-support-copy{display:flex;align-items:center;gap:var(--s3)}
.final-support-copy img{width:38px;height:38px;flex:0 0 auto}
.final-support-copy div{display:flex;flex-direction:column;gap:2px}
.final-support-copy strong{color:#fff;font-size:15px;line-height:1.35}
.final-support-copy span{color:#aeb0a8;font-size:13px;line-height:1.45}
.final-support-link{
  display:flex;width:100%;min-height:50px;align-items:center;justify-content:space-between;
  gap:var(--s3);padding:13px 15px;border:1px solid rgba(255,255,255,.2);
  border-radius:10px;color:#fff;font-size:14px;font-weight:750;
}

.footer{background:#0e0f0a;padding:var(--s6) 0}
.footer-inner{display:flex;flex-direction:column;gap:var(--s5);padding-inline:var(--pad)}
.footer p,.footer small{color:#83857b;font-size:13px;line-height:1.6}
.footer p a{color:inherit;text-decoration-color:rgba(255,255,255,.3);text-underline-offset:3px}
.brand-footer strong{color:#fff}
.brand-footer small{color:#83857b}
.footer-company{display:grid;gap:8px;color:#9b9d93;font-size:13px;font-style:normal;line-height:1.5}
.footer-company strong{color:#fff;font-size:13px}
.footer-company a{width:max-content;max-width:100%;color:#9b9d93;text-underline-offset:3px;overflow-wrap:anywhere}
.footer-copyright{width:100%;padding-top:20px;border-top:1px solid rgba(255,255,255,.09)}

/* ============================================================
   BARRA DE COMPRA
   ============================================================ */
.mobile-buy{
  position:fixed;left:0;right:0;bottom:0;z-index:120;
  display:flex;align-items:center;justify-content:space-between;gap:var(--s4);
  min-height:70px;padding:11px 14px 11px 20px;
  background:rgba(20,21,15,.98);border-top:1px solid var(--line-dark);
  transform:translateY(115%);transition:transform .25s ease;
}
.mobile-buy.is-visible{transform:translateY(0)}
.mobile-buy > div{display:flex;flex-direction:column;gap:1px;line-height:1.25}
.mobile-buy small{color:#9b9d93;font-size:13px;font-weight:700}
.mobile-buy strong{color:#fff;font-size:16px;letter-spacing:-.02em}
.mobile-buy a{
  display:inline-flex;min-height:48px;align-items:center;
  padding:12px 20px;border-radius:10px;
  background:var(--accent);color:var(--ink);
  font-size:14px;font-weight:800;white-space:nowrap;
}

/* ---------- ≤380px ---------- */
@media (max-width:380px){
  :where(.hero-grid,.method-grid,.outcomes-grid,.evidence-grid,
       .teacher-grid,.offer-grid,.field-grid,.opportunity-grid,
       .audience-grid,.situation-grid,.module-grid,.logic-list,
       .desire-list,.price-includes,.audience-professions){
  max-width:100%;min-width:0;
}
:where(.hero-grid,.method-grid,.outcomes-grid,.evidence-grid,
       .teacher-grid,.offer-grid,.field-grid) > *{min-width:0;max-width:100%}

:root{--pad:18px}
  h1{font-size:27px}
  h2{font-size:22px}
  .price > strong{
  display:block;white-space:nowrap;
  margin:var(--s2) 0;color:var(--ink);
  font-size:44px;font-weight:800;letter-spacing:-.045em;line-height:1.05;
}
  .evidence-number strong{font-size:42px}
  .credibility-grid{grid-template-columns:1fr}
  .mobile-buy a{padding:12px 16px}
}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
}

/* variações de card: sem tratamento especial no mobile */
.opportunity-card-market,
.audience-card-opportunity{}

/* ============================================================
   V6.4 — RITMO EDITORIAL MOBILE
   Uma ideia dominante por capítulo; detalhes sob demanda.
   ============================================================ */

/* Mais espaço entre capítulos, menos volume dentro das repetições */
.section{padding:84px 0}
.section-heading,
.opportunity-heading,
.inside-heading,
.faq-title{margin-bottom:44px}

.section-heading h2,
.opportunity-heading h2,
.inside-heading h2,
.faq-title h2,
.method-copy h2,
.outcomes-copy h2,
.evidence-copy h2,
.field-copy h2,
.teacher-copy h2,
.offer-copy h2{
  margin-bottom:18px;
  font-size:28px;
  line-height:1.15;
}

.section-heading > p:not(.eyebrow),
.field-copy > p:not(.eyebrow):first-of-type,
.opportunity-intro,
.method-copy > p,
.outcomes-copy > p,
.evidence-copy > p,
.inside-heading > p{
  max-width:34rem;
  font-size:16px;
  line-height:1.62;
}

/* Conteúdo progressivo */
.collapse-toggle{
  display:flex;width:100%;min-height:44px;
  align-items:center;justify-content:space-between;gap:12px;
  margin-top:14px;padding:10px 0 0;
  border:0;border-top:1px solid var(--line);
  color:var(--accent-ink);background:transparent;
  font-family:inherit;font-size:13px;font-weight:800;
  line-height:1.3;text-align:left;cursor:pointer;
}
.collapse-toggle b{
  display:grid;width:26px;height:26px;flex:0 0 26px;
  place-items:center;border:1px solid currentColor;border-radius:50%;
  font-size:18px;font-weight:500;line-height:1;
  transition:transform .22s ease;
}
[data-collapsible].is-expanded .collapse-toggle b{transform:rotate(45deg)}
.collapsible-content{
  display:block;max-height:0;overflow:hidden;
  margin-top:0;opacity:0;
  transition:max-height .36s cubic-bezier(.16,1,.3,1),opacity .22s ease,margin-top .3s ease;
}
[data-collapsible].is-expanded .collapsible-content{
  max-height:680px;margin-top:16px;opacity:1;
}
.collapse-toggle-dark{
  border-color:var(--line-dark);color:var(--accent);
}

/* Oportunidade: um dado dominante + caminhos compactos */
.opportunity{padding:96px 0 88px}
.opportunity-heading{
  max-width:34rem;margin-inline:auto;text-align:center;
}
.opportunity-heading .eyebrow::before{
  left:50%;transform:translateX(-50%);
}
.opportunity-heading h2{font-size:32px}
.opportunity-heading .opportunity-intro{margin-inline:auto;color:#fff!important}
.opportunity-heading .opportunity-subcopy{
  max-width:31rem;margin:18px auto 0;
  font-size:14px;line-height:1.6;
}
.opportunity-grid > * + *{margin-top:0}
.opportunity-card-market{
  margin-bottom:26px;
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 24px 54px rgba(0,0,0,.22);
}
.opportunity-card:not(.opportunity-card-market){
  border-top:1px solid var(--line-dark);
  border-radius:0;background:transparent;
}
.opportunity-card:not(.opportunity-card-market) .opportunity-card-body{
  padding:26px 4px;
}
.opportunity-card:not(.opportunity-card-market) .opportunity-feature{
  margin-bottom:0;color:#fff;font-size:17px;
}
.opportunity-card:not(.opportunity-card-market) .collapsible-content p{
  color:#9b9d93;
}
.opportunity-card-body > .collapse-toggle{margin-top:16px}
.opportunity-card-body .collapsible-content p{margin:0;font-size:15px}

/* Imagem de capítulo: uma pausa verdadeira entre leitura e leitura */
.mobile-chapter-image{
  position:relative;display:block;height:56vh;min-height:430px;max-height:590px;
  margin:0;overflow:hidden;background:#0c0d09;
}
.mobile-chapter-image::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(9,10,7,.04) 30%,rgba(9,10,7,.9) 100%);
}
.mobile-chapter-image img{
  width:100%;height:100%;object-fit:cover;object-position:center;
  filter:saturate(.88) contrast(1.04);
}
.mobile-chapter-image figcaption{
  position:absolute;z-index:1;right:var(--pad);bottom:42px;left:var(--pad);
  display:flex;flex-direction:column;gap:8px;color:#fff;
}
.mobile-chapter-image figcaption span{
  color:var(--accent);font-size:11px;font-weight:800;
  letter-spacing:.15em;text-transform:uppercase;
}
.mobile-chapter-image figcaption strong{
  max-width:19rem;font-size:25px;font-weight:800;line-height:1.18;
  letter-spacing:-.035em;
}

/* Para quem: dois perfis em uma faixa de leitura horizontal */
.audience{padding:92px 0 98px;background:var(--paper)}
.audience .section-heading{
  max-width:34rem;margin-inline:auto;text-align:center;
}
.audience .section-heading .eyebrow::before{
  left:50%;transform:translateX(-50%);
}
.audience .section-heading > p:not(.eyebrow){margin-inline:auto}
.audience-grid{
  display:grid;grid-auto-flow:column;grid-auto-columns:86%;
  gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;
  margin-inline:calc(var(--pad) * -1);padding:0 var(--pad) 8px;
  scroll-snap-type:x mandatory;scrollbar-width:none;
}
.audience-grid::-webkit-scrollbar{display:none}
.audience-grid > * + *{margin-top:0}
.audience-card{scroll-snap-align:center;box-shadow:0 18px 42px rgba(34,31,22,.08)}
.audience-photo img{height:180px}
.audience-card-body{padding:22px}
.audience-card h3{margin-bottom:14px;font-size:19px}
.audience-hook{margin-bottom:0;font-size:15px}
.audience-professions{margin-bottom:14px}
.audience-card-body .collapsible-content > p{margin:0;font-size:14px}

/* Fotografia e copy passam a formar um capítulo, não mais um card */
.field-section{padding:0 0 92px;background:var(--sand);border:0}
.field-grid{padding-inline:var(--pad)}
.field-image{
  order:1;width:calc(100% + (var(--pad) * 2));
  max-width:none;margin:0 calc(var(--pad) * -1);
}
.field-image img{
  width:100%;height:52vh;min-height:390px;max-height:560px;
  border-radius:0;object-fit:cover;object-position:center;
}
.field-copy{
  order:2;margin:0;padding:72px 0 0;
}
.field-copy .text-link{margin-top:8px}

/* Situações: títulos escaneáveis, contexto aberto somente quando necessário */
.situations{padding:96px 0}
.situations .section-heading{margin-bottom:46px}
.situation-grid > * + *{margin-top:0}
.situation-card{
  padding:24px 0;border:0;border-top:1px solid var(--line-dark);
  border-radius:0;background:transparent;
}
.situation-card:first-child{border-top:0;padding-top:0}
.situation-card > span{margin-bottom:10px;font-size:11px}
.situation-card h3{margin:0;font-size:18px;line-height:1.42}
.situation-card .collapsible-content p{font-size:15px;line-height:1.65}

/* Método: lista editorial, sem três caixas iguais */
.method{padding:96px 0;background:var(--paper)}
.method-copy{
  max-width:34rem;margin:0 auto;text-align:center;
}
.method-copy .eyebrow::before{left:50%;transform:translateX(-50%)}
.method-copy > p{margin-inline:auto}
.logic-list > * + *{margin-top:0}
.logic-list > article{
  grid-template-columns:42px 1fr;gap:16px;
  padding:27px 0;border:0;border-top:1px solid var(--line);
  border-radius:0;background:transparent;
}
.logic-list > article:last-child{border-bottom:1px solid var(--line)}
.logic-list > article > span{
  font-size:26px;line-height:1;letter-spacing:-.05em;
}
.logic-list h3{font-size:18px}
.logic-list p{font-size:14px;line-height:1.62}

/* A plataforma abre um capítulo escuro e visual */
.inside{
  padding:96px 0;background:var(--dark);border:0;
}
.inside-heading{
  max-width:34rem;margin:0 auto 48px;text-align:center;
}
.inside-heading .eyebrow{color:var(--accent)}
.inside-heading .eyebrow::before{left:50%;transform:translateX(-50%)}
.inside-heading h2{color:#fff}
.inside-heading > p{margin-inline:auto;color:#aaaCA3}
.large-product-window{
  margin-inline:calc(var(--pad) * -1);
  border-radius:0;border-block:1px solid var(--line-dark);
  box-shadow:0 30px 70px rgba(0,0,0,.32);
}

/* Grade das aulas: a visão geral permanece; as explicações ficam recolhidas */
.curriculum{padding:88px 0 96px;background:var(--sand)}
.curriculum .section-heading{
  max-width:32rem;margin:0 auto 38px;text-align:center;
}
.curriculum .section-heading .eyebrow::before{
  left:50%;transform:translateX(-50%);
}
.curriculum .section-heading > p:not(.eyebrow){margin-inline:auto;font-size:15px}
.module-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.module-grid > * + *{margin-top:0}
.module-card{
  min-width:0;border-radius:12px;
  box-shadow:0 10px 24px rgba(36,31,20,.055);
}
.module-card img{
  width:100%;aspect-ratio:16/9;object-fit:cover;
}
.module-body{padding:14px;text-align:left}
.module-body > span{margin-bottom:5px;font-size:9px}
.module-body h3{
  min-height:2.6em;margin:0;font-size:14px;line-height:1.3;
}
.module-toggle{
  min-height:36px;margin-top:10px;padding-top:8px;
  font-size:11px;
}
.module-toggle b{width:22px;height:22px;flex-basis:22px;font-size:15px}
.module-detail p{font-size:13px;line-height:1.55}
.module-card.is-expanded{
  grid-column:1 / -1;
  display:grid;grid-template-columns:minmax(118px,38%) 1fr;
}
.module-card.is-expanded img{
  height:100%;min-height:178px;aspect-ratio:auto;
  object-position:left center;
  border-right:1px solid var(--line);border-bottom:0;
}
.module-card.is-expanded .module-body{padding:18px}
.module-card.is-expanded .module-body h3{min-height:0;font-size:17px}
.bonus-card{margin-top:30px}
.bonus-card > div{padding:28px 24px 32px}

/* Transformação: espaço, não caixas */
.outcomes{padding:96px 0;background:var(--paper)}
.outcomes-copy{
  max-width:34rem;margin:0 auto 42px;text-align:center;
}
.outcomes-copy .eyebrow::before{left:50%;transform:translateX(-50%)}
.desire-list li{padding:24px 0}
.desire-list p{font-size:15px;line-height:1.6}

/* Prova e oferta são capítulos distintos */
.evidence{padding:90px 0;background:var(--sand)}
.evidence-copy{margin-bottom:36px}
.evidence-number{padding:40px 28px}
.offer{padding:96px 0}
.offer-copy{margin-bottom:44px}
.offer-copy li + li{margin-top:10px}
.price-card{padding:32px 24px}

/* O professor passa a confirmar a decisão, depois do preço */
.teacher{padding:96px 0;background:var(--paper)}
.teacher-photo{
  width:min(82%,320px);margin:0 auto 42px;
}
.teacher-copy{max-width:34rem;margin-inline:auto}
.teacher-intro{margin-bottom:0;font-size:16px}
.teacher-toggle{margin-top:24px}
.teacher-story p{font-size:15px;line-height:1.68}
.teacher-copy.is-expanded .teacher-story{max-height:1400px}

.guarantee{padding:88px 0}
.faq{padding:92px 0}

/* A barra de compra só surge depois que a oferta completa foi vista */
.video-shell.is-floating{bottom:18px}
body.has-mobile-buy .video-shell.is-floating{bottom:84px}
.mobile-buy{
  padding-bottom:max(11px,env(safe-area-inset-bottom));
  box-shadow:0 -16px 42px rgba(0,0,0,.16);
}

@media (max-width:380px){
  .section{padding:76px 0}
  .module-grid{gap:10px}
  .module-body{padding:12px}
  .module-body h3{font-size:13px}
  .audience-grid{grid-auto-columns:90%}
}

@media (prefers-reduced-motion:reduce){
  .collapsible-content{transition:none}
  .collapse-toggle b{transition:none}
}

/* ============================================================
   V6.5 — CAPÍTULOS VISUAIS
   Título → texto → destaques → imagem. Menos interface, mais ritmo.
   ============================================================ */

body{
  padding-bottom:0;
  background:#f5f5f7;
}

.course-nav{
  position:fixed;z-index:130;right:0;bottom:0;left:0;
  display:flex;min-height:52px;align-items:center;justify-content:space-between;
  padding:9px 14px max(9px,env(safe-area-inset-bottom)) 20px;
  border-top:1px solid rgba(255,255,255,.12);
  background:rgba(15,16,12,.96);
  box-shadow:0 -10px 32px rgba(0,0,0,.2);
  transform:translateY(115%);
  transition:transform .34s cubic-bezier(.16,1,.3,1);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
  backdrop-filter:blur(18px) saturate(150%);
}
.course-nav.is-visible{transform:translateY(0)}
.course-nav-product{
  display:flex;align-items:baseline;line-height:1;
}
.course-nav-product > strong{
  display:none;
}
.course-nav-product > span{
  color:#c8c9c3;font-size:13px;font-weight:700;
}
.course-nav-product > span b{
  color:var(--accent);font-size:17px;font-weight:800;
}
.course-nav a{
  display:inline-flex;min-height:36px;align-items:center;justify-content:center;
  padding:8px 17px;border-radius:999px;background:var(--accent);color:var(--ink);
  font-size:13px;font-weight:800;
}
.mobile-buy{display:none!important}

/* O head permanece deliberadamente mais contido que os capítulos. */
.hero,
.video-section{background:var(--paper)}
.video-section{padding-bottom:64px}
.vsl-sound-gate{
  top:50%;width:min(82%,282px);
  gap:5px;padding:12px 14px 11px;
  border:2px solid rgba(255,255,255,.9);border-radius:12px;
  background:rgba(15,16,12,.28);
  box-shadow:0 12px 28px rgba(0,0,0,.18);
  backdrop-filter:blur(1.5px) saturate(104%);
  -webkit-backdrop-filter:blur(1.5px) saturate(104%);
}
.vsl-sound-gate strong{font-size:17px}
.vsl-sound-state{display:none}
.vsl-sound-action{font-size:13px;font-weight:800}
.vsl-sound-gate small{font-size:8px}

@media (prefers-reduced-motion:reduce){
  .vsl-muted-wave{animation:none;opacity:1;transform:none}
}

/* A escala editorial começa depois da aula. */
.section-heading h2,
.opportunity-heading h2,
.inside-heading h2,
.faq-title h2,
.method-copy h2,
.outcomes-copy h2,
.evidence-copy h2,
.field-copy h2,
.teacher-copy h2,
.offer-copy h2{
  font-size:38px;
  line-height:1.06;
  letter-spacing:-.052em;
}
.section-heading > p:not(.eyebrow),
.opportunity-heading > p:not(.eyebrow),
.field-copy > p:not(.eyebrow),
.method-copy > p,
.outcomes-copy > p,
.evidence-copy > p,
.inside-heading > p{
  color:#77777b;
  font-size:20px;
  line-height:1.43;
  letter-spacing:-.018em;
}
:where(.section-heading,.opportunity-heading,.field-copy,.method-copy,
       .outcomes-copy,.evidence-copy,.inside-heading)
       > p:not(.eyebrow) strong{
  color:var(--ink);font-weight:750;
}

/* Oportunidade: fundo escuro, conteúdo em cartões claros, sem acordeão. */
.opportunity{padding:108px 0;background:#11120f}
.opportunity-heading{margin-bottom:54px}
.opportunity-heading h2{font-size:44px}
.opportunity-heading .opportunity-intro{
  max-width:19rem;color:#fff!important;font-size:20px;
}
.opportunity-heading .opportunity-subcopy{
  max-width:20rem;margin-top:22px;color:#8f9189;font-size:16px;line-height:1.55;
}
.opportunity-grid{
  display:grid;grid-template-columns:1fr;gap:14px;
  margin:0;padding:0;overflow:visible;
}
.opportunity-card,
.opportunity-card:not(.opportunity-card-market){
  position:relative;min-height:0;overflow:hidden;
  border:0;border-radius:22px;background:#fff;
  box-shadow:none;
}
.opportunity-card-market{margin:0}
.opportunity-card-body,
.opportunity-card:not(.opportunity-card-market) .opportunity-card-body{
  display:block;height:auto;padding:30px 26px;
}
.opportunity-card h3{margin-bottom:22px}
.opportunity-value{font-size:39px}
.opportunity-feature{font-size:19px;line-height:1.35}
.opportunity-card-body > p:last-child,
.opportunity-card:not(.opportunity-card-market) .opportunity-card-body > p:last-child{
  margin-top:22px;padding-top:20px;border-top:1px solid #e2e2df;
  color:#77777b;font-size:15px;line-height:1.58;
}
.opportunity-card:not(.opportunity-card-market)::after{
  position:absolute;right:22px;top:15px;color:rgba(20,21,14,.055);
  font-size:72px;font-weight:800;letter-spacing:-.08em;line-height:1;
}
.opportunity-card:nth-child(2)::after{content:"01"}
.opportunity-card:nth-child(3)::after{content:"02"}
.opportunity-card:not(.opportunity-card-market) h3{
  position:relative;z-index:1;margin-bottom:38px;
}
.opportunity-card:not(.opportunity-card-market) .opportunity-feature{
  position:relative;z-index:1;max-width:18rem;margin:0;
  color:#34362f!important;font-size:18px!important;line-height:1.42!important;
}

/* Perfis: conteúdo curto e inteiro. */
.audience{padding:112px 0}
.audience .section-heading h2{font-size:40px}
.audience-grid{grid-auto-columns:90%;gap:18px}
.audience-card{border:0;border-radius:22px;background:#f5f5f7;box-shadow:none}
.audience-photo img{height:230px}
.audience-card-body{padding:27px 25px 30px}
.audience-card h3{font-size:24px;line-height:1.18;letter-spacing:-.035em}
.audience-hook{font-size:17px}
.audience-card-body > p{
  margin-top:17px;color:#77777b;font-size:15px;line-height:1.58;
}
.carousel-guide{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  margin-top:25px;
}
.carousel-guide > small{
  color:#777970;font-size:11px;font-weight:750;
  letter-spacing:.08em;text-transform:uppercase;
}
.carousel-controls{display:flex;align-items:center;gap:11px}
.carousel-controls > button{
  display:grid;width:34px;height:34px;padding:0;place-items:center;
  border:1px solid rgba(20,21,14,.22);border-radius:50%;
  color:var(--ink);background:transparent;font:700 16px/1 "Manrope",sans-serif;
  transition:opacity .2s ease,background .2s ease,transform .2s ease;
}
.carousel-controls > button:active{transform:scale(.92)}
.carousel-controls > button:disabled{opacity:.28}
.carousel-dots{display:flex;align-items:center;gap:7px}
.carousel-dot{
  width:7px;height:7px;padding:0;border:1px solid rgba(20,21,14,.48);
  border-radius:50%;background:transparent;
  transition:width .25s cubic-bezier(.16,1,.3,1),background .2s ease;
}
.carousel-dot.is-active{
  width:19px;border-color:var(--ink);border-radius:999px;background:var(--ink);
}

/* Título, texto e imagem respiram como um único capítulo. */
.field-section{
  overflow:hidden;padding:112px 0 0;background:#f5f5f7;
}
.field-grid{display:flex}
.field-copy{order:1;margin:0;padding:0}
.field-copy h2{font-size:42px}
.field-copy > p:not(.eyebrow){font-size:20px;line-height:1.46}
.field-copy .text-link{margin-top:12px}
.field-image{
  order:2;position:relative;
  width:calc(100% + (var(--pad) * 2));margin:70px calc(var(--pad) * -1) 0;
}
.field-image picture{display:block}
.field-image img{
  width:100%;height:auto;max-height:none;border-radius:0;object-fit:contain;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 7%,#000 88%,transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0,#000 7%,#000 88%,transparent 100%);
}
.field-image figcaption{
  position:absolute;right:28px;bottom:58px;left:28px;
  max-width:17rem;color:#fff;font-size:17px;font-weight:750;line-height:1.35;
  letter-spacing:-.025em;text-shadow:0 2px 18px rgba(0,0,0,.42);
}

/* Dores: uma fotografia forte e três decisões inteiras. */
.situations{
  overflow:hidden;padding:112px 0;background:#11120f;
}
.situations .section-heading{margin-bottom:58px}
.situations .section-heading h2{
  color:#fff;font-size:41px;line-height:1.06;
}
.situations .section-heading > p:not(.eyebrow){
  margin-top:26px;color:#9b9d96;font-size:20px;line-height:1.46;
}
.situations .section-heading strong{color:#fff}
.pressure-visual{
  position:relative;width:calc(100% + (var(--pad) * 2));
  margin:0 calc(var(--pad) * -1) 64px;overflow:hidden;
}
.pressure-visual picture{display:block}
.pressure-visual img{
  width:100%;height:auto;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 5%,#000 91%,transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0,#000 5%,#000 91%,transparent 100%);
}
.pressure-visual figcaption{
  position:absolute;right:var(--pad);bottom:52px;left:var(--pad);
  display:flex;flex-direction:column;gap:9px;
}
.pressure-visual figcaption span{
  color:#f0b330;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;
}
.pressure-visual figcaption strong{
  max-width:19rem;color:#fff;font-size:24px;line-height:1.18;letter-spacing:-.035em;
}
.pressure-cards{
  display:grid;grid-template-columns:1fr;gap:14px;
  margin:0;padding:0;overflow:visible;
}
.pressure-card{
  min-height:0;padding:30px 26px;
  border-radius:22px;background:#fff;color:var(--ink);
}
.pressure-card > span{
  display:block;margin-bottom:27px;color:var(--accent-ink);
  font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
}
.pressure-card h3{
  margin-bottom:24px;color:var(--ink);font-size:24px;line-height:1.2;
  letter-spacing:-.04em;
}
.pressure-card p{color:#77777b;font-size:15px;line-height:1.58}

/* Método: três passos abertos, sem aparência de componente. */
.method{padding:116px 0 104px}
.method-copy{margin-bottom:0;text-align:left}
.method-copy .eyebrow::before{left:0;transform:none}
.method-copy h2{font-size:42px}
.method-copy > p{font-size:20px}
.logic-list > article{
  grid-template-columns:54px 1fr;gap:18px;padding:33px 0;
}
.logic-list > article > span{font-size:34px}
.logic-list h3{font-size:22px;line-height:1.18}
.logic-list p{font-size:15px}

/* Plataforma e módulos: apenas um módulo ocupa a página por vez. */
.inside{padding:112px 0}
.inside-heading h2{font-size:40px}
.curriculum{padding:112px 0;background:#fff}
.curriculum .section-heading{margin-bottom:50px;text-align:left}
.curriculum .section-heading .eyebrow::before{left:0;transform:none}
.curriculum .section-heading h2{font-size:41px}
.curriculum .section-heading > p:not(.eyebrow){
  margin-inline:0;font-size:19px;line-height:1.47;
}
.module-explorer{display:none}
.mobile-module-gallery{display:block;margin-inline:calc(var(--pad) * -1)}
.mobile-module-list{display:grid;gap:20px;padding:0 16px}
.mobile-module-poster{
  position:relative;overflow:hidden;min-height:min(76svh,680px);
  aspect-ratio:5/8;border:1px solid rgba(255,255,255,.09);border-radius:28px;
  background:#10110f;box-shadow:0 24px 58px rgba(17,18,15,.16);
}
.mobile-module-poster[hidden]{display:none}
.mobile-module-poster > button{
  position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;
  border-radius:inherit;background:#10110f;color:#fff;text-align:left;
  -webkit-tap-highlight-color:transparent;
}
.mobile-module-poster picture,
.mobile-module-poster img{display:block;width:100%;height:100%}
.mobile-module-poster img{object-fit:cover;transition:transform .65s cubic-bezier(.16,1,.3,1)}
.mobile-module-poster > button::before,
.mobile-module-poster > button::after{
  content:"";position:absolute;z-index:1;right:0;left:0;pointer-events:none;
}
.mobile-module-poster > button::before{
  top:0;height:35%;background:linear-gradient(180deg,rgba(8,9,8,.25),transparent);
}
.mobile-module-poster > button::after{
  bottom:0;height:55%;background:linear-gradient(180deg,transparent 0%,rgba(8,9,8,.5) 38%,rgba(8,9,8,.96) 100%);
}
.mobile-module-poster > button:active img{transform:scale(1.018)}
.mobile-module-copy{
  position:absolute;z-index:2;right:24px;bottom:26px;left:24px;display:flex;
  flex-direction:column;align-items:flex-start;
}
.mobile-module-copy small{
  margin-bottom:13px;padding:7px 10px;border:1px solid rgba(255,255,255,.26);
  border-radius:999px;background:rgba(8,9,8,.24);color:#f3b22a;
  font-size:10px;font-style:normal;font-weight:800;letter-spacing:.16em;
  text-transform:uppercase;backdrop-filter:blur(8px);
}
.mobile-module-copy strong{
  max-width:94%;color:#fff;font-size:clamp(31px,9vw,43px);font-weight:800;
  line-height:.96;letter-spacing:-.045em;text-transform:uppercase;text-wrap:balance;
}
.mobile-module-copy em{
  margin-top:17px;color:rgba(255,255,255,.7);font-size:11px;font-style:normal;
  font-weight:750;letter-spacing:.08em;text-transform:uppercase;
}
.mobile-modules-gate{
  position:relative;overflow:hidden;min-height:250px;margin-top:-2px;border-radius:28px;
  background:#11120f;
}
.mobile-modules-gate picture,
.mobile-modules-gate img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 68%}
.mobile-modules-gate::after{
  content:"";position:absolute;inset:0;background:
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(248,244,235,.91) 64%,#f8f4eb 100%);
  backdrop-filter:blur(2px);
}
.mobile-modules-gate > div{
  position:absolute;z-index:1;right:20px;bottom:23px;left:20px;text-align:center;
}
.mobile-modules-gate span{
  display:block;margin-bottom:10px;color:#5f605b;font-size:11px;font-weight:800;
  letter-spacing:.12em;text-transform:uppercase;
}
.mobile-modules-gate button{
  width:100%;min-height:58px;padding:14px 17px;border:0;border-radius:16px;
  background:var(--accent);color:#12130f;font:800 13px/1.2 "Manrope",sans-serif;
  letter-spacing:.025em;text-transform:uppercase;box-shadow:0 10px 28px rgba(165,105,5,.22);
}
.mobile-module-poster.is-revealed{animation:modulePosterReveal .55s cubic-bezier(.16,1,.3,1) both}
@keyframes modulePosterReveal{
  from{opacity:0;transform:translateY(20px)}
  to{opacity:1;transform:translateY(0)}
}
body.has-module-dialog{overflow:hidden}
.module-dialog{
  position:fixed;inset:0;z-index:1000;width:100%;max-width:none;height:100dvh;
  max-height:none;margin:0;padding:0;border:0;background:#10110f;color:#fff;
  overflow-y:auto;overscroll-behavior:contain;
}
.module-dialog[open]{display:block}
.module-dialog::backdrop{background:rgba(10,11,9,.92)}
.module-dialog-visual{position:relative;height:56svh;min-height:430px;background:#10110f}
.module-dialog-visual::after{
  content:"";position:absolute;inset:auto 0 0;height:38%;pointer-events:none;
  background:linear-gradient(180deg,transparent,#10110f);
}
.module-dialog-visual picture,
.module-dialog-visual img{display:block;width:100%;height:100%}
.module-dialog-visual img{object-fit:cover}
.module-dialog-close{
  position:fixed;z-index:4;top:max(16px,env(safe-area-inset-top));right:16px;
  width:48px;height:48px;border:1px solid rgba(255,255,255,.28);border-radius:50%;
  background:rgba(12,13,11,.52);color:#fff;font:400 31px/1 "Manrope",sans-serif;
  backdrop-filter:blur(14px);box-shadow:0 8px 24px rgba(0,0,0,.2);
}
.module-dialog-count{
  position:absolute;z-index:2;bottom:37px;left:24px;padding:8px 11px;
  border:1px solid rgba(255,255,255,.22);border-radius:999px;
  background:rgba(12,13,11,.34);color:#fff;font-size:10px;font-weight:800;
  letter-spacing:.16em;text-transform:uppercase;backdrop-filter:blur(10px);
}
.module-dialog-sheet{
  position:relative;z-index:2;display:flex;min-height:44svh;flex-direction:column;
  margin-top:-18px;padding:33px 24px max(36px,env(safe-area-inset-bottom));
  border-radius:28px 28px 0 0;background:#f8f4eb;color:#151610;
}
.module-dialog-sheet > p:first-child{
  margin-bottom:13px;color:#98640d;font-size:10px;font-weight:800;
  letter-spacing:.16em;text-transform:uppercase;
}
.module-dialog-sheet h3{
  margin-bottom:23px;color:#151610;font-size:clamp(31px,9vw,43px);line-height:.98;
  letter-spacing:-.05em;text-transform:uppercase;text-wrap:balance;
}
.module-dialog-sheet > p:nth-of-type(2){
  margin:0;color:#66675f;font-size:17px;line-height:1.62;
}
.module-dialog-nav{
  display:grid;flex:0 0 auto;grid-template-columns:1fr 1fr;gap:10px;
  margin-top:auto;padding-top:28px;
}
.module-dialog-nav button{
  min-height:50px;padding:13px;border:1px solid #d9d3c8;border-radius:15px;
  background:transparent;color:#171812;font:750 13px/1.2 "Manrope",sans-serif;
}
.module-dialog-nav button:disabled{opacity:.34}
.bonus-card{margin-top:34px;border-radius:22px}

/* Certificado: capítulo curto, legível e visual no mobile. */
.certificate-section{
  position:relative;overflow:hidden;padding:96px 0;color:#fff;background:
    radial-gradient(circle at 50% 48%,rgba(229,165,31,.12),transparent 42%),
    #11120f;
}
.certificate-section::before{
  content:"";position:absolute;top:0;right:0;left:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(229,165,31,.55),transparent);
}
.certificate-layout{position:relative}
.certificate-heading{margin:0 0 42px;text-align:left}
.certificate-heading .eyebrow{color:var(--accent)}
.certificate-heading .eyebrow::before{left:0;transform:none}
.certificate-heading h2{
  margin-bottom:22px;color:#fff;font-size:40px;line-height:1.04;letter-spacing:-.052em;
}
.certificate-heading > p:last-child{
  margin:0;color:#a5a79f;font-size:17px;line-height:1.62;
}
.certificate-heading > p strong{color:#fff;font-weight:750}
.certificate-frame{
  width:100%;margin:0;padding:7px;border:1px solid rgba(255,255,255,.14);
  border-radius:20px;background:rgba(255,255,255,.045);
  box-shadow:0 26px 70px rgba(0,0,0,.42);
}
.certificate-frame picture{display:block}
.certificate-frame img{border-radius:14px}
.certificate-frame figcaption{
  margin:11px 7px 4px;color:#85877f;font-size:10px;line-height:1.45;text-align:left;
}

/* Oferta continua sendo o primeiro momento de compra. */
.offer{padding:112px 0}
.offer-copy h2{font-size:40px}
.price-card{
  padding:0;overflow:hidden;border:1px solid rgba(229,165,31,.46);
  border-radius:26px;background:#fffdf8;
  box-shadow:0 26px 70px rgba(0,0,0,.28);
}
.price-card::before{display:none}
.price-card-top{
  display:block;padding:32px 28px 24px;
}
.price-card-head{display:block;margin:0;text-align:center}
.price-card-head > span{
  display:block;margin:0 0 9px;padding:0;border:0;
  color:var(--accent-ink);background:transparent;font-size:10px;
  font-weight:800;letter-spacing:.14em;text-transform:uppercase;
}
.price-card-head h3{
  margin:0 0 7px;color:var(--ink);font-size:35px;font-weight:800;
  line-height:.98;letter-spacing:-.06em;
}
.price-card-head p{
  margin:0;color:#777970;font-size:13px;font-weight:600;
  letter-spacing:0;text-transform:none;
}
.price-savings{
  display:flex;align-items:center;justify-content:center;gap:10px;
  width:max-content;max-width:calc(100% - 56px);
  margin:0 auto;padding:12px 20px;border-radius:13px;
  color:#654509;background:rgba(229,165,31,.15);
}
.price-savings span{font-size:12px;font-weight:650}
.price-savings s{color:#7a705b;text-decoration-thickness:1.5px}
.price-savings strong{
  color:#75500c;font-size:12px;font-weight:800;text-align:right;
}
.price{
  display:flex;flex-direction:column;align-items:center;text-align:center;
  margin:0;padding:27px 28px 30px;border:0;
}
.price > small{
  margin:0 0 7px;color:#63655d;font-size:11px;font-weight:800;
  letter-spacing:.09em;text-transform:uppercase;
}
.price > strong{
  display:inline-flex;align-items:flex-start;justify-content:center;gap:8px;
  margin:0 0 10px;font-size:clamp(5rem,25vw,6rem);line-height:.9;letter-spacing:-.065em;
}
.price sup{margin-top:12px;font-size:17px;line-height:1;letter-spacing:0;vertical-align:baseline}
.price > strong span{font-size:30px}
.price em{margin:0;color:#6f7169;font-size:14px}
.price em b{color:var(--ink);font-weight:800}
.price-cta{
  width:calc(100% - 56px);min-height:66px;margin:0 28px;
  border-radius:14px;font-size:13px;letter-spacing:-.01em;
}
.price-card-contents{
  margin-top:27px;padding:25px 24px 27px;
  border-top:1px solid rgba(20,21,14,.1);
}
.price-card-contents h4{
  margin:0 0 19px;color:var(--ink);font-size:11px;font-weight:800;
  letter-spacing:.09em;text-transform:uppercase;
}
.price-includes{margin:0}
.price-includes > li + li{margin-top:13px}
.price-includes li{
  padding-left:25px;color:#42443d;font-size:14px;line-height:1.48;
}
.price-assurance{
  display:grid;grid-template-columns:1fr;gap:0;padding:8px 24px 10px;
  background:#f2ecde;
}
.price-assurance > div{
  display:flex;align-items:center;gap:12px;padding:13px 0;
}
.price-assurance > div + div{border-top:1px solid rgba(20,21,14,.09)}
.assurance-icon{
  display:grid;position:relative;width:36px;height:36px;flex:0 0 36px;
  place-items:center;border-radius:50%;color:#6f4b09;
  background:rgba(229,165,31,.22);font-size:12px;font-weight:800;
}
.assurance-lock{font-size:0}
.assurance-lock::before{
  position:absolute;left:11px;bottom:9px;width:14px;height:11px;
  border:2px solid #6f4b09;border-radius:3px;content:"";
}
.assurance-lock::after{
  position:absolute;top:8px;left:13px;width:10px;height:9px;
  border:2px solid #6f4b09;border-bottom:0;border-radius:7px 7px 0 0;
  content:"";
}
.price-assurance p{
  display:flex;flex-direction:column;gap:2px;margin:0;
}
.price-assurance strong{color:var(--ink);font-size:13px;line-height:1.25}
.price-assurance small{color:#777970;font-size:11px;line-height:1.35}

.price-security{
  display:flex;align-items:center;justify-content:center;gap:12px;
  padding:16px 24px 18px;background:#f2ecde;
}
.price-security p{
  display:flex;flex-direction:column;gap:2px;margin:0;
}
.price-security strong{color:var(--ink);font-size:13px;line-height:1.25}
.price-security small{color:#777970;font-size:11px;line-height:1.35}

/* Garantia separada: um capítulo de redução de risco. */
.guarantee{
  padding:96px 0;background:#f3efe5;
}
.guarantee-card{
  display:flex;overflow:hidden;padding:0;flex-direction:column;gap:0;
  border:0;border-radius:26px;background:#fff;
  box-shadow:0 24px 64px rgba(33,29,19,.11);
}
.guarantee-seal{
  display:grid;min-height:164px;padding:25px 24px;
  grid-template-columns:auto auto;align-content:center;justify-content:center;
  column-gap:14px;color:#fff;background:
    linear-gradient(135deg,rgba(229,165,31,.14),transparent 48%),
    var(--ink);
}
.guarantee-seal strong{
  grid-row:1 / 3;font-size:96px;letter-spacing:-.1em;line-height:.76;
}
.guarantee-seal span{
  align-self:end;font-size:28px;font-weight:800;line-height:1;
  letter-spacing:-.04em;
}
.guarantee-seal small{
  align-self:start;margin-top:8px;color:#e9b747;
  font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
}
.guarantee-copy{width:100%;padding:34px 25px 36px}
.guarantee-copy h2{
  margin-bottom:23px;font-size:33px;line-height:1.03;
  letter-spacing:-.055em;
}
.guarantee-copy > p{
  margin:0;color:#777970;font-size:17px;line-height:1.62;
}
.guarantee-copy > p strong{color:var(--ink);font-weight:800}

.teacher-toggle{display:none}
.teacher-story{
  max-height:none;margin-top:26px;opacity:1;overflow:visible;
}

body.has-course-nav .video-shell.is-floating{bottom:82px}

@media (max-width:380px){
  .section-heading h2,
  .opportunity-heading h2,
  .field-copy h2,
  .situations .section-heading h2,
  .method-copy h2,
  .curriculum .section-heading h2,
  .certificate-heading h2{font-size:36px}
}

@media (prefers-reduced-motion:reduce){
  .course-nav,.module-panel{transition:none;animation:none}
}
