@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(../media/3d51db290a6a25f3-s.1b7464e7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(../media/f7054824cbb51795-s.36c9ff64.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(../media/74effe3e2193102a-s.p.c3a822cc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque Fallback;src:local(Arial);ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.0%;size-adjust:105.43%}.bricolage_grotesque_4f49cd0c-module__MrcfTW__className{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.bricolage_grotesque_4f49cd0c-module__MrcfTW__variable{--font-display:"Bricolage Grotesque","Bricolage Grotesque Fallback"}
@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(../media/c7f47671e39f7787-s.088ba3ed.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(../media/f06bf9da926bae75-s.p.c68a79fb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans Fallback;src:local(Arial);ascent-override:94.42%;descent-override:24.33%;line-gap-override:0.0%;size-adjust:102.74%}.instrument_sans_46ee204-module__Nzy8Sq__className{font-family:Instrument Sans,Instrument Sans Fallback;font-style:normal}.instrument_sans_46ee204-module__Nzy8Sq__variable{--font-body:"Instrument Sans","Instrument Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.a82ecf4e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.afa48be3.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.764b43eb.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.cb53f04b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.64b9304e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.6b5ea6af.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1dcddae6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.8da66e7f.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.e6cd1753.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.19510058.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_69e50114-module__naM81a__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_69e50114-module__naM81a__variable{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}}:root{--bg:#e8e8e5;--paper:#f4f4f2;--ink:#1a1a19;--mute:#5b5a56;--line:#cfceca;--steel:#1f2021;--steel-text:#b4b4af;--accent:#ff6400;--accent-ink:#b84700;--grid:#1a1a190f;--pad:clamp(20px,5vw,64px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html{scroll-behavior:smooth;scroll-padding-top:88px}body{background:var(--bg);color:var(--ink);font-family:var(--font-body),"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.5}::selection{background:#ff640040}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.display{font-family:var(--font-display),"Helvetica Neue",Arial,sans-serif;font-optical-sizing:auto;font-variation-settings:"wdth" 88}.wrap{max-width:1320px;padding-inline:var(--pad);margin-inline:auto}.kicker{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);align-items:center;gap:8px;font-size:12px;display:flex}.kicker:before{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px}.skip{z-index:50;background:var(--ink);color:var(--paper);border-radius:6px;padding:8px 14px;position:absolute;top:-48px;left:12px}.skip:focus{top:12px}.site-header{z-index:20;position:relative}.header-row{justify-content:space-between;align-items:center;gap:16px;padding-block:18px;display:flex}.logo img{width:auto;height:34px}.pill{background:var(--paper);cursor:pointer;border-radius:999px;align-items:center;padding:7px 14px;font-size:14.5px;transition:background .2s,color .2s;display:inline-flex}.pill:hover{background:var(--ink);color:var(--paper)}.pill-lang{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.04em;font-size:12.5px}.nav-wide{gap:6px;display:none}.nav-narrow{gap:6px;display:flex;position:relative}.menu summary{list-style:none}.menu summary::-webkit-details-marker{display:none}.menu nav{background:var(--paper);border-radius:10px;min-width:180px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #00000024}.menu nav a{border-radius:6px;padding:10px 12px}.menu nav a:hover{background:var(--bg)}@media (min-width:700px){.nav-wide{display:flex}.nav-narrow{display:none}}.hero{padding-block:clamp(24px,4vw,56px) clamp(64px,8vw,112px);position:relative}.hero:before{content:"";background-image:linear-gradient(var(--grid)1px,transparent 1px),linear-gradient(90deg,var(--grid)1px,transparent 1px);pointer-events:none;background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 50%,#0000);mask-image:linear-gradient(#000 50%,#0000)}.hero-grid{grid-template-columns:minmax(0,1fr);gap:40px;display:grid;position:relative}@media (min-width:760px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:56px}}.hero-title{letter-spacing:-.03em;font-variation-settings:"wdth" 85;text-wrap:balance;margin-top:18px;font-size:clamp(44px,7.4vw,112px);font-weight:780;line-height:.92}.hero-title em{color:var(--mute);font-style:normal}.scribble{white-space:nowrap;position:relative}.scribble svg{width:102%;height:.14em;position:absolute;bottom:-.02em;left:-1%;overflow:visible}.scribble path{fill:none;stroke:var(--accent);stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0;animation:.8s cubic-bezier(.6,.1,.3,1) .35s backwards draw}@keyframes draw{0%{stroke-dashoffset:1px}}.lead{max-width:42ch;color:var(--mute);margin-top:26px;font-size:clamp(17px,1.5vw,19.5px)}.button{background:var(--ink);color:var(--paper);border-radius:999px;align-items:center;gap:10px;margin-top:28px;padding:13px 22px;font-size:15px;font-weight:500;transition:background .2s;display:inline-flex}.button:hover{background:#000}.annotated{justify-self:center;gap:10px;width:100%;max-width:440px;display:grid}.annotated-media{border-radius:6px;position:relative}.trolley-photo{aspect-ratio:3/4;background:var(--line);overflow:hidden}.trolley-photo img{object-fit:cover}.marker{background:var(--accent);color:#141414;width:26px;height:26px;font:500 11.5px/26px var(--font-mono),ui-monospace,monospace;text-align:center;border-radius:50%;margin:-13px 0 0 -13px;transition:transform .2s,background .2s,color .2s;position:absolute;box-shadow:0 0 0 3px #f4f4f2eb,0 2px 10px #00000059}.marker:after{content:"";border:2px solid var(--accent);opacity:0;animation:ping 1.2s ease-out calc(1.1s + var(--i)*.16s);border-radius:50%;position:absolute;inset:-3px}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}.spec{background:var(--paper);border-radius:6px;padding:14px 16px 12px;box-shadow:0 1px #0000000a,0 6px 20px #00000014}.spec-head{border-bottom:1px solid var(--line);font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);justify-content:space-between;gap:10px;padding-bottom:10px;font-size:11px;display:flex}.spec-head b{color:var(--ink);font-weight:500}.parts{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 14px;padding-top:10px;font-size:13.5px;display:grid}.parts li{cursor:default;align-items:center;gap:8px;transition:color .2s;display:flex}.parts li span{background:var(--accent);color:#141414;width:18px;height:18px;font:500 10px/18px var(--font-mono),ui-monospace,monospace;text-align:center;border-radius:50%;flex:none}.parts li:hover{color:var(--accent-ink)}:is(.annotated:has([data-part="1"]:hover) .marker[data-part="1"],.annotated:has([data-part="2"]:hover) .marker[data-part="2"],.annotated:has([data-part="3"]:hover) .marker[data-part="3"],.annotated:has([data-part="4"]:hover) .marker[data-part="4"],.annotated:has([data-part="5"]:hover) .marker[data-part="5"]){background:var(--ink);color:var(--paper);transform:scale(1.4)}.annotated.forge{max-width:600px}.forge-stage{aspect-ratio:600/416;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line);border-radius:8px}.forge svg{width:100%;height:100%;display:block}.belt-marks,.roller,.code,.beam,.scanline,.arm-upper,.arm-fore,.hammer,.smoke,.item,.v-idea,.v-wire,.v-solid,.v-done,.flame,.sparks{animation-duration:10s;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.spec-status{align-items:center;gap:6px;display:inline-flex}.spec-status:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;animation:1.6s step-end infinite blink}.forge .floor{stroke:var(--line);stroke-width:1.5px}.forge .ink-2{fill:none;stroke:var(--ink);stroke-width:2px;stroke-linecap:round}.forge .ink-fill{fill:var(--ink)}.forge .paper-fill{fill:var(--paper)}.forge .accent-fill{fill:var(--accent)}.belt{fill:var(--paper);stroke:var(--ink);stroke-width:2px}.belt-marks{stroke:var(--ink);stroke-width:3px;stroke-dasharray:3 11;opacity:.3;animation-name:belt}.roller{fill:none;stroke:var(--ink);stroke-width:1.5px;animation-name:roll}.terminal{fill:var(--steel)}.term-dot{fill:#4a4b4c}.term-title{font:500 10px var(--font-mono),ui-monospace,monospace;letter-spacing:.06em;fill:#8d8d88}.code{fill:#8d8d88;transform-box:fill-box;transform-origin:0;animation-name:type;animation-delay:calc(var(--i)*.25s);animation-fill-mode:both}.code-accent{fill:var(--accent)}.forge .cursor,.forge .led{fill:var(--accent);animation:1s step-end infinite blink}.cable{fill:none;stroke:var(--mute);stroke-width:2px;stroke-dasharray:4 5;animation:.8s linear infinite flow}.beam{fill:var(--accent);opacity:0;animation-name:beam}.scanline{stroke:var(--accent);stroke-width:2px;opacity:0;transform-box:fill-box;transform-origin:50%;animation-name:scan}.arm-outline,.arm-fill{stroke-linecap:round}.arm-outline{stroke:var(--ink);stroke-width:18px}.arm-fill{stroke:var(--accent);stroke-width:12px}.arm-outline.thin{stroke-width:15px}.arm-fill.thin{stroke-width:9px}.torch{stroke:var(--ink);stroke-width:5px;stroke-linecap:round}.arm-upper{animation-name:arm-upper;transform:rotate(-23deg)}.arm-fore{animation-name:arm-fore;transform:rotate(32deg)}.handle{stroke:#b98a55;stroke-width:7px;stroke-linecap:round}.grip{stroke:var(--ink);stroke-width:9px;stroke-linecap:round}.steel-face{fill:#8d8d88}.hammer{animation-name:hammer;transform:rotate(50deg)}.smoke{fill:var(--line);opacity:0;transform-box:fill-box;transform-origin:bottom;animation-name:smoke}.item{animation-name:item;transform:translate(320px,330px)}.v-idea,.v-wire,.v-done{opacity:0}.v-idea{animation-name:v-idea}.v-wire{animation-name:v-wire}.v-solid{animation-name:v-solid}.v-done{animation-name:v-done}.r-body,.r-fin,.r-part,.r-nose,.r-window{fill:var(--paper);stroke:var(--ink);stroke-width:2px;stroke-linejoin:round}.rocket.wire *{fill:none;stroke:var(--accent);stroke-width:1.5px;stroke-dasharray:4 3}.rocket.done .r-fin,.rocket.done .r-nose{fill:var(--accent)}.rocket.done .r-window{fill:var(--steel)}.centerline{stroke:var(--mute);stroke-width:1px;stroke-dasharray:8 3 2 3}.bulb-glow{fill:var(--accent);opacity:.08;transform-box:fill-box;transform-origin:50%;animation:1.4s ease-in-out infinite alternate glow}.filament{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.flame{opacity:0;animation-name:flame}.flame path{transform-box:fill-box;transform-origin:50% 0;animation:.12s linear infinite alternate flicker}.flame-core{fill:#ffd08a}.sparks{opacity:0;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;transform-box:fill-box;transform-origin:50%}.spark-glow{fill:#ffc070;stroke:none}.sparks.weld{animation-name:weld}.sparks.strike{animation-name:strike}@keyframes item{0%{opacity:0;animation-timing-function:cubic-bezier(.5,0,1,1);transform:translate(64px,250px)}5%{opacity:1;animation-timing-function:ease-out;transform:translate(64px,330px)}6%{animation-timing-function:ease-in;transform:translate(64px,323px)}7%{transform:translate(64px,330px)}18%,30%{transform:translate(180px,330px)}40%,52%{transform:translate(320px,330px)}62%{transform:translate(470px,330px)}76%{animation-timing-function:cubic-bezier(.55,0,.9,.4);transform:translate(470px,330px)}86%{opacity:1}90%{opacity:0;transform:translate(470px,-70px)}90.01%,to{opacity:0;transform:translate(64px,250px)}}@keyframes belt{0%,7%{stroke-dashoffset:0}18%,30%{stroke-dashoffset:-116px}40%,52%{stroke-dashoffset:-256px}62%,to{stroke-dashoffset:-406px}}@keyframes roll{0%,7%{transform:rotate(0)}18%,30%{transform:rotate(823deg)}40%,52%{transform:rotate(1816deg)}62%,to{transform:rotate(2880deg)}}@keyframes type{0%,2%{transform:scaleX(0)}4.5%,88%{opacity:1;transform:scaleX(1)}92%,to{opacity:0;transform:scaleX(1)}}@keyframes blink{50%{opacity:0}}@keyframes flow{to{stroke-dashoffset:-9px}}@keyframes beam{0%,19%{opacity:0}21%,28%{opacity:.2}30%,to{opacity:0}}@keyframes scan{0%,20%{opacity:0;transform:translateY(0)scaleX(.4)}21%{opacity:1;transform:translateY(0)scaleX(.4)}28%{opacity:1;transform:translateY(112px)scaleX(1.3)}29%,to{opacity:0;transform:translateY(112px)scaleX(1.3)}}@keyframes arm-upper{0%,40%{transform:rotate(-23deg)}44%{transform:rotate(15deg)}46%{transform:rotate(12deg)}48%{transform:rotate(17deg)}50%{transform:rotate(15deg)}54%,to{transform:rotate(-23deg)}}@keyframes arm-fore{0%,40%{transform:rotate(32deg)}44%{transform:rotate(-28deg)}46%{transform:rotate(-25deg)}48%{transform:rotate(-30deg)}50%{transform:rotate(-28deg)}54%,to{transform:rotate(32deg)}}@keyframes weld{0%,44.5%{opacity:0;transform:scale(.6)}45%{opacity:1;transform:scale(1)}46%{opacity:.4;transform:scale(.8)}47%{opacity:1;transform:scale(1.15)}48%{opacity:.5;transform:scale(.8)}49%{opacity:1;transform:scale(1)}50%,to{opacity:0;transform:scale(.6)}}@keyframes hammer{0%,62.5%{animation-timing-function:cubic-bezier(.6,0,1,1);transform:rotate(50deg)}64%{animation-timing-function:ease-out;transform:rotate(0)}65.5%{animation-timing-function:cubic-bezier(.6,0,1,1);transform:rotate(50deg)}67%{animation-timing-function:ease-out;transform:rotate(0)}69%,to{transform:rotate(50deg)}}@keyframes strike{0%,63.9%{opacity:0;transform:scale(.5)}64%{opacity:1;transform:scale(1)}65%{opacity:0;transform:scale(1.3)}66.9%{opacity:0;transform:scale(.5)}67%{opacity:1;transform:scale(1)}68%,to{opacity:0;transform:scale(1.3)}}@keyframes v-idea{0%,26%{opacity:1}28%,to{opacity:0}}@keyframes v-wire{0%,26%{opacity:0}28%,48%{opacity:1}50%,to{opacity:0}}@keyframes v-solid{0%,48%{opacity:0}50%,67%{opacity:1}69%,to{opacity:0}}@keyframes v-done{0%,67%{opacity:0}69%,to{opacity:1}}@keyframes flame{0%,74%{opacity:0}76%,to{opacity:1}}@keyframes flicker{to{transform:scaleY(.72)}}@keyframes smoke{0%,75%{opacity:0;transform:scale(.4)}77%{opacity:.9;transform:scale(1)}86%,to{opacity:0;transform:scale(2.2)}}@keyframes glow{to{opacity:.16;transform:scale(1.15)}}.spotlight{grid-template-columns:minmax(0,1fr);gap:40px;display:grid}@media (min-width:760px){.spotlight{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);align-items:center;gap:64px}.spotlight-text{order:0}}.spotlight-text{order:-1;gap:18px;display:grid}.spotlight-text>p:not(.kicker){max-width:44ch;color:var(--mute);font-size:17px}.specs{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;max-width:520px;margin-top:6px;display:grid}.specs div{border-bottom:1px solid var(--line);gap:4px;padding:14px 0;display:grid}.specs dt{font:500 11px/1 var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}.specs dd{font-size:16px;font-weight:500}.section{padding-block:clamp(56px,7vw,104px)}.section-head{gap:10px;margin-bottom:clamp(24px,3.4vw,44px);display:grid}@media (min-width:760px){.section-head{grid-template-columns:1fr 1fr;align-items:end}}.section-head p{max-width:40ch;color:var(--mute);font-size:16.5px}.h2{letter-spacing:-.02em;text-wrap:balance;font-size:clamp(32px,4.4vw,60px);font-weight:760;line-height:.98}.lab{background:var(--paper);border-block:1px solid var(--line)}.stages{--gap:40px;gap:var(--gap);grid-template-columns:minmax(0,1fr);display:grid}.stage{grid-template-columns:48px minmax(0,1fr);align-content:start;gap:10px 14px;display:grid}.stage>*{grid-column:2}.stage>.owner{grid-column:1/-1}.owner{height:18px;font:500 11px/11px var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);align-items:flex-start;gap:10px;display:flex}.owner:before,.owner:after{content:"";border-top:1px solid;height:9px;margin-top:5px}.owner:before{border-left:1px solid;width:10px}.owner:after{border-right:1px solid;flex:1}.owner.out{color:var(--accent-ink)}.stage-rail{margin-bottom:calc(-1*var(--gap));flex-direction:column;grid-area:span 4/1;align-items:center;gap:8px;display:flex;position:relative}.stage:last-child .stage-rail{grid-row:span 3;margin-bottom:0}.stage-rail span{font-family:var(--font-display),sans-serif;font-variation-settings:"wdth" 85;letter-spacing:-.04em;color:var(--accent);font-size:clamp(34px,4.4vw,60px);font-weight:800;line-height:1}.stage-rail:after{content:"";background:var(--ink);transform-origin:top;flex:1;width:2px}.stage:last-child .stage-rail:after{background:repeating-linear-gradient(180deg,var(--ink)0 7px,transparent 7px 12px)}.stage:not(:last-child) .stage-rail:before{content:"";left:50%;bottom:calc(var(--gap)/2);background:var(--accent);width:13px;height:13px;box-shadow:0 0 0 4px var(--paper);z-index:1;margin:0 0 -6.5px -6.5px;position:absolute;transform:rotate(45deg)}.stage h3{letter-spacing:-.02em;align-self:center;font-size:22px;font-weight:700}.stage-text{max-width:34ch;color:var(--mute);font-size:15px}.gate{gap:6px;margin-top:4px;font-size:16px;font-weight:600;display:grid}.gate b{font:500 11px/1 var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);align-items:center;gap:8px;display:flex}.gate b:before{content:"";background:var(--accent);width:7px;height:7px;transform:rotate(45deg)}.stage-now{border-top:1px solid var(--line);align-content:start;gap:10px;margin-top:6px;padding-top:14px;display:grid}.stage-now>span{font:500 11px/1 var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}.stage-now ul{flex-wrap:wrap;align-items:start;gap:6px;display:flex}.stage-now li{justify-items:start;gap:8px;display:grid}a.plate{color:var(--ink);transition:transform .2s}a.plate:hover{transform:translateY(-1px)}.stage-now small{font:500 12px/1.3 var(--font-mono),ui-monospace,monospace;color:var(--accent-ink)}.stage-now p{color:var(--mute);font-size:14px}.lab-note{max-width:62ch;color:var(--mute);align-items:baseline;gap:10px;margin-top:clamp(32px,4vw,48px);font-size:15px;display:flex}.lab-note:before{content:"";background:var(--accent);flex:none;width:9px;height:9px;transform:translateY(-1px)rotate(45deg)}@media (min-width:900px){.stages{--gap:24px;grid-template-columns:repeat(4,minmax(0,1fr))}.stage{grid-row:span 5;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;row-gap:12px;padding-top:34px;position:relative}.stage>*{grid-column:1}.stage h3{align-self:start;margin-top:4px}.stage-now{grid-row:5;margin-top:16px}.owner{width:100%;position:absolute;top:0;left:0}.stage:first-child .owner{width:calc(300% + 2*var(--gap))}.stage-rail,.stage:last-child .stage-rail{flex-direction:row;grid-row:auto;gap:12px;margin-bottom:0}.stage-rail:after{transform-origin:0;width:auto;height:2px}.stage:last-child .stage-rail:after{background:repeating-linear-gradient(90deg,var(--ink)0 7px,transparent 7px 12px)}.stage:not(:last-child) .stage-rail:before{left:auto;right:calc(var(--gap)/-2);margin:-6.5px -6.5px 0 0;top:50%;bottom:auto}}@supports (animation-timeline:view()){.stage-rail:after{animation:linear both rail-y;animation-timeline:view();animation-range:entry 20% cover 45%}.stage:not(:last-child) .stage-rail:before{animation:linear both gate;animation-timeline:view();animation-range:entry 60% cover 50%}@media (min-width:900px){.stage-rail:after{animation-name:rail-x;animation-range:entry 10% cover 35%}.stage:not(:last-child) .stage-rail:before{animation-range:cover 28% cover 40%}}}@keyframes rail-x{0%{transform:scaleX(0)}}@keyframes rail-y{0%{transform:scaleY(0)}}@keyframes gate{0%{transform:rotate(45deg)scale(0)}}.card-grid{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}@media (min-width:640px){.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card.wide{grid-column:1/-1}.card.span2{grid-column:span 2}}.card{background:var(--paper);border-radius:8px;grid-template-rows:auto 1fr;display:grid;overflow:hidden}.card-photo{aspect-ratio:4/3;background:var(--line);position:relative;overflow:hidden}.card-photo img{object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.card:hover .card-photo img{transform:scale(1.03)}.card-text{align-content:start;gap:10px;padding:18px 20px 22px;display:grid}.card h3{letter-spacing:-.025em;font-size:clamp(22px,2vw,28px);font-weight:700;line-height:1.05}.card p{max-width:52ch;color:var(--mute);font-size:15px}.card.dark{background:var(--steel);color:#ededea}.card.dark p{color:var(--steel-text)}.plates{flex-wrap:wrap;gap:6px;display:flex}.plate{font:500 10.5px/1 var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:#67665f;background:linear-gradient(#fff,#ecece9);border-radius:6px;align-items:center;gap:6px;padding:6px 9px;display:inline-flex;box-shadow:inset 0 0 0 1px #00000012,inset 0 1px #fff,0 1px 2px #0000001a}.plate.on:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px}.card-meta{font-family:var(--font-mono),ui-monospace,monospace;color:var(--mute);font-size:12px}.card-link{gap:6px;margin-top:2px;font-size:14px;font-weight:500;display:inline-flex}.card-link i{font-style:normal;transition:transform .25s}.card:hover .card-link i{transform:translate(2px,-2px)}@media (min-width:760px){.card.horiz{grid-template-rows:auto;grid-template-columns:1.3fr 1fr}.card.span2.horiz{grid-template-columns:1fr 1fr}.card.flip .card-photo{order:2}.card.horiz .card-photo{aspect-ratio:auto;min-height:380px}.card.horiz .card-text{align-content:end;padding:32px}.card.wide h3{font-size:clamp(30px,3.2vw,46px)}.card.span2 h3{font-size:clamp(26px,2.6vw,36px)}}.process{background:var(--steel);color:#ededea}.process .section-head p{color:#a9a9a4}.steps{counter-reset:step;grid-template-columns:minmax(0,1fr);gap:28px;display:grid}@media (min-width:700px){.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}.steps li{counter-increment:step;align-content:start;gap:14px;display:grid}.step-photo{aspect-ratio:4/5;background:#333;border-radius:6px;position:relative;overflow:hidden}.step-photo img{object-fit:cover}.step-photo:after{content:"0" counter(step);font-family:var(--font-display),sans-serif;font-variation-settings:"wdth" 85;letter-spacing:-.04em;color:var(--accent);text-shadow:0 2px 24px #0000004d;font-size:clamp(56px,6vw,88px);font-weight:800;line-height:1;position:absolute;bottom:8px;left:14px}.steps h3{letter-spacing:-.02em;font-size:21px;font-weight:700}.steps p{color:var(--steel-text);font-size:15px}.workshop{grid-template-columns:minmax(0,1fr);gap:32px;display:grid}@media (min-width:760px){.workshop{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:56px}}.workshop-text{max-width:30ch;margin-top:18px;font-size:clamp(18px,1.7vw,22px);line-height:1.4}.skills{align-content:start;gap:24px;display:grid}.skills h3{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin-bottom:10px;font-size:11.5px;font-weight:500}.skills ul{flex-wrap:wrap;gap:8px;display:flex}.skills li{border:1.5px solid var(--ink);font-family:var(--font-display),sans-serif;font-variation-settings:"wdth" 90;letter-spacing:-.01em;border-radius:999px;padding:9px 18px 10px;font-size:clamp(17px,1.7vw,22px);font-weight:600;line-height:1.2}.skills .sw li{background:var(--ink);color:var(--paper)}.contact{background:var(--accent);color:#141414;padding-block:clamp(64px,9vw,128px)}.contact-inner{gap:24px;display:grid}.contact h2{letter-spacing:-.02em;text-wrap:balance;max-width:13ch;font-size:clamp(36px,5.6vw,84px);font-weight:760;line-height:.98}.contact-mail{overflow-wrap:anywhere;letter-spacing:-.02em;border-bottom:2.5px solid #141414;justify-self:start;font-size:clamp(20px,2.4vw,32px);font-weight:600}.footer-row{color:var(--mute);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-block:22px 30px;font-size:13.5px;display:flex}.footer-row nav{flex-wrap:wrap;gap:6px 18px;display:flex}.footer-row a:hover{color:var(--ink)}.legal{padding-block:clamp(32px,6vw,80px) clamp(64px,8vw,112px)}.legal-head{max-width:72ch;margin-bottom:40px}.legal-head h1{letter-spacing:-.025em;margin-top:14px;font-size:clamp(38px,5.4vw,72px);font-weight:760;line-height:.98}.legal-updated{color:var(--mute);margin-top:14px;font-size:14px}.doc{background:var(--paper);border-radius:8px;max-width:72ch;padding:clamp(22px,3vw,40px);font-size:16px}.doc h2{font-family:var(--font-display),sans-serif;letter-spacing:-.015em;margin:32px 0 8px;font-size:22px;font-weight:700}.doc h2:first-child{margin-top:0}.doc p+p,.doc p+ul,.doc ul+p{margin-top:10px}.doc ul{gap:6px;padding-left:20px;list-style:outside;display:grid}.doc a{border-bottom:1px solid var(--accent)}.doc a:hover{color:var(--accent-ink)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
