:root{
  --navy:#0b1a2e; --navy-2:#10263f; --navy-3:#183556;
  --ouro:#e0b354; --ouro-2:#f3d48a; --ouro-esc:#a87c22;
  --bg:#f6f4ef; --card:#ffffff; --fg:#14202e; --mute:#5b6878; --linha:#e3dfd5;
  --ok:#1f8a5b; --ok-bg:#e5f4ec; --erro:#b4382c; --erro-bg:#fbe9e6; --aviso-bg:#fbf3df;
  --raio:14px; --sombra:0 1px 2px rgba(11,26,46,.06),0 8px 24px rgba(11,26,46,.06);
  --serif:"Playfair Display",Georgia,serif; --sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video,iframe{max-width:100%;display:block}
a{color:var(--navy-3)}
h1,h2,h3{font-family:var(--serif);line-height:1.15;margin:0 0 .5em;color:var(--navy);hyphens:none;overflow-wrap:normal}
h1{font-size:clamp(34px,5.4vw,58px)} h2{font-size:clamp(26px,3.6vw,38px)} h3{font-size:20px}
p{margin:0 0 1em}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.estreito{max-width:780px}
.ouro{color:var(--ouro)}
.mute{color:var(--mute)}
.pequeno{font-size:13.5px}
.selo{display:inline-block;font:600 11.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ouro-esc);margin-bottom:12px}
.escuro .selo{color:var(--ouro)}

/* ---------- topo ---------- */
.topo{position:sticky;top:0;z-index:50;background:rgba(11,26,46,.96);backdrop-filter:blur(8px);border-bottom:1px solid rgba(224,179,84,.18)}
.topo .wrap{display:flex;align-items:center;gap:18px;height:64px}
.marca{display:flex;align-items:center;gap:8px;text-decoration:none;color:#fff;font-weight:700;white-space:nowrap}
.marca img{width:34px;height:34px;border-radius:50%;background:#050c18}
.marca .mais{color:var(--ouro);font-weight:400}
.marca span.txt{font-size:14px;line-height:1.1}
.menu{display:flex;gap:4px;margin-left:auto;align-items:center}
.menu a{color:#d9dfe7;text-decoration:none;font-size:14.5px;padding:8px 11px;border-radius:8px}
.menu a:hover,.menu a[aria-current=page]{color:#fff;background:rgba(255,255,255,.07)}
.menu a.cta{background:var(--ouro);color:var(--navy);font-weight:600}
.menu a.cta:hover{background:var(--ouro-2)}
.hamb{display:none;margin-left:auto;background:none;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:8px;padding:6px 10px;font-size:15px}
@media (max-width:880px){
  .hamb{display:block}
  .menu{display:none;position:absolute;left:0;right:0;top:64px;background:var(--navy);flex-direction:column;align-items:stretch;padding:10px 16px 16px;gap:2px;border-bottom:1px solid rgba(224,179,84,.25)}
  .menu.aberto{display:flex}
  .menu a{padding:12px}
}

/* ---------- blocos ---------- */
.escuro{background:radial-gradient(1200px 500px at 85% -10%,#1d3f66 0%,transparent 60%),var(--navy);color:#dfe5ec}
.escuro h1,.escuro h2,.escuro h3{color:#fff}
.secao{padding:72px 0}
.secao.curta{padding:44px 0}
.hero{padding:84px 0 76px}
.hero p.lead{font-size:19px;max-width:640px;color:#c9d2dc}
.hero .logos{display:flex;align-items:center;gap:14px;margin-bottom:26px}
.hero .logos img{width:64px;height:64px;border-radius:50%;background:#050c18;border:1px solid rgba(224,179,84,.35)}
.hero .logos b{color:var(--ouro);font-size:22px}
.botoes{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 15.5px/1 var(--sans);padding:14px 22px;border-radius:10px;border:0;cursor:pointer;text-decoration:none;background:var(--ouro);color:var(--navy);transition:background .15s}
.btn:hover{background:var(--ouro-2)}
.btn.sec{background:transparent;color:inherit;border:1px solid currentColor}
.escuro .btn.sec{color:#fff;border-color:rgba(255,255,255,.4)}
.btn.navy{background:var(--navy);color:#fff}
.btn.navy:hover{background:var(--navy-3)}
.btn.peq{padding:9px 14px;font-size:14px}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn.largo{width:100%}

.grade{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.g2,.g3,.g4{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid var(--linha);border-radius:var(--raio);padding:24px;box-shadow:var(--sombra);min-width:0}
.card h3{margin-bottom:.35em}
.card .ico{width:42px;height:42px;border-radius:10px;background:var(--navy);color:var(--ouro);display:grid;place-items:center;margin-bottom:14px}
.card .ico svg{width:22px;height:22px}
.card a.mais{font-weight:600;text-decoration:none;color:var(--navy-3)}
.escuro .card{background:var(--navy-2);border-color:rgba(255,255,255,.08);box-shadow:none;color:#d4dbe4}
.passos{counter-reset:p;list-style:none;padding:0;margin:0}
.passos li{counter-increment:p;position:relative;padding:0 0 22px 58px}
.passos li::before{content:counter(p);position:absolute;left:0;top:-2px;width:40px;height:40px;border-radius:50%;background:var(--ouro);color:var(--navy);display:grid;place-items:center;font:700 17px var(--sans)}
.passos li b{display:block;color:var(--navy);font-size:17px}
.escuro .passos li b{color:#fff}

.aviso{background:var(--aviso-bg);border:1px solid #ecd9a6;border-radius:12px;padding:16px 18px;font-size:14.5px;color:#5a4a20}
.aviso b{color:#3d3010}
.chip{display:inline-block;font-size:12.5px;font-weight:600;padding:3px 9px;border-radius:99px;background:#eef1f5;color:var(--navy-3)}
.chip.ok{background:var(--ok-bg);color:var(--ok)}
.chip.erro{background:var(--erro-bg);color:var(--erro)}
.chip.ouro{background:#f7ecd2;color:var(--ouro-esc)}
.chip.azul{background:#e3edf8;color:#1d4f86}

/* ---------- planos ---------- */
.port{display:flex;flex-direction:column}
.port-topo{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.port-topo .autor{font-size:12.5px;color:var(--navy-3);opacity:.8}
.port .destaque{font-size:13.5px;background:#fff7e0;border-left:3px solid #e0a800;border-radius:6px;padding:8px 10px;margin:-6px 0 16px;color:#5a4500}
.port .robos{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 18px}
.port .robos span{font-size:13px;background:#f1efe9;border-radius:6px;padding:3px 8px}
.precos{display:grid;gap:10px;margin-top:auto}
.preco{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--linha);border-radius:10px;padding:12px 14px}
.preco b{font-size:16px}
.preco .v{font-weight:700;color:var(--navy);white-space:nowrap}

/* ---------- formulários ---------- */
.campo{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;font-size:14px;font-weight:600;color:var(--navy)}
.campo input,.campo select{font:16px var(--sans);padding:12px 13px;border-radius:9px;border:1px solid #cfd6df;background:#fff;color:var(--fg);width:100%}
.campo input:focus,.campo select:focus{outline:2px solid var(--ouro);outline-offset:1px;border-color:var(--ouro)}
.campo small{font-weight:400;color:var(--mute)}
.abas{display:flex;background:#eceae3;border-radius:10px;padding:4px;margin-bottom:18px}
.abas button{flex:1;border:0;background:none;padding:10px;border-radius:8px;font:600 14.5px var(--sans);cursor:pointer;color:var(--mute)}
.abas button[aria-pressed=true]{background:#fff;color:var(--navy);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.msg{border-radius:9px;padding:11px 13px;font-size:14.5px;margin-bottom:14px}
.msg.erro{background:var(--erro-bg);color:var(--erro)}
.msg.ok{background:var(--ok-bg);color:var(--ok)}

/* ---------- tabelas ---------- */
.tabela{width:100%;border-collapse:collapse;font-size:14.5px}
.tabela th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--mute);padding:8px 10px;border-bottom:1px solid var(--linha)}
.tabela td{padding:11px 10px;border-bottom:1px solid var(--linha);vertical-align:middle}
.rolavel{overflow-x:auto}

/* ---------- vídeo / curso ---------- */
.player{border-radius:16px;overflow:hidden;background:#000;box-shadow:0 20px 50px rgba(0,0,0,.35);aspect-ratio:16/9}
.player video{width:100%;height:100%}
.capitulos{list-style:none;margin:0;padding:0;columns:2;column-gap:28px}
@media (max-width:620px){.capitulos{columns:1}}
.capitulos li{break-inside:avoid}
.capitulos button{all:unset;cursor:pointer;display:flex;gap:12px;padding:8px 0;border-bottom:1px dashed var(--linha);width:100%}
.capitulos button:hover span{color:var(--ouro-esc)}
.capitulos time{font:600 13px/1.6 ui-monospace,Menlo,monospace;color:var(--ouro-esc);min-width:44px}

/* ---------- simulador ---------- */
.moldura{border:0;width:100%;height:calc(100vh - 64px);min-height:600px;background:#fff}

/* ---------- rodapé ---------- */
.rodape{background:#071222;color:#9aa7b6;font-size:14px;padding:44px 0 30px}
.rodape .wrap{display:grid;gap:18px}
.rodape a{color:#c9d2dc}
.rodape .legal{font-size:12.5px;line-height:1.6;border-top:1px solid rgba(255,255,255,.08);padding-top:18px}

/* ---------- área de cliente ---------- */
.painel-topo{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between;margin-bottom:24px}
.lista{display:grid;gap:10px}
.item{display:flex;align-items:center;gap:14px;justify-content:space-between;border:1px solid var(--linha);border-radius:10px;padding:12px 14px;background:#fff;flex-wrap:wrap}
.item .nome{font-weight:600}
.vazio{color:var(--mute);font-size:14.5px;padding:10px 0}
.oculto{display:none!important}
.mockup{border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#0d1726;padding:14px;box-shadow:0 18px 40px rgba(0,0,0,.35)}
@media (max-width:620px){.hero h1 br{display:none}}
[hidden]{display:none!important}
.radar-plano{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:center}
@media (max-width:760px){.radar-plano{grid-template-columns:1fr}}
