@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=Manrope:wght@400;500;600&display=swap";:root{color-scheme:dark;font-family:Manrope,system-ui,sans-serif;color:#f2f0ea;background:#0b0b0b;font-synthesis:none;--line: rgba(255, 255, 255, .18);--mono: "DM Mono", ui-monospace, monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;background:#0b0b0b}body{margin:0;min-width:320px;background:#0b0b0b;overflow-x:hidden}button,input,label{font:inherit}.topbar{position:fixed;z-index:20;top:0;left:0;width:100%;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;mix-blend-mode:difference;pointer-events:none}.brand,.topbar-note{color:#fff;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.brand{display:inline-flex;gap:10px;align-items:center;text-decoration:none;pointer-events:auto}.brand-dot{width:7px;height:7px;border:1px solid currentColor;border-radius:50%}.topbar-note{margin:0;opacity:.62}.scroll-scene{position:relative;height:360vh;background:#111}.sticky-stage{--reveal-top: 112%;position:sticky;top:0;height:100svh;min-height:560px;overflow:hidden;isolation:isolate;background:#171717}#tsunami-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;will-change:transform}.vignette,.grain{position:absolute;inset:0;pointer-events:none}.vignette{z-index:2;background:linear-gradient(90deg,rgba(0,0,0,.48),transparent 34%,transparent 72%,rgba(0,0,0,.28)),linear-gradient(0deg,rgba(0,0,0,.48),transparent 32%,rgba(0,0,0,.14))}.grain{z-index:3;opacity:.17;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}.scene-copy{position:absolute;z-index:4;left:clamp(24px,6vw,96px);top:50%;width:min(82vw,1040px);transform:translateY(-50%);pointer-events:none}.scene-copy-a{color:#f2f0ea;clip-path:inset(-14vh -8vw calc(100% - var(--reveal-top)) -8vw);will-change:clip-path}.scene-copy-b{z-index:5;color:#d8fbff;clip-path:inset(var(--reveal-top) -8vw -14vh -8vw);will-change:clip-path}.eyebrow{margin:0 0 18px;font-family:var(--mono);font-size:11px;line-height:1;letter-spacing:.14em;text-transform:uppercase}.scene-copy h1{margin:0;max-width:10ch;font-size:clamp(70px,11vw,178px);font-weight:500;line-height:.78;letter-spacing:-.085em}.scene-copy-b h1{text-shadow:0 0 42px rgba(80,222,255,.12)}.scene-caption{width:min(370px,74vw);margin:32px 0 0;color:#ffffff94;font-family:var(--mono);font-size:10px;line-height:1.6;letter-spacing:.03em}.scene-copy-b .scene-caption{color:#d8fbffb3}.transition-label{position:absolute;z-index:7;top:50%;right:48px;display:flex;align-items:center;gap:10px;color:#ffffff8a;font-family:var(--mono);font-size:9px;letter-spacing:.08em;transform:rotate(90deg) translate(50%);transform-origin:right center;pointer-events:none}.transition-label i{width:34px;height:1px;display:block;background:currentColor}.progress-rail{position:absolute;z-index:5;top:92px;right:28px;bottom:96px;width:1px;background:#ffffff2e}.progress-fill{position:absolute;top:0;left:0;width:1px;height:100%;display:block;background:#fff;transform:scaleY(0);transform-origin:top}.control-panel{position:absolute;z-index:8;left:clamp(24px,6vw,96px);bottom:28px;display:flex;align-items:center;gap:22px;padding:9px 10px 9px 14px;border:1px solid var(--line);border-radius:999px;background:#0c0c0c75;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.upload-control,.range-control{color:#fffc;font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.upload-control{cursor:pointer}.upload-control-b{padding-left:14px;border-left:1px solid var(--line)}.upload-control input{position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);overflow:hidden}.upload-control:focus-within span,.upload-control:hover span{color:#fff}.range-control{display:flex;align-items:center;gap:10px;padding-left:20px;border-left:1px solid var(--line)}.range-control input{width:92px;height:2px;appearance:none;border-radius:0;background:#ffffff47}.range-control input::-webkit-slider-thumb{width:10px;height:10px;appearance:none;border:0;border-radius:50%;background:#fff}#velocity-readout{min-width:43px;padding:8px 11px;border-radius:999px;color:#111;background:#f2f0ea;font-family:var(--mono);font-size:10px;text-align:center}.scroll-cue{position:absolute;z-index:6;bottom:30px;left:50%;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;transform:translate(-50%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.scroll-cue svg{width:16px;fill:none;stroke:currentColor;stroke-width:1.4}.local-note{position:absolute;z-index:5;right:50px;bottom:31px;margin:0;color:#ffffff85;font-family:var(--mono);font-size:9px;letter-spacing:.04em}.outro{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:12vw 7vw;color:#181818;background:#e8e4dc}.outro h2{max-width:12ch;margin:0 0 42px;font-size:clamp(50px,7.5vw,120px);font-weight:500;line-height:.93;letter-spacing:-.065em}.outro>p:not(.eyebrow){max-width:520px;margin:0 0 50px auto;font-size:clamp(16px,1.4vw,22px);line-height:1.55}.outro a{align-self:flex-end;padding-bottom:5px;border-bottom:1px solid currentColor;color:inherit;font-family:var(--mono);font-size:12px;text-decoration:none;text-transform:uppercase}@media(max-width:760px){.topbar{height:58px;padding:0 18px}.topbar-note,.local-note,.range-control span{display:none}.scroll-scene{height:340vh}.scene-copy{top:43%}.scene-copy h1{font-size:clamp(66px,23vw,102px)}.scene-caption{margin-top:24px}.transition-label{display:none}.progress-rail{top:74px;right:18px;bottom:82px}.control-panel{left:18px;right:72px;bottom:18px;gap:13px}.upload-control-b{padding-left:10px}.range-control{padding-left:13px}.range-control input{width:66px}.scroll-cue{right:18px;bottom:18px;left:auto;transform:none}.outro{padding:100px 24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scroll-cue{display:none}}
