*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#050507;--bg2:#07070b;--bg3:#09090d;--bg4:#0d0d13;
  --purple:#8B5CF6;--purple2:#7C3AED;
  --text:#f0f0f3;--t2:#6b6b80;--t3:#5a5a70;--t4:#4a4a5e;--t5:#3a3a4e;
  --border:rgba(255,255,255,.04);--border2:rgba(255,255,255,.03);
  --fd:'Instrument Serif',Georgia,serif;
  --fb:'Inter',-apple-system,sans-serif;
}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{background:var(--bg);color:var(--text);font-family:var(--fb);line-height:1.6;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.hero{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px 40px;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-60%;left:50%;transform:translateX(-50%);width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(139,92,246,.08) 0%,transparent 60%);pointer-events:none}
.hero-logo{width:120px;margin-bottom:32px;filter:drop-shadow(0 0 40px rgba(139,92,246,.15))}
.hero h1{font-family:var(--fd);font-weight:400;font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.1;max-width:580px;margin-bottom:18px;letter-spacing:-.03em}
.hero h1 em{font-style:italic;color:var(--purple)}
.hero-sub{font-size:clamp(.85rem,1.3vw,.98rem);color:var(--t2);max-width:420px;line-height:1.7;font-weight:300}
.cta{margin-top:32px;display:inline-block;padding:13px 40px;background:var(--purple);color:#fff;border-radius:60px;font-size:.8rem;font-weight:500;letter-spacing:1.2px;text-transform:uppercase;border:none;cursor:pointer;transition:all .3s}
.cta:hover{box-shadow:0 12px 40px rgba(139,92,246,.3);transform:translateY(-1px)}
.sep{height:1px;background:linear-gradient(90deg,transparent,rgba(139,92,246,.12),transparent)}
section.s{padding:64px 24px}
.container{max-width:980px;margin:0 auto}
.sl{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--purple2);margin-bottom:10px;font-weight:500}
.st{font-family:var(--fd);font-size:clamp(1.5rem,2.8vw,2.1rem);font-weight:400;margin-bottom:10px;line-height:1.15;letter-spacing:-.02em}
.ss{color:var(--t3);font-size:.88rem;max-width:400px;font-weight:300;line-height:1.7}
.sh{text-align:center;margin-bottom:48px}
.sh .ss{margin:0 auto}
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.03);border-radius:12px;overflow:hidden}
.fc{background:var(--bg3);padding:32px 28px;transition:background .3s}
.fc:hover{background:var(--bg4)}
.fi-icon{width:32px;height:32px;border-radius:8px;background:rgba(139,92,246,.08);display:flex;align-items:center;justify-content:center;font-size:15px;margin-bottom:14px}
.fc h3{font-size:.85rem;font-weight:500;margin-bottom:6px}
.fc p{font-size:.78rem;color:var(--t3);line-height:1.6;font-weight:300}
.hbg{background:var(--bg2)}
.stp{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.st-i{text-align:center}
.st-n{width:52px;height:52px;border-radius:50%;background:var(--bg);border:1px solid rgba(255,255,255,.05);display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-size:1.2rem;color:var(--purple);margin:0 auto 18px}
.st-i h3{font-size:.88rem;font-weight:500;margin-bottom:6px}
.st-i p{font-size:.78rem;color:var(--t3);font-weight:300;line-height:1.6;max-width:240px;margin:0 auto}
.tbg{background:var(--bg);position:relative}
.tc{max-width:620px;margin:0 auto;background:rgba(255,255,255,.015);border:1px solid var(--border);border-radius:14px;padding:40px 36px;text-align:left}
.tq{font-family:var(--fd);font-size:3.5rem;color:var(--purple2);line-height:.8;opacity:.3;margin-bottom:8px}
.tc blockquote{font-size:.84rem;font-style:italic;line-height:1.8;color:#7a7a8e;font-weight:300;margin-bottom:24px}
.ta{font-weight:500;font-size:.84rem}
.tr{font-size:.74rem;color:var(--t4);margin-top:2px}
.cbg{background:var(--bg2);text-align:center}
.badge-w{display:flex;justify-content:center;min-height:270px;align-items:center}
.ctbg{background:var(--bg)}
.ci{max-width:480px;margin:0 auto;text-align:center}
.ci .ss{margin:0 auto 32px}
.fld{margin-bottom:12px;text-align:left}
.fld label{display:block;font-size:.68rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--t4);margin-bottom:5px;font-weight:500}
.fld input,.fld textarea{width:100%;padding:11px 14px;background:var(--bg3);border:1px solid var(--border);border-radius:7px;color:var(--text);font-family:var(--fb);font-size:.84rem;outline:none;font-weight:300;transition:border .3s}
.fld input:focus,.fld textarea:focus{border-color:rgba(139,92,246,.3)}
.fld textarea{resize:vertical;min-height:72px}
.fr{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fsub{width:100%;padding:13px;margin-top:4px;background:var(--purple);color:#fff;border:none;border-radius:60px;font-size:.8rem;font-weight:500;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all .3s;font-family:var(--fb)}
.fsub:hover{box-shadow:0 8px 32px rgba(139,92,246,.3)}
.fn{font-size:.66rem;color:var(--t5);margin-top:12px;font-weight:300}
.form-thankyou{display:none;padding:48px 20px;text-align:center}
.form-thankyou h3{font-family:var(--fd);font-size:1.6rem;margin-bottom:10px}
.form-thankyou p{color:var(--t2);font-weight:300;font-size:.9rem}
footer{padding:32px 24px;border-top:1px solid var(--border2);background:var(--bg)}
.foot-inner{max-width:980px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}
.fb-brand{display:flex;align-items:center;gap:12px}
.fl{width:52px;opacity:.5}
.ft h4{font-size:.78rem;font-weight:400;color:var(--t2)}
.ft p{font-size:.66rem;color:var(--t5);font-weight:300}
.ft a{transition:opacity .3s}
.ft a:hover{text-decoration:underline}
.fcopy{font-size:.66rem;color:var(--t5);font-weight:300}
.reveal{opacity:0;transform:translateY(20px);transition:all .6s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:768px){
  section.s{padding:48px 20px}
  .feat-grid{grid-template-columns:1fr}
  .stp{grid-template-columns:1fr;gap:28px}
  .fr{grid-template-columns:1fr}
  .foot-inner{flex-direction:column;gap:14px;text-align:center}
  .tc{padding:28px 24px}
}