:root{--ground: #1A1A18;--ground-raised: #232320;--ground-sunken: #121211;--paper: #FCFCFA;--paper-raised: #FFFFFF;--paper-sunken: #F1F1ED;--deep: #10120F;--deeper: #0A0C09;--abyss: #060705;--caustic-1: rgba(242, 242, 238, .055);--caustic-2: rgba(242, 242, 238, .03);--caustic-3: rgba(242, 242, 238, .038);--meniscus: rgba(242, 242, 238, .38);--submerged: rgba(242, 242, 238, .28);--signal: #FF3B30;--signal-ink: #D90B15;--text-on-ground: #F2F2EE;--text-on-ground-2: #ADAFA8;--muted: #8B9184;--text-on-paper: #1A1A18;--text-on-paper-2: #55584F;--muted-ink: #5E645A;--rule-on-ground: rgba(242, 242, 238, .18);--rule-on-paper: rgba(26, 26, 24, .15);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", Menlo, Consolas, monospace;--type-display: clamp(3rem, 11vw, 9rem);--type-h1: clamp(2.25rem, 5vw, 4rem);--type-h2: clamp(1.75rem, 3.5vw, 2.75rem);--type-h3: clamp(1.25rem, 2vw, 1.5rem);--type-lead: clamp(1.125rem, 1.6vw, 1.375rem);--type-body: 1rem;--type-small: .875rem;--type-eyebrow: .75rem;--type-data: clamp(2.5rem, 6vw, 5rem);--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4.5rem;--space-4xl: 7rem;--space-5xl: 10rem;--radius-sm: 0;--radius-md: 2px;--radius-lg: 4px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .18s;--dur-base: .42s;--dur-slow: .9s;--dur-cinematic: 1.6s;--dur-drift: 34s;--dur-swell: 11s;--dur-flow: 24s;--ease-water: cubic-bezier(.37, 0, .28, 1);--tide: 0;--dive: 0;--measure: 68ch;--width-text: 720px;--width-content: 1200px;--width-wide: 1600px;--header-height: 72px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--type-body);line-height:1.75;color:var(--text-on-ground);background-color:var(--ground);overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}:focus-visible{outline:2px solid var(--signal);outline-offset:3px}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;letter-spacing:-.02em;text-wrap:balance}h1{font-size:var(--type-h1);font-weight:800;letter-spacing:-.03em}h2{font-size:var(--type-h2)}h3{font-size:var(--type-h3);letter-spacing:-.01em}p{max-width:var(--measure)}.lead{font-size:var(--type-lead);line-height:1.6}.eyebrow{display:block;font-family:var(--font-mono);font-size:var(--type-eyebrow);font-weight:600;letter-spacing:.18em;text-transform:uppercase;line-height:1.4;color:var(--muted);margin-bottom:var(--space-lg)}.data{font-family:var(--font-mono);font-size:var(--type-data);font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1.1}.mono{font-family:var(--font-mono);font-size:var(--type-small);font-variant-numeric:tabular-nums}.on-ground{background:var(--ground);color:var(--text-on-ground)}.on-ground-sunken{background:var(--ground-sunken);color:var(--text-on-ground)}.on-paper{background:var(--paper);color:var(--text-on-paper)}.on-paper-sunken{background:var(--paper-sunken);color:var(--text-on-paper)}.on-paper p,.on-paper-sunken p{color:var(--text-on-paper-2)}.on-ground p,.on-ground-sunken p{color:var(--text-on-ground-2)}.on-paper .eyebrow,.on-paper-sunken .eyebrow{color:var(--muted-ink)}.on-ground a:not(.btn),.on-ground-sunken a:not(.btn){color:var(--signal)}.on-paper a:not(.btn),.on-paper-sunken a:not(.btn){color:var(--signal-ink);text-decoration:underline;text-underline-offset:2px}.mark{background:var(--signal-ink);color:var(--paper-raised);padding:0 .15em;box-decoration-break:clone;-webkit-box-decoration-break:clone}.container{width:100%;max-width:var(--width-content);margin:0 auto;padding:0 var(--space-xl)}.container-text{width:100%;max-width:var(--width-text);margin:0 auto;padding:0 var(--space-xl)}.section{padding:var(--space-5xl) 0;position:relative}.section-header{margin-bottom:var(--space-3xl)}.section-header h2{margin-bottom:var(--space-md)}.rule{border:0;border-top:1px solid var(--rule-on-ground)}.on-paper .rule,.on-paper-sunken .rule{border-top-color:var(--rule-on-paper)}.btn{--press: 3px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);font-family:var(--font-sans);font-size:var(--type-small);font-weight:700;letter-spacing:.02em;line-height:1.3;text-align:center;padding:var(--space-md) var(--space-xl);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;text-decoration:none;transform:translateY(0);transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform .11s var(--ease-out),box-shadow .11s var(--ease-out);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.btn-signal{background:var(--signal);color:var(--ground);--press-shadow: color-mix(in srgb, var(--signal-ink) 58%, #000000);box-shadow:0 var(--press) 0 var(--press-shadow)}.btn-outline{background:transparent;color:var(--text-on-ground);border-color:var(--rule-on-ground);--press-shadow: rgba(242, 242, 238, .16);box-shadow:0 var(--press) 0 var(--press-shadow)}.on-paper .btn-outline,.on-paper-sunken .btn-outline{color:var(--text-on-paper);border-color:var(--rule-on-paper);text-decoration:none;--press-shadow: rgba(26, 26, 24, .16)}.btn:active{transform:translateY(var(--press));box-shadow:0 0 0 var(--press-shadow)}@media(hover:hover)and (pointer:fine){.btn-signal:hover{background:var(--signal-ink);color:var(--paper-raised);transform:translateY(-1px);box-shadow:0 calc(var(--press) + 1px) 0 var(--press-shadow)}.btn-outline:hover{border-color:var(--text-on-ground);background:#f2f2ee0d;transform:translateY(-1px);box-shadow:0 calc(var(--press) + 1px) 0 var(--press-shadow)}.on-paper .btn-outline:hover,.on-paper-sunken .btn-outline:hover{border-color:var(--text-on-paper);background:#1a1a180a}.btn:hover:active{transform:translateY(var(--press));box-shadow:0 0 0 var(--press-shadow)}}.btn-signal:focus-visible{background:var(--signal-ink);color:var(--paper-raised)}.btn-outline:focus-visible{border-color:var(--text-on-ground);background:#f2f2ee0d}.on-paper .btn-outline:focus-visible,.on-paper-sunken .btn-outline:focus-visible{border-color:var(--text-on-paper);background:#1a1a180a}.btn[aria-disabled=true]{cursor:default;background:transparent;color:var(--muted);border-color:var(--rule-on-ground);box-shadow:none;transform:none}.btn[aria-disabled=true]:active,.btn[aria-disabled=true]:hover{box-shadow:none;transform:none;background:transparent}.on-paper .btn[aria-disabled=true]{color:var(--muted-ink);border-color:var(--rule-on-paper)}.has-depth{position:relative;isolation:isolate}.depth{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(140% 100% at 50% 0%,var(--deep) 0%,var(--deeper) 55%,var(--abyss) 100%)}.depth:before,.depth:after{content:"";position:absolute;border-radius:50%;filter:blur(80px);will-change:transform}.depth:before{width:90vmax;height:90vmax;top:-30vmax;left:-20vmax;background:radial-gradient(circle,var(--caustic-1) 0%,transparent 62%);animation:drift-a var(--dur-drift) var(--ease-in-out) infinite alternate}.depth:after{width:70vmax;height:70vmax;bottom:-25vmax;right:-15vmax;background:radial-gradient(circle,var(--caustic-2) 0%,transparent 60%);animation:drift-b calc(var(--dur-drift) * 1.4) var(--ease-in-out) infinite alternate}.caustic{position:absolute;width:60vmax;height:60vmax;top:25%;left:45%;border-radius:50%;filter:blur(90px);background:radial-gradient(circle,var(--caustic-3) 0%,transparent 58%);animation:drift-c calc(var(--dur-drift) * .8) var(--ease-in-out) infinite alternate;will-change:transform;pointer-events:none}@keyframes drift-a{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(12vw,8vh,0) scale(1.18)}}@keyframes drift-b{0%{transform:translateZ(0) scale(1.1)}to{transform:translate3d(-14vw,-10vh,0) scale(1)}}@keyframes drift-c{0%{transform:translate3d(-50%,-50%,0) scale(.9)}to{transform:translate3d(-38%,-62%,0) scale(1.25)}}.refract{transform:scaleY(-1);filter:blur(2.2px) saturate(.7);opacity:.34;pointer-events:none;user-select:none;-webkit-mask-image:repeating-linear-gradient(to bottom,rgba(0,0,0,1) 0px,rgba(0,0,0,1) 2px,rgba(0,0,0,.55) 4px,rgba(0,0,0,.18) 6px,rgba(0,0,0,.55) 8px,rgba(0,0,0,1) 10px);mask-image:repeating-linear-gradient(to bottom,#000 0px 2px,#0000008c 4px,#0000002e,#0000008c,#000 10px);-webkit-mask-size:100% 10px;mask-size:100% 10px;animation:swell var(--dur-swell) var(--ease-in-out) infinite;will-change:mask-position,transform}@keyframes swell{0%{-webkit-mask-position:0 0;mask-position:0 0;transform:scaleY(-1) skew(0)}25%{transform:scaleY(-1) skew(.6deg)}50%{-webkit-mask-position:0 10px;mask-position:0 10px;transform:scaleY(-1) skew(0)}75%{transform:scaleY(-1) skew(-.6deg)}to{-webkit-mask-position:0 20px;mask-position:0 20px;transform:scaleY(-1) skew(0)}}.mirror{overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.25) 70%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.25) 70%,transparent 100%)}.meniscus{position:absolute;left:0;right:0;height:2px;background:linear-gradient(to right,transparent 0%,var(--meniscus) 14%,var(--meniscus) 86%,transparent 100%);filter:blur(.6px);pointer-events:none}.meniscus:after{content:"";position:absolute;inset:0 0 auto;height:110px;background:linear-gradient(to bottom,rgba(242,242,238,.05),transparent)}.silt{position:absolute;inset:-50%;opacity:.16;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E");animation:silt-drift 7s steps(6) infinite;will-change:transform}@keyframes silt-drift{0%{transform:translateZ(0)}17%{transform:translate3d(-2%,1%,0)}34%{transform:translate3d(1%,-2%,0)}51%{transform:translate3d(-1%,-1%,0)}68%{transform:translate3d(2%,2%,0)}85%{transform:translate3d(-2%,1%,0)}to{transform:translateZ(0)}}.current-line{fill:none;stroke:var(--signal);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;opacity:.62;vector-effect:non-scaling-stroke}.js .current-line{stroke-dasharray:3 9;animation:flow var(--dur-flow) linear infinite}@keyframes flow{to{stroke-dashoffset:-240}}.current-glow{fill:none;stroke:#ffffff80;stroke-width:9;opacity:.05;filter:blur(7px);vector-effect:non-scaling-stroke}.photo{filter:grayscale(1) contrast(1.15)}.photo.is-colour{filter:none}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out)}.js .reveal.visible{opacity:1;transform:translateY(0)}.js .reveal-delay-1{transition-delay:80ms}.js .reveal-delay-2{transition-delay:.16s}.js .reveal-delay-3{transition-delay:.24s}.js .reveal-delay-4{transition-delay:.32s}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}.depth:before,.depth:after,.caustic,.silt,.refract,.js .current-line{animation:none!important}.silt{opacity:.1}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(max-width:768px){:root{--header-height: 64px;--space-5xl: 5rem;--space-4xl: 4rem}.container,.container-text{padding:0 var(--space-md)}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--ground-sunken)}::-webkit-scrollbar-thumb{background:#f2f2ee33}::-webkit-scrollbar-thumb:hover{background:#f2f2ee59}::selection{background:var(--signal);color:var(--ground)}.skip-link{position:absolute;top:var(--space-xs);left:var(--space-xs);z-index:200;padding:var(--space-sm) var(--space-md);background:var(--signal);color:var(--ground);font-size:var(--type-small);font-weight:700;transform:translateY(-200%);transition:transform var(--dur-fast) var(--ease-out)}.skip-link:focus-visible{transform:translateY(0)}
