:root{
  --bg:#070C1B;
  --surface:#101A34;
  --ink:#F7F7F4;
  --soft:#D6DCEA;
  --muted:#A7B2CB;
  --quiet:#8593B0;
  --sky:#71C7FF;
  --amber:#FF9F3D;
  --line:rgba(247,247,244,.13);
  --display:'Jost','Century Gothic',sans-serif;
  --body:'Source Sans 3','Segoe UI',system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:36px;-webkit-text-size-adjust:100%}
body{margin:0;min-width:320px;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:18px;font-weight:300;line-height:1.68;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 54% 38% at 80% 4%,rgba(46,91,143,.23),transparent 85%),radial-gradient(ellipse 40% 28% at 1% 40%,rgba(35,66,116,.12),transparent 90%)}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.46;background-image:radial-gradient(circle,rgba(217,234,255,.34) .7px,transparent 1px);background-size:59px 67px;background-position:14px 22px;mask-image:linear-gradient(to bottom,black,transparent 80%)}
a{color:inherit;text-underline-offset:.22em;text-decoration-color:rgba(113,199,255,.55);transition:color .2s,text-decoration-color .2s}
a:hover{color:var(--sky);text-decoration-color:currentColor}
a:focus-visible{outline:2px solid var(--sky);outline-offset:5px;border-radius:3px}
.skip{position:absolute;left:16px;top:-100px;z-index:20;background:var(--ink);color:var(--bg);padding:8px 14px}
.skip:focus{top:12px}
.shell{width:min(100% - 48px,1240px);margin-inline:auto}
.site-header{position:relative;border-bottom:1px solid var(--line);background:rgba(7,12,27,.66)}
.site-header .shell{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.brand-mark{width:42px;height:42px;object-fit:cover;mix-blend-mode:lighten;mask-image:radial-gradient(circle,#000 64%,transparent 77%)}
.brand-word{width:142px;height:auto}
.header-nav{display:flex;align-items:center;flex-wrap:wrap;gap:8px 28px;font-family:var(--display);font-size:15px;font-weight:400}
.header-nav a{text-decoration:none;color:var(--muted)}
.header-nav a:hover,.header-nav a[aria-current="page"]{color:var(--ink)}
.header-nav a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--amber);text-underline-offset:9px}
.header-nav .login-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 19px;border:1px solid rgba(247,247,244,.28);border-radius:99px;color:var(--ink)}
.header-nav .login-link:hover{border-color:var(--sky);color:var(--sky)}
.page{padding:0 0 140px}
.hero{position:relative;padding:108px 0 86px;border-bottom:1px solid var(--line)}
.hero::before{content:"";position:absolute;top:65px;right:4%;width:230px;aspect-ratio:1;border:1px solid rgba(113,199,255,.13);border-radius:50%;box-shadow:0 0 0 44px rgba(113,199,255,.025),0 0 0 90px rgba(113,199,255,.016);pointer-events:none}
.eyebrow{margin:0 0 28px;color:var(--sky);font-family:var(--display);font-size:12px;font-weight:400;letter-spacing:.27em;text-transform:uppercase}
.hero h1{max-width:980px;margin:0;font-family:var(--display);font-size:clamp(46px,7vw,104px);font-weight:200;letter-spacing:-.045em;line-height:1.03}
.hero h1 em{font-style:normal;color:var(--soft)}
.hero-lede{max-width:670px;margin:30px 0 0;color:var(--soft);font-size:clamp(19px,2vw,23px);line-height:1.55}
.hero-meta{display:flex;flex-wrap:wrap;gap:12px 42px;margin-top:52px;color:var(--muted);font-family:var(--display);font-size:14px}
.hero-meta span:first-child::before{content:"";display:inline-block;width:7px;height:7px;margin-right:11px;border-radius:50%;background:var(--amber);vertical-align:2px}
.reading-grid{display:grid;grid-template-columns:minmax(190px,250px) minmax(0,720px);justify-content:space-between;gap:9vw;padding-top:76px}
.contents{align-self:start;position:sticky;top:28px}
.contents-label{margin:0 0 17px;color:var(--quiet);font-family:var(--display);font-size:11px;letter-spacing:.23em;text-transform:uppercase}
.contents ol{margin:0;padding:0;list-style:none;border-left:1px solid var(--line)}
.contents li a{display:block;padding:8px 0 8px 18px;color:var(--muted);font-family:var(--display);font-size:14px;font-weight:400;text-decoration:none;line-height:1.3}
.contents li a:hover,.contents li a:focus-visible{color:var(--sky);border-left:1px solid var(--sky);margin-left:-1px}
.legal{min-width:0}
.intro{margin:0 0 48px;color:var(--soft);font-size:20px;line-height:1.6}
.legal section{padding:36px 0 42px;border-top:1px solid var(--line)}
.legal section:first-of-type{border-top-color:rgba(113,199,255,.38)}
.legal h2{margin:0 0 19px;font-family:var(--display);font-size:clamp(25px,3vw,35px);font-weight:300;line-height:1.22;letter-spacing:-.02em}
.legal h3{margin:27px 0 9px;font-family:var(--display);font-size:20px;font-weight:400;line-height:1.3}
.legal p{margin:0 0 17px;color:var(--soft)}
.legal p:last-child,.legal ul:last-child{margin-bottom:0}
.legal ul{margin:0 0 18px;padding-left:1.3em;color:var(--soft)}
.legal li{padding-left:.3em;margin:0 0 8px}
.legal li::marker{color:var(--sky)}
.note{margin:21px 0 8px;padding:23px 26px;border-left:2px solid var(--amber);background:rgba(255,159,61,.055);color:var(--soft)}
.note p{margin:0}
.next{padding-top:58px;border-top:1px solid var(--line)}
.next-label{margin:0 0 19px;color:var(--quiet);font-family:var(--display);font-size:12px;letter-spacing:.2em;text-transform:uppercase}
.next-links{display:flex;flex-wrap:wrap;gap:12px}
.next-links a{display:inline-flex;align-items:center;min-height:46px;padding:9px 18px;border:1px solid rgba(247,247,244,.2);border-radius:99px;font-family:var(--display);font-size:14px;text-decoration:none}
.next-links a:hover{border-color:var(--sky)}
.site-footer{border-top:1px solid var(--line);padding:50px 0 60px;background:rgba(7,12,27,.48)}
.footer-grid{display:flex;justify-content:space-between;gap:36px;flex-wrap:wrap}
.footer-identity{max-width:360px}
.footer-identity img{width:174px;height:auto}
.site-footer p{margin:18px 0 0;color:var(--muted);font-size:15px}
.footer-nav{display:flex;gap:14px 25px;flex-wrap:wrap;align-content:flex-start;font-size:14px}
.footer-nav a{color:var(--soft)}
@media(max-width:860px){
  .reading-grid{grid-template-columns:1fr;gap:48px}
  .contents{position:static}
  .contents ol{display:flex;flex-wrap:wrap;border:0;gap:6px}
  .contents li a{padding:7px 12px;border:1px solid var(--line);border-radius:99px;font-size:13px}
  .contents li a:hover,.contents li a:focus-visible{border:1px solid var(--sky);margin:0}
  .hero{padding:80px 0 64px}
  .hero::before{opacity:.35}
}
@media(max-width:600px){
  .shell{width:min(100% - 36px,1240px)}
  .site-header .shell{padding:16px 0;min-height:auto;align-items:flex-start;flex-direction:column;gap:13px}
  .brand-word{width:128px}
  .brand-mark{width:36px;height:36px}
  .header-nav{gap:9px 18px;font-size:13px}
  .hero{padding:64px 0 52px}
  .hero h1{font-size:clamp(43px,11vw,65px)}
  .hero-lede{margin-top:22px;font-size:19px}
  .hero-meta{margin-top:34px;gap:7px 20px}
  .reading-grid{padding-top:50px}
  .legal section{padding:32px 0 36px}
  .page{padding-bottom:90px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a{transition:none}}