:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--bg:var(--lightningcss-light,#f1ede6)var(--lightningcss-dark,#151413);--surface:var(--lightningcss-light,#e9e4da)var(--lightningcss-dark,#1e1c1a);--surface-2:var(--lightningcss-light,#ded7ca)var(--lightningcss-dark,#292623);--line:var(--lightningcss-light,#cdc4b4)var(--lightningcss-dark,#3a3632);--text:var(--lightningcss-light,#1b1a18)var(--lightningcss-dark,#ece7df);--text-muted:var(--lightningcss-light,#5c564d)var(--lightningcss-dark,#a39c92);--wood:var(--lightningcss-light,#a07b4f)var(--lightningcss-dark,#c9a77c);--accent:#f26a21;--accent-ink:var(--lightningcss-light,#b23e05)var(--lightningcss-dark,#ff8a4d);--on-accent:#151413;--font-sans:"Fira Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Iosevka Nerd Font", "Iosevka", ui-monospace, "SF Mono", Menlo, monospace;--step--1:clamp(.8rem, .77rem + .15vw, .9rem);--step-0:clamp(1rem, .95rem + .25vw, 1.15rem);--step-1:clamp(1.25rem, 1.15rem + .5vw, 1.55rem);--step-2:clamp(1.6rem, 1.35rem + 1.2vw, 2.4rem);--step-3:clamp(2.1rem, 1.6rem + 2.5vw, 3.8rem);--step-4:clamp(2.8rem, 1.8rem + 5vw, 6.5rem);--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.5rem;--space-6:4rem;--space-7:7rem;--gutter:clamp(1rem, 4vw, 2.5rem);--content:72rem;--radius:.25rem;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.15s;--dur:.35s;--dur-slow:.7s}@font-face{font-family:Fira Sans;font-weight:400;font-display:swap;src:local(Fira Sans Regular),url(../fonts/FiraSans-Regular.woff2)format("woff2")}@font-face{font-family:Fira Sans;font-weight:500;font-display:swap;src:local(Fira Sans Medium),url(../fonts/FiraSans-Medium.woff2)format("woff2")}@font-face{font-family:Fira Sans;font-weight:600;font-display:swap;src:local(Fira Sans SemiBold),url(../fonts/FiraSans-SemiBold.woff2)format("woff2")}@font-face{font-family:Iosevka Nerd Font;font-weight:400;font-display:swap;src:local(Iosevka Nerd Font),url(../fonts/IosevkaNerdFont-Regular.woff2)format("woff2")}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:4.5rem}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--step-0);font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-weight:400;line-height:1.6}h1,h2,h3{margin:0 0 var(--space-3);letter-spacing:-.02em;text-wrap:balance;font-weight:500;line-height:1.08}h1{font-size:var(--step-4)}h2{font-size:var(--step-3)}h3{font-size:var(--step-2)}p{margin:0 0 var(--space-3);text-wrap:pretty;max-width:62ch}a{color:var(--accent-ink);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}::selection{background:var(--accent);color:var(--on-accent)}img,video,canvas,svg{max-width:100%;display:block}.container{width:min(100% - 2 * var(--gutter), var(--content));margin-inline:auto}.eyebrow{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.eyebrow:before{content:"";background:var(--accent);border-radius:50%;width:.55em;height:.55em;margin-right:.7em;display:inline-block}.rule{border:0;border-top:1px solid var(--line);margin:var(--space-5) 0}.mono{font-family:var(--font-mono)}.btn{align-items:center;gap:var(--space-2);font:inherit;color:var(--text);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);background:0 0;padding:.65em 1.2em;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--text-muted);background:var(--surface)}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn--primary:hover{background:var(--accent);filter:brightness(1.08)}body{flex-direction:column;min-height:100dvh;display:flex}main{flex:1}.nav{z-index:10;background:color-mix(in srgb, var(--bg) 82%, transparent);backdrop-filter:blur(14px)saturate(1.4);border-bottom:1px solid var(--line);position:sticky;top:0}.nav__inner{align-items:center;gap:var(--space-4);min-height:3.5rem;display:flex}.nav__brand{color:var(--text);letter-spacing:-.01em;align-items:center;gap:.6rem;font-weight:600;text-decoration:none;display:inline-flex}.nav__mark{width:2.15rem;height:2.15rem;box-shadow:0 0 0 1px var(--line);border-radius:.5rem;flex:none;display:block;overflow:hidden}.nav__mark .brand{width:100%;height:100%}.brand--dark{display:block}.brand--light{display:none}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .brand--dark{display:none}:root:not([data-theme=dark]) .brand--light{display:block}}:root[data-theme=light] .brand--dark{display:none}:root[data-theme=light] .brand--light{display:block}:root[data-theme=dark] .brand--light{display:none}.nav__menu{align-items:center;gap:var(--space-4);flex:1;display:flex}.nav__links{gap:var(--space-1);border:1px solid var(--line);border-radius:calc(var(--radius) + .2rem);background:var(--surface);margin-inline:auto;padding:.2rem;display:flex;position:relative}.nav__link{color:var(--text-muted);font-size:var(--step--1);border-radius:var(--radius);transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);padding:.4em .95em;font-weight:500;text-decoration:none;position:relative}.nav__link:hover{color:var(--text);text-decoration:none}.nav__link{z-index:1}.nav__link[aria-current=page]{color:var(--text)}:root:not(.js) .nav__link[aria-current=page]{background:var(--surface-2)}.nav__links:before,.nav__links:after{content:"";pointer-events:none;opacity:var(--pill-o,0);position:absolute;top:0;left:0}.nav__links:before{width:var(--pill-w,0);height:var(--pill-h,0);transform:translate(var(--pill-x,0), var(--pill-y,0));background:var(--surface-2);border-radius:var(--radius)}.nav__links:after{background:var(--accent);width:.3em;height:.3em;transform:translate(calc(var(--pill-x,0px) + var(--pill-w,0px) / 2 - .15em), calc(var(--pill-y,0px) + var(--pill-h,0px) - .5em));border-radius:50%}.nav__links.is-ready:before,.nav__links.is-ready:after{transition:transform .65s cubic-bezier(.3,1.35,.5,1),width .65s cubic-bezier(.3,1.35,.5,1),height .65s cubic-bezier(.3,1.35,.5,1),opacity .25s}.nav__links.is-ready:after{transition-delay:50ms}.nav__tools{align-items:center;gap:var(--space-3);display:flex}.lang-switch{gap:0;display:flex}.lang-switch__link{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--step--1);padding:.6em .35em;text-decoration:none}.lang-switch__link:hover{color:var(--text)}.lang-switch__link[aria-current=true]{color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:.35em;text-decoration-thickness:2px}.theme-toggle.theme-toggle--icon{place-items:center;width:2.25rem;height:2.25rem;padding:0;display:grid}.theme-toggle--icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.2rem;height:1.2rem}.theme-toggle.motion-toggle{width:2rem;height:2rem;color:var(--text-muted);background:0 0;border-color:#0000}.motion-toggle svg{width:1.1rem;height:1.1rem}.theme-toggle.motion-toggle[aria-pressed=true]{color:var(--accent-ink)}.theme-toggle.motion-toggle:hover{border-color:var(--line);color:var(--text)}.theme-toggle.motion-toggle[aria-pressed=true]:hover{color:var(--accent-ink)}.motion-toggle__off{stroke-width:2.2px}.theme-toggle{font-family:var(--font-mono);font-size:var(--step--1);padding:.35em .7em}.nav__burger{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;background:0 0;width:2.5rem;height:2.5rem;margin-left:auto;padding:0;display:none;position:relative}.nav__burger span{background:var(--text);height:2px;transition:transform var(--dur) var(--ease-out);position:absolute;left:.65rem;right:.65rem}.nav__burger span:first-child{top:.95rem}.nav__burger span:last-child{top:1.4rem}.nav__burger[aria-expanded=true] span:first-child{transform:translateY(.225rem)rotate(45deg)}.nav__burger[aria-expanded=true] span:last-child{transform:translateY(-.225rem)rotate(-45deg)}@media (width<=52rem){.nav__burger{display:block}.nav__menu{align-items:stretch;gap:var(--space-4);padding:var(--space-4) var(--gutter) var(--space-5);background:var(--bg);border-bottom:1px solid var(--line);opacity:0;visibility:hidden;transition:opacity var(--dur) var(--ease-out), transform var(--dur) var(--ease-out), visibility 0s linear var(--dur);flex-direction:column;position:absolute;top:100%;left:0;right:0;transform:translateY(-.5rem)}.nav__menu[data-open=true]{opacity:1;visibility:visible;transition-delay:0s;transform:none}.nav__links{background:0 0;border:0;flex-direction:column;margin:0;padding:0}.nav__link{font-size:var(--step-0);border-bottom:1px solid var(--line);border-radius:0;padding:.8em .4em}.nav__link[aria-current=page]{color:var(--accent-ink)}.nav__links:before,.nav__links:after{display:none}:root:not(.js) .nav__link[aria-current=page]{background:0 0}.nav__tools{justify-content:space-between}}.footer{margin-top:var(--space-7);padding-block:var(--space-5);border-top:1px solid var(--line);background:var(--surface);font-size:var(--step--1)}.footer__inner{gap:var(--space-5);grid-template-columns:2fr 1fr 1fr;display:grid}.footer__brand{margin:0 0 var(--space-1);font-weight:600}.footer__small{color:var(--text-muted);margin:0}.footer__col{gap:var(--space-3);justify-items:start;display:grid}.footer__list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.footer a{color:var(--text-muted);text-decoration:none}.footer a:hover{color:var(--text);text-decoration:underline}@media (width<=40rem){.footer__inner{gap:var(--space-4);grid-template-columns:1fr}}.skip{left:var(--gutter);z-index:20;color:var(--on-accent);background:var(--accent);border-radius:0 0 var(--radius) var(--radius);padding:.6em 1em;font-weight:500;text-decoration:none;position:absolute;top:0;transform:translateY(-120%)}.skip:focus{transform:none}main:focus{outline:none}.section{padding-block:var(--space-7)}.hero{min-height:min(80vh,46rem);padding-block:var(--space-6) var(--space-5);flex-direction:column;justify-content:flex-end;display:flex}.hero__title{margin:var(--space-3) 0 var(--space-3);letter-spacing:-.045em;font-size:clamp(3.2rem,1.5rem + 9vw,9.5rem);font-weight:600;line-height:.95}.hero__lead{max-width:28ch;color:var(--text-muted);font-size:var(--step-2);letter-spacing:-.01em;margin:0;line-height:1.2}.hero{position:relative}.hero__logo{z-index:1;pointer-events:none;mix-blend-mode:lighten;align-items:center;width:min(34%,24rem);display:grid;position:absolute;inset:0 0 0 auto}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .hero__logo{mix-blend-mode:darken}}:root[data-theme=light] .hero__logo{mix-blend-mode:darken}:root[data-theme=dark] .hero__logo{mix-blend-mode:lighten}.hero__logo .brand{aspect-ratio:1;width:100%;height:auto;transform:translate3d(calc(var(--mx,0) * -20px), calc(var(--hp,0) * -110px + var(--my,0) * -14px), 0);grid-area:1/1;animation:8s ease-in-out infinite bob}.hero__title--page{font-size:clamp(2.6rem,1rem + 7vw,6.5rem)}@media (width<=52rem){.hero__logo{align-items:start;width:8.5rem;inset:1.5rem 0 auto auto}}:root[data-motion=reduced] .hero__logo .brand{animation:none}.featured-wrap{padding-block:var(--space-5) var(--space-7)}.featured{align-items:center;gap:var(--space-5);border:1px solid var(--line);border-radius:calc(var(--radius) * 2);background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);padding:clamp(1.25rem,4vw,3.5rem);display:grid;overflow:hidden}.featured h2{margin-block:var(--space-3);font-size:var(--step-3);letter-spacing:-.035em}.featured__tagline{font-size:var(--step-1);color:var(--text);line-height:1.3}.featured__licence{margin-bottom:var(--space-4);color:var(--text-muted);font-size:var(--step--1)}.featured__visual{position:relative}.featured__visual img{border-radius:var(--radius);width:100%;height:auto;box-shadow:0 1.5rem 3rem -1rem #00000073}@media (width<=52rem){.featured{grid-template-columns:1fr}.featured__visual{order:-1}}.company-line{justify-content:space-between;align-items:center;gap:var(--space-4) var(--space-6);padding-block:var(--space-6);border-top:1px solid var(--line);flex-wrap:wrap;display:flex}.company-line__text{max-width:36ch;font-size:var(--step-2);letter-spacing:-.015em;margin:0;line-height:1.25}.more{padding-block:var(--space-5) 0}.more__title{margin-bottom:var(--space-4)}.page-cards{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));display:grid}.page-card{gap:var(--space-2);padding:var(--space-4);padding-bottom:var(--space-6);color:var(--text);border:1px solid var(--line);border-radius:var(--radius);transition:border-color var(--dur-fast) var(--ease-out), transform var(--dur) var(--ease-out), background-color var(--dur-fast) var(--ease-out);text-decoration:none;display:grid;position:relative}.page-card:hover{border-color:var(--accent);background:var(--surface);text-decoration:none;transform:translateY(-3px)}.page-card__licence{color:var(--text-muted);font-size:var(--step--1)}.page-card__name{font-size:var(--step-2);letter-spacing:-.02em;font-weight:500}.page-card__tagline{color:var(--text-muted)}.page-card__arrow{right:var(--space-4);bottom:var(--space-3);color:var(--accent-ink);font-family:var(--font-mono);font-size:var(--step-1);transition:transform var(--dur) var(--ease-out);position:absolute}.page-card:hover .page-card__arrow{transform:translate(6px)}@supports (animation-timeline:view()){.featured__visual img{animation:linear both visual-in;animation-timeline:view();animation-range:entry cover 45%}.featured__text>*{animation:linear both text-in;animation-timeline:view();animation-range:entry 10% cover 35%}.page-card,.company-line>*{animation:linear both reveal;animation-timeline:view();animation-range:entry cover 30%}}@keyframes visual-in{0%{opacity:.2;transform:translateY(80px)scale(.88)}to{opacity:1;transform:none}}@keyframes text-in{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}.scrub{--p:0;height:500vh;position:relative}.scrub__stage{background:var(--bg);height:100dvh;position:sticky;top:0;overflow:hidden}.scrub__poster,.scrub__canvas{width:100%;height:100%;position:absolute;inset:0}.scrub__poster{object-fit:cover}.scrub__caps{pointer-events:none;position:absolute;inset:0}.scrub__cap{left:var(--gutter);color:#ece7df;max-width:26rem;opacity:clamp(0, calc(1 - max(var(--p) - var(--at), var(--at) - var(--p)) * 8), 1);transform:translateY(calc((var(--p) - var(--at)) * -160px));position:absolute;bottom:14%}.scrub__cap h2{font-size:var(--step-3);margin-bottom:var(--space-2)}.scrub__cap p{color:#a39c92;margin:0}.reveal-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));display:grid}.reveal-card{padding:var(--space-6) var(--space-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-family:var(--font-mono)}@supports (animation-timeline:view()){.reveal-card{animation:linear both reveal;animation-timeline:view();animation-range:entry cover 35%}}@keyframes reveal{0%{opacity:0;transform:translateY(60px)scale(.94)}to{opacity:1;transform:none}}html{scroll-behavior:smooth;scroll-padding-top:7rem}.phero{padding-block:var(--space-6) var(--space-5)}.phero__title{margin:var(--space-3) 0 var(--space-3);letter-spacing:-.045em;font-size:clamp(3rem,1.4rem + 8vw,8.5rem);font-weight:600;line-height:.95}.phero__tagline{max-width:22ch;margin:0 0 var(--space-3);font-size:var(--step-3);letter-spacing:-.02em;line-height:1.1}.phero__intro{max-width:46ch;color:var(--text-muted);font-size:var(--step-1);line-height:1.4}.phero__cta{gap:var(--space-3);margin-block:var(--space-4) var(--space-6);flex-wrap:wrap;display:flex}.phero__visual img{border-radius:calc(var(--radius) * 2);width:100%;height:auto;box-shadow:0 2.5rem 5rem -1.5rem #00000080}.subnav{z-index:9;background:color-mix(in srgb, var(--bg) 82%, transparent);backdrop-filter:blur(14px)saturate(1.4);border-bottom:1px solid var(--line);position:sticky;top:3.5rem}.subnav__inner{align-items:center;gap:var(--space-4);min-height:2.75rem;display:flex;overflow-x:auto}.subnav__name{white-space:nowrap;margin-right:auto;font-weight:600}.subnav a{color:var(--text-muted);font-size:var(--step--1);white-space:nowrap;text-decoration:none}.subnav a:hover{color:var(--text)}.subnav__bar{background:var(--accent);transform-origin:0;height:2px;display:none}@supports (animation-timeline:scroll()){.subnav__bar{animation:linear both grow;animation-timeline:scroll(root);display:block;transform:scaleX(0)}}@keyframes grow{to{transform:scaleX(1)}}.pin__scene{align-items:center;gap:var(--space-5);padding-block:var(--space-6);grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);display:grid}.pin__text h2{font-size:var(--step-3)}.pin__text p:last-child{font-size:var(--step-1);color:var(--text-muted);line-height:1.4}.pin__shot img,.split__shot img{border-radius:calc(var(--radius) * 2);width:100%;height:auto;box-shadow:0 2rem 4rem -1.5rem #00000080}.pin__dots{display:none}.split{padding-block:var(--space-6)}.split__inner{align-items:center;gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);display:grid}.split--reverse .split__text{order:2}.split__text h2{font-size:var(--step-3)}.split__text p{font-size:var(--step-1);color:var(--text-muted);line-height:1.4}@media (width<=52rem){.pin__scene,.split__inner{gap:var(--space-4);grid-template-columns:1fr}.split--reverse .split__text{order:0}.pin__shot,.split__shot{order:-1}}:root.js:not([data-motion=reduced]) .pin{height:calc(100vh + var(--m) * 100vh);height:calc(100dvh + var(--m) * 100dvh);--p:0;--lag:0;--mx:0;--my:0;position:relative}:root.js:not([data-motion=reduced]) .pin__stage{height:100dvh;position:sticky;top:0;overflow:hidden}:root.js:not([data-motion=reduced]) .pin__scenes{height:100%;position:relative}:root.js:not([data-motion=reduced]) .pin__scene{--s:calc((var(--p) - var(--at)) * var(--m));--d:max(var(--s), calc(var(--s) * -1));opacity:clamp(0, calc((.62 - var(--d)) * 3.2), 1);pointer-events:none;padding:6rem 0 4rem;position:absolute;inset:0}:root.js:not([data-motion=reduced]) .pin__text>*{translate:0 calc(var(--s) * var(--y,-70px))}:root.js:not([data-motion=reduced]) .pin__text>:first-child{--y:-40px}:root.js:not([data-motion=reduced]) .pin__text>:nth-child(2){--y:-95px}:root.js:not([data-motion=reduced]) .pin__text>:nth-child(3){--y:-150px}:root.js:not([data-motion=reduced]) .pin__shot{isolation:isolate;transform:perspective(1600px) translate3d(0, calc(var(--s) * -110px), 0) rotateX(calc(var(--s) * -10deg)) rotateY(calc(var(--s) * var(--k,1) * 14deg)) scale(calc(1 - var(--d) * .14));position:relative}:root.js:not([data-motion=reduced]) .pin__shot img{transform:rotateY(calc(var(--mx) * 5deg)) rotateX(calc(var(--my) * -4deg));rotate:calc(var(--lag) * 24deg);animation:7s ease-in-out infinite bob}:root.js:not([data-motion=reduced]) .pin__shot:before{content:"";z-index:-1;translate:calc(var(--s) * 80px) calc(var(--s) * -50px);background:radial-gradient(closest-side,var(--lightningcss-light,#f26a2138)var(--lightningcss-dark,#f26a214d),#0000);position:absolute;inset:-14%}:root.js:not([data-motion=reduced]) .pin__dots{gap:.6rem;margin:0;padding:0;list-style:none;display:flex;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}:root.js:not([data-motion=reduced]) .pin__dots li{--d:max(var(--p) - var(--at), var(--at) - var(--p));background:var(--accent);width:.5rem;height:.5rem;opacity:clamp(.25, calc(1.4 - var(--d) * var(--m) * 2.5), 1);scale:calc(1 + clamp(0, calc(1 - var(--d) * var(--m) * 3), 1) * .6);border-radius:50%}@media (width<=52rem){:root.js:not([data-motion=reduced]) .pin__scene{align-content:center;gap:var(--space-3);grid-template-columns:1fr;padding-top:5.5rem}:root.js:not([data-motion=reduced]) .pin__shot{max-height:38dvh}:root.js:not([data-motion=reduced]) .pin__shot img{object-fit:cover;max-height:38dvh}:root.js:not([data-motion=reduced]) .pin__text h2{font-size:var(--step-2)}:root.js:not([data-motion=reduced]) .pin__text p:last-child{font-size:var(--step-0)}}.specs{padding-block:var(--space-7) var(--space-6)}.specs__grid{gap:var(--space-4);margin:var(--space-4) 0 0;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));display:grid}.specs__item{padding-top:var(--space-3);border-top:1px solid var(--line)}.specs__item dd{margin:var(--space-1) 0 0;font-size:var(--step-1)}.closing{padding-block:var(--space-6) var(--space-7);text-align:center}.closing h2{font-size:var(--step-4)}.closing p{color:var(--text-muted);font-size:var(--step-1);margin-inline:auto}.closing__note{margin-top:var(--space-3);font-size:var(--step--1)!important}@supports (animation-timeline:view()){.specs__item,.split__text,.split__shot,.closing>*{animation:linear both reveal;animation-timeline:view();animation-range:entry cover 30%}}@keyframes rise{0%{opacity:0;translate:0 2.2rem}}@keyframes word-in{0%{translate:0 112%}}@keyframes drift-a{0%{translate:-6% -4%;scale:1}to{translate:8% 6%;scale:1.18}}@keyframes drift-b{0%{translate:6% 7%;scale:1.12}to{translate:-9% -6%;scale:.94}}@keyframes bob{0%,to{translate:0}50%{translate:0 -.55rem}}.enter{animation:rise 1s var(--ease-out) both;animation-delay:calc(var(--i,0) * 90ms + .12s)}.word{vertical-align:top;margin-bottom:-.16em;padding-bottom:.16em;display:inline-block;overflow:hidden}.word__in{animation:word-in 1.15s var(--ease-out) both;animation-delay:calc(var(--i,0) * .11s + .1s);display:inline-block}.hero-wrap{--hp:0;--mx:0;--my:0;position:relative;overflow:clip}.hero__orbs{pointer-events:none;transform:translate3d(calc(var(--mx) * -26px), calc(var(--hp) * 140px + var(--my) * -18px), 0);position:absolute;inset:0}.orb{aspect-ratio:1;border-radius:50%;position:absolute}.orb--a{background:radial-gradient(closest-side,var(--lightningcss-light,#f26a2138)var(--lightningcss-dark,#f26a214d),#0000);width:min(72vw,54rem);animation:15s ease-in-out infinite alternate drift-a;top:-22%;right:-16%}.orb--b{background:radial-gradient(closest-side,var(--lightningcss-light,#a07b4f38)var(--lightningcss-dark,#c9a77c33),#0000);width:min(56vw,42rem);animation:21s ease-in-out infinite alternate drift-b;bottom:-28%;left:-18%}.hero-wrap:after{content:"";background:linear-gradient(to bottom, transparent, var(--bg));pointer-events:none;height:40%;position:absolute;inset:auto 0 0}.hero__orbs{z-index:0}.hero__content{z-index:1;transform:translate3d(0, calc(var(--hp) * -80px), 0);opacity:calc(1 - var(--hp) * .9);position:relative}.btn--sponsor{--heart:var(--lightningcss-light,#bf3989)var(--lightningcss-dark,#db61a2)}.btn--sponsor svg{width:1.05em;height:1.05em;fill:var(--heart)}.btn--sponsor:hover{border-color:var(--heart)}.phero__version{font-family:var(--font-mono);font-size:var(--step--1);color:var(--text-muted);border:1px solid var(--line);border-radius:999px;align-self:center;padding:.3em .75em;text-decoration:none}a.phero__version:hover{color:var(--text);border-color:var(--text-muted)}.phero__visual{z-index:1;perspective:1600px;position:relative}.phero__visual img{transform:translate3d(0, calc(var(--hp) * 70px), 0) rotateX(calc(var(--my) * -3deg + var(--hp) * 5deg)) rotateY(calc(var(--mx) * 4deg));transform-origin:50% 100%}.vt-hide{opacity:0;translate:0 3rem}.vt-hide.vt-in{opacity:1;transition:opacity .9s var(--ease-out), translate .9s var(--ease-out);translate:none}.shot:not(.shot--flat){box-shadow:none;border-radius:0}.shot--flat{box-shadow:0 2rem 4rem -1.5rem #0000008c, 0 0 0 1px color-mix(in srgb, var(--text) 12%, transparent);border-radius:.9rem}.shot--light{display:none}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .shot--dark{display:none}:root:not([data-theme=dark]) .shot--light{display:block}}:root[data-theme=light] .shot--dark{display:none}:root[data-theme=light] .shot--light{display:block}:root[data-theme=dark] .shot--light{display:none}.pin__shot{place-items:center;display:grid}.pin__shot .shot{width:auto;max-width:100%;height:auto;max-height:min(64vh,42rem)}.split__shot{place-items:center;display:grid}.split__shot .shot{width:auto;max-width:100%;height:auto;max-height:min(80vh,46rem)}.phero__visual .shot{width:100%;height:auto}.shot[src$=\.svg]{max-height:min(50vh,26rem)}.bento{padding-block:var(--space-7) var(--space-6);container-type:inline-size}.bento__title{margin-bottom:var(--space-4)}.bento__grid{--gap:clamp(.5rem, 1.6cqw, 1rem);--cell:calc((100cqw - 5 * var(--gap)) / 6);grid-template-columns:repeat(6,1fr);grid-auto-rows:var(--cell);gap:var(--gap);margin:0;padding:0;list-style:none;display:grid}.tile{grid-column:var(--col) / span var(--w);grid-row:var(--row) / span var(--h);background:var(--surface);transition:transform var(--dur) var(--ease-out), background-color var(--dur-fast) var(--ease-out);border-radius:clamp(.9rem,3cqw,1.75rem);position:relative;overflow:hidden;container-type:inline-size}.tile:hover{transform:translateY(-3px)scale(1.012)}.tile__link{color:inherit;text-decoration:none;display:block;position:absolute;inset:0}.tile__body{text-align:center;align-content:center;justify-items:center;gap:.4em;padding:8cqw;display:grid;position:absolute;inset:0}.tile__big{letter-spacing:-.04em;background:linear-gradient(135deg, var(--accent-ink), var(--wood));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(1.5rem,24cqw,4.6rem);font-weight:600;line-height:1}.tile__caption{color:var(--text-muted);font-size:clamp(.72rem,7.5cqw,1rem);line-height:1.25}.tile--accent{background:var(--accent)}.tile--accent .tile__big{color:var(--on-accent);background:0 0}.tile--accent .tile__caption{color:color-mix(in srgb, var(--on-accent) 75%, transparent)}.tile--image .shot{object-fit:cover;object-position:var(--fx) var(--fy);width:100%;max-width:none;height:100%;max-height:none;transform:scale(var(--zoom));transform-origin:var(--fx) var(--fy);box-shadow:none;border-radius:0;position:absolute;inset:0}.tile--image .tile__body{text-align:left;background:linear-gradient(#0000 45%,#000000b8);align-content:end;justify-items:start;padding:6cqw}.tile--image .tile__caption{color:#fff;font-size:clamp(.78rem,6cqw,1.05rem);font-weight:500}.tile--split .tile__half{position:absolute;inset:0;overflow:hidden}.tile--split .tile__half--dark{clip-path:polygon(0 0,100% 0,0 100%)}.tile--split .tile__half--light{clip-path:polygon(100% 0,100% 100%,0 100%)}.tile--split .tile__half img{object-fit:cover;object-position:var(--fx) var(--fy);width:100%;height:100%;transform:scale(var(--zoom));transform-origin:var(--fx) var(--fy)}.tile__diag{pointer-events:none;background:linear-gradient(to top left, transparent calc(50% - 1px), var(--accent) calc(50% - 1px), var(--accent) calc(50% + 1px), transparent calc(50% + 1px));position:absolute;inset:0}.tile--split .tile__body{text-align:left;align-content:end;justify-items:start;padding:6cqw}.tile--split .tile__caption{color:#fff;text-shadow:0 1px 8px #0009;font-size:clamp(.78rem,6cqw,1.05rem);font-weight:500}.tile__swatches{gap:.3em;font-size:clamp(.7rem,9cqw,1.4rem);display:flex}.tile__swatches i{border-radius:50%;width:1.35em;height:1.35em;box-shadow:inset 0 0 0 1px #ffffff40}.tile__swatches i:first-child{background:#f26a21}.tile__swatches i:nth-child(2){background:#3b82f6}.tile__swatches i:nth-child(3){background:#22a06b}.tile__swatches i:nth-child(4){background:#a855f7}.tile__swatches i:nth-child(5){background:#ef4444}.tile--icon{background:var(--surface-2);place-content:center;justify-items:center;gap:.9em;display:grid}.tile--icon:before{content:"";background:radial-gradient(closest-side,var(--lightningcss-light,#f26a2133)var(--lightningcss-dark,#f26a2147),#0000);position:absolute;inset:-20%}.tile__icon{object-fit:contain;filter:drop-shadow(0 1rem 1.5rem #00000059);width:44cqw;height:44cqw;position:relative}.tile__icon--round{border-radius:22.4%}.tile__name{letter-spacing:-.02em;font-size:clamp(1rem,6.5cqw,1.7rem);font-weight:600;position:relative}@media (width<=46rem){.bento__grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:auto;grid-auto-flow:dense;--cell:9.5rem}.tile{grid-column:auto / span min(var(--w), 2);grid-row:auto / span var(--h);min-height:calc(var(--cell) * var(--h))}.tile--icon{order:-1;grid-area:auto/1/auto/-1;min-height:16rem}.tile__icon{width:8rem;height:8rem}.tile__big{font-size:2.4rem}.tile__caption{font-size:.85rem}}@supports (animation-timeline:view()){.tile{animation:linear both reveal;animation-timeline:view();animation-range:entry cover 28%}}@media (prefers-reduced-motion:no-preference){:root:not([data-motion=reduced]) .tile__icon{animation:7s ease-in-out infinite bob}}.phero__visual,.featured__visual,.split__shot,.pin__shot,.tile--image,.tile--split{position:relative}.zoom{z-index:3;border-radius:inherit;cursor:zoom-in;background:0 0;border:0;margin:0;padding:0;position:absolute;inset:0}.zoom:focus-visible{outline:2px solid var(--accent-ink);outline-offset:-4px}.pin__scene .zoom{pointer-events:none}.pin__scene[data-active] .zoom{pointer-events:auto}.lightbox{color:#fff;background:0 0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;overflow:hidden}.lightbox[open]{place-items:center;display:grid}.lightbox::backdrop{backdrop-filter:blur(12px);background:#0a0908e0}.lightbox__img{object-fit:contain;cursor:zoom-out;width:auto;max-width:min(96vw,2200px);height:auto;max-height:92dvh;animation:lightbox-in .45s var(--ease-out) both}.lightbox__img[data-flat="1"]{border-radius:.9rem;box-shadow:0 2rem 6rem #0009}.lightbox__close{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:2.75rem;height:2.75rem;padding:0;font-size:1.8rem;line-height:1;display:grid;position:fixed;top:1rem;right:1rem}.lightbox__close:hover{background:#ffffff38}.lightbox__close:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@keyframes lightbox-in{0%{opacity:0;transform:scale(.94)translateY(1rem)}}:root[data-motion=reduced] .lightbox__img{animation:none}.nav{view-transition-name:site-nav}.subnav{view-transition-name:sub-nav}::view-transition-old(site-nav){display:none}::view-transition-new(site-nav){animation:none}::view-transition-old(root){animation:page-out .38s var(--ease-in-out) both}::view-transition-new(root){animation:page-in .7s var(--ease-out) 80ms both}.router-back::view-transition-old(root){animation-name:page-out-back}.router-back::view-transition-new(root){animation-name:page-in-back}@keyframes page-out{to{opacity:0;filter:blur(4px);transform:translateY(-1.5rem)scale(.985)}}@keyframes page-in{0%{opacity:0;filter:blur(6px);transform:translateY(2.5rem)scale(1.01)}}@keyframes page-out-back{to{opacity:0;filter:blur(4px);transform:translateY(1.5rem)scale(.985)}}@keyframes page-in-back{0%{opacity:0;filter:blur(6px);transform:translateY(-2.5rem)scale(1.01)}}:root[data-motion=reduced]::view-transition-group(*){animation:none!important}:root[data-motion=reduced]::view-transition-old(*){animation:none!important}:root[data-motion=reduced]::view-transition-new(*){animation:none!important}@media (prefers-reduced-motion:reduce){:root:not([data-motion])::view-transition-group(*){animation:none!important}:root:not([data-motion])::view-transition-old(*){animation:none!important}:root:not([data-motion])::view-transition-new(*){animation:none!important}}:root[data-motion=reduced] :is(.reveal-card,.featured__visual img,.featured__text>*,.page-card,.company-line>*,.specs__item,.split__text,.split__shot,.closing>*,.enter,.word__in,.orb,.pin__shot img,.tile,.tile__icon){animation:none!important}:root[data-motion=reduced] .vt-hide{opacity:1;translate:none}:root[data-motion=reduced] .scrub{height:auto}:root[data-motion=reduced] .scrub__stage{height:70vh;position:relative}:root[data-motion=reduced] .scrub__cap{opacity:1;padding:var(--space-3) var(--gutter);position:static;transform:none}:root[data-motion=reduced] .scrub__caps{pointer-events:auto;position:relative}:root[data-motion=reduced] *,:root[data-motion=reduced] :before,:root[data-motion=reduced] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){:root:not([data-motion]) :is(.reveal-card,.featured__visual img,.featured__text>*,.page-card,.company-line>*,.specs__item,.split__text,.split__shot,.closing>*,.enter,.word__in,.orb,.tile,.tile__icon){animation:none!important}:root:not([data-motion]) .scrub{height:auto}:root:not([data-motion]) .scrub__stage{height:70vh;position:relative}:root:not([data-motion]) .scrub__cap{opacity:1;padding:var(--space-3) var(--gutter);position:static;transform:none}:root:not([data-motion]) .scrub__caps{pointer-events:auto;position:relative}}