:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--night:#070a22;--night-2:#0b1033;--ink:#0b1033;--cream:#fff8ec;--cream-soft:#fff8ecd1;--gold:#ffcf6b;--blue:#2e90ff;--link:#8cc4ff;--rose:#ff8fb8;--mint:#7ff0cf;--error:#ff9b8f;--shade:5, 7, 24;--nav-h:76px;--gutter:clamp(20px, 4.6vw, 76px);--measure:58ch;--font:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--radius:22px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 12px);-webkit-text-size-adjust:100%;font-family:var(--font);background-color:#0000;background-image:radial-gradient(1px 1px at 12% 18%,#fff6e0e6,#0000 60%),radial-gradient(1px 1px at 72% 9%,#fff6e0cc,#0000 60%),radial-gradient(1.5px 1.5px at 38% 34%,#fff6e0b3,#0000 60%),radial-gradient(1px 1px at 88% 41%,#fff6e0cc,#0000 60%),radial-gradient(1px 1px at 22% 62%,#fff6e099,#0000 60%),radial-gradient(1.5px 1.5px at 61% 71%,#fff6e0b3,#0000 60%),radial-gradient(1px 1px at 7% 88%,#fff6e099,#0000 60%),linear-gradient(#040a24 0%,#0b1846 38%,#172463 64%,#1d1a52 82%,#0c0d2c 100%);background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat,repeat,repeat,repeat,repeat;background-size:420px 420px,380px 380px,520px 520px,460px 460px,400px 400px,560px 560px,480px 480px,100% 100%;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box,border-box,border-box,border-box;background-color:var(--night);font-size:18px;line-height:1.55}body{min-width:320px;color:var(--cream);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0}body,button,input,textarea{font:inherit}h1,h2,h3,p,ol,ul,figure,blockquote{margin:0}ol,ul{padding:0;list-style:none}a{color:inherit;text-decoration:none}img,picture,svg{max-width:100%;display:block}button{cursor:pointer;color:inherit;background:0 0;border:0;padding:0}main:focus,section[tabindex="-1"]:focus{box-shadow:none;outline:none}:focus-visible{outline:2px solid var(--link);outline-offset:2px;box-shadow:0 0 0 6px var(--night);border-radius:6px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--gutter);z-index:100;background:var(--cream);color:var(--ink);transition:top .16s var(--ease-out);border-radius:999px;padding:12px 20px;font-weight:650;position:fixed;top:-80px}.skip-link:focus{top:14px}.world{z-index:0;pointer-events:none;opacity:0;width:100%;height:100lvh;transition:opacity .9s var(--ease-out);display:block;position:fixed;inset:0}.world-on .world{opacity:1}.static .world{display:none}main,.footer{z-index:1;position:relative;overflow-x:clip}.stage{position:relative}.planet-still{width:min(100%,560px);height:auto;margin:auto}.js .planet-still{opacity:0}:is(.no-world,.show-still) .planet-still{opacity:1}.stage--hero{place-items:center;display:grid}.planet-shot{width:min(100%,620px);height:auto;margin:auto}.has-shot .planet-still{display:none}.eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-size:.72rem;font-weight:600}.display{font-weight:900}.btn{min-height:48px;transition:transform .38s var(--ease-spring), background .2s, color .2s, box-shadow .3s;border-radius:999px;align-items:center;gap:.55em;padding:.85em 1.5em;font-size:1rem;font-weight:750;line-height:1;display:inline-flex}.btn--pill{background:var(--cream);color:var(--ink);box-shadow:0 10px 30px -12px #ffcf6b8c}.btn--pill:hover{background:var(--gold);transform:translateY(-3px)rotate(-1.5deg);box-shadow:0 16px 36px -12px #ffcf6bcc}.btn--pill:active{transform:translateY(0)scale(.97)}.btn--pill:focus-visible{box-shadow:0 0 0 6px var(--night)}.btn span[aria-hidden]{transition:transform .38s var(--ease-spring);display:inline-block}.btn:hover span[aria-hidden]{transform:translate(2px,-2px)}.hero__cta:hover span[aria-hidden]{transform:translateY(4px)}.link{min-height:24px;color:var(--link);text-underline-offset:.3em;font-weight:650;-webkit-text-decoration:underline #8cc4ff8c;text-decoration:underline #8cc4ff8c;text-decoration-thickness:2px;transition:text-decoration-color .2s,color .2s;display:inline-block}.link:hover{color:#b9dcff;text-decoration-color:currentColor}.link--arrow:after{content:"↗";content:"↗" / "";transition:transform .38s var(--ease-spring);margin-left:.35em;text-decoration:none;display:inline-block}.link--arrow:hover:after{transform:translate(3px,-3px)}.nav{z-index:50;height:var(--nav-h);padding:0 var(--gutter);-webkit-backdrop-filter:blur(16px)saturate(1.3);backdrop-filter:blur(16px)saturate(1.3);background:#070a22b3;border-bottom:1px solid #fff8ec14;align-items:center;gap:28px;display:flex;position:fixed;inset:0 0 auto}.nav__brand{letter-spacing:-.01em;align-items:center;min-height:24px;font-size:1.25rem;font-weight:900;display:inline-flex}.nav__links{gap:26px;margin-left:auto;display:flex}.nav__links a{padding:6px 0;font-weight:650;position:relative}.nav__links a:after{content:"";background:var(--gold);transform-origin:0;height:2px;transition:transform .38s var(--ease-spring);border-radius:2px;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav__links a:hover:after,.nav__links a[aria-current]:after{transform:scaleX(1)}.nav__cta{margin-left:8px}.hero{min-height:100svh;padding:calc(var(--nav-h) + 24px) 0 40px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid}.hero__copy{padding-left:var(--gutter);max-width:760px;padding-right:16px}.hero__title{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2.6rem,4.7vw,5.4rem);font-weight:800;line-height:1.02}.hero__sub{max-width:30ch;color:var(--cream-soft);margin-top:26px;font-size:clamp(1.1rem,1.5vw,1.35rem);line-height:1.5}.hero__cta{margin-top:34px}.stage--hero{height:min(78vh,780px)}.section__head{max-width:640px}.section__head .eyebrow{margin-bottom:16px}.section__title{letter-spacing:-.015em;text-wrap:balance;font-size:clamp(2rem,3.5vw,3.3rem);font-weight:700;line-height:1.04}.work{grid-template-columns:minmax(0,46fr) minmax(0,54fr);padding-top:6vh;display:grid}.work__copy{padding:0 16px 0 var(--gutter);grid-area:1/1}.work__stage{grid-area:1/2}.stage--sticky{height:100vh;position:sticky;top:0}.proj{min-height:82vh;transition:opacity .5s var(--ease-out);align-content:center;gap:14px;padding:6vh 0;display:grid}.proj__mark{align-items:center;gap:16px;display:flex}.proj__num{font-family:var(--font-mono);letter-spacing:.12em;color:var(--gold);font-size:.8rem;font-weight:600}.proj__logo{width:64px;height:64px;transition:transform .5s var(--ease-spring);background:#fff;border-radius:18px;place-items:center;display:grid;overflow:hidden;transform:rotate(-4deg);box-shadow:0 10px 26px -10px #0009,0 0 0 3px #fff8ec24}.proj__logo--dark{background:#0d1224}.proj__logo img{object-fit:contain;width:100%;height:100%}@media (hover:hover){.proj:hover .proj__logo{transform:rotate(3deg)scale(1.06)}}.proj__cat{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-top:8px;font-size:.74rem;font-weight:600}.proj__title{letter-spacing:-.02em;font-size:clamp(2.3rem,4.1vw,3.8rem);font-weight:800;line-height:1}.proj__title a{background-image:linear-gradient(var(--gold), var(--gold));transition:background-size .5s var(--ease-out);background-position:0 100%;background-repeat:no-repeat;background-size:0% 4px;padding-bottom:6px;display:inline-block}@media (hover:hover){.proj__title a:hover{background-size:100% 4px}}.proj__claim{max-width:30ch;font-size:clamp(1.15rem,1.6vw,1.4rem);font-weight:650;line-height:1.35}.proj__body{gap:12px;margin-top:6px;display:grid}.proj__desc{max-width:var(--measure);color:var(--cream-soft)}.proj__built{font-family:var(--font-mono);color:var(--cream-soft);max-width:60ch;font-size:.8rem;line-height:1.6}.proj__meta{color:var(--cream);font-size:.9rem;font-weight:650}.work__more{padding:4vh 0 18vh;font-size:1.15rem}.motion .proj.is-quiet{opacity:.7}.motion .proj.is-quiet:focus-within{opacity:1}.work.is-paging{height:100svh;scroll-margin-top:calc(-1 * (var(--nav-h) + 12px));grid-template-rows:minmax(0,1fr);padding-top:0}.work.is-paging .work__copy{min-height:0;padding-top:calc(var(--nav-h) + 3vh);flex-direction:column;padding-bottom:4vh;display:flex}.work.is-paging .projects{margin-block:auto;display:grid}.work.is-paging .proj{opacity:0;pointer-events:none;grid-area:1/1;min-height:0;padding:3vh 0;transition:none}.work.is-paging .proj.is-current{opacity:1;pointer-events:auto}.work.is-paging .work__more{padding:0}.pager{z-index:5;-webkit-backdrop-filter:blur(12px)saturate(1.3);backdrop-filter:blur(12px)saturate(1.3);transition:opacity .4s var(--ease-out), transform .4s var(--ease-out);background:#070a22b3;border:1px solid #fff8ec24;border-radius:999px;padding:8px 10px;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px -14px #000000b3}.pager.is-away{opacity:0;pointer-events:none;transform:translate(-50%,14px)}.pager ol{align-items:center;gap:4px;display:flex}.pager__dot{width:24px;height:24px;transition:width .45s var(--ease-out);border-radius:999px;flex:none;place-items:center;display:grid}.pager__dot:before{content:"";width:7px;height:7px;transition:width .45s var(--ease-out), background-color .25s, box-shadow .25s;background:#ffffffb3;border-radius:999px}.pager__dot:hover:before{background:#fff}.pager__dot[aria-current]{width:36px}.pager__dot[aria-current]:before{background:#fff;width:24px;box-shadow:0 0 12px #ffffff8c}.words{grid-template-columns:minmax(0,46fr) minmax(0,54fr);padding-top:10vh;display:grid}.words__stage{grid-area:1/2}.words__copy{padding:0 16px 0 var(--gutter);grid-area:1/1}.quotes{gap:30vh;margin:16vh 0 24vh;display:grid}.quote{background:var(--cream);color:var(--ink);transform-origin:100% 80%;border-radius:30px;padding:30px 34px 26px;position:relative;box-shadow:0 30px 60px -30px #000000a6}.quote:before{content:"";border-style:solid;border-width:12px 0 12px 18px;border-color:transparent transparent transparent var(--cream);position:absolute;bottom:34px;right:-16px}.quote blockquote p{font-size:clamp(1.12rem,1.55vw,1.32rem);font-weight:650;line-height:1.45}.quote figcaption{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:10px;margin-top:18px;font-size:.78rem;font-weight:650;display:inline-flex}.quote figcaption:before{content:"";background:var(--dot,var(--blue));border-radius:50%;width:10px;height:10px}.quotes li:first-child{--dot:#23a55a}.quotes li:nth-child(2){--dot:#d1a100}.quotes li:nth-child(3){--dot:#2e90ff}.quotes li:nth-child(4){--dot:#c9493f}.quotes li:nth-child(5){--dot:#f26b1d}.quotes li:nth-child(6){--dot:#0aa0e0}.quotes li:nth-child(2n) .quote{transform:rotate(.8deg)}.quotes li:nth-child(odd) .quote{transform:rotate(-.8deg)}.people{gap:44px;max-width:40rem;margin-top:52px;display:grid}.person{gap:8px;display:grid}.person__name{letter-spacing:-.02em;font-size:clamp(1.8rem,2.8vw,2.5rem);font-weight:800;line-height:1.05}.person__role{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-size:.74rem;font-weight:600;line-height:1.5}.person__bio{max-width:var(--measure);color:var(--cream-soft);margin-top:6px}.how{position:relative}.how__pin{grid-template-columns:minmax(0,46fr) minmax(0,54fr);align-items:center;min-height:100vh;display:grid}.how__copy{padding:calc(var(--nav-h) + 12px) 16px 40px var(--gutter)}.stage--how{height:100vh}.steps{counter-reset:step;gap:22px;margin-top:36px;display:grid}.step{transition:opacity .4s var(--ease-out), transform .5s var(--ease-spring);grid-template-columns:56px minmax(0,1fr);column-gap:16px;padding-left:0;display:grid;position:relative}.step__num{color:var(--gold);grid-row:span 2;font-size:2rem;font-weight:800;line-height:1}.step__title{font-size:clamp(1.5rem,2.2vw,2rem);font-weight:900;line-height:1.1}.step__text{max-width:36ch;color:var(--cream-soft);margin-top:4px}.motion .how.is-playing .step{opacity:.7}.motion .how.is-playing .step.is-on{opacity:1;transform:translate(10px)}.motion .how.is-playing .step.is-on .step__num{color:var(--mint)}.close{text-align:center;min-height:100vh;padding:12vh var(--gutter) 10vh;grid-template-rows:auto auto;align-content:center;justify-items:center;display:grid}.stage--close{width:min(78vw,560px);height:min(50vh,500px)}.close__copy{margin-top:2vh}.close__ask{color:var(--cream-soft);font-size:clamp(1.2rem,2vw,1.6rem);font-weight:700}.close__title{letter-spacing:-.03em;margin-top:10px;font-size:clamp(3.6rem,10vw,9.5rem);font-weight:800;line-height:.95}.close__title a{transition:color .25s;display:inline-block}@media (hover:hover){.close__title a:hover{color:var(--gold)}}.footer{padding:34px var(--gutter) 40px;background:rgba(var(--shade), .92);box-shadow:0 50vh 0 50vh rgba(var(--shade), .92);border-top:1px solid #fff8ec24;overflow-x:visible}.footer:before{content:"";pointer-events:none;background:linear-gradient(180deg, rgba(var(--shade), 0), rgba(var(--shade), .92));height:120px;position:absolute;bottom:100%;left:0;right:0}.footer__row{flex-wrap:wrap;align-items:center;gap:14px 30px;display:flex}.footer__brand{font-size:1.1rem;font-weight:900}.footer__links{gap:22px;display:flex}.footer__links a,.footer__top{text-underline-offset:.3em;align-items:center;min-height:24px;-webkit-text-decoration:underline #fff8ec59;text-decoration:underline #fff8ec59;display:inline-flex}.footer__links a:hover,.footer__top:hover{-webkit-text-decoration-color:var(--cream);text-decoration-color:var(--cream)}.footer__top{margin-left:auto}.footer__copy{width:100%;color:var(--cream-soft);font-size:.85rem}.footer__copy a{text-underline-offset:.3em;align-items:center;min-height:24px;margin-left:14px;-webkit-text-decoration:underline #fff8ec59;text-decoration:underline #fff8ec59;display:inline-flex}.footer__copy a:hover{-webkit-text-decoration-color:var(--cream);text-decoration-color:var(--cream)}.doc{padding:calc(var(--nav-h) + 8vh) var(--gutter) 12vh;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:0 4vw;display:grid}.doc>*{grid-column:1}.doc__stage{grid-area:1/2/span 4}.doc__stage .stage{height:100vh;margin-top:calc(-1 * (var(--nav-h) + 8vh));position:sticky;top:0}.doc__head{max-width:720px}.doc__head .eyebrow+*{margin-top:14px}.doc__title{letter-spacing:-.025em;font-size:clamp(2.8rem,6.4vw,6rem);font-weight:800;line-height:.95}.doc__claim{max-width:32ch;margin-top:18px;font-size:clamp(1.25rem,2vw,1.7rem);font-weight:700;line-height:1.3}.doc__head>.eyebrow:not(:first-child){margin-top:18px}.doc__lede{max-width:var(--measure);color:var(--cream-soft);margin-top:22px;font-size:1.1rem}.doc__back{color:var(--link);text-underline-offset:.35em;text-decoration:underline}.doc__logo{margin-bottom:20px}.prose{max-width:760px;margin-top:44px}.prose__block{border-top:1px solid #fff8ec29;gap:10px;padding:28px 0;display:grid}.prose__block h2{font-size:1.45rem;font-weight:700;line-height:1.2}.prose__block p{max-width:var(--measure);color:var(--cream-soft)}.doc__updated{color:var(--cream-soft);margin-top:36px;font-size:.9rem}.doc__actions{flex-wrap:wrap;gap:14px 32px;padding-top:34px;font-size:1.05rem;display:flex}.projects--index{gap:0;margin-top:48px;display:grid}.projects--index .proj{border-top:1px solid #fff8ec29;min-height:0;padding:40px 0}.projects--index .proj__title{font-size:clamp(2rem,3.4vw,3rem)}.form{gap:26px;max-width:620px;padding-top:36px;display:grid;position:relative}.form__intro{color:var(--cream-soft)}.field{gap:8px;display:grid}.field label{font-size:.92rem;font-weight:700}.field input,.field textarea{background:rgba(var(--shade), .55);width:100%;color:var(--cream);border:1px solid #fff8ec80;border-radius:14px;padding:14px 16px;transition:border-color .2s,background .2s}.field input:focus-visible,.field textarea:focus-visible{border-color:var(--link)}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--error)}.field textarea{resize:vertical;min-height:150px}.field__err{color:var(--error);min-height:1.2em;font-size:.85rem}.form__hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form__status{color:var(--cream);min-height:1.5em}.btn--ink{background:var(--gold);color:var(--ink)}.btn--ink:hover{background:var(--cream);transform:translateY(-3px)rotate(-1deg)}:is(.static,.no-world) :is(.work,.words,.how__pin,.doc){grid-template-columns:minmax(0,1fr)}:is(.static,.no-world) :is(.work__stage,.words__stage,.stage--how,.stage--close,.doc__stage){display:none}:is(.static,.no-world) :is(.work__copy,.words__copy,.how__copy){max-width:820px;padding:0 var(--gutter);grid-area:auto/1}:is(.static,.no-world) .how__pin{min-height:0;padding:12vh 0}:is(.static,.no-world) .quotes{gap:6vh}:is(.static,.no-world) .proj{min-height:0}html.static{scroll-behavior:auto!important}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (forced-colors:active){html,body{color:canvastext;background:canvas}.world,.planet-still,.planet-shot{display:none!important}.proj,.step{opacity:1!important}.quote{color:canvastext;background:canvas;border:1px solid canvastext}.quote:before{display:none}.proj__logo{border:1px solid canvastext}.eyebrow,.proj__cat,.proj__num,.step__num{color:canvastext}.nav__links a[aria-current]{text-underline-offset:.3em;text-decoration:underline}}@media (width<=999px){:root{--bar-h:calc(56px + env(safe-area-inset-top));--nav-h:var(--bar-h);--gutter-left:max(20px, env(safe-area-inset-left));--gutter-right:max(20px, env(safe-area-inset-right));--gutter:max(20px, env(safe-area-inset-left), env(safe-area-inset-right));--stage-top:46svh;--soft:12svh;--pager-h:calc(56px + env(safe-area-inset-bottom));--type-h1:clamp(36px, 10.5vw, 46px);--type-title:35px;--type-claim:19px;--type-step:20px;--type-small:15px;--type-eyebrow:14px;--track-eyebrow:.08em;--tap:44px;--pill-h:48px;--footer-fade:40px}html{-webkit-tap-highlight-color:transparent;scroll-padding-top:calc(var(--bar-h) + 8px);scroll-padding-bottom:calc(var(--pager-h) + 20px);background-repeat:repeat,repeat,repeat,repeat,repeat,repeat,repeat,no-repeat;background-size:420px 420px,380px 380px,520px 520px,460px 460px,400px 400px,560px 560px,480px 480px,100% 100lvh;background-attachment:scroll;font-size:17px}.eyebrow,.proj__cat,.person__role,.proj__num{font-size:var(--type-eyebrow);letter-spacing:var(--track-eyebrow)}.proj__built{font-size:var(--type-eyebrow)}.skip-link:focus{top:calc(env(safe-area-inset-top) + 6px)}.nav{height:var(--bar-h);padding:env(safe-area-inset-top) var(--gutter-right) 0 var(--gutter-left);background:var(--night);-webkit-backdrop-filter:none;backdrop-filter:none;transition:background-color .25s var(--ease-out);border-bottom:0;gap:12px}:root.phone-under-bar .nav,:root.phone-under-bar .nav:after{transition:none}.nav:after{content:"";pointer-events:none;background:linear-gradient(var(--night), #070a2200);height:14px;transition:opacity .25s var(--ease-out);position:absolute;top:100%;left:0;right:0}.phone-snap .nav{background-color:#0000}.phone-snap .nav:after{opacity:0}.nav__brand{min-height:var(--tap)}.nav__brand:active{opacity:.7}.js .nav__links,.js .nav__cta{display:none}html:not(.js) .nav{height:auto;min-height:var(--bar-h);flex-wrap:wrap;gap:0 20px;padding-bottom:8px;position:relative}html:not(.js) .nav__links{flex-wrap:wrap;column-gap:20px;margin-left:0}html:not(.js) .nav__links a{min-height:var(--tap);align-items:center;padding:0;display:inline-flex}html:not(.js) .nav__cta{margin-left:0}.kb-open .nav{position:absolute}.footer{padding:20px var(--gutter-right) calc(20px + env(safe-area-inset-bottom)) var(--gutter-left)}.footer:before{height:var(--footer-fade)}.footer__row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 16px;display:grid}.footer__brand{min-height:var(--tap);justify-self:start;align-items:center;display:inline-flex}.footer__top{min-height:var(--tap);grid-area:1/2;gap:.4em;margin-left:0;font-size:16px}.footer__links{flex-wrap:wrap;grid-column:1/-1;gap:0 22px}.footer__links a{min-height:var(--tap);font-size:16px}.footer__copy{font-size:var(--type-small);grid-column:1/-1}.footer__copy a{min-height:var(--tap)}.footer a:active{opacity:.7}}@media (width<=999px) and (orientation:landscape) and (height<=540px){:root{--bar-h:calc(48px + env(safe-area-inset-top))}}@media (width<=999px) and (hover:none){.btn--pill:hover{background:var(--cream);transform:none;box-shadow:0 10px 30px -12px #ffcf6b8c}.btn--ink:hover{background:var(--gold);transform:none}.btn:hover span[aria-hidden],.hero__cta:hover span[aria-hidden]{transform:none}.btn--pill:active,.btn--ink:active{transform:scale(.97)}.btn--pill:focus-visible{box-shadow:0 0 0 6px var(--night)}.link:hover{color:var(--link);text-decoration-color:#8cc4ff8c}.link--arrow:hover:after{transform:none}.link:active{opacity:.7}.nav__links a:hover:after{transform:scaleX(0)}.nav__links a[aria-current]:after{transform:scaleX(1)}.footer__links a:hover,.footer__top:hover,.footer__copy a:hover{text-decoration-color:#fff8ec59}}.menu-btn{display:none}@media (width<=999px){.js .menu-btn{width:var(--tap);height:var(--tap);color:var(--cream);transition:background-color .2s, transform .3s var(--ease-spring);background:#fff8ec1f;border-radius:50%;flex:none;place-items:center;margin-left:auto;display:grid;position:relative;box-shadow:inset 0 0 0 1px #fff8ec52}.menu-btn:active{transform:scale(.9)}.menu-btn:focus-visible{box-shadow:0 0 0 6px var(--night), inset 0 0 0 1px #fff8ec52;border-radius:50%}.menu-btn__icon{width:18px;height:12px;position:relative}.menu-btn__icon:before,.menu-btn__icon:after{content:"";background:currentColor;border-radius:2px;height:2px;position:absolute;left:0;right:0}.menu-btn__icon:before{top:1px}.menu-btn__icon:after{top:9px}.motion .menu-btn__icon:before,.motion .menu-btn__icon:after{transition:top .26s var(--ease-out), transform .26s var(--ease-out)}.menu-btn[aria-expanded=true] .menu-btn__icon:before{top:5px;transform:rotate(45deg)}.menu-btn[aria-expanded=true] .menu-btn__icon:after{top:5px;transform:rotate(-45deg)}@media (hover:hover){.js .menu-btn:hover{background:#fff8ec33}}.menu-open{scrollbar-gutter:stable;overflow:hidden}.menu-open .nav{z-index:1000;background-color:#0000}.menu-open .nav:after{opacity:0}.menu-lit .world{z-index:999}.menu{z-index:-1;opacity:0;flex-direction:column;display:flex;position:fixed;inset:0}.menu[hidden]{display:none}.menu.is-shown{opacity:1}.menu:before{content:"";z-index:-1;background:linear-gradient(180deg, #040a24 0%, #0b1846 48%, var(--night) 80%);position:absolute;inset:0}.menu.is-clear:before{opacity:0}.motion .menu{transition:opacity .2s var(--ease-out)}.motion .menu:before{transition:opacity .38s var(--ease-out)}.menu__stage{min-height:0;padding-top:var(--bar-h);flex:auto;place-items:center;display:grid}.menu__foot{padding:4px var(--gutter-right) calc(16px + env(safe-area-inset-bottom)) var(--gutter-left);background:var(--night);position:relative}.menu__foot:before{content:"";pointer-events:none;background:linear-gradient(#070a2200, var(--night));height:56px;position:absolute;bottom:100%;left:0;right:0}.menu__list a{letter-spacing:-.01em;border-bottom:1px solid #fff8ec24;justify-content:space-between;align-items:center;gap:16px;min-height:58px;font-size:22px;font-weight:800;line-height:1.2;display:flex}.menu__list a:after{content:"→";content:"→" / "";color:var(--link);transition:transform .38s var(--ease-spring);font-weight:700}.menu__list a[aria-current]{color:var(--gold);text-underline-offset:.3em;text-decoration:underline;text-decoration-thickness:2px}.menu__list a:active:after{transform:translate(5px)}@media (hover:hover){.menu__list a:hover:after{transform:translate(5px)}}.menu__cta{justify-content:center;width:100%;min-height:54px;margin-top:20px}.motion .menu.is-shown .menu__list li,.motion .menu.is-shown .menu__cta{animation:menu-rise .52s var(--ease-out) backwards}.motion .menu.is-shown .menu__list li:nth-child(2){animation-delay:40ms}.motion .menu.is-shown .menu__list li:nth-child(3){animation-delay:80ms}.motion .menu.is-shown .menu__list li:nth-child(4){animation-delay:.12s}.motion .menu.is-shown .menu__cta{animation-delay:.16s}.menu__work[hidden],.menu__item[hidden]{display:none}.menu__pin{justify-items:center;gap:8px;display:grid}.menu__logo{width:64px;height:64px;box-shadow:0 0 0 2px var(--gold), 0 0 18px 2px #ffcf6b80;background:#0d1224;border-radius:18px;place-items:center;display:grid;overflow:hidden}.menu__logo img{object-fit:contain;width:100%;height:100%;padding:12%}.menu__logo--light{background:#fff}.menu__logo--fill img{object-fit:cover;padding:0}.menu__logo--mark img{object-fit:cover;object-position:0 50%;padding:16%}.menu__name{text-align:center;font-size:16px;font-weight:750;line-height:1.25}.menu__pin:active .menu__logo{transform:scale(.94)}.menu__pin:focus-visible{border-radius:14px}.menu__work{width:min(100%,360px);padding:12px var(--gutter-right) 24px var(--gutter-left);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.menu__pin{padding:6px 4px}.menu--pins .menu__work{width:auto;padding:0;display:block}.menu--pins .menu__item{width:0;height:0;position:absolute;top:0;left:0}.menu--pins .menu__item:before{content:"";background:var(--gold);border-radius:1px;width:2px;height:13px;position:absolute;top:-15px;left:-1px}.menu--pins .menu__item:after{content:"";background:var(--gold);border-radius:50%;width:6px;height:6px;position:absolute;top:-3px;left:-3px;box-shadow:0 0 8px 1px #ffcf6bcc}.menu--pins .menu__pin{width:var(--tap);height:var(--tap);border-radius:50%;padding:0;display:block;position:absolute;top:-59px;left:-22px}.menu--pins .menu__logo{border-radius:50%;width:100%;height:100%}.menu--pins .menu__name{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.menu--pins .menu__pin:focus-visible{box-shadow:0 0 0 6px var(--night);border-radius:50%}.menu--pins:not(.is-clear) .menu__work{opacity:0}.motion .menu--pins .menu__work{transition:opacity .2s var(--ease-out)}.motion .menu--pins .menu__item{animation:menu-fade .3s var(--ease-out) backwards;animation-delay:calc(var(--i,0) * 70ms)}.motion .menu--pins .menu__logo{animation:menu-pop .56s var(--ease-spring) backwards;animation-delay:calc(var(--i,0) * 70ms)}.motion .menu:not(.menu--pins) .menu__item{animation:menu-rise .42s var(--ease-out) backwards;animation-delay:calc(80ms + var(--i,0) * 50ms)}}@keyframes menu-rise{0%{opacity:0;transform:translateY(14px)}}@keyframes menu-fade{0%{opacity:0}}@keyframes menu-pop{0%{transform:translateY(10px)scale(.3)}}@media (width<=999px) and (orientation:landscape) and (height<=540px){.menu{flex-direction:row}.menu__stage{flex:50%}.menu__foot{overscroll-behavior:contain;padding:calc(var(--bar-h) + 4px) var(--gutter-right) calc(12px + env(safe-area-inset-bottom)) 40px;background:linear-gradient(90deg, #070a2200, var(--night) 32px);flex-direction:column;flex:50%;display:flex;overflow-y:auto}.menu__foot:before{display:none}.menu__list{margin-top:auto}.menu__cta{flex:none;margin:14px 0 auto}}@media (width<=999px) and (forced-colors:active){.menu-btn{border:1px solid buttontext}.menu-btn__icon:before,.menu-btn__icon:after{forced-color-adjust:none;background:buttontext}}.section__title>.eyebrow{line-height:1.55;display:block}@media (width>=1000px){.hero__talk,.proj__how,.proj__all,.dots,.stage--phone,.home-probe{display:none}}@media (width<=999px){:root{--home-svh:100vh;--home-lvh:100vh;--home-stage-at:min(max(var(--stage-top,46svh), var(--home-copy-end,0px)), 76svh)}@supports (height:100svh){:root{--home-svh:100svh;--home-lvh:100lvh}}.home :is(.hero__cta,.work__more,.proj__num,.proj__desc,.proj__built,.work__stage,.stage--how,.stage--close),.home .section__title .eyebrow>[aria-hidden]{display:none}.home #work-title{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.home .hero{min-height:0;padding:calc(var(--bar-h,56px) + 26px) var(--gutter) 8px;align-content:start;display:block}.home .hero__copy{max-width:34rem;padding:0}.home .hero__title{font-size:var(--type-h1,clamp(36px, 10.5vw, 46px));line-height:1.03}.home .hero__sub{max-width:34ch;color:var(--cream);margin-top:14px;font-size:17px;line-height:1.5}.home .hero__talk{margin-top:22px}.home .stage--hero{aspect-ratio:1;height:auto;max-height:62svh;margin:18px 0 0}.home .work{padding:0;display:block}.home .work__copy{padding:0 var(--gutter);max-width:36rem}.home .projects>.proj{grid-template-columns:56px minmax(0,1fr);align-content:start;gap:0 14px;min-height:0;padding:30px 0;transition:none;display:grid}.home .proj__mark{grid-area:1/1}.home .proj__lead{display:contents}.home .proj__cat{grid-area:1/2;align-self:center;margin:0;line-height:1.45}.home .proj__title{font-size:var(--type-title,35px);grid-area:2/1/3/-1;margin-top:12px;line-height:1.04}.home .proj__title a{min-height:var(--tap,44px)}.home .proj__claim{max-width:32ch;font-size:var(--type-claim,19px);grid-area:3/1/4/-1;margin-top:4px;line-height:1.32}.home .proj__body{flex-wrap:wrap;grid-area:4/1/5/-1;align-items:center;gap:12px 16px;margin-top:10px;display:flex}.home .proj__meta{flex:1 0 100%;font-size:16px;line-height:1.4}.home .proj__how .btn{min-height:var(--pill-h,48px);padding:0 18px;font-size:16px}.home :is(.proj__links,.proj__all) .link{min-height:var(--pill-h,48px);align-items:center;font-size:16px;display:inline-flex}.home .proj__logo{border-radius:16px;width:56px;height:56px}.home #project-rodlab .proj__logo{place-items:center start;padding-left:6px}.home #project-rodlab .proj__logo img{width:auto;max-width:none;height:40px}.home .how__pin{min-height:0;padding:30px 0;display:block}.home .how__copy{padding:0 var(--gutter);max-width:36rem}.home .section__head{max-width:none}.home .section__title{font-size:26px;line-height:1.1}.home .section__title>.eyebrow{margin-bottom:6px}.home .steps{gap:16px;margin-top:18px}.home .step{opacity:1;grid-template-columns:28px minmax(0,1fr);align-content:start;align-items:center;gap:4px 10px;transform:none}.home .step__num{width:28px;height:28px;font-family:var(--font-mono);letter-spacing:0;color:var(--gold);box-shadow:inset 0 0 0 1.5px var(--gold);border-radius:50%;grid-row:auto;place-items:center;font-size:13px;font-weight:700;line-height:1;display:grid}.home .step__title{font-size:var(--type-step,20px);line-height:1.15}.home .step__text{max-width:none;color:var(--cream);grid-column:2;margin:0;font-size:16px;line-height:1.4}.motion .home .how.is-playing .step{opacity:1;transform:none}.home .close{min-height:0;padding:40px var(--gutter) 72px;text-align:center;align-content:start;display:block}.home .footer:before{height:var(--footer-fade,56px)}.home .close__copy{margin:0}.home .close__ask{color:var(--cream);font-size:19px;line-height:1.4}.home .close__title{margin-top:6px;font-size:clamp(46px,15vw,64px);line-height:1.04}.home .close__title a{min-height:var(--tap,44px)}@media (hover:none){.home .proj:hover .proj__logo{transform:rotate(-4deg)}.home .proj__title a:hover{background-size:0% 4px}.home .close__title a:hover{color:inherit}}:root.motion:not(.no-world) .home :where(.hero,.projects>.proj,.how,.close){min-height:100vh;min-height:var(--home-svh);margin-bottom:calc(var(--home-lvh) - var(--home-svh));padding:calc(var(--bar-h,56px) + clamp(12px, var(--home-svh) * .026, 22px)) var(--gutter) calc(var(--pager-h,56px) + 20px);scroll-snap-align:start;scroll-snap-stop:always;scroll-margin-top:calc(var(--bar-h,56px) + 8px);align-content:start;position:relative}:root.motion:not(.no-world) .home .close{min-height:calc(var(--home-svh) - var(--home-footer-h,0px));padding-bottom:max(0px, calc(var(--home-svh) - var(--home-footer-h,0px) - var(--home-stage-at)));flex-direction:column;justify-content:safe center;margin-bottom:0;display:flex}:root.motion:not(.no-world) .home .footer{padding-bottom:calc(var(--pager-h,56px) + 24px)}:root.phone-snap{scroll-snap-type:y mandatory;scroll-padding:0}:root.phone-snap.motion:not(.no-world) .home :where(.hero,.projects>.proj,.how,.close){scroll-margin-top:0}:root.phone-snap.phone-under-bar .nav{background-color:#070a22f0}:root.phone-snap.phone-under-bar .nav:after{opacity:1}@supports (animation-timeline:scroll()){:root.still-on .home .nav{animation:linear both home-bar-clear;animation-timeline:scroll(root);animation-range:0 24px}:root.still-on .home .nav:after{animation:linear both home-bar-fade;animation-timeline:scroll(root);animation-range:0 24px}}:root.phone-mask.motion:not(.no-world) .home :where(.hero,.projects>.proj,.how,.close){--mask-top:calc(var(--mask-bar,0px) - var(--mask-at,0px));--mask-end:calc(var(--mask-line,100vh) - var(--mask-at,0px));-webkit-mask-image:linear-gradient(transparent var(--mask-top), #000 calc(var(--mask-top) + var(--mask-in,16px)), #000 var(--mask-end), transparent calc(var(--mask-end) + 24px));-webkit-mask-image:linear-gradient(transparent var(--mask-top), #000 calc(var(--mask-top) + var(--mask-in,16px)), #000 var(--mask-end), transparent calc(var(--mask-end) + 24px));mask-image:linear-gradient(transparent var(--mask-top), #000 calc(var(--mask-top) + var(--mask-in,16px)), #000 var(--mask-end), transparent calc(var(--mask-end) + 24px))}:root.motion:not(.no-world) .home .stage--hero{display:none}:root.motion:not(.no-world) .home :where(.work__copy,.how__copy){max-width:none;padding:0}:root.motion:not(.no-world) .home .how__pin{padding:0}:root.motion:not(.no-world) .home :where(.hero__copy,.projects>.proj){max-width:none}:root.motion:not(.no-world) .home .projects>.proj{isolation:isolate}:root.motion:not(.no-world) .home .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-top:12px}:root.motion:not(.no-world) .home .step__title{font-size:clamp(17px, 5.2vw, var(--type-step,20px))}:root.motion:not(.no-world) .home .step__text{grid-column:1/-1}:root.motion:not(.no-world) .home .step__num{color:var(--cream);transition:box-shadow .4s;box-shadow:inset 0 0 0 1.5px #fff8ec99}:root.motion:not(.no-world) .home .step.is-lit .step__num{background:var(--gold);color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--gold), 0 0 16px #ffcf6bb3;animation:home-lit .52s var(--ease-spring) both}:root.motion:not(.no-world) .home :where(.hero__copy,.how__copy,.close__copy){isolation:isolate;position:relative}:root.motion:not(.no-world) .home :where(.hero__copy,.how__copy,.close__copy,.projects>.proj):before{content:"";z-index:-1;pointer-events:none;opacity:var(--copy-shade,0);background:#070a22d1;-webkit-mask-image:linear-gradient(#0000,#000 30px calc(100% - 30px),#0000);mask-image:linear-gradient(#0000,#000 30px calc(100% - 30px),#0000)}:root.motion:not(.no-world) .home :where(.hero__copy,.how__copy,.close__copy):before{inset:-30px calc(-1 * var(--gutter));position:absolute}:root.motion:not(.no-world) .home .projects>.proj:before{margin:-30px calc(-1 * var(--gutter));grid-area:1/1/5/-1}.stage.stage--phone{left:0;right:0;top:var(--home-stage-at);height:calc(var(--home-lvh) - var(--home-stage-at));pointer-events:none;position:fixed}.home-probe{width:0;height:100vh;height:var(--home-svh);pointer-events:none;opacity:0;position:fixed;top:0;left:0}.dots{z-index:20;left:50%;bottom:calc(env(safe-area-inset-bottom) + 12px);background:#070a22b3;border:1px solid #fff8ec24;border-radius:999px;padding:5px 8px;position:fixed;transform:translate(-50%)}.dots ol{align-items:center;display:flex}.dots a{width:40px;height:var(--tap,44px);-webkit-tap-highlight-color:transparent;transition:width .42s var(--ease-out);border-radius:999px;place-items:center;display:grid}.dots a:before{content:"";width:8px;height:8px;transition:width .42s var(--ease-out), background-color .25s, transform .2s;background:#ffffffb3;border-radius:999px}.dots a[aria-current]{width:48px}.dots a[aria-current]:before{background:#fff;width:26px;box-shadow:0 0 12px #ffffff8c}.dots a:active:before{transform:scale(.8)}@media (hover:hover){.dots a:hover:before{background:#fff}}.motion .home .is-pending :is(.hero__title,.hero__sub,.hero__talk,.proj__mark,.proj__cat,.proj__title,.proj__claim,.proj__body,.section__head,.steps,.close__ask,.close__title){opacity:0}.motion .home .is-arriving .proj__mark{animation:home-pop .52s var(--ease-spring) both}.motion .home .is-arriving :is(.hero__title,.section__head,.close__ask){animation:home-rise .54s var(--ease-out) both}.motion .home .is-arriving :is(.proj__cat,.proj__title,.proj__claim,.hero__sub,.steps,.close__title){animation:home-rise .54s var(--ease-out) .12s both}.motion .home .is-arriving :is(.proj__body,.hero__talk){animation:home-rise .5s var(--ease-out) .26s both}}@media (width<=999px) and (orientation:landscape) and (height<=540px){:root.motion:not(.no-world) .home :where(.hero,.projects>.proj,.how,.close){padding-top:calc(var(--bar-h,48px) + 14px);padding-bottom:16px;padding-right:calc(50% + 12px)}:root.phone-mask.motion:not(.no-world) .home :where(.hero,.projects>.proj,.how,.close){-webkit-mask-image:none;mask-image:none}:root.motion:not(.no-world) .home .hero__title{font-size:clamp(30px,9.5svh,42px)}:root.motion:not(.no-world) .home .close{text-align:left;padding-bottom:16px}:root.motion:not(.no-world) .home .footer{padding-bottom:calc(20px + env(safe-area-inset-bottom))}.stage.stage--phone{height:var(--home-lvh);top:0;left:50%}.dots{left:75%}}@keyframes home-bar-clear{0%{background-color:#0000}}@keyframes home-bar-fade{0%{opacity:0}}@keyframes home-pop{0%{opacity:0;transform:scale(.5)rotate(-10deg)}}@keyframes home-rise{0%{opacity:0;transform:translateY(18px)}}@keyframes home-lit{0%{transform:scale(.6)}}@media (width<=999px) and (forced-colors:active){.dots a:before{forced-color-adjust:none;background:canvastext}.dots a[aria-current]:before{background:highlight}}@media (width>=1000px){.doc__cat,.doc__visit,.doc__float,.doc__next,.stage--first,.field__hint{display:none}.doc--product>.doc__lede{margin-top:14px}}@media (width<=999px){.doc{--pp-l:var(--gutter-left,max(20px, env(safe-area-inset-left)));--pp-r:var(--gutter-right,max(20px, env(safe-area-inset-right)));--pp-bar:var(--bar-h,calc(56px + env(safe-area-inset-top,0px)));padding:calc(var(--pp-bar) + 28px) var(--pp-r) calc(var(--footer-fade,120px) + 4px) var(--pp-l);display:block}.doc__stage{display:none}.doc__stage .stage{height:auto;margin:0;position:absolute;inset:0}.doc__head{max-width:40rem}.doc .eyebrow{font-size:var(--type-eyebrow,14px);letter-spacing:var(--track-eyebrow,.08em);line-height:1.4}.doc__head .eyebrow+*{margin-top:10px}.doc__title{letter-spacing:-.02em;text-wrap:balance;font-size:clamp(34px,9.6vw,40px);line-height:1.02}.doc__lede{color:var(--cream);margin-top:14px;font-size:1rem;line-height:1.55}.prose{max-width:40rem;margin-top:28px}.prose__block{gap:8px;padding:24px 0}.prose__block h2{font-size:1.25rem;line-height:1.25}.prose__block p{color:var(--cream);font-size:1rem;line-height:1.6}.doc__updated{color:var(--cream);margin-top:20px;font-size:.85rem}.doc__actions{flex-wrap:wrap;gap:4px 28px;padding-top:16px;font-size:1rem;display:flex}.doc--404{padding-bottom:calc(min(var(--footer-fade,120px), 76px) + 4px)}.doc--404 .doc__actions{flex-direction:column;align-items:flex-start;gap:6px;padding-top:12px;font-size:1.06rem}.doc__actions .link,.doc__back{align-items:center;min-height:44px;display:inline-flex}.doc--product{padding:0}.doc--product .doc__head{padding:calc(var(--pp-bar) + 6px) var(--pp-r) 0 var(--pp-l);max-width:none}.doc--product .doc__head>.eyebrow:first-child{margin:0}.doc__back{color:var(--link);letter-spacing:var(--track-eyebrow,.08em);-webkit-tap-highlight-color:transparent;gap:8px;padding-right:16px;font-size:15px;text-decoration:none}.doc__back:before{content:"←";content:"←" / "";font-family:var(--font);letter-spacing:0;font-size:1.15em}.doc__back:active{color:var(--cream)}.doc__logo{align-items:center;gap:14px;margin:4px 0 0;display:flex}.doc__logo .proj__logo{border-radius:15px;flex:none;width:52px;height:52px}.doc__cat{font-family:var(--font-mono);font-size:var(--type-eyebrow,14px);letter-spacing:var(--track-eyebrow,.08em);text-transform:uppercase;color:var(--gold);font-weight:600;line-height:1.35}.doc--product .doc__head>.doc__cat{margin-top:6px}.doc--product .doc__title{font-size:var(--type-title,35px);margin-top:14px;line-height:1.04}.doc--product .doc__claim{max-width:30ch;font-size:var(--type-claim,19px);margin-top:10px;line-height:1.35}.doc--product .doc__head>.eyebrow:not(:first-child){margin-top:12px}.doc__visit{margin-top:18px}:is(.doc__visit,.doc__float) .btn{-webkit-tap-highlight-color:transparent;min-height:48px;padding:0 1.4em}.stage--first,.stage--next{display:none}.doc--product>.doc__lede{padding:36px var(--pp-r) 0 var(--pp-l);max-width:calc(40rem + 40px);margin:0}.doc--product .prose{padding:0 var(--pp-r) 0 var(--pp-l);max-width:calc(40rem + 40px);margin-top:12px}.doc--product .doc__actions{padding:8px var(--pp-r) 40px var(--pp-l)}.doc__float:not([hidden]){z-index:30;left:0;right:0;bottom:calc(14px + env(safe-area-inset-bottom));pointer-events:none;justify-content:center;margin:0;display:flex;position:fixed}.doc__float .btn{pointer-events:auto;box-shadow:0 14px 30px -12px #000000b3,0 10px 30px -14px #ffcf6b99}.doc__next{padding:32px var(--pp-r) calc(var(--footer-fade,120px) + 4px) var(--pp-l);border-top:1px solid #fff8ec29;position:relative}.doc__next-title{font-weight:800;font-size:var(--type-title,35px);letter-spacing:-.02em;line-height:1.05}.doc__next-title a{-webkit-tap-highlight-color:transparent;grid-template-columns:auto 1fr;align-items:center;gap:14px;min-height:44px;display:inline-grid}.doc__next-title .proj__logo{border-radius:15px;flex:none;width:52px;height:52px}.doc__next-name{grid-column:1/-1}.doc__next-title a:after{content:"";z-index:1;position:absolute;inset:0}.doc__next-label{font-family:var(--font-mono);font-size:var(--type-eyebrow,14px);letter-spacing:var(--track-eyebrow,.08em);text-transform:uppercase;color:var(--gold);font-weight:600;line-height:1.35}.doc__next-claim{max-width:30ch;font-weight:650;font-size:var(--type-claim,19px);margin-top:10px;line-height:1.35}.projects--index{margin-top:24px}.projects--index .proj{border-top:1px solid #fff8ec29;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;column-gap:14px;min-height:72px;padding:10px 0;display:grid;position:relative}.projects--index .proj:last-child{border-bottom:1px solid #fff8ec29}.projects--index .proj__mark{display:flex}.projects--index .proj__num,.projects--index .proj__claim,.projects--index .proj__body{display:none}.projects--index .proj__logo{border-radius:13px;width:44px;height:44px}.projects--index .proj__mark:not(:has(.proj__logo)) .proj__num{background:#fff8ec1a;border-radius:13px;place-items:center;width:44px;height:44px;font-size:.85rem;display:grid}.projects--index .proj__cat{margin:0 0 3px;line-height:1.3}.projects--index .proj__title{letter-spacing:-.01em;font-size:1.2rem;font-weight:750;line-height:1.2}.projects--index .proj__title a{-webkit-tap-highlight-color:transparent;background:0 0;padding:0;display:inline}.projects--index .proj__title a:after{content:"";border-radius:14px;position:absolute;inset:0}.projects--index .proj__title a:focus-visible{box-shadow:none;outline:none}.projects--index .proj__title a:focus-visible:after{outline:2px solid var(--link);outline-offset:-2px;box-shadow:inset 0 0 0 5px var(--night)}.projects--index .proj:after{content:"→";content:"→" / "";color:var(--cream-soft);padding-right:2px;font-size:1.15rem}.projects--index .proj:active{background:#fff8ec0f}.people{gap:36px;max-width:40rem;margin-top:36px}.person{display:block}.person__name{font-size:clamp(30px,8.6vw,34px);line-height:1.05}.person__role{margin-top:8px}.person__bio{color:var(--cream);margin-top:12px;font-size:1rem;line-height:1.55}.pp-dots{z-index:30;left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 12px);pointer-events:none;justify-content:center;display:flex;position:fixed}.pp-dots ol{pointer-events:auto;background:#070a22b3;border-radius:999px;align-items:center;padding:6px 10px;display:flex}.pp-dots a{width:40px;height:44px;transition:width .45s var(--ease-out);-webkit-tap-highlight-color:transparent;border-radius:999px;place-items:center;display:grid}.pp-dots a:before{content:"";width:8px;height:8px;transition:width .45s var(--ease-out), background-color .25s, box-shadow .25s;background:#ffffffb3;border-radius:999px}.pp-dots a[aria-current]{width:48px}.pp-dots a[aria-current]:before{background:#fff;width:28px;box-shadow:0 0 12px #ffffff8c}.pp-dots a:focus-visible{outline-offset:-3px;box-shadow:0 0 0 4px var(--night);outline:2px solid #fff}.pp-probe{pointer-events:none;width:0;height:100svh;position:fixed;top:0;left:0}.pp-probe--top{height:40svh}.form{gap:12px;max-width:40rem;padding-top:14px}.form__intro{color:var(--cream);font-size:1rem}.field{gap:5px}.field label{font-size:1rem}.field__hint{font-size:var(--type-small,15px);color:var(--cream);margin-top:-2px}.field input,.field textarea{padding:11px 14px;font-size:17px}.field textarea{height:96px;min-height:0}.field__err{min-height:0;font-size:.85rem}.field__err:empty{display:none}.form .btn--ink{-webkit-tap-highlight-color:transparent;justify-content:center;width:100%;min-height:54px;font-size:1.05rem}.form .btn--ink:active{transform:scale(.98)}.form__status:empty{min-height:0}@media (hover:none){.form .btn--ink:hover{background:var(--gold);transform:none}:is(.doc__visit,.doc__float) .btn--pill:hover{background:var(--cream);transform:none}.projects--index .proj:hover .proj__logo{transform:rotate(-4deg)}}.motion:not(.no-world) :is(.doc--work,.doc--services,.doc--contact,.doc--legal,.doc--404){padding-top:var(--pp-bar)}.motion:not(.no-world) :is(.doc--work,.doc--services,.doc--contact,.doc--legal,.doc--404) .doc__stage{height:30svh;margin:0 calc(-1 * var(--pp-r)) 0 calc(-1 * var(--pp-l));display:block;position:relative}.motion:not(.no-world) .doc--work .doc__stage{height:34svh}.motion:not(.no-world) .doc--legal .doc__stage{height:24svh}.motion:not(.no-world) :is(.doc--work,.doc--services,.doc--contact,.doc--legal,.doc--404) .doc__head{margin-top:20px}.motion:not(.no-world) .doc--contact{flex-direction:column;min-height:100svh;display:flex}.motion:not(.no-world) .doc--contact .doc__stage{height:auto;max-height:36svh;transition:flex-grow .36s var(--ease-out), flex-basis .36s var(--ease-out), max-height .36s var(--ease-out);flex:1 0 20svh}.motion:not(.no-world).kb-open .doc--contact .doc__stage{flex:0 0 0;max-height:0}.motion:not(.no-world) .doc--contact .doc__head{margin-top:16px}.doc--contact .doc__lede{margin-top:10px}.motion:not(.no-world) .doc--product .doc__head{flex-direction:column;min-height:100lvh;display:flex}.motion:not(.no-world) .stage--first{margin:16px calc(-1 * var(--pp-r)) 0 calc(-1 * var(--pp-l));flex:1 0 32svh;display:block}.motion:not(.no-world) .doc__next{min-height:100svh;padding:calc(var(--pp-bar) + 24px) 0 0;border-top:0;flex-direction:column;display:flex}.motion:not(.no-world) .doc__next-copy{padding:0 var(--pp-r) 0 var(--pp-l)}.motion:not(.no-world) .stage--next{flex:1 0 40svh;margin-top:16px;display:block}.motion:not(.no-world) .doc--about{padding:0}.motion:not(.no-world) .doc--about .doc__stage{z-index:0;left:0;right:0;top:var(--pp-about-top,var(--stage-top,46svh));height:calc(100vh - var(--pp-about-top,var(--stage-top,46svh)));height:calc(100lvh - var(--pp-about-top,var(--stage-top,46svh)));pointer-events:none;display:block;position:fixed}.motion:not(.no-world) .doc--about :is(.doc__head,.person){min-height:100svh;padding:calc(var(--pp-bar) + 24px) var(--pp-r) calc(var(--pager-h,56px) + 20px) var(--pp-l);scroll-snap-align:start;scroll-snap-stop:always;scroll-margin-top:var(--pp-snap-margin,calc(-1 * (var(--bar-h,56px) + 8px)));position:relative}.motion:not(.no-world) .doc--about .doc__head{max-width:none;padding-top:calc(var(--pp-bar) + 24px + var(--pp-lift,0px))}.motion:not(.no-world) .doc--about .doc__head .doc__title{font-size:var(--type-h1,clamp(36px, 10.5vw, 46px))}.motion:not(.no-world) .doc--about .doc__head .doc__lede{font-size:var(--type-claim,19px);margin-top:16px;line-height:1.5}.motion:not(.no-world) .doc--about .people{max-width:none;margin:0;display:block}.motion:not(.no-world) .doc--about :is(.doc__head,.person)>*{max-width:36rem;position:relative}.motion:not(.no-world) .doc--about :is(.doc__head,.person)>:before{content:"";z-index:-1;opacity:var(--pp-over,0);pointer-events:none;background:#070a22cc;border-radius:14px;position:absolute;inset:-6px -12px;box-shadow:0 0 20px 12px #070a22cc}html.pp-snap{scroll-snap-type:y mandatory}:root.phone-mask.motion:not(.no-world) .doc--about :is(.doc__head,.person){--mask-top:calc(var(--mask-bar,0px) - var(--mask-at,0px));--mask-end:calc(var(--mask-line,100vh) - var(--mask-at,0px));-webkit-mask-image:linear-gradient(transparent var(--mask-top), #000 calc(var(--mask-top) + var(--mask-in,16px)), #000 var(--mask-end), transparent calc(var(--mask-end) + 24px));-webkit-mask-image:linear-gradient(transparent var(--mask-top), #000 calc(var(--mask-top) + var(--mask-in,16px)), #000 var(--mask-end), transparent calc(var(--mask-end) + 24px));mask-image:linear-gradient(transparent var(--mask-top), #000 calc(var(--mask-top) + var(--mask-in,16px)), #000 var(--mask-end), transparent calc(var(--mask-end) + 24px))}.motion:not(.no-world) .doc--about{padding-bottom:calc(100vh - var(--pp-footer-h,0px));padding-bottom:calc(100svh - var(--pp-footer-h,0px))}.motion .doc--about.pp-moving .doc__stage{transition:top 1.1s var(--ease-out), left 1.1s var(--ease-out), height 1.1s var(--ease-out)}.motion:not(.no-world) .doc--about.pp-end .doc__stage{top:var(--pp-bar);height:calc(100vh - var(--pp-bar));height:calc(100lvh - var(--pp-bar))}html.pp-snap.pp-about .footer{scroll-snap-align:end;scroll-snap-stop:always}html.pp-about .footer{padding-bottom:calc(var(--pager-h,56px) + 24px)}}@media (width<=999px) and (orientation:landscape) and (height<=540px){.doc__float:not([hidden]){display:none}.motion:not(.no-world) :is(.doc--product .doc__head,.doc__next){padding-right:calc(50% + 14px);display:block;position:relative}.motion:not(.no-world) .doc--product .doc__head>.doc__visit{margin-top:14px}.motion:not(.no-world) :is(.stage--first,.stage--next){width:50%;min-height:0;margin:0;position:absolute;top:0;bottom:0;right:0}.motion:not(.no-world) .doc__next{padding-bottom:32px}.motion:not(.no-world) :is(.doc--work,.doc--services,.doc--contact,.doc--legal,.doc--404){padding-top:calc(var(--pp-bar) + 20px);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;column-gap:28px;display:grid}.motion:not(.no-world) :is(.doc--work,.doc--services,.doc--contact,.doc--legal,.doc--404)>*{grid-column:1}.motion:not(.no-world) :is(.doc--work,.doc--services,.doc--contact,.doc--legal,.doc--404) .doc__stage{height:auto;margin:calc(-1 * (var(--pp-bar) + 20px)) calc(-1 * var(--pp-r)) 0 0;grid-area:1/2/span 20;align-self:stretch}.motion:not(.no-world) :is(.doc--work,.doc--services,.doc--contact,.doc--legal,.doc--404) .doc__stage .stage{height:100svh;position:sticky;top:0}.motion:not(.no-world) :is(.doc--work,.doc--services,.doc--contact,.doc--legal,.doc--404) .doc__head{margin-top:0}.motion:not(.no-world) .doc--contact .doc__stage{max-height:none}.motion:not(.no-world) .doc--about .doc__stage{top:var(--pp-bar,48px);height:calc(100vh - var(--pp-bar,48px));height:calc(100lvh - var(--pp-bar,48px));left:50%}:root.phone-mask.motion:not(.no-world) .doc--about :is(.doc__head,.person){-webkit-mask-image:none;mask-image:none}.motion:not(.no-world) .doc--about.pp-end .doc__stage{left:0}.motion:not(.no-world) .doc--about :is(.doc__head,.person){padding-top:calc(var(--pp-bar) + 12px);padding-right:calc(50% + 12px);padding-bottom:calc(var(--pager-h,56px) + 12px)}.motion:not(.no-world) .doc--about .person__name{font-size:1.65rem}.motion:not(.no-world) .doc--about .person__bio{margin-top:8px;font-size:.95rem;line-height:1.5}.pp-dots{right:50%}}@media (width<=999px) and (forced-colors:active){.pp-dots a:before{forced-color-adjust:none;background:canvastext}.pp-dots a[aria-current]:before{background:highlight}}@media (width<=999px){body:after,html:after{content:"";z-index:0;pointer-events:none;position:fixed;left:0;right:0}body:after{height:calc(72px + env(safe-area-inset-top));background:linear-gradient(#070a22 env(safe-area-inset-top), #070a22ef calc(env(safe-area-inset-top) + 10.8px), #070a22c8 calc(env(safe-area-inset-top) + 21.6px), #070a2280 calc(env(safe-area-inset-top) + 36px), #070a2237 calc(env(safe-area-inset-top) + 50.4px), #070a2210 calc(env(safe-area-inset-top) + 61.2px), #070a2200 100%);top:0}html:after{height:calc(140px + env(safe-area-inset-bottom));background:linear-gradient(#070a2200 0,#070a2210 21px,#070a2237 42px,#070a2280 70px,#070a22c8 98px,#070a22ef 119px,#070a22 140px);bottom:0}html:is(.world-on,.still-on):before{content:"";z-index:-1;pointer-events:none;background:#070a22;height:calc(100lvh - 100svh);position:absolute;top:100svh;left:0;right:0}}@media (width<=999px) and (forced-colors:active){body:after,html:after,html:is(.world-on,.still-on):before{display:none}}@media (width<=999px){.world{transition-duration:.35s}:root.motion.still-on:not(.no-world) body.home:before{--at:var(--home-stage-at);--still-y:calc(var(--at) + .59 * (100dvh - var(--at)));content:"";z-index:-1;pointer-events:none;background:linear-gradient(#0b1845 min(calc(var(--still-y) - 81.44lvh), var(--at)), #0b1846 min(calc(var(--still-y) - 72lvh), var(--at)), #0d1a4a min(calc(var(--still-y) - 63.03lvh), var(--at)), #0f1c50 min(calc(var(--still-y) - 54.43lvh), var(--at)), #121f56 min(calc(var(--still-y) - 46.13lvh), var(--at)), #14215c min(calc(var(--still-y) - 38.09lvh), var(--at)), #162360 min(calc(var(--still-y) - 30.25lvh), var(--at)), #162361 calc(var(--at) + 1px), #16236100 calc(var(--at) + 1px), #1f1b5600 100dvh, #1f1b56 100dvh), url(/stills/home-phone-edge.png) 0 var(--at) / 100vw var(--soft) no-repeat, url(/stills/home-phone.webp) 0 calc(var(--still-y) - 85vw) / 100vw auto no-repeat, #0b1846;height:100lvh;position:fixed;top:0;left:0;right:0}:root.world-on body.home:before{visibility:hidden;transition:visibility 0s .4s}}@media (width<=999px) and (orientation:landscape) and (height<=540px),(forced-colors:active){:root.motion.still-on:not(.no-world) body.home:before{content:none}}
