:root{--fundo:#0b0716;--painel:#150f2c;--painel2:#1e1540;--borda:#3a2c66;--texto:#ece6fa;--suave:#b8aedb;--ouro:#e0b84a;--brasa:#b57bff;--magenta:#8a5cf0;--violeta:#7a4be0;--ok:#4fd18b;--erro:#ff6b81;--raio:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(1200px 600px at 70% -10%,#3b1d7a 0,transparent 60%),radial-gradient(900px 500px at 0 20%,#27124f 0,transparent 55%),var(--fundo);color:var(--texto);font:16px/1.6 "Fira Sans","Segoe UI",system-ui,sans-serif;min-height:100vh;display:flex;flex-direction:column}
a{color:var(--ouro)}a:hover{color:#fff}
.topo{display:flex;align-items:center;gap:18px;padding:12px 5vw;border-bottom:1px solid var(--borda);background:rgba(13,7,22,.8);backdrop-filter:blur(8px);position:sticky;top:0;z-index:5;flex-wrap:wrap}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--texto);font-weight:800;letter-spacing:.04em}.marca img{width:56px;height:56px}
nav{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}nav a,nav button{color:var(--suave);text-decoration:none;padding:8px 12px;border-radius:10px;background:none;border:0;font:inherit;cursor:pointer}
nav a:hover,nav button:hover,nav a[aria-current=page]{color:#fff;background:var(--painel2)}
main{flex:1;width:min(1080px,92vw);margin:0 auto;padding:32px 0 56px}
h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.1;margin:.2em 0 .3em;font-weight:800}h2{margin-top:2em;font-size:1.5rem}
.destaque{background:linear-gradient(135deg,var(--ouro),var(--brasa) 45%,var(--magenta));-webkit-background-clip:text;background-clip:text;color:transparent}
.heroi{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:center;padding:24px 0}.heroi img{width:100%;max-width:380px;justify-self:center;border-radius:22px;border:2px solid #b8923a;box-shadow:0 0 0 4px #1c1236,0 0 60px rgba(122,75,224,.55);max-width:420px}
.lead{font-size:1.2rem;color:var(--suave);max-width:60ch}
.botoes{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}
.btn{display:inline-block;padding:13px 22px;border-radius:12px;font-weight:700;text-decoration:none;border:1px solid var(--borda);color:var(--texto);background:var(--painel2);cursor:pointer;font-size:1rem}
.btn.principal{background:linear-gradient(135deg,var(--brasa),var(--magenta));border:0;color:#fff;box-shadow:0 8px 28px rgba(232,30,90,.35)}.btn:hover{filter:brightness(1.12);color:#fff}
.btn[disabled]{opacity:.6;cursor:wait}
.grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.cartao{background:var(--painel);border:1px solid var(--borda);border-radius:var(--raio);padding:20px}.cartao h3{margin:.2em 0 .4em;color:var(--ouro)}
.chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:var(--painel2);border:1px solid var(--borda);font-size:.92rem}
.ponto{width:10px;height:10px;border-radius:50%;background:var(--suave)}.ponto.ok{background:var(--ok);box-shadow:0 0 8px var(--ok)}.ponto.fora{background:var(--erro)}
form{background:var(--painel);border:1px solid var(--borda);border-radius:var(--raio);padding:24px;max-width:520px}
label{display:block;font-weight:600;margin:14px 0 4px}.dica{color:var(--suave);font-size:.9rem;margin:2px 0}
input[type=text],input[type=password],input[type=email]{width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--borda);background:#0f0a1d;color:var(--texto);font:inherit}
input:focus-visible,.btn:focus-visible,nav a:focus-visible,nav button:focus-visible{outline:3px solid var(--ouro);outline-offset:2px}
input[aria-invalid=true]{border-color:var(--erro)}.campo-erro{color:var(--erro);font-size:.92rem;margin:4px 0 0}
.resumo{border:1px solid var(--erro);background:rgba(255,107,129,.08);border-radius:10px;padding:12px 16px;margin-bottom:12px}.resumo ul{margin:.3em 0 0 1.1em;padding:0}
.aviso{border:1px solid var(--ouro);background:rgba(255,198,90,.08);border-radius:10px;padding:12px 16px;margin:16px 0}
.sucesso{border:1px solid var(--ok);background:rgba(79,209,139,.08);border-radius:10px;padding:12px 16px;margin:12px 0}
.isca{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
table{width:100%;border-collapse:collapse;background:var(--painel);border-radius:var(--raio);overflow:hidden}th,td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--borda)}th{color:var(--ouro);background:var(--painel2)}
.num{text-align:right;font-variant-numeric:tabular-nums}.pos{width:3.2em;color:var(--suave)}
ol.passos{counter-reset:p;list-style:none;padding:0}ol.passos li{counter-increment:p;background:var(--painel);border:1px solid var(--borda);border-radius:var(--raio);padding:16px 16px 16px 64px;margin:10px 0;position:relative}
ol.passos li::before{content:counter(p);position:absolute;left:16px;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--brasa),var(--magenta));display:grid;place-items:center;font-weight:800}
code{background:#0f0a1d;border:1px solid var(--borda);padding:2px 7px;border-radius:6px;color:var(--ouro)}
footer{border-top:1px solid var(--borda);padding:22px 5vw;color:var(--suave);font-size:.9rem}footer a{color:var(--suave)}
.pecas{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.pecas figure{margin:0;background:var(--painel);border:1px solid var(--borda);border-radius:var(--raio);padding:10px}.pecas img{width:100%;height:150px;object-fit:contain;background:#0f0a1d;border-radius:8px}.pecas figcaption{font-size:.85rem;color:var(--suave);margin-top:6px}
@media(max-width:760px){.heroi{grid-template-columns:1fr}.heroi img{max-width:240px;order:-1}nav{margin-left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.marca img{filter:drop-shadow(0 0 8px rgba(155,107,255,.6))}

/* ---- home no estilo do site oficial: hero em tela cheia, faixas de seção, cartões de arte ---- */
.hero-full{position:relative;margin:-32px calc(50% - 50vw) 0;padding:72px 5vw 64px;text-align:center;overflow:hidden;isolation:isolate;border-bottom:1px solid var(--borda)}
.hero-full::before{content:"";position:absolute;inset:0;background:url(/static/img/emblema_moldura.jpg?v=3) center/cover;filter:blur(18px) brightness(.38) saturate(1.2);transform:scale(1.15);z-index:-2}
.hero-full::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,7,22,.2),var(--fundo) 98%);z-index:-1}
.hero-full .logo-hero{width:min(380px,70vw);height:auto;filter:drop-shadow(0 0 46px rgba(139,92,246,.7))}
.hero-full h1{margin:.1em 0 .2em;font-size:clamp(1.8rem,4.4vw,3rem)}.hero-full .lead{margin:0 auto}.hero-full .botoes{justify-content:center}
.faixa{display:flex;align-items:baseline;gap:14px;margin:56px 0 18px;border-bottom:1px solid var(--borda);padding-bottom:8px}.faixa h2{margin:0;font-size:1.6rem;letter-spacing:.04em;text-transform:uppercase}
.faixa span{color:var(--suave)}
.noticias{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.noticia{background:var(--painel);border:1px solid var(--borda);border-radius:var(--raio);overflow:hidden}
.noticia .capa{height:130px;background:linear-gradient(135deg,#2a1560,#5b32b8 60%,#b8923a);display:grid;place-items:center;font-size:2.6rem}
.noticia div.t{padding:14px 16px}.noticia small{color:var(--ouro);letter-spacing:.08em;text-transform:uppercase}.noticia h3{margin:.3em 0}
.racas{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.raca{background:var(--painel);border:1px solid var(--borda);border-top:3px solid var(--ouro);border-radius:10px;padding:14px;text-align:center}.raca b{display:block;color:var(--ouro)}.raca span{color:var(--suave);font-size:.92rem}
.chefes{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.chefe{background:linear-gradient(160deg,var(--painel2),var(--painel));border:1px solid var(--borda);border-radius:10px;padding:14px}.chefe b{color:#fff}.chefe small{display:block;color:var(--suave)}
.cta-final{margin:56px 0 0;text-align:center;padding:40px 16px;border:1px solid #b8923a;border-radius:18px;background:radial-gradient(600px 220px at 50% 0,rgba(122,75,224,.35),transparent 70%),var(--painel)}
.hero-full .chip{display:flex;width:max-content;margin:6px auto 10px}

.midia{display:grid;grid-template-columns:2fr 1fr;gap:16px}.midia figure{margin:0;background:var(--painel);border:1px solid var(--borda);border-radius:var(--raio);overflow:hidden}.midia img{width:100%;height:auto;display:block}.midia figcaption{padding:10px 14px;color:var(--suave);font-size:.92rem}@media(max-width:700px){.midia{grid-template-columns:1fr}}

/* ---- home simples: números, promoção, taxas e fotos ---- */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:28px 0 0}
.stats div{background:var(--painel);border:1px solid var(--borda);border-radius:var(--raio);padding:16px;text-align:center}
.stats b{display:block;font-size:1.9rem;color:var(--ouro);font-variant-numeric:tabular-nums}.stats span{color:var(--suave);font-size:.9rem}
.promo{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:24px 0 0;padding:18px 22px;border:1px solid #b8923a;border-radius:var(--raio);background:linear-gradient(135deg,rgba(122,75,224,.28),var(--painel))}
.promo b{display:block;font-size:1.15rem}.promo span{color:var(--suave)}
.taxas{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:14px}
.taxas+.dica{margin-top:14px;text-align:center}
.taxa{background:var(--painel);border:1px solid var(--borda);border-top:3px solid var(--ouro);border-radius:var(--raio);padding:16px}
.taxa small{color:var(--suave);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}.taxa b{display:block;font-size:1.5rem;color:#fff;margin:.15em 0}.taxa span{color:var(--suave);font-size:.9rem}
.fotos{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:auto auto;gap:14px}
.fotos figure{margin:0;background:var(--painel);border:1px solid var(--borda);border-radius:var(--raio);overflow:hidden}.fotos img{width:100%;height:100%;object-fit:cover;display:block}
.fotos .grande{grid-row:span 2}.fotos figcaption{padding:8px 12px;color:var(--suave);font-size:.88rem}
@media(max-width:760px){.fotos{grid-template-columns:1fr}.fotos .grande{grid-row:auto}}

.cta-final .lead{text-align:center}
