@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Mono:wght@300;400;500&family=Syne:wght@400;500;700;800&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#0a0a08;--bg2:#111110;--bg3:#1a1a17;
  --bone:#e8e4d9;--bone2:#c8c2b0;--bone3:#8a8478;
  --accent:#c8f060;--accent2:#a8d840;
  --rule:rgba(232,228,217,0.08);
  --font-display:'DM Serif Display',serif;
  --font-sans:'Syne',sans-serif;
  --font-mono:'DM Mono',monospace;
}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--bone);font-family:var(--font-sans);overflow-x:hidden;cursor:none}
.cursor{width:8px;height:8px;background:var(--accent);border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:9999;mix-blend-mode:difference;will-change:transform}
.cursor-ring{width:32px;height:32px;border:1px solid rgba(200,240,96,0.4);border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:9998;transition:width .15s,height .15s;will-change:transform}
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.25rem 3rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--rule);backdrop-filter:blur(16px);background:rgba(10,10,8,0.8)}
.nav-logo{display:flex;align-items:center;gap:.6rem;text-decoration:none}
.nav-logo img{width:26px;height:26px;border-radius:5px}
.nav-logo-text{font-family:var(--font-display);font-size:1.25rem;color:var(--bone);letter-spacing:-.02em}
.nav-logo-text span{color:var(--accent)}
.nav-links{display:flex;gap:2rem;align-items:center}
.nav-links a{font-family:var(--font-mono);font-size:.72rem;color:var(--bone3);text-decoration:none;letter-spacing:.06em;text-transform:uppercase;transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:var(--accent)}
.nav-cta{background:var(--accent)!important;color:var(--bg)!important;padding:.45rem 1.1rem;border-radius:2px;font-weight:500}
.nav-cta:hover{background:var(--accent2)!important}
.page-wrap{padding-top:76px;min-height:100vh}
.section-label{font-family:var(--font-mono);font-size:.65rem;color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem}
.section-title{font-family:var(--font-display);font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.05;letter-spacing:-.02em;margin-bottom:1.5rem}
.section-title em{font-style:italic;color:var(--bone2)}
section{padding:6rem 3rem;border-bottom:1px solid var(--rule)}
section.alt{background:var(--bg2)}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}
.reveal.visible{opacity:1;transform:none}
.btn-primary{font-family:var(--font-mono);font-size:.8rem;background:var(--accent);color:var(--bg);padding:.85rem 2rem;border-radius:2px;text-decoration:none;font-weight:500;letter-spacing:.04em;transition:background .2s,transform .15s;display:inline-block}
.btn-primary:hover{background:var(--accent2);transform:translateY(-1px)}
.btn-ghost{font-family:var(--font-mono);font-size:.8rem;color:var(--bone3);padding:.85rem 1.5rem;border:1px solid var(--rule);border-radius:2px;text-decoration:none;letter-spacing:.04em;transition:color .2s,border-color .2s}
.btn-ghost:hover{color:var(--bone);border-color:rgba(232,228,217,.2)}
.marquee-wrap{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);overflow:hidden;padding:1rem 0;background:var(--bg2)}
.marquee-track{display:flex;animation:marquee 28s linear infinite;white-space:nowrap}
.marquee-item{font-family:var(--font-mono);font-size:.68rem;color:var(--bone3);letter-spacing:.1em;text-transform:uppercase;padding:0 2.5rem;display:flex;align-items:center;gap:2.5rem}
.marquee-item::after{content:'·';color:var(--accent)}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
footer{padding:2.5rem 3rem;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--rule);flex-wrap:wrap;gap:1rem}
.footer-logo{font-family:var(--font-display);font-size:1.1rem;color:var(--bone)}
.footer-logo span{color:var(--accent)}
.footer-links{display:flex;gap:2rem;flex-wrap:wrap}
.footer-links a{font-family:var(--font-mono);font-size:.7rem;color:var(--bone3);text-decoration:none;letter-spacing:.06em;transition:color .2s}
.footer-links a:hover{color:var(--bone)}
.footer-copy{font-family:var(--font-mono);font-size:.65rem;color:var(--bone3)}
@media(max-width:768px){
  nav{padding:1.25rem 1.5rem}
  .nav-links{display:none}
  section{padding:4rem 1.5rem}
  footer{flex-direction:column;text-align:center;padding:2rem 1.5rem}
  body{cursor:auto}
  .cursor,.cursor-ring{display:none}
}
