@font-face{font-family:Manrope Variable;font-style:normal;font-weight:200 800;font-display:block;src:url(./manrope-latin-wght-normal.DHIcAJRg.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:block;src:url(./ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2")}@font-face{font-family:Manrope Fallback;font-weight:200 599;src:local(Arial),local(Helvetica);size-adjust:102.8%;ascent-override:103.7%;descent-override:29.2%;line-gap-override:0%}@font-face{font-family:Manrope Fallback;font-weight:600 800;src:local(Arial Bold),local(Arial-BoldMT),local(Helvetica Bold);size-adjust:99.8%;ascent-override:106.8%;descent-override:30.1%;line-gap-override:0%}@font-face{font-family:Plex Mono Fallback;src:local(Courier New),local(CourierNewPSMT);size-adjust:100%;ascent-override:102.5%;descent-override:27.5%;line-gap-override:0%}:root{--ground:#f3f0e8;--ink:#171715;--signal:#ff572e;--muted:#625f58;--line:#c6c2b8;--paper:#fffef9;--machine:#dcd8ce;--machine-edge:#b6b1a6;--panel:#e9e5dc;--on-ink:#d0ccc2;--on-ink-muted:#bcb8af;--rule-on-ink:#514f48;--sans:"Manrope Variable", "Manrope Fallback", sans-serif;--mono:"IBM Plex Mono", "Plex Mono Fallback", monospace;--gutter:clamp(20px, 4vw, 64px);--col-gap:24px;--ease:cubic-bezier(.16,1,.3,1);--fs-note:.8125rem;--fs-ui:.9375rem;--fs-body:1.0625rem;--fs-lead:1.25rem;--fs-h3:2rem;--fs-h2:clamp(2.25rem, 4.4vw, 3.75rem);--w-heading:650;--w-strong:700;--track-display:-.04em;--track-mono:.02em}*{box-sizing:border-box}html{interpolate-size:allow-keywords;scroll-behavior:smooth;background:var(--ground);scroll-padding-top:32px}body{color:var(--ink);font-family:var(--sans);font-size:var(--fs-body);font-kerning:normal;font-synthesis:none;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;margin:0;line-height:1.65}::selection{background:var(--signal);color:var(--ink)}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:5px}button{font:inherit;color:inherit}button,a,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--ink);outline-offset:6px}.approach-section :focus-visible{outline-color:var(--signal)}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-weight:var(--w-heading);letter-spacing:var(--track-display);text-wrap:balance;overflow-wrap:break-word;line-height:1.12}p{text-wrap:pretty}svg{flex-shrink:0}.hero-baseline,.machine-top,.receipt-role,.section-number,.work-category,.work-diagram p,.work-detail .technology,.step-index,.site-footer{font-size:var(--fs-note)}.hero-baseline,.machine-top,.receipt-role,.section-number,.work-category,.work-detail .technology,.step-index{letter-spacing:var(--track-mono)}.frame{max-width:1440px;padding-inline:var(--gutter);margin-inline:auto}.skip-link{z-index:10;color:var(--paper);background:var(--ink);padding:12px 24px;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-header{justify-content:space-between;align-items:center;gap:24px;min-height:114px;display:flex}.identity{min-height:44px;font-size:var(--fs-body);font-weight:var(--w-strong);align-items:center;gap:16px;text-decoration:none;display:flex}.monogram{letter-spacing:var(--track-display);padding-bottom:8px;font-size:1.5625rem;line-height:1;position:relative}.monogram span{background:var(--signal);width:100%;height:3px;position:absolute;bottom:0;left:0}nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:0 32px;display:flex}nav a{min-height:44px;font-size:var(--fs-ui);align-items:center;gap:8px;text-decoration:none;display:flex}nav a:hover,.site-footer a:hover{text-decoration:underline}.hero{column-gap:var(--col-gap);grid-template-columns:repeat(12,minmax(0,1fr));padding-top:48px;display:grid;position:relative}.hero-copy{grid-column:1/9}.hero h1{font-size:clamp(2.5rem,6vw,5.5rem);line-height:1.04}.hero-intro{max-width:34rem;font-size:var(--fs-lead);margin-top:32px;line-height:1.55}.hero-actions{flex-direction:column;align-items:flex-start;gap:16px;margin-top:32px;display:flex}.button{min-height:56px;font-size:var(--fs-ui);font-weight:var(--w-strong);justify-content:space-between;align-items:center;gap:32px;padding:16px 24px;text-decoration:none;transition:background .18s,color .18s;display:inline-flex}.primary{background:var(--signal)}.primary:active{background:var(--ink);color:var(--ground)}@media (hover:hover){.primary:hover{background:var(--ink);color:var(--ground)}}.text-link{font-size:var(--fs-ui);cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;min-height:44px;padding:8px 0;text-decoration:underline;display:inline-flex}.text-link,.email-link{transition:text-decoration-thickness .15s var(--ease)}.text-link:hover{text-decoration-thickness:2px}.hero-baseline{border-top:1px solid var(--line);font-family:var(--mono);grid-column:1/-1;justify-content:space-between;gap:16px;margin-top:48px;padding-block:24px;display:flex}.printer-scene{grid-column:9/13;align-self:start;width:100%;max-width:420px;margin:0 0 0 auto;position:relative}.machine{background:var(--machine);border:1px solid var(--machine-edge);border-radius:16px 16px 4px 4px;height:155px;padding:24px 24px 0;position:relative}.machine-top{font-family:var(--mono);justify-content:space-between;align-items:center;display:flex}.indicator{background:var(--signal);border-radius:50%;width:7px;height:7px;animation:.28s step-end 5 print-light}.slot{background:var(--ink);border-radius:3px;height:12px;position:absolute;bottom:40px;left:24px;right:24px}.receipt-window{margin:-48px 32px 0;padding-bottom:12px;position:relative}.receipt{background:var(--paper);border:1px solid var(--line);will-change:transform, clip-path;border-bottom:0;padding:24px;animation:1.4s steps(18,end) both print-feed;position:relative}.receipt:after{content:"";background:var(--paper);height:8px;position:absolute;bottom:-8px;left:-1px;right:-1px;-webkit-mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50% 0/16px 100%;mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50% 0/16px 100%}.receipt-name{letter-spacing:var(--track-display);font-size:3rem;line-height:1;font-weight:var(--w-heading);overflow-wrap:anywhere}.receipt-role{font-family:var(--mono);text-transform:uppercase;margin-top:16px;line-height:1.7}.receipt-rule{border-top:1px dashed var(--line);margin-top:24px}.receipt-download{font-size:var(--fs-ui);min-height:44px;font-weight:var(--w-strong);justify-content:space-between;align-items:center;gap:8px;padding-top:16px;text-decoration:none;display:flex}.receipt-download:hover{text-decoration:underline}@keyframes print-feed{0%{clip-path:inset(100% 0 -12px);transform:translateY(-100%)}to{clip-path:inset(0 0 -12px);transform:none}}@keyframes print-light{0%,to{opacity:1}50%{opacity:.15}}.work-section{padding-block:96px 128px}.section-heading{column-gap:var(--col-gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;margin-bottom:64px;display:grid}.section-heading>.section-number{grid-column:1/5}.section-heading>div{grid-column:5/13}.section-number{font-family:var(--mono);padding-top:8px;display:block}h2{font-size:var(--fs-h2)}.section-heading p{max-width:610px;font-size:var(--fs-lead);margin-top:24px}.work{column-gap:var(--col-gap);border-top:1px solid var(--line);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;padding-block:48px;display:grid}.work:last-child{padding-bottom:0}.work-copy{grid-column:1/7;padding-top:24px}.work-visual{grid-column:7/13}.work-category{font-family:var(--mono);color:var(--muted);margin-bottom:16px}.work h3{font-size:var(--fs-h3);max-width:460px;margin-bottom:16px}.work-copy>p:not(.work-category){max-width:490px}details{margin-top:24px}summary{cursor:pointer;font-size:var(--fs-ui);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:48px;list-style:none;display:flex}summary::-webkit-details-marker{display:none}details::details-content{block-size:0;transition:block-size .35s var(--ease), content-visibility .35s allow-discrete;overflow:clip}details[open]::details-content{block-size:auto}summary:hover{text-underline-offset:5px;text-decoration:underline}.plus{flex-shrink:0;width:16px;height:16px;position:relative}.plus:before,.plus:after{content:"";background:currentColor;width:16px;height:1px;position:absolute;top:7px;left:0}.plus:after{transition:transform .25s var(--ease);transform:rotate(90deg)}details[open] .plus:after{transform:rotate(0)}summary .when-open{display:none}details[open] summary .when-open{display:inline}details[open] summary .when-closed{display:none}.work-note{color:var(--muted)}.work-detail{padding:24px 0 8px}.work-detail h4{font-size:var(--fs-body);font-weight:var(--w-strong)}.work-detail p{max-width:60ch;margin:8px 0 24px}.work-detail .technology{font-family:var(--mono)}.work-visual{background:var(--panel);padding:24px}.work-diagram{container-type:inline-size}.work-diagram svg{width:100%;height:auto;display:block}.work-diagram .dg-narrow{display:none}.work-diagram text{font-family:var(--mono)}.work-diagram text:not([fill]){fill:var(--ink)}.dg-wide text,.dg-narrow text{font-size:12px}@container (width<=699px){.dg-wide text{font-size:14px}}@container (width<=559px){.dg-wide text{font-size:16px}}@container (width<=459px){.dg-wide text{font-size:18px}}@container (width<=359px){.work-diagram .dg-wide{display:none}.work-diagram .dg-narrow{display:block}}@container (width>=300px) and (width<=359px){.dg-narrow text{font-size:11px}}.work-diagram p{color:var(--muted);max-width:52ch;margin-top:16px;line-height:1.6}.approach-section{background:var(--ink);color:var(--ground);padding-block:96px}.approach-section .section-number{color:var(--on-ink-muted)}.approach-section .section-heading p{color:var(--on-ink)}.approach-list{column-gap:var(--col-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));row-gap:48px;margin:0;padding:0;list-style:none;display:grid}.approach-list li{border-top:1px solid var(--rule-on-ink);padding:24px 24px 0 0}.step-index{font-family:var(--mono);color:var(--signal)}.approach-list h3{font-size:var(--fs-h3);margin:24px 0 16px}.approach-list p{color:var(--on-ink);letter-spacing:.01em;line-height:1.7}.about-section{column-gap:var(--col-gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;padding-block:128px 96px;display:grid}.about-section>div:first-child{grid-column:1/5;container-type:inline-size}.about-copy{grid-column:5/13}.about-monogram{font-size:min(11.875rem,80cqi);font-weight:var(--w-heading);letter-spacing:var(--track-display);margin-top:32px;line-height:1;display:inline-block;position:relative}.about-monogram span{color:var(--muted)}.about-monogram i{background:var(--signal);width:100%;height:8px;position:absolute;bottom:-12px;left:0}.about-copy p{max-width:610px;font-size:var(--fs-lead);margin-top:24px}.social-links{flex-wrap:wrap;gap:0 32px;margin-top:24px;display:flex}.contact-section{padding-top:32px;padding-bottom:64px}.contact-top{border-top:1px solid var(--line);justify-content:space-between;padding-top:32px;display:flex}.contact-section h2{margin-top:24px;font-size:clamp(2.25rem,4.8vw,4.5rem)}.contact-bottom{column-gap:var(--col-gap);grid-template-columns:repeat(12,minmax(0,1fr));row-gap:32px;margin-top:48px;display:grid}.contact-bottom>p{font-size:var(--fs-lead);grid-column:1/5}.contact-bottom{align-items:start}.contact-actions{--slip-pad:32px;background:var(--ink);color:var(--ground);padding:32px var(--slip-pad) 24px;grid-column:5/10;margin-inline:8px;position:relative}.contact-actions :focus-visible{outline-color:var(--signal)}.contact-actions:before{content:"";background:var(--signal);border-radius:3px;height:12px;position:absolute;top:-6px;left:-8px;right:-8px}.contact-actions[data-slip=armed]{transform:translateY(-24px)}.contact-actions[data-slip=printed]{transition:transform .9s var(--ease)}.slip-header{font-family:var(--mono);font-size:var(--fs-note);letter-spacing:var(--track-mono);text-transform:uppercase;color:var(--on-ink-muted);margin-bottom:8px}.slip-rule{border-top:1px dashed var(--rule-on-ink);margin-top:24px;position:relative}.slip-rule:before,.slip-rule:after{content:"";background:var(--ground);border-radius:50%;width:16px;height:16px;position:absolute;top:-9px}.slip-rule:before{left:calc(-1 * var(--slip-pad) - 8px)}.slip-rule:after{right:calc(-1 * var(--slip-pad) - 8px)}.email-link{letter-spacing:var(--track-display);overflow-wrap:anywhere;font-size:clamp(1.25rem,2.2vw,2rem);line-height:1.4;text-decoration-thickness:1px;display:inline-block}.email-link:hover{text-decoration-thickness:2px}.contact-tools{flex-wrap:wrap;gap:0 32px;margin-top:8px;display:flex}.copy-message{min-height:24px;font-size:var(--fs-ui);margin-top:8px}.copy-message:not(:empty){animation:message-in .25s var(--ease) both}@keyframes message-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.site-footer{column-gap:var(--col-gap);grid-template-columns:repeat(3,minmax(0,1fr));row-gap:8px;padding-block:32px;display:grid;position:relative}.site-footer:before{content:"";top:0;left:var(--gutter);right:var(--gutter);background:var(--line);height:1px;position:absolute}.site-footer a{text-decoration:none}@media (width<=1100px){.hero-copy{grid-column:1/8}.contact-actions{grid-column:5/13}.printer-scene{grid-column:8/13}.hero h1{font-size:clamp(2.5rem,5.2vw,4rem)}.hero-intro{font-size:var(--fs-body)}.receipt-window{margin-inline:24px}.receipt{padding:24px 16px}.receipt-name{font-size:2.625rem}}@media (width<=900px){.work{grid-template-columns:minmax(0,1fr);row-gap:24px}.work-copy,.work-visual{grid-column:1/-1}.work-copy{padding-top:0}.approach-list{grid-template-columns:minmax(0,1fr);row-gap:24px}.approach-list li{grid-template-columns:minmax(26px,max-content) minmax(0,1fr);gap:8px 16px;padding:24px 0 0;display:grid}.step-index{padding-top:8px}.approach-list h3{margin:0}.approach-list p{grid-column:2}}@media (width<=700px){:root{--fs-lead:1.125rem;--fs-ui:.875rem;--fs-h3:1.75rem;--fs-h2:2rem}.site-header{flex-wrap:wrap;place-content:center flex-start;gap:4px 12px;min-height:120px}.identity{gap:8px;width:100%;font-size:1rem}.monogram{font-size:1.375rem}nav{justify-content:flex-start;gap:0 24px;width:100%}nav a svg{display:none}.hero{flex-direction:column;padding-top:24px;display:flex}.hero h1{font-size:clamp(2.25rem,8vw,3.5rem);line-height:1.05}.hero-intro{max-width:490px;margin-top:24px}.hero-actions{gap:12px;margin-top:24px}.button{min-height:54px}.printer-scene{width:315px;max-width:100%;margin:48px auto 0}.machine{border-radius:12px 12px 3px 3px;height:124px;padding:16px}.slot{bottom:24px;left:16px;right:16px}.receipt-window{margin:-32px 24px 0}.receipt{padding:16px;animation:none}.receipt-name{font-size:min(2.75rem,13vw)}.receipt-rule{margin-top:16px}.hero-baseline{flex-wrap:wrap;margin-top:32px;padding-block:16px}.work-section{padding-block:64px}.section-heading{grid-template-columns:minmax(0,1fr);row-gap:24px;margin-bottom:32px}.section-heading>.section-number,.section-heading>div{grid-column:1/-1}.section-number{padding:0}.section-heading p{margin-top:16px}.work{padding-block:32px 48px}.work h3{max-width:420px}.work-visual{padding:16px}.approach-section{padding-block:64px}.about-section{grid-template-columns:minmax(0,1fr);row-gap:32px;padding-block:64px}.about-section>div:first-child,.about-copy{grid-column:1/-1}.about-section>div:first-child{justify-content:space-between;align-items:center;display:flex}.about-monogram{margin:0 8px 0 0;font-size:4.5rem}.about-monogram i{height:4px;bottom:-6px}.about-copy p{max-width:none}.contact-section{padding-top:0;padding-bottom:48px}.contact-top{padding-top:24px}.contact-section h2{font-size:clamp(2rem,8vw,3rem)}.contact-bottom{grid-template-columns:minmax(0,1fr);row-gap:24px;margin-top:24px}.contact-bottom>p,.contact-actions{grid-column:1/-1}.email-link{font-size:clamp(1.25rem,5.7vw,2rem)}.contact-tools{gap:0 24px}.contact-actions{--slip-pad:16px;padding:24px 16px 16px}.site-footer{flex-wrap:wrap;column-gap:24px;display:flex}}@media (width<=380px){nav{column-gap:16px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}::details-content{transition:none!important;animation:none!important}}@media (forced-colors:active){.button{border:2px solid buttontext}.contact-actions{border:2px solid canvastext}.monogram span,.about-monogram i,.slot,.contact-actions:before,.plus:before,.plus:after{background:canvastext}.indicator{background:highlight}}@media (pointer:coarse){.site-footer{align-items:center;row-gap:0}.site-footer a{align-items:center;min-height:44px;padding-inline:4px;display:inline-flex}.email-link{padding-block:8px}}
