/* Página de vendas do Kit SAA-C03 — estilos (extraídos do index.html para respeitar a CSP do site). */
/* ============ TOKENS (design system de eriknathan.me, src/styles/tokens.css) ============ */
:root{
  color-scheme:dark;
  --color-background:#151517;
  --color-background-secondary:#1c1c1f;
  --color-surface:#18181b;
  --color-surface-elevated:#1f1f23;
  --color-text-primary:#f5f5f5;
  --color-text-secondary:#b5b5b8;
  --color-text-muted:#8a8a8d;
  --color-text-inverse:#111111;
  --color-border:#333336;
  --color-border-subtle:#26262a;
  --color-brand:#ff9900;
  --color-brand-hover:#ffb84d;
  --color-brand-soft:rgba(255,153,0,.12);
  --color-success:#2fbf71;

  --font-family-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  --font-size-display:clamp(3rem,7vw,4.5rem);
  --font-size-h1:clamp(2.5rem,5vw,3.5rem);
  --font-size-h2:clamp(2rem,4vw,2.75rem);
  --font-size-h3:1.5rem;
  --font-size-body-lg:1.125rem;
  --font-size-body:1rem;
  --font-size-sm:.875rem;
  --font-size-xs:.75rem;
  --font-weight-regular:400;
  --font-weight-medium:500;
  --font-weight-semibold:600;
  --font-weight-bold:700;

  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;
  --space-7:40px;--space-8:48px;--space-9:64px;--space-10:80px;--space-11:96px;--space-12:120px;

  --radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-pill:999px;
  --shadow-sm:0 1px 2px rgb(0 0 0 / .24);
  --shadow-md:0 4px 16px rgb(0 0 0 / .32);
  --shadow-lg:0 12px 32px rgb(0 0 0 / .4);
  --duration-fast:120ms;--duration-normal:180ms;--duration-slow:300ms;
  --ease-standard:cubic-bezier(0.2,0,0,1);

  /* Tokens desta página (ainda não existem no site) */
  --sales-grid-line:rgb(255 255 255 / .035);
  --sales-topbar:rgb(21 21 23 / .86);
  --sales-container:1080px;
  --sales-text:760px;
  --sales-backdrop:rgb(10 10 11 / .97);
}

/* ============ BASE (src/index.css) ============ */
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--color-background);color:var(--color-text-secondary);font-family:var(--font-family-sans);font-size:var(--font-size-body);line-height:1.5}
:focus-visible{outline:2px solid var(--color-brand);outline-offset:3px}
img{max-width:100%;height:auto;display:block}
a{color:var(--color-brand)}
a:hover{color:var(--color-brand-hover)}
h1,h2,h3{color:var(--color-text-primary);line-height:1.1;margin:0;text-wrap:balance;letter-spacing:-.025em}
p{margin:0 0 var(--space-4)}
b,strong{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}

.wrap{max-width:var(--sales-container);margin:0 auto;padding:0 var(--space-5)}
.section{padding:var(--space-11) 0}
.section h2{font-size:var(--font-size-h2);margin-bottom:var(--space-4)}
.section .lead{font-size:var(--font-size-body-lg);max-width:var(--sales-text)}
.kicker{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--color-brand);background:var(--color-brand-soft);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-3);margin-bottom:var(--space-4)}

/* ============ BOTÕES (HeroSection.css) ============ */
.button-primary,.button-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-decoration:none;transition:transform var(--duration-fast) var(--ease-standard),background-color var(--duration-normal) var(--ease-standard),border-color var(--duration-normal) var(--ease-standard),color var(--duration-normal) var(--ease-standard)}
.button-primary{background:var(--color-brand);color:var(--color-text-inverse);border:1px solid var(--color-brand)}
.button-primary:hover{background:var(--color-brand-hover);border-color:var(--color-brand-hover);color:var(--color-text-inverse);transform:translateY(-1px)}
.button-secondary{background:transparent;color:var(--color-text-primary);border:1px solid var(--color-border)}
.button-secondary:hover{border-color:var(--color-brand);color:var(--color-text-primary)}
.button-primary svg{width:18px;height:18px}
.is-large{min-height:52px;padding:var(--space-4) var(--space-6);font-size:var(--font-size-body)}

/* ============ NAVBAR ============ */
.topbar{position:sticky;top:0;z-index:20;background:var(--sales-topbar);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border-subtle);transition:box-shadow var(--duration-normal) var(--ease-standard)}
.topbar.is-scrolled{box-shadow:var(--shadow-md)}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);height:64px}
.brand{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:var(--font-weight-bold);color:var(--color-text-primary);text-decoration:none;letter-spacing:-.01em;white-space:nowrap}
.brand b{color:var(--color-brand)}
.brand:hover{color:var(--color-text-primary)}
.brand-icon{width:20px;height:20px;color:var(--color-brand)}
.topnav{display:flex;gap:var(--space-1)}
.topnav a{position:relative;padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-decoration:none;transition:color var(--duration-normal) var(--ease-standard),background-color var(--duration-normal) var(--ease-standard)}
.topnav a:hover{color:var(--color-text-primary);background:var(--color-surface-elevated)}
.topnav a.is-active{color:var(--color-brand);background:var(--color-brand-soft)}
.topbar-cta{display:flex;align-items:center;gap:var(--space-4)}
/* Reading progress along the bottom edge of the bar (width set in main.js). */
.topbar-progress{position:absolute;left:0;bottom:-1px;height:2px;width:var(--read,0%);background:var(--color-brand)}
/* Anchored sections stop below the sticky bar instead of under it. */
main [id]{scroll-margin-top:72px}

/* ============ HERO ============ */
.hero{background-image:linear-gradient(var(--sales-grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--sales-grid-line) 1px,transparent 1px);background-size:32px 32px;border-bottom:1px solid var(--color-border-subtle);overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--space-9);align-items:center;padding-top:var(--space-10);padding-bottom:var(--space-11)}
.hero h1{font-size:var(--font-size-h1);font-weight:var(--font-weight-bold);margin-bottom:var(--space-5)}
.hero h1 em{font-style:normal;color:var(--color-brand)}
.hero-sub{font-size:var(--font-size-body-lg);max-width:34rem;margin-bottom:var(--space-6)}
.hero-ctas{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-6)}
.hero-proof{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);list-style:none;margin:0;padding:0;font-size:var(--font-size-sm);color:var(--color-text-primary)}
.hero-proof li{display:flex;align-items:center;gap:var(--space-2)}
.hero-proof li:before{content:'';width:8px;height:8px;background:var(--color-brand);border-radius:var(--radius-pill)}
.stack{position:relative;height:540px}
.stack img{position:absolute;width:62%;height:auto;border-radius:var(--radius-sm);box-shadow:var(--shadow-lg)}
.stack img:nth-child(1){left:0;top:58px;transform:rotate(-7deg)}
.stack img:nth-child(2){right:0;top:58px;transform:rotate(7deg)}
.stack img:nth-child(3){left:19%;top:0;z-index:2}

/* ============ NÚMEROS ============ */
.numbers{background:var(--color-background-secondary);border-bottom:1px solid var(--color-border-subtle)}
.numbers ul{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;margin:0 auto;padding:var(--space-8) var(--space-5);max-width:var(--sales-container)}
.numbers li{padding:0 var(--space-5);border-left:1px solid var(--color-border)}
.numbers li:first-child{border-left:0;padding-left:0}
.numbers strong{display:block;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1;margin-bottom:var(--space-2)}
.numbers span{font-size:var(--font-size-sm);color:var(--color-text-muted)}

/* ============ PROBLEMA ============ */
.pain{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-9);align-items:start}
.pain-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}
.pain-list li{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-left:3px solid var(--color-brand);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);margin:0}

/* ============ PRODUTOS ============ */
.products{background:var(--color-background-secondary)}
.product{display:grid;grid-template-columns:280px 1fr;gap:var(--space-8);align-items:center;background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-7);margin-top:var(--space-6);box-shadow:var(--shadow-md)}
.product:nth-of-type(even){grid-template-columns:1fr 280px}
.product:nth-of-type(even) .product-cover{order:2}
.product-cover img{border-radius:var(--radius-sm);box-shadow:var(--shadow-lg)}
.product-tag{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--color-brand)}
.product h3{font-size:var(--font-size-h3);margin:var(--space-2) 0 var(--space-3)}
.checks{list-style:none;margin:var(--space-5) 0 0;padding:0;display:grid;gap:var(--space-2)}
.checks li{position:relative;padding-left:var(--space-6);margin:0}
.checks li:before{content:'';position:absolute;left:0;top:.15em;width:20px;height:20px;border-radius:var(--radius-pill);background:var(--color-brand-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff9900' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat}
.chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-5)}
.chips span{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-primary);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:var(--space-1) var(--space-3)}

/* Ficha de cada e-book */
.specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin:var(--space-5) 0 0;padding:0}
.specs.is-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.specs div{background:var(--color-surface-elevated);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}
.specs dt{font-size:var(--font-size-h3);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1.1;color:var(--color-text-primary)}
.specs dd{margin:var(--space-1) 0 0;font-size:var(--font-size-xs);line-height:1.35;color:var(--color-text-muted)}

/* Brinde */
.product.is-bonus{border:1px dashed var(--color-brand);background:linear-gradient(var(--color-brand-soft),var(--color-brand-soft)),var(--color-surface)}
.offer-items li.is-bonus span:last-child{color:var(--color-success);font-weight:var(--font-weight-semibold)}

/* ============ POR DENTRO ============ */
.carousel{margin-top:var(--space-7)}
.carousel-track{--per:3.25;display:flex;gap:var(--space-6);list-style:none;margin:0 calc(-1 * var(--space-5));padding:var(--space-2) var(--space-5) var(--space-5);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 var(--space-5);scrollbar-width:none;overscroll-behavior-x:contain;-webkit-mask-image:linear-gradient(90deg,black calc(100% - 72px),transparent);mask-image:linear-gradient(90deg,black calc(100% - 72px),transparent)}
.carousel-track.is-end{-webkit-mask-image:none;mask-image:none}
.carousel-track::-webkit-scrollbar{display:none}
.carousel-item{flex:0 0 calc((100% - (var(--per) - 1) * var(--space-6)) / var(--per));scroll-snap-align:start;margin:0}
.page-open{position:relative;display:block;width:100%;padding:0;border:0;border-radius:var(--radius-sm);background:none;cursor:zoom-in;box-shadow:var(--shadow-lg)}
.page-open img{width:100%;aspect-ratio:210/297;object-fit:cover;object-position:top;border-radius:var(--radius-sm)}
.page-zoom{position:absolute;right:var(--space-3);bottom:var(--space-3);display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-pill);background:var(--color-brand);color:var(--color-text-inverse);box-shadow:var(--shadow-md);opacity:0;transform:scale(.8);transition:opacity var(--duration-normal) var(--ease-standard),transform var(--duration-normal) var(--ease-standard)}
.page-zoom svg{width:20px;height:20px}
.page-open:hover .page-zoom,.page-open:focus-visible .page-zoom{opacity:1;transform:none}
.page-caption{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:var(--space-3) 0 0}
.page-caption b{display:block;font-size:var(--font-size-body)}
.carousel-controls{display:flex;align-items:center;gap:var(--space-4);margin-top:var(--space-2)}
.carousel-btn,.lightbox-btn{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);cursor:pointer;transition:border-color var(--duration-normal) var(--ease-standard),background-color var(--duration-normal) var(--ease-standard),opacity var(--duration-normal) var(--ease-standard)}
.carousel-btn:hover,.lightbox-btn:hover{border-color:var(--color-brand)}
.carousel-btn:disabled{opacity:.35;cursor:default;border-color:var(--color-border)}
.carousel-btn svg,.lightbox-btn svg{width:20px;height:20px}
.carousel-progress{flex:1;height:4px;border-radius:var(--radius-pill);background:var(--color-border-subtle);overflow:hidden}
.carousel-progress span{display:block;height:100%;width:var(--progress,37.5%);margin-left:var(--offset,0%);border-radius:inherit;background:var(--color-brand);transition:margin-left var(--duration-normal) var(--ease-standard)}

/* Pop-up da página ampliada */
.lightbox{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:var(--space-4);border:0;background:var(--sales-backdrop);color:var(--color-text-secondary);display:none;flex-direction:column;gap:var(--space-3)}
.lightbox[open]{display:flex}
.lightbox::backdrop{background:transparent;backdrop-filter:blur(6px)}
.lightbox-bar{display:flex;align-items:center;gap:var(--space-4);max-width:var(--sales-container);width:100%;margin:0 auto}
.lightbox-caption{flex:1;margin:0;font-size:var(--font-size-sm)}
.lightbox-caption b{color:var(--color-text-primary);margin-right:var(--space-2)}
.lightbox-count{font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;color:var(--color-text-muted)}
.lightbox-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;gap:var(--space-4)}
.lightbox-frame{max-height:100%;max-width:100%;overflow:auto;border-radius:var(--radius-sm);overscroll-behavior:contain}
.lightbox-frame img{display:block;width:auto;height:auto;max-height:calc(100vh - 150px);max-width:calc(100vw - 168px);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);cursor:zoom-in;background:var(--color-text-primary)}
.lightbox-frame.is-zoomed img{max-height:none;max-width:none;width:min(1200px,calc(100vw - 168px));cursor:zoom-out}
.lightbox-hint{margin:0;text-align:center;font-size:var(--font-size-xs);color:var(--color-text-muted)}

/* ============ DOMÍNIOS ============ */
.domains{background:var(--color-background-secondary);border-block:1px solid var(--color-border-subtle)}
.dbar{display:flex;gap:var(--space-1);height:14px;margin:var(--space-7) 0 var(--space-5)}
.dbar span{border-radius:var(--radius-pill)}
.dbar span:nth-child(odd){background:var(--color-brand)}
.dbar span:nth-child(even){background:var(--color-text-primary)}
/* Peso de cada domínio no exame (antes era style="flex:N" inline, bloqueado pela CSP do site) */
.dbar .w30{flex:30}.dbar .w26{flex:26}.dbar .w24{flex:24}.dbar .w20{flex:20}
.dgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5)}
.dgrid strong{display:block;font-size:var(--font-size-h3);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;margin-bottom:var(--space-1)}
.dgrid span{display:block;color:var(--color-text-primary);font-weight:var(--font-weight-medium)}
.dgrid small{display:block;color:var(--color-text-muted);font-size:var(--font-size-sm);margin-top:var(--space-1)}

/* ============ INSTRUTOR ============ */
.author{display:grid;grid-template-columns:auto 1fr;gap:var(--space-8);align-items:center}
/* Same round portrait with the brand ring as the hero of eriknathan.me. */
.author-photo{width:220px;height:auto;aspect-ratio:1;object-fit:cover;border-radius:50%;border:4px solid var(--color-brand);background:var(--color-surface);box-shadow:0 0 0 8px var(--color-brand-soft),var(--shadow-lg)}
.author h2{margin-bottom:var(--space-2)}
.author-role{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-brand);margin-bottom:var(--space-5)}

/* ============ OFERTA ============ */
.offer{background:var(--color-background-secondary)}
.offer-box{display:grid;grid-template-columns:1.1fr .9fr;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg)}
.offer-items{padding:var(--space-8)}
.offer-items ul{list-style:none;margin:var(--space-5) 0 0;padding:0}
.offer-items li{display:flex;justify-content:space-between;gap:var(--space-5);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-subtle);margin:0;color:var(--color-text-primary)}
.offer-items li span:last-child{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap}
.offer-price{background:var(--color-surface-elevated);padding:var(--space-8);display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--color-border)}
.price-old{font-size:var(--font-size-body);text-decoration:line-through;color:var(--color-text-muted)}
.price{font-size:var(--font-size-display);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;letter-spacing:-.04em;line-height:1;color:var(--color-text-primary);margin:var(--space-2) 0}
.price-note{font-size:var(--font-size-sm);margin-bottom:var(--space-5)}
.offer-price .button-primary{width:100%}
.guarantee{display:flex;gap:var(--space-3);align-items:flex-start;margin-top:var(--space-5);font-size:var(--font-size-sm)}
.guarantee svg{flex:0 0 24px;height:24px;color:var(--color-success)}

/* ============ FAQ ============ */
.faq-layout{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:var(--space-9);align-items:start}
.faq-intro{position:sticky;top:calc(64px + var(--space-6))}
.faq-intro .lead{margin-bottom:var(--space-6)}
.faq-assurance{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-4) var(--space-5);margin-bottom:var(--space-5);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface)}
.faq-assurance svg{flex:0 0 24px;height:24px;color:var(--color-success)}
.faq-assurance b{display:block}
.faq-assurance span{font-size:var(--font-size-sm)}
.faq{display:grid;gap:var(--space-3)}
.faq details{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);transition:border-color var(--duration-normal) var(--ease-standard),background-color var(--duration-normal) var(--ease-standard)}
.faq details:hover{border-color:var(--color-border)}
.faq details[open]{border-color:var(--color-brand);background:var(--color-surface-elevated)}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);font-size:var(--font-size-body-lg);border-radius:inherit}
.faq summary::-webkit-details-marker{display:none}
.faq-num{flex:0 0 auto;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;color:var(--color-brand)}
.faq-q{flex:1}
.faq-toggle{position:relative;flex:0 0 32px;height:32px;border-radius:var(--radius-pill);background:var(--color-brand-soft);transition:transform var(--duration-normal) var(--ease-standard),background-color var(--duration-normal) var(--ease-standard)}
.faq-toggle:before,.faq-toggle:after{content:'';position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;border-radius:2px;background:var(--color-brand);transition:background-color var(--duration-normal) var(--ease-standard)}
.faq-toggle:after{transform:rotate(90deg)}
.faq details[open] .faq-toggle{transform:rotate(45deg);background:var(--color-brand)}
.faq details[open] .faq-toggle:before,.faq details[open] .faq-toggle:after{background:var(--color-text-inverse)}
/* Answer lines up with the question text (number width + gap). */
.faq details p{margin:0;padding:0 var(--space-5) var(--space-5) calc(var(--space-5) + 1.5rem + var(--space-4));max-width:62ch}
/* Smooth open/close where supported; elsewhere it just snaps open. */
@supports selector(::details-content){
  :root{interpolate-size:allow-keywords}
  .faq details::details-content{height:0;overflow:clip;transition:height var(--duration-slow) var(--ease-standard),content-visibility var(--duration-slow) allow-discrete}
  .faq details[open]::details-content{height:auto}
}

/* ============ CTA FINAL E RODAPÉ ============ */
.final{text-align:center;background-image:linear-gradient(var(--sales-grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--sales-grid-line) 1px,transparent 1px);background-size:32px 32px}
.final h2{max-width:18em;margin:0 auto var(--space-4)}
.final p{max-width:36rem;margin:0 auto var(--space-6);font-size:var(--font-size-body-lg)}
footer{border-top:1px solid var(--color-border-subtle);color:var(--color-text-muted);font-size:var(--font-size-sm);padding:var(--space-7) 0}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-4)}
.disclaimer{max-width:var(--sales-container);margin:var(--space-5) auto 0;padding:0 var(--space-5);font-size:var(--font-size-xs);color:var(--color-text-muted)}

/* ============ RESPONSIVO (breakpoints do site) ============ */
@media(max-width:1023px){
  .topnav{display:none}
  .faq-layout{grid-template-columns:1fr;gap:var(--space-7)}
  .faq-intro{position:static}
  .section{padding:var(--space-10) 0}
  .hero .wrap{grid-template-columns:1fr;gap:var(--space-7);padding-top:var(--space-9);padding-bottom:var(--space-9)}
  .stack{height:420px;max-width:460px;width:100%;margin:0 auto}
  .numbers ul{grid-template-columns:repeat(2,1fr);gap:var(--space-6) 0}
  .numbers li:nth-child(3){border-left:0;padding-left:0}
  .pain,.author,.offer-box{grid-template-columns:1fr}
  .product,.product:nth-of-type(even){grid-template-columns:1fr;padding:var(--space-6);gap:var(--space-6)}
  .product:nth-of-type(even) .product-cover{order:0}
  .product-cover{max-width:240px}
  .dgrid{grid-template-columns:1fr 1fr}
  .carousel-track{--per:2.2;gap:var(--space-5)}
  .offer-price{border-left:0;border-top:1px solid var(--color-border)}
}
@media(max-width:639px){
  .faq summary{padding:var(--space-4);gap:var(--space-3);font-size:var(--font-size-body)}
  .faq details p{padding:0 var(--space-4) var(--space-4)}
  .wrap{padding:0 var(--space-4)}
  .section{padding:var(--space-9) 0}
  .topbar .button-primary{min-height:40px;padding:var(--space-2) var(--space-4)}
  .specs,.specs.is-four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stack{height:320px}
  .numbers ul{padding:var(--space-6) var(--space-4)}
  .numbers li{padding:0 var(--space-4)}
  .carousel-track{--per:1.25;gap:var(--space-4);margin:0 calc(-1 * var(--space-4));padding-inline:var(--space-4);scroll-padding:0 var(--space-4)}
  .lightbox{padding:var(--space-2)}
  .lightbox-nav,.lightbox-hint{display:none}
  .lightbox-frame img{max-width:calc(100vw - 16px);max-height:calc(100vh - 80px)}
  .lightbox-frame.is-zoomed img{width:200vw}
  .offer-items,.offer-price{padding:var(--space-6) var(--space-5)}
  .product{padding:var(--space-5)}
  .author-photo{width:180px}
  .hero-ctas a{width:100%}
}
/* ============ ANIMAÇÕES ============
   Só com JS (html.js) e sem prefers-reduced-motion; sem JS, tudo aparece de uma vez. */
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes fan{from{opacity:0;transform:translate(var(--from-x),40px) rotate(0)}to{opacity:1;transform:rotate(var(--rot))}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes drift{to{background-position:32px 32px,32px 32px}}
@keyframes glow{0%,100%{box-shadow:0 0 0 0 var(--color-brand-soft)}50%{box-shadow:0 0 0 10px var(--color-brand-soft)}}
@media(prefers-reduced-motion:no-preference){
  .js .hero{animation:drift 14s linear infinite}
  .js .hero .wrap>div:first-child>*{opacity:0;animation:rise var(--duration-slow) var(--ease-standard) forwards;animation-duration:700ms}
  .js .hero .wrap>div:first-child>:nth-child(2){animation-delay:90ms}
  .js .hero .wrap>div:first-child>:nth-child(3){animation-delay:180ms}
  .js .hero .wrap>div:first-child>:nth-child(4){animation-delay:270ms}
  .js .hero .wrap>div:first-child>:nth-child(5){animation-delay:360ms}
  .js .stack img{opacity:0;animation:fan 900ms var(--ease-standard) 250ms forwards}
  .js .stack img:nth-child(3){animation:fan 900ms var(--ease-standard) 250ms forwards,float 6s ease-in-out 1.4s infinite}
  .js [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity 700ms var(--ease-standard),transform 700ms var(--ease-standard);transition-delay:var(--delay,0ms)}
  .js [data-reveal].is-visible{opacity:1;transform:none}
  .js .dbar span{transform:scaleX(0);transform-origin:left;transition:transform 900ms var(--ease-standard);transition-delay:var(--delay,0ms)}
  .js .dbar.is-visible span{transform:none}
  .product-cover img{transition:transform var(--duration-slow) var(--ease-standard),box-shadow var(--duration-slow) var(--ease-standard)}
  .product:hover .product-cover img{transform:translateY(-6px) rotate(-1.5deg)}
  .product:nth-of-type(even):hover .product-cover img{transform:translateY(-6px) rotate(1.5deg)}
  .page-open{transition:transform var(--duration-slow) var(--ease-standard)}
  .page-open:hover{transform:translateY(-6px)}
  .lightbox[open] .lightbox-frame img{animation:rise var(--duration-slow) var(--ease-standard)}
  .offer-price .button-primary{animation:glow 2.4s var(--ease-standard) infinite}
}
.stack img:nth-child(1){--rot:-7deg;--from-x:19%}
.stack img:nth-child(2){--rot:7deg;--from-x:-19%}
.stack img:nth-child(3){--rot:0deg;--from-x:0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button-primary,.button-secondary,.faq details,.faq-toggle{transition:none}.faq details::details-content{transition:none}}
