@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-grotesk-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/space-grotesk-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-400-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jetbrains-mono-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Fallback;src:local("Arial"),local("Helvetica Neue"),local("Liberation Sans");size-adjust:108.63%;ascent-override:90.21%;descent-override:26.7%;line-gap-override:0%}@font-face{font-family:"Instrument Serif Fallback";src:local("Georgia"),local("Times New Roman"),local("Liberation Serif");size-adjust:90.88%;ascent-override:99.03%;descent-override:27.51%;line-gap-override:0%}@font-face{font-family:JetBrains Mono Fallback;src:local("Menlo"),local("Consolas"),local("DejaVu Sans Mono");size-adjust:99.66%;ascent-override:102.35%;descent-override:30.1%;line-gap-override:0%}:root{--bone: #f2eee6;--stone: #e8e2d6;--stone-warm: #dcd4c3;--taupe: #a89c8a;--taupe-text: #736858;--charcoal: #2e2d2a;--black: #1c1b19;--rust: #b86b4a;--rust-deep: #8e4a2e;--rust-light: #d08a68;--white: #fbfaf7;--ink: #131210;--ink-raised: #1c1b19;--surface: var(--bone);--surface-subtle: var(--stone);--surface-raised: var(--white);--text: var(--black);--text-secondary: var(--charcoal);--text-muted: var(--taupe-text);--accent: var(--rust);--accent-strong: var(--rust-deep);--line: rgba(28, 27, 25, .13);--line-strong: rgba(28, 27, 25, .22);--focus: var(--rust-deep);--dark-surface: var(--ink);--dark-text: var(--bone);--dark-text-muted: rgba(242, 238, 230, .56);--dark-line: rgba(242, 238, 230, .14);--font-display: "Space Grotesk", "Space Grotesk Fallback", "Helvetica Neue", Arial, sans-serif;--font-body: "Space Grotesk", "Space Grotesk Fallback", "Helvetica Neue", Arial, sans-serif;--font-editorial: "Instrument Serif", "Instrument Serif Fallback", Georgia, serif;--font-mono: "JetBrains Mono", "JetBrains Mono Fallback", ui-monospace, Menlo, monospace;--step--2: clamp(.69rem, .67rem + .09vw, .75rem);--step--1: clamp(.83rem, .8rem + .16vw, .94rem);--step-0: clamp(1rem, .95rem + .24vw, 1.17rem);--step-1: clamp(1.2rem, 1.12rem + .38vw, 1.46rem);--step-2: clamp(1.44rem, 1.32rem + .58vw, 1.83rem);--step-3: clamp(1.73rem, 1.55rem + .86vw, 2.29rem);--step-4: clamp(2.07rem, 1.82rem + 1.25vw, 2.86rem);--step-5: clamp(2.49rem, 2.13rem + 1.78vw, 3.58rem);--step-6: clamp(2.99rem, 2.49rem + 2.5vw, 4.47rem);--step-7: clamp(3.58rem, 2.9rem + 3.44vw, 5.59rem);--step-8: clamp(4.3rem, 3.35rem + 4.72vw, 6.99rem);--step-9: clamp(5.16rem, 3.86rem + 6.45vw, 8.74rem);--leading-tight: .94;--leading-display: 1.02;--leading-body: 1.58;--tracking-display: -.045em;--tracking-tight: -.02em;--tracking-mono: .14em;--s1: .25rem;--s2: .5rem;--s3: .75rem;--s4: 1rem;--s5: 1.5rem;--s6: 2rem;--s7: 3rem;--s8: 4rem;--s9: 6rem;--s10: 8rem;--chapter-gap: clamp(5rem, 3.5rem + 7vw, 11rem);--radius-xs: .25rem;--radius-sm: .5rem;--radius-md: .875rem;--radius-lg: 1.5rem;--radius-xl: 2rem;--radius-pill: 999rem;--measure: 38rem;--max-width: 82rem;--max-width-wide: 96rem;--gutter: clamp(1.25rem, .75rem + 2.5vw, 3.5rem);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-in-out-quint: cubic-bezier(.83, 0, .17, 1);--ease-out-back: cubic-bezier(.34, 1.56, .64, 1);--ease-linear-spring: linear( 0, .006, .025 2.8%, .101 6.1%, .539 18.9%, .721 25.3%, .849 31.5%, .937 38.1%, .968 41.8%, .991 45.7%, 1.006 50.1%, 1.015 55%, 1.017 63.9%, 1.001 );--dur-fast: .2s;--dur-base: .42s;--dur-slow: .8s;--dur-cinematic: 1.4s;--shadow-sm: 0 1px 2px rgba(28, 27, 25, .06), 0 4px 12px rgba(28, 27, 25, .05);--shadow-md: 0 2px 6px rgba(28, 27, 25, .06), 0 18px 44px rgba(28, 27, 25, .09);--shadow-lg: 0 4px 12px rgba(28, 27, 25, .07), 0 40px 90px rgba(28, 27, 25, .13);--shadow-dark: 0 30px 80px rgba(0, 0, 0, .55);--grain-opacity: .045;--z-grain: 1;--z-content: 2;--z-nav: 60;--z-cursor: 90;--z-modal: 100}[data-chapter=dark]{--surface: var(--dark-surface);--surface-subtle: var(--ink-raised);--surface-raised: var(--ink-raised);--text: var(--dark-text);--text-secondary: rgba(242, 238, 230, .78);--text-muted: var(--dark-text-muted);--line: var(--dark-line);--line-strong: rgba(242, 238, 230, .26);--accent: var(--rust-light);--accent-strong: var(--rust);--focus: var(--rust-light);background-color:var(--surface);color:var(--text)}@media (prefers-reduced-motion: reduce){:root{--dur-fast: 1ms;--dur-base: 1ms;--dur-slow: 1ms;--dur-cinematic: 1ms}}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:auto}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}body{min-height:100svh;background-color:var(--surface);color:var(--text);font-family:var(--font-body);font-size:var(--step-0);line-height:var(--leading-body);letter-spacing:var(--tracking-tight);font-synthesis-weight:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}p,h1,h2,h3,h4,li{overflow-wrap:break-word}a{color:inherit;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:.22em}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:var(--radius-xs)}::selection{background:color-mix(in srgb,var(--rust) 26%,transparent);color:var(--text)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;line-height:var(--leading-display);letter-spacing:var(--tracking-display);text-wrap:balance}h1{font-size:var(--step-7);line-height:var(--leading-tight)}h2{font-size:var(--step-5)}h3{font-size:var(--step-2);letter-spacing:var(--tracking-tight)}h1 em,h2 em,h3 em,.editorial{font-family:var(--font-editorial);font-style:italic;font-weight:400;letter-spacing:-.015em;font-size:1.06em}.lede{max-width:var(--measure);font-size:var(--step-1);line-height:1.45;color:var(--text-secondary);letter-spacing:-.018em;text-wrap:pretty}.prose{max-width:var(--measure);color:var(--text-secondary);text-wrap:pretty}.prose>*+*{margin-top:1em}.label{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--font-mono);font-size:var(--step--2);font-weight:400;line-height:1;letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted)}.label--accent{color:var(--accent-strong)}.label:before{content:"";width:.3125rem;height:.3125rem;border-radius:50%;background:var(--accent);flex:0 0 auto}.label--bare:before{display:none}.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:var(--gutter)}.chapter{position:relative;padding-block:var(--chapter-gap)}.chapter--tight{padding-block:calc(var(--chapter-gap) * .6)}[data-chapter=dark]{--grain-opacity: .07}.chapter-head{display:grid;gap:var(--s5);margin-bottom:var(--s8)}@media (min-width: 56rem){.chapter-head{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:end;gap:var(--s7)}}.chapter-head h2{margin-top:var(--s3)}.rule{height:1px;border:0;background:var(--line)}.button{--button-bg: var(--charcoal);--button-fg: var(--bone);--button-border: transparent;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--s3);min-height:3.25rem;padding:0 var(--s5);border:1px solid var(--button-border);border-radius:var(--radius-pill);background:var(--button-bg);color:var(--button-fg);font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.06em;text-decoration:none;cursor:pointer;overflow:hidden;isolation:isolate;transition:transform var(--dur-fast) var(--ease-out-quart),border-color var(--dur-fast) var(--ease-out-quart),color var(--dur-fast) var(--ease-out-quart)}.button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--accent-strong);transform:translate3d(0,101%,0);transition:transform var(--dur-base) var(--ease-out-expo)}.button:hover:before,.button:focus-visible:before{transform:translateZ(0)}.button:hover{color:var(--bone)}.button:active{transform:scale(.98)}.button svg{width:1.125rem;height:1.125rem;flex:0 0 auto;transition:transform var(--dur-base) var(--ease-out-expo)}.button:hover svg{transform:translate3d(.25rem,0,0)}.button--ghost{--button-bg: transparent;--button-fg: var(--text);--button-border: var(--line-strong)}.button--light{--button-bg: var(--bone);--button-fg: var(--black)}.button--light:before{background:var(--white)}.button--light:hover{color:var(--black)}.link{display:inline-flex;align-items:center;gap:var(--s2);position:relative;font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.05em;text-decoration:none;color:var(--accent-strong);padding-block:var(--s1)}.link:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform var(--dur-base) var(--ease-out-expo)}.link:hover:after,.link:focus-visible:after{transform:scaleX(1);transform-origin:left}.link svg{width:1rem;height:1rem;transition:transform var(--dur-base) var(--ease-out-expo)}.link:hover svg{transform:translate3d(.25rem,0,0)}.chip{display:inline-flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);border:1px solid var(--line);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;top:var(--s4);left:var(--s4);z-index:200;padding:var(--s3) var(--s5);border-radius:var(--radius-pill);background:var(--black);color:var(--bone);font-family:var(--font-mono);font-size:var(--step--1);text-decoration:none;transform:translate3d(0,-160%,0);transition:transform var(--dur-base) var(--ease-out-expo)}.skip-link:focus-visible{transform:translateZ(0)}.grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-grain);pointer-events:none;opacity:var(--grain-opacity);mix-blend-mode:multiply;transition:opacity var(--dur-slow) var(--ease-out-quart)}.grain canvas{width:100%;height:100%}.js [data-reveal=rise]{clip-path:inset(0 0 -20% 0)}.js [data-reveal=rise]>*{transform:translate3d(0,110%,0);transition:transform var(--dur-slow) var(--ease-out-expo),opacity var(--dur-base) var(--ease-out-quart);opacity:0;transition-delay:var(--reveal-delay, 0ms)}.js [data-reveal=rise].is-revealed>*{transform:translateZ(0);opacity:1}.js [data-reveal=fade]{opacity:0;transform:translate3d(0,1.25rem,0);transition:opacity var(--dur-slow) var(--ease-out-quart),transform var(--dur-slow) var(--ease-out-expo);transition-delay:var(--reveal-delay, 0ms)}.js [data-reveal=fade].is-revealed{opacity:1;transform:none}.js [data-reveal=wipe]>img,.js [data-reveal=wipe]>picture,.js [data-reveal=wipe]>video{clip-path:inset(0 0 100% 0);transform:scale(1.14);transition:clip-path var(--dur-cinematic) var(--ease-in-out-quint),transform calc(var(--dur-cinematic) * 1.15) var(--ease-out-expo);transition-delay:var(--reveal-delay, 0ms)}.js [data-reveal=wipe].is-revealed>img,.js [data-reveal=wipe].is-revealed>picture,.js [data-reveal=wipe].is-revealed>video{clip-path:inset(0 0 0 0);transform:scale(1)}.js [data-reveal=stagger]>*{opacity:0;transform:translate3d(0,2.5rem,0);transition:opacity var(--dur-slow) var(--ease-out-quart),transform var(--dur-slow) var(--ease-linear-spring)}.js [data-reveal=stagger].is-revealed>*{opacity:1;transform:none}.js [data-reveal=stagger]>*{transition-delay:calc(min(var(--i, 0),5)*90ms)}.split-line{display:block;overflow:hidden;padding-block:.02em}.split-char{display:inline-block;will-change:transform}.js [data-reveal=chars] .split-char{transform:translate3d(0,105%,0);transition:transform var(--dur-cinematic) var(--ease-out-expo);transition-delay:calc(var(--reveal-delay, 0ms) + var(--char-index, 0) * 14ms)}.js [data-reveal=chars].is-revealed .split-char{transform:translateZ(0)}.split-space{display:inline;white-space:pre}.scroll-progress{position:fixed;top:0;left:0;z-index:var(--z-nav);width:100%;height:2px;transform:scaleX(0);transform-origin:0 50%;background:var(--rust);pointer-events:none;will-change:transform}.cursor{position:fixed;top:0;left:0;z-index:var(--z-cursor);width:1.5rem;height:1.5rem;margin:-.75rem 0 0 -.75rem;border:1px solid var(--charcoal);border-radius:50%;pointer-events:none;opacity:0;mix-blend-mode:difference;will-change:transform;transition:width var(--dur-base) var(--ease-out-expo),height var(--dur-base) var(--ease-out-expo),margin var(--dur-base) var(--ease-out-expo),background-color var(--dur-base) var(--ease-out-quart),border-color var(--dur-base) var(--ease-out-quart),opacity var(--dur-base) var(--ease-out-quart)}.cursor.is-active{opacity:1}.cursor__label{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--font-mono);font-size:.5625rem;letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--bone);opacity:0;transform:scale(.7);transition:opacity var(--dur-fast) var(--ease-out-quart),transform var(--dur-base) var(--ease-out-back)}.cursor.is-expanded{width:5rem;height:5rem;margin:-2.5rem 0 0 -2.5rem;background:var(--charcoal);border-color:transparent}.cursor.is-expanded .cursor__label{opacity:1;transform:scale(1)}@media (pointer: coarse){.cursor{display:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}.js [data-reveal],.js [data-reveal]>*,.js [data-reveal] .split-char{opacity:1!important;transform:none!important;clip-path:none!important}.cursor{display:none}}.nav-wrap{position:fixed;top:0;left:0;right:0;z-index:var(--z-nav);padding:var(--s4) 0;transition:padding var(--dur-slow) var(--ease-out-expo),background-color var(--dur-slow) var(--ease-out-quart),box-shadow var(--dur-slow) var(--ease-out-quart)}.nav-wrap.is-stuck{padding:var(--s3) 0;background:color-mix(in srgb,var(--bone) 82%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);box-shadow:0 1px 0 var(--line)}.nav-wrap.is-hidden{transform:translate3d(0,-110%,0);transition:transform var(--dur-base) var(--ease-in-out-quint)}.nav{display:flex;align-items:center;justify-content:space-between;gap:var(--s4)}.brand{display:inline-flex;align-items:baseline;gap:.06em;font-family:var(--font-display);font-size:var(--step-1);font-weight:500;letter-spacing:-.04em;text-decoration:none;color:var(--text);white-space:nowrap}.brand em{font-family:var(--font-editorial);font-style:italic;font-size:1.08em;letter-spacing:-.01em}.brand-dot{width:.3em;height:.3em;border-radius:50%;background:var(--rust);transform:translateY(-.05em);transition:transform var(--dur-base) var(--ease-out-back)}.brand:hover .brand-dot{transform:translateY(-.05em) scale(1.5)}.nav-links{display:none;align-items:center;gap:var(--s6)}@media (min-width: 60rem){.nav-links{display:flex}}.nav-link{position:relative;font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;text-decoration:none;color:var(--text-secondary);padding-block:var(--s2);transition:color var(--dur-fast) var(--ease-out-quart)}.nav-link:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--rust);transform:scaleX(0);transform-origin:right;transition:transform var(--dur-base) var(--ease-out-expo)}.nav-link:hover,.nav-link[aria-current=page]{color:var(--text)}.nav-link:hover:after,.nav-link[aria-current=page]:after{transform:scaleX(1);transform-origin:left}.nav-actions{display:inline-flex;align-items:center;gap:var(--s3)}.nav .button{min-height:2.75rem;padding-inline:var(--s4);font-size:var(--step--2)}.availability{display:none;align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);border:1px solid var(--line);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}@media (min-width: 72rem){.availability{display:inline-flex}}.availability:before{content:"";width:.4375rem;height:.4375rem;border-radius:50%;background:#6f9e6a;box-shadow:0 0 #6f9e6a8c;animation:availability-pulse 2.6s var(--ease-out-quart) infinite}@keyframes availability-pulse{0%{box-shadow:0 0 #6f9e6a80}70%{box-shadow:0 0 0 .5rem #6f9e6a00}to{box-shadow:0 0 #6f9e6a00}}.footer{padding-block:var(--s8) var(--s6);border-top:1px solid var(--line)}.footer-inner{display:grid;gap:var(--s5)}@media (min-width: 56rem){.footer-inner{grid-template-columns:1fr auto 1fr;align-items:center}.footer-inner>:last-child{justify-self:end}}.footer-meta{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.footer-links{display:flex;gap:var(--s5);flex-wrap:wrap}.nav-wrap.is-inverted .brand,.nav-wrap.is-inverted .nav-link{color:var(--bone)}.nav-wrap.is-inverted .nav-link{color:#f2eee6b8}.nav-wrap.is-inverted .nav-link:hover,.nav-wrap.is-inverted .nav-link[aria-current=page]{color:var(--bone)}.nav-wrap.is-inverted .availability{border-color:#f2eee633;color:#f2eee6a8}.nav-wrap.is-inverted .button{--button-bg: var(--bone);--button-fg: var(--black)}.nav-wrap.is-inverted .button:before{background:var(--white)}.nav-wrap.is-inverted .button:hover{color:var(--black)}.nav-wrap.is-stuck.is-inverted{background:color-mix(in srgb,var(--ink) 82%,transparent);box-shadow:0 1px #f2eee61f}.nav .button.nav-email{padding-inline:var(--s3);gap:var(--s2)}.nav-email svg{width:1.05rem;height:1.05rem}@media (max-width: 26rem){.nav-email-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.nav .button.nav-email{padding-inline:var(--s3)}}.hero{position:relative;padding-top:clamp(7rem,5rem + 9vw,11rem);padding-bottom:var(--chapter-gap);overflow:clip}.hero-field{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;pointer-events:none;z-index:0;will-change:transform}.hero-field--one{width:42vw;height:42vw;top:-8vw;right:-6vw;background:radial-gradient(circle,rgba(199,169,139,.5),transparent 68%);animation:field-drift-a 26s var(--ease-out-quart) infinite alternate}.hero-field--two{width:34vw;height:34vw;bottom:4vw;left:-10vw;background:radial-gradient(circle,rgba(184,107,74,.22),transparent 66%);animation:field-drift-b 32s var(--ease-out-quart) infinite alternate}@keyframes field-drift-a{to{transform:translate3d(-5rem,4rem,0) scale(1.12)}}@keyframes field-drift-b{to{transform:translate3d(6rem,-3rem,0) scale(.92)}}.hero-inner{position:relative;z-index:var(--z-content)}.hero-top{display:grid;gap:var(--s6);margin-bottom:var(--s8)}.hero h1{font-size:var(--step-8);max-width:16ch;margin-top:var(--s4)}.hero-foot{display:grid;gap:var(--s5);align-items:end}@media (min-width: 56rem){.hero-foot{grid-template-columns:minmax(0,1fr) auto;gap:var(--s7)}}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--s3)}.hero-hint{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s5);margin-bottom:var(--s4)}.hero-hint kbd{display:inline-flex;align-items:center;padding:.15rem .4rem;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:var(--radius-xs);background:var(--surface-raised);font-family:var(--font-mono);font-size:.6875rem;color:var(--text-secondary)}.marquee{position:relative;padding-block:var(--s5);border-block:1px solid var(--line);overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent)}.marquee__track{display:flex;width:max-content;gap:var(--s7);animation:marquee 42s linear infinite}.marquee:hover .marquee__track{animation-play-state:paused}@keyframes marquee{to{transform:translate3d(-50%,0,0)}}.marquee__item{display:inline-flex;align-items:center;gap:var(--s3);font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.marquee__item:before{content:"";width:.3125rem;height:.3125rem;border-radius:50%;background:var(--rust);flex:0 0 auto}@media (prefers-reduced-motion: reduce){.marquee__track,.hero-field{animation:none}}.machine{position:relative;container-type:inline-size}[data-workflow-machine]:empty{display:block;aspect-ratio:1 / .71}@media (max-width: 47.99rem){[data-workflow-machine]:empty{aspect-ratio:1 / 2.24}}.machine__stage{position:relative;width:100%;border:1px solid var(--line);border-radius:var(--radius-lg);background-color:color-mix(in srgb,var(--surface-raised) 72%,var(--surface));background-image:linear-gradient(to right,color-mix(in srgb,var(--charcoal) 5%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--charcoal) 5%,transparent) 1px,transparent 1px),linear-gradient(to right,color-mix(in srgb,var(--charcoal) 9%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--charcoal) 9%,transparent) 1px,transparent 1px);background-size:24px 24px,24px 24px,120px 120px,120px 120px;overflow:hidden;touch-action:none;cursor:grab;isolation:isolate}.machine__stage.is-dragging{cursor:grabbing}.machine__stage:before,.machine__stage:after{content:"";position:absolute;width:1.25rem;height:1.25rem;border:1px solid var(--line-strong);pointer-events:none;z-index:5}.machine__stage:before{top:.75rem;left:.75rem;border-right:0;border-bottom:0}.machine__stage:after{right:.75rem;bottom:.75rem;border-left:0;border-top:0}.machine__wires{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:1}.machine__wire{fill:none;stroke:var(--taupe);stroke-width:1.4;stroke-linecap:round;opacity:0;transition:opacity var(--dur-base) var(--ease-out-quart),stroke var(--dur-base) var(--ease-out-quart);vector-effect:non-scaling-stroke}.machine__wire.is-active{opacity:1}[data-mode=after] .machine__wire.is-active{stroke:var(--rust);stroke-width:1.6;stroke-dasharray:5 7;animation:wire-flow 1.1s linear infinite}@keyframes wire-flow{to{stroke-dashoffset:-12}}.machine__wire--live{stroke:var(--rust);stroke-width:1.6;stroke-dasharray:4 5;opacity:1}.machine__packets{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3}.machine__node{position:absolute;top:0;left:0;z-index:2;width:calc(var(--node-w, 196px) * var(--scale, 1));min-height:calc(var(--node-h, 64px) * var(--scale, 1));padding:calc(.625rem * var(--scale, 1)) calc(.875rem * var(--scale, 1));border:1px solid var(--line-strong);border-radius:calc(.75rem * var(--scale, 1));background:var(--surface-raised);box-shadow:var(--shadow-sm);opacity:0;visibility:hidden;pointer-events:none;cursor:grab;transition:box-shadow var(--dur-base) var(--ease-out-quart),border-color var(--dur-base) var(--ease-out-quart),background-color var(--dur-base) var(--ease-out-quart);will-change:transform,opacity}.machine__node.is-present{pointer-events:auto}.machine__node.is-dragging{cursor:grabbing;box-shadow:var(--shadow-lg);border-color:var(--rust);z-index:4}.machine__node.is-detached{border-style:dashed;opacity:.5}.machine__node.is-hit{animation:node-hit .42s var(--ease-out-expo)}@keyframes node-hit{0%{box-shadow:var(--shadow-sm)}22%{box-shadow:0 0 0 3px color-mix(in srgb,var(--rust) 26%,transparent),var(--shadow-md)}to{box-shadow:var(--shadow-sm)}}.machine__node-body{display:flex;align-items:center;gap:calc(.625rem * var(--scale, 1))}.machine__node-icon{width:calc(1.25rem * var(--scale, 1));height:calc(1.25rem * var(--scale, 1));flex:0 0 auto;color:var(--taupe)}.machine__node-text{display:flex;flex-direction:column;gap:calc(.125rem * var(--scale, 1));min-width:0}.machine__node-label{font-family:var(--font-display);font-size:calc(.9375rem * var(--scale, 1));font-weight:500;line-height:1.15;letter-spacing:-.02em;color:var(--text);white-space:nowrap}.machine__node-sub{font-family:var(--font-mono);font-size:calc(.625rem * var(--scale, 1));letter-spacing:.1em;text-transform:uppercase;line-height:1.2;color:var(--text-muted);white-space:nowrap}.machine__port{position:absolute;top:50%;right:calc(-.4375rem * var(--scale, 1));width:calc(.875rem * var(--scale, 1));height:calc(.875rem * var(--scale, 1));transform:translateY(-50%);padding:0;border:1px solid var(--rust);border-radius:50%;background:var(--surface-raised);cursor:crosshair;transition:transform var(--dur-fast) var(--ease-out-back),background-color var(--dur-fast) var(--ease-out-quart)}.machine__port:after{content:"";position:absolute;inset:calc(-.5rem * var(--scale, 1));border-radius:50%}.machine__port:hover,.machine__port:focus-visible{background:var(--rust);transform:translateY(-50%) scale(1.35)}@container (max-width: 759px){.machine__port{top:auto;right:50%;bottom:calc(-.4375rem * var(--scale, 1));transform:translate(50%)}.machine__port:hover,.machine__port:focus-visible{transform:translate(50%) scale(1.35)}}.machine__node--person{border-radius:50%;display:grid;place-items:center;text-align:center;border-color:var(--rust);background:color-mix(in srgb,var(--rust) 6%,var(--surface-raised))}.machine__node--person .machine__node-body{flex-direction:column;gap:calc(.25rem * var(--scale, 1))}.machine__node--person .machine__node-icon{color:var(--rust-deep);width:calc(1.5rem * var(--scale, 1));height:calc(1.5rem * var(--scale, 1))}.machine__node--hub{border-color:var(--rust);background:color-mix(in srgb,var(--rust) 5%,var(--surface-raised));box-shadow:0 0 0 calc(6px * var(--scale, 1)) color-mix(in srgb,var(--rust) 7%,transparent)}.machine__node--hub .machine__node-icon{color:var(--rust-deep);animation:hub-spin 9s linear infinite}@keyframes hub-spin{to{transform:rotate(360deg)}}.machine__node--sink{align-content:start}.machine__node--leak{border-color:var(--rust-deep);border-width:1.5px;background:color-mix(in srgb,var(--rust-deep) 9%,var(--surface-raised));box-shadow:0 0 0 calc(5px * var(--scale, 1)) color-mix(in srgb,var(--rust-deep) 8%,transparent),var(--shadow-md)}.machine__node--leak .machine__node-icon,.machine__node--leak .machine__node-label{color:var(--rust-deep)}.machine__node--leak .machine__node-sub{color:color-mix(in srgb,var(--rust-deep) 72%,transparent)}.machine__leak-value{display:block;margin-top:calc(.3125rem * var(--scale, 1));padding-top:calc(.3125rem * var(--scale, 1));border-top:1px solid color-mix(in srgb,var(--rust-deep) 26%,transparent);font-family:var(--font-display);font-size:calc(1.375rem * var(--scale, 1));font-weight:500;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums;color:var(--rust-deep)}.machine__node--leak.is-leaking{border-color:var(--rust-deep);background:color-mix(in srgb,var(--rust-deep) 18%,var(--surface-raised))}[data-mode=before] .machine__node--leak:after{content:"";position:absolute;inset:calc(-4px * var(--scale, 1));border-radius:inherit;border:1px solid color-mix(in srgb,var(--rust-deep) 30%,transparent);opacity:0;animation:leak-pulse 3.2s var(--ease-out-quart) infinite;pointer-events:none}@keyframes leak-pulse{0%{opacity:.7;transform:scale(1)}70%{opacity:0;transform:scale(1.06)}to{opacity:0;transform:scale(1.06)}}.machine__rows{display:flex;flex-direction:column;gap:calc(.25rem * var(--scale, 1));margin-top:calc(.5rem * var(--scale, 1));padding-top:calc(.5rem * var(--scale, 1));border-top:1px solid var(--line)}.machine__row{display:flex;align-items:center;justify-content:space-between;gap:calc(.5rem * var(--scale, 1));font-family:var(--font-mono);font-size:calc(.5625rem * var(--scale, 1));letter-spacing:.06em;color:var(--text-muted);opacity:0;transform:translate3d(0,calc(-.375rem * var(--scale, 1)),0);transition:opacity var(--dur-base) var(--ease-out-quart),transform var(--dur-base) var(--ease-out-expo)}.machine__row.is-in{opacity:1;transform:none}.machine__row>span:first-child{color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.machine__queue{position:absolute;bottom:calc(-1.125rem * var(--scale, 1));left:50%;transform:translate(-50%);display:flex;gap:calc(.1875rem * var(--scale, 1))}.machine__pip{width:calc(.3125rem * var(--scale, 1));height:calc(.3125rem * var(--scale, 1));border-radius:50%;background:var(--rust-deep);opacity:0;transform:scale(.2);transition:opacity var(--dur-fast) var(--ease-out-quart),transform var(--dur-base) var(--ease-out-back)}.machine__pip.is-in{opacity:1;transform:scale(1)}.machine__controls{display:grid;gap:var(--s4);margin-top:var(--s5);grid-template-areas:"modes" "actions" "readout" "status";justify-items:start}@media (min-width: 26rem){.machine__controls{grid-template-areas:"modes modes" "actions readout" "status status";grid-template-columns:1fr auto;align-items:center}}@media (min-width: 48rem){.machine__controls{grid-template-areas:"modes actions readout" "status status status";grid-template-columns:auto auto 1fr;gap:var(--s5)}}.machine__modes{grid-area:modes;display:inline-flex;max-width:100%;padding:.25rem;border:1px solid var(--line);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--surface-subtle) 60%,transparent)}.machine__mode{padding:.625rem 1rem;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-base) var(--ease-out-quart),color var(--dur-base) var(--ease-out-quart)}.machine__mode.is-current{background:var(--charcoal);color:var(--bone)}.machine__actions{grid-area:actions;display:inline-flex;gap:var(--s3)}.machine__run,.machine__reset{display:inline-flex;align-items:center;gap:var(--s2);min-height:2.75rem;padding:0 var(--s4);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:transparent;font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out-quart),color var(--dur-fast) var(--ease-out-quart),border-color var(--dur-fast) var(--ease-out-quart)}.machine__run,.machine__reset{border-color:var(--line);color:var(--text-muted)}.machine__run:hover{background:var(--charcoal);border-color:var(--charcoal);color:var(--bone)}.machine__run svg{width:.875rem;height:.875rem}.machine__reset:hover{background:var(--charcoal);border-color:var(--charcoal);color:var(--bone)}.machine__readout{grid-area:readout;display:flex;flex-direction:column;gap:calc(var(--s1) * .5)}@media (min-width: 26rem){.machine__readout{justify-self:end;align-items:flex-end;text-align:right}}.machine__counter{font-family:var(--font-display);font-size:var(--step-4);font-weight:500;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--text);transition:color var(--dur-base) var(--ease-out-quart)}.machine__counter.is-hit{animation:counter-hit .38s var(--ease-out-expo)}@keyframes counter-hit{0%{transform:translateY(0)}30%{transform:translateY(-.14em)}to{transform:translateY(0)}}[data-mode=before] .machine__counter{color:var(--rust-deep)}[data-mode=after] .machine__counter{color:var(--text)}.machine__readout{align-items:baseline}.machine__counter-label{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.machine__status{grid-area:status;margin:0;font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;color:var(--text-muted);min-height:1.4em}.machine.is-autoplaying .machine__status:after{content:" / playing";color:var(--rust)}@media (prefers-reduced-motion: reduce){.machine__node--hub .machine__node-icon,.machine__wire.is-active,[data-mode=before] .machine__node--leak:after{animation:none}.machine__stage{cursor:default}}.pipeline{position:relative}.pipeline__stage{position:relative;width:100%;border:1px solid var(--line);border-radius:var(--radius-lg);background-color:color-mix(in srgb,var(--surface-raised) 70%,var(--surface));background-image:linear-gradient(to right,color-mix(in srgb,var(--charcoal) 5%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--charcoal) 5%,transparent) 1px,transparent 1px);background-size:24px 24px;overflow:hidden}.pipeline__tokens{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.pipeline__stage-node{position:absolute;z-index:2;transform:translate(-50%,-50%);display:flex;flex-direction:column;gap:calc(.1875rem * var(--scale, 1));padding:calc(.625rem * var(--scale, 1)) calc(.875rem * var(--scale, 1));border:1px solid var(--line-strong);border-radius:calc(.625rem * var(--scale, 1));background:var(--surface-raised);box-shadow:var(--shadow-sm);white-space:nowrap}.pipeline__stage-node.is-gate{border-color:var(--rust);background:color-mix(in srgb,var(--rust) 6%,var(--surface-raised))}.pipeline__stage-node.is-hit{animation:pipeline-hit .38s var(--ease-out-expo)}@keyframes pipeline-hit{0%{box-shadow:var(--shadow-sm)}25%{box-shadow:0 0 0 3px color-mix(in srgb,var(--rust) 24%,transparent),var(--shadow-md)}to{box-shadow:var(--shadow-sm)}}.pipeline__stage-label{font-family:var(--font-display);font-size:calc(.9375rem * var(--scale, 1));font-weight:500;letter-spacing:-.02em;line-height:1.15;color:var(--text)}.pipeline__stage-sub{font-family:var(--font-mono);font-size:calc(.625rem * var(--scale, 1));letter-spacing:.1em;text-transform:uppercase;line-height:1.2;color:var(--text-muted)}.pipeline__bin{position:absolute;z-index:2;transform:translate(-50%);margin-top:calc(1rem * var(--scale, 1));padding:calc(.5rem * var(--scale, 1)) calc(.75rem * var(--scale, 1));border:1px dashed var(--line-strong);border-radius:calc(.5rem * var(--scale, 1));white-space:nowrap}.pipeline__readout{display:flex;flex-wrap:wrap;gap:var(--s6);margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line)}.pipeline__counter{display:flex;align-items:baseline;gap:var(--s2)}.pipeline__counter-value{font-family:var(--font-display);font-size:var(--step-3);font-weight:500;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--accent-strong)}.pipeline__counter-value.is-hit{animation:pipeline-count .36s var(--ease-out-expo)}@keyframes pipeline-count{0%{transform:translateY(0)}30%{transform:translateY(-.14em)}to{transform:translateY(0)}}.pipeline__counter-label{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted)}@media (prefers-reduced-motion: reduce){.pipeline__stage-node,.pipeline__counter-value{animation:none}}.about-grid{display:grid;gap:var(--s7);align-items:start}@media (min-width: 60rem){.about-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:var(--s9)}}.portrait{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--stone-warm);aspect-ratio:1 / 1}.portrait img{width:100%;height:100%;object-fit:cover;will-change:transform}.portrait-note{position:absolute;left:var(--s4);right:var(--s4);bottom:var(--s4);display:flex;justify-content:space-between;gap:var(--s4);padding:var(--s3) var(--s4);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bone) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.1em;text-transform:uppercase;color:var(--charcoal)}.skill-list{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s5)}.quote{margin-top:var(--s6);padding:var(--s5) var(--s6);border-left:2px solid var(--rust);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--surface-subtle);font-family:var(--font-editorial);font-style:italic;font-size:var(--step-2);line-height:1.3;color:var(--text)}.process{counter-reset:step}.process-list{display:grid;gap:0;border-top:1px solid var(--line)}.process-step{counter-increment:step;display:grid;gap:var(--s3);padding-block:var(--s6);border-bottom:1px solid var(--line);transition:background-color var(--dur-base) var(--ease-out-quart)}@media (min-width: 56rem){.process-step{grid-template-columns:6rem minmax(0,1fr) minmax(0,1.2fr);gap:var(--s6);align-items:baseline;padding-inline:var(--s4);margin-inline:calc(var(--s4) * -1);border-radius:var(--radius-md)}.process-step:hover{background:color-mix(in srgb,var(--stone) 55%,transparent)}}.process-step:before{content:"0" counter(step);font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:var(--tracking-mono);color:var(--rust-deep)}.process-step h3{font-size:var(--step-2)}.process-step p{color:var(--text-secondary);max-width:42ch}.statement-card{display:grid;gap:var(--s5);padding:var(--s7);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-subtle)}@media (min-width: 48rem){.statement-card{grid-template-columns:auto minmax(0,1fr);gap:var(--s6);padding:var(--s8);align-items:start}}.statement-mark{display:grid;place-items:center;width:3.25rem;height:3.25rem;border:1px solid var(--rust);border-radius:50%;color:var(--rust-deep);flex:0 0 auto}.statement-mark svg{width:1.5rem;height:1.5rem}.statement-card h2{font-size:var(--step-4);margin-bottom:var(--s4)}.guarantee{border-radius:var(--radius-xl);overflow:hidden}.guarantee .statement-card{border:0;background:transparent}.guarantee .statement-mark{border-color:var(--rust-light);color:var(--rust-light)}.faq-grid{display:grid;gap:var(--s7);align-items:start}@media (min-width: 60rem){.faq-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.1fr);gap:var(--s9)}}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding-block:var(--s5);font-family:var(--font-display);font-size:var(--step-1);font-weight:500;letter-spacing:-.025em;cursor:pointer;list-style:none;transition:color var(--dur-fast) var(--ease-out-quart)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:hover{color:var(--rust-deep)}.faq-item summary:after{content:"";width:.75rem;height:.75rem;flex:0 0 auto;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-.1em,-.1em);transition:transform var(--dur-base) var(--ease-out-expo)}.faq-item[open] summary:after{transform:rotate(-135deg) translate(-.1em,-.1em)}.faq-item p{padding-bottom:var(--s5);margin:0;max-width:56ch;color:var(--text-secondary)}.contact-card{position:relative;padding:var(--s8) var(--s6);border-radius:var(--radius-xl);overflow:hidden;text-align:center}@media (min-width: 48rem){.contact-card{padding:var(--s10) var(--s8)}}.contact-card h2{font-size:var(--step-6);max-width:18ch;margin-inline:auto}.contact-actions{display:flex;flex-wrap:wrap;gap:var(--s3);justify-content:center;margin-top:var(--s6)}.contact-meta{margin-top:var(--s6);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted)}.sticky-cta{position:fixed;right:var(--s4);bottom:var(--s4);z-index:55;display:flex;align-items:center;gap:var(--s4);max-width:min(calc(100vw - 2rem),26rem);padding:var(--s4);border-radius:var(--radius-lg);background:var(--ink);color:var(--bone);box-shadow:var(--shadow-dark);opacity:0;transform:translate3d(0,1.5rem,0);pointer-events:none;transition:opacity var(--dur-slow) var(--ease-out-quart),transform var(--dur-slow) var(--ease-out-expo)}.sticky-cta.is-visible{opacity:1;transform:none;pointer-events:auto}.sticky-cta p{font-size:var(--step--1);line-height:1.4;color:#f2eee6d1}.sticky-cta .button{flex:0 0 auto;min-height:2.75rem;padding-inline:var(--s4);--button-bg: var(--bone);--button-fg: var(--black)}.sticky-cta .button:before{background:var(--white)}.sticky-cta .button:hover{color:var(--black)}.sticky-close{position:absolute;top:.4rem;right:.4rem;width:1.75rem;height:1.75rem;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#f2eee68c;font-size:1.1rem;line-height:1;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-quart)}.sticky-close:hover{color:var(--bone)}@media (max-width: 32rem){.sticky-cta{flex-direction:column;align-items:stretch;text-align:left}.sticky-cta .button{width:100%}}.sticky-cta__actions{display:flex;gap:var(--s2);flex:0 0 auto}.sticky-cta__actions .button{min-height:2.75rem;padding-inline:var(--s4)}.sticky-cta__actions .button--ghost{--button-bg: transparent;--button-fg: var(--bone);--button-border: rgba(242, 238, 230, .28)}.sticky-cta__actions .button--ghost:hover{color:var(--bone)}.sticky-cta .button svg{width:1rem;height:1rem}@media (max-width: 32rem){.sticky-cta__actions{width:100%}.sticky-cta__actions .button{flex:1;justify-content:center}}.work-card{position:relative;display:grid;grid-template-rows:auto 1fr;gap:var(--s5);text-decoration:none;color:inherit;border-radius:var(--radius-lg);isolation:isolate}.work-card__media{position:relative;aspect-ratio:4 / 3;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--stone-warm);overflow:hidden}.work-card__media picture,.work-card__media img,.work-card__media .media-placeholder{width:100%;height:100%}.work-card__media img{object-fit:cover;object-position:top center;transition:transform var(--dur-cinematic) var(--ease-out-expo);will-change:transform}.work-card:hover .work-card__media img{transform:scale(1.045)}.work-card__media:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(142,74,46,.28),transparent 62%);opacity:0;transition:opacity var(--dur-base) var(--ease-out-quart)}.work-card:hover .work-card__media:after{opacity:1}.work-card__body{display:flex;flex-direction:column;gap:var(--s3);align-items:start}.work-card__meta{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted)}.work-card :is(h2,h3){font-size:var(--step-3);transition:color var(--dur-fast) var(--ease-out-quart)}.work-card:hover :is(h2,h3){color:var(--accent-strong)}.work-card__body p{max-width:46ch;color:var(--text-secondary);font-size:var(--step--1);line-height:1.5}.work-card__cta{margin-top:auto;padding-top:var(--s2)}.work-card__cta:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit}.work-card:focus-visible{outline:2px solid var(--focus);outline-offset:6px}.media-placeholder{display:block;background-color:var(--stone-warm);background-image:linear-gradient(to right,rgba(28,27,25,.06) 1px,transparent 1px),linear-gradient(to bottom,rgba(28,27,25,.06) 1px,transparent 1px);background-size:22px 22px}.media-placeholder:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 45%,rgba(184,107,74,.18),transparent 60%)}.work-strip{display:grid;gap:var(--s7)}@media (min-width: 52rem){.work-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s8) var(--s7)}.work-card--large{grid-column:1 / -1;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-template-rows:auto;gap:var(--s7);align-items:center}.work-card--large .work-card__media{aspect-ratio:16 / 11}.work-card--large :is(h2,h3){font-size:var(--step-5)}.work-card--large .work-card__body p{font-size:var(--step-0)}}.work-more{margin-top:var(--s8);padding-top:var(--s5);border-top:1px solid var(--line)}.gallery-hero{padding-top:clamp(8rem,6rem + 8vw,12rem);padding-bottom:var(--s8)}.gallery-hero h1{font-size:var(--step-8);max-width:14ch}.gallery-count{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted)}.filters{display:flex;flex-wrap:wrap;gap:var(--s2);margin-block:var(--s6) var(--s8)}.filter{display:inline-flex;align-items:center;gap:var(--s2);min-height:2.75rem;padding:0 var(--s4);border:1px solid var(--line);border-radius:var(--radius-pill);background:transparent;color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out-quart),color var(--dur-fast) var(--ease-out-quart),border-color var(--dur-fast) var(--ease-out-quart)}.filter span{color:var(--text-muted);font-size:.85em}.filter:hover{border-color:var(--line-strong);color:var(--text)}.filter.is-current{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--bone)}.filter.is-current span{color:#f2eee6cc}.gallery-grid{display:grid;gap:var(--s8) var(--s6);grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr))}.work-card.is-filtered-out{display:none}.gallery-empty{padding:var(--s9) 0;text-align:center;color:var(--text-muted)}.work-card__media--contain{display:grid;place-items:center;padding:var(--s5);background-color:color-mix(in srgb,var(--surface-raised) 70%,var(--surface));background-image:linear-gradient(to right,color-mix(in srgb,var(--charcoal) 5%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--charcoal) 5%,transparent) 1px,transparent 1px);background-size:22px 22px}.work-card__media--contain picture,.work-card__media--contain img{width:100%;height:auto;max-height:100%;object-fit:contain}.work-card__media--contain:after{display:none}.cs-hero{position:relative;padding-top:clamp(8rem,6rem + 8vw,13rem);padding-bottom:var(--chapter-gap);overflow:clip}.cs-hero__meta{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);margin-bottom:var(--s5)}.cs-hero h1{font-size:var(--step-8);max-width:15ch}.cs-hero__tagline{max-width:46ch;margin-top:var(--s6);font-size:var(--step-2);line-height:1.35;letter-spacing:-.025em;color:var(--text-secondary);text-wrap:pretty}.cs-hero__media{margin-top:var(--s8);border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--line);aspect-ratio:16 / 9;background:var(--ink-raised)}.cs-hero__media img,.cs-hero__media video{width:100%;height:100%;object-fit:cover;object-position:top center}.cs-section{padding-block:var(--chapter-gap)}.cs-grid{display:grid;gap:var(--s5)}@media (min-width: 56rem){.cs-grid{grid-template-columns:14rem minmax(0,1fr);gap:var(--s8);align-items:start}}.cs-grid h2{font-size:var(--step-4);position:sticky;top:7rem}@media (max-width: 55.99rem){.cs-grid h2{position:static}}.cs-body{max-width:40rem;font-size:var(--step-1);line-height:1.55;color:var(--text-secondary);text-wrap:pretty}.cs-body>*+*{margin-top:var(--s5)}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));gap:var(--s4);margin:0;padding-top:var(--s6);border-top:1px solid var(--line)}.metric{display:flex;flex-direction:column-reverse;gap:var(--s2)}.metric dd{margin:0;font-family:var(--font-display);font-size:var(--step-4);font-weight:500;letter-spacing:-.045em;line-height:1;color:var(--accent-strong)}.metric dt{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted)}.device{position:relative;margin-inline:auto;border-radius:var(--radius-lg);background:var(--ink);box-shadow:var(--shadow-lg);overflow:hidden}.device--laptop{width:min(100%,62rem);aspect-ratio:16 / 10;padding:.75rem .75rem 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.device--phone{width:min(100%,20rem);aspect-ratio:9 / 19;padding:.6rem;border-radius:2.25rem}.device__chrome{display:flex;gap:.375rem;padding:0 0 .6rem .4rem}.device__chrome span{width:.5rem;height:.5rem;border-radius:50%;background:#f2eee63d}.device__screen{position:relative;width:100%;height:100%;border-radius:var(--radius-sm);overflow:hidden;background:var(--bone)}.device--phone .device__screen{border-radius:1.75rem}.device__screen iframe{width:100%;height:100%;border:0;display:block}.device__screen img{width:100%;height:100%;object-fit:cover;object-position:top center}.demo-note{margin-top:var(--s4);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted);text-align:center}.cs-gallery{display:grid;gap:var(--s6);align-items:start}@media (min-width: 48rem){.cs-gallery--pair{grid-template-columns:repeat(2,minmax(0,1fr))}}.cs-shot{border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--stone-warm)}.cs-shot img{width:100%;height:auto}.cs-shot figcaption{padding:var(--s4) var(--s5);border-top:1px solid var(--line);background:var(--surface-raised);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;color:var(--text-muted)}.cs-next{display:block;padding-block:var(--chapter-gap);text-decoration:none;color:inherit;border-top:1px solid var(--line)}.cs-next__inner{display:grid;gap:var(--s4)}.cs-next h2{font-size:var(--step-6);transition:transform var(--dur-slow) var(--ease-out-expo)}.cs-next:hover h2{transform:translate3d(var(--s4),0,0);color:var(--accent-strong)}.cs-back{display:inline-flex;align-items:center;gap:var(--s2);margin-bottom:var(--s6);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;text-decoration:none;color:var(--text-muted);transition:color var(--dur-fast) var(--ease-out-quart)}.cs-back:hover{color:var(--text)}.cs-back svg{width:1rem;height:1rem;transition:transform var(--dur-base) var(--ease-out-expo)}.cs-back:hover svg{transform:translate3d(-.25rem,0,0)}.cs-draft{display:inline-flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s4);border:1px dashed var(--line-strong);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted)}.cs-hero__showcase{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:var(--s6);margin-top:var(--s8)}@media (min-width: 56rem){.cs-hero__showcase{gap:var(--s8)}.cs-screen:nth-child(odd){transform:rotate(-1.4deg)}.cs-screen:nth-child(2n){transform:rotate(1.4deg) translateY(1.5rem)}}.cs-screen{display:flex;flex-direction:column;gap:var(--s4);align-items:center;max-width:20rem;transition:transform var(--dur-slow) var(--ease-out-expo)}.cs-screen:hover{transform:rotate(0) translateY(-.5rem)}.cs-screen__caption{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;text-align:center;color:var(--text-muted);max-width:22ch}.cs-hero__showcase .device--phone{width:100%;border:1px solid rgba(242,238,230,.14)}.build-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:grid;place-items:center;padding:var(--s4);background:color-mix(in srgb,var(--ink) 82%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--dur-base) var(--ease-out-quart),visibility var(--dur-base) linear}.build-modal[aria-hidden=false]{visibility:visible;pointer-events:auto}.build-modal.is-visible{opacity:1}.build-modal-shell{position:relative;display:flex;flex-direction:column;width:min(100%,60rem);max-height:min(92svh,52rem);border-radius:var(--radius-xl);background:var(--bone);box-shadow:var(--shadow-lg);overflow:hidden;transform:translate3d(0,1.5rem,0) scale(.985);transition:transform var(--dur-base) var(--ease-out-expo)}.build-modal.is-visible .build-modal-shell{transform:none}.form-topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s5);padding:var(--s4) var(--s5);border-bottom:1px solid var(--line);flex:0 0 auto}@media (max-width: 30rem){.form-topbar{gap:var(--s3)}.form-progress-copy>span:first-child{display:none}.form-progress-copy,.form-close{white-space:nowrap}}.form-progress{flex:1;max-width:22rem}.form-progress-copy{display:flex;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s2);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted)}.form-progress-track{height:2px;border-radius:var(--radius-pill);background:var(--line);overflow:hidden}.form-progress-bar{height:100%;background:var(--rust);transform:scaleX(.2);transform-origin:0 50%;transition:transform var(--dur-slow) var(--ease-out-expo)}.form-close{display:inline-flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);border:0;border-radius:var(--radius-pill);background:transparent;font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out-quart)}.form-close:hover{color:var(--text)}.build-form{position:relative;flex:1;min-height:0;display:grid}.form-step{grid-area:1 / 1;overflow-y:auto;overscroll-behavior:contain;padding:var(--s7) var(--s5) var(--s6);opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(0,1.5rem,0);transition:opacity var(--dur-base) var(--ease-out-quart),transform var(--dur-base) var(--ease-out-expo),visibility var(--dur-base) linear}@media (min-width: 48rem){.form-step{padding:var(--s8) var(--s8) var(--s7)}}.build-modal[aria-hidden=false] .form-step.is-active{opacity:1;visibility:visible;pointer-events:auto;transform:none}.form-step.is-leaving{opacity:0;transform:translate3d(0,-1.5rem,0);transition-duration:var(--dur-fast);transition-timing-function:var(--ease-in-out-quint)}.form-step.is-back{transform:translate3d(0,-1.5rem,0)}.form-step.is-back.is-active{transform:none}.step-inner{max-width:44rem;margin-inline:auto}.form-step h2{margin:var(--s3) 0 var(--s6);font-size:var(--step-4)}.choice-grid{display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}.choice{position:relative;display:flex;align-items:center;min-height:3.5rem;padding:var(--s3) var(--s5);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out-quart),background-color var(--dur-fast) var(--ease-out-quart),transform var(--dur-fast) var(--ease-out-quart)}.choice:hover{border-color:var(--line-strong);transform:translateY(-1px)}.choice input{position:absolute;opacity:0;pointer-events:none}.choice span{font-size:var(--step--1);line-height:1.35}.choice:has(input:checked){border-color:var(--rust);background:color-mix(in srgb,var(--rust) 8%,var(--white))}.choice:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:3px}.choice:has(input:disabled){opacity:.42;cursor:not-allowed}.field{display:block;margin-bottom:var(--s5)}.field-label{display:block;margin-bottom:var(--s2);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-secondary)}.field-optional{color:var(--text-muted);text-transform:none;letter-spacing:.04em}.field input,.field textarea{width:100%;padding:var(--s4);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--white);font-size:var(--step-0);line-height:1.5;resize:vertical;transition:border-color var(--dur-fast) var(--ease-out-quart),box-shadow var(--dur-fast) var(--ease-out-quart)}.field input:focus,.field textarea:focus{outline:0;border-color:var(--rust);box-shadow:0 0 0 3px color-mix(in srgb,var(--rust) 18%,transparent)}.field textarea::placeholder{color:var(--taupe)}.form-message{min-height:1.5em;margin-top:var(--s4);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.05em;color:var(--rust-deep)}.step-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);margin-top:var(--s5)}@media (max-width: 47.99rem){.step-actions{position:sticky;bottom:0;z-index:2;margin-inline:calc(var(--s5) * -1);margin-bottom:calc(var(--s6) * -1);padding:var(--s4) var(--s5) var(--s5);background:var(--bone);border-top:1px solid var(--line)}.step-actions .button{flex:1;justify-content:center}}.step-actions:has(.back-step:only-child){justify-content:flex-start}.back-step{padding:var(--s3) 0;border:0;background:transparent;font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-out-quart)}.back-step:hover{color:var(--text)}.next-step{margin-left:auto}.form-complete .step-inner{display:grid;justify-items:center;gap:var(--s5);text-align:center;padding-block:var(--s8)}.complete-mark{display:grid;place-items:center;width:4rem;height:4rem;border-radius:50%;background:var(--rust-deep);color:var(--bone);animation:complete-pop var(--dur-slow) var(--ease-out-back)}.complete-mark svg{width:1.75rem;height:1.75rem}@keyframes complete-pop{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}html.is-scroll-locked{overflow:hidden}@media (max-width: 47.99rem){.build-modal{padding:0;place-items:stretch}.build-modal-shell{width:100%;height:100dvh;max-height:100dvh;border-radius:0;transform:translate3d(0,2%,0)}.form-step{padding:var(--s6) var(--s5) var(--s4)}.form-step h2{font-size:var(--step-3);margin-bottom:var(--s5)}}@media (max-width: 47.99rem) and (max-height: 700px){.form-step{padding-top:var(--s5)}.form-step h2{font-size:var(--step-2);margin-bottom:var(--s4)}.choice{min-height:3rem}}.email-fallback{position:fixed;z-index:120;width:min(20rem,calc(100vw - 1.5rem));padding:var(--s5);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-lg);opacity:0;transform:translate3d(0,-.5rem,0);transition:opacity var(--dur-base) var(--ease-out-quart),transform var(--dur-base) var(--ease-out-expo)}.email-fallback.is-open{opacity:1;transform:none}.email-fallback__note{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted)}.email-fallback__address{margin-top:var(--s3);font-family:var(--font-display);font-size:var(--step-1);font-weight:500;letter-spacing:-.02em;color:var(--text);-webkit-user-select:all;user-select:all;word-break:break-all}.email-fallback__actions{display:flex;gap:var(--s2);margin-top:var(--s5)}.email-fallback__copy,.email-fallback__close{flex:1;min-height:2.75rem;padding-inline:var(--s3);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:transparent;font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out-quart),color var(--dur-fast) var(--ease-out-quart),border-color var(--dur-fast) var(--ease-out-quart)}.email-fallback__copy{border-color:var(--rust);color:var(--rust-deep)}.email-fallback__copy:hover{background:var(--rust-deep);border-color:var(--rust-deep);color:var(--bone)}.email-fallback__copy.is-done,.email-fallback__close:hover{background:var(--charcoal);border-color:var(--charcoal);color:var(--bone)}
