@font-face{font-family:"Geist Mono";font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/geist-mono-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Geist Mono";font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/geist-mono-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Newsreader";font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/newsreader-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Newsreader";font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/newsreader-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Newsreader";font-weight:400;font-style:italic;font-display:swap;src:url(/fonts/newsreader-latin-400-italic.woff2) format("woff2")}

:root{
  --blue:#0F1226;--blue-line:#262B4D;--on-blue:#ECEDF7;--on-blue-mute:#A3A8C9;--accent:#FF7A59;
  --paper:#F5F4F0;--ink:#14162B;--body:#2E3150;--mute:#5F6285;--rule:#D9D8E0;--link:#3B3FB5;
  --mono:"Geist Mono",ui-monospace,Menlo,Consolas,monospace;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:19px;line-height:1.6}
a{color:var(--link);text-underline-offset:3px}
a:hover{color:var(--ink)}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
@media(min-width:700px){.wrap{padding:0 40px}}

.hero{background:var(--blue);color:var(--on-blue)}
.hero a{color:var(--accent)}
.topbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;padding:24px 0;font:400 13px/1.4 var(--mono);color:var(--on-blue-mute)}
.wordmark{margin:56px 0 0;font:500 clamp(52px,13vw,150px)/.95 var(--mono);letter-spacing:-.055em;color:var(--on-blue)}
.cursor{color:var(--accent)}
@media(prefers-reduced-motion:no-preference){.cursor{animation:blink 1.2s steps(2,start) infinite}}
@keyframes blink{50%{opacity:0}}
.why{margin:0;font-size:clamp(22px,3.2vw,34px);line-height:1.3;letter-spacing:-.005em}
.why.l1{margin:40px 0 0 clamp(0px,5vw,64px);max-width:820px}
.why.l2{margin:24px 0 0 clamp(0px,10vw,128px);max-width:760px}
.why.l3{margin:24px 0 0 clamp(0px,15vw,192px);max-width:700px;color:var(--accent)}
.byline{margin:44px 0 0;padding-bottom:88px;font:400 14px/1.7 var(--mono);color:var(--on-blue-mute)}

.sec{display:flex;flex-wrap:wrap;padding:64px 0 72px;border-bottom:1px solid var(--rule)}
.sec:last-of-type{border-bottom:0}
.sec>.tag{flex:1 1 200px;padding-right:24px;font:400 13px/1.4 var(--mono);color:var(--link)}
.sec>.main{flex:3 1 520px;min-width:0}
h2{margin:0 0 24px;font:500 clamp(28px,4vw,38px)/1.15 var(--mono);letter-spacing:-.025em}
h3{margin:0 0 14px;font:500 18px/1.4 var(--mono)}
.sec p{margin:0 0 18px;font-size:clamp(19px,2.2vw,22px);line-height:1.6;max-width:700px;color:var(--body)}
.sec p.small{font-size:17px;color:var(--mute)}
.sec ul{margin:0 0 40px;padding:0 0 0 20px;max-width:700px;font-size:19px;line-height:1.7;color:var(--body)}
.sec ul:last-child{margin-bottom:0}
.areas{list-style:none;margin:0 0 24px;padding:0;max-width:780px}
.areas li{display:flex;gap:20px;padding:16px 0;border-bottom:1px solid var(--rule);font-size:19px;line-height:1.55}
.areas li:last-child{border-bottom:0}
.areas li>span:first-child{flex:0 0 24px;font:400 13px/1.9 var(--mono);color:var(--link)}
.areas strong{font-weight:500;color:var(--ink)}
.sec p.cap,.page p.cap{font:400 13px/1.4 var(--mono);color:var(--mute);margin:0 0 8px}
.work{max-width:780px}
.work a{display:flex;flex-wrap:wrap;gap:6px 28px;padding:20px 0;border-top:1px solid var(--rule);text-decoration:none;color:var(--ink)}
.work a:hover .t{text-decoration:underline}
.work .t{flex:0 0 170px;font:400 16px/1.5 var(--mono);color:var(--link)}
.work .d{flex:1 1 320px;font-size:19px;line-height:1.55}
.sec p.links{font:400 16px/1.6 var(--mono)}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;padding:28px 0 56px;border-top:1px solid var(--ink);font:400 13px/1.5 var(--mono);color:var(--mute)}
.foot a{color:var(--mute)}
.page h1{margin:56px 0 8px;font:500 clamp(34px,6vw,56px)/1.05 var(--mono);letter-spacing:-.04em}
.page p{max-width:700px;color:var(--body)}
