/* ============================================================
   Brazino777 BR — landing v2 «Neon Carnival»
   Sem barra lateral, largura total, grade bento, neon magenta/ciano.
   ============================================================ */

:root{
  /* Cores — noite roxa com neon */
  --bg-0:#0a0514;
  --bg-1:#100a1e;
  --bg-2:#160e28;
  --surface:#1b1130;
  --surface-2:#241640;
  --surface-3:#301e54;
  --line:#2c1c4a;
  --line-2:#3d2a66;

  --magenta:#ff2e88;
  --magenta-2:#d40e66;
  --cyan:#22d3ee;
  --cyan-2:#0aa8c2;
  --gold:#ffc93c;
  --gold-2:#e0a412;
  --lime:#3ddc84;

  --glow-m:rgba(255,46,136,.55);
  --glow-c:rgba(34,211,238,.5);
  --glow-g:rgba(255,201,60,.45);

  --text:#f6f2ff;
  --muted:#b3a8cc;
  --muted-2:#7d7099;

  --s-1:4px;  --s-2:8px;  --s-3:12px; --s-4:16px;
  --s-5:24px; --s-6:32px; --s-7:48px; --s-8:72px; --s-9:104px;

  --r:20px; --r-lg:28px; --r-sm:12px; --r-pill:999px;

  --shadow:0 18px 48px -20px rgba(0,0,0,.85);
  --shadow-neon:0 0 0 1px rgba(255,255,255,.05),0 18px 60px -22px var(--glow-m);

  --wrap:1220px;
  --font:"Segoe UI",system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{-webkit-text-size-adjust:100%;overflow-x:hidden}
body{
  font-family:var(--font);font-size:16px;line-height:1.7;color:var(--text);
  background:var(--bg-0);min-height:100dvh;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:var(--cyan);text-decoration:none}
a:hover{color:#7de9fb}
h1,h2,h3{line-height:1.14;font-weight:900;letter-spacing:-.02em}
button,input{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:6px}
section[id],h3[id],main[id],footer[id]{scroll-margin-top:96px}

.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:var(--s-5)}
.skip{position:absolute;left:-9999px;top:0;z-index:300;background:var(--cyan);color:#04202a;
  padding:var(--s-2) var(--s-4);font-weight:800}
.skip:focus{left:0}

/* ============ BOTOES ============ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:13px 26px;border-radius:var(--r-pill);border:0;cursor:pointer;
  font-weight:800;font-size:.95rem;letter-spacing:.01em;white-space:nowrap;
  transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}
.btn:hover{transform:translateY(-2px);filter:brightness(1.07)}
.btn-main{background:linear-gradient(100deg,var(--magenta),var(--magenta-2));color:#fff;
  box-shadow:0 10px 30px -10px var(--glow-m)}
.btn-cyan{background:linear-gradient(100deg,var(--cyan),var(--cyan-2));color:#04202a;
  box-shadow:0 10px 30px -10px var(--glow-c)}
.btn-gold{background:linear-gradient(100deg,var(--gold),var(--gold-2));color:#2a1f00;
  box-shadow:0 10px 30px -10px var(--glow-g)}
.btn-ghost{background:rgba(255,255,255,.06);color:var(--text);
  box-shadow:inset 0 0 0 1px var(--line-2)}
.btn-lg{padding:17px 38px;font-size:1.05rem}
.btn-sm{padding:9px 18px;font-size:.84rem}
.btn-block{width:100%}

/* ============ HEADER ============ */
.hdr{position:sticky;top:0;z-index:120;background:rgba(10,5,20,.82);
  backdrop-filter:blur(16px) saturate(140%)}
.hdr::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--magenta),var(--cyan),transparent);opacity:.55}
.hdr-in{display:flex;align-items:center;gap:var(--s-5);min-height:76px}

.logo{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}
.logo img{width:46px;height:46px;border-radius:14px}
.logo-txt{font-size:1.32rem;font-weight:900;letter-spacing:-.03em;
  background:linear-gradient(96deg,#fff 12%,var(--magenta) 52%,var(--cyan) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.logo small{display:block;font-size:.58rem;letter-spacing:.34em;text-transform:uppercase;
  color:var(--muted-2);font-weight:800;margin-top:-2px}

.nav{margin-left:auto;display:flex;align-items:center;gap:var(--s-5);overflow-x:auto;
  scrollbar-width:none}
.nav::-webkit-scrollbar{display:none}
.nav a{font-size:.9rem;font-weight:700;color:var(--muted);white-space:nowrap;position:relative;
  padding-block:6px}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;
  background:var(--magenta);transition:right .2s ease}
.nav a:hover{color:var(--text)}
.nav a:hover::after{right:0}
.hdr-cta{display:flex;align-items:center;gap:var(--s-3);flex-shrink:0}

/* ============ HERO ============ */
.hero{position:relative;overflow:hidden;
  background:
    radial-gradient(900px 520px at 78% 22%,rgba(255,46,136,.30),transparent 62%),
    radial-gradient(760px 460px at 14% 78%,rgba(34,211,238,.22),transparent 60%),
    linear-gradient(165deg,#170c2b 0%,#0e0720 55%,#0a0514 100%)}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:radial-gradient(rgba(255,255,255,.16) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:radial-gradient(68% 60% at 50% 38%,#000,transparent)}
.hero-in{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:var(--s-7);
  align-items:center;padding-block:var(--s-9) var(--s-8)}

.kicker{display:inline-flex;align-items:center;gap:9px;padding:7px 16px;border-radius:var(--r-pill);
  background:rgba(255,46,136,.14);box-shadow:inset 0 0 0 1px rgba(255,46,136,.45);
  font-size:.72rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:#ff87b8}
.kicker b{color:var(--cyan)}
.hero h1{margin-top:var(--s-4);font-size:clamp(2.1rem,5vw,3.6rem)}
.hero h1 em{font-style:normal;background:linear-gradient(96deg,var(--cyan),var(--magenta) 65%);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.hero-sub{margin-top:var(--s-4);font-size:1.1rem;color:#d8cfee;max-width:50ch}
.hero-btns{margin-top:var(--s-6);display:flex;gap:var(--s-3);flex-wrap:wrap}
.hero-note{margin-top:var(--s-4);font-size:.8rem;color:var(--muted-2)}

/* carta de oferta */
.offer-card{position:relative;padding:var(--s-6);border-radius:var(--r-lg);text-align:center;
  background:linear-gradient(170deg,rgba(48,30,84,.92),rgba(22,14,40,.96));
  box-shadow:var(--shadow-neon)}
.offer-card::before{content:"";position:absolute;inset:0;border-radius:var(--r-lg);padding:2px;
  background:conic-gradient(from 210deg,var(--magenta),var(--gold),var(--cyan),var(--magenta));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.offer-card .tag{display:inline-block;padding:6px 16px;border-radius:var(--r-pill);
  background:var(--magenta);color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.14em;
  text-transform:uppercase}
.offer-val{margin-top:var(--s-4);font-size:3.1rem;font-weight:900;line-height:.95;
  background:linear-gradient(180deg,#fff,var(--gold));-webkit-background-clip:text;
  background-clip:text;color:transparent}
.offer-extra{margin-top:var(--s-2);font-size:1.05rem;font-weight:800;color:var(--cyan)}
.offer-list{list-style:none;padding:0;margin:var(--s-5) 0 0;display:grid;gap:10px;text-align:left}
.offer-list li{display:flex;gap:10px;font-size:.88rem;color:var(--muted)}
.offer-list li::before{content:"\2713";color:var(--lime);font-weight:900;flex-shrink:0}
.offer-card .btn{margin-top:var(--s-5)}
.offer-card small{display:block;margin-top:var(--s-3);font-size:.72rem;color:var(--muted-2)}

/* ============ FAIXA DE NUMEROS ============ */
.stats{position:relative;background:var(--bg-2)}
.stats::before,.stats::after{content:"";position:absolute;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--line-2),transparent)}
.stats::before{top:0}.stats::after{bottom:0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-5);padding-block:var(--s-6)}
.stat{text-align:center}
.stat b{display:block;font-size:2rem;font-weight:900;line-height:1;
  background:linear-gradient(120deg,var(--cyan),var(--magenta));-webkit-background-clip:text;
  background-clip:text;color:transparent}
.stat span{display:block;margin-top:6px;font-size:.82rem;color:var(--muted)}

/* ============ SECOES ============ */
.sec{padding-block:var(--s-8)}
.sec-alt{background:
  linear-gradient(180deg,transparent,rgba(48,30,84,.35) 40%,transparent),var(--bg-1)}
.sec-head{max-width:64ch;margin-bottom:var(--s-6)}
.sec-head.center{margin-inline:auto;text-align:center}
.sec-head span{display:inline-block;font-size:.72rem;font-weight:900;letter-spacing:.2em;
  text-transform:uppercase;color:var(--magenta)}
.sec-head h2{margin-top:10px;font-size:clamp(1.6rem,3.4vw,2.4rem)}
.sec-head p{margin-top:var(--s-3);color:var(--muted)}
.prose{max-width:76ch;color:var(--muted)}
.prose.center{margin-inline:auto}
.prose p + p{margin-top:var(--s-3)}
.prose h3{margin-top:var(--s-6);color:var(--text);font-size:1.22rem}
.prose h3 + p{margin-top:var(--s-2)}

/* ---------- Grade bento de jogos ---------- */
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:var(--s-4)}
.tile{position:relative;border-radius:var(--r);overflow:hidden;display:block;
  box-shadow:inset 0 0 0 1px var(--line);transition:transform .2s ease,box-shadow .2s ease}
.tile:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1px var(--line-2),0 18px 40px -18px var(--glow-m)}
.tile img{width:100%;height:100%;object-fit:cover}
.tile-big{grid-column:span 2;grid-row:span 2}
.tile-wide{grid-column:span 2}
.tile-cap{position:absolute;left:0;right:0;bottom:0;padding:var(--s-4);
  background:linear-gradient(180deg,transparent,rgba(8,4,16,.92));
  display:flex;align-items:end;gap:var(--s-3)}
.tile-cap b{font-size:.95rem;font-weight:800;line-height:1.2}
.tile-cap i{font-style:normal;display:block;font-size:.72rem;color:var(--muted-2);font-weight:600}
.tile-cap .btn{margin-left:auto}
.tile-big .tile-cap b{font-size:1.25rem}
.bento-more{margin-top:var(--s-5);text-align:center}

/* ---------- Cartoes de bonus ---------- */
.deals{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-4)}
.deal{position:relative;padding:var(--s-5) var(--s-5) var(--s-6);border-radius:var(--r);
  background:linear-gradient(165deg,rgba(48,30,84,.55),rgba(22,14,40,.85));
  box-shadow:inset 0 0 0 1px var(--line);display:flex;flex-direction:column}
.deal:hover{box-shadow:inset 0 0 0 1px var(--line-2)}
.deal-top{display:flex;align-items:center;gap:var(--s-3);flex-wrap:wrap}
.deal-n{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;
  background:linear-gradient(140deg,var(--magenta),var(--magenta-2));color:#fff;font-weight:900;font-size:.88rem}
.deal h3{font-size:1.1rem}
.deal-tag{display:block;font-size:.76rem;color:var(--muted-2);margin-top:2px}
.deal-score{margin-left:auto;font-weight:900;color:var(--lime);font-size:1.1rem;white-space:nowrap}
.deal-score i{font-style:normal;color:var(--gold);font-size:.8rem;letter-spacing:1px;margin-left:6px}
.deal p{margin-top:var(--s-3);color:var(--muted);font-size:.92rem;flex:1}
.deal .btn{margin-top:var(--s-5);width:100%}

/* ---------- Passos ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-4);counter-reset:st}
.step{position:relative;padding:var(--s-5);border-radius:var(--r);
  background:rgba(48,30,84,.32);box-shadow:inset 0 0 0 1px var(--line)}
.step::before{counter-increment:st;content:counter(st);position:absolute;top:-14px;left:var(--s-5);
  width:34px;height:34px;display:grid;place-items:center;border-radius:var(--r-pill);
  font-size:.9rem;font-weight:900;color:#04202a;
  background:linear-gradient(140deg,var(--cyan),var(--cyan-2));
  box-shadow:0 8px 20px -8px var(--glow-c)}
.step h3,.step .step-title{margin-top:var(--s-3);font-size:1rem;font-weight:800}
.step p{margin-top:8px;font-size:.87rem;color:var(--muted)}

/* ---------- Tabelas ---------- */
.tw{overflow-x:auto;border-radius:var(--r);box-shadow:inset 0 0 0 1px var(--line)}
table.data{width:100%;border-collapse:collapse;font-size:.9rem;min-width:560px;
  background:rgba(27,17,48,.6)}
table.data th,table.data td{padding:13px var(--s-4);text-align:center;
  border-bottom:1px solid var(--line)}
table.data th{background:rgba(48,30,84,.6);font-size:.72rem;text-transform:uppercase;
  letter-spacing:.1em;color:var(--muted-2)}
table.data tr:last-child td{border-bottom:0}
table.data td{color:var(--muted)}
table.data td:first-child{color:var(--text);font-weight:700}
table.t-rating td:nth-child(2){color:var(--lime);font-weight:800;white-space:nowrap}

/* ---------- Pros e contras ---------- */
.pc-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-4)}
.pc{border-radius:var(--r);padding:var(--s-5);background:rgba(27,17,48,.55);
  box-shadow:inset 0 0 0 1px var(--line)}
.pc h3{font-size:1.05rem;display:flex;align-items:center;gap:10px}
.pc.pros h3{color:var(--lime)}
.pc.cons h3{color:var(--magenta)}
.pc ul{list-style:none;padding:0;margin-top:var(--s-4);display:grid;gap:10px}
.pc li{display:flex;gap:11px;font-size:.92rem;color:var(--muted)}
.pc li::before{flex-shrink:0;font-weight:900}
.pc.pros li::before{content:"+";color:var(--lime)}
.pc.cons li::before{content:"\2013";color:var(--magenta)}

/* ---------- FAQ ---------- */
.faq{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-3);align-items:start}
.faq details{border-radius:var(--r-sm);background:rgba(27,17,48,.6);
  box-shadow:inset 0 0 0 1px var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:var(--s-4);font-weight:800;font-size:.94rem;
  display:flex;gap:var(--s-3)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";margin-left:auto;color:var(--cyan);font-size:1.3rem;font-weight:400}
.faq details[open] summary::after{content:"\2212"}
.faq .body{padding:0 var(--s-4) var(--s-4);color:var(--muted);font-size:.89rem}

/* ---------- CTA ---------- */
.cta{position:relative;overflow:hidden;text-align:center;padding-block:var(--s-8);
  background:
    linear-gradient(180deg,rgba(10,5,20,.90),rgba(10,5,20,.82)),
    radial-gradient(760px 320px at 50% 0,rgba(255,46,136,.30),transparent 66%),
    url("../img/hero/banner-bonus.webp") center/cover no-repeat,
    var(--bg-1)}
.cta::after{content:"";position:absolute;left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--magenta),var(--cyan),transparent)}
.cta h2{font-size:clamp(1.7rem,3.6vw,2.6rem)}
.cta p{margin-top:var(--s-3);color:var(--muted);max-width:54ch;margin-inline:auto}
.cta .btn{margin-top:var(--s-6)}
.cta small{display:block;margin-top:var(--s-4);color:var(--muted-2);font-size:.76rem}

/* ============ FOOTER ============ */
.ftr{background:#07030f;padding-top:var(--s-8)}
.ftr-brands{padding-bottom:var(--s-7)}
.ftr-cap{text-align:center;font-size:.7rem;font-weight:900;letter-spacing:.22em;
  text-transform:uppercase;color:var(--muted-2);margin-bottom:var(--s-5)}
.logos{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--s-5) var(--s-4);
  align-items:center;justify-items:center}
.logos img{width:100%;max-width:126px;height:28px;object-fit:contain;opacity:.42;
  filter:grayscale(1);transition:opacity .2s ease,filter .2s ease}
.logos img:hover{opacity:1;filter:grayscale(0)}

.ftr-pay{padding-block:var(--s-6);
  background:linear-gradient(180deg,rgba(255,46,136,.06),transparent)}
.pays{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--s-4) var(--s-6)}
.pays img{height:36px;width:auto;max-width:116px;object-fit:contain;opacity:.9}
.pays img:hover{opacity:1}
.b18{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;
  box-shadow:inset 0 0 0 2px var(--magenta);font-size:.76rem;font-weight:900;color:var(--magenta)}

.ftr-legal{padding-block:var(--s-7);text-align:center}
.ftr-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s-2) var(--s-5);
  list-style:none;padding:0;margin-bottom:var(--s-5)}
.ftr-nav a{font-size:.85rem;font-weight:700;color:var(--muted)}
.ftr-nav a:hover{color:var(--text)}
.ftr-legal p{font-size:.76rem;color:var(--muted-2);max-width:920px;margin-inline:auto;line-height:1.8}
.ftr-legal p + p{margin-top:var(--s-3)}
.seal{margin-top:var(--s-5);display:inline-flex;align-items:center;gap:10px;padding:10px var(--s-5);
  border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--line-2);
  font-size:.78rem;font-weight:700;color:var(--muted)}
.updated{margin-top:var(--s-4);font-size:.77rem;color:var(--muted-2)}
.updated time{color:var(--muted);font-weight:700}

/* ============ RESPONSIVO ============ */
@media (max-width:1080px){
  .bento{grid-template-columns:repeat(3,1fr)}
  .logos{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:920px){
  .hero-in{grid-template-columns:1fr;gap:var(--s-6);padding-block:var(--s-7)}
  .offer-card{max-width:480px;margin-inline:auto;width:100%}
  .stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--s-4)}
  .deals{grid-template-columns:1fr}
  .steps{grid-template-columns:repeat(2,1fr);row-gap:var(--s-6)}
  .faq{grid-template-columns:1fr}
  .nav{display:none}
  .sec{padding-block:var(--s-7)}
}
@media (max-width:680px){
  .bento{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}
  .tile-big{grid-column:span 2;grid-row:span 2}
  .pc-grid{grid-template-columns:1fr}
  .logos{grid-template-columns:repeat(3,1fr)}
  .pays img{height:30px}
  .logo small{display:none}
}
@media (max-width:480px){
  .hdr-in{min-height:64px;gap:var(--s-3)}
  .logo img{width:38px;height:38px}
  .logo-txt{font-size:1.06rem}
  .btn{padding:10px 16px;font-size:.84rem}
  .btn-lg{padding:14px 24px;font-size:.95rem}
  .stats-grid{grid-template-columns:1fr}
  .offer-val{font-size:2.4rem}
  .wrap{padding-inline:var(--s-4)}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none;transition:none}
}
