/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:"IBM Plex Mono", "Cascadia Code", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-lg:32rem;--container-xl:36rem;--container-3xl:48rem;--font-weight-semibold:600;--leading-snug:1.375;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-mono-bg:#f3f2ee;--color-mono-surface:#fff;--color-mono-gray:#737373;--color-mono-paper:#f3f2ee;--color-mono-ink:#111;--color-mono-mute:#3f3f3f;--color-mono-line:#ddd9d1;--font-display:"Bricolage Grotesque", "Segoe UI", sans-serif;--font-body:"IBM Plex Sans", "Segoe UI", sans-serif;--text-display:clamp(3.5rem, 9vw, 6.5rem);--text-h1:clamp(2.25rem, 4.5vw, 3.5rem);--text-h2:clamp(1.75rem, 3vw, 2.35rem);--text-deck:clamp(1.05rem, 1.4vw, 1.2rem);--text-body:1.0625rem;--text-meta:.8125rem;--text-label:.6875rem;--leading-display:.95;--leading-title:1.12;--leading-deck:1.45;--leading-body:1.65;--leading-meta:1.4;--space-2:.75rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--space-6:3rem;--space-7:4.5rem;--space-8:7rem}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing) * 0)}.inset-6{inset:calc(var(--spacing) * 6)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.top-4{top:calc(var(--spacing) * 4)}.right-4{right:calc(var(--spacing) * 4)}.bottom-6{bottom:calc(var(--spacing) * 6)}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-\[60\]{z-index:60}.col-start-2{grid-column-start:2}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mt-\[0\.55em\]{margin-top:.55em}.mt-\[var\(--space-5\)\]{margin-top:var(--space-5)}.mt-\[var\(--space-6\)\]{margin-top:var(--space-6)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-\[var\(--space-5\)\]{margin-bottom:var(--space-5)}.mb-\[var\(--space-7\)\]{margin-bottom:var(--space-7)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-\[42vh\]{height:42vh}.h-full{height:100%}.h-px{height:1px}.max-h-44{max-height:calc(var(--spacing) * 44)}.max-h-\[88vh\]{max-height:88vh}.max-h-full{max-height:100%}.min-h-\[100svh\]{min-height:100svh}.min-h-full{min-height:100%}.w-3{width:calc(var(--spacing) * 3)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-full{max-width:100%}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.shrink-0{flex-shrink:0}.origin-left{transform-origin:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.grid-cols-\[3rem_minmax\(0\,1fr\)\]{grid-template-columns:3rem minmax(0,1fr)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--space-3) * var(--tw-space-y-reverse));margin-block-end:calc(var(--space-3) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-10{row-gap:calc(var(--spacing) * 10)}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-mono-line{border-color:var(--color-mono-line)}.border-white\/30{border-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.border-white\/30{border-color:color-mix(in oklab,var(--color-white) 30%,transparent)}}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black) 40%,transparent)}}.bg-mono-ink{background-color:var(--color-mono-ink)}.bg-mono-ink\/20{background-color:#1113}@supports (color:color-mix(in lab,red,red)){.bg-mono-ink\/20{background-color:color-mix(in oklab,var(--color-mono-ink) 20%,transparent)}}.bg-mono-ink\/80{background-color:#111c}@supports (color:color-mix(in lab,red,red)){.bg-mono-ink\/80{background-color:color-mix(in oklab,var(--color-mono-ink) 80%,transparent)}}.bg-mono-line{background-color:var(--color-mono-line)}.bg-mono-paper{background-color:var(--color-mono-paper)}.bg-mono-surface{background-color:var(--color-mono-surface)}.bg-white\/45{background-color:#ffffff73}@supports (color:color-mix(in lab,red,red)){.bg-white\/45{background-color:color-mix(in oklab,var(--color-white) 45%,transparent)}}.bg-white\/55{background-color:#ffffff8c}@supports (color:color-mix(in lab,red,red)){.bg-white\/55{background-color:color-mix(in oklab,var(--color-white) 55%,transparent)}}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-top{object-position:top}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.p-7{padding:calc(var(--spacing) * 7)}.p-9{padding:calc(var(--spacing) * 9)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-\[var\(--space-7\)\]{padding-block:var(--space-7)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-36{padding-top:calc(var(--spacing) * 36)}.pt-\[var\(--space-8\)\]{padding-top:var(--space-8)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pb-\[var\(--space-6\)\]{padding-bottom:var(--space-6)}.pb-\[var\(--space-8\)\]{padding-bottom:var(--space-8)}.text-left{text-align:left}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.text-\[0\.75rem\]{font-size:.75rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-\[15px\]{font-size:15px}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.02em\]{--tw-tracking:-.02em;letter-spacing:-.02em}.tracking-\[-0\.04em\]{--tw-tracking:-.04em;letter-spacing:-.04em}.tracking-\[0\.02em\]{--tw-tracking:.02em;letter-spacing:.02em}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.text-mono-gray{color:var(--color-mono-gray)}.text-mono-ink{color:var(--color-mono-ink)}.text-mono-mute{color:var(--color-mono-mute)}.text-white{color:var(--color-white)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.shadow-\[0_20px_60px_rgba\(0\,0\,0\,0\.08\)\]{--tw-shadow:0 20px 60px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_24px_80px_rgba\(0\,0\,0\,0\.35\)\]{--tw-shadow:0 24px 80px var(--tw-shadow-color,#00000059);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media(hover:hover){.hover\:border-mono-ink:hover{border-color:var(--color-mono-ink)}.hover\:border-white:hover{border-color:var(--color-white)}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.hover\:text-mono-ink:hover{color:var(--color-mono-ink)}.hover\:opacity-60:hover{opacity:.6}}@media(min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-\[6\.5rem_minmax\(0\,1fr\)\]{grid-template-columns:6.5rem minmax(0,1fr)}.sm\:gap-4{gap:calc(var(--spacing) * 4)}}@media(min-width:48rem){.md\:inset-10{inset:calc(var(--spacing) * 10)}.md\:top-6{top:calc(var(--spacing) * 6)}.md\:right-6{right:calc(var(--spacing) * 6)}.md\:bottom-8{bottom:calc(var(--spacing) * 8)}.md\:col-span-3{grid-column:span 3/span 3}.md\:col-span-5{grid-column:span 5/span 5}.md\:col-span-6{grid-column:span 6/span 6}.md\:col-span-8{grid-column:span 8/span 8}.md\:col-start-1{grid-column-start:1}.md\:col-start-7{grid-column-start:7}.md\:col-start-8{grid-column-start:8}.md\:col-start-auto{grid-column-start:auto}.md\:row-start-1{grid-row-start:1}.md\:mt-12{margin-top:calc(var(--spacing) * 12)}.md\:mt-14{margin-top:calc(var(--spacing) * 14)}.md\:mb-8{margin-bottom:calc(var(--spacing) * 8)}.md\:block{display:block}.md\:max-h-52{max-height:calc(var(--spacing) * 52)}.md\:min-h-\[85svh\]{min-height:85svh}.md\:max-w-lg{max-width:var(--container-lg)}.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-\[3\.5rem_minmax\(0\,1fr\)_10rem_5\.5rem\]{grid-template-columns:3.5rem minmax(0,1fr) 10rem 5.5rem}.md\:items-center{align-items:center}.md\:justify-end{justify-content:flex-end}.md\:justify-start{justify-content:flex-start}.md\:gap-8{gap:calc(var(--spacing) * 8)}.md\:gap-16{gap:calc(var(--spacing) * 16)}.md\:gap-x-8{column-gap:calc(var(--spacing) * 8)}.md\:gap-x-16{column-gap:calc(var(--spacing) * 16)}.md\:justify-self-end{justify-self:flex-end}.md\:p-8{padding:calc(var(--spacing) * 8)}.md\:p-9{padding:calc(var(--spacing) * 9)}.md\:p-10{padding:calc(var(--spacing) * 10)}.md\:px-6{padding-inline:calc(var(--spacing) * 6)}.md\:py-5{padding-block:calc(var(--spacing) * 5)}.md\:py-6{padding-block:calc(var(--spacing) * 6)}.md\:py-\[var\(--space-8\)\]{padding-block:var(--space-8)}.md\:pt-0{padding-top:calc(var(--spacing) * 0)}.md\:pt-2{padding-top:calc(var(--spacing) * 2)}.md\:pt-40{padding-top:calc(var(--spacing) * 40)}.md\:pb-28{padding-bottom:calc(var(--spacing) * 28)}.md\:text-\[1\.35rem\]{font-size:1.35rem}}@media(min-width:64rem){.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}}}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{background:var(--color-mono-bg);width:100%;min-height:100%;color:var(--color-mono-ink);font-family:var(--font-body);font-size:16px;line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0}body{overflow:hidden auto}:focus{outline:none}:focus-visible{outline:2px solid var(--color-mono-ink);outline-offset:3px}.btn:focus-visible{outline-offset:3px}.btn-solid:focus-visible{outline-color:var(--color-mono-paper);box-shadow:0 0 0 2px var(--color-mono-ink)}.skip-link{z-index:100;background:var(--color-mono-ink);color:var(--color-mono-paper);font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.14em;text-transform:uppercase;padding:.75rem 1.25rem;text-decoration:none;transition:transform .2s;position:absolute;top:0;left:0;transform:translateY(-120%)}.skip-link:focus,.skip-link:focus-visible{outline-offset:2px;transform:translateY(0)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.font-display{font-family:var(--font-display)}.font-body{font-family:var(--font-body)}.shell{width:100%;max-width:72rem;margin-inline:auto;padding-inline:1.5rem}@media(min-width:768px){.shell{padding-inline:2.5rem}}@media(min-width:1280px){.shell{max-width:80rem;padding-inline:3.5rem}}.section-pad{padding-top:4.5rem;padding-bottom:4.5rem}@media(min-width:768px){.section-pad{padding-top:5.5rem;padding-bottom:5.5rem}}.project-preview{border:1px solid var(--color-mono-line);cursor:zoom-in;transform-origin:50%;z-index:1;background:0 0;width:fit-content;max-width:100%;padding:0;transition:transform .45s,box-shadow .45s,z-index;display:block;position:relative;overflow:visible}.project-preview--empty{cursor:default;pointer-events:none;background:#fff6;width:100%;height:44vh;overflow:hidden}.project-preview__img{filter:grayscale()contrast(1.05);width:auto;max-width:100%;height:auto;max-height:min(42vh,380px);transition:filter .45s;display:block}.project-preview--large .project-preview__img{max-height:min(48vh,420px)}@media(min-width:768px){.project-preview__img{max-height:min(52vh,560px)}.project-preview--large .project-preview__img{max-height:min(68vh,760px)}}.project-preview:hover{z-index:5;transform:scale(1.06);box-shadow:0 18px 40px #1111111f}.project-preview:hover .project-preview__img{filter:grayscale(0)contrast()}.works-index__item{position:relative}.works-index__item:before{content:"";z-index:1;background:var(--color-mono-ink);transform-origin:top;width:1.5px;height:100%;transition:transform .35s;position:absolute;top:0;left:0;transform:scaleY(0)}.works-index__row{background:0 0;transition:background .35s;position:relative}.works-index__num{color:var(--color-mono-gray);transition:color .3s,letter-spacing .3s,transform .3s}.works-index__title span{background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;transition:background-size .4s;display:inline;position:relative}.works-index__cat{transition:color .3s,opacity .3s}.works-index__item:hover:before,.works-index__item:focus-within:before{transform:scaleY(1)}.works-index__item:hover .works-index__row,.works-index__item:focus-within .works-index__row{background:#11111108}.works-index__item:hover .works-index__num,.works-index__item:focus-within .works-index__num{color:var(--color-mono-ink);letter-spacing:.14em;transform:translate(2px)}.works-index__item:hover .works-index__title span,.works-index__item:focus-within .works-index__title span{background-size:100% 1px}.works-index__item:hover .works-index__cat,.works-index__item:focus-within .works-index__cat{color:var(--color-mono-mute)}@media(prefers-reduced-motion:reduce){.works-index__item:before,.works-index__row,.works-index__num,.works-index__title span,.works-index__cat{transition:none}.works-index__item:hover .works-index__num,.works-index__item:focus-within .works-index__num{transform:none}}.page-atmosphere{background:radial-gradient(80% 55% at 85% 18%,#ffffff59,#0000 58%),radial-gradient(55% 40% at 10% 90%,#e4e0d666,#0000 52%),linear-gradient(#f3f2ee47,#f3f2ee8c 28%,#f3f2eed1 70%,#f3f2eee6)}.nav-bar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f3f2eeb8;border-bottom:1px solid #ddd9d1e6}.hero-screen{isolation:isolate}.hero-screen [data-hero-item],.hero-scroll-hint{opacity:0}.hero-glow{background:radial-gradient(55% 50% at 72% 42%,#ffffffb3,#0000 70%),radial-gradient(40% 35% at 18% 70%,#d2cec459,#0000 65%)}.hero-scroll-hint.is-visible{animation:2.4s ease-in-out infinite hero-hint}@keyframes hero-hint{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.hero-screen .type-display{font-size:clamp(3.75rem,11vw,7.25rem)}.loader-screen{background:var(--color-mono-paper)}.loader-glow{background:radial-gradient(55% 45% at 70% 35%,#ffffffbf,#0000 68%),radial-gradient(40% 35% at 20% 75%,#d2cec466,#0000 65%)}.loader-brand{justify-content:center;font-size:clamp(4.5rem,16vw,9rem);line-height:.92;display:flex}.loader-brand__slot{padding-bottom:.06em;display:inline-block;overflow:hidden}.loader-brand__letter{will-change:transform,opacity;display:inline-block}.loader-corner{border-color:var(--color-mono-ink);opacity:.55;border-style:solid;width:1.25rem;height:1.25rem;position:absolute}.loader-corner--tl{border-width:1px 0 0 1px;top:0;left:0}.loader-corner--tr{border-width:1px 1px 0 0;top:0;right:0}.loader-corner--bl{border-width:0 0 1px 1px;bottom:0;left:0}.loader-corner--br{border-width:0 1px 1px 0;bottom:0;right:0}.loader-bar{transform-origin:0;transform:scaleX(0)}[data-reveal]{opacity:0;will-change:opacity,transform;transform:translateY(1.5rem)}@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1;will-change:auto;transform:none}.hero-screen [data-hero-item],.hero-scroll-hint{opacity:1}.hero-scroll-hint.is-visible{animation:none}.project-preview{transition:box-shadow .2s}.project-preview:hover{transform:none}.loader-brand__letter{will-change:auto}}.hero-nick{margin-top:calc(var(--space-3) * -1);margin-bottom:var(--space-4);letter-spacing:.12em;text-transform:uppercase}.type-label{font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.18em;font-weight:500;line-height:var(--leading-meta);text-transform:uppercase;color:var(--color-mono-gray)}.type-display{font-family:var(--font-display);font-size:var(--text-display);letter-spacing:-.04em;font-weight:600;line-height:var(--leading-display);color:var(--color-mono-ink)}.type-h1{font-family:var(--font-display);font-size:var(--text-h1);letter-spacing:-.03em;font-weight:600;line-height:var(--leading-title);color:var(--color-mono-ink)}.type-h2{font-family:var(--font-display);font-size:var(--text-h2);letter-spacing:-.025em;font-weight:600;line-height:var(--leading-title);color:var(--color-mono-ink)}.type-deck{font-family:var(--font-body);font-size:var(--text-deck);letter-spacing:-.01em;font-weight:400;line-height:var(--leading-deck);color:var(--color-mono-mute);max-width:36rem}.type-body{font-family:var(--font-body);font-size:var(--text-body);font-weight:400;line-height:var(--leading-body);color:var(--color-mono-mute);max-width:38rem}.type-meta{font-family:var(--font-body);font-size:var(--text-meta);letter-spacing:.02em;font-weight:400;line-height:var(--leading-meta);color:var(--color-mono-gray)}.type-stack{flex-direction:column;align-items:flex-start;display:flex}.type-stack>.type-label{margin-bottom:var(--space-3)}.type-stack>.type-display,.type-stack>.type-h1,.type-stack>.type-h2{margin-bottom:var(--space-4)}.type-stack>.hero-nick{margin-top:calc(var(--space-3) * -.5);margin-bottom:var(--space-4)}.type-stack>.type-deck,.type-stack>.type-body{margin-bottom:var(--space-5)}.type-stack>.type-meta{margin-bottom:var(--space-4)}.type-stack>.type-actions{margin-top:var(--space-2);align-items:center;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.btn{border:1px solid var(--color-mono-ink);font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.16em;text-transform:uppercase;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.35rem;font-weight:500;transition:background .2s,color .2s;display:inline-flex}.btn-solid{background:var(--color-mono-ink);color:var(--color-mono-paper)}.btn-solid:hover{color:var(--color-mono-ink);background:0 0}.btn-live{isolation:isolate;color:var(--color-mono-ink);background:0 0;border-color:#0000;position:relative}.btn-live:hover{background:var(--color-mono-ink);color:var(--color-mono-paper);border-color:var(--color-mono-ink)}.btn-live:before,.btn-live:after{content:"";border:1px solid var(--color-mono-ink);pointer-events:none;opacity:0;background:0 0;position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px}.btn-live:before{animation:2.8s ease-out infinite live-ring}.btn-live:after{animation:2.8s ease-out 1.4s infinite live-ring}@keyframes live-ring{0%{opacity:.5;top:-2px;right:-2px;bottom:-2px;left:-2px}70%{opacity:0;top:-8px;right:-8px;bottom:-8px;left:-8px}to{opacity:0;top:-8px;right:-8px;bottom:-8px;left:-8px}}@media(prefers-reduced-motion:reduce){.btn-live:before,.btn-live:after{opacity:.4;animation:none;top:-3px;right:-3px;bottom:-3px;left:-3px}}.btn-ghost{color:var(--color-mono-ink);background:0 0}.btn-ghost:hover{background:var(--color-mono-ink);color:var(--color-mono-paper)}.btn-copy{min-width:7.75rem;position:relative;overflow:hidden}.btn-copy__label{transition:opacity .28s,transform .28s;display:inline-block}.btn-copy__label--idle{opacity:1;transform:translateY(0)}.btn-copy__label--done{opacity:0;pointer-events:none;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:0;right:0;bottom:0;left:0;transform:translateY(.45em)}.btn-copy.is-copied .btn-copy__label--idle{opacity:0;transform:translateY(-.45em)}.btn-copy.is-copied .btn-copy__label--done{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.btn-copy__label{transition:opacity .15s}.btn-copy__label--idle,.btn-copy__label--done,.btn-copy.is-copied .btn-copy__label--idle,.btn-copy.is-copied .btn-copy__label--done{transform:none}}.link-quiet{font-family:var(--font-body);font-size:var(--text-meta);letter-spacing:.08em;text-transform:uppercase;color:var(--color-mono-gray);transition:color .2s}.link-quiet:hover{color:var(--color-mono-ink)}.custom-scrollbar::-webkit-scrollbar{width:4px}.custom-scrollbar::-webkit-scrollbar-track{background:0 0}.custom-scrollbar::-webkit-scrollbar-thumb{background:#1113;border-radius:2px}::selection{color:#f3f2ee;background:#111}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
