:root{
  --ink:#171328;
  --paper:#f7f5ef;
  --cream:#eee9dc;
  --purple:#6c3cff;
  --violet:#9b61ff;
  --pink:#ff4fa3;
  --orange:#ff8a3d;
  --yellow:#ffd84a;
  --lime:#b9f24a;
  --aqua:#58e6d8;
  --blue:#2d67ff;
  --white:#fff;
  --line:rgba(23,19,40,.14);
  --radius:28px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
::selection{background:var(--yellow);color:var(--ink)}

.page-noise{position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}
.cursor-glow{position:fixed;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(108,60,255,.13),transparent 64%);pointer-events:none;z-index:0;transform:translate(-50%,-50%);transition:opacity .25s}

.site-header{position:fixed;top:14px;left:50%;transform:translateX(-50%);width:min(1180px,calc(100% - 28px));height:70px;padding:0 16px 0 20px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid rgba(255,255,255,.55);background:rgba(247,245,239,.78);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:20px;z-index:80;box-shadow:0 14px 46px rgba(27,20,64,.09)}
.brand{display:flex;align-items:center;gap:9px;font-weight:700}
.brand-mark{font-family:"Arial Rounded MT Bold",Inter,ui-sans-serif,system-ui,sans-serif;font-size:21px;letter-spacing:-1.5px;background:linear-gradient(120deg,var(--purple),var(--pink),var(--orange));-webkit-background-clip:text;background-clip:text;color:transparent}
.brand-name{font-size:14px;letter-spacing:-.2px}
.desktop-nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:600;color:#514d61}
.desktop-nav a,.footer-right a{position:relative}
.desktop-nav a:after,.footer-right a:after{content:"";position:absolute;left:0;bottom:-5px;width:0;height:2px;background:var(--purple);transition:.25s}
.desktop-nav a:hover:after,.footer-right a:hover:after{width:100%}
.header-cta{font-size:13px;font-weight:700;background:var(--ink);color:#fff;padding:12px 17px;border-radius:13px;transition:.25s}
.header-cta:hover{transform:translateY(-2px);background:var(--purple)}
.menu-button{display:none;border:0;background:none;padding:8px;width:40px;height:40px;position:relative}
.menu-button span{position:absolute;left:8px;width:24px;height:2px;background:var(--ink);transition:.3s}.menu-button span:first-child{top:14px}.menu-button span:last-child{top:23px}.menu-button.active span:first-child{top:19px;transform:rotate(45deg)}.menu-button.active span:last-child{top:19px;transform:rotate(-45deg)}
.mobile-menu{display:none}

.section-pad{padding:120px max(6vw,28px)}
.hero{min-height:100svh;position:relative;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);align-items:center;gap:6vw;padding-top:150px;overflow:hidden}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(23,19,40,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(23,19,40,.045) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(to bottom,transparent 4%,#000 35%,#000 70%,transparent 100%)}
.hero-orbit{position:absolute;border:1px solid rgba(108,60,255,.12);border-radius:50%;pointer-events:none}
.orbit-one{width:720px;height:720px;right:-260px;top:80px;animation:spin 22s linear infinite}.orbit-two{width:420px;height:420px;right:3vw;top:260px;border-color:rgba(255,79,163,.15);animation:spin 17s linear reverse infinite}
.hero-copy{position:relative;z-index:2;max-width:750px}
.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:800;color:#5d586c;display:flex;align-items:center;gap:9px}
