:root{
  --bg:#080614;
  --panel:rgba(255,255,255,.055);
  --line:rgba(255,255,255,.12);
  --text:#f2efff;
  --muted:#a69bc9;
  --gold:#ffcf6b;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; font-family:'Segoe UI',system-ui,-apple-system,Arial,sans-serif;
  background:
    radial-gradient(1200px 620px at 15% -10%, rgba(255,207,107,.10), transparent 60%),
    radial-gradient(1000px 700px at 110% 20%, rgba(139,92,246,.16), transparent 55%),
    var(--bg);
  color:var(--text); line-height:1.55; -webkit-font-smoothing:antialiased;
}
a{color:inherit}
.wrap{max-width:980px; margin:0 auto; padding:0 18px}
.site-head{display:flex; align-items:center; justify-content:space-between; padding:18px 0; gap:14px}
.brand{display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--text)}
.brand-logo{width:40px; height:40px; display:grid; place-items:center; font-size:22px; border-radius:50%;
  background:radial-gradient(circle at 30% 25%, #ffe08a, #f29d3d);
  box-shadow:0 6px 18px rgba(255,207,107,.35)}
.brand b{font-size:17px; letter-spacing:.3px}
.brand small{display:block; font-size:10.5px; color:var(--muted)}
.head-cta{display:flex; align-items:center; gap:10px}
.btn{display:inline-block; padding:9px 16px; border-radius:12px; font-weight:700; font-size:13px;
  text-decoration:none; transition:transform .15s, box-shadow .15s}
.btn:hover{transform:translateY(-2px)}
.btn-gold{background:linear-gradient(180deg, #ffd77a, #f5a623); color:#241503;
  box-shadow:0 8px 22px rgba(255,190,70,.35)}
.btn-ghost{border:1px solid var(--line); color:var(--text); background:rgba(255,255,255,.04)}
.hero{text-align:center; padding:42px 0 18px}
.hero img{height:118px; filter:drop-shadow(0 12px 26px rgba(0,0,0,.55))}
.hero h1{font-size:clamp(26px, 5vw, 40px); margin:16px 0 10px; letter-spacing:.3px}
.hero p{max-width:700px; margin:0 auto 22px; color:var(--muted); font-size:15.5px}
.hero-ctas{display:flex; gap:12px; justify-content:center; flex-wrap:wrap}
.badge{display:inline-block; padding:5px 12px; border-radius:999px; font-size:11.5px; font-weight:700;
  background:rgba(255,207,107,.12); border:1px solid rgba(255,207,107,.35); color:var(--gold)}
.block{margin:30px 0; padding:26px 22px; border-radius:20px; background:var(--panel); border:1px solid var(--line)}
.sec-kicker{font-size:11px; letter-spacing:2px; text-transform:uppercase; color:var(--gold); margin-bottom:6px}
h2.sec-title{font-size:22px; margin:0 0 8px}
.sec-sub{color:var(--muted); margin:0 0 18px; font-size:14px}
.steps{display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:14px}
.step{background:rgba(255,255,255,.05); border:1px solid var(--line); border-radius:16px; padding:18px}
.step-num{width:30px; height:30px; border-radius:50%; display:grid; place-items:center; font-weight:800;
  color:#241503; background:var(--gold); margin-bottom:10px}
.step b{display:block; margin-bottom:6px}
.step p{margin:0; color:var(--muted); font-size:13.5px}
.pay-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px}
.pay-card{background:rgba(255,255,255,.05); border:1px solid var(--line); border-radius:16px; padding:16px}
.pay-card b{display:block; margin-bottom:6px}
.pay-card p{margin:0; color:var(--muted); font-size:13.5px}
.faq details{border:1px solid var(--line); border-radius:14px; margin-bottom:10px;
  background:rgba(255,255,255,.04); padding:0 16px}
.faq summary{cursor:pointer; font-weight:700; padding:14px 0; font-size:14.5px}
.faq details p{margin:0 0 14px; color:var(--muted); font-size:14px}
.faq details a{color:var(--gold)}
.prose{font-size:15px; color:var(--muted)}
.prose h2{font-size:20px; color:var(--text); margin:28px 0 8px}
.prose h3{font-size:16px; color:var(--text); margin:22px 0 6px}
.prose p{margin:0 0 14px}
.prose ul,.prose ol{margin:0 0 16px; padding-left:22px}
.prose li{margin-bottom:7px}
.prose a{color:var(--gold)}
.prose .lead{font-size:16px; color:var(--text)}
.news-card{display:block; text-decoration:none; background:rgba(255,255,255,.05);
  border:1px solid var(--line); border-radius:16px; padding:18px; margin-bottom:14px; transition:transform .15s}
.news-card:hover{transform:translateY(-2px); border-color:rgba(255,207,107,.4)}
.news-card .tag{display:inline-block; font-size:11px; font-weight:700; color:var(--gold);
  border:1px solid rgba(255,207,107,.35); background:rgba(255,207,107,.1);
  padding:3px 9px; border-radius:999px; margin-bottom:10px}
.news-card b{display:block; font-size:16.5px; margin-bottom:6px; color:var(--text)}
.news-card span{display:block; color:var(--muted); font-size:13.5px}
.dl-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:14px}
.dl-card{background:rgba(255,255,255,.05); border:1px solid var(--line); border-radius:16px; padding:20px 16px; text-align:center}
.dl-card img{height:74px; max-width:86%; object-fit:contain; filter:drop-shadow(0 8px 18px rgba(0,0,0,.5))}
.dl-card b{display:block; margin:12px 0 4px; font-size:16px; letter-spacing:.3px}
.dl-card span{display:block; color:var(--muted); font-size:12px; margin-bottom:14px}
.dl-btns{display:flex; flex-direction:column; gap:8px}
.dl-btns .btn{text-align:center}
.dl-tip{margin:10px 0 0; font-size:12px; line-height:1.55; color:var(--muted); opacity:.85}
.cta-band{text-align:center; padding:34px 22px; border-radius:22px; margin:34px 0;
  background:linear-gradient(135deg, rgba(255,207,107,.14), rgba(139,92,246,.16));
  border:1px solid rgba(255,207,107,.3)}
.cta-band h2{margin:0 0 8px; font-size:24px}
.cta-band p{color:var(--muted); margin:0 0 18px}
.site-foot{border-top:1px solid var(--line); margin-top:40px; padding:22px 0 34px;
  text-align:center; color:var(--muted); font-size:12.5px}
.site-foot a{color:var(--text); text-decoration:none; margin:3px 8px; display:inline-block; white-space:nowrap}
@media (max-width:520px){
  .site-head{flex-wrap:wrap}
  .head-cta{width:100%; justify-content:flex-end}
}

/* Prevent iOS auto-zoom when focusing inputs on phones */
@media (max-width:640px){
  input, select, textarea{ font-size:16px !important; }
}

/* No horizontal scrolling on mobile — clip any accidental overflow */
html, body{ max-width:100%; overflow-x:hidden; }
