:root{--bg:#3f00ff;--bg-deep:#260099;--bg-panel:#2f00c4;--ink:#efecff;--muted:#e0dbff;--paper:#fff;--accent:#37b6ff;--accent-ink:#18005e;--font-display:"Archivo", ui-sans-serif, system-ui, sans-serif;--font-text:"Archivo", ui-sans-serif, system-ui, sans-serif;--step-small:clamp(.8125rem, .79rem + .1vw, .875rem);--step-body:clamp(1.0625rem, 1rem + .25vw, 1.1875rem);--step-lead:clamp(1.25rem, 1.1rem + .7vw, 1.625rem);--step-head:clamp(2rem, 1.3rem + 3.2vw, 4rem);--step-display:clamp(2.9rem, 1rem + 10vw, 10rem);--margin:clamp(1rem, 2.4vw, 2.25rem);--gutter:clamp(1rem, 2vw, 2rem);--section:clamp(4rem, 9vw, 8.5rem);--radius:0px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.76, 0, .24, 1);--ease-soft:cubic-bezier(.33, 1, .68, 1);--t-press:.14s;--t-hover:.18s;--t-ui:.24s;--t-reveal:.8s}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-text);font-size:var(--step-body);font-kerning:normal;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.55;overflow-x:hidden}h1,h2,h3,h4,p,figure,blockquote,ul,ol,dl,dd{margin:0}ul[class],ol[class]{padding:0;list-style:none}img,video,svg,canvas{max-width:100%;display:block}img,video{background:var(--bg-deep);height:auto}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit}::selection{background:var(--paper);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}h1,h2,h3{font-family:var(--font-display);text-wrap:balance;font-weight:400}.display{font-size:var(--step-display);letter-spacing:-.02em;line-height:.94}.head{font-size:var(--step-head);letter-spacing:-.025em;line-height:1.02}.lead{font-size:var(--step-lead);max-width:40ch;line-height:1.4}.small{font-size:var(--step-small);line-height:1.5}.muted{color:var(--muted)}p{text-wrap:pretty;max-width:62ch}p+p{margin-top:.9em}.nums{font-variant-numeric:tabular-nums}.wrap{padding-inline:var(--margin)}.grid{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.section{padding-block:calc(var(--section) / 2);position:relative}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.blueprint{z-index:-2;background:var(--bg);position:fixed;inset:0;overflow:hidden}.blueprint svg{width:100%;height:100%}.blueprint .bp-line{stroke:#c9dcff33;fill:none}.blueprint .bp-line-faint{stroke:#c9dcff1a;fill:none}.blueprint .bp-lit{stroke:var(--accent);fill:none;opacity:.9}.button{background:var(--paper);min-height:3.25rem;color:var(--accent-ink);border-radius:var(--radius);white-space:nowrap;font-weight:600;font-size:var(--step-body);transition:transform var(--t-press) var(--ease-out), background-color var(--t-hover) ease;justify-content:center;align-items:center;padding:0 1.5rem;text-decoration:none;display:inline-flex}.button:active{transform:scale(.97)}.button--ink{background:var(--accent-ink);color:var(--paper)}.button--ghost{color:var(--ink);background:0 0;border:2px solid #efecff99}@media (hover:hover) and (pointer:fine){.button:hover{background:var(--accent)}.button--ink:hover{background:var(--bg);color:var(--paper)}.button--ghost:hover{color:var(--ink);background:#efecff1f}}.link{text-underline-offset:.2em;transition:text-decoration-color var(--t-hover) ease, color var(--t-hover) ease;text-decoration:underline .07em #0000}@media (hover:hover) and (pointer:fine){.link:hover{color:var(--accent);text-decoration-color:currentColor}}.nav{z-index:30;padding:clamp(1rem, 2.2vw, 1.6rem) var(--margin);mix-blend-mode:normal;justify-content:space-between;align-items:center;display:flex;position:fixed;inset:0 0 auto}.nav__logo{display:inline-block}.nav__logo img{background:0 0;width:auto;height:clamp(38px,5vw,58px);display:block}.nav__links{font-size:var(--step-small);gap:1.6rem;display:flex}.nav__links a{color:var(--ink);text-decoration:none}@media (hover:hover) and (pointer:fine){.nav__links a:hover{color:var(--accent)}}@media (width<=40em){.nav__links{display:none}}.hero{position:relative}.hero__sticky{place-items:center;height:100svh;display:grid}.hero__card{width:min(58ch, calc(100% - 2 * var(--margin)));background:var(--paper);color:var(--accent-ink);will-change:transform;transform-origin:0 100%;padding:clamp(1.4rem,2.6vw,2.4rem);position:relative}.hero__title{letter-spacing:-.025em;font-size:clamp(2rem,5.2vw,3.6rem);line-height:1}@media (width<=40em){.hero__title{font-size:2.1rem}}.hero__facts{font-size:var(--step-body);margin-top:1.4rem;line-height:1.5}.hero__facts p+p{margin-top:0}.hero__lede{color:#3a2d80;max-width:30ch;font-size:var(--step-body);margin-top:1.2rem}.hero__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.8rem;display:flex}.hero__credit{font-size:var(--step-small);color:#3a2d80}.hero__more{font-size:var(--step-small)}.proof__sentence{letter-spacing:-.01em;max-width:46ch;font-size:clamp(1.4rem,2.7vw,1.9rem);line-height:1.28}.proof__sentence .dim{color:var(--paper)}.js .proof__sentence .dim{color:#e0dbff80;transition:color .4s}.proof__sentence .dim.is-lit{color:var(--paper)}.proof__lead{color:var(--ink)}.about__title{letter-spacing:-.03em;font-size:clamp(3rem,12vw,11rem);line-height:.9}.about__body{max-width:46ch;font-size:var(--step-body)}.about__media{gap:var(--gutter);grid-template-columns:1fr 1fr;display:grid}.about__media figure{margin:0}.about__media img,.about__video{filter:grayscale()sepia()hue-rotate(190deg)saturate(2.4)brightness(.6)contrast(1.05);width:100%;height:auto}.about__cap{font-size:var(--step-small);color:var(--muted);margin-top:.6rem}@media (width<=40em){.about__media{grid-template-columns:1fr}}.features{padding-top:calc(var(--section) * 1.05)}.features__grid{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.features__cols{column-gap:var(--gutter);grid-column:1/8;grid-template-columns:repeat(3,1fr);display:grid}.features__group h3{font-size:var(--step-lead);margin-bottom:1rem}.features__group ul{gap:.2rem;display:grid}.features__group li{font-size:var(--step-body);color:var(--muted);cursor:default;transition:color var(--t-hover) ease;line-height:1.3}@media (hover:hover) and (pointer:fine){.features__group li:hover{color:var(--ink)}}.features__stage{grid-column:8/13;align-self:start;position:sticky;top:18vh}.features__stage svg{width:100%;height:auto}.features__note{font-size:var(--step-small);color:var(--muted);margin-top:.8rem}.sys{opacity:.22;transition:opacity .3s}.sys.is-on{opacity:1}.sys .wire{stroke:var(--accent)}.sys .part{stroke:var(--ink)}.steps__head{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.2rem;display:flex}.steps__bar{background:#c9c2ff33;height:6px;margin-bottom:2.2rem}.steps__bar span{background:var(--ink);width:25%;height:100%;transition:width var(--t-ui) var(--ease-out);display:block}.steps__row{gap:var(--gutter);scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:1rem;display:flex;overflow-x:auto}.steps__row::-webkit-scrollbar{display:none}.step{scroll-snap-align:start;flex-direction:column;flex:0 0 280px;display:flex}.step__cap{font-weight:600;font-size:var(--step-lead)}.step__body{color:var(--ink);font-size:var(--step-body);margin-top:.5rem}.step__spacer{flex:1;min-height:2rem}.step__glyph{color:var(--accent);margin-top:1rem}.step__glyph svg{width:72px;height:72px}.steps__nav{gap:.5rem;display:flex}.steps__nav button{width:48px;height:48px;color:var(--ink);transition:background var(--t-hover) ease;border:2px solid #efecff99;place-items:center;display:grid}@media (hover:hover) and (pointer:fine){.steps__nav button:hover{background:#efecff1f}}@media (width<=48em){.steps__row{scroll-snap-type:none;grid-template-columns:1fr 1fr;gap:2.2rem;display:grid;overflow:visible}.step{flex:none}.steps__nav,.steps__bar{display:none}.step__spacer{min-height:1rem!important}}@media (width<=40em){.steps__row{grid-template-columns:1fr}}.work__rail{align-self:start;position:sticky;top:16vh}.work__rail h2{font-size:var(--step-lead)}.work__filters{font-size:var(--step-body);gap:.3rem;margin-top:1rem;display:grid}.work__filters button{text-align:left;color:var(--muted)}.work__filters button.is-active{color:var(--paper)}.work__list{gap:3rem;display:grid}.work__frames{gap:8px;height:190px;display:flex;overflow:hidden}.work__frames img{object-fit:cover;filter:grayscale()sepia()hue-rotate(190deg)saturate(2.6)brightness(.62)contrast(1.05);flex:none;width:auto;height:190px}.work__meta{font-size:var(--step-small);color:var(--muted);justify-content:space-between;gap:1rem;margin-top:.7rem;display:flex}.work__meta .name{color:var(--ink)}.work__list:not(.is-filtering) .work__strip{transition:opacity var(--t-ui) ease}@media (hover:hover) and (pointer:fine){.work__list:hover .work__strip{opacity:.4}.work__list .work__strip:hover{opacity:1}}@media (width<=40em){.work__rail{justify-content:space-between;align-items:center;margin-bottom:1.4rem;display:flex;position:static}.work__filters{gap:1rem;margin:0;display:flex}.work__frames{flex-wrap:wrap;height:auto;overflow:visible}.work__frames img{height:130px}.work__meta .desc{display:none}}.faq{background:var(--bg-deep);padding-top:calc(var(--section) * 1.05)}.faq__grid{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.faq__left{grid-column:1/7}.faq__right{grid-column:8/13;position:relative}.faq__facts{font-size:var(--step-body);gap:.4rem;margin:1.4rem 0 2rem;display:grid}.faq details{margin-bottom:1.7rem}.faq summary{font-size:var(--step-lead);cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary .chev{width:22px;height:22px;transition:transform var(--t-ui) var(--ease-out);flex:none}.faq details[open] summary .chev{transform:rotate(45deg)}.faq__answer{color:var(--ink);font-size:var(--step-body);margin-top:.7rem}.faq__actions{flex-wrap:wrap;align-items:center;gap:1.2rem;margin-top:2rem;display:flex}.faq__media{position:relative}.faq__media .tall{aspect-ratio:3/4;object-fit:cover;filter:grayscale()sepia()hue-rotate(190deg)saturate(2.6)brightness(.66)contrast(1.06);width:100%}.faq__media .sq{aspect-ratio:1;object-fit:cover;filter:grayscale()sepia()hue-rotate(190deg)saturate(2.6)brightness(.7)contrast(1.05);width:38%;position:absolute;bottom:-6%;left:-6%}@media (width<=40em){.faq__left,.faq__right{grid-column:1/-1}.faq__right{margin-top:2.4rem}}.cta{position:relative}.cta__bg{position:absolute;inset:0}.cta__bg img{object-fit:cover;object-position:left center;filter:grayscale()sepia()hue-rotate(190deg)saturate(2)brightness(.7)contrast(1.06);width:100%;height:100%}.cta__inner{grid-template-columns:repeat(12,minmax(0,1fr));min-height:86svh;display:grid;position:relative}.cta__text{background:var(--bg-deep);padding:clamp(2rem,4vw,3.2rem);padding-right:var(--margin);flex-direction:column;grid-column:8/13;justify-content:flex-end;align-items:flex-start;display:flex}.cta__line{letter-spacing:-.02em;font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.02}.cta__text p{font-size:var(--step-body);max-width:34ch;margin-top:1.1rem}.cta__contact{font-size:var(--step-body);gap:.35rem;margin-top:1.6rem;display:grid}.cta__contact a{color:var(--ink)}.cta__actions{margin-top:1.8rem}@media (width<=40em){.cta__inner{min-height:0}.cta__bg{height:46svh;position:relative}.cta__text{grid-column:1/-1}}.footer{padding:clamp(1.6rem,4vh,2.6rem) 0 1.6rem}.footer__row{font-size:var(--step-small);color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:baseline;gap:1rem;display:grid}.footer__links{gap:1.5rem;display:flex}.footer__links a{color:var(--ink);text-decoration:none}.footer__right{text-align:right}.footer__credits{color:#e0dbffb8;max-width:70ch;margin-top:1.4rem;font-size:13px;line-height:1.6}@media (width<=40em){.footer__row{grid-template-columns:1fr;gap:.6rem}.footer__right{text-align:left}}.lines .line{margin-bottom:-.08em;padding-bottom:.08em;display:block;overflow:hidden}.lines [data-line]{display:block}@media (prefers-reduced-motion:no-preference){.js [data-reveal]{opacity:0;transition:opacity .7s var(--ease-out), transform .9s var(--ease-out);transform:translateY(24px)}.js [data-reveal].is-in{opacity:1;transform:none}.js .lines [data-line]{animation:ad-line .9s var(--ease-out) forwards;animation-delay:calc(var(--i,0) * .11s + .15s);transform:translateY(105%)}}@keyframes ad-line{to{transform:none}}@media (prefers-reduced-motion:no-preference){.bp-gear{transform-box:fill-box;transform-origin:50%;animation:40s linear infinite bp-spin}.bp-draw{stroke-dasharray:var(--len,1200);stroke-dashoffset:var(--len,1200);animation:bp-draw 2.6s var(--ease-in-out) forwards;animation-delay:var(--d,0s)}.bp-pulse{animation:3.2s ease-in-out infinite bp-pulse}}.req{border-radius:var(--radius);background:var(--paper);color:var(--accent-ink);width:min(56ch, calc(100% - 2 * var(--margin)));overscroll-behavior:contain;border:0;padding:0;box-shadow:0 30px 90px #18005e8c}.req-scrim{z-index:35;opacity:0;background:#18005ec7;transition:opacity .3s;position:fixed;inset:0}.req-scrim.is-on{opacity:1}.req[open]{display:block}.req__inner{padding:clamp(1.4rem,3vw,2.4rem)}.req__top{color:#3a2d80;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.1rem;display:flex}.req__close{width:44px;height:44px;color:var(--accent-ink);transition:background var(--t-hover) ease;place-items:center;font-size:1.1rem;display:grid}@media (hover:hover) and (pointer:fine){.req__close:hover{background:#18005e1a}}.req__bar{background:#18005e24;height:6px;margin-bottom:1.8rem}.req__bar span{background:var(--accent-ink);width:25%;height:100%;transition:width var(--t-ui) var(--ease-out);display:block}.req__q{letter-spacing:-.02em;font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.05}.req__q:focus{outline:none}.req__choices{gap:.5rem;margin-top:1.3rem;display:grid}.chip{text-align:left;color:var(--accent-ink);font-size:var(--step-body);transition:background var(--t-hover) ease, color var(--t-hover) ease, transform var(--t-press) var(--ease-out);background:#18005e12;padding:.95rem 1rem;line-height:1.3}.chip:active{transform:scale(.985)}@media (hover:hover) and (pointer:fine){.chip:hover{background:var(--accent-ink);color:var(--paper)}}.chip[aria-pressed=true]{background:var(--accent-ink);color:var(--paper)}.req__recall{font-size:var(--step-small);color:#3a2d80;margin-top:1.3rem}.req label{font-size:var(--step-body);margin-top:1.3rem;display:block}.req input,.req textarea{width:100%;color:var(--accent-ink);background:0 0;border:0;border-bottom:2px solid #18005e4d;border-radius:0;margin-top:.25rem;padding:.65rem .15rem;font-size:1.05rem;display:block}.req textarea{resize:vertical;border:2px solid #18005e4d;min-height:110px;margin-top:.6rem;padding:.7rem}.req input:focus-visible,.req textarea:focus-visible{border-color:var(--accent-ink);outline:none}.req ::placeholder{color:#18005e73}.req__error{font-size:var(--step-small);color:#b00020;margin-top:1rem}.req__error:empty{display:none}.req__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.8rem;display:flex}.req__back{font-size:var(--step-body)}.req__back[hidden]{display:none}.req__done p{margin-top:1.1rem}@media (prefers-reduced-motion:no-preference){.req[open]{animation:req-in .32s var(--ease-out)}}@keyframes req-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@media (width<=40em){.nav>.link{display:none}.about .grid>div,.work .grid>div{grid-column:1/-1!important}.about__title{margin-bottom:1.2rem}.features__grid{grid-template-columns:1fr}.features__cols{grid-column:1/-1;grid-template-columns:1fr;gap:2.2rem}.features__stage{grid-column:1/-1;margin-top:2.4rem;position:static}.work__rail{position:static}.work__rail h2{margin-bottom:.4rem}}@keyframes bp-spin{to{transform:rotate(360deg)}}@keyframes bp-draw{to{stroke-dashoffset:0}}@keyframes bp-pulse{0%,to{opacity:.35}50%{opacity:.9}}
