.labs{--paper:#fff;--paper-2:#f6f6f4;--ink:#090909;--text:#2b2b2e;--muted:#6b6f76;--line:#e4e4e2;--line-2:#cfd0cc;--blue:#579bc6;--blue-ink:#297cb2;--blue-2:#579bc6;--blue-deep:#2e8bc7;--teal:#258193;--yellow:#f2d200;--slate:#b6c4cd;--night:#0f1115;--night-2:#161a20;--night-line:hsla(0,0%,100%,.12);--night-text:#f9f9f9;--night-muted:hsla(0,0%,98%,.64);--fx-line:hsla(0,0%,100%,.22);--fx-accent:#579bc6;--fx-glow:rgba(87,155,198,.35);--display:var(--font-display),"Inter Display",system-ui,sans-serif;--body:var(--font-body),Inter,system-ui,sans-serif;--mono:var(--font-mono),ui-monospace,SFMono-Regular,Menlo,monospace;--ease-out:cubic-bezier(0.23,1,0.32,1);--ease-in-out:cubic-bezier(0.77,0,0.175,1);--max:1200px;--gutter:24px;background:var(--paper);color:var(--text);font:400 17px/1.6 var(--body);-webkit-font-smoothing:antialiased;min-height:100dvh}.labs *,.labs :after,.labs :before{box-sizing:border-box}.labs a{color:inherit;text-decoration:none}.labs [tabindex]:focus-visible,.labs a:focus-visible,.labs button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.labs img{max-width:100%}.labs .wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.labs dd,.labs dl,.labs h1,.labs h2,.labs h3,.labs ol,.labs p,.labs ul{margin:0}.labs ol,.labs ul{padding:0;list-style:none}.labs h1,.labs h2,.labs h3{font-family:var(--display);font-weight:600;color:var(--ink);text-wrap:balance}.labs h1{font-size:clamp(2.6rem,5.4vw,4.6rem);line-height:1.04;letter-spacing:-.02em}.labs h2{font-size:clamp(1.9rem,3.4vw,3rem);line-height:1.1;letter-spacing:-.015em}.labs h3{font-size:1.3rem;line-height:1.3;letter-spacing:-.01em}.labs .lede{font-size:clamp(1.05rem,1.3vw,1.25rem);line-height:1.55;max-width:58ch}.labs .eyebrow{font:600 12.5px/1.4 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--blue-deep)}.labs .eyebrow-light{color:hsla(0,0%,100%,.72)}.labs section{padding:112px 0}.labs .section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2.5rem}.labs .section-head h2{margin-top:.8rem}.labs .section-note{color:var(--muted);max-width:26ch;font-size:15px;text-align:right}.labs .cf-pill-host{display:inline-block;vertical-align:middle;line-height:0}.labs .pill{display:inline-flex;align-items:center;gap:.5em;height:54px;padding:0 24px;border-radius:50px;font:500 17px/1 var(--display);letter-spacing:-.1px;transition:transform .15s var(--ease-out),background-color .2s ease}.labs .pill:active{transform:scale(.98)}.labs .pill-ghost{background:rgba(9,9,9,.42);backdrop-filter:blur(6px);color:#fff;box-shadow:0 0 0 1px hsla(0,0%,100%,.4)}@media (hover:hover) and (pointer:fine){.labs .pill-ghost:hover{background:hsla(0,0%,100%,.14)}}.labs .hero{height:160vh;position:relative;background:var(--night);color:#fff}.labs .hero-sticky{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column;justify-content:safe center}.labs .hero-video{position:absolute;inset:0;z-index:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:50% 50%;object-position:50% 50%;background:var(--night) url(/labs/video/watershed-city-dock-poster.jpg) center /cover no-repeat}.labs .hero-sticky:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 62% 26% at 22% 78%,rgba(9,9,9,.72),rgba(9,9,9,0) 72%),linear-gradient(90deg,rgba(9,9,9,.78),rgba(9,9,9,.6) 38%,rgba(9,9,9,.18) 72%,rgba(9,9,9,.28)),linear-gradient(180deg,rgba(9,9,9,.55),rgba(9,9,9,0) 28%,rgba(9,9,9,0) 70%,rgba(9,9,9,.45))}.labs .fx{position:absolute;inset:0;z-index:0}.labs .fx-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.labs .fx-readout{position:absolute;left:var(--gutter);right:var(--gutter);bottom:22px;display:flex;justify-content:space-between;gap:1rem;font:400 11.5px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:hsla(0,0%,100%,.62)}.labs .fx-hint{margin-left:1.2em;opacity:clamp(0,1 - var(--p,0) * 5,1);transition:opacity .3s ease}.labs .hero-copy{position:relative;z-index:2;width:100%;padding-top:128px;padding-bottom:48px}.labs .hero-copy h1{color:#fff;max-width:17ch;margin:1.1rem 0 1.4rem;font-size:clamp(2.2rem,4.5vw,4rem)}.labs .hero-copy .lede{color:hsla(0,0%,100%,.8)}.labs .ctas{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:2.2rem;align-items:center}.labs .why .statement{max-width:24ch;margin:1rem 0 3rem}.labs .why{overflow:hidden}.labs .col{border-top:1px solid var(--line);padding-top:1.4rem}.labs .col h3{margin-bottom:.6rem}.labs .band-photo{position:relative;min-height:max(420px,62vh);padding:0;overflow:hidden;display:flex;align-items:flex-end;color:#fff;background:var(--night)}.labs .band-photo-tall{min-height:max(420px,70vh)}.labs .band-photo>img{position:absolute;inset:-18% 0;width:100%;height:136%;-o-object-fit:cover;object-fit:cover;will-change:transform}.labs .band-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,9,9,.15),rgba(9,9,9,.7))}.labs .band-photo-copy{position:relative;z-index:1;padding-bottom:56px;padding-top:56px;width:100%}.labs .band-quote{font:600 clamp(1.5rem,2.6vw,2.3rem)/1.2 var(--display);letter-spacing:-.015em;max-width:26ch;margin-bottom:1rem;text-wrap:balance}.labs .band-photo-tall .band-quote{margin:.8rem 0 0}.labs .band-quote-sub{font:400 clamp(1.05rem,1.3vw,1.25rem)/1.55 var(--body);max-width:46ch;margin:1.1rem 0 0;color:hsla(0,0%,100%,.86);text-wrap:pretty}.labs .band-dark{background:var(--night)}.labs .band-dark,.labs .band-dark h2,.labs .band-dark h3{color:var(--night-text)}.labs .band-dark .section-note{color:var(--night-muted)}.labs .pf-stack{display:flex;flex-direction:column;gap:28px}.labs .pf-card{--stack:0;position:sticky;display:grid;grid-template-columns:5fr 7fr;gap:2.5rem;align-items:center;background:var(--night-2);border-radius:22px;padding:2.2rem;box-shadow:0 0 0 1px var(--night-line),0 30px 60px rgba(0,0,0,.35);transform:scale(calc(1 - var(--stack) * .05)) translateY(calc(var(--stack) * -12px));opacity:calc(1 - var(--stack) * .35);transform-origin:top center}.labs .pf-copy,.labs .pf-visual{min-width:0}.labs .pf-copy h3{font-size:clamp(1.6rem,2.4vw,2.1rem);margin:.9rem 0 .6rem}.labs .pf-copy h3 a:hover{color:var(--blue)}.labs .pf-lead{color:var(--night-text);font-size:1.05rem;line-height:1.55}.labs .pf-points{margin-top:1.2rem;display:grid;gap:.55rem;color:var(--night-muted);font-size:15px;line-height:1.5}.labs .pf-points li{padding-left:1.1rem;position:relative}.labs .pf-points li:before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--blue)}.labs .pf-link{display:inline-block;margin-top:1.3rem;font:500 15px/1 var(--body);color:var(--blue)}.labs .pf-note{margin-top:1rem;font-size:13.5px;color:var(--night-muted)}.labs .tag{display:inline-flex;align-items:center;gap:.5em;font:400 11.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--night-muted);padding:.45em .7em;border-radius:999px;box-shadow:0 0 0 1px var(--night-line)}.labs .dot{width:7px;height:7px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 3px rgba(242,210,0,.16)}.labs .dot.dev{background:var(--teal);box-shadow:0 0 0 3px rgba(37,129,147,.25)}.labs .pf-frame{background:#0b0d10;border-radius:14px;box-shadow:0 0 0 1px var(--night-line);overflow:hidden}.labs .pf-chrome{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid var(--night-line)}.labs .pf-chrome span{width:9px;height:9px;border-radius:50%;background:hsla(0,0%,100%,.16)}.labs .pf-tabs{display:flex;gap:4px;padding:10px 12px 0}.labs .pf-tab{background:transparent;border:0;color:var(--night-muted);font:500 13px/1 var(--body);padding:.55em .9em;border-radius:999px;cursor:pointer;transition:color .2s ease,background-color .2s ease}.labs .pf-tab[aria-selected=true]{color:var(--night-text);background:hsla(0,0%,100%,.1)}.labs .pf-screen{position:relative;aspect-ratio:1440/430;margin:10px 12px 12px;border-radius:8px;overflow:hidden;background:#0b0d10}.labs .pf-screen img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top;opacity:0;transition:opacity .24s var(--ease-out)}.labs .pf-screen img.is-active{opacity:1}.labs .pf-card.pf-aptation{background:var(--apt-ground);box-shadow:0 0 0 1px rgba(196,240,190,.14),0 30px 60px rgba(0,0,0,.35)}.labs .pf-aptation .apt-relief{width:66%}.labs .pf-aptation .tag{font:600 11px/1 var(--apt-font);letter-spacing:.14em;color:var(--apt-support);box-shadow:0 0 0 1px rgba(182,216,213,.3)}.labs .pf-aptation .dot{background:var(--apt-mint);box-shadow:0 0 0 3px rgba(196,240,190,.18)}.labs .pf-aptation .pf-copy h3{font-size:clamp(2rem,3vw,2.6rem);margin:1rem 0 .75rem}.labs .pf-aptation .pf-copy h3 a{display:inline-block}.labs .pf-aptation .apt-lockup{transition:color .12s ease}.labs .pf-aptation .pf-copy h3 a:hover .apt-lockup{color:var(--apt-mint)}.labs .pf-aptation .pf-lead{font:400 16px/1.7 var(--apt-font);color:rgba(240,247,244,.86)}.labs .pf-aptation .pf-points{font:400 14.5px/1.55 var(--apt-font);color:rgba(240,247,244,.7)}.labs .pf-aptation .pf-points li:before{background:var(--apt-mint)}.labs .pf-aptation .pf-link{font:600 14.5px/1.3 var(--apt-font);color:var(--apt-mint);transition:color .12s ease}.labs .pf-aptation .pf-link:hover{color:#fff}.labs .pf-links{display:flex;flex-wrap:wrap;align-items:baseline;-moz-column-gap:1.6rem;column-gap:1.6rem}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/schibsted/schibsted-grotesk-latin-400.woff2) format("woff2")}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/schibsted/schibsted-grotesk-latin-500.woff2) format("woff2")}.labs .pf-card.pf-trovance{--trv-frost:#f0f4f2;--trv-signal:#3dd4c8;--trv-abyss:#03131a;overflow:hidden;isolation:isolate;background:var(--trv-abyss);box-shadow:0 0 0 1px rgba(240,244,242,.12),0 30px 60px rgba(0,0,0,.35)}.labs .pf-trovance>.trv-water{position:absolute;inset:0;z-index:-1;background:url(/labs/ui/trovance-water.webp) 50%/cover no-repeat}.labs .pf-trovance .tag{border-radius:0;letter-spacing:.08em;color:rgba(240,244,242,.82);box-shadow:0 0 0 1px rgba(240,244,242,.24)}.labs .pf-trovance .dot{border-radius:0;background:var(--trv-signal);box-shadow:none}.labs .pf-trovance .pf-copy h3{font-size:clamp(2rem,3vw,2.6rem);margin:1rem 0 .75rem}.labs .pf-trovance .pf-copy h3 a{display:inline-block}.labs .trv-lockup{display:inline-flex;align-items:center;gap:.3em;font:500 1em/1 Schibsted Grotesk,var(--body);letter-spacing:-.045em;color:var(--trv-frost);transition:color .12s ease}.labs .trv-mk{display:block;flex:none;width:1.06em;height:1.06em;fill:currentColor;transform:translateY(.02em)}.labs .pf-trovance .pf-copy h3 a:hover .trv-lockup{color:var(--trv-signal)}.labs .pf-trovance .pf-lead{font:400 16.5px/1.6 Schibsted Grotesk,var(--body);color:rgba(240,244,242,.86)}.labs .pf-trovance .pf-points{font:400 15px/1.5 Schibsted Grotesk,var(--body);color:rgba(240,244,242,.78)}.labs .pf-trovance .pf-points li:before{border-radius:0;background:var(--trv-signal)}.labs .pf-trovance .pf-link{font:500 15px/1.3 Schibsted Grotesk,var(--body);color:var(--trv-signal);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color .12s ease}.labs .pf-trovance .pf-link:hover{color:#7fdccf}.labs .pf-trovance a:focus-visible,.labs .pf-trovance button:focus-visible{outline-color:var(--trv-signal)}.labs .pf-trovance .pf-frame{background:#1a1c1e;box-shadow:0 0 0 1px rgba(240,244,242,.12)}.labs .pf-trovance .pf-chrome{border-bottom-color:rgba(240,244,242,.1)}.labs .pf-trovance .pf-chrome span{background:rgba(240,244,242,.2)}.labs .pf-trovance .pf-tab{font:500 13px/1 Schibsted Grotesk,var(--body);color:rgba(240,244,242,.72);border-radius:0;transition:color .12s ease,background-color .12s ease}.labs .pf-trovance .pf-tab:hover{color:var(--trv-frost)}.labs .pf-trovance .pf-tab[aria-selected=true]{color:var(--trv-abyss);background:var(--trv-frost)}.labs .pf-trovance .pf-screen{aspect-ratio:2/1;border-radius:6px;background:#0e0f10}.labs .pf-trovance .pf-screen img{transition:none}.labs .pf-resolve{position:absolute;inset:0;z-index:1;width:100%;height:100%;opacity:0;pointer-events:none}@media (max-width:960px){.labs .pf-trovance>.trv-water:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,19,26,.62),rgba(3,19,26,.42) 55%,rgba(3,19,26,0) 85%)}}.labs .pf-links .pf-more{margin-left:0}.labs .pf-aptation .pf-frame{background:#082a2d;border-radius:12px;box-shadow:0 0 0 1px rgba(196,240,190,.16),0 28px 64px rgba(3,22,24,.5)}.labs .pf-aptation .pf-chrome{border-bottom-color:rgba(196,240,190,.12)}.labs .pf-aptation .pf-chrome span{background:rgba(240,247,244,.2)}.labs .pf-aptation .pf-tab{font:600 13px/1 var(--apt-font);color:rgba(240,247,244,.68);border-radius:6px;transition:color .12s ease,background-color .2s ease}.labs .pf-aptation .pf-tab:hover{color:var(--apt-paper)}.labs .pf-aptation .pf-tab[aria-selected=true]{color:var(--apt-ink);background:var(--apt-mint)}.labs .pf-aptation .pf-screen{aspect-ratio:1440/600;border-radius:6px;background:var(--apt-neutral)}.labs .pf-aptation .pf-screen img{transition:opacity .2s ease}@media (max-width:960px){.labs .pf-aptation .apt-relief{width:100%}.labs .pf-aptation .apt-relief:after{background:linear-gradient(180deg,var(--apt-ground) 0,rgba(12,51,54,.88) 42%,rgba(12,51,54,.45) 72%,rgba(12,51,54,.25) 100%)}}.labs .concept{display:grid;grid-template-columns:1fr auto 1fr auto 1.3fr;gap:1rem;align-items:center;padding:1.6rem;border-radius:14px;background:#0b0d10;box-shadow:0 0 0 1px var(--night-line);min-height:240px}.labs .concept-col{display:grid;gap:.6rem}.labs .concept-k{font:400 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--night-muted);margin-bottom:.3rem}.labs .concept-doc{height:34px;border-radius:6px;background:hsla(0,0%,100%,.08);box-shadow:0 0 0 1px var(--night-line)}.labs .concept-doc.short{width:70%}.labs .concept-bar{height:8px;border-radius:4px;background:var(--blue)}.labs .concept-bar.low{background:var(--yellow)}.labs .concept-gap{font:500 13px/1.3 var(--body);color:var(--night-text);padding:.55rem .7rem;border-radius:6px;background:hsla(0,0%,100%,.06);box-shadow:0 0 0 1px var(--night-line)}.labs .concept-gap.dim{color:var(--night-muted)}.labs .concept-arrow{width:26px;height:1px;background:var(--night-muted);position:relative}.labs .concept-arrow:after{content:"";position:absolute;right:-1px;top:-3px;border:3.5px solid transparent;border-left:3.5px solid var(--night-muted)}.labs .process{padding-bottom:0}.labs .proc{display:flex;gap:10px;height:74vh;min-height:560px;max-height:760px;padding:0 var(--gutter);max-width:calc(var(--max) + var(--gutter) * 2);margin:0 auto 112px}.labs .proc-panel{position:relative;flex:1;min-width:0;border-radius:18px;overflow:hidden;background:var(--night);color:#fff;cursor:pointer;transition:flex .7s var(--ease-in-out);isolation:isolate}.labs .proc-panel.is-open{flex:2.6}.labs .proc-photo{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transform:scale(1.04);transition:transform .9s var(--ease-out)}.labs .proc-panel.is-open .proc-photo{transform:scale(1)}.labs .proc-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,9,9,.35),rgba(9,9,9,.1) 35%,rgba(9,9,9,.75))}.labs .proc-head{position:absolute;top:26px;left:26px;right:26px;display:flex;align-items:baseline;gap:.5em;font:600 clamp(1.6rem,2.6vw,2.4rem)/1 var(--display);letter-spacing:-.02em}.labs .proc-n{color:hsla(0,0%,100%,.55)}.labs .proc-head h3{color:#fff;font-size:inherit}.labs .proc-body{position:absolute;left:26px;right:26px;bottom:26px;max-width:42ch;opacity:0;transform:translateY(8px);transition:opacity .4s var(--ease-out) .15s,transform .4s var(--ease-out) .15s}.labs .proc-panel.is-open .proc-body{opacity:1;transform:none}.labs .proc-lead{font:600 1.15rem/1.35 var(--display);margin-bottom:.5rem}.labs .proc-text{font-size:15px;color:hsla(0,0%,100%,.78)}.labs .proc-ui{position:absolute;right:26px;top:50%;transform:translateY(-58%);width:300px;opacity:0;transition:opacity .4s var(--ease-out) .25s;pointer-events:none}.labs .proc-panel.is-open .proc-ui{opacity:1}.labs .ui-card{position:relative;background:rgba(12,14,18,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:12px;box-shadow:0 0 0 1px hsla(0,0%,100%,.16),0 20px 50px rgba(0,0,0,.35);padding:14px 16px 16px;font-size:13px;color:#f4f5f7}.labs .ui-head{font:400 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:hsla(0,0%,100%,.6);margin-bottom:12px}.labs .ui-row{display:flex;justify-content:space-between;gap:1rem;padding:7px 0;border-top:1px solid hsla(0,0%,100%,.1)}.labs .ui-row b{font-weight:500;color:#fff}.labs .ui-row b.ok{color:#7fe3c1}.labs .ui-row b.warn{color:var(--yellow)}.labs .ui-btn{margin-top:12px;display:inline-block;background:var(--blue-ink);color:#fff}.labs .ui-btn,.labs .ui-done{font:500 13px/1 var(--body);padding:9px 12px;border-radius:999px}.labs .ui-done{position:absolute;left:16px;right:16px;bottom:16px;background:#fff;color:var(--ink);text-align:center;opacity:0}.labs .proc-cursor{position:absolute;left:30px;top:30px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.labs .proc-click{position:absolute;width:22px;height:22px;border-radius:50%;border:2px solid var(--blue);opacity:0;left:19px;top:19px}@keyframes labs-cursor{0%,8%{transform:translate(0)}45%,62%{transform:translate(46px,132px)}88%,to{transform:translate(180px,40px)}}@keyframes labs-click{0%,46%{transform:translate(46px,132px) scale(.4);opacity:0}50%{opacity:1}60%,to{transform:translate(46px,132px) scale(1.6);opacity:0}}@keyframes labs-done{0%,52%{opacity:0;transform:translateY(6px)}58%,92%{opacity:1;transform:none}to{opacity:0}}@keyframes labs-btn{0%,48%{transform:scale(1)}52%{transform:scale(.96)}56%,to{transform:scale(1)}}.labs .proc.is-visible .is-open .proc-cursor{animation:labs-cursor 7s var(--ease-in-out) infinite}.labs .proc.is-visible .is-open .proc-click{animation:labs-click 7s ease-out infinite}.labs .proc.is-visible .is-open .ui-done{animation:labs-done 7s var(--ease-out) infinite}.labs .proc.is-visible .is-open .ui-btn{animation:labs-btn 7s ease-out infinite}.labs .principles-grid{display:grid;grid-template-columns:5fr 7fr;gap:4rem;align-items:start}.labs .principles-intro{position:sticky;top:96px}.labs .principles-intro h2{margin:.9rem 0 1rem}.labs .principles-list li{display:grid;grid-template-columns:44px 1fr;gap:1rem;padding:1.6rem 0;border-top:1px solid var(--line)}.labs .principles-list li:last-child{border-bottom:1px solid var(--line)}.labs .principles-list .n{font:700 11px/1 var(--display);color:var(--blue-2);padding-top:.55rem}.labs .principles-list h3{margin-bottom:.45rem}.labs .principles-link{display:inline-block;margin-top:1.4rem;font:500 15px/1 var(--display);color:var(--blue-deep);border-bottom:1px solid;padding-bottom:3px;transition:opacity .2s var(--ease-out)}.labs .principles-link:hover{opacity:.7}.labs .fire{background:var(--paper-2)}.labs .fire-all{font:500 16px/1 var(--display);color:var(--ink);white-space:nowrap}.labs .fire-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem 1.5rem}.labs .fire-card{display:grid;gap:.9rem;align-content:start}.labs .fire-img{display:block;aspect-ratio:430/310;overflow:hidden;background:var(--line)}.labs .fire-img img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .7s var(--ease-out)}@media (hover:hover) and (pointer:fine){.labs .fire-card:hover .fire-img img{transform:scale(1.03)}.labs .fire-card:hover .fire-title{color:var(--blue-deep)}}.labs .fire-title{font:600 clamp(1.25rem,1.6vw,1.55rem)/1.2 var(--display);letter-spacing:-.015em;color:var(--ink);transition:color .2s ease}.labs .fire-desc{font-size:15px;line-height:1.5;color:var(--text)}@media (max-width:820px),(min-width:961px){.labs .fire-card:nth-child(10){display:none}}.labs .close{background:var(--paper)}.labs .close-grid{display:grid;grid-template-columns:7fr 5fr;gap:3rem;align-items:end}.labs .close-h{font-size:clamp(2.4rem,5vw,4rem);margin:.7rem 0 1rem}.labs .close-actions{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.labs .mail{font:500 15px/1 var(--body);color:var(--blue-deep)}.labs .svc-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:56px;padding-top:22px;border-top:1px solid var(--line);font:500 15px/1.4 var(--display)}.labs .svc-k{color:var(--muted)}.labs .svc-row a{color:var(--ink);border-bottom:1px solid transparent;transition:color .16s ease,border-color .16s ease}.labs .svc-row a:hover{color:var(--blue-deep);border-color:currentColor}.js .labs .reveal{opacity:0;transform:translateY(10px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}.js .labs .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.labs .hero{height:100vh}.labs .fx-readout{display:none}.labs .band-photo>img{transform:none!important;inset:0;height:100%}.labs .pf-card{position:static;transform:none!important;opacity:1!important}.labs .pf-card.apt,.labs .pf-card.pf-trovance{position:relative}.labs .proc-body,.labs .proc-panel,.labs .proc-photo,.labs .proc-ui{transition:none}.labs .proc-click,.labs .proc-cursor,.labs .ui-btn,.labs .ui-done{animation:none!important}.labs .ui-done{opacity:0}.js .labs .reveal{opacity:1;transform:none;transition:none}}@media (max-width:960px){.labs .cf-menu{display:inline-block}.labs .pf-card{grid-template-columns:1fr;gap:1.6rem;padding:1.4rem}.labs .principles-grid{grid-template-columns:1fr;gap:2rem}.labs .principles-intro{position:static}.labs .fire-grid{grid-template-columns:1fr 1fr}}@media (max-width:820px){.labs section{padding:72px 0}.labs .hero{height:150vh}.labs .hero-copy{padding-top:100px;padding-bottom:72px}.labs .fx-readout{font-size:10.5px;letter-spacing:.08em;justify-content:flex-end}.labs .fx-readout>span:first-child{display:none}.labs .close-grid{grid-template-columns:1fr;gap:2rem}.labs .section-head{flex-direction:column;align-items:flex-start}.labs .section-note{text-align:left}.labs .band-photo{min-height:max(420px,52vh)}.labs .proc{flex-direction:column;height:auto;max-height:none;gap:10px;margin-bottom:72px}.labs .proc-panel{flex:none;height:62vh;min-height:440px}.labs .proc-panel.is-open{flex:none}.labs .proc-ui{width:min(300px,78%);top:84px;bottom:auto;transform:none;right:18px}.labs .proc-panel{height:66vh;min-height:520px}.labs .proc-body,.labs .proc-head{left:18px;right:18px}.labs .proc-body{bottom:18px}.labs .concept,.labs .fire-grid{grid-template-columns:1fr}.labs .concept{gap:1.2rem;padding:1.2rem}.labs .concept-arrow{width:1px;height:22px;justify-self:center}.labs .concept-arrow:after{right:-3px;top:auto;bottom:-1px;border:3.5px solid transparent;border-top:3.5px solid var(--night-muted)}}.labs .build-head{align-items:flex-start;margin-bottom:4.5rem;padding-bottom:2.5rem;border-bottom:1px solid var(--ink)}.labs .build-head h2{max-width:16ch}.labs .build-intro{max-width:46ch;margin:.4rem 0 0;flex:0 1 46ch}@media (max-width:960px){.labs .build-head{margin-bottom:2.5rem;padding-bottom:1.8rem}.labs .build-intro{max-width:58ch;flex:none}}.labs .pf-screen{container-type:inline-size}.labs .pf-view{position:absolute;inset:0;opacity:0;transition:opacity .24s var(--ease-out)}.labs .pf-view.is-active{opacity:1}@media (max-width:820px){.labs .hero-video{-o-object-position:80% 50%;object-position:80% 50%}}.labs .who{padding-top:0}.labs .who-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));-moz-column-gap:3rem;column-gap:3rem;border-top:1px solid var(--ink)}.labs .who-grid li{border-bottom:1px solid var(--line)}.labs .who-grid a{display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:4px 16px;padding:1.4rem 0 1.5rem}.labs .who-name{font:600 clamp(1.2rem,1.7vw,1.45rem)/1.25 var(--display);letter-spacing:-.012em;color:var(--ink);transition:color .2s ease}.labs .who-line{grid-column:1;font-size:15.5px;color:var(--muted)}.labs .who-go{grid-column:2;grid-row:1/3;align-self:center;justify-self:end;color:var(--muted);transition:transform .3s var(--ease-out),color .2s ease}@media (hover:hover) and (pointer:fine){.labs .who-grid a:hover .who-name{color:var(--blue-deep)}.labs .who-grid a:hover .who-go{transform:translateX(4px);color:var(--ink)}}.labs .pf-more{margin-left:1.4rem}@media (max-width:820px){.labs .who-grid{grid-template-columns:1fr}.labs .pf-more{display:block;margin-left:0;margin-top:.8rem}}@media (prefers-reduced-motion:reduce){.labs .who-go{transition:none}}.labs .film{max-width:880px;margin:.6rem auto 4.2rem;scroll-margin-top:96px}.labs .film-frame{position:relative;margin:0;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#0b0d10;box-shadow:0 0 0 1px var(--line),0 40px 80px -40px rgba(9,9,9,.35)}.labs .film-frame video{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;background:#f2f2f2}.labs .film-play{position:absolute;inset:0;display:grid;place-items:center;border:0;padding:0;background:rgba(9,9,9,.16);cursor:pointer}.labs .film-play span{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;background:#579bc6;box-shadow:0 16px 40px -12px rgba(9,9,9,.5);transition:transform .2s var(--ease-out)}.labs .film-play:active span{transform:scale(.96)}.labs .film-ctl{position:absolute;right:16px;bottom:16px;display:flex;gap:8px}.labs .film-cta{position:absolute;left:42.7%;top:69.2%;width:17.3%;height:7.9%;border-radius:99px}.labs .film-cta:focus-visible{outline:2px solid #579bc6;outline-offset:3px}.labs .film-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px 0 12px;border:0;border-radius:99px;background:rgba(9,9,9,.58);color:#f9f9f9;font:500 14px/1 var(--display);letter-spacing:-.005em;cursor:pointer;backdrop-filter:blur(8px);transition:background-color .2s ease,transform .15s var(--ease-out)}.labs .film-btn:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.labs .film-btn:hover{background:rgba(9,9,9,.78)}.labs .film-play:hover span{transform:scale(1.04)}}.labs .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media (max-width:820px){.labs .film{margin:0 auto 2.8rem}.labs .film-frame{border-radius:12px}.labs .film-ctl{right:10px;bottom:10px;gap:6px}.labs .film-btn{height:34px;padding:0 11px 0 9px;font-size:13px}.labs .film-play span{width:64px;height:64px}}.labs .lbf-film-frame{position:absolute;inset:0;isolation:isolate;container-type:inline-size;overflow:hidden;background:#03131a}.labs .lbf-film-frame:has(.lbf-film-surface:focus-visible),.labs .lbf-film-frame:has(.lbf-film-video:focus-visible){outline:2px solid #3dd4c8;outline-offset:-2px}.labs .lbf-film-loop,.labs .lbf-film-video{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.labs .lbf-film-video:focus-visible{outline:none}.labs .lbf-film-loop{pointer-events:none;opacity:0}.labs .lbf-film-loop.is-on{opacity:1}.labs .lbf-film-surface{position:absolute;inset:0;padding:0;border:0;background:transparent;cursor:pointer}.labs .lbf-film-surface:focus-visible{outline:none}.labs .lbf-film-pill{position:absolute;left:clamp(10px,3%,20px);bottom:clamp(10px,3%,20px);display:flex;align-items:center;gap:12px;padding:6px 16px 6px 6px;border-radius:999px;background:#03131a;color:#f0f4f2;box-shadow:0 14px 32px -14px rgba(3,19,26,.8);transition:transform .3s cubic-bezier(.22,1,.36,1)}.labs .lbf-film-surface:hover .lbf-film-pill{transform:scale(1.04)}.labs .lbf-film-surface:active .lbf-film-pill{transform:scale(.96)}.labs .lbf-film-disc{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f0f4f2;color:#03131a}.labs .lbf-film-icon{width:15px;height:15px}.labs .lbf-film-icon-play{margin-left:2px}.labs .lbf-film-pill-text{font:12px/1.35 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#f0f4f2}.labs .lbf-film-pill-long{display:none}@container (min-width: 28rem){.labs .lbf-film-pill-long{display:inline}}.labs .lbf-film-toggle{position:absolute;right:clamp(4px,calc(3% - 6px),14px);bottom:clamp(4px,calc(3% - 6px),14px);display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}.labs .lbf-film-toggle>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(3,19,26,.5);color:#f0f4f2;transition:background-color .2s ease}.labs .lbf-film-toggle:focus-visible>span,.labs .lbf-film-toggle:hover>span{background:rgba(3,19,26,.8)}.labs .lbf-film-toggle .lbf-film-icon{width:14px;height:14px}@media (prefers-reduced-motion:reduce){.labs .lbf-film-pill,.labs .lbf-film-toggle>span{transition:none}}