@font-face{font-family:Hiker;src:url('/assets/fonts/hiker.otf') format('opentype');font-display:swap;font-weight:400}
@font-face{font-family:Benne;src:url('/assets/fonts/benne-latin.woff2') format('woff2');font-display:swap;font-weight:400}
:root{color-scheme:dark;--black:#000;--white:#fff;--body:#b2bab8;--muted:#7a8482;--line:rgba(255,255,255,.15);--lime:#c8f02e;--accent:var(--lime);--display:Hiker,Georgia,serif;--text:Benne,Georgia,serif;--ease:cubic-bezier(.16,1,.3,1);--margin:clamp(20px,3.1vw,44px);--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#000;color:var(--body);font:400 17px/1.62 var(--text);-webkit-font-smoothing:antialiased;overflow-x:hidden}img,video{display:block;max-width:100%}a{color:var(--white);text-decoration:none;transition:color 160ms var(--ease),opacity 160ms var(--ease)}a:hover{color:var(--accent)}a:active{opacity:.8}a:focus-visible{outline:0;box-shadow:0 0 0 2px #000,0 0 0 4px var(--accent)}::selection{background:var(--accent);color:#000}.wrap{width:min(100%,calc(var(--max) + var(--margin)*2));margin:auto;padding-inline:var(--margin)}.skip{position:fixed;z-index:100;left:var(--margin);top:8px;transform:translateY(-180%);padding:8px 12px;background:var(--accent);color:#000}.skip:focus{transform:none;color:#000}.nav{position:fixed;z-index:80;inset:0 0 auto;display:flex;align-items:center;gap:30px;padding:24px var(--margin) 44px;background:linear-gradient(to bottom,rgba(0,0,0,.94),rgba(0,0,0,.62) 52%,transparent);pointer-events:none}.nav a{pointer-events:auto}.mark{font:400 clamp(24px,2.4vw,34px)/1 var(--display);letter-spacing:-.008em}.nav-links{display:flex;gap:clamp(16px,3vw,38px);margin-left:auto}.nav-links a,.label{font:400 13px/1.2 var(--text);letter-spacing:.16em;text-transform:uppercase}.nav-links a{color:var(--body)}.label{color:var(--muted)}.nav-links a:hover,.nav-links a[aria-current]{color:var(--white)}.grain{position:fixed;z-index:90;inset:0;pointer-events:none;opacity:.13;mix-blend-mode:screen;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitchTiles'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.cinema{height:300vh}
.hero-stage{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden}
.plate,.motion-band{position:relative;background:#000;overflow:hidden}
.hero-stage .plate{position:absolute;inset:0;transform-origin:center}
.plate img,.plate video,.motion-band img,.motion-band video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;mix-blend-mode:screen;filter:saturate(1.28) contrast(1.14)}
.hero-stage .base{opacity:.42;filter:saturate(1.1) brightness(.42) contrast(1.3)}
.hero-stage .bloom{-webkit-mask-image:radial-gradient(58% 84% at 30% 38%,#000 0%,#000 var(--r1,96%),transparent calc(var(--r1,96%)*1.75)),radial-gradient(92% 56% at 72% 60%,#000 0%,#000 var(--r2,88%),transparent calc(var(--r2,88%)*1.8)),radial-gradient(46% 72% at 54% 22%,#000 0%,#000 var(--r3,80%),transparent calc(var(--r3,80%)*1.9));mask-image:radial-gradient(58% 84% at 30% 38%,#000 0%,#000 var(--r1,96%),transparent calc(var(--r1,96%)*1.75)),radial-gradient(92% 56% at 72% 60%,#000 0%,#000 var(--r2,88%),transparent calc(var(--r2,88%)*1.8)),radial-gradient(46% 72% at 54% 22%,#000 0%,#000 var(--r3,80%),transparent calc(var(--r3,80%)*1.9));-webkit-mask-composite:source-over;mask-composite:add}
.hero-stage .bloom.still{opacity:var(--bloom-o,1)}
.hero-stage .bloom.motion{opacity:0;transition:opacity 520ms var(--ease)}
.hero-stage .plate.has-motion .bloom.motion{opacity:var(--bloom-o,1)}
.hero-stage .plate.has-motion .bloom.still{opacity:0}
.motion-band .motion{opacity:0;transition:opacity 520ms var(--ease)}
.motion-band.has-motion .motion{opacity:1}
.motion-band.has-motion .still{opacity:0}
.vignette{position:absolute;z-index:2;inset:0;background:radial-gradient(ellipse at 55% 45%,transparent 20%,rgba(0,0,0,.7) 76%,#000);pointer-events:none}
.hero-lockup{position:absolute;z-index:4;top:43%;right:var(--margin);text-align:right}
.hero-kicker{display:block;margin-bottom:18px;color:#fff}
.hero-title{margin:0;color:#fff;mix-blend-mode:exclusion;font:400 clamp(52px,12vw,176px)/.88 var(--display);letter-spacing:-.008em}
.hero-copy{position:absolute;z-index:4;left:var(--margin);bottom:11vh;max-width:44ch;color:var(--lime);font-size:clamp(18px,2vw,23px);text-shadow:0 2px 26px #000}
.scroll-cue{position:absolute;z-index:4;left:var(--margin);bottom:35px;color:var(--body);text-shadow:0 2px 18px #000}
.scroll-cue:after{content:'';display:inline-block;width:28px;border-top:1px solid;margin-left:12px;vertical-align:middle}
.section{padding:clamp(96px,13vw,160px) 0}.manifesto-lines p{margin:0;max-width:17ch;color:#fff;font:400 clamp(38px,6vw,80px)/1.06 var(--text);letter-spacing:-.022em}.manifesto-lines p+p{margin:40px 0 0 auto;text-align:right;color:var(--body)}.manifesto-lines em{color:var(--lime);font-style:normal}.columns{display:grid;grid-template-columns:repeat(2,1fr);gap:48px;max-width:900px;margin:80px 0 0 auto}.columns p{font-size:21px}.motion-band{height:min(78vh,760px);min-height:430px}.motion-band .band-line{position:absolute;z-index:3;left:var(--margin);bottom:60px;max-width:14ch;margin:0;color:#fff;font:400 clamp(38px,6vw,78px)/1.05 var(--text);text-shadow:0 2px 26px #000}.apps-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:90px 48px}.app-card{display:block}.app-card:nth-child(even){margin-top:70px}.card-media{position:relative;aspect-ratio:16/11;overflow:hidden}.card-media img{width:100%;height:100%;object-fit:cover;mix-blend-mode:screen;filter:saturate(1.28) contrast(1.14);transition:transform 900ms var(--ease)}.card-name{position:absolute;inset:50% 0 auto;transform:translateY(-50%);text-align:center;color:#fff;mix-blend-mode:exclusion;font:400 clamp(48px,7vw,94px)/1 var(--display)}.card-copy{padding-top:20px}.card-copy strong{display:block;color:#fff;font-weight:400;font-size:21px}.card-copy p{max-width:46ch;margin:6px 0 0;color:var(--muted)}.app-card:focus-visible{box-shadow:none;outline:2px solid var(--accent);outline-offset:8px}.app-card:focus-visible .card-media img{transform:scale(1.06)}
.contact-cta{border-top:1px solid var(--line);padding:72px 0}.contact-cta h2{max-width:16ch;margin:0 0 18px;color:#fff;font:400 clamp(34px,4vw,54px)/1.08 var(--text)}.email{display:inline-block;color:var(--accent);font-size:clamp(20px,2vw,25px)}.footer{border-top:1px solid var(--line);padding:40px 0 28px}.footer-row{display:flex;gap:32px;align-items:center}.footer-row p{margin:0 auto 0 0;color:var(--muted)}
.page-hero{position:relative;min-height:76vh;display:grid;align-items:end;padding:180px 0 90px;overflow:hidden}.page-hero .page-bloom{position:absolute;inset:0 0 0 36%;width:64%;height:100%;object-fit:cover;mix-blend-mode:screen;filter:saturate(1.28) contrast(1.14);opacity:.7}.page-heading{position:relative;z-index:2}.page-heading h1{margin:18px 0 20px;color:#fff;font:400 clamp(64px,12vw,164px)/.9 var(--display);mix-blend-mode:exclusion}.page-heading p{max-width:48ch;margin:0;color:var(--body);font-size:clamp(20px,2.2vw,27px)}.page-heading p,.page-heading .label{text-shadow:0 2px 26px rgba(0,0,0,.95)}.prose{max-width:760px}.prose h2{margin:0 0 22px;color:#fff;font:400 clamp(34px,5vw,58px)/1.08 var(--text)}.prose p{font-size:21px;margin:0 0 24px}.repo-link{display:inline-block;margin-top:18px;padding:13px 20px;border:1px solid var(--accent);color:var(--accent);font-size:18px}.app-page{--accent:var(--app-accent)}.app-rule{width:56px;border-top:2px solid var(--accent);margin-bottom:26px}.empty-state{padding:190px 0 140px;min-height:75vh}.empty-state h1{margin:18px 0 24px;color:#fff;font:400 clamp(58px,10vw,130px)/.9 var(--display)}.empty-state p{max-width:46ch;font-size:22px}.rise{opacity:1;transform:none}.js .rise{opacity:0;transform:translateY(22px);transition:opacity 520ms var(--ease),transform 520ms var(--ease)}.js .rise.in{opacity:1;transform:none}
@media (hover:hover) and (pointer:fine){.app-card:hover .card-media img{transform:scale(1.06)}}
@media(max-width:720px){.nav{padding-top:max(18px,calc(env(safe-area-inset-top) + 10px));align-items:flex-start}.nav-links{gap:13px;flex-wrap:wrap;justify-content:flex-end}.mark,.nav-links a{display:flex;align-items:center;min-height:44px}.nav-links a{font-size:11px}.cinema{height:220vh}.hero-lockup{top:38%;left:var(--margin);right:auto;text-align:left}.hero-title{font-size:clamp(48px,15vw,76px)}.hero-copy{right:var(--margin);bottom:max(13vh,calc(env(safe-area-inset-bottom) + 28px))}.scroll-cue{display:none}.columns,.apps-grid{grid-template-columns:1fr}.columns{margin-top:55px;gap:24px}.manifesto-lines p+p{text-align:left;margin-left:0}.app-card:nth-child(even){margin-top:0}.motion-band{height:55vh}.footer-row{align-items:flex-start;flex-wrap:wrap}.footer-row p{width:100%}.page-hero .page-bloom{inset:0;width:100%;height:100%;opacity:.52}.page-heading h1{font-size:clamp(58px,17vw,94px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cinema{height:100vh}.motion{display:none}.js .rise{opacity:1;transform:none;transition:none}.card-media img{transition:none}}
@media(forced-colors:active){.grain{display:none}.hero-title,.card-name,.page-heading h1{mix-blend-mode:normal}.plate img,.card-media img,.page-bloom{mix-blend-mode:normal}.nav{background:#000}.repo-link{forced-color-adjust:auto}}
