:root{--bg:#000;--card:#0a0a0a;--text:#f5f1e6;--muted:#9a9686;--accent:#d4af37;--accent2:#f3e09d;--accent3:#b38926;--line:rgba(212,175,55,.18);--wave:#0d0b04;--wave2:#171204;
--grad:linear-gradient(90deg,var(--accent3),var(--accent2),var(--accent),var(--accent3));
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
:root[data-theme="ember"]{--accent:#ff7a3d;--accent2:#ffc08a;--accent3:#c2410c;--line:rgba(255,122,61,.2);--wave:#120803;--wave2:#1c0d05}
:root[data-theme="pitch"]{--accent:#2ee59d;--accent2:#b6ffe0;--accent3:#0f9d6a;--line:rgba(46,229,157,.2);--wave:#03120c;--wave2:#061d14}
:root[data-theme="royal"]{--accent:#8b7bff;--accent2:#d0c8ff;--accent3:#4f3fd1;--line:rgba(139,123,255,.2);--wave:#08051a;--wave2:#0e0a28}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:env(safe-area-inset-top,0px)}
body{background:var(--bg);color:var(--text);font-family:'Plus Jakarta Sans',system-ui,sans-serif;line-height:1.6;overflow-x:hidden;transition:background .4s}
a{color:inherit;text-decoration:none}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
section{position:relative;padding:96px 0}
/* keep anchored sections clear of the tall fixed header */
section[id]{scroll-margin-top:170px}
h1,h2{line-height:1.08;letter-spacing:-.02em;font-weight:800}
h1{font-size:clamp(2.4rem,7vw,5rem)}h2{font-size:clamp(1.8rem,4.4vw,3rem);margin-bottom:16px}
.gold{background:var(--grad);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 6s linear infinite}
@keyframes shine{to{background-position:250% 0}}
.eyebrow{font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:14px;display:block}
.lead{color:var(--muted);max-width:620px;font-size:1.08rem}

/* ===== HEADER (from live site: logo image + brand text + nav) ===== */
#mainHeader{position:fixed;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:50;background:rgba(0,0,0,.8);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-container{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;width:100%}
.brand-container,.brand-container:hover,.brand-container:focus,.brand-container:visited,.brand-container:active{text-decoration:none!important}
.brand-container{display:inline-flex;align-items:center;gap:16px;flex-shrink:0}
.brand-container .logo-img{width:180px;height:120px;max-width:none;object-fit:contain;display:block}
.brand-text{display:flex;flex-direction:column;align-items:flex-start}
.brand-text .logo{font-size:24px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:#fff!important;line-height:1.1}
.brand-text .logo span{display:inline-block;color:var(--accent)!important}
.brand-text .tagline{margin-top:4px;font-size:.82rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);opacity:.9}
.nav-container nav{margin-left:auto}
.nav-links{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0}
.nav-links li{margin:0;padding:0}
.nav-links a{display:inline-flex;align-items:center;white-space:nowrap;color:var(--muted);font-size:.88rem;font-weight:500;transition:color .3s}
.nav-links a:hover{color:var(--accent)}

/* buttons */
.btn{display:inline-block;padding:14px 26px;border-radius:999px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;border:1px solid var(--accent);transition:.3s;position:relative}
.btn.fill{background:var(--grad);color:#000;border-color:transparent;box-shadow:0 0 28px -6px var(--accent)}
.btn.fill:hover{box-shadow:0 0 44px 0 var(--accent);transform:translateY(-2px)}
.btn.ghost:hover{background:var(--line)}
/* hero */
.hero{min-height:100vh;display:flex;align-items:center;text-align:center;overflow:hidden;padding-top:190px}
.hero .glow{position:absolute;inset:0;background:radial-gradient(600px circle at var(--mx,50%) var(--my,40%),color-mix(in srgb,var(--accent) 22%,transparent),transparent 60%);transition:background .1s}
.hero .wrap{position:relative;z-index:2}
.tag{margin:20px auto 34px;color:var(--muted);max-width:560px}
.cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.waves{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:auto;z-index:1;display:block}
.waves path{transition:fill .4s}
.sub{margin-top:30px;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
/* blur-in text effect */
.fx span{display:inline-block;opacity:0;filter:blur(10px);transform:translateY(14px);transition:opacity .7s,filter .7s,transform .7s}
.fx.in span{opacity:1;filter:none;transform:none}
/* in-view */
.iv{opacity:0;transform:translateY(28px);filter:blur(6px);transition:all .8s cubic-bezier(.2,.7,.2,1)}
.iv.in{opacity:1;transform:none;filter:none}
/* spotlight cards */
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:40px}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px;position:relative;overflow:hidden;transition:transform .3s,border-color .3s}
.card::before{content:"";position:absolute;inset:0;background:radial-gradient(260px circle at var(--x,50%) var(--y,50%),color-mix(in srgb,var(--accent) 20%,transparent),transparent 70%);opacity:0;transition:opacity .3s}
.card:hover{transform:translateY(-4px);border-color:var(--accent)}.card:hover::before{opacity:1}
.card>*{position:relative}
.card h3{font-size:1rem;letter-spacing:.16em;color:var(--accent);margin-bottom:8px}
.card p{color:var(--muted);font-size:.95rem}
.num{font-size:.7rem;color:var(--accent3);letter-spacing:.2em}
.card a{display:inline-block;margin-top:14px;font-size:.78rem;color:var(--accent);letter-spacing:.1em}
/* marquee */
.marq{overflow:hidden;border-block:1px solid var(--line);padding:18px 0;background:var(--wave)}
.marq div{display:flex;gap:48px;width:max-content;animation:slide 24s linear infinite;font-weight:800;letter-spacing:.3em;font-size:1.1rem;color:var(--accent3)}
@keyframes slide{to{transform:translateX(-50%)}}
/* flywheel */
.fly{display:grid;place-items:center;margin:40px 0}
.ring{position:relative;width:min(340px,80vw);aspect-ratio:1}
.ring::before{content:"";position:absolute;inset:14%;border:1px dashed var(--accent);border-radius:50%;animation:spin 30s linear infinite}
.ring b{position:absolute;left:50%;top:50%;font-size:.68rem;letter-spacing:.16em;color:var(--accent);transform:rotate(calc(var(--i)*60deg)) translateY(calc(min(340px,80vw)*-.36)) rotate(calc(var(--i)*-60deg)) translate(-50%,-50%);background:var(--bg);padding:6px 10px;border:1px solid var(--line);border-radius:99px}
.ring .core{position:absolute;inset:34%;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:.7rem;font-weight:800;letter-spacing:.14em;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 25%,transparent),transparent 70%)}
@keyframes spin{to{transform:rotate(360deg)}}
.chain{display:grid;gap:10px;max-width:520px;margin:0 auto;text-align:center;color:var(--muted)}
/* timeline */
.tl{display:grid;gap:14px;margin-top:40px}
.st{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:22px;background:var(--card);border:1px solid var(--line);border-radius:16px}
.st .n{font-size:2rem;font-weight:800;color:var(--accent3)}
.st h3{letter-spacing:.14em;font-size:.9rem;color:var(--accent)}
.st p{color:var(--muted);font-size:.92rem}
.note{font-size:.78rem;color:var(--muted);margin-top:18px}
/* region / founder / support */
.big{background:var(--wave);border-block:1px solid var(--line)}
.quote{font-size:clamp(1.3rem,3vw,2rem);font-weight:700;margin:24px 0 6px}
.pass{text-align:center;background:var(--card);border:1px solid var(--accent);border-radius:26px;padding:48px 24px;box-shadow:0 0 60px -20px var(--accent)}
.price{font-size:clamp(2.4rem,9vw,4rem);font-weight:800;letter-spacing:.05em}
.badge{display:inline-block;font-size:.68rem;letter-spacing:.24em;border:1px solid var(--accent);padding:5px 14px;border-radius:99px;color:var(--accent);margin-bottom:14px}
.fine{font-size:.74rem;color:var(--muted);max-width:560px;margin:20px auto 0}
.center{text-align:center}.center .lead{margin:0 auto}
footer{border-top:1px solid var(--line);padding:56px 0 40px;background:var(--wave)}
.fcols{display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:30px 0}
.fcols h4{font-size:.7rem;letter-spacing:.24em;color:var(--accent);margin-bottom:10px}
.fcols a{display:block;font-size:.88rem;color:var(--muted);padding:2px 0}.fcols a:hover{color:var(--text)}
.legal{font-size:.72rem;color:var(--muted)}
/* theme switcher */
.sw{position:fixed;right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;gap:8px;padding:8px 10px;background:rgba(10,10,10,.85);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:99px}
.sw button{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer}
.sw button.on{border-color:#fff}

/* ===== Contact modal (from live site, themed) ===== */
.infu-modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:9999;align-items:center;justify-content:center;padding:20px}
.infu-modal-overlay.active{display:flex}
.infu-modal-content{background:var(--card);border:1px solid var(--line);border-radius:12px;max-width:480px;width:100%;max-height:85vh;overflow-y:auto;padding:32px;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.infu-modal-close{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--muted);font-size:28px;line-height:1;cursor:pointer;padding:4px 8px}
.infu-modal-close:hover{color:var(--accent)}
.infu-modal-content h2{color:#fff;margin:0 0 12px;font-size:1.4rem}
.infu-modal-content p{color:var(--text);line-height:1.6;margin-bottom:10px}
.infu-modal-content a{color:var(--accent)}
.infu-modal-content a:hover{text-decoration:underline}
.infu-modal-divider{border:none;border-top:1px solid var(--line);margin:20px 0}

@media(max-width:480px){
  .brand-container{flex-direction:column;gap:8px;text-align:center}
  .brand-text{align-items:center}
}
@media(max-width:768px){
  section[id]{scroll-margin-top:260px}
  .hero{padding-top:260px}
  .nav-container{padding:14px 16px;flex-direction:column;align-items:center;justify-content:center;gap:14px}
  .brand-container{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;width:100%}
  .brand-container .logo-img{width:120px;height:80px}
  .brand-text{align-items:center;text-align:center}
  .brand-text .logo{font-size:21px;letter-spacing:2px}
  .brand-text .tagline{font-size:.62rem;letter-spacing:.16em;margin-top:3px}
  .nav-container nav{width:100%;margin:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .nav-container nav::-webkit-scrollbar{display:none}
  .nav-links{justify-content:flex-start;gap:22px;width:max-content;margin:0 auto;padding:4px 8px 8px}
  .nav-links a{font-size:.78rem}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.iv,.fx span{opacity:1;filter:none;transform:none}}
