/* ============================================================
   ACADEMIA CNC — sistema visual 2026
   Mundo escuro de oficina · acento por máquina (variável)
   Assinatura: toolpath (o percurso da fresa)
   Cor da máquina definida em cada página via :root override:
     --machine / --machine-lit / --machine-deep / --ink
   ============================================================ */
:root{
  --void:#0A0A0B; --panel:#131315; --panel-2:#1B1B1E; --panel-3:#212125;
  --line:#2A2A2E; --line-2:#3a3a40;
  --chalk:#F2F0EE; --ash:#9A9AA1; --ash-2:#6f6f76;
  --red:#D81E1E; --good:#34C77A;

  /* máquina — sobrescrita por página (padrão: Router) */
  --machine:#E8871E; --machine-lit:#FFB25C; --machine-deep:#8f5410;
  --ink:#160c02;                 /* texto sobre o botão da cor da máquina */
  --m-soft:color-mix(in srgb, var(--machine) 13%, transparent);

  --r-sm:5px; --r-md:12px; --r-lg:20px; --r-xl:26px;
  --ease:cubic-bezier(.2,.8,.3,1);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--void);color:var(--chalk);font-family:'IBM Plex Sans',-apple-system,system-ui,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.55;overflow-x:hidden;}
::selection{background:var(--machine);color:var(--ink);}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
:focus-visible{outline:2.5px solid var(--machine-lit);outline-offset:3px;border-radius:2px;}
.wrap{width:min(1140px,92vw);margin-inline:auto;}

/* tipografia */
h1,h2,h3,.display{font-family:'Archivo',sans-serif;font-weight:800;letter-spacing:-.03em;line-height:1.04;text-wrap:balance;}
.mono{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--machine);display:inline-flex;align-items:center;gap:11px;}
.eyebrow::before{content:'';width:28px;height:1.5px;background:var(--machine);}
.steel{color:var(--ash);}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}

/* barra de aviso */
.ticker{background:linear-gradient(90deg,var(--machine-deep),var(--machine));color:var(--ink);overflow:hidden;white-space:nowrap;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;}
.ticker div{display:inline-block;padding:8px 0;animation:slide 28s linear infinite;}
.ticker span{padding:0 26px;}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* nav */
.nav{position:sticky;top:0;z-index:80;background:rgba(10,10,11,.82);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);}
.nav-in{display:flex;align-items:center;gap:26px;height:64px;}
.brand{font-family:'Archivo',sans-serif;font-weight:900;font-size:17px;letter-spacing:-.02em;text-transform:uppercase;}
.brand span{color:var(--red);}
.nav-links{display:flex;gap:22px;margin-left:auto;align-items:center;}
.nav-links a{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ash);transition:color .2s;white-space:nowrap;}
.nav-links a:hover{color:var(--chalk);}
.nav-links a.here{color:var(--machine);}
.nav-cta{background:var(--machine);color:var(--ink);padding:9px 16px;border-radius:var(--r-sm);font-family:'Archivo',sans-serif;font-weight:700;font-size:12.5px;letter-spacing:0;text-transform:none;opacity:0;transform:translateY(-6px);transition:opacity .3s,transform .3s;pointer-events:none;}
.nav.scrolled .nav-cta{opacity:1;transform:none;pointer-events:auto;}
.nav-cta:hover{color:var(--ink);}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:'Archivo',sans-serif;font-weight:700;font-size:15px;padding:16px 28px;border-radius:var(--r-sm);border:none;cursor:pointer;transition:transform .18s var(--ease),box-shadow .18s var(--ease);text-align:center;}
.btn svg{width:18px;height:18px;flex:0 0 auto;}
.btn-main{background:var(--machine);color:var(--ink);}
.btn-main:hover{transform:translateY(-2px);box-shadow:0 14px 38px -10px color-mix(in srgb,var(--machine) 75%,transparent);}
.btn-main.pulse{animation:pulse 2.6s var(--ease) infinite;}
@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--machine) 45%,transparent)}70%{box-shadow:0 0 0 16px transparent}100%{box-shadow:0 0 0 0 transparent}}
.btn-ghost{background:transparent;color:var(--chalk);border:1.5px solid var(--line-2);}
.btn-ghost:hover{border-color:var(--machine);color:var(--machine-lit);}
.btn-lg{font-size:17px;padding:19px 40px;}
.btn-block{width:100%;}

/* HERO */
.hero{position:relative;padding:60px 0 20px;overflow:hidden;}
.hero::before{content:'';position:absolute;z-index:0;top:-14%;left:50%;transform:translateX(-50%);width:min(1000px,120vw);height:520px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--machine) 22%,transparent) 0%,transparent 66%);filter:blur(34px);pointer-events:none;}
.toolpath{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;}
.toolpath path{fill:none;stroke:var(--machine);stroke-width:1.5;stroke-dasharray:6 5;opacity:.34;animation:cut 2.6s var(--ease) forwards,crawl 3s linear infinite 2.6s;}
.toolpath .bit{fill:var(--machine);opacity:0;animation:bitIn .4s ease forwards 2.3s;}
@keyframes cut{from{stroke-dashoffset:2400;opacity:0}to{stroke-dashoffset:0;opacity:.34}}
@keyframes crawl{to{stroke-dashoffset:-22}}
@keyframes bitIn{to{opacity:1}}
.hero>.wrap{position:relative;z-index:2;}
.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:52px;align-items:center;}
.logo-title{margin:20px 0 0;}
.logo-title img{width:auto;height:auto;max-width:min(430px,88%);max-height:104px;filter:drop-shadow(0 6px 24px color-mix(in srgb,var(--machine) 22%,transparent));}
.hero h1{font-size:clamp(34px,5vw,58px);max-width:16ch;margin:22px 0 0;}
.hero h1 .cut{color:var(--machine-lit);}
.hero-sub{font-size:clamp(16px,1.9vw,18.5px);color:var(--ash);max-width:50ch;margin-top:22px;line-height:1.62;}
.hero-cta{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap;}
.microtrust{display:flex;gap:22px;flex-wrap:wrap;margin-top:24px;align-items:center;}
.microtrust .mt{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ash);}
.microtrust .mt svg{width:16px;height:16px;color:var(--good);flex:0 0 auto;}
.stars{display:inline-flex;gap:2px;}
.stars svg{width:15px;height:15px;color:var(--machine);}

/* home: hero central com brandmark */
.hero.center{text-align:center;padding-top:52px;}
.hero.center .eyebrow{justify-content:center;}
.hero.center h1{margin-inline:auto;max-width:20ch;}
.hero.center .hero-sub{margin-inline:auto;}
.hero.center .hero-cta{justify-content:center;}
.hero.center .microtrust{justify-content:center;}
.brandmark{width:min(560px,86vw);height:auto;margin:0 auto 30px;border-radius:var(--r-md);filter:drop-shadow(0 10px 40px color-mix(in srgb,var(--machine) 26%,transparent));}

/* vídeo VSL */
.video-slot{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:var(--r-md);border:1px solid var(--line-2);background:linear-gradient(158deg,var(--panel-2),var(--panel));box-shadow:0 30px 80px -34px color-mix(in srgb,var(--machine) 55%,transparent);}
.video-slot iframe,.video-slot video,.video-slot>img{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover;}
.video-ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:18px;background:radial-gradient(ellipse at 50% 38%,color-mix(in srgb,var(--machine) 14%,transparent),transparent 60%);}
.video-ph .play{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:var(--machine);animation:pulse 2.6s var(--ease) infinite;}
.video-ph .play svg{width:26px;height:26px;fill:var(--ink);margin-left:4px;}
.video-ph .lbl{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--machine-lit);}
.video-ph .hint{color:var(--ash-2);font-size:12px;max-width:34ch;}
.video-ribbon{position:absolute;top:12px;left:12px;z-index:3;background:rgba(10,10,11,.7);backdrop-filter:blur(6px);border:1px solid var(--line-2);color:var(--chalk);font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:6px 11px;border-radius:100px;display:flex;align-items:center;gap:7px;}
.video-ribbon .dot{width:7px;height:7px;border-radius:50%;background:var(--red);animation:blink 1.4s ease infinite;}
@keyframes blink{50%{opacity:.3}}

/* contadores */
.stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:52px;background:linear-gradient(180deg,var(--panel),transparent);}
.stats-in{display:grid;grid-template-columns:repeat(4,1fr);}
.stat{padding:30px 26px;border-right:1px solid var(--line);}
.stat:last-child{border-right:none;}
.stat .big{font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(30px,4vw,44px);letter-spacing:-.04em;line-height:1;color:var(--chalk);font-variant-numeric:tabular-nums;}
.stat .lbl{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ash);margin-top:10px;}

/* seções */
section{padding:78px 0;}
.sec-head{margin-bottom:44px;max-width:64ch;}
.sec-head.center{margin-inline:auto;text-align:center;}
.sec-head.center .eyebrow{justify-content:center;}
.sec-head h2{font-size:clamp(28px,4vw,44px);margin-top:16px;}
.sec-head p{color:var(--ash);margin-top:16px;font-size:17px;}
.panel{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}

/* dores */
.pains{display:grid;grid-template-columns:repeat(3,1fr);gap:0;}
.pain{padding:0 30px;border-left:2px solid var(--machine);}
.pain:first-child{padding-left:0;border-left:none;}
.pain .picon{width:38px;height:38px;color:var(--machine);margin-bottom:16px;}
.pain .n{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.14em;color:var(--machine);}
.pain h3{font-size:22px;margin:10px 0 10px;}
.pain p{color:var(--ash);font-size:15px;}

/* grade de máquinas (home) */
.machines{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.machine-card{position:relative;display:flex;flex-direction:column;padding:30px 26px 26px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);transition:transform .22s var(--ease),border-color .22s,background .22s;overflow:hidden;}
.machine-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--m);}
.machine-card::after{content:'';position:absolute;right:-40%;top:-60%;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--m) 22%,transparent) 0%,transparent 70%);opacity:0;transition:opacity .3s;}
.machine-card:hover{transform:translateY(-5px);border-color:var(--m);background:var(--panel-2);}
.machine-card:hover::after{opacity:1;}
.machine-card>*{position:relative;z-index:1;}
.machine-card .num{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.12em;color:var(--m);}
.machine-card .card-logo{height:30px;width:auto;margin:16px 0 4px;}
.machine-card h3{font-size:25px;margin:14px 0 10px;}
.machine-card p{color:var(--ash);font-size:14.5px;flex:1;}
.machine-card .cprice{margin-top:18px;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ash);}
.machine-card .cprice b{font-family:'Archivo',sans-serif;font-weight:800;font-size:19px;color:var(--chalk);letter-spacing:-.02em;}
.machine-card .go{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--m);transition:gap .2s;}
.machine-card:hover .go{gap:13px;}
.go svg{width:14px;height:14px;}

/* prova (home) */
.proof{display:grid;grid-template-columns:repeat(4,1fr);}
.proof div{padding:0 26px;border-left:1px solid var(--line);}
.proof div:first-child{padding-left:0;border-left:none;}
.proof .big{font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(30px,4.6vw,46px);letter-spacing:-.035em;font-variant-numeric:tabular-nums;}
.proof .lbl{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ash);margin-top:8px;}

/* POR DENTRO — value stack */
.inside{background:radial-gradient(ellipse at 50% -10%,color-mix(in srgb,var(--machine) 10%,transparent),transparent 55%);}
.stack{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.item{position:relative;background:linear-gradient(160deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:var(--r-md);padding:26px 24px 24px;overflow:hidden;transition:transform .22s var(--ease),border-color .22s;}
.item:hover{transform:translateY(-4px);border-color:var(--machine);}
.item::after{content:'';position:absolute;right:-40%;top:-60%;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--machine) 16%,transparent),transparent 70%);opacity:0;transition:opacity .3s;}
.item:hover::after{opacity:1;}
.item>*{position:relative;z-index:1;}
.item .top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;}
.item .ic{width:46px;height:46px;border-radius:11px;display:grid;place-items:center;background:var(--m-soft);border:1px solid color-mix(in srgb,var(--machine) 30%,transparent);color:var(--machine-lit);flex:0 0 auto;}
.item .ic svg{width:23px;height:23px;}
.incluso{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--good);background:rgba(52,199,122,.1);border:1px solid rgba(52,199,122,.32);padding:5px 9px;border-radius:100px;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;}
.incluso svg{width:11px;height:11px;}
.item h3{font-size:18.5px;}
.item .kind{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--machine);margin-top:4px;}
.item p{color:var(--ash);font-size:14px;margin-top:11px;}
.item .val{margin-top:16px;font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--ash-2);}
.item.bonus{border-color:color-mix(in srgb,var(--machine) 45%,transparent);background:linear-gradient(160deg,color-mix(in srgb,var(--machine) 9%,transparent),var(--panel));}
.item.bonus .kind{color:var(--machine-lit);}
.badge-new{position:absolute;top:0;right:0;background:var(--machine);color:var(--ink);font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;padding:5px 12px;border-bottom-left-radius:10px;z-index:2;}
.stack-sum{margin-top:22px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;background:var(--panel-2);border:1px solid var(--line-2);border-radius:var(--r-md);padding:22px 26px;}
.stack-sum .s-left{font-family:'IBM Plex Mono',monospace;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ash);}
.stack-sum .s-total{font-family:'Archivo',sans-serif;font-weight:800;font-size:22px;color:var(--chalk);}
.stack-sum .s-total s{color:var(--ash-2);font-weight:600;}
.stack-sum .arrow{color:var(--machine);font-size:20px;}
.stack-sum .s-now{font-family:'Archivo',sans-serif;font-weight:900;font-size:34px;letter-spacing:-.03em;color:var(--machine-lit);line-height:1;}
.stack-sum .s-now small{font-size:.4em;color:var(--ash);font-weight:600;letter-spacing:0;}

/* preview da plataforma */
.preview{margin-top:66px;}
.preview-head{text-align:center;margin-bottom:34px;}
.preview-head h3{font-size:clamp(22px,3vw,30px);}
.preview-head p{color:var(--ash);margin-top:12px;font-size:15px;max-width:56ch;margin-inline:auto;}
.frames{display:grid;grid-template-columns:1.3fr .85fr;gap:18px;}
.frame{background:var(--panel-2);border:1px solid var(--line-2);border-radius:var(--r-md);overflow:hidden;box-shadow:0 26px 60px -34px rgba(0,0,0,.8);}
.frame .bar{display:flex;align-items:center;gap:7px;padding:11px 14px;border-bottom:1px solid var(--line);background:var(--panel-3);}
.frame .bar i{width:10px;height:10px;border-radius:50%;background:var(--line-2);display:block;}
.frame .bar i:nth-child(1){background:#ff5f57;}.frame .bar i:nth-child(2){background:#febc2e;}.frame .bar i:nth-child(3){background:#28c840;}
.frame .bar .u{margin-left:10px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--ash-2);letter-spacing:.06em;}
.frame .screen{aspect-ratio:16/10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:24px;background:radial-gradient(ellipse at 50% 30%,color-mix(in srgb,var(--machine) 10%,transparent),var(--panel));color:var(--ash-2);}
.frame.tall .screen{aspect-ratio:9/13;}
.frame .screen svg{width:44px;height:44px;color:var(--machine);opacity:.8;}
.frame .screen .cap{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--machine-lit);}
.frame .screen .cap2{font-size:12.5px;max-width:32ch;}

/* módulos */
.modules{border-top:1px solid var(--line);}
.module{display:grid;grid-template-columns:60px 1fr auto;gap:22px;align-items:baseline;padding:26px 0;border-bottom:1px solid var(--line);transition:background .2s;}
.module:hover{background:var(--panel);}
.module .idx{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--machine);letter-spacing:.08em;}
.module h3{font-size:19px;}
.module p{color:var(--ash);font-size:14.5px;margin-top:6px;}
.module .tag{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ash);white-space:nowrap;}

/* depoimentos */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.tile{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:24px;display:flex;flex-direction:column;gap:14px;}
.tile .q{font-size:15px;line-height:1.6;color:var(--chalk);}
.tile .who{display:flex;align-items:center;gap:12px;margin-top:auto;}
.tile .av{width:44px;height:44px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;font-family:'Archivo',sans-serif;font-weight:800;font-size:16px;color:var(--ink);background:linear-gradient(150deg,var(--machine-lit),var(--machine-deep));}
.tile .nm{font-family:'Archivo',sans-serif;font-weight:700;font-size:14.5px;}
.tile .ro{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ash-2);margin-top:2px;}
.tile .stars svg{width:14px;height:14px;}

/* pra quem é */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:32px;}
.card.yes{border-color:rgba(52,199,122,.3);}
.card h3{font-size:20px;margin-bottom:18px;display:flex;align-items:center;gap:10px;}
.card h3 svg{width:22px;height:22px;}
.card.yes h3 svg{color:var(--good);}.card.no h3 svg{color:var(--ash-2);}
.card li{list-style:none;padding:12px 0 12px 30px;position:relative;font-size:15px;border-bottom:1px solid var(--line);color:var(--chalk);}
.card li:last-child{border-bottom:none;}
.card li::before{position:absolute;left:0;top:11px;font-family:'IBM Plex Mono',monospace;font-size:15px;font-weight:700;}
.card.yes li::before{content:'+';color:var(--good);}
.card.no li{color:var(--ash);}
.card.no li::before{content:'−';color:var(--ash-2);}

/* oferta */
.offer{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.offer-box{position:relative;overflow:hidden;background:linear-gradient(158deg,var(--panel-2),var(--panel));border:1px solid var(--machine-deep);border-radius:var(--r-xl);padding:52px 48px;display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center;}
.offer-box::after{content:'';position:absolute;right:-8%;top:-60%;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--machine) 18%,transparent),transparent 68%);pointer-events:none;}
.offer-box>*{position:relative;z-index:1;}
.offer-box .lead{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--machine);}
.offer-box h2{font-size:clamp(26px,3.4vw,36px);margin:14px 0 18px;}
.pricelist{list-style:none;display:flex;flex-direction:column;gap:11px;margin:0 0 6px;}
.pricelist li{display:flex;align-items:center;gap:11px;font-size:14.5px;color:var(--chalk);}
.pricelist li svg{width:17px;height:17px;color:var(--good);flex:0 0 auto;}
.pricecard{background:var(--void);border:1px solid var(--line-2);border-radius:var(--r-lg);padding:34px 30px;text-align:center;}
.pricecard .from{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--ash-2);}
.pricecard .from s{color:var(--ash-2);}
.pricecard .val{font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(48px,7vw,72px);line-height:1;letter-spacing:-.04em;color:var(--chalk);margin:8px 0;}
.pricecard .val .cur{font-size:.4em;vertical-align:top;color:var(--machine);margin-right:2px;}
.pricecard .terms{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ash);}
.pricecard .terms b{color:var(--machine-lit);}
.pricecard .btn{margin-top:22px;}
.pricecard .secure{margin-top:16px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:var(--ash-2);}
.pricecard .secure svg{width:14px;height:14px;}

/* combo cross-sell */
.combo{margin-top:26px;background:linear-gradient(100deg,rgba(216,30,30,.08),var(--panel-2));border:1px dashed var(--line-2);border-radius:var(--r-lg);padding:28px 32px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;}
.combo .c-txt h3{font-size:20px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.combo .c-txt .pill{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;background:var(--red);color:#fff;padding:4px 10px;border-radius:100px;}
.combo .c-txt p{color:var(--ash);font-size:14px;margin-top:8px;max-width:52ch;}
.combo .c-price{text-align:right;}
.combo .c-price .v{font-family:'Archivo',sans-serif;font-weight:900;font-size:32px;letter-spacing:-.03em;color:var(--chalk);}
.combo .c-price .v .cur{font-size:.5em;color:var(--machine);}
.combo .c-price a{display:inline-block;margin-top:8px;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--machine-lit);border-bottom:1px solid var(--machine-deep);padding-bottom:2px;}

/* combo destaque (home) */
.combo-hero{position:relative;overflow:hidden;background:linear-gradient(150deg,color-mix(in srgb,var(--machine) 12%,var(--panel-2)),var(--panel));border:1px solid var(--machine-deep);border-radius:var(--r-xl);padding:0;display:grid;grid-template-columns:1.1fr .9fr;gap:0;align-items:stretch;}
.combo-hero .ch-l{padding:48px 44px;}
.combo-hero .ch-r{padding:48px 44px;border-left:1px solid var(--line-2);background:var(--void);display:flex;flex-direction:column;justify-content:center;text-align:center;}
.combo-hero .ch-badge{display:inline-block;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;background:var(--red);color:#fff;padding:6px 12px;border-radius:100px;margin-bottom:16px;}
.combo-hero h2{font-size:clamp(26px,3.6vw,40px);}
.combo-hero .ch-l>p{color:var(--ash);margin-top:16px;font-size:16px;max-width:46ch;}
.combo-hero .ch-list{list-style:none;display:flex;flex-direction:column;gap:12px;margin-top:24px;}
.combo-hero .ch-list li{display:flex;align-items:center;gap:12px;font-size:15px;}
.combo-hero .ch-list .dot{width:26px;height:26px;border-radius:7px;flex:0 0 auto;display:grid;place-items:center;color:var(--ink);font-family:'Archivo',sans-serif;font-weight:800;font-size:12px;}
.combo-hero .from{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--ash-2);}
.combo-hero .from s{color:var(--ash-2);}
.combo-hero .price{font-family:'Archivo',sans-serif;font-weight:900;font-size:clamp(52px,8vw,80px);line-height:1;letter-spacing:-.04em;color:var(--chalk);margin:8px 0 4px;}
.combo-hero .price .cur{font-size:.36em;vertical-align:top;color:var(--machine);}
.combo-hero .terms{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ash);margin-bottom:20px;}
.combo-hero .terms b{color:var(--machine-lit);}

/* garantia */
.guarantee{display:flex;gap:28px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:34px 38px;flex-wrap:wrap;}
.guarantee .seal{width:96px;height:96px;border-radius:50%;flex:0 0 auto;display:grid;place-items:center;background:radial-gradient(circle at 50% 35%,rgba(52,199,122,.18),var(--panel-2));border:2px solid rgba(52,199,122,.4);color:var(--good);}
.guarantee .seal svg{width:44px;height:44px;}
.guarantee .g-txt{flex:1;min-width:260px;}
.guarantee h3{font-size:22px;margin-bottom:10px;}
.guarantee p{color:var(--ash);font-size:15px;max-width:62ch;}

/* faq */
.faq details{border-bottom:1px solid var(--line);padding:22px 0;}
.faq summary{font-family:'Archivo',sans-serif;font-weight:700;font-size:17px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:center;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:'+';font-family:'IBM Plex Mono',monospace;color:var(--machine);font-size:22px;}
.faq details[open] summary::after{content:'−';}
.faq p{color:var(--ash);font-size:15px;margin-top:14px;max-width:74ch;}

/* cta final */
.finalcta{text-align:center;background:radial-gradient(ellipse at 50% 120%,color-mix(in srgb,var(--machine) 16%,transparent),transparent 60%);}
.finalcta h2{font-size:clamp(30px,5vw,54px);max-width:20ch;margin:0 auto 20px;}
.finalcta p{color:var(--ash);font-size:17px;max-width:52ch;margin:0 auto 32px;}

/* footer */
footer{border-top:1px solid var(--line);padding:46px 0 130px;}
.foot-in{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:flex-start;}
footer .mono{color:var(--ash);}
.foot-links{display:flex;gap:24px;flex-wrap:wrap;}
.foot-links a{color:var(--ash);}
.foot-links a:hover{color:var(--machine);}

/* dock CTA */
.dock{position:fixed;left:0;right:0;bottom:0;z-index:90;background:rgba(13,13,15,.92);backdrop-filter:blur(16px);border-top:1px solid var(--line-2);transform:translateY(110%);transition:transform .3s var(--ease);}
.dock.show{transform:none;}
.dock-in{display:flex;align-items:center;gap:18px;padding:12px 0;}
.dock .d-txt{display:flex;flex-direction:column;line-height:1.2;}
.dock .d-txt .d1{font-family:'Archivo',sans-serif;font-weight:800;font-size:15px;}
.dock .d-txt .d2{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ash);margin-top:3px;}
.dock .d-price{margin-left:auto;font-family:'Archivo',sans-serif;font-weight:900;font-size:22px;color:var(--machine-lit);letter-spacing:-.02em;}
.dock .d-price .cur{font-size:.55em;color:var(--machine);}
.dock .btn{flex:0 0 auto;}

/* reveal */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease);}
.reveal.in{opacity:1;transform:none;}

/* responsivo */
@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr;gap:34px;}
  .logo-title img{max-width:min(320px,80%);max-height:88px;}
  .offer-box{grid-template-columns:1fr;gap:30px;padding:38px 26px;}
  .combo-hero{grid-template-columns:1fr;}
  .combo-hero .ch-r{border-left:none;border-top:1px solid var(--line-2);}
  .frames{grid-template-columns:1fr;}
  .frame.tall{max-width:340px;margin-inline:auto;}
}
@media (max-width:860px){
  .stats-in{grid-template-columns:1fr 1fr;}
  .stat:nth-child(2){border-right:none;}
  .stat:nth-child(1),.stat:nth-child(2){border-bottom:1px solid var(--line);}
  .stack,.tiles,.machines{grid-template-columns:1fr;}
  .pains{grid-template-columns:1fr;}
  .pain{padding:24px 0 0;border-left:none;border-top:2px solid var(--machine);}
  .pain:first-child{padding-top:0;border-top:none;}
  .proof{grid-template-columns:1fr 1fr;gap:26px 0;}
  .proof div{padding-left:0;border-left:none;}
  .fit{grid-template-columns:1fr;}
  .module{grid-template-columns:40px 1fr;}
  .module .tag{grid-column:2;}
  .nav-links a.hide-sm{display:none;}
  section{padding:56px 0;}
  .stack-sum{flex-direction:column;align-items:stretch;text-align:center;gap:12px;}
  .combo{flex-direction:column;align-items:stretch;text-align:center;}
  .combo .c-price{text-align:center;}
  .guarantee{flex-direction:column;text-align:center;}
  .combo-hero .ch-l,.combo-hero .ch-r{padding:34px 26px;}
  .dock .d-txt{display:none;}
  .dock .d-price{margin-left:0;}
  .dock .btn{flex:1;}
}
@media (max-width:430px){
  .nav-links{gap:13px;}
  .nav-links a{font-size:10px;letter-spacing:.05em;}
  .brand{font-size:15px;}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;}
  .toolpath path{stroke-dashoffset:0;opacity:.34;}
  .toolpath .bit{opacity:1;}
  .reveal{opacity:1;transform:none;}
  .ticker div{animation:none;}
}

/* ── Acréscimos da versão com painel ─────────────────────────
   Classes que substituem os style="" que existiam soltos no HTML
   e o que passou a ser opcional (foto de aluno, print real da
   área de membros, vídeo na home). */
.h1-sub{font-size:clamp(28px,4vw,44px);margin-top:22px;}
.secure-center{margin-top:16px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:var(--ash-2);}
.secure-center svg{width:14px;height:14px;}
.tile .av-foto{overflow:hidden;background:var(--panel-3);}
.tile .av-foto img{width:100%;height:100%;object-fit:cover;display:block;}
.frame .screen-img{aspect-ratio:16/10;padding:0;display:block;overflow:hidden;background:var(--panel);}
.frame.tall .screen-img{aspect-ratio:9/13;}
.frame .screen-img img{width:100%;height:100%;object-fit:cover;display:block;}
.video-solo{max-width:760px;margin:0 auto 32px;}
