@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-cyrillic-ext-wght-normal-okcGN4Nq.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-cyrillic-wght-normal-BS41q_Tv.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-greek-ext-wght-normal-DQgQPNk4.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-greek-wght-normal-sS1B39LI.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-vietnamese-wght-normal-TKKdAiBA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-latin-ext-wght-normal-B4u9PlvR.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-latin-wght-normal-DX-nOvPD.woff2) format("woff2-variations");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:Inter Tight Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-cyrillic-ext-wght-italic-BJqtfpQe.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-cyrillic-wght-italic-HmhN1gQv.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Tight Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-greek-ext-wght-italic-B_3RbJza.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Tight Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-greek-wght-italic-Bb1BGCmL.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Tight Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-vietnamese-wght-italic-CiVF0Juh.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-latin-ext-wght-italic-DYqsmiDd.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-tight-latin-wght-italic-DiXukCDG.woff2) format("woff2-variations");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:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/quicksand-vietnamese-wght-normal-ei70gACF.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/quicksand-latin-ext-wght-normal-CrJ75Ewg.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Quicksand Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/quicksand-latin-wght-normal-Buj9m_3d.woff2) format("woff2-variations");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 Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-ext-wght-normal-B5bTHO_g.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-wght-normal-BbzFLZTg.woff2) format("woff2-variations");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 Sans Variable;font-style:italic;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-ext-wght-italic-CTF9u33F.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans Variable;font-style:italic;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-wght-italic-BlcgWI5J.woff2) format("woff2-variations");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}.drawably-host{position:relative;isolation:isolate;font-family:Inter,system-ui,sans-serif}.drawably-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:-1}.drawably-svg path{fill:none;stroke:var(--drawably-ink, var(--drawably-stroke, #2724d1));stroke-width:var(--drawably-width, 2);stroke-linecap:round;stroke-linejoin:round}.drawably-boil{opacity:0;animation:drawably-boil-0 1.2s step-end infinite}.drawably-boil[data-i="1"]{animation-name:drawably-boil-1}.drawably-boil[data-i="2"]{animation-name:drawably-boil-2}@keyframes drawably-boil-0{0%{opacity:1}33.33%{opacity:0}}@keyframes drawably-boil-1{0%{opacity:0}33.33%{opacity:1}66.67%{opacity:0}}@keyframes drawably-boil-2{0%{opacity:0}66.67%{opacity:1}to{opacity:0}}.drawably-svg .drawably-blob{fill:var(--drawably-ink, var(--drawably-fill, #2724d1));stroke:var(--drawably-ink, var(--drawably-fill, #2724d1));stroke-width:4}.drawably-svg .drawably-scribble{stroke-width:1.5}.drawably-button{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;border:0;background:none;font:inherit;font-family:Inter,system-ui,sans-serif;color:var(--drawably-ink, var(--drawably-stroke, #2724d1));cursor:pointer;outline:none;transition:transform .12s ease}.drawably-button:active{transform:scale(.92)}.drawably-button--neutral{--drawably-stroke: #6e675f;--drawably-fill: #6e675f}.drawably-button--danger{--drawably-stroke: var(--drawably-error, #d12724);--drawably-fill: var(--drawably-error, #d12724)}.drawably-button[data-state=error]{--drawably-ink: var(--drawably-error, #d12724)}.drawably-button[data-state=success]{--drawably-ink: var(--drawably-success, #188a42)}.drawably-button[data-state=loading]{cursor:progress;opacity:.6}.drawably-button[data-state=loading] .drawably-boil{animation-duration:.45s}.drawably-button--solid{color:var(--drawably-paper, #fff)}.drawably-svg .drawably-focus{visibility:hidden;stroke-width:1.5}.drawably-host:is(:focus-visible,:has(:focus-visible)) .drawably-focus{visibility:visible}.drawably-checkbox,.drawably-radio{display:inline-block;width:22px;height:22px}.drawably-toggle{display:inline-block;width:44px;height:24px}:is(.drawably-checkbox,.drawably-radio,.drawably-toggle) input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.drawably-svg .drawably-dot{fill:var(--drawably-ink, var(--drawably-fill, #2724d1));stroke:var(--drawably-ink, var(--drawably-fill, #2724d1));visibility:hidden;transform:scale(.5);transform-box:fill-box;transform-origin:center;transition:transform .16s ease-out}.drawably-radio[data-checked] .drawably-dot{visibility:visible;transform:scale(1)}.drawably-svg .drawably-knob{transition:transform .16s ease-out}.drawably-toggle[data-checked] .drawably-knob{transform:translate(20px)}.drawably-divider{display:block;height:10px;border:0}.drawably-svg .drawably-check{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .24s ease-out}.drawably-checkbox[data-checked] .drawably-check{stroke-dashoffset:0}.drawably-inputbox{display:inline-block}.drawably-inputbox input{border:0;background:none;font:inherit;color:inherit;padding:8px 12px;width:100%;box-sizing:border-box;outline:none}.drawably-card{padding:16px}@media(prefers-reduced-motion:reduce){.drawably-boil{animation:none}.drawably-boil[data-i="0"]{opacity:1}.drawably-svg .drawably-check,.drawably-svg .drawably-dot,.drawably-svg .drawably-knob{transition:none}}@font-face{font-family:Monaspace Argon;src:url(/fonts/ta-human-v1.301.woff2) format("woff2");font-weight:200 800;font-stretch:100% 125%;font-style:oblique -11deg 0deg;font-display:swap}@font-face{font-family:Monaspace Krypton;src:url(/fonts/ta-mechanical-v1.301.woff2) format("woff2");font-weight:200 800;font-stretch:100% 125%;font-style:oblique -11deg 0deg;font-display:swap}@font-face{font-family:Monaspace Neon;src:url(/fonts/ta-neo-v1.301.woff2) format("woff2");font-weight:200 800;font-stretch:100% 125%;font-style:oblique -11deg 0deg;font-display:swap}@font-face{font-family:Monaspace Radon;src:url(/fonts/ta-hand-v1.301.woff2) format("woff2");font-weight:200 800;font-stretch:100% 125%;font-style:oblique -11deg 0deg;font-display:swap}@font-face{font-family:Monaspace Xenon;src:url(/fonts/ta-slab-v1.301.woff2) format("woff2");font-weight:200 800;font-stretch:100% 125%;font-style:oblique -11deg 0deg;font-display:swap}:root{color-scheme:dark;--color-cool-50: oklch(.985 .007 250);--color-cool-100: oklch(.955 .022 250);--color-cool-200: oklch(.9 .028 250);--color-cool-400: oklch(.72 .025 250);--color-cool-600: oklch(.53 .025 250);--color-cool-700: oklch(.42 .03 250);--color-cool-800: oklch(.29 .028 250);--color-cool-900: oklch(.22 .026 250);--color-cool-950: oklch(.17 .024 250);--color-cool-calm-50: oklch(.985 .004 250);--color-cool-calm-100: oklch(.955 .01 250);--color-cool-calm-200: oklch(.9 .012 250);--color-cool-calm-400: oklch(.72 .01 250);--color-cool-calm-600: oklch(.53 .01 250);--color-cool-calm-700: oklch(.42 .012 250);--color-cool-calm-800: oklch(.29 .012 250);--color-cool-calm-900: oklch(.22 .01 250);--color-cool-calm-950: oklch(.17 .01 250);--color-just-black: #0e100f;--color-surface-cream: #fffce1;--color-surface-50: #858578;--color-surface-25: #42433d;--color-off-black: #191919;--color-shockingly-green: #0ae448;--color-light-green: #abff84;--color-orangey: #ff8709;--color-pink: #fec5fb;--color-lilac: #9d95ff;--color-blue: #00bae2;--color-core-green: #dfffd1;--color-lipstick-pink: #f100cb;--gradient-shockingly-green: linear-gradient( 114.41deg, #0ae448 20.74%, #abff84 65.5% );--canvas: var(--color-just-black);--ink: var(--color-surface-cream);--dark-warm: var(--color-surface-cream);--olive: var(--color-surface-cream);--stone: var(--color-surface-50);--border: var(--color-surface-25);--brand: var(--color-surface-cream);--material-nav: rgb(14 16 15 / .92);--surface-hover: rgb(255 252 225 / .06);--surface-active: rgb(255 252 225 / .1);--color-image-outline: rgb(255 255 255 / .1);--soft-shadow: transparent;--ambient-glow-soft: transparent;--ambient-glow-mid: transparent;--ambient-glow-deep: transparent;--spacing-8: 8px;--spacing-12: 12px;--spacing-16: 16px;--spacing-20: 20px;--spacing-24: 24px;--spacing-32: 32px;--spacing-76: 76px;--spacing-96: 96px;--spacing-108: 108px;--page-max-width: 1600px;--radius-cards: 8px;--radius-pills: 9999px;--radius-buttons: 100px;--radius-small-tags: 8px;--text-caption: .875rem;--leading-caption: 1.4;--tracking-caption: -.01em;--text-body-sm: 1rem;--leading-body-sm: 1.15;--text-code: .875rem;--text-label: 1rem;--text-body: 1.1875rem;--text-body-lg: 1.4375rem;--leading-body-lg: 1.38;--tracking-body-lg: -.01em;--text-subheading: 2.125rem;--leading-subheading: 1.2;--tracking-subheading: -.01em;--text-heading-sm: 2.75rem;--leading-heading-sm: 1.2;--tracking-heading-sm: -.01em;--text-heading: 4.125rem;--tracking-heading: -.01em;--text-heading-lg: 6.3125rem;--leading-heading-lg: 1;--tracking-heading-lg: -.011em;--text-title: 2rem;--text-section: clamp(4rem, 8vw, 6.3125rem);--text-display: 14rem;--text-article-display: clamp(3.5rem, 7vw, 6.3125rem);--leading-body: 1.15;--leading-heading: 1.2;--leading-display: .9;--tracking-display: -.02em;--font-mori: "Inter Tight Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-fictional: "Quicksand Variable", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-sans: "Inter Tight Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-debug: Menlo, Monaco, "SFMono-Regular", Consolas, monospace;--font-site-body: var(--font-mori);--font-site-display: var(--font-mori);--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-drawer: cubic-bezier(.32, .72, 0, 1);color:var(--ink);background:var(--canvas);font-family:var(--font-sans);font-size:100%;font-optical-sizing:auto;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--canvas: var(--color-cool-100);--ink: var(--color-cool-950);--stone: var(--color-cool-600);--border: var(--color-cool-200);--dark-warm: var(--ink);--olive: var(--ink);--brand: var(--ink);--material-nav: color-mix(in oklch, var(--canvas) 92%, transparent);--surface-hover: color-mix(in oklch, var(--ink) 6%, transparent);--surface-active: color-mix(in oklch, var(--ink) 10%, transparent);--color-image-outline: color-mix(in oklch, var(--ink) 10%, transparent)}html[data-color-mode=calm]{--canvas: var(--color-cool-calm-100);--ink: var(--color-cool-calm-950);--stone: var(--color-cool-calm-600);--border: var(--color-cool-calm-200)}html[data-color-scheme=dark]{--canvas: var(--color-cool-950);--ink: var(--color-cool-100);--stone: var(--color-cool-400);--border: var(--color-cool-800)}html[data-color-scheme=dark][data-color-mode=calm]{--canvas: var(--color-cool-calm-950);--ink: var(--color-cool-calm-100);--stone: var(--color-cool-calm-400);--border: var(--color-cool-calm-800)}html,body{min-height:100%;overscroll-behavior-y:none}*{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;border:0;padding:0;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;z-index:100;inset-block-start:12px;inset-inline-start:12px;min-height:44px;align-items:center;border-radius:999px;padding-inline:16px;color:var(--canvas);background:var(--ink);box-shadow:0 8px 24px -16px var(--soft-shadow);font-size:var(--text-label);font-weight:650;translate:0 calc(-100% - 24px)}.skip-link:focus-visible{display:inline-flex;outline:2px solid;outline-offset:2px;text-decoration:none;translate:0}body{width:100%;margin:0;margin-inline:auto;isolation:isolate;color:var(--ink);background:var(--canvas);font-size:var(--text-body);line-height:var(--leading-body)}#main-content{position:relative;z-index:1}.glimm-glow{position:fixed;z-index:0;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse 34% 62% at 104% 24%,var(--ambient-glow-soft),transparent 72%),radial-gradient(ellipse 28% 54% at 100% 54%,var(--ambient-glow-mid),transparent 74%),radial-gradient(ellipse 26% 46% at 104% 82%,var(--ambient-glow-deep),transparent 76%)}.glimm-glow-canvas{display:block;width:100%;height:100%;opacity:.72;filter:blur(32px) saturate(.84);-webkit-mask-image:linear-gradient(to right,transparent 46%,black 78%);mask-image:linear-gradient(to right,transparent 46%,black 78%)}@media(max-width:720px){.glimm-glow-canvas{opacity:.46;-webkit-mask-image:linear-gradient(to right,transparent 62%,black 88%);mask-image:linear-gradient(to right,transparent 62%,black 88%)}}@media(prefers-contrast:more){.glimm-glow{opacity:.42}.glimm-glow-canvas{opacity:.28}}.ocean-banner{position:relative;width:100%;height:clamp(160px,16vw,220px);overflow:hidden;background:var(--canvas);background-image:url(/media/waves-fallback.png);background-position:center bottom;background-size:cover;-webkit-mask-image:linear-gradient(to bottom,oklch(0 0 0) 0%,oklch(0 0 0) 72%,transparent 100%);mask-image:linear-gradient(to bottom,oklch(0 0 0) 0%,oklch(0 0 0) 72%,transparent 100%)}.ocean-banner canvas{display:block;width:100%;height:100%;opacity:0;image-rendering:pixelated;transition:opacity .2s var(--ease-out)}.ocean-banner canvas[data-render-state=ready]{opacity:1}.ocean-banner-motion-control,.project-media-motion-control{position:absolute;z-index:1;inset-block-start:12px;inset-inline-end:12px;display:grid;justify-items:end;gap:8px}.ocean-banner-motion-toggle,.project-media-motion-toggle{width:44px;height:44px;display:grid;place-items:center;border:1px solid color-mix(in oklch,var(--ink) 18%,transparent);border-radius:50%;padding:0;color:var(--ink);background:color-mix(in oklch,var(--canvas) 82%,transparent);box-shadow:0 8px 24px -16px var(--soft-shadow);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ocean-banner-motion-toggle:hover,.project-media-motion-toggle:hover{background:color-mix(in oklch,var(--canvas) 92%,transparent)}.ocean-banner-motion-toggle:focus-visible,.project-media-motion-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.ocean-banner-motion-toggle svg,.project-media-motion-toggle svg{width:20px;height:20px;fill:currentColor}.ocean-banner-motion-tooltip,.project-media-motion-tooltip{max-width:calc(100vw - 32px);border-radius:8px;padding:6px 10px;color:var(--canvas);background:var(--ink);box-shadow:0 8px 24px -16px var(--soft-shadow);font-size:var(--text-caption);line-height:1.35;overflow-wrap:break-word;text-align:start;opacity:0;pointer-events:none}.ocean-banner-motion-control:not([data-tooltip-dismissed]):hover .ocean-banner-motion-tooltip,.ocean-banner-motion-control:not([data-tooltip-dismissed]):focus-within .ocean-banner-motion-tooltip,.project-media-motion-control:not([data-tooltip-dismissed]):hover .project-media-motion-tooltip,.project-media-motion-control:not([data-tooltip-dismissed]):focus-within .project-media-motion-tooltip{opacity:1;pointer-events:auto}@media(prefers-reduced-motion:reduce){.ocean-banner canvas{opacity:.85;transition:none}}main{width:720px;margin:0 auto;padding-top:64px}.site-header{margin-bottom:52px}.not-found{width:min(720px,calc(100% - 48px));min-height:50vh}.not-found-label{margin:0 0 12px;color:var(--brand);font-family:SFMono-Regular,Consolas,monospace;font-size:var(--text-caption);font-variant-numeric:tabular-nums;font-weight:650}.not-found h1{margin:0;color:var(--ink);font-size:var(--text-section);line-height:var(--leading-heading);letter-spacing:-.03em;text-wrap:balance}.not-found>p:last-of-type{max-width:42ch;margin:20px 0 0;color:var(--olive);text-wrap:pretty}.not-found a{display:inline-flex;min-height:44px;align-items:center;margin-top:24px;margin-inline-start:-10px;border-radius:999px;padding-inline:10px;font-weight:550}.wordmark{color:var(--ink);font-size:var(--text-body);font-weight:600;letter-spacing:-.015em}.hero-intro{margin-bottom:0}.hero-intro p{max-width:34ch;margin:0;color:var(--ink);font-size:var(--text-display);line-height:1.3;letter-spacing:-.025em;text-wrap:balance}::selection{color:var(--canvas);background:var(--brand)}.bio{margin-top:72px;color:var(--dark-warm);font-size:var(--text-body);font-weight:400;line-height:var(--leading-body)}h1,h2,.bio-heading time,.bio-copy p,.writing h2,.writing h3,.writing p,.work h2,.work h3,.work p,.work ul,footer p{margin:0}.page{position:relative;width:min(920px,calc(100% - 48px));margin-top:8px;margin-bottom:28px;padding:38px 44px 0}.page .bio{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(0,1.2fr);align-items:start;gap:48px;margin-top:88px}.page .bio-copy p:first-child{padding-top:0}.page .contact-links{margin-top:44px}.page footer{margin-top:44px;padding-bottom:44px}.bio h2{margin:0;font-size:var(--text-title);font-weight:600;line-height:var(--leading-heading);letter-spacing:-.02em;text-wrap:balance}.bio-heading time{display:block;margin-top:16px;color:var(--stone);font-size:var(--text-caption);font-family:SFMono-Regular,Consolas,monospace;font-variant-numeric:tabular-nums;white-space:normal}.bio-copy p{padding-top:20px;overflow-wrap:break-word;text-wrap:pretty}a{color:var(--brand);text-decoration:none;text-decoration-skip-ink:auto;text-decoration-thickness:from-font;text-underline-position:from-font;text-underline-offset:3px;transition:color .16s var(--ease-out),opacity .1s ease-out}a:hover{text-decoration:underline;text-underline-offset:2px}a:focus-visible{outline:2px solid;outline-offset:2px;text-decoration:underline}a:active{opacity:.68}.contact-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:28px;padding-top:12px}.contact-links a{display:inline-flex;min-height:44px;align-items:center;border-radius:999px;padding-inline:10px;font-size:var(--text-label);font-weight:500;transition:background-color .16s var(--ease-out),opacity .1s ease-out,transform .1s ease-out}.contact-links a:hover{background:var(--surface-hover);text-decoration:none}.contact-links a:active{background:var(--surface-active);opacity:1;transform:scale(.96)}.writing,.work{margin-top:88px}.writing-header,.work-header{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.writing-header h2,.work-header h2{margin:0}.writing-header h2,.work-header h2{padding:0;color:var(--ink);font-size:var(--text-title);font-weight:600;line-height:var(--leading-heading);letter-spacing:-.02em;text-wrap:balance}.writing-header>a{color:var(--stone);font-size:var(--text-caption);font-weight:500}.writing-list{display:grid;gap:12px;margin-top:20px}.writing-row{display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:104px;align-items:center;gap:32px;margin-inline:-16px;border-radius:16px;padding:20px 16px;color:var(--ink);transition:background-color .18s var(--ease-out),transform .1s ease-out,opacity .1s ease-out}.writing-row:hover{background:var(--surface-hover);text-decoration:none}.writing-row:active{background:var(--surface-active);opacity:1;transform:scale(.96)}.writing-row h3,.writing-row p{line-height:1.4}.writing-row h3{color:var(--ink);font-size:var(--text-body-lg);font-weight:600;letter-spacing:-.018em;view-transition-name:article-title}.writing-row p{max-width:52ch;margin-top:6px;color:var(--olive);font-size:var(--text-label);text-wrap:pretty;view-transition-name:article-deck}.writing-row-meta{display:flex;align-items:center;gap:20px}.writing-row time{color:var(--stone);font-family:SFMono-Regular,Consolas,monospace;font-size:var(--text-caption);font-variant-numeric:tabular-nums;white-space:nowrap;view-transition-name:article-date}.writing-row-icon{width:1.125rem;height:1.125rem;flex:0 0 auto;color:var(--stone);transition:color .18s var(--ease-out),transform .18s var(--ease-out)}.writing-row:hover .writing-row-icon{color:var(--ink);transform:translate(2px,-2px)}.work ul{display:grid;gap:4px;margin-top:20px;padding:0;list-style:none}.work-row{display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:68px;align-items:baseline;gap:32px;padding:14px 0;color:var(--ink)}.work-row h3,.work-row p,.work-row time{font-size:var(--text-label);font-weight:400;line-height:1.45}.work-row h3{color:var(--ink);font-weight:500}.work-row p{margin-top:2px;color:var(--olive);text-wrap:pretty}.work-row time{color:var(--stone);font-family:SFMono-Regular,Consolas,monospace;font-size:var(--text-caption);font-variant-numeric:tabular-nums;text-align:start;white-space:nowrap}footer{margin-top:88px;border-top:1px solid var(--border);padding:24px 0 32px}footer p{color:var(--stone);font-size:var(--text-caption)}.page>footer{position:relative;border-top:0}.page>footer:before{position:absolute;top:0;left:0;width:100%;height:1px;content:"";background:var(--border);transform-origin:left center;animation:footer-rule-enter 1ms linear both;animation-range:entry 0% entry 55%;animation-timeline:view(block)}@keyframes footer-rule-enter{0%{opacity:.25;transform:scaleX(.18)}to{opacity:1;transform:scaleX(1)}}.endless-footer{position:relative;z-index:0;width:100%;height:200svh;background:var(--canvas)}.endless-footer-canvas{position:fixed;z-index:0;top:0;left:50%;display:block;width:100%;max-width:1728px;height:100vh;height:100dvh;opacity:0;pointer-events:none;transform:translate(-50%)}.endless-footer-canvas[data-active]{opacity:1}.site-nav{display:flex;flex-wrap:wrap;gap:8px 24px;margin-block-end:72px}.site-nav a{display:inline-flex;min-height:44px;align-items:center;font-size:var(--text-label);font-weight:500}.blog-index,.blog-post{width:min(70rem,calc(100% - clamp(3rem,8vw,8rem)));margin-inline:auto;padding-block:clamp(4rem,8vw,7rem) 9.5rem;font-family:var(--font-site-body)}.blog-post{--article-body-font-size: var(--text-body);--article-reading-width: 70ch;--article-wide-width: min(96ch, calc(100vw - clamp(2rem, 8vw, 8rem)) )}.blog-index{display:grid;grid-template-columns:clamp(9rem,16vw,12.5rem) minmax(0,1fr);column-gap:clamp(2.5rem,6vw,5.5rem)}.blog-index .site-nav{grid-column:1 / -1}.editorial-nav{position:static;display:flex;min-height:44px;align-items:center;justify-content:space-between;margin-bottom:64px;font-size:var(--text-label)}.editorial-nav-back,.editorial-nav-end{display:flex;align-items:center}.editorial-nav a{display:inline-flex;min-height:44px;align-items:center}.editorial-nav-brand{color:var(--ink);font-size:var(--text-label);font-weight:560}.blog-header{display:grid;min-width:0;max-width:none;grid-column:1 / -1;grid-template-columns:subgrid}.blog-header h1{margin:0;color:var(--ink);font-family:var(--font-site-display);font-size:var(--text-title);font-weight:560;line-height:1.2;letter-spacing:-.02em;text-wrap:balance;grid-column:1}.blog-header p{max-width:48ch;margin:0;color:var(--olive);font-size:var(--text-body);line-height:1.62;text-wrap:pretty;grid-column:2}.post-list{container:post-list / inline-size;min-width:0;margin-block-start:80px;grid-column:2}.post-list ol{display:grid;gap:24px;margin:0;padding:0;list-style:none}.post-list li{margin-inline:-16px}.post-list a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 24px;border-radius:12px;padding-block:18px 20px;padding-inline:16px;color:var(--ink);transition:background-color .15s ease}.post-list-heading{display:grid;grid-template-columns:minmax(0,1fr) 1.125rem;align-items:center;gap:12px}.post-list a:active{background:var(--surface-active);opacity:1;transform:scale(.96)}.post-list-title{font-size:var(--text-body);font-weight:540;line-height:1.48;letter-spacing:0;text-wrap:balance;view-transition-name:article-title}.post-list-icon{width:1.125rem;height:1.125rem;flex:0 0 auto;color:var(--stone);transition:translate .16s var(--ease-out)}@media(hover:hover)and (pointer:fine){.back-link:hover{background:var(--surface-hover);text-decoration:none}.back-link:hover .back-link-icon{translate:-2px 0}.post-list a:hover{background:var(--surface-hover);text-decoration:none}.post-list a:hover .post-list-title{text-decoration:underline;text-decoration-thickness:from-font;text-underline-offset:3px}.post-list a:hover .post-list-icon{translate:3px 0}}:dir(rtl) .back-link-icon,:dir(rtl) .post-list-icon{scale:-1 1}@media(hover:hover)and (pointer:fine){:dir(rtl) .back-link:hover .back-link-icon{translate:2px 0}:dir(rtl) .post-list a:hover .post-list-icon{translate:-3px 0}}.post-list-meta{display:flex;gap:12px;color:var(--stone);font-family:var(--font-site-body);font-size:var(--text-caption);white-space:nowrap}.post-list-meta time{view-transition-name:article-date}.post-list p{max-width:62ch;margin:0;color:var(--olive);font-size:var(--text-body);line-height:1.6;grid-column:1}@container post-list (max-width: 40rem){.post-list a{grid-template-columns:1fr;gap:8px}.post-list-meta,.post-list p{grid-column:1}}.article-header{width:min(var(--article-reading-width),100%);margin-inline:auto}.article-header-content{width:100%}.article-header h1{max-width:18ch;margin:0;color:var(--ink);font-family:var(--font-site-display);font-size:clamp(2rem,4vw,3rem);font-weight:560;line-height:1.08;letter-spacing:-.025em;text-wrap:balance;view-transition-name:article-title}.article-deck{max-width:56ch;margin:24px 0 0;color:var(--olive);font-size:var(--text-body);line-height:1.62;text-wrap:pretty;view-transition-name:article-deck}.article-byline{display:flex;flex-wrap:wrap;gap:8px 64px;margin:24px 0 0;color:var(--stone);font-family:var(--font-site-body);font-size:var(--text-caption);font-variant-numeric:tabular-nums}.article-dates{display:flex;flex-wrap:wrap;gap:8px 24px;view-transition-name:article-date}::view-transition-old(root),::view-transition-new(root){animation-duration:.24s;animation-timing-function:var(--ease-out)}::view-transition-group(article-title){animation-duration:.24s;animation-timing-function:var(--ease-out)}::view-transition-group(article-deck),::view-transition-group(article-date){animation-duration:.22s;animation-timing-function:var(--ease-out)}@keyframes route-enter-forward{0%{opacity:0;transform:translateY(10px)}}@keyframes route-enter-backward{0%{opacity:0;transform:translateY(-10px)}}html[data-route-transition=forward] .blog-post{animation:route-enter-forward .24s var(--ease-out) both}html[data-route-transition=backward] .page,html[data-route-transition=backward] .blog-index{animation:route-enter-backward .24s var(--ease-out) both}.article-shell{width:min(var(--article-reading-width),100%);margin:56px auto 0}.article-body{width:100%;margin:0;color:var(--olive);font-size:var(--article-body-font-size);line-height:1.7;overflow-wrap:break-word}.article-body>p{margin:0 0 1.5em}.article-body>.article-break{width:3.5rem;height:1px;margin:3.5em 0;border:0;background:var(--border)}.article-summary{margin:0 0 48px;border-block:1px solid var(--ink);padding:24px 0;color:var(--ink);font-size:var(--text-body);line-height:var(--leading-body)}.article-summary-label{margin:0 0 12px;color:var(--brand);font-size:var(--text-caption);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.article-summary-question{max-width:34ch;margin:0 0 18px;color:var(--ink);font-size:var(--text-heading-sm);font-weight:650;line-height:1.3;letter-spacing:-.025em;text-wrap:balance}.article-summary ol{margin:0;padding-inline-start:1.4em}.article-summary li+li{margin-block-start:8px}.article-body h2{scroll-margin-top:88px;margin:3em 0 .9em;color:var(--ink);font-family:var(--font-site-display);font-size:var(--text-title);font-weight:560;line-height:1.2;letter-spacing:-.02em;text-wrap:balance}.article-body>h3{scroll-margin-top:88px;margin:2.4em 0 .7em;color:var(--ink);font-family:var(--font-site-display);font-size:var(--text-body-lg);font-weight:560;line-height:1.35;letter-spacing:-.02em;text-wrap:balance}.article-decisions{display:grid;gap:12px;margin:0 0 1.5em;font-family:var(--font-site-body)}.article-decisions section{border-radius:14px;padding:18px 20px;background:color-mix(in srgb,var(--border) 22%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border) 72%,transparent)}.article-decisions h3{margin:0 0 8px;color:var(--ink);font-size:var(--text-body-lg);line-height:var(--leading-heading)}.article-decisions p{margin:0;font-size:var(--text-body);line-height:var(--leading-body)}.article-body code{font-family:SFMono-Regular,Consolas,monospace;font-size:.84em}.article-body p code{padding:.1em .3em;border:1px solid var(--border);border-radius:4px;background:color-mix(in srgb,var(--border) 35%,transparent)}.article-body pre{max-width:100%;margin:2em 0;overflow-x:auto;border:0;border-radius:14px;padding:20px;color:var(--ink);background:color-mix(in srgb,var(--border) 25%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border) 72%,transparent),0 16px 36px -30px var(--soft-shadow);font-size:var(--text-code);line-height:var(--leading-body)}.article-body pre code{font-size:inherit}.article-body blockquote{margin:2.2em 0;border-block:1px solid var(--border);padding:1.5em 0;color:var(--ink);font-size:1.35em;line-height:1.35;letter-spacing:-.02em}.article-body blockquote p{margin:0}.article-ernie-cta{--drawably-stroke: var(--canvas);display:grid;width:var(--article-wide-width);align-items:center;grid-template-columns:minmax(0,1fr) auto;gap:32px;margin-block:3em;margin-inline:calc((100% - var(--article-wide-width)) / 2);padding:clamp(28px,5vw,48px);color:var(--canvas);background:var(--ink);box-shadow:0 24px 64px -48px var(--soft-shadow);font-family:var(--font-site-body)}.article-ernie-cta.drawably-card{padding:clamp(28px,5vw,48px)}.article-ernie-cta>.drawably-svg{z-index:1}.article-body .article-ernie-cta h2{margin:0;color:inherit;font-size:var(--text-section)}.article-ernie-cta p{max-width:28ch;margin:12px 0 0;color:color-mix(in oklch,var(--canvas) 78%,transparent);font-size:var(--text-body-lg);line-height:var(--leading-body)}.article-ernie-cta-copy ul{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 0;padding:0;list-style:none}.article-ernie-cta-copy li{border:1px solid color-mix(in oklch,var(--canvas) 32%,transparent);border-radius:999px;padding:5px 10px;color:color-mix(in oklch,var(--canvas) 72%,transparent);font-family:var(--font-site-body);font-size:var(--text-caption);line-height:1.2;white-space:nowrap}.article-acknowledgment{color:var(--muted);font-size:var(--text-body-sm)}.article-ernie-actions{display:grid;min-width:11.5rem;gap:10px}.article-ernie-actions a{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:10px;border:1px solid var(--canvas);padding:0 18px;color:var(--ink);background:var(--canvas);font-family:var(--font-site-body);font-size:var(--text-label);font-weight:650;transition:opacity .1s ease-out,transform .1s ease-out}.article-ernie-actions a:hover{text-decoration:none}.article-ernie-actions a:focus-visible{outline-color:var(--canvas);outline-offset:4px;text-decoration:none}.article-ernie-actions a:active{opacity:.84;transform:scale(.96)}.article-ernie-actions .article-ernie-secondary{color:var(--canvas);background:transparent}.story-demo{margin:2.8em 0;border-block:1px solid var(--ink);padding:1.6em 0;color:var(--olive)}.story-demo h3{margin:0 0 .45em;color:var(--ink);font-family:var(--font-site-display);font-size:var(--text-heading-sm);font-weight:600;line-height:1.25;letter-spacing:-.02em}.story-demo>p{margin:0 0 1.25em}.story-demo-form{margin:0}.story-demo-form label{display:block;margin-bottom:.5em;color:var(--ink);font-size:var(--text-label);font-weight:650}.story-demo-controls{display:flex;gap:10px}.story-demo-controls input{min-width:0;min-height:48px;flex:1;border:1px solid var(--stone);border-radius:10px;padding:0 14px;color:var(--ink);background:transparent;font:inherit}.story-demo-controls button{min-height:48px;border:1px solid var(--brand);border-radius:var(--radius-buttons);padding:0 18px;color:var(--ink);background:transparent;font:inherit;font-weight:600;cursor:pointer;transition:opacity .12s var(--ease-out),transform .12s var(--ease-out)}.story-demo-controls input:focus-visible,.story-demo-controls button:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.story-demo-controls button:disabled{cursor:wait;opacity:.58}.story-demo-controls button:active:not(:disabled){transform:scale(.97)}.story-demo-count{display:block;margin-top:.45em;color:var(--stone);font-family:var(--font-site-body);font-size:var(--text-caption);text-align:end}.story-demo-result{min-height:4.5em;margin-top:1.2em}.story-demo-result>p{margin:0;color:var(--stone);font-size:var(--text-label)}.story-demo-result blockquote{margin:0;border:0;padding:0;font-size:var(--text-body-lg)}.vpo-page{width:min(1760px,calc(100% - clamp(32px,6vw,112px)));margin-inline:auto;padding:clamp(28px,3vw,44px) 0 80px;font-family:var(--font-site-body)}.vpo-nav{display:flex;min-height:44px;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--border)}.vpo-brand{display:inline-flex;min-height:44px;align-items:center;color:var(--ink);font-size:var(--text-label);font-weight:560}.vpo-header{margin-top:clamp(34px,3.5vw,52px)}.vpo-header h1{max-width:none;margin:0;color:var(--ink);font-family:var(--font-site-display);font-size:clamp(2rem,2.7vw,3rem);font-weight:560;line-height:1.06;letter-spacing:-.035em;text-wrap:balance}.vpo-header p{max-width:72ch;margin:20px 0 0;color:var(--olive);font-size:var(--text-body-lg);line-height:1.55;text-wrap:pretty}.vpo-workspace{display:grid;grid-template-columns:minmax(270px,.78fr) minmax(520px,2.26fr);margin-top:clamp(34px,3vw,48px);border-top:1px solid var(--border)}.vpo-composer,.vpo-results{min-width:0;padding-top:26px}.vpo-model-result{min-width:0}.vpo-composer{padding-inline-end:clamp(24px,2.8vw,48px)}.vpo-composer label{display:block;margin-bottom:12px;color:var(--ink);font-size:var(--text-body);font-weight:650}.vpo-composer textarea{display:block;width:100%;min-height:164px;resize:vertical;border:1px solid var(--stone);border-radius:12px;padding:15px 16px;color:var(--ink);background:transparent;font-family:var(--font-site-body);font-size:var(--text-body);line-height:1.55}.vpo-composer textarea:focus-visible,.vpo-composer button:focus-visible,.vpo-candidate:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.vpo-character-count{display:block;margin-top:7px;color:var(--stone);font-size:var(--text-caption);font-variant-numeric:tabular-nums;text-align:end}.vpo-composer>button{width:100%;min-height:56px;margin-top:22px;border:1px solid var(--brand);border-radius:var(--radius-buttons);padding:0 18px;color:var(--ink);background:transparent;font-family:var(--font-site-body);font-size:var(--text-body-lg);font-weight:600;cursor:pointer;transition:opacity .12s var(--ease-out),transform .12s var(--ease-out)}.vpo-composer>button:disabled{cursor:wait;opacity:.58}.vpo-composer>button:active:not(:disabled){transform:scale(.98)}.vpo-cold-start,.vpo-error{margin:18px 0 0;color:var(--stone);font-size:var(--text-label);line-height:1.5}.vpo-error{color:var(--ink)}.vpo-results{border-inline-start:1px solid var(--border);padding-inline:clamp(28px,3.4vw,58px)}.vpo-model-tabs{display:grid;width:min(420px,100%);grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;border:1px solid var(--brand);border-radius:12px}.vpo-model-tabs button{min-height:48px;border:0;border-radius:0;padding:0 16px;color:var(--ink);background:transparent;font-family:var(--font-site-body);font-size:var(--text-label);font-weight:650;cursor:pointer;transition:color .12s var(--ease-out),background-color .12s var(--ease-out)}.vpo-model-tabs button+button{border-inline-start:1px solid var(--brand)}.vpo-model-tabs button[aria-selected=true]{color:var(--color-blue);background:var(--color-off-black);box-shadow:inset 0 -2px 0 var(--color-blue)}.vpo-model-tabs button:focus-visible{position:relative;outline:2px solid var(--brand);outline-offset:3px}.vpo-model-tabs button:active:not([aria-selected=true]){background:var(--surface-active)}@media(hover:hover)and (pointer:fine){.article-audio-controls button:hover:not(:disabled),.story-demo-controls button:hover:not(:disabled),.vpo-composer>button:hover:not(:disabled){opacity:.84}.vpo-model-tabs button:hover:not([aria-selected=true]){background:var(--surface-hover)}}.vpo-results [role=tabpanel] .vpo-model-result{padding-top:28px}.vpo-thinking{display:flex;min-height:220px;align-items:center;gap:22px;border-bottom:1px solid var(--border);padding:36px 0;color:var(--ink)}.vpo-thinking canvas{flex:0 0 auto}.vpo-thinking p{display:grid;gap:7px;margin:0}.vpo-thinking strong{font-size:var(--text-body-lg);font-weight:650}.vpo-thinking span{max-width:40ch;color:var(--stone);font-size:var(--text-label);line-height:1.5}.vpo-model-result h2{margin:0;color:var(--brand);font-family:var(--font-site-display);font-size:var(--text-heading-sm);font-weight:600;line-height:1.3;letter-spacing:-.015em}.vpo-model-description{margin:10px 0 0;color:var(--stone);font-size:var(--text-caption);line-height:1.55}.vpo-model-result blockquote{margin:30px 0 0;border-inline-start:3px solid var(--brand);padding-inline-start:clamp(22px,2vw,34px);color:var(--ink);font-size:clamp(1.05rem,1.25vw,1.28rem);line-height:1.75;text-wrap:pretty}.vpo-model-result>.vpo-scores{margin-top:24px}.vpo-empty{max-width:42ch;margin:30px 0 0;color:var(--stone);font-size:var(--text-body);line-height:1.65}.vpo-chosen-note{margin:24px 0 0;color:var(--stone);font-size:var(--text-label)}.vpo-same-story{margin:28px 0 0;border-top:1px solid var(--border);padding-top:18px;color:var(--brand);font-size:var(--text-label);line-height:1.5}.vpo-trace{margin-top:30px;border-top:1px solid var(--border);padding-top:20px}.vpo-trace h3{margin:0;color:var(--ink);font-size:var(--text-label);font-weight:650}.vpo-trace p{margin:10px 0 0;color:var(--stone);font-size:var(--text-caption);line-height:1.55}.vpo-candidate-list{margin-top:22px;border-top:1px solid var(--border)}.vpo-candidate{display:grid;width:100%;grid-template-columns:minmax(0,1fr) minmax(150px,.72fr);gap:clamp(20px,2vw,36px);border:0;border-bottom:1px solid var(--border);border-radius:0;padding:22px 0;color:var(--ink);background:transparent;font-family:var(--font-site-body);text-align:start;cursor:pointer}.vpo-candidate[data-selected]{box-shadow:inset 3px 0 0 var(--brand);padding-inline-start:20px}.vpo-candidate-copy{display:grid;min-width:0;gap:10px}.vpo-candidate-copy strong{color:var(--ink);font-size:var(--text-body);font-weight:650}.vpo-candidate[data-selected] .vpo-candidate-copy strong{color:var(--brand)}.vpo-candidate-copy>span:not(.vpo-contract){display:-webkit-box;color:var(--olive);font-size:var(--text-label);line-height:1.5;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}.vpo-contract{color:var(--stone);font-size:var(--text-caption)}.vpo-scores{min-width:0;font-size:var(--text-caption);font-variant-numeric:tabular-nums}.vpo-score-row{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border);padding:4px 0 6px}.vpo-prompt-help{margin:10px 0 0;color:var(--stone);font-size:var(--text-caption);line-height:1.5}.article-vpo-demo{--article-vpo-width: min(1480px, calc(100vw - clamp(32px, 8vw, 112px)) );width:var(--article-vpo-width);margin-block:2.8em;margin-inline:calc((100% - var(--article-vpo-width)) / 2)}.article-vpo-demo .vpo-workspace{margin-top:0}@media(hover:hover)and (pointer:fine){.vpo-candidate:hover{background:var(--surface-hover)}}@media(max-width:1240px){.vpo-workspace{grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr)}.vpo-candidate-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.vpo-candidate{display:block;padding-inline:22px}.vpo-candidate+.vpo-candidate{border-inline-start:1px solid var(--border)}.vpo-candidate[data-selected]{box-shadow:inset 0 3px 0 var(--brand);padding-inline-start:22px}.vpo-scores{margin-top:18px}}@media(max-width:760px){.vpo-page{width:calc(100% - 40px);padding-top:36px}.vpo-header{margin-top:44px}.vpo-header h1{font-size:clamp(2rem,11vw,3rem)}.vpo-header p{font-size:var(--text-body)}.vpo-workspace{display:block;margin-top:40px}.vpo-composer{padding-inline-end:0}.vpo-results{margin-top:36px;border-top:1px solid var(--border);border-inline:0;padding-inline:0}.vpo-chosen{margin-top:42px;border-top:1px solid var(--border);border-inline:0;padding-inline:0}.vpo-comparison{margin-top:42px}.vpo-candidate-list{display:block}.vpo-candidate{display:grid;grid-template-columns:1fr;padding-inline:0}.vpo-candidate+.vpo-candidate{border-inline-start:0}.vpo-candidate[data-selected]{box-shadow:inset 3px 0 0 var(--brand);padding-inline-start:18px}}.blog-index,.blog-post{--font-site-body: var(--font-fictional);--font-site-display: var(--font-fictional);--sticker-slate: var(--blog-muted);--sticker-ink: var(--blog-ink);--blog-canvas: var(--color-cool-100);--blog-paper: var(--color-cool-50);--blog-ink: var(--color-cool-950);--blog-muted: var(--color-cool-600);--blog-violet: oklch(.56 .22 292.268);--blog-coral: oklch(.55 .2 29.924);--blog-yellow: oklch(.889 .181 95.632);--blog-lime: oklch(.85 .16 140.395);--blog-indigo: oklch(.325 .223 264.946);--blog-on-violet: var(--blog-paper);--blog-on-coral: var(--blog-paper);--blog-on-yellow: var(--blog-ink);--blog-on-lime: var(--blog-ink);--blog-on-indigo: var(--blog-paper);--blog-header-surface: var(--color-cool-200);--blog-header-ink: var(--color-cool-950);--blog-header-heading: var(--blog-indigo);--canvas: var(--blog-canvas);--ink: var(--blog-ink);--dark-warm: var(--blog-ink);--olive: var(--blog-ink);--stone: var(--blog-muted);--border: color-mix(in oklch, var(--blog-ink) 22%, transparent);--brand: var(--blog-indigo);--surface-hover: color-mix(in oklch, var(--blog-violet) 16%, transparent);--surface-active: color-mix(in oklch, var(--blog-violet) 24%, transparent);--soft-shadow: transparent;width:100%;min-height:100vh;margin:0;overflow-x:clip;color:var(--blog-ink);background:var(--blog-canvas);font-family:var(--font-fictional);font-feature-settings:"ss01" 1,"dlig" 1}html[data-color-mode=calm] :is(.blog-index,.blog-post){--blog-canvas: var(--color-cool-calm-100);--blog-paper: var(--color-cool-calm-50);--blog-ink: var(--color-cool-calm-950);--blog-muted: var(--color-cool-calm-600);--blog-violet: oklch(.85 .06 292.268);--blog-coral: oklch(.86 .07 29.924);--blog-yellow: oklch(.889 .1 95.632);--blog-lime: oklch(.85 .08 140.395);--blog-indigo: oklch(.325 .1 264.946);--blog-on-violet: var(--blog-ink);--blog-on-coral: var(--blog-ink);--blog-header-surface: var(--color-cool-calm-200);--blog-header-ink: var(--color-cool-calm-950)}html[data-color-scheme=dark] :is(.blog-index,.blog-post){--blog-canvas: var(--color-cool-950);--blog-paper: var(--color-cool-900);--blog-ink: var(--color-cool-100);--blog-muted: var(--color-cool-400);--blog-violet: oklch(.88 .11 292.268);--blog-coral: oklch(.9 .1 29.924);--blog-yellow: oklch(.85 .16 95.632);--blog-lime: oklch(.85 .16 140.395);--blog-indigo: oklch(.85 .1 264.946);--blog-on-violet: var(--blog-canvas);--blog-on-coral: var(--blog-canvas);--blog-on-yellow: var(--blog-canvas);--blog-on-lime: var(--blog-canvas);--blog-on-indigo: var(--blog-canvas);--blog-header-surface: var(--color-cool-900);--blog-header-ink: var(--color-cool-100);--blog-header-heading: var(--blog-indigo)}html[data-color-scheme=dark][data-color-mode=calm] :is(.blog-index,.blog-post){--blog-canvas: var(--color-cool-calm-950);--blog-paper: var(--color-cool-calm-900);--blog-ink: var(--color-cool-calm-100);--blog-muted: var(--color-cool-calm-400);--blog-violet: oklch(.88 .06 292.268);--blog-coral: oklch(.9 .06 29.924);--blog-yellow: oklch(.85 .08 95.632);--blog-lime: oklch(.85 .08 140.395);--blog-indigo: oklch(.85 .05 264.946);--blog-on-violet: var(--blog-canvas);--blog-on-coral: var(--blog-canvas);--blog-on-yellow: var(--blog-canvas);--blog-on-lime: var(--blog-canvas);--blog-on-indigo: var(--blog-canvas);--blog-header-surface: var(--color-cool-calm-900);--blog-header-ink: var(--color-cool-calm-100);--blog-header-heading: var(--blog-indigo)}.blog-appearance{display:flex;width:min(100%,1280px);justify-content:end;margin:0 auto 48px}.blog-header p{position:relative;padding:24px;background:var(--blog-paper);border-inline-start:3px solid var(--blog-coral)}.blog-header p:before,.blog-post .article-deck:before{content:"";position:absolute;inset-block-start:-10px;inset-inline-start:35%;width:72px;height:20px;background:var(--blog-yellow);transform:rotate(-7deg);pointer-events:none}.blog-index{display:grid;padding:clamp(32px,4vw,58px) clamp(24px,4vw,58px) 120px;grid-template-columns:minmax(0,1fr)}.blog-index .site-nav,.blog-header,.post-list,.blog-post .editorial-nav{width:min(100%,1280px);margin-inline:auto}.blog-index .site-nav{margin-block-end:72px}.blog-header{display:grid;align-items:center;gap:48px;grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr)}.blog-header h1{max-width:none;width:fit-content;padding:12px 24px 24px;color:var(--blog-on-indigo);background:var(--blog-indigo);transform:rotate(-2deg);font-family:var(--font-fictional);font-size:clamp(5rem,12vw,12.625rem);font-weight:700;letter-spacing:.012em;line-height:.84;grid-column:auto}.blog-header p{max-width:32ch;color:var(--blog-ink);font-size:clamp(22px,2vw,29px);font-weight:600;line-height:1.4;grid-column:auto}.post-list{margin-block-start:72px;grid-column:auto}.post-list ol{gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}.post-list li{min-width:0;margin-inline:0}.post-list a{display:flex;min-height:300px;gap:18px;flex-direction:column;border-radius:15px;padding:28px;color:var(--blog-on-yellow);background:var(--blog-yellow);transform:rotate(-.3deg)}.post-list li:nth-child(4n+2) a{color:var(--blog-ink);background:var(--blog-paper);transform:rotate(.3deg)}.post-list li:nth-child(4n+3) a{color:var(--blog-on-coral);background:var(--blog-coral);transform:rotate(.25deg)}.post-list li:nth-child(4n+4) a{color:var(--blog-on-lime);background:var(--blog-lime);transform:rotate(-.25deg)}.post-list-heading{gap:24px;grid-template-columns:minmax(0,1fr) 28px}.post-list-title{font-size:clamp(30px,3vw,43px);font-weight:700;letter-spacing:.012em;line-height:1.1}.post-list-icon{width:28px;height:28px;color:currentColor}.post-list p{max-width:48ch;color:currentColor;font-size:18px;font-weight:600;line-height:1.45}.post-list-meta{order:3;margin-block-start:auto;color:currentColor;font-family:var(--font-fictional);font-size:15px;font-weight:700}@media(hover:hover)and (pointer:fine){.post-list a:hover{color:var(--blog-on-violet);background:var(--blog-violet);transform:rotate(0) scale(1.01)}}.blog-post{padding:32px clamp(24px,4vw,58px) 120px}.blog-post .editorial-nav{margin-block-end:56px}.blog-post .editorial-nav-brand,.blog-post .back-link{color:var(--blog-ink);font-family:var(--font-fictional);font-weight:700}.blog-post .article-header{width:100%;max-width:none;padding:0;background:transparent}.blog-post .article-header-content{display:grid;align-items:start;gap:24px clamp(30px,5vw,72px);grid-template-columns:minmax(0,1fr) minmax(20rem,.72fr)}.blog-post .article-header h1{max-width:none;width:fit-content;padding:clamp(20px,3vw,42px);color:var(--blog-on-indigo);background:var(--blog-indigo);font-family:var(--font-fictional);font-size:clamp(3rem,5.7vw,5.75rem);font-weight:700;letter-spacing:.012em;line-height:1.08;grid-column:1 / -1}.blog-post .article-deck{position:relative;max-width:48ch;margin:12px 0 0;border-inline-start:3px solid var(--blog-coral);padding:24px;color:var(--blog-ink);background:var(--blog-paper);font-size:clamp(20px,2vw,26px);font-weight:600;line-height:1.4}.blog-post .article-byline{width:fit-content;margin-block-start:0;border-radius:5px;padding:12px 18px;color:var(--blog-on-lime);background:var(--blog-lime);font-family:var(--font-fictional);font-size:15px;font-weight:700}.blog-post .article-header-tools{display:grid;min-width:0;align-self:end;gap:24px;grid-column:2;grid-row:2 / span 2}.blog-post .article-reading-controls{width:100%;margin:0;border-radius:15px;color:var(--blog-header-ink);background:var(--blog-paper);box-shadow:none;grid-template-columns:minmax(0,1fr)}.blog-post .article-audio{margin-block-start:0;border-color:color-mix(in oklch,var(--blog-header-ink) 28%,transparent)}.blog-post .article-audio h2,.blog-post .article-audio-time,.blog-post .article-audio-status{color:var(--blog-header-ink)}.blog-post .article-audio-controls button{color:var(--blog-header-ink);background:var(--blog-paper)}@media(max-width:68rem){.blog-post .article-header-content{grid-template-columns:minmax(0,1fr)}.blog-post .article-header-tools{grid-column:1;grid-row:auto}}.blog-post .article-shell{width:100%;max-width:none;margin-block-start:72px}.blog-post .article-body{width:min(var(--article-reading-width),100%);margin-inline:auto;color:var(--blog-ink);font-family:var(--font-fictional);letter-spacing:0;line-height:1.6}.blog-post .article-body>p{margin-block-end:30px;text-wrap:wrap}.blog-post .article-body a{color:var(--blog-indigo);text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:3px}.blog-post .article-body h2{margin:108px 0 30px;color:var(--blog-indigo);font-family:var(--font-fictional);font-size:clamp(2rem,3.4vw,3rem);font-weight:700;letter-spacing:.012em;line-height:1}.blog-post .article-body>h3{margin:60px 0 24px;color:var(--blog-ink);font-family:var(--font-fictional);font-size:clamp(1.5rem,2.5vw,2.25rem);font-weight:700;letter-spacing:.012em}.blog-post .article-summary{border:0;border-radius:15px;padding:28px;color:var(--blog-on-coral);background:var(--blog-coral)}.blog-post .article-summary-label,.blog-post .article-summary-question{color:inherit}.blog-post .article-decisions section,.blog-post .article-body pre{border-radius:15px;color:var(--blog-ink);background:var(--blog-paper);box-shadow:none}.blog-post .article-body blockquote{border:0;border-radius:15px;padding:1.5em;color:var(--blog-on-violet);background:var(--blog-violet)}.blog-post .article-body>.article-break{width:60px;height:15px;margin:60px 0;border-radius:10px;background:var(--blog-yellow)}.blog-post .article-table-wrap{width:100%;margin:60px 0;border-radius:15px;padding:24px;background:var(--blog-paper)}.blog-post .article-body table{color:var(--blog-ink);font-family:var(--font-fictional);font-size:16px}.blog-post .article-body th,.blog-post .article-body td{border-color:color-mix(in oklch,var(--blog-ink) 18%,transparent);padding:16px}.blog-post .story-demo{margin:60px 0;border:0;border-radius:15px;padding:clamp(24px,4vw,48px);color:var(--blog-on-violet);background:var(--blog-violet)}.blog-post .story-demo h3{margin:0 0 16px;color:inherit;font-family:var(--font-fictional);font-size:clamp(1.5rem,2.5vw,2.25rem);font-weight:700;letter-spacing:.012em;line-height:1}.blog-post .story-demo>p,.blog-post .story-demo-form label,.blog-post .story-demo-count,.blog-post .story-demo-result>p{color:inherit}.blog-post .article-body .story-demo code{border:0;color:#000;background:#fff}.blog-post .story-demo-controls{gap:12px}.blog-post .story-demo-controls input{min-height:54px;border:0;border-radius:5px;color:#000;background:#fff}.blog-post .story-demo-controls button{min-height:54px;border:0;border-radius:5px;padding-inline:24px;color:#000;background:#fff;box-shadow:0 0 0 2px var(--blog-yellow);font-weight:700}.blog-post .story-demo-controls input:focus-visible,.blog-post .story-demo-controls button:focus-visible{outline:3px solid var(--blog-yellow);outline-offset:3px}.blog-post .story-demo-result blockquote{color:var(--blog-ink);background:var(--blog-paper)}.blog-post .article-ernie-cta{width:100%;margin:60px 0;border-radius:15px;color:var(--blog-on-indigo);background:var(--blog-indigo);box-shadow:none;font-family:var(--font-fictional)}.blog-post .article-body .article-ernie-cta h2{color:inherit}.article-tweet-embed .react-tweet-theme{min-width:0}.article-tweet-embed div:has(>button[aria-label="Copy link"]){flex-wrap:wrap;row-gap:8px}.blog-post .article-ernie-cta p,.blog-post .article-ernie-cta-copy li{color:inherit}.blog-post .article-ernie-actions a{border:0;border-radius:5px;color:#000;background:#fff;box-shadow:0 0 0 2px var(--blog-yellow)}.blog-post .article-ernie-actions .article-ernie-secondary{border:2px solid currentColor;color:inherit;background:transparent;box-shadow:none}.blog-post :is(.article-product-figure img,.article-history-gallery img){border-radius:15px}.blog-post .article-body p code{border-color:var(--border);background:var(--blog-paper)}.blog-post .article-audio{border-color:color-mix(in oklch,var(--blog-header-ink) 28%,transparent)}.blog-post .article-audio-controls button{border-radius:7px;color:var(--blog-header-ink);background:var(--blog-paper)}.blog-post .article-product-figure img,.blog-post .article-history-gallery img{background:var(--blog-paper);outline-color:var(--border)}.blog-post .article-footer{border-color:var(--blog-ink);color:var(--blog-muted)}.blog-post .article-footer-link{border-radius:7px;padding-inline:14px;color:var(--blog-ink);background:var(--blog-paper);font-weight:700}@media(max-width:48rem){.blog-index,.blog-post{width:100%;padding:32px 24px 112px}.blog-header{display:block}.blog-navigation{gap:12px;margin-block-end:60px;grid-template-columns:minmax(0,1fr) auto}.blog-navigation-links{display:none}.blog-header h1{margin-block-end:28px}.post-list ol{grid-template-columns:1fr}.post-list a{min-height:260px;padding:24px;transform:none}.blog-post .article-header{padding:0}.blog-post .article-header h1{font-size:clamp(2.25rem,8vw,3.5rem)}.blog-post .article-body h2{margin-block-start:80px}.blog-post .article-table-wrap{padding:16px}.blog-footer{margin-block-start:80px;padding-block:48px 96px}.site-appearance-controls{gap:4px;padding:6px}.site-appearance-controls button{gap:6px;padding-inline:6px}}@media(max-width:24rem){.site-appearance-controls{align-items:stretch;flex-direction:column}.site-appearance-controls button{justify-content:space-between}}@media(prefers-reduced-motion:reduce){.blog-navigation-action{transition:none}.blog-navigation-action:active{transform:none}.appearance-switch-track span,.post-list a{transition:none}}@media(max-width:520px){.article-vpo-demo{width:100%;margin-inline:0}.story-demo-controls{align-items:stretch;flex-direction:column}}.article-research-findings{display:grid;gap:1em;margin:0 0 1.8em;padding-inline-start:1.25em}.article-research-findings li{padding-inline-start:.35em}.article-research-findings strong{color:var(--ink)}.soundcloud-embed{margin:2.4em 0}.soundcloud-embed iframe{display:block;border:0;border-radius:14px;background:color-mix(in srgb,var(--border) 25%,transparent)}.soundcloud-embed figcaption{margin-top:10px;color:var(--stone);font-family:var(--font-site-body);font-size:var(--text-caption);line-height:1.5;overflow-wrap:anywhere}.soundcloud-embed figcaption a{color:inherit}.article-product-figure{width:var(--article-wide-width);margin-block:2.8em;margin-inline:calc((100% - var(--article-wide-width)) / 2)}.article-product-figure a{display:inline}.article-product-figure a:focus-visible{outline:2px solid;outline-offset:4px}.article-product-figure img{display:block;width:100%;height:auto;outline:1px solid oklch(0 0 0 / .1);outline-offset:-1px}html[data-color-scheme=dark] .article-product-figure img{outline-color:#ffffff1a}.article-product-figure figcaption{margin-top:10px;color:var(--stone);font-family:var(--font-site-body);font-size:var(--text-caption);line-height:1.5}.article-history-gallery{display:grid;width:var(--article-wide-width);margin-block:2.8em;margin-inline:calc((100% - var(--article-wide-width)) / 2);grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,32px)}.article-history-gallery figure{margin:0}.article-history-gallery img{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:contain;background:#f5f1ea;outline:1px solid oklch(0 0 0 / .1);outline-offset:-1px}.article-history-gallery figcaption{margin-top:10px;color:var(--stone);font-family:var(--font-site-body);font-size:var(--text-caption);line-height:1.5}.article-history-gallery figcaption a{color:inherit}html[data-color-scheme=dark] .article-history-gallery img{background:#181611;outline-color:#ffffff1a}@media(max-width:640px){.article-history-gallery{grid-template-columns:1fr}}.article-tweet-embed{width:min(550px,100%);margin:2.8em auto}.article-tweet-embed .react-tweet-theme{--tweet-container-margin: 0}.article-tweet-embed figcaption{margin-top:10px;color:var(--stone);font-family:var(--font-site-body);font-size:var(--text-caption);line-height:1.5}.article-table-wrap{width:var(--article-wide-width);margin-block:2.5em;margin-inline:calc((100% - var(--article-wide-width)) / 2);overflow-x:auto}.article-table-wrap:focus-visible{outline:2px solid;outline-offset:4px}.article-table-hint{display:none}.article-body table{width:100%;min-width:680px;border-collapse:collapse;color:var(--dark-warm);font-family:var(--font-site-body);font-size:var(--text-label);line-height:1.45}.article-body th,.article-body td{padding:14px 16px;border-bottom:1px solid var(--border);text-align:start;vertical-align:top}.article-body thead th{border-top:1px solid var(--border);color:var(--ink);font-weight:650}.article-body tbody th{width:22%;color:var(--ink);font-weight:600}.article-scorecard table{min-width:0;table-layout:fixed}.article-scorecard th:nth-child(1){width:23%}.article-scorecard th:nth-child(2){width:33%}.article-scorecard th:nth-child(3){width:44%}@media(max-width:600px){.article-scorecard{overflow:visible}.article-scorecard table,.article-scorecard tbody,.article-scorecard tr,.article-scorecard th,.article-scorecard td{display:block;width:100%}.article-scorecard thead{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.article-scorecard tbody{border-top:1px solid var(--border)}.article-scorecard tr{padding:18px 0;border-bottom:1px solid var(--border)}.article-scorecard th,.article-scorecard td{border:0;padding:0}.article-scorecard tbody th{margin-bottom:14px;font-size:var(--text-body)}.article-scorecard td+td{margin-top:12px}.article-scorecard td:before{display:block;margin-bottom:2px;color:var(--stone);content:attr(data-label);font-size:var(--text-caption);font-weight:600}}.article-footer{display:flex;width:min(var(--article-reading-width),100%);align-items:baseline;justify-content:space-between;gap:24px;margin:96px auto 0;border-block-start:1px solid var(--border);padding-block-start:20px;color:var(--stone);font-size:var(--text-body)}.article-footer p{margin:0;font-size:var(--text-caption)}.article-footer-link{display:inline-flex;min-height:44px;align-items:center;margin-inline-start:-10px;border-radius:999px;padding-inline:10px;font-size:var(--text-caption);transition:background-color .16s var(--ease-out),opacity .1s ease-out,transform .1s ease-out}@media(hover:hover)and (pointer:fine){.article-footer-link:hover{background:var(--surface-hover);text-decoration:none}}.article-footer-link:active{background:var(--surface-active);opacity:1;transform:scale(.96)}@media(max-width:48rem){.blog-index,.blog-post{width:calc(100% - 32px);padding-block:40px 112px}.blog-index{display:block}.editorial-nav,.site-nav{margin-block-end:48px}.blog-header{display:block}.blog-header h1{margin-block-end:24px}.post-list{margin-block-start:64px}.post-list li{margin-inline:0}.post-list a{padding-inline:12px}.article-shell{margin-block-start:64px}.article-product-figure,.article-ernie-cta,.article-table-wrap{width:100%;margin-inline:0}.article-ernie-cta{align-items:start;grid-template-columns:1fr;gap:24px}.article-ernie-cta a{width:100%;justify-content:space-between}.article-ernie-actions{width:100%}}@media(max-width:720px){.page .bio{grid-template-columns:1fr;gap:32px;margin-top:72px}.page .bio-copy p:first-child{padding-top:0}.article-table-hint{position:sticky;inset-inline-start:0;display:block;width:max-content;margin:0 0 8px;color:var(--brand);font-size:var(--text-caption);font-weight:650;letter-spacing:.01em}}@media(min-width:481px)and (max-width:900px){main{width:calc(100% - 128px);padding-top:64px}}@media(max-width:480px){.ocean-banner{height:132px}main{width:calc(100% - 48px);padding-top:32px}.site-header{margin-bottom:36px}.hero-intro p{font-size:var(--text-title)}.bio{margin-top:64px}.page{width:calc(100% - 20px);padding:28px 24px 0}.article-header h1{font-size:clamp(1.875rem,10vw,2.5rem);line-height:1.1}.article-reading-controls{grid-template-columns:1fr;gap:12px}.article-summary{padding:20px 0}.article-footer{align-items:flex-start;flex-direction:column}.page .bio{display:block}.page .bio-copy p:first-child{padding-top:20px}.writing,.work{margin-top:64px}.writing-row,.work-row{align-items:flex-start;grid-template-columns:1fr;gap:12px}.writing-row{min-height:0;margin-inline:-8px;border-radius:12px;padding:16px 8px}.writing-row-meta{width:100%;justify-content:space-between;gap:16px}.work-row{gap:4px;padding-block:10px}footer{margin-top:64px}}@media(prefers-reduced-transparency:reduce){.editorial-nav{background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}}@media(prefers-contrast:more){.editorial-nav{border-bottom:1px solid var(--ink)}.article-decisions section,.article-body pre{box-shadow:inset 0 0 0 1px var(--ink)}}@media(prefers-reduced-motion:reduce){.article-audio-controls button,.story-demo-controls button,.vpo-composer>button,.vpo-model-tabs button{transition:none}.article-audio-controls button:active:not(:disabled),.story-demo-controls button:active:not(:disabled),.vpo-composer>button:active:not(:disabled){transform:none}.drawably-host .drawably-boil,.drawably-host .drawably-boil[data-i="1"],.drawably-host .drawably-boil[data-i="2"]{animation:none}.drawably-host .drawably-boil[data-i="0"]{opacity:1}.drawably-host .drawably-boil[data-i="1"],.drawably-host .drawably-boil[data-i="2"]{opacity:0}html[data-route-transition] .blog-post,html[data-route-transition] .page,html[data-route-transition] .blog-index{animation:none}.page>footer:before{opacity:1;transform:none;animation:none}.endless-footer{height:100vh;height:100dvh}.writing-row{transition:opacity .1s ease-out}.back-link,.contact-links a,.article-ernie-cta a,.article-footer-link,.post-list a{transition-duration:.1s;transition-property:color,background-color,box-shadow,opacity}.back-link:active,.contact-links a:active,.article-ernie-cta a:active,.article-footer-link:active,.writing-row:active,.post-list a:active{transform:none}.back-link:hover .back-link-icon,.post-list a:hover .post-list-icon{translate:none}.writing-row h3,.writing-row p,.writing-row time,.article-header h1,.article-deck,.article-dates,.post-list-title,.post-list-meta time{view-transition-name:none}::view-transition-old(root),::view-transition-new(root),::view-transition-group(article-title),::view-transition-group(article-deck),::view-transition-group(article-date){animation:none}.post-list-icon{transition:none}}.portfolio-page{width:min(1120px,calc(100% - 48px));padding-inline:44px}.portfolio-header{display:flex;align-items:center;justify-content:space-between;gap:32px}.portfolio-brand-controls{display:flex;align-items:center;gap:16px}.portfolio-header .wordmark{margin:0;font-size:var(--text-body);line-height:1}.portfolio-header .wordmark a{min-height:44px;display:inline-flex;align-items:center;color:var(--ink)}.portfolio-header .wordmark a:hover{text-decoration:none}.portfolio-nav{display:flex;flex-wrap:wrap;gap:8px 24px}.portfolio-nav a{display:inline-flex;min-height:44px;align-items:center;color:var(--stone);font-size:var(--text-label);font-weight:500}.portfolio-nav a:hover{color:var(--ink)}.portfolio-hero{display:grid;gap:clamp(18px,2vw,24px);padding-block:clamp(32px,5vw,72px) clamp(88px,12vw,152px)}.portfolio-hero>p{max-width:38ch;margin:0;color:var(--ink);font-size:clamp(1.35rem,2.8vw,1.875rem);line-height:1.32;letter-spacing:-.025em;text-wrap:balance}.portfolio-hero-copy,.portfolio-hero-signoff{display:grid}.portfolio-hero-copy>span,.portfolio-hero-signoff>span{grid-area:1 / 1;display:block}.portfolio-hero-copy>span[aria-hidden=true],.portfolio-hero-signoff>span[aria-hidden=true]{pointer-events:none;-webkit-user-select:none;user-select:none}.debug-hero-copy{font-family:var(--font-debug)}.debug-hero-word,.debug-hero-letter{display:inline-block}.debug-hero-word{white-space:pre}.debug-hero-letter{transform-origin:center bottom}.debug-hero-stagger[data-phase=enter] .debug-hero-letter{animation:debug-hero-letter-hop .32s var(--ease-out) both;animation-delay:calc(80ms + var(--debug-hero-letter-index) * 8ms)}.debug-hero-stagger[data-phase=exit] .debug-hero-letter{animation:debug-hero-letter-exit .18s var(--ease-out) both;animation-delay:calc((var(--debug-hero-letter-count) - var(--debug-hero-letter-index)) * 4ms)}@keyframes debug-hero-letter-hop{0%{opacity:0;transform:translateY(.22em) rotate(0)}48%{opacity:1;transform:translateY(-.18em) rotate(-2deg)}76%{transform:translateY(.04em) rotate(1deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes debug-hero-letter-exit{0%{opacity:1;transform:translateY(0) rotate(0)}to{opacity:0;transform:translateY(-.12em) rotate(-1deg)}}.projects,.open-directory{scroll-margin-top:88px}.section-heading{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1.28fr);align-items:start;gap:48px}.section-heading h2,.section-heading p{margin:0}.section-heading h2{color:var(--ink);font-size:var(--text-title);font-weight:600;line-height:var(--leading-heading);letter-spacing:-.02em}.section-heading p{max-width:48ch;color:var(--olive);text-wrap:pretty}.project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;margin-top:44px}.project-card{--project-surface: color-mix(in oklch, var(--border) 54%, var(--canvas));--project-accent: var(--brand);min-width:0;overflow:hidden;border-radius:16px;background:var(--project-surface);grid-column:span 6}.project-card:first-child,.project-card:nth-child(4){grid-column:span 7}.project-card:nth-child(2),.project-card:nth-child(3){grid-column:span 5}.project-card[data-project=pai-bot]{--project-surface: oklch(.91 .045 93);--project-accent: oklch(.42 .11 76)}.project-card[data-project=garden]{--project-surface: oklch(.9 .045 139);--project-accent: oklch(.38 .1 143)}.project-card[data-project=skills]{--project-surface: oklch(.91 .043 318);--project-accent: oklch(.42 .12 315)}.project-card[data-project=ship-llm]{--project-surface: oklch(.91 .04 202);--project-accent: oklch(.4 .1 214)}.project-artwork{position:relative;min-height:clamp(210px,28vw,310px);overflow:hidden;background:color-mix(in oklch,var(--project-surface) 88%,white)}.project-artwork canvas,.project-artwork img{position:absolute;inset:0;width:100%;height:100%}.project-artwork canvas{z-index:1;display:block;opacity:0;image-rendering:pixelated;transition:opacity .18s var(--ease-out)}.project-artwork canvas[data-render-state=ready]{opacity:1}.project-artwork img{object-fit:cover;filter:grayscale(1) contrast(1.1)}.project-media-motion-control{inset-block-start:12px;inset-inline-end:12px}.project-media-motion-toggle{color:var(--project-accent);background:color-mix(in oklch,var(--project-surface) 86%,transparent)}.project-media-motion-toggle:hover{background:color-mix(in oklch,var(--project-surface) 96%,transparent)}.debug-grid-overlay{position:fixed;z-index:75;inset:0;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(8px,1.2vw,20px);padding-inline:clamp(16px,4vw,64px);background-image:repeating-linear-gradient(to bottom,color-mix(in oklch,var(--brand) 20%,transparent) 0 1px,transparent 1px 8px);pointer-events:none}.debug-grid-overlay>span{border-inline:1px solid color-mix(in oklch,var(--brand) 28%,transparent);background:color-mix(in oklch,var(--brand) 5%,transparent)}.dev-fps-counter{position:fixed;z-index:90;top:12px;right:12px;display:inline-flex;min-width:72px;min-height:28px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--border-strong);border-radius:999px;padding-inline:10px;color:var(--ink);background:var(--material-nav);box-shadow:0 8px 24px var(--soft-shadow);backdrop-filter:blur(14px) saturate(130%);font-family:SFMono-Regular,Consolas,monospace;font-size:var(--text-caption);line-height:1;pointer-events:none;-webkit-backdrop-filter:blur(14px) saturate(130%)}.dev-fps-counter>span{width:6px;height:6px;border-radius:50%;background:var(--brand)}.debug-wordmark{display:inline-flex}.debug-wordmark-letter{display:inline-block;transform-origin:center bottom}.debug-wordmark[data-phase=enter] .debug-wordmark-letter{animation:debug-letter-hop .36s var(--ease-out) both;animation-delay:calc(var(--debug-letter-index) * 50ms)}.debug-wordmark[data-phase=exit] .debug-wordmark-letter{animation:debug-letter-return .4s cubic-bezier(.22,.82,.26,1.12) both;animation-delay:calc((var(--debug-letter-count) - var(--debug-letter-index) - 1) * 50ms)}@keyframes debug-letter-hop{0%{font-family:inherit;transform:translateY(0) rotate(0)}42%{font-family:inherit;transform:translateY(-.42em) rotate(-4deg)}58%,to{font-family:SFMono-Regular,Consolas,monospace}72%{transform:translateY(.08em) rotate(2deg)}to{transform:translateY(0) rotate(0)}}@keyframes debug-letter-return{0%,24%{font-family:SFMono-Regular,Consolas,monospace;transform:translateY(0) rotate(0)}46%{font-family:inherit;transform:translateY(.1em) rotate(-2deg) scaleY(.94)}68%{font-family:inherit;transform:translateY(-.3em) rotate(3deg) scaleY(1.04)}86%{font-family:inherit;transform:translateY(.06em) rotate(-1deg)}to{font-family:inherit;transform:translateY(0) rotate(0) scaleY(1)}}.debug-mode-control{position:relative;align-self:center;flex:0 0 44px;width:44px;height:44px}.debug-mode-tooltip{position:absolute;z-index:81;top:calc(100% + 4px);left:50%;padding:7px 10px;border:1px solid var(--border-strong);border-radius:8px;color:var(--ink);background:var(--material-nav);box-shadow:0 8px 24px var(--soft-shadow);font-size:var(--text-caption);line-height:1;opacity:0;pointer-events:none;transform:translate(-50%,-4px) scale(.96);transform-origin:50% 0;transition:opacity .14s var(--ease-out),transform .18s var(--ease-out),visibility 0s linear .18s;visibility:hidden;white-space:nowrap}.debug-mode-toggle:hover+.debug-mode-tooltip,.debug-mode-toggle:focus-visible+.debug-mode-tooltip{opacity:1;transform:translate(-50%) scale(1);transition-delay:0s;visibility:visible}.debug-mode-menu-motion{position:absolute;z-index:80;top:calc(100% - 9px);left:0;width:min(344px,calc(100vw - 16px));transform-origin:22px -24px}.debug-mode-menu{position:relative;display:grid;width:100%;max-height:min(76vh,640px);gap:0;overflow:auto;overscroll-behavior:contain;padding:0;scrollbar-width:none;border:1px solid color-mix(in oklab,var(--border-strong) 56%,rgb(255 255 255 / .72));border-radius:min(var(--debug-glass-radius, 24px),14px);color:var(--ink);background:linear-gradient(180deg,rgb(255 255 255 / var(--debug-glass-sheen-opacity, .18)),transparent 42%),color-mix(in oklab,color-mix(in oklab,var(--material-nav) calc(100% - var(--debug-glass-tint-mix, 50%)),var(--debug-glass-tint-color, #030507) var(--debug-glass-tint-mix, 50%)) var(--debug-glass-opacity, 90%),transparent);box-shadow:0 var(--debug-glass-shadow-y, 18px) var(--debug-glass-shadow-blur, 54px) rgb(20 19 16 / var(--debug-glass-shadow-opacity, .18)),inset 0 1px rgb(255 255 255 / var(--debug-glass-rim-opacity, .52)),inset 0 -1px #14131014;backdrop-filter:blur(var(--debug-glass-blur, 25px)) saturate(var(--debug-glass-saturation, 150%));cursor:default;font-family:var(--font-debug);font-size:var(--text-caption);line-height:1.4;transition:border-radius .16s var(--ease-out),box-shadow .16s var(--ease-out),padding .16s var(--ease-out),width .18s var(--ease-out),scale .16s var(--ease-out);-webkit-backdrop-filter:blur(var(--debug-glass-blur, 25px)) saturate(var(--debug-glass-saturation, 150%))}.debug-mode-menu::-webkit-scrollbar{display:none}.debug-mode-tabs{display:grid;min-width:0;width:100%;flex:1 1 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}.debug-mode-tabs>button{min-width:0;min-height:38px;overflow:hidden;border:0;border-radius:8px 8px 0 0;padding-inline:8px;color:var(--stone);background:transparent;font:inherit;font-weight:600;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;transition:color .14s var(--ease-out),background-color .14s var(--ease-out),box-shadow .14s var(--ease-out)}.debug-mode-tabs>button[aria-selected=true]{color:var(--ink);background:transparent;box-shadow:inset 0 -2px color-mix(in oklab,var(--ink) 72%,transparent)}.debug-mode-tabs>button:not([aria-selected=true]):hover{color:var(--ink);background:color-mix(in oklab,var(--canvas) 10%,transparent)}.debug-mode-tabs>button:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.debug-mode-tab-panel{display:grid;min-width:0;gap:10px}.debug-mode-menu>#debug-mode-menu-content{display:grid;gap:10px;padding:12px 14px 14px}.debug-mode-menu>#debug-mode-menu-content[hidden]{display:none}.debug-mode-dialkit{margin:0 -6px -6px}.debug-mode-dialkit .dialkit-root,.debug-mode-dialkit .dialkit-panel,.debug-mode-dialkit .dialkit-panel-wrapper{width:100%;max-height:none}.debug-mode-dialkit .dialkit-panel-inner{border:0;border-radius:0;padding:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.debug-mode-menu-header{position:relative;display:flex;min-height:44px;align-items:stretch;padding:6px 8px 0 12px;border-bottom:1px solid color-mix(in oklab,var(--border-strong) 48%,transparent);color:var(--ink);cursor:grab}.debug-mode-menu[data-folded]{animation:none;width:40px;gap:0;margin-inline-start:auto;padding:0;border-radius:10px}.debug-mode-menu[data-folded] .debug-mode-menu-header{min-height:40px;align-items:center;justify-content:center;padding:3px;border-bottom:0}.debug-mode-menu[data-folded] .debug-mode-menu-fold-toggle{margin-inline-start:0;cursor:grab;touch-action:none}.debug-mode-menu-fold-toggle{display:grid;width:34px;height:34px;flex:0 0 auto;margin-inline-start:6px;place-items:center;border:0;border-radius:8px;padding:0;color:var(--stone);background:transparent;cursor:pointer;transition:color .12s var(--ease-out),background-color .12s var(--ease-out),scale .12s var(--ease-out)}.debug-mode-menu-position-reset{min-height:34px;width:100%;margin-top:4px;border:0;border-radius:6px;padding-inline:8px;color:var(--stone);background:transparent;font:inherit;font-size:var(--text-caption);cursor:pointer}.debug-mode-menu-position-reset:hover{color:var(--ink);background:color-mix(in oklab,var(--surface-hover) 64%,transparent)}.debug-mode-menu-position-reset:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.debug-mode-menu-fold-toggle:hover{color:var(--ink);background:color-mix(in oklab,var(--surface-hover) 64%,transparent)}.debug-mode-menu-fold-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.debug-mode-menu-fold-toggle:active{scale:.96}.debug-mode-menu-fold-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;transition:transform .16s var(--ease-out)}.debug-mode-menu-fold-toggle[aria-expanded=false] svg{transform:rotate(180deg)}.debug-mode-menu.neodrag-dragging{scale:1.01}.debug-mode-menu.neodrag-dragging .debug-mode-menu-header,.debug-mode-menu[data-folded].neodrag-dragging .debug-mode-menu-fold-toggle{cursor:grabbing}.debug-mode-debugger-tab>label{display:flex;min-height:28px;align-items:center;gap:9px;margin-inline:-6px;padding-inline:6px;border-radius:8px;cursor:pointer;transition:background-color .12s var(--ease-out)}.debug-mode-debugger-tab>label:hover{background:color-mix(in oklab,var(--surface-hover) 70%,transparent)}.debug-mode-menu input{width:16px;height:16px;margin:0;accent-color:var(--brand)}.ui-select-trigger{display:inline-flex;width:100%;min-height:34px;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--border-strong);border-radius:8px;padding:0 9px;color:var(--ink);background:var(--canvas);font:inherit;cursor:pointer}.ui-select-trigger:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.ui-select-trigger:disabled{cursor:not-allowed;opacity:.55}.ui-select-icon,.ui-select-icon svg,.ui-select-item-indicator svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.ui-select-content{z-index:100;min-width:var(--radix-select-trigger-width);overflow:hidden;border:1px solid var(--border-strong);border-radius:9px;color:var(--ink);background:var(--material-nav);box-shadow:0 14px 34px var(--soft-shadow);backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%)}.ui-select-viewport{padding:4px}.ui-select-item{position:relative;display:flex;min-height:32px;align-items:center;border-radius:6px;padding:5px 28px 5px 9px;outline:none;cursor:default;-webkit-user-select:none;user-select:none}.ui-select-item[data-highlighted]{background:var(--surface-hover)}.ui-select-item-indicator{position:absolute;right:8px;display:grid;place-items:center}.debug-mode-menu small{color:var(--stone);line-height:1.35}.debug-mode-toggle{position:relative;width:44px;height:44px;padding:0;border:0;border-radius:999px;color:var(--stone);background:transparent;cursor:pointer}.debug-mode-toggle-track{position:absolute;inset:10px 0;border:1px solid var(--border-strong);border-radius:inherit;background:var(--surface-hover);transition:background-color .14s var(--ease-out)}.debug-mode-toggle-icon{position:absolute;top:2px;left:2px;display:grid;width:20px;height:20px;place-items:center;border-radius:50%;background:var(--canvas);box-shadow:0 2px 8px var(--soft-shadow);transition:transform .18s var(--ease-out)}.debug-mode-toggle svg,.canvas-debug-panel svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6}.debug-mode-toggle[data-active]{color:var(--canvas)}.debug-mode-toggle[data-active] .debug-mode-toggle-track{background:var(--brand)}.debug-mode-toggle[data-active] .debug-mode-toggle-icon{color:var(--brand);transform:translate(20px)}.debug-mode-toggle:active .debug-mode-toggle-icon{scale:.9}.debug-mode-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.canvas-debug-panel{display:grid;gap:10px;padding:14px 16px;border:1px solid var(--border-strong);border-radius:12px;color:var(--ink);background:var(--material-nav);box-shadow:0 16px 38px var(--soft-shadow);backdrop-filter:blur(18px) saturate(130%);font-size:var(--text-caption);line-height:1.4;-webkit-backdrop-filter:blur(18px) saturate(130%)}.canvas-debug-panel header{display:grid;grid-template-columns:24px minmax(0,1fr) auto 32px;align-items:center;gap:8px}.canvas-debug-panel-icon{display:grid;width:24px;height:24px;place-items:center;border-radius:7px;color:var(--brand);background:var(--surface-hover)}.canvas-debug-panel-status{color:var(--brand);font-family:SFMono-Regular,Consolas,monospace;white-space:nowrap}.canvas-debug-panel header button{display:grid;width:32px;height:32px;place-items:center;border:0;border-radius:8px;color:var(--stone);background:transparent;cursor:pointer}.canvas-debug-panel header button:hover{color:var(--ink);background:var(--surface-hover)}.canvas-debug-panel header button:active{transform:scale(.92)}.canvas-debug-panel header button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.canvas-debug-recorder{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) 108px;align-items:end;gap:8px;padding-block:2px}.canvas-debug-recorder>button{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border-strong);border-radius:8px;padding-inline:10px;color:var(--ink);background:var(--canvas);font:inherit;cursor:pointer}.canvas-debug-recorder>button:disabled{cursor:not-allowed;opacity:.5}.canvas-debug-recorder>button>span{width:8px;height:8px;border-radius:50%;background:var(--brand)}.canvas-debug-recorder>button[data-recording]>span{border-radius:2px;animation:debug-recording-pulse 1s ease-in-out infinite}.canvas-debug-recorder-interval{display:grid;gap:4px;color:var(--stone)}@keyframes debug-recording-pulse{50%{opacity:.45}}.canvas-debug-panel p,.canvas-debug-panel dl,.canvas-debug-panel dt,.canvas-debug-panel dd{margin:0}.canvas-debug-panel p{color:var(--olive);text-wrap:pretty}.canvas-debug-panel dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px}.canvas-debug-panel dl>div{min-width:0;display:grid;grid-template-columns:6.5rem minmax(0,1fr);gap:8px}.canvas-debug-panel dt{color:var(--stone)}.canvas-debug-panel dd{overflow-wrap:anywhere;font-family:SFMono-Regular,Consolas,monospace}.project-media-diagnostics-disclosure{border-block-start:1px solid color-mix(in oklch,var(--project-accent) 18%,transparent)}.project-media-diagnostics-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;color:color-mix(in oklch,var(--project-accent) 82%,var(--ink));font-size:var(--text-caption);font-weight:650;line-height:1.4;cursor:pointer;list-style:none}.project-media-diagnostics-disclosure>summary::-webkit-details-marker{display:none}.project-media-diagnostics-disclosure>summary small{color:var(--stone);font:inherit;font-weight:450}.project-media-diagnostics-disclosure>summary svg{width:16px;height:16px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.7;transition:transform .16s var(--ease-out)}.project-media-diagnostics-disclosure[open]>summary svg{transform:rotate(180deg)}.project-media-diagnostics-disclosure>summary:focus-visible{outline:2px solid var(--project-accent);outline-offset:-3px}.project-media-diagnostics{border-inline:0;border-block-start:1px solid color-mix(in oklch,var(--project-accent) 14%,transparent);border-radius:0;background:color-mix(in oklch,var(--project-surface) 88%,var(--canvas));box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.ocean-banner-debug,.endless-footer-debug{position:fixed;z-index:65;left:16px;width:min(430px,calc(100vw - 32px));max-height:min(42vh,360px);overflow:auto}.ocean-banner-debug{top:16px}.endless-footer-debug{bottom:16px}.project-copy{padding:26px 28px 30px}.project-copy h3,.project-copy p{margin:0}.project-copy h3{color:#1c1b13;font-size:var(--text-heading-sm);font-weight:650;line-height:1.25;letter-spacing:-.025em;text-wrap:pretty}.project-copy h3 span{color:color-mix(in oklch,var(--project-accent) 72%,oklch(.22 .015 100));font-size:var(--text-caption);font-weight:580;letter-spacing:0}.project-copy>p{max-width:48ch;margin-top:12px;color:#434031;line-height:1.52;text-wrap:pretty}.project-copy>a{min-height:44px;display:inline-flex;align-items:center;gap:8px;margin-top:18px;color:var(--project-accent);font-size:var(--text-label);font-weight:650}.project-copy>a:hover{text-decoration:none}.project-copy>a .writing-row-icon{width:16px;height:16px;color:currentColor}.project-copy>a:hover .writing-row-icon{transform:translate(2px,-2px)}.open-directory{margin-top:clamp(88px,11vw,132px)}.directory-heading{align-items:baseline}.directory-heading>a{justify-self:end;color:var(--stone);font-size:var(--text-caption);font-weight:500}.directory-list{display:grid;grid-template-columns:minmax(130px,.55fr) minmax(0,1.45fr) 11ch 18px;column-gap:24px;margin:32px 0 0;padding:0;border-top:1px solid var(--border);list-style:none}.directory-list li{display:grid;grid-column:1 / -1;grid-template-columns:subgrid;border-bottom:1px solid var(--border)}.directory-list a{display:grid;grid-column:1 / -1;grid-template-columns:subgrid;min-height:76px;align-items:center;gap:24px;margin-inline:-12px;border-radius:12px;padding:14px 12px;color:var(--ink)}.directory-list a:hover{background:var(--surface-hover);text-decoration:none}.directory-name{font-weight:620;letter-spacing:-.015em}.directory-detail{color:var(--olive);font-size:var(--text-label);text-wrap:pretty}.directory-language{justify-self:end;color:var(--stone);font-family:SFMono-Regular,Consolas,monospace;font-size:var(--text-caption);white-space:nowrap}.directory-list .writing-row-icon{width:18px;height:18px;color:var(--stone)}.directory-list a:hover .writing-row-icon{color:var(--ink);transform:translate(2px,-2px)}.portfolio-page .writing,.portfolio-page .work{margin-top:clamp(88px,11vw,132px)}.portfolio-page .bio{scroll-margin-top:88px;margin-top:clamp(88px,11vw,132px)}.portfolio-page .projects-heading,.portfolio-page .directory-heading,.portfolio-page .writing-header,.portfolio-page .bio,.portfolio-page .work-header{border-top:1px solid var(--border);padding-top:18px}html[data-color-scheme=dark] .project-card[data-project=pai-bot]{--project-surface: oklch(.28 .055 85);--project-accent: oklch(.78 .12 82)}html[data-color-scheme=dark] .project-card[data-project=garden]{--project-surface: oklch(.255 .05 145);--project-accent: oklch(.78 .13 143)}html[data-color-scheme=dark] .project-card[data-project=skills]{--project-surface: oklch(.265 .05 318);--project-accent: oklch(.79 .12 318)}html[data-color-scheme=dark] .project-card[data-project=ship-llm]{--project-surface: oklch(.25 .045 220);--project-accent: oklch(.79 .11 214)}html[data-color-scheme=dark] .project-artwork{background:color-mix(in oklch,var(--project-surface) 80%,black)}html[data-color-scheme=dark] .project-copy h3,html[data-color-scheme=dark] .project-copy>p{color:var(--ink)}html[data-color-scheme=dark] .project-copy h3 span{color:color-mix(in oklch,var(--project-accent) 72%,var(--ink))}@media(max-width:760px){.portfolio-header{align-items:flex-start;flex-direction:column;gap:8px}.portfolio-nav{gap:4px 20px}.debug-mode-tooltip{top:50%;left:calc(100% + 8px);transform:translate(4px,-50%) scale(.96);transform-origin:0 50%}.debug-mode-toggle:hover+.debug-mode-tooltip,.debug-mode-toggle:focus-visible+.debug-mode-tooltip{transform:translateY(-50%) scale(1)}.portfolio-hero{padding-top:28px}.section-heading{grid-template-columns:1fr;gap:16px}.project-card,.project-card:first-child,.project-card:nth-child(2),.project-card:nth-child(3),.project-card:nth-child(4),.project-card:nth-child(5),.project-card:nth-child(6),.project-card:nth-child(7),.project-card:nth-child(8){grid-column:1 / -1}.project-artwork{min-height:220px}.canvas-debug-panel dl{grid-template-columns:1fr}.ocean-banner-debug,.endless-footer-debug{left:8px;width:calc(100vw - 16px);max-height:34vh}.directory-heading>a{justify-self:start}.directory-list a{grid-template-columns:minmax(0,1fr) auto 18px;gap:4px 16px}.directory-detail{grid-column:1 / -1;grid-row:2}.directory-language{grid-column:2;grid-row:1}.directory-list .writing-row-icon{grid-column:3;grid-row:1}}@media(max-width:480px){.portfolio-page{width:calc(100% - 20px);padding-inline:24px}.project-grid{gap:16px;margin-top:32px}.project-artwork{min-height:180px}.project-copy{padding:22px 22px 24px}.directory-list a{margin-inline:-8px;padding-inline:8px}.directory-language{display:none}.directory-list a{grid-template-columns:minmax(0,1fr) 18px}.directory-list .writing-row-icon{grid-column:2}}@media(prefers-reduced-motion:reduce){.project-artwork canvas,.project-copy>a .writing-row-icon,.directory-list .writing-row-icon{transition:none}.project-copy>a:hover .writing-row-icon,.directory-list a:hover .writing-row-icon{transform:none;translate:none}}@media(prefers-reduced-motion:reduce){.debug-wordmark-letter{font-family:SFMono-Regular,Consolas,monospace;animation:none}.debug-hero-letter{animation:none}.debug-mode-tooltip{transition:none}.canvas-debug-recorder>button[data-recording]>span{animation:none}.debug-mode-menu{animation:none;transition:none}.debug-mode-menu.neodrag-dragging{scale:1}}@media(prefers-reduced-transparency:reduce){.debug-mode-menu{background:var(--material-nav);box-shadow:0 14px 38px var(--soft-shadow);backdrop-filter:none;-webkit-backdrop-filter:none}}@media(prefers-contrast:more){.debug-mode-menu{border-color:var(--ink);background:var(--canvas);box-shadow:0 12px 32px var(--soft-shadow)}}@media(max-width:48rem){.blog-index,.blog-post{width:100%;padding:32px 24px 112px}.blog-index .post-list a{padding:24px}}

.xln7xf2 {
  font: inherit;
}

.xkdpibf {
  margin: -1px;
}

.x1ghz6dp {
  margin: 0;
}

.x1717udv {
  padding: 0;
}

.xdfu9ks {
  padding: 10px 20px;
}

.x1tamke2 {
  padding: 16px;
}

.x1qhigcl {
  padding: 20px;
}

.xbnpv00 {
  padding: 8px 14px;
}

.x761oyd {
  padding: 8px 20px;
}

.xe8ttls {
  padding: 8px;
}

.x1r7ld26:not(#\#) {
  border-color: currentColor;
}

.x9ppzu0:not(#\#) {
  border-color: var(--brand);
}

.x1qsz884:not(#\#) {
  border-color: var(--color-cool-200);
}

.x1pk4qdr:not(#\#) {
  border-color: var(--color-cool-600);
}

.xnfvxkk:not(#\#) {
  border-color: var(--color-cool-calm-200);
}

.x18p7vu:not(#\#) {
  border-color: var(--color-cool-calm-600);
}

.x19snffw:not(#\#) {
  border-color: var(--sticker-slate);
}

.x4pepcl:not(#\#) {
  border-radius: 12px;
}

.xn5hx6u:not(#\#) {
  border-radius: 15px;
}

.x18zih8k:not(#\#) {
  border-radius: 3px;
}

.x16rqkct:not(#\#) {
  border-radius: 50%;
}

.x1sxf85j:not(#\#) {
  border-radius: 5px;
}

.xu4hgxq:not(#\#) {
  border-radius: 7px;
}

.x1e6avla:not(#\#) {
  border-radius: 999px;
}

.x1m5o7b2:not(#\#) {
  border-radius: var(--radius-buttons);
}

.x1thlq5g:not(#\#) {
  border-radius: var(--sticker-button-radius);
}

.x1y0btm7:not(#\#) {
  border-style: solid;
}

.xc342km:not(#\#) {
  border-width: 0;
}

.xmkeg23:not(#\#) {
  border-width: 1px;
}

.x3psx0u:not(#\#) {
  flex: none;
}

.x883omv:not(#\#) {
  gap: 10px;
}

.x1v2ro7d:not(#\#) {
  gap: 12px;
}

.x1ak4u35:not(#\#) {
  gap: 18px 30px;
}

.x1665zp3:not(#\#) {
  gap: 24px;
}

.xkh65bq:not(#\#) {
  gap: 4px 12px;
}

.x17d4w8g:not(#\#) {
  gap: 6px;
}

.x167g77z:not(#\#) {
  gap: 8px;
}

.x1osaytk:not(#\#) {
  grid-column: 1 / -1;
}

.xvueqy4:not(#\#) {
  margin-inline: auto;
}

.xb3r6kr:not(#\#) {
  overflow: hidden;
}

.xt970qd:not(#\#) {
  padding-block: 0;
}

.x1gcc6t0:not(#\#) {
  padding-block: 60px 112px;
}

.x1hr3lfm:not(#\#) {
  padding-inline: 16px;
}

.x1swszaa:not(#\#) {
  padding-inline: 8px 12px;
}

.xdqyycr:not(#\#) {
  padding-inline: 8px;
}

.x1hl2dhg:not(#\#) {
  text-decoration: none;
}

.xze8r8f:focus:not(:focus-visible):not(#\#) {
  outline: none;
}

.x1lku1pv:hover:not(#\#) {
  text-decoration: none;
}

@media (width <= 30rem) {
  .x1oj1k2l.x1oj1k2l:not(#\#) {
    gap: 12px;
  }
}

@media (width <= 40rem) {
  .x1bw6ejv.x1bw6ejv:not(#\#) {
    gap: 12px;
  }

  .x109kddx.x109kddx:not(#\#) {
    gap: 24px;
  }

  .x5s6qm0.x5s6qm0:not(#\#) {
    grid-column: 1 / -1;
  }
}

@media (width <= 480px) {
  .xw7whzn.xw7whzn:not(#\#) {
    grid-column: 1 / -1;
  }
}

@media (width <= 40rem) {
  .x2yr0pi.x2yr0pi:not(#\#) {
    grid-row: 2;
  }
}

@media (width <= 480px) {
  .x1tlad71.x1tlad71:not(#\#) {
    grid-row: 2;
  }
}

@media (hover: hover) and (pointer: fine) {
  .x1963cle.x1963cle:hover:not(#\#) {
    text-decoration: none;
  }
}

.x1i10hfl:not(#\#):not(#\#) {
  -webkit-tap-highlight-color: transparent;
}

.xd1a026:not(#\#):not(#\#) {
  accent-color: var(--brand);
}

.xc26acl:not(#\#):not(#\#) {
  align-content: center;
}

.x6s0dn4:not(#\#):not(#\#) {
  align-items: center;
}

.xtwfq29:not(#\#):not(#\#) {
  background-color: currentColor;
}

.xdkej84:not(#\#):not(#\#) {
  background-color: #7d4de7;
  background-color: lab(45.23% 47.3086 -72.3198);
}

.x1yqi153:not(#\#):not(#\#) {
  background-color: #cbc4ef;
  background-color: lab(80.7944% 8.77264 -20.5475);
}

.xcijdgx:not(#\#):not(#\#) {
  background-color: #beceef;
  background-color: lab(82.3402% -.405639 -18.5202);
}

.xgcvize:not(#\#):not(#\#) {
  background-color: #b6ceff;
  background-color: lab(81.9711% 1.07169 -36.4085);
}

.xosx7kb:not(#\#):not(#\#) {
  background-color: #fff;
  background-color: lab(100% 0 0);
}

.xjbqb8w:not(#\#):not(#\#) {
  background-color: #0000;
}

.xjcl0iz:not(#\#):not(#\#) {
  background-color: var(--blog-canvas);
}

.x167mmt:not(#\#):not(#\#) {
  background-color: var(--blog-coral);
}

.x9jgwjp:not(#\#):not(#\#) {
  background-color: var(--blog-paper);
}

.xuvq2sg:not(#\#):not(#\#) {
  background-color: var(--color-cool-50);
}

.x1sf3a1p:not(#\#):not(#\#) {
  background-color: var(--color-cool-800);
}

.xp2vip5:not(#\#):not(#\#) {
  background-color: var(--color-cool-calm-50);
}

.xk0witi:not(#\#):not(#\#) {
  background-color: var(--color-cool-calm-800);
}

.xu3dqh2:not(#\#):not(#\#) {
  background-color: var(--sticker-cream);
}

.x4v9asy:not(#\#):not(#\#) {
  background-color: var(--sticker-paper);
}

.xq68zeq:not(#\#):not(#\#) {
  background-color: var(--sticker-yellow);
}

.x1r39qep:not(#\#):not(#\#) {
  box-shadow: 0 0 0 2px var(--blog-yellow);
}

.xv4cli9:not(#\#):not(#\#) {
  box-shadow: 0 0 0 2px var(--sticker-coral);
}

.x1vumt3b:not(#\#):not(#\#) {
  box-shadow: 0 0 0 2px var(--sticker-ink);
}

.x19wk6an:not(#\#):not(#\#) {
  box-shadow: 3px 4px 0 color-mix(in oklch,var(--sticker-ink) 18%,transparent);
}

.x1hyvwdk:not(#\#):not(#\#) {
  clip-path: inset(50%);
}

.xzpqnlu:not(#\#):not(#\#) {
  clip: rect(0,0,0,0);
}

.x1heor9g:not(#\#):not(#\#) {
  color: inherit;
}

.xdbezgi:not(#\#):not(#\#) {
  color: #000;
  color: lab(0% 0 0);
}

.x1v4kcew:not(#\#):not(#\#) {
  color: var(--blog-ink);
}

.xj2li6x:not(#\#):not(#\#) {
  color: var(--blog-on-coral);
}

.x18ws99x:not(#\#):not(#\#) {
  color: var(--color-cool-100);
}

.x1o2ydb9:not(#\#):not(#\#) {
  color: var(--color-cool-50);
}

.x1wl39lw:not(#\#):not(#\#) {
  color: var(--color-cool-800);
}

.x34ccb9:not(#\#):not(#\#) {
  color: var(--color-cool-950);
}

.xgiv2dr:not(#\#):not(#\#) {
  color: var(--color-cool-calm-100);
}

.x1yhxgme:not(#\#):not(#\#) {
  color: var(--color-cool-calm-800);
}

.x1xuqw24:not(#\#):not(#\#) {
  color: var(--color-cool-calm-950);
}

.x1lk8qxj:not(#\#):not(#\#) {
  color: var(--ink);
}

.x5093x2:not(#\#):not(#\#) {
  color: var(--sticker-ink);
}

.xufeyb5:not(#\#):not(#\#) {
  color: var(--stone);
}

.x1ypdohk:not(#\#):not(#\#) {
  cursor: pointer;
}

.x1lliihq:not(#\#):not(#\#) {
  display: block;
}

.x78zum5:not(#\#):not(#\#) {
  display: flex;
}

.xrvj5dj:not(#\#):not(#\#) {
  display: grid;
}

.x3nfvp2:not(#\#):not(#\#) {
  display: inline-flex;
}

.x1a02dak:not(#\#):not(#\#) {
  flex-wrap: wrap;
}

.x1wjia6m:not(#\#):not(#\#) {
  font-family: var(--font-fictional);
}

.xif65rj:not(#\#):not(#\#) {
  font-size: 14px;
}

.x1j61zf2:not(#\#):not(#\#) {
  font-size: 16px;
}

.x19d36u7:not(#\#):not(#\#) {
  font-size: 17px;
}

.xosj86m:not(#\#):not(#\#) {
  font-size: 18px;
}

.x1n56hm7:not(#\#):not(#\#) {
  font-size: var(--text-body);
}

.xaasd0c:not(#\#):not(#\#) {
  font-size: var(--text-caption);
}

.x1ur3rz7:not(#\#):not(#\#) {
  font-size: var(--text-label);
}

.xss6m8b:not(#\#):not(#\#) {
  font-variant-numeric: tabular-nums;
}

.xh88oxj:not(#\#):not(#\#) {
  font-weight: 550;
}

.xmvyi9x:not(#\#):not(#\#) {
  font-weight: 560;
}

.x1s688f:not(#\#):not(#\#) {
  font-weight: 600;
}

.x1xlr1w8:not(#\#):not(#\#) {
  font-weight: 700;
}

.x1slbbjw:not(#\#):not(#\#) {
  grid-template-columns: auto auto minmax(80px, 1fr) auto;
}

.x8sxmsg:not(#\#):not(#\#) {
  grid-template-columns: minmax(0, 1fr) auto auto;
}

.xju1xpo:not(#\#):not(#\#) {
  grid-template-columns: minmax(0, 1fr) auto;
}

.xnby9oq:not(#\#):not(#\#) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.x1pn5k75:not(#\#):not(#\#) {
  inset-inline-start: 17px;
}

.x1ty65gk:not(#\#):not(#\#) {
  inset-inline-start: 3px;
}

.xl56j7k:not(#\#):not(#\#) {
  justify-content: center;
}

.x1yf5rgg:not(#\#):not(#\#) {
  letter-spacing: .01em;
}

.x1159mfc:not(#\#):not(#\#) {
  line-height: 1.1;
}

.x37zpob:not(#\#):not(#\#) {
  line-height: 1.4;
}

.xo5v014:not(#\#):not(#\#) {
  line-height: 1;
}

.x1db8ko7:not(#\#):not(#\#) {
  line-height: var(--leading-heading);
}

.x1a5kqlc:not(#\#):not(#\#) {
  margin-inline-start: -10px;
}

.x10l6tqk:not(#\#):not(#\#) {
  position: absolute;
}

.xixxii4:not(#\#):not(#\#) {
  position: fixed;
}

.x1n2onr6:not(#\#):not(#\#) {
  position: relative;
}

.x7wzq59:not(#\#):not(#\#) {
  position: sticky;
}

.xyi4chj:not(#\#):not(#\#) {
  text-decoration-thickness: 1px;
}

.x3pynha:not(#\#):not(#\#) {
  text-underline-offset: 4px;
}

.x1j02ihj:not(#\#):not(#\#) {
  transform: rotate(-1.25deg);
}

.xt8glu:not(#\#):not(#\#) {
  transform: rotate(-3deg);
}

.x144pkbt:not(#\#):not(#\#) {
  transform: rotate(1deg);
}

.xgdialr:not(#\#):not(#\#) {
  transition-duration: .12s;
}

.xbb3pvg:not(#\#):not(#\#) {
  transition-duration: .14s;
}

.xb01p6k:not(#\#):not(#\#) {
  transition-duration: .16s, .1s, .1s;
}

.x9dyr19:not(#\#):not(#\#) {
  transition-duration: .18s;
}

.xr1c510:not(#\#):not(#\#) {
  transition-property: background-color, opacity, transform;
}

.xfvdr79:not(#\#):not(#\#) {
  transition-property: color, background-color, transform;
}

.x2hifos:not(#\#):not(#\#) {
  transition-property: inset-inline-start;
}

.x6o7n8i:not(#\#):not(#\#) {
  transition-property: opacity, transform;
}

.x11xpdln:not(#\#):not(#\#) {
  transition-property: transform;
}

.xqfqaah:not(#\#):not(#\#) {
  transition-property: translate;
}

.xwji4o3:not(#\#):not(#\#) {
  transition-timing-function: ease;
}

.x1gq1ic0:not(#\#):not(#\#) {
  transition-timing-function: var(--ease-out),ease-out,ease-out;
}

.x122hhpc:not(#\#):not(#\#) {
  transition-timing-function: var(--ease-out);
}

.xuxw1ft:not(#\#):not(#\#) {
  white-space: nowrap;
}

.x1hi9sau:not(#\#):not(#\#) {
  z-index: 120;
}

.x1swf91x:not(#\#):not(#\#) {
  z-index: auto;
}

.x1v8x7ac:focus-visible:not(#\#):not(#\#) {
  outline-color: currentColor;
}

.xcu3nq5:focus-visible:not(#\#):not(#\#) {
  outline-color: #7d4de7;
  outline-color: lab(45.23% 47.3086 -72.3198);
}

.xwqiuqa:focus-visible:not(#\#):not(#\#) {
  outline-color: #beceef;
  outline-color: lab(82.3402% -.405639 -18.5202);
}

.x5t87cg:focus-visible:not(#\#):not(#\#) {
  outline-color: #b6ceff;
  outline-color: lab(81.9711% 1.07169 -36.4085);
}

.x1psif0i:focus-visible:not(#\#):not(#\#) {
  outline-color: var(--blog-indigo);
}

.xwoquns:focus-visible:not(#\#):not(#\#) {
  outline-color: var(--color-cool-calm-700);
}

.x161sj1n:focus-visible:not(#\#):not(#\#) {
  outline-color: var(--sticker-indigo);
}

.x7s97pk:focus-visible:not(#\#):not(#\#) {
  outline-offset: 2px;
}

.xj3ae5l:focus-visible:not(#\#):not(#\#) {
  outline-offset: 3px;
}

.x9v5kkp:focus-visible:not(#\#):not(#\#) {
  outline-style: solid;
}

.x784prv:focus-visible:not(#\#):not(#\#) {
  outline-width: 2px;
}

.xzv1bek:focus-visible:not(#\#):not(#\#) {
  outline-width: 3px;
}

.x15qbw3q:active:not(:disabled):not(#\#):not(#\#) {
  transform: scale(.97);
}

.x1s07b3s:disabled:not(#\#):not(#\#) {
  cursor: not-allowed;
}

.x8ivg66:disabled:not(#\#):not(#\#) {
  opacity: .48;
}

.x1hcb65z:active:not(#\#):not(#\#) {
  background-color: var(--surface-active);
}

.x4gyw5p:active:not(#\#):not(#\#) {
  opacity: 1;
}

.x1iphrbq:active:not(#\#):not(#\#) {
  transform: rotate(-1.25deg) scale(.96);
}

.xjwgt4x:active:not(#\#):not(#\#) {
  transform: rotate(1deg) scale(.96);
}

.x19kf12q:active:not(#\#):not(#\#) {
  transform: scale(.96);
}

@media (width <= 40rem) {
  .x1hpn28i.x1hpn28i:not(#\#):not(#\#) {
    flex-wrap: wrap;
  }
}

@media (width <= 480px) {
  .x4gzp47.x4gzp47:not(#\#):not(#\#) {
    grid-template-columns: auto 1fr auto;
  }
}

@media (width <= 40rem) {
  .x1txdgtp.x1txdgtp:not(#\#):not(#\#) {
    grid-template-columns: minmax(0, 1fr) auto;
  }
}

@media (width <= 30rem) {
  .x1oxcaxh.x1oxcaxh:not(#\#):not(#\#) {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (width <= 480px) {
  .x18498zu.x18498zu:not(#\#):not(#\#) {
    justify-self: end;
  }
}

@media (prefers-reduced-motion: reduce) {
  .x12w9bfk.x12w9bfk:not(#\#):not(#\#) {
    transition-duration: 0s;
  }
}

@media (hover: hover) and (pointer: fine) {
  .x16im2qr.x16im2qr:hover:not(#\#):not(#\#) {
    background-color: #000;
    background-color: lab(0% 0 0);
  }

  .xjrglsz.xjrglsz:hover:not(#\#):not(#\#) {
    color: #fff;
    color: lab(100% 0 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .xb93eig.xb93eig:active:not(#\#):not(#\#) {
    transform: none;
  }
}

.x1tnzt7h:not(#\#):not(#\#):not(#\#) {
  border-bottom-color: currentColor;
}

.x1q0q8m5:not(#\#):not(#\#):not(#\#) {
  border-bottom-style: solid;
}

.xso031l:not(#\#):not(#\#):not(#\#) {
  border-bottom-width: 1px;
}

.xdd4er5:not(#\#):not(#\#):not(#\#) {
  bottom: auto;
}

.xkl2k8j:not(#\#):not(#\#):not(#\#) {
  bottom: max(0px,env(safe-area-inset-bottom));
}

.x1owbh57:not(#\#):not(#\#):not(#\#) {
  bottom: max(16px,env(safe-area-inset-bottom));
}

.xaylbqo:not(#\#):not(#\#):not(#\#) {
  height: 1.125rem;
}

.x1v9usgg:not(#\#):not(#\#):not(#\#) {
  height: 14px;
}

.xjm9jq1:not(#\#):not(#\#):not(#\#) {
  height: 1px;
}

.x17rw0jw:not(#\#):not(#\#):not(#\#) {
  height: 22px;
}

.x1t8mvi6:not(#\#):not(#\#):not(#\#) {
  left: auto;
}

.xndf0xa:not(#\#):not(#\#):not(#\#) {
  left: max(16px,env(safe-area-inset-left));
}

.x1hq5gj4:not(#\#):not(#\#):not(#\#) {
  margin-bottom: 24px;
}

.xdj266r:not(#\#):not(#\#):not(#\#) {
  margin-top: 0;
}

.xrees7y:not(#\#):not(#\#):not(#\#) {
  margin-top: 108px;
}

.xr1yuqi:not(#\#):not(#\#):not(#\#) {
  margin-top: auto;
}

.x1jqqeza:not(#\#):not(#\#):not(#\#) {
  max-width: calc(100dvw - 32px);
}

.x1gg8mnh:not(#\#):not(#\#):not(#\#) {
  min-height: 44px;
}

.x1wxaq2x:not(#\#):not(#\#):not(#\#) {
  min-height: 48px;
}

.x879a55:not(#\#):not(#\#):not(#\#) {
  min-height: 60px;
}

.xeuugli:not(#\#):not(#\#):not(#\#) {
  min-width: 0;
}

.x187xtus:not(#\#):not(#\#):not(#\#) {
  min-width: 72px;
}

.xyamay9:not(#\#):not(#\#):not(#\#) {
  padding-top: 16px;
}

.xxk6nc9:not(#\#):not(#\#):not(#\#) {
  top: 3px;
}

.xsk17dz:not(#\#):not(#\#):not(#\#) {
  width: 1.125rem;
}

.xh8yej3:not(#\#):not(#\#):not(#\#) {
  width: 100%;
}

.x6jxa94:not(#\#):not(#\#):not(#\#) {
  width: 14px;
}

.x1i1rx1s:not(#\#):not(#\#):not(#\#) {
  width: 1px;
}

.x14qfxbe:not(#\#):not(#\#):not(#\#) {
  width: 36px;
}

.xeq5yr9:not(#\#):not(#\#):not(#\#) {
  width: fit-content;
}

.xzu6157:not(#\#):not(#\#):not(#\#) {
  width: min(100%, 1280px);
}
