:root{--dk:#120B2E;--dk2:#1C1440;--lt:#EDEAFB;--lt2:#F7F5FE;--card:#FBFAFE;--bd:#CFC9EE;--mu:#4D4575;--mu2:#D6D1F2;--b:#2F7BFF;--v:#7B4DFF;--g:#2EE6A6;--gd:#0F8A62;--wa:#25D366}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Manrope',system-ui,sans-serif;color:var(--dk);background:#fff;line-height:1.5;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,.sora{font-family:'Sora',system-ui,sans-serif;letter-spacing:-0.04em;line-height:1.06}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.eyebrow{font-family:'JetBrains Mono',monospace;font-size:14px;letter-spacing:.16em;text-transform:uppercase;color:var(--v)}
.dark .eyebrow,.eb-g{color:var(--g)}
section{padding:96px 0;position:relative;overflow:hidden}
.dark{background:var(--dk);color:#F3F1FF}
.h2{font-size:clamp(32px,4.4vw,52px);font-weight:700;max-width:820px;margin-top:16px}
.lead{font-size:clamp(17px,1.6vw,21px);color:var(--mu2)}
/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:18px 28px;font-family:'Sora',sans-serif;font-weight:700;font-size:18px;cursor:pointer;border:2px solid transparent;transition:transform .15s,box-shadow .15s;white-space:nowrap}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(18,11,46,.18)}
.btn-g{background:var(--g);color:var(--dk)}
.btn-dk{background:var(--dk);color:#F3F1FF}
.btn-o{border-color:#F3F1FF;color:#F3F1FF}
.btn-wa{background:var(--wa);color:#fff}
.btn-sm{padding:12px 18px;font-size:15px}
.ico{width:22px;height:22px;flex:none}
/* topo */
.top{position:sticky;top:0;z-index:50;background:var(--dk);border-bottom:1px solid #2A2350}
.top .wrap{height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:flex;align-items:center;gap:14px;font-family:'Sora',sans-serif;font-weight:700;font-size:40px;letter-spacing:-.04em;color:#F3F1FF;line-height:1}
.logo svg{width:58px;height:58px;flex:none}
footer .logo{font-size:36px}footer .logo svg{width:52px;height:52px}
.nav{display:flex;gap:30px;font-weight:600;color:var(--mu2)}
.nav a:hover{color:var(--g)}
.burger{display:none;background:none;border:0;color:#F3F1FF;font-size:30px;cursor:pointer;line-height:1}
.menu-m{display:none}
/* hero */
.hero{padding:72px 0 0;background:var(--dk);color:#F3F1FF}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end}
.hero h1{font-size:clamp(40px,5.6vw,76px);font-weight:700}
.hero h1 span{color:var(--g)}
.hero-txt{display:flex;flex-direction:column;gap:26px;padding-bottom:80px}
.ctas{display:flex;gap:14px;flex-wrap:wrap}
.trust{font-size:15px;color:#B9B2E0}
.hero-img{position:relative;align-self:end}
.hero-img::before{content:"";position:absolute;left:6%;right:-4%;top:6%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 30% 30%,var(--v),var(--b))}
.hero-img img{position:relative;width:100%;max-width:540px;margin:0 auto}
.selo{position:absolute;right:0;bottom:60px;background:#F3F1FF;color:var(--dk);border-radius:18px;padding:18px 20px;box-shadow:0 20px 50px rgba(0,0,0,.35);max-width:280px}
.selo b{display:block;font-family:'Sora',sans-serif;font-size:20px;line-height:1.2;margin:4px 0}
.selo small{color:var(--mu);font-size:14px}
.selo .eyebrow{font-size:12px}
/* números */
.nums{background:var(--dk2);color:#F3F1FF;padding:56px 0}
.nums .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.nums b{display:block;font-family:'Sora',sans-serif;font-size:clamp(30px,3.4vw,46px);letter-spacing:-.04em}
.nums .wrap>div:first-child b{color:var(--g)}
.nums span{color:var(--mu2);font-size:16px}
/* cards */
.grid{display:grid;gap:22px;margin-top:48px}
.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--card);border:1px solid var(--bd);border-radius:20px;padding:30px;display:flex;flex-direction:column;gap:14px}
.card h3{font-size:24px;font-weight:700}
.card p,.card li{color:var(--mu);font-size:17px}
.card ul{padding-left:20px;line-height:1.7}
.num{font-family:'Sora',sans-serif;font-weight:700;font-size:40px;color:var(--v)}
.badge{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex:none}
.badge svg{width:26px;height:26px}
.card-h{display:flex;align-items:center;gap:14px}
.card-h h3{font-size:22px}
.link-wa{font-family:'Sora',sans-serif;font-weight:700;font-size:16px;color:var(--v);margin-top:auto}
.link-wa:hover{text-decoration:underline}
.bg-lt{background:var(--lt)}.bg-lt2{background:var(--lt2)}
.arc{position:absolute;right:60px;top:50px;width:220px;opacity:.9;pointer-events:none}
/* método */
.metodo{display:flex;gap:16px;align-items:stretch;margin-top:48px}
.metodo .card{flex:1;background:#fff;border-top-width:6px}
.seta{display:flex;align-items:center;font-family:'Sora',sans-serif;font-size:32px;color:var(--v);font-weight:700}
.center{text-align:center}.center .h2{margin-left:auto;margin-right:auto}
/* diferencial */
.dif{display:grid;grid-template-columns:44% 1fr;padding:0;background:var(--dk);color:#F3F1FF}
.dif img{width:100%;height:100%;object-fit:cover;min-height:420px}
.dif-txt{padding:80px 64px;display:flex;flex-direction:column;gap:22px;justify-content:center}
.checks{display:flex;flex-direction:column;gap:12px;font-size:18px}
.checks li{list-style:none}
.checks li::before{content:"✓  ";color:var(--g);font-weight:700}
/* serviços topo */
.sec-top{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
/* curso */
.curso{background:linear-gradient(110deg,var(--v),var(--b));color:#fff;padding:0}
.curso .wrap{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:end}
.curso-txt{padding:80px 0;display:flex;flex-direction:column;gap:20px}
.curso .eyebrow{color:#fff}
.preco{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.preco b{display:block;font-family:'Sora',sans-serif;font-size:54px;letter-spacing:-.04em;color:var(--g);line-height:1}
.preco small{font-size:15px;opacity:.9}
/* cases */
.case{padding:0;overflow:hidden}
.case-h{height:140px;background:linear-gradient(135deg,var(--dk2),var(--v));display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:700;font-size:26px;color:#fff}
.case-b{padding:24px;display:flex;flex-direction:column;gap:8px}
.case-b .eyebrow{font-size:12px}
/* clientes */
.clientes{display:flex;flex-wrap:wrap;justify-content:center;gap:22px;margin-top:48px}
.cliente{flex:0 1 calc((100% - 44px)/3);padding:0;overflow:hidden}
.cli-logo{height:150px;background:#fff;border-bottom:1px solid var(--bd);display:flex;align-items:center;justify-content:center;padding:24px 32px}
.cli-logo img{max-height:96px;max-width:100%;width:auto;height:auto;object-fit:contain}
.cli-txt{flex-direction:column;gap:2px;background:linear-gradient(135deg,#1E6B3A,#3E9B4F);color:#fff}
.cli-txt span{font-family:'Sora',sans-serif;font-weight:700;font-size:30px;letter-spacing:-.03em}
.cli-txt small{font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:.2em;text-transform:uppercase;opacity:.9}
.cliente h3{font-size:22px}
/* depoimentos */
.deps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:48px}
.dep{background:#fff;gap:12px}
.dep-big{grid-column:1/-1;flex-direction:row;align-items:center;gap:28px;padding:36px 40px;border-left:6px solid var(--g)}
.dep-big p{font-family:'Sora',sans-serif;font-size:26px;line-height:1.35;color:var(--dk);letter-spacing:-.02em;flex:1}
.dep-h{display:flex;align-items:center;gap:12px}
.dep-h b{display:block;font-size:16px}.dep-h small{color:var(--mu);font-size:13px}
.dep-av{width:46px;height:46px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Sora',sans-serif;font-weight:700;font-size:16px}
.stars{color:#F5B400;font-size:18px;letter-spacing:2px}
.dep-big .dep-h,.dep-big .stars{flex:none}
.dep-nota{margin-top:18px;font-size:13px;color:var(--mu)}
/* sobre */
.sobre .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:center}
.sobre-img{position:relative}
.sobre-img::before{content:"";position:absolute;left:4%;right:4%;top:8%;aspect-ratio:1;border-radius:50%;background:#2A2350}
.sobre-img img{position:relative}
.sobre-txt{display:flex;flex-direction:column;gap:20px}
.sobre-txt p{color:var(--mu2);font-size:18px}
.sobre-txt .quote{color:#F3F1FF}
/* passos */
.passos{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:48px}
.passo{display:flex;flex-direction:column;gap:12px}
.passo i{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:700;font-size:24px;color:#fff;font-style:normal}
.passo h3{font-size:22px}.passo p{color:var(--mu);font-size:16px}
/* faq */
.faq .wrap{display:grid;grid-template-columns:360px 1fr;gap:64px}
details{border-bottom:1px solid var(--bd);padding:20px 0}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-family:'Sora',sans-serif;font-weight:600;font-size:20px}
summary::after{content:"+";color:var(--v);font-size:26px;line-height:1}
details[open] summary::after{content:"–"}
details p{color:var(--mu);margin-top:10px}
/* contato */
.contato .wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.contato-txt{display:flex;flex-direction:column;gap:22px}
.contato-txt a{color:var(--g);font-weight:700}
form{background:#fff;color:var(--dk);border-radius:24px;padding:36px;display:flex;flex-direction:column;gap:14px}
form h3{font-size:26px}
label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;color:var(--mu)}
input,select{height:52px;border:1px solid var(--bd);border-radius:10px;background:var(--card);padding:0 16px;font:inherit;font-size:16px;color:var(--dk)}
input:focus,select:focus{outline:2px solid var(--v);border-color:transparent}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lgpd{font-size:13px;color:var(--mu);text-align:center}
.hp{position:absolute;left:-9999px}
/* rodapé */
footer{background:#0B061F;color:var(--mu2);padding:64px 0 120px}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;font-size:15px}
footer b{color:#F3F1FF;display:block;margin-bottom:10px}
footer .col{display:flex;flex-direction:column;gap:8px}
footer a:hover{color:var(--g)}
.foot-bar{grid-column:1/-1;margin-top:28px;padding-top:24px;border-top:1px solid #2A2350;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:14px;color:#9A93BF}
.foot-bar a{color:var(--g);font-weight:600}
.social{display:flex;gap:12px;margin-top:10px}
.social a{width:44px;height:44px;border-radius:50%;border:1px solid #3A3166;display:flex;align-items:center;justify-content:center;color:#F3F1FF;transition:background .15s,color .15s}
.social a:hover{background:var(--g);color:var(--dk);border-color:var(--g)}
.social svg{width:20px;height:20px}
/* whatsapp flutuante e barra mobile */
.wa-float{position:fixed;right:24px;bottom:24px;width:64px;height:64px;border-radius:50%;background:var(--wa);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(0,0,0,.3);z-index:60}
.wa-float svg{width:34px;height:34px}
.barra{display:none}
/* ===== tablet ===== */
@media (max-width:1000px){
  .nav,.top .btn{display:none}
  .burger{display:block}
  .menu-m{position:fixed;inset:100px 0 0 0;background:var(--dk);z-index:49;padding:12px 24px 40px;flex-direction:column;overflow:auto}
  .menu-m.on{display:flex}
  .menu-m a.item{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid #2A2350;font-family:'Sora',sans-serif;font-weight:600;font-size:22px;color:#F3F1FF}
  .menu-m a.item::after{content:"→";color:var(--g)}
  .menu-m .btns{display:flex;flex-direction:column;gap:12px;margin-top:28px}
  .menu-m .tel{margin-top:20px;font-family:'JetBrains Mono',monospace;font-size:13px;color:#B9B2E0}
  .g3,.g4{grid-template-columns:1fr 1fr}
  .cliente{flex-basis:calc((100% - 22px)/2)}
  .deps{grid-template-columns:1fr 1fr}
  .dep-big{flex-direction:column;align-items:flex-start}
  .hero .wrap,.sobre .wrap,.contato .wrap,.faq .wrap,.curso .wrap{grid-template-columns:1fr}
  .hero-txt{padding-bottom:20px}
  .curso .wrap img{max-width:300px}
  .dif{grid-template-columns:1fr}
  .dif-txt{padding:56px 24px}
  .passos{grid-template-columns:1fr 1fr}
  .nums .wrap{grid-template-columns:1fr 1fr}
  footer .wrap{grid-template-columns:1fr 1fr}
  .metodo{flex-direction:column}.seta{justify-content:center;transform:rotate(90deg)}
}
/* ===== celular ===== */
@media (max-width:640px){
  section{padding:64px 0}
  .top .wrap{height:80px}
  .menu-m{inset:80px 0 0 0}
  .logo{font-size:32px;gap:12px}.logo svg{width:46px;height:46px}
  .hero{padding-top:36px}
  .ctas .btn{width:100%}
  .ctas .btn-o{display:none}
  .selo{right:8px;bottom:24px;max-width:220px;padding:14px}
  .selo b{font-size:17px}
  .g3,.g4,.passos{grid-template-columns:1fr}
  .cliente{flex-basis:100%}
  .deps{grid-template-columns:1fr}
  .dep-big p{font-size:21px}
  .dep-big{padding:26px}
  .row2{grid-template-columns:1fr}
  form{padding:24px}
  .arc{display:none}
  .wa-float{display:none}
  .barra{display:grid;position:fixed;left:0;right:0;bottom:0;z-index:60;grid-template-columns:1fr 1fr;gap:10px;padding:12px 14px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--bd);box-shadow:0 -8px 24px rgba(18,11,46,.12)}
  .barra .btn{padding:14px 10px;font-size:15px}
  footer .wrap{grid-template-columns:1fr}
  .btn{white-space:normal;text-align:center}
  .hero-img img{max-width:290px}
  .hero-img::before{left:18%;right:12%}
  .curso .wrap img{display:none}
  .curso-txt{padding:56px 0}
  .sobre-img img{max-width:280px;margin:0 auto}
  .sobre .wrap{gap:28px}
}
