:root { --ink:#f8f4ff; --muted:#c5b8d6; --accent:#e3b9ff; --paper:#160d26; }
* { box-sizing:border-box; } body { margin:0; min-height:100vh; color:var(--ink); background:radial-gradient(circle at 20% 0%,#52306c 0,transparent 35rem),radial-gradient(circle at 85% 85%,#253d6d 0,transparent 32rem),var(--paper); font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.shell { width:min(100% - 40px,980px); margin:auto; } nav { display:flex; justify-content:space-between; align-items:center; padding:28px 0; } a { color:var(--accent); } .brand { color:var(--ink); text-decoration:none; font-size:1.2rem; font-weight:700; letter-spacing:-.03em; } .hero { max-width:720px; padding:14vh 0 22vh; } .eyebrow { color:var(--accent); font-size:.78rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; } h1 { margin:.1em 0 .35em; font-size:clamp(3rem,9vw,6.5rem); letter-spacing:-.065em; line-height:.96; } .lede { max-width:560px; color:var(--muted); font-size:1.25rem; } .button { display:inline-block; margin-top:18px; padding:12px 18px; border-radius:999px; color:#221131; background:var(--accent); font-weight:700; text-decoration:none; } .policy { max-width:760px; padding-bottom:80px; } .policy h1 { font-size:clamp(2.5rem,7vw,4.5rem); } .policy h2 { margin-top:2.3rem; font-size:1.25rem; } .policy p { color:var(--muted); } footer { display:flex; justify-content:space-between; gap:20px; width:min(100% - 40px,980px); margin:auto; padding:26px 0; border-top:1px solid #ffffff24; color:var(--muted); font-size:.9rem; } footer a { margin-left:18px; } @media (max-width:560px){footer{display:block} footer span:last-child{display:block;margin-top:10px}footer a:first-child{margin-left:0}}

/* Home page only — legal and support pages retain the styles above. */
.home { overflow-x:hidden; background:#05030e; }.home .space { position:fixed; inset:0; overflow:hidden; pointer-events:none; background:radial-gradient(circle at 50% 42%,#281752 0,transparent 23rem),radial-gradient(circle at 90% 10%,#101d4b 0,transparent 28rem),#05030e; }.home .stars { position:absolute; inset:-30%; display:block; width:160%; height:160%; background-image:radial-gradient(#fff 1px,transparent 1.5px),radial-gradient(#bda7ff 1px,transparent 1.5px),radial-gradient(#ffffffb8 1px,transparent 1.5px); background-size:151px 151px,233px 233px,317px 317px; background-position:7px 31px,70px 118px,156px 24px; opacity:.7; --rot:0deg; --scale:1; transform:rotate(var(--rot)) scale(var(--scale)); animation:spiral 420s linear infinite; }.home .stars-two { opacity:.38; --rot:24deg; --scale:1.1; animation-duration:600s; }.home .stars-three { opacity:.22; --rot:-14deg; --scale:1.3; animation-duration:800s; }.home-shell,.home-footer { position:relative; z-index:1; width:min(100% - 48px,1120px); margin:auto; }.home-nav { padding:30px 0; }.home .nav-link { color:#ffffffcc; text-decoration:none; font-size:.94rem; }.home .nav-link:hover,.home-footer a:hover { color:white; }.home-hero { max-width:760px; padding:clamp(110px,20vh,210px) 0 115px; }.home-kicker { margin:0 0 17px; color:#d9bfff; font-weight:700; font-size:.72rem; text-transform:uppercase; letter-spacing:.16em; }.home h1 { max-width:800px; margin:0; color:#fff; font-size:clamp(3.3rem,8vw,7rem); line-height:.94; text-wrap:balance; text-shadow:0 2px 14px #b586ff2e; }.home-hero > p:last-child { max-width:565px; margin:26px 0 0; color:#d0c9e3; font-size:clamp(1.05rem,2vw,1.28rem); }.apps { padding:26px 0 120px; }.section-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:24px; }.section-heading .home-kicker { margin:0; }.app-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.app-card { min-height:200px; display:flex; flex-direction:column; justify-content:space-between; padding:24px; border:1px solid #ffffff24; border-radius:25px; background:linear-gradient(145deg,#ffffff1c,#9570d10e); box-shadow:inset 0 1px #ffffff25,0 20px 50px #00000044; backdrop-filter:blur(12px); transition:transform .25s ease,border-color .25s ease; }.app-card > div { display:flex; flex-direction:column; flex:1; }.app-card .app-links { margin-top:auto; padding-top:18px; }.app-card:hover { transform:translateY(-7px); border-color:#e2c9ff99; }.app-card img { width:76px; height:76px; align-self:center; border-radius:18px; box-shadow:0 13px 26px #0000006b; }.app-card h3 { margin:28px 0 5px; color:#fff; font-size:1.35rem; letter-spacing:-.035em; }.app-desc { margin:0; color:#c7bfdb; font-size:.92rem; line-height:1.5; }.app-links { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-top:18px; }.capsule { display:inline-flex; align-items:center; gap:6px; padding:8px 20px; border-radius:999px; border:1px solid #e2c9ff4d; color:#f5ecff; font-size:.82rem; font-weight:600; letter-spacing:-.01em; text-decoration:none; background:linear-gradient(145deg,#ffffff1c,#9570d112); box-shadow:inset 0 1px #ffffff20; transition:border-color .2s ease,background .2s ease,box-shadow .2s ease; }.capsule:hover { border-color:#e2c9ffb5; background:linear-gradient(145deg,#ffffff34,#9570d130); box-shadow:inset 0 1px #ffffff30,0 0 22px #c89bff45; }.home-footer { padding:28px 0; border-top:1px solid #ffffff1f; color:#a9a0bc; font-size:.9rem; }.footer-copyright { flex:1; text-align:center; }.support-shell { padding:clamp(110px,20vh,210px) 0 80px; }.home .policy h1 { font-size:clamp(2.5rem,7vw,4.5rem); }.support-card { width:min(100%,720px); margin:0 auto; text-align:left; }.support-card .eyebrow { text-align:center; }.support-card h1 { text-align:center; } @keyframes spiral { from { transform:rotate(var(--rot)) scale(var(--scale)); } to { transform:rotate(calc(var(--rot) + 360deg)) scale(var(--scale)); } } @media (max-width:700px) { .home-shell,.home-footer { width:min(100% - 36px,1120px); }.home-hero { padding-top:125px; }.app-grid { grid-template-columns:1fr; }.app-card { min-height:auto; }.app-card h3 { margin-top:20px; } } @media (prefers-reduced-motion:reduce) { .home .stars { animation:none; } .app-card { transition:none; } }

/* Shared site chrome and page alignment. */
body { display:flex; flex-direction:column; }.site-nav { position:relative; z-index:2; display:flex; justify-content:space-between; align-items:center; width:100%; padding:20px max(24px,calc((100vw - 1120px)/2)); background:linear-gradient(180deg,#ffffff17 0%,#ffffff05 45%,transparent 100%),rgb(20 11 33 / .6); border-bottom:1px solid #ffffff14; box-shadow:inset 0 1px #ffffff33,0 10px 30px #00000040; backdrop-filter:blur(22px) saturate(160%); -webkit-backdrop-filter:blur(22px) saturate(160%); }.site-nav .nav-link { color:#ffffffd6; text-decoration:none; font-size:.94rem; }.site-nav .nav-link:hover { color:white; } body:not(.home) .shell { flex:1; width:min(100% - 40px,760px); margin:0 auto; padding:52px 0 80px; } footer { margin-top:auto; }.home-shell { flex:1; margin:0 auto; }.home-footer { margin-top:auto; }.apps { width:min(calc(100vw - 128px),1600px); margin-left:50%; transform:translateX(-50%); }.section-heading { width:min(100%,1120px); margin-inline:auto; }.app-grid { width:100%; margin-inline:auto; }.app-card { justify-content:flex-start; text-align:center; }.app-card img { margin-bottom:20px; }.app-card h3 { margin:0 0 5px; } @media (max-width:700px){.apps{width:calc(100vw - 36px)}} @media (max-width:560px){.site-nav{padding:18px}body:not(.home) .shell{padding-top:38px}}
