@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:optional;src:url(../media/af21ab248943f479-s.3gj6ciom31zjc.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:optional;src:url(../media/4ae66b896b591e96-s.0_kz_z3o_slvt.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:optional;src:url(../media/21ca8f3f56c22ca2-s.p.1cp9-4nby68jc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.0%;size-adjust:98.7%}.archivo_2aeda6c1-module__Ctce0W__className{font-family:Archivo,Archivo Fallback;font-style:normal}.archivo_2aeda6c1-module__Ctce0W__variable{--font-archivo:"Archivo", "Archivo Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:optional;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:optional;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:optional;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:optional;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:optional;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:optional;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8b606dfb-module__2AV5xG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8b606dfb-module__2AV5xG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking: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-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--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;--tw-duration:initial}}}@layer theme{:root,:host{--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-semibold:600;--font-weight-bold:700;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-lg:.5rem;--radius-xl:.75rem;--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-archivo);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.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}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.top-3{top:calc(var(--spacing) * 3)}.right-3{right:calc(var(--spacing) * 3)}.-bottom-4{bottom:calc(var(--spacing) * -4)}.left-1\/2{left:50%}.isolate{isolation:isolate}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-0{height:calc(var(--spacing) * 0)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-16{height:calc(var(--spacing) * 16)}.h-\[22px\]{height:22px}.h-auto{height:auto}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-0{width:calc(var(--spacing) * 0)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-16{width:calc(var(--spacing) * 16)}.w-\[22px\]{width:22px}.w-full{width:100%}.flex-1{flex:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-3{gap:calc(var(--spacing) * 3)}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-border-primary{border-color:var(--border-primary)}.bg-background-primary{background-color:var(--background-primary)}.bg-background-secondary{background-color:var(--background-secondary)}.bg-surface-primary{background-color:var(--surface-primary)}.bg-transparent{background-color:#0000}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-8{padding:calc(var(--spacing) * 8)}.p-px{padding:1px}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-text-primary{color:var(--text-primary)}.text-text-secondary{color:var(--text-secondary)}.text-text-tertiary{color:var(--text-tertiary)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-50{opacity:.5}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-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,)}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl));-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,)}.backdrop-filter{-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))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}@media (hover:hover){.hover\:border-border-strong:hover{border-color:var(--border-strong)}.hover\:bg-surface-hover:hover{background-color:var(--surface-hover)}.hover\:bg-surface-primary:hover{background-color:var(--surface-primary)}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:fixed:focus{position:fixed}.focus\:top-4:focus{top:calc(var(--spacing) * 4)}.focus\:left-4:focus{left:calc(var(--spacing) * 4)}.focus\:z-100:focus{z-index:100}.focus\:rounded-lg:focus{border-radius:var(--radius-lg)}.focus\:bg-accent-fill:focus{background-color:var(--accent-fill)}.focus\:px-4:focus{padding-inline:calc(var(--spacing) * 4)}.focus\:py-2:focus{padding-block:calc(var(--spacing) * 2)}.focus\:text-sm:focus{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.focus\:font-semibold:focus{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.focus\:text-white:focus{color:var(--color-white)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-accent-primary:focus-visible{--tw-ring-color:var(--accent-primary)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-background-primary:focus-visible{--tw-ring-offset-color:var(--background-primary)}@media (min-width:64rem){.lg\:order-1{order:1}.lg\:order-2{order:2}}}:root{--scene-cyan:#00d4ff;--scene-pink:#ff6b9d;--background-primary:#f5f5f8;--background-secondary:#ececf1;--background-tertiary:#e4e4ea;--text-primary:#1a1923;--text-secondary:#474652;--text-tertiary:#5d5c68;--border-primary:#d4d3da;--border-secondary:#dfdfe5;--border-strong:#bdbcc6;--surface-primary:#ececf1;--surface-secondary:#f0eff4;--surface-hover:#e4e4ea;--accent-primary:#6635c7;--accent-hover:#571db2;--accent-soft:#6635c71a;--accent-fill:#6c3ccd;--accent-fill-hover:#5c25b9;--success:#00774f;--warning:#ad7300;--error:#b7162d}@supports (color:lab(0% 0 0)){:root{--background-primary:lab(96.4732% .602454 -1.77869);--background-secondary:lab(93.5543% .846654 -2.48784);--background-tertiary:lab(90.6352% 1.09318 -3.19563);--text-primary:lab(9.30543% 2.77898 -6.91725);--text-secondary:lab(30.1989% 2.60115 -6.99964);--text-tertiary:lab(39.4816% 2.56524 -7.01883);--border-primary:lab(84.8255% 1.2182 -3.54826);--border-secondary:lab(88.9047% .970036 -2.84162);--border-strong:lab(76.6664% 1.72332 -4.95596);--surface-primary:lab(93.5543% .846654 -2.48784);--surface-secondary:lab(94.7238% .724286 -2.13342);--surface-hover:lab(90.6352% 1.09318 -3.19563);--accent-primary:lab(35.8977% 47.1253 -69.135);--accent-hover:lab(28.598% 50.1681 -69.2063);--accent-soft:lab(35.8977% 47.1253 -69.135/.1);--accent-fill:lab(38.3077% 46.2857 -69.1374);--accent-fill-hover:lab(31.045% 49.053 -69.1662);--success:lab(43.7082% -44.6204 15.4091);--warning:lab(53.3971% 19.8695 72.029);--error:lab(40.0011% 60.7611 33.4379)}}.dark{--background-primary:#0b0a10;--background-secondary:#0f0e15;--background-tertiary:#18171f;--text-primary:#f1f1f5;--text-secondary:#b7b6bf;--text-tertiary:#8c8b95;--border-primary:#282732;--border-secondary:#1f1e27;--border-strong:#3d3b4a;--surface-primary:#14131a;--surface-secondary:#0f0e15;--surface-hover:#1a1922;--accent-primary:#9473f7;--accent-hover:#a88fff;--accent-soft:#9473f71f;--accent-fill:#764adb;--accent-fill-hover:#6635c7;--success:#00b47b;--warning:#e1a035;--error:#e94f55}@supports (color:lab(0% 0 0)){.dark{--background-primary:lab(2.98259% .867717 -2.47158);--background-secondary:lab(4.34648% 1.20017 -3.42506);--background-tertiary:lab(8.19227% 2.17175 -5.55581);--text-primary:lab(95.3132% .602484 -1.77865);--text-secondary:lab(74.3659% 1.47179 -4.25146);--text-tertiary:lab(58.0955% 1.86545 -5.29813);--border-primary:lab(16.2719% 2.69394 -6.95415);--border-secondary:lab(11.6517% 2.43854 -6.25238);--border-strong:lab(25.5007% 3.35662 -8.69767);--surface-primary:lab(6.06347% 1.73716 -4.89182);--surface-secondary:lab(4.34648% 1.20017 -3.42506);--surface-hover:lab(9.34148% 2.3115 -5.90127);--accent-primary:lab(56.6006% 36.4559 -62.8664);--accent-hover:lab(65.3841% 28.2615 -53.3072);--accent-soft:lab(56.6006% 36.4559 -62.8664/.12);--accent-fill:lab(43.1025% 44.8049 -69.1669);--accent-fill-hover:lab(35.8977% 47.1253 -69.135);--success:lab(64.8605% -50.9109 17.6672);--warning:lab(70.8816% 18.4726 62.0335);--error:lab(56.276% 60.5459 31.3324)}}.text-display{letter-spacing:-.02em;font-variation-settings:"wdth" 125;font-size:clamp(2.75rem,6vw,4.5rem);font-weight:700;line-height:1.05}.text-headline{letter-spacing:-.015em;font-variation-settings:"wdth" 118;font-size:clamp(2rem,4vw,2.75rem);font-weight:650;line-height:1.1}.text-title{letter-spacing:-.005em;font-size:1.25rem;font-weight:600;line-height:1.3}.text-label{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.04em;font-size:.75rem;font-weight:500;line-height:1.4}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}body{background:var(--background-primary);color:var(--text-primary);font-family:var(--font-archivo), system-ui, sans-serif;line-height:1.6;transition:background-color .3s ease-in-out,color .3s ease-in-out;overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}.theme-transition{transition:background-color .3s ease-in-out,color .3s ease-in-out,border-color .3s ease-in-out,box-shadow .3s ease-in-out}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--background-secondary)}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}::selection{background:var(--accent-primary);color:#f8f8fc;color:lab(97.6332% .602394 -1.77872)}canvas{touch-action:pan-y}canvas:active{cursor:grabbing!important}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-scene canvas{display:none}}.portfolio-page{isolation:isolate}.portfolio-container{width:min(100% - 2rem,80rem);margin-inline:auto}.portfolio-section{padding-block:clamp(4.5rem,9vw,8rem);scroll-margin-top:5rem;position:relative}.section-index{color:var(--accent-primary);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.06em;margin-block-end:.75rem;font-size:.75rem;font-weight:600;display:block}.section-intro{margin-block-end:clamp(3rem,7vw,5.5rem)}.section-intro h2{text-wrap:balance;max-width:14ch}.section-intro>p,.section-intro--split>p{max-width:42rem;color:var(--text-secondary);font-size:clamp(1rem,.95rem + .3vw,1.125rem);line-height:1.7}.button-primary,.button-secondary{border:1px solid #0000;border-radius:.75rem;justify-content:center;align-items:center;gap:.65rem;min-height:48px;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:650;line-height:1.2;text-decoration:none;transition:background-color .18s,border-color .18s,color .18s;display:inline-flex}.button-primary{background:var(--accent-fill);color:#f8f8fc;color:lab(97.6332% .602394 -1.77872)}.button-primary:hover{background:var(--accent-fill-hover)}.button-secondary{border-color:var(--border-strong);background:var(--background-primary)}@supports (color:color-mix(in lab, red, red)){.button-secondary{background:color-mix(in oklch, var(--background-primary) 88%, transparent)}}.button-secondary{color:var(--text-primary)}.button-secondary:hover{background:var(--surface-primary)}.site-header{z-index:60;transition:background-color var(--motion-interface,.22s) var(--ease-out-quint,cubic-bezier(.22, 1, .36, 1)), border-color var(--motion-interface,.22s) var(--ease-out-quint,cubic-bezier(.22, 1, .36, 1));background:0 0;border-block-end:1px solid #0000;position:fixed;inset:0 0 auto}.site-header--solid{border-color:var(--border-primary);background:var(--background-primary)}.site-header--minimal{-webkit-backdrop-filter:none;backdrop-filter:none}.site-header__nav{justify-content:space-between;align-items:center;gap:1rem;min-height:4.5rem;display:flex}.site-header__brand{min-height:44px;color:var(--text-primary);align-items:center;gap:.75rem;font-size:.875rem;font-weight:650;text-decoration:none;display:inline-flex}.site-header__brand img,.site-header__brand svg{transition:transform .36s var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1))}.site-header__brand:hover img,.site-header__brand:hover svg,.site-header__brand:focus-visible img,.site-header__brand:focus-visible svg{transform:rotate(6deg)scale(1.06)}.site-header__links{align-items:center;gap:.25rem;list-style:none;display:none}.site-header__links a{min-height:44px;color:var(--text-secondary);transition:color var(--motion-interface,.22s) var(--ease-out-quart,cubic-bezier(.25, 1, .5, 1));align-items:center;gap:.4rem;padding-inline:.75rem;font-size:.875rem;font-weight:550;text-decoration:none;display:inline-flex;position:relative}.site-header__links a>span{color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.625rem}.site-header__links a:hover,.site-header__links a[aria-current=location]{color:var(--text-primary)}.site-header__active-indicator{background:var(--accent-primary);border-radius:999px;height:2px;position:absolute;inset:auto .75rem 0}.site-header__actions{align-items:center;gap:.5rem;display:flex}.site-header__actions>button,.site-header__menu-button{min-width:44px;min-height:44px}.site-header__resume{border:1px solid var(--border-primary);min-height:44px;color:var(--text-primary);transition:background-color var(--motion-interface,.22s) var(--ease-out-quint,cubic-bezier(.22, 1, .36, 1)), border-color var(--motion-interface,.22s) var(--ease-out-quint,cubic-bezier(.22, 1, .36, 1));border-radius:.6rem;align-items:center;padding-inline:.85rem;font-size:.8125rem;font-weight:600;text-decoration:none;display:none}.site-header__resume:hover{border-color:var(--border-strong);background:var(--surface-primary)}.site-header__menu-button{border:1px solid var(--border-primary);background:var(--surface-primary);color:var(--text-primary);cursor:pointer;transition:border-color var(--motion-interface,.22s) var(--ease-out-quint,cubic-bezier(.22, 1, .36, 1)), background-color var(--motion-interface,.22s) var(--ease-out-quint,cubic-bezier(.22, 1, .36, 1)), transform var(--motion-interface,.22s) var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1));border-radius:.6rem;justify-content:center;align-items:center;display:inline-flex}.site-header__menu-button:hover,.site-header__menu-button:focus-visible{border-color:var(--border-strong);background:var(--surface-secondary);transform:translateY(-1px)}.site-header__menu-glyph{width:1.25rem;height:.875rem;display:block;position:relative}.site-header__menu-glyph-line{transform-origin:100%;height:1.5px;transition:transform .36s var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1));background:currentColor;border-radius:999px;position:absolute;inset-inline-end:0}.site-header__menu-glyph-line--upper{width:100%;inset-block-start:.125rem}.site-header__menu-glyph-line--lower{width:72%;inset-block-end:.125rem}.site-header__menu-glyph-point{background:var(--accent-primary);width:.1875rem;height:.1875rem;transition:opacity var(--motion-interface,.22s) var(--ease-out-quart,cubic-bezier(.25, 1, .5, 1)), transform .36s var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1));border-radius:50%;position:absolute;inset-block-end:.0625rem;inset-inline-start:0}.site-header__menu-button:hover .site-header__menu-glyph-line--upper,.site-header__menu-button:focus-visible .site-header__menu-glyph-line--upper{transform:scaleX(.82)}.site-header__menu-button:hover .site-header__menu-glyph-line--lower,.site-header__menu-button:focus-visible .site-header__menu-glyph-line--lower{transform:scaleX(1.22)}.site-header__menu-button:hover .site-header__menu-glyph-point,.site-header__menu-button:focus-visible .site-header__menu-glyph-point{opacity:.72;transform:translate(.125rem)}.mobile-navigation{z-index:70;background:var(--background-primary);isolation:isolate;opacity:0;pointer-events:none;visibility:hidden;height:100dvh;transition:opacity .28s var(--ease-out-quint,cubic-bezier(.22, 1, .36, 1)), visibility 0s linear .28s;position:fixed;inset:0;overflow:hidden}.mobile-navigation--open{opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s}.mobile-navigation__topbar{z-index:3;border-block-end:1px solid var(--border-primary);justify-content:space-between;align-items:center;width:min(100% - 2rem,80rem);min-height:4.5rem;margin-inline:auto;display:flex;position:relative}.mobile-navigation__brand{z-index:1;position:relative}.mobile-navigation__topbar-actions{align-items:center;gap:.5rem;display:flex}.mobile-navigation__topbar-actions>button{min-width:44px;min-height:44px}.mobile-navigation__geometry-wrap{z-index:0;aspect-ratio:1;width:min(112vw,38rem);color:var(--accent-primary);opacity:0;pointer-events:none;transition:opacity .72s var(--ease-out-quart,cubic-bezier(.25, 1, .5, 1)) 80ms, transform .9s var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1)) 80ms;position:absolute;inset:auto -34vw -12vw auto;transform:scale(.92)rotate(-7deg)}.mobile-navigation--open .mobile-navigation__geometry-wrap{opacity:.14;transform:scale(1)rotate(0)}.mobile-navigation__geometry{width:100%;height:100%;animation:120s linear infinite paused mobile-navigation-geometry-spin}.mobile-navigation--open .mobile-navigation__geometry{animation-play-state:running}.mobile-navigation__close{border:1px solid var(--border-primary);background:var(--surface-primary);width:44px;height:44px;color:var(--text-primary);cursor:pointer;transition:border-color var(--motion-interface,.22s) var(--ease-out-quint,cubic-bezier(.22, 1, .36, 1)), background-color var(--motion-interface,.22s) var(--ease-out-quint,cubic-bezier(.22, 1, .36, 1)), transform var(--motion-interface,.22s) var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1));border-radius:.6rem;justify-content:center;align-items:center;display:inline-flex}.mobile-navigation__close:hover,.mobile-navigation__close:focus-visible{border-color:var(--border-strong);background:var(--surface-secondary);transform:translateY(-1px)}.mobile-navigation__close svg{width:1.25rem;height:1.25rem}.mobile-navigation__body{z-index:2;height:calc(100dvh - 4.5rem);padding-block:clamp(1.5rem, 5vh, 3.25rem) max(1.25rem, env(safe-area-inset-bottom));overscroll-behavior:contain;grid-template-rows:minmax(0,1fr) auto;gap:clamp(1.5rem,4vh,2.5rem);display:grid;position:relative;overflow:hidden auto}.mobile-navigation__body nav{align-items:center;min-height:0;display:flex}.mobile-navigation ul{width:100%;list-style:none}.mobile-navigation nav a{border-block-end:1px solid var(--border-primary);min-height:clamp(3.75rem,11vh,5.25rem);color:var(--text-secondary);transition:color var(--motion-interface,.22s) var(--ease-out-quart,cubic-bezier(.25, 1, .5, 1));grid-template-columns:2rem .45rem minmax(0,1fr);align-items:center;gap:.8rem;text-decoration:none;display:grid}.mobile-navigation nav li:first-child a{border-block-start:1px solid var(--border-primary)}.mobile-navigation nav a:hover,.mobile-navigation nav a:focus-visible,.mobile-navigation nav a[aria-current=location]{color:var(--text-primary)}.mobile-navigation__number{color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.6875rem}.mobile-navigation__marker{border:1px solid var(--accent-primary);opacity:.5;width:.32rem;height:.32rem;transition:background-color var(--motion-interface,.22s) var(--ease-out-quart,cubic-bezier(.25, 1, .5, 1)), opacity var(--motion-interface,.22s) var(--ease-out-quart,cubic-bezier(.25, 1, .5, 1)), transform var(--motion-interface,.22s) var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1));border-radius:50%}.mobile-navigation nav a:hover .mobile-navigation__marker,.mobile-navigation nav a:focus-visible .mobile-navigation__marker,.mobile-navigation nav a[aria-current=location] .mobile-navigation__marker{background:var(--accent-primary);opacity:1;transform:scale(1.25)}.mobile-navigation__title{font-family:var(--font-archivo), system-ui, sans-serif;letter-spacing:-.04em;transition:transform .36s var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1));font-size:clamp(1.55rem,7.4vw,2.65rem);font-weight:650}.mobile-navigation nav a:hover .mobile-navigation__title,.mobile-navigation nav a:focus-visible .mobile-navigation__title,.mobile-navigation nav a[aria-current=location] .mobile-navigation__title{transform:translate(.5rem)}.mobile-navigation__footer{gap:.75rem;display:grid}.mobile-navigation__resume{background:var(--accent-fill);color:#f8f8fc;color:lab(97.6332% .602394 -1.77872);min-height:48px;transition:background-color var(--motion-interface,.22s) var(--ease-out-quint,cubic-bezier(.22, 1, .36, 1)), transform var(--motion-interface,.22s) var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1));border-radius:.75rem;justify-content:center;align-items:center;font-weight:650;text-decoration:none;display:inline-flex}.mobile-navigation__resume:hover,.mobile-navigation__resume:focus-visible{background:var(--accent-fill-hover);transform:translateY(-1px)}.mobile-navigation__professional-links{flex-wrap:wrap;gap:.5rem;display:flex}.mobile-navigation__professional-links a{border:1px solid var(--border-primary);min-height:44px;color:var(--text-secondary);transition:border-color var(--motion-interface,.22s) var(--ease-out-quint,cubic-bezier(.22, 1, .36, 1)), color var(--motion-interface,.22s) var(--ease-out-quart,cubic-bezier(.25, 1, .5, 1)), transform var(--motion-interface,.22s) var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1));border-radius:.6rem;align-items:center;padding-inline:.85rem;font-size:.875rem;text-decoration:none;display:inline-flex}.mobile-navigation__professional-links a:hover,.mobile-navigation__professional-links a:focus-visible{border-color:var(--border-strong);color:var(--text-primary);transform:translateY(-1px)}@keyframes mobile-navigation-geometry-spin{to{transform:rotate(360deg)}}.hero{background:linear-gradient(to bottom, var(--background-primary), var(--background-secondary) 58%, var(--background-primary));align-items:center;min-height:100svh;padding-block:clamp(7.5rem,16vh,11rem) 6.5rem;scroll-margin-top:4.5rem;display:grid;position:relative;overflow:clip}.hero-grid{background-image:linear-gradient(to right, var(--border-primary) 1px, transparent 1px), linear-gradient(to bottom, var(--border-primary) 1px, transparent 1px);opacity:.18;pointer-events:none;background-size:clamp(3rem,8vw,6rem) clamp(3rem,8vw,6rem);position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 74%,#000,#0000 70%);mask-image:radial-gradient(circle at 74%,#000,#0000 70%)}.hero__inner{z-index:2;position:relative}.hero__copy{max-width:47rem}.hero__identity{color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.035em;flex-wrap:wrap;align-items:center;gap:.65rem;margin-block-end:1.25rem;font-size:.75rem;font-weight:550;display:flex}.hero__identity span:first-child{color:var(--accent-primary)}.hero h1{text-wrap:balance;max-width:12ch}.hero__summary{max-width:39rem;color:var(--text-secondary);margin-block-start:1.5rem;font-size:clamp(1.05rem,.95rem + .55vw,1.3rem);line-height:1.65}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-block-start:2rem;display:flex}.hero__proof{border-block:1px solid var(--border-primary);flex-wrap:wrap;gap:0;margin-block-start:2.25rem;display:flex}.hero__proof span{min-height:44px;color:var(--text-secondary);align-items:center;font-size:.8125rem;font-weight:550;display:inline-flex}.hero__proof span:not(:last-child):after{background:var(--border-strong);content:"";width:1px;height:1rem;margin-inline:.85rem}.hero__profiles{flex-wrap:wrap;gap:.25rem 1rem;margin-block-start:1rem;display:flex}.hero__profiles a,.contact-links a,.case-study__links a,.work-afterword a{min-height:44px;color:var(--text-secondary);align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.hero__profiles a:hover,.contact-links a:hover,.case-study__links a:hover,.work-afterword a:hover{color:var(--accent-primary)}.hero__handoff{z-index:2;min-height:44px;color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.04em;align-items:center;gap:.75rem;font-size:.6875rem;text-decoration:none;display:none;position:absolute;inset:auto auto 1.5rem 50%;transform:translate(-50%)}.hero-scene{z-index:1;opacity:.55;pointer-events:none;width:min(115vw,44rem);height:52%;position:absolute;inset:auto -35% -8% auto;-webkit-mask-image:radial-gradient(circle,#000 35%,#0000 72%);mask-image:radial-gradient(circle,#000 35%,#0000 72%)}.hero-geometry-fallback{width:100%;height:100%;color:var(--accent-primary);place-items:center;display:grid}.hero-geometry-fallback svg{width:min(100%,42rem);height:auto}.work-section{border-block-start:1px solid var(--border-primary);background:var(--background-secondary)}.case-study-list{border-block-start:1px solid var(--border-strong)}.case-study{border-block-end:1px solid var(--border-strong);padding-block:clamp(3.5rem,7vw,6.5rem);scroll-margin-top:6rem}.case-study__heading{grid-template-columns:2.5rem minmax(0,1fr);gap:1rem;margin-block-end:2rem;display:grid}.case-study__number{color:var(--accent-primary);font-family:var(--font-geist-mono), ui-monospace, monospace;padding-block-start:.25rem;font-size:.75rem;font-weight:600}.case-study__status{color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.035em;margin-block-end:.45rem;font-size:.6875rem;font-weight:550}.case-study__heading h3{color:var(--text-primary);font-variation-settings:"wdth" 120;letter-spacing:-.02em;text-wrap:balance;font-size:clamp(2rem,5vw,3.75rem);font-weight:690;line-height:1.02}.case-study__role{color:var(--text-secondary);margin-block-start:.65rem;font-size:.9375rem}.case-study__body{gap:clamp(2rem,6vw,5rem);display:grid}.case-study__visual{align-self:start}.case-study__image-frame{aspect-ratio:8/5;border:1px solid var(--border-strong);background:var(--surface-primary);border-radius:1rem;position:relative;overflow:hidden}.case-study__image-frame:after{border:1px solid var(--text-primary);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.case-study__image-frame:after{border:1px solid color-mix(in oklch, var(--text-primary) 8%, transparent)}}.case-study__image-frame:after{border-radius:inherit;content:"";pointer-events:none}.case-study__image{object-fit:cover;object-position:top center;width:100%;height:100%}.case-artifact{z-index:1;border:1px solid var(--border-strong);background:var(--background-primary);border-radius:.75rem;width:calc(100% - 1.5rem);margin:-1.5rem auto 0;padding:1rem;position:relative}.case-artifact__header{border-block-end:1px solid var(--border-primary);color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.05em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;padding-block-end:.75rem;font-size:.625rem;display:flex}.case-artifact__grid{background:var(--border-primary);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-block-start:1px;display:grid}.case-artifact__grid>div{background:var(--background-primary);min-width:0;padding:.75rem}.case-artifact dt{color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;text-overflow:ellipsis;white-space:nowrap;font-size:.625rem;overflow:hidden}.case-artifact dd{overflow-wrap:anywhere;color:var(--text-primary);margin-block-start:.25rem;font-size:clamp(.875rem,2.8vw,1.05rem);font-weight:650}.case-study__content{min-width:0}.case-study__summary{color:var(--text-primary);font-size:clamp(1.125rem,1rem + .55vw,1.35rem);font-weight:520;line-height:1.55}.case-study__block{border-block-start:1px solid var(--border-primary);margin-block-start:1.75rem;padding-block-start:1.25rem}.case-study__block h4{color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.045em;text-transform:uppercase;margin-block-end:.7rem;font-size:.6875rem;font-weight:600}.case-study__block p,.case-study__block li{color:var(--text-secondary);font-size:.9375rem;line-height:1.65}.case-study__block ul{gap:.65rem;list-style:none;display:grid}.case-study__block:not(.case-study__evidence) li{padding-inline-start:1rem;position:relative}.case-study__block:not(.case-study__evidence) li:before{background:var(--accent-primary);content:"";border-radius:50%;width:4px;height:4px;position:absolute;inset:.68rem auto auto 0}.case-study__evidence li{grid-template-columns:1.2rem 1fr;gap:.55rem;display:grid}.case-study__evidence svg{color:var(--accent-primary);margin-block-start:.2rem}.case-study__boundary{border:1px solid var(--border-primary);background:var(--surface-primary);color:var(--text-secondary);border-radius:.75rem;margin-block-start:1.5rem;padding:.9rem 1rem;font-size:.8125rem;line-height:1.55}.case-study__boundary span{color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.04em;text-transform:uppercase;margin-block-end:.2rem;font-size:.625rem;font-weight:600;display:block}.case-study__stack{flex-wrap:wrap;gap:.45rem;margin-block-start:1.25rem;display:flex}.case-study__stack span{border:1px solid var(--border-primary);background:var(--surface-primary);color:var(--text-secondary);border-radius:999px;padding:.3rem .7rem;font-size:.75rem;font-weight:550}.case-study__links{flex-wrap:wrap;gap:.25rem 1.25rem;margin-block-start:1rem;display:flex}.work-afterword{gap:1rem;padding-block-start:2rem;display:grid}.work-afterword p{max-width:42rem;color:var(--text-secondary)}.work-afterword a{width:fit-content}.approach-section{background:var(--background-primary)}.principle-register{border-block-start:1px solid var(--border-strong);list-style:none;display:grid}.principle-register>li{border-block-end:1px solid var(--border-primary);grid-template-columns:2.5rem minmax(0,1fr);gap:1rem;padding-block:2rem;display:grid}.principle-register__index{color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.6875rem}.principle-register h3{color:var(--text-primary);font-size:clamp(1.25rem,1rem + .8vw,1.65rem);font-weight:650}.principle-register p{color:var(--text-secondary);margin-block-start:.75rem;line-height:1.65}.principle-register .principle-register__evidence{color:var(--text-tertiary);font-size:.875rem}.working-set{border:1px solid var(--border-strong);background:var(--surface-primary);border-radius:1rem;gap:2rem;margin-block-start:clamp(3rem,6vw,5rem);padding:clamp(1.5rem,4vw,2.5rem);display:grid}.working-set__intro>p:last-child{max-width:30rem;color:var(--text-secondary);margin-block-start:.75rem}.working-set dl{display:grid}.working-set dl>div{border-block-start:1px solid var(--border-primary);gap:.4rem;padding-block:1rem;display:grid}.working-set dt{color:var(--text-tertiary);font-size:.8125rem;font-weight:600}.working-set dd{color:var(--text-primary);font-size:.9375rem;line-height:1.6}.experience-section{border-block:1px solid var(--border-primary);background:var(--background-secondary)}.experience-layout{gap:1rem;display:grid}.experience-primary,.credential-register article,.additional-experience{border:1px solid var(--border-primary);background:var(--surface-primary);border-radius:1rem}.experience-primary{padding:clamp(1.5rem,4vw,2.5rem)}.experience-meta,.credential-register__meta{color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.025em;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;font-size:.6875rem;display:flex}.experience-primary h3{color:var(--text-primary);font-variation-settings:"wdth" 118;letter-spacing:-.02em;margin-block-start:1.5rem;font-size:clamp(1.75rem,4vw,2.75rem);font-weight:680;line-height:1.08}.experience-primary ul,.credential-register ul{gap:.75rem;margin-block-start:1.5rem;list-style:none;display:grid}.experience-primary li,.credential-register li{color:var(--text-secondary);padding-inline-start:1rem;font-size:.9375rem;line-height:1.65;position:relative}.experience-primary li:before,.credential-register li:before{background:var(--accent-primary);content:"";border-radius:50%;width:4px;height:4px;position:absolute;inset:.68rem auto auto 0}.credential-register{gap:1rem;display:grid}.credential-register article{padding:1.5rem}.credential-register h3{color:var(--text-primary);margin-block-start:1rem;font-size:1.25rem;font-weight:650}.additional-experience{gap:1rem;margin-block-start:1rem;padding:1.5rem;display:grid}.additional-experience h3{color:var(--text-primary);margin-block-start:.35rem;font-size:1.125rem;font-weight:650}.additional-experience>div>p:last-child,.additional-experience>p{color:var(--text-secondary);font-size:.875rem;line-height:1.6}.additional-experience .additional-experience__date{color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.6875rem}.contact-section{background:var(--background-primary)}.contact-layout{gap:clamp(3rem,8vw,6rem);display:grid}.contact-intro h2{text-wrap:balance;max-width:12ch}.contact-intro>p{max-width:38rem;color:var(--text-secondary);margin-block-start:1.5rem;font-size:clamp(1rem,.95rem + .3vw,1.125rem);line-height:1.7}.contact-details{border-block-start:1px solid var(--border-strong);margin-block-start:2.5rem}.contact-details>div{border-block-end:1px solid var(--border-primary);gap:.4rem;padding-block:1rem;display:grid}.contact-details dt{color:var(--text-tertiary);font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:.6875rem}.contact-details dd{color:var(--text-primary);font-size:.9375rem}.contact-details a{color:inherit;-webkit-text-decoration-color:var(--border-strong);-webkit-text-decoration-color:var(--border-strong);-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:.25em}.contact-details a:hover{color:var(--accent-primary)}.contact-links{flex-wrap:wrap;gap:.25rem 1.25rem;margin-block-start:1rem;display:flex}.client-route{border:1px solid var(--border-primary);background:var(--surface-primary);border-radius:.75rem;margin-block-start:2rem;padding:1rem}.client-route p{color:var(--text-secondary);font-size:.8125rem}.client-route a{min-height:44px;color:var(--text-primary);align-items:center;gap:.4rem;font-size:.875rem;font-weight:650;text-decoration:none;display:inline-flex}.client-route a:hover{color:var(--accent-primary)}.contact-form-shell{border:1px solid var(--border-strong);background:var(--surface-primary);border-radius:1rem;padding:clamp(1.25rem,4vw,2.25rem)}.contact-form-heading{border-block-end:1px solid var(--border-primary);gap:.65rem;padding-block-end:1.5rem;display:grid}.contact-form-heading>p:last-child{color:var(--text-secondary);font-size:.875rem}.contact-form-shell form{gap:1.25rem;margin-block-start:1.5rem;display:grid}.contact-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-field{gap:.45rem;display:grid}.form-field label{color:var(--text-secondary);font-size:.8125rem;font-weight:600}.form-field input,.form-field textarea{border:1px solid var(--border-primary);background:var(--background-primary);width:100%;min-height:48px;color:var(--text-primary);font:inherit;border-radius:.75rem;padding:.75rem .9rem;font-size:1rem;line-height:1.5;transition:border-color .16s,box-shadow .16s}.form-field textarea{resize:vertical;min-height:9rem}.form-field input:focus,.form-field textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.form-field input[aria-invalid=true],.form-field textarea[aria-invalid=true]{border-color:var(--error)}.field-help,.field-error{font-size:.75rem;line-height:1.5}.field-help{color:var(--text-tertiary)}.field-error{color:var(--error)}.contact-form-shell button[type=submit]{background:var(--accent-fill);color:#f8f8fc;color:lab(97.6332% .602394 -1.77872);cursor:pointer;border:0;border-radius:.75rem;justify-content:center;align-items:center;gap:.65rem;min-height:48px;font-weight:650;transition:background-color .18s,opacity .18s;display:inline-flex}.contact-form-shell button[type=submit]:hover:not(:disabled){background:var(--accent-fill-hover)}.contact-form-shell button[type=submit]:disabled{cursor:wait;opacity:.65}.contact-status{min-height:1.5rem}.contact-status p{border:1px solid;border-radius:.65rem;padding:.8rem .9rem;font-size:.8125rem;line-height:1.5}.contact-status--success{color:var(--success)}.contact-status--error{color:var(--error)}.contact-status a{color:inherit;text-underline-offset:.2em;font-weight:700}.site-footer{border-block-start:1px solid var(--border-strong);background:var(--background-secondary)}.site-footer__grid{gap:2rem;padding-block:clamp(3rem,7vw,5rem) 2rem;display:grid}.site-footer__identity>a{align-items:center;min-height:44px;display:inline-flex}.site-footer__identity p{max-width:24rem;color:var(--text-tertiary);margin-block-start:.75rem;font-size:.8125rem}.site-footer ul{gap:.2rem;margin-block-start:.75rem;list-style:none;display:grid}.site-footer li a{min-height:44px;color:var(--text-secondary);align-items:center;font-size:.875rem;text-decoration:none;display:inline-flex}.site-footer li a:hover,.site-footer__secondary a:hover{color:var(--accent-primary)}.site-footer__secondary{border-block-start:1px solid var(--border-primary);color:var(--text-tertiary);gap:.75rem;padding-block-start:1.5rem;font-size:.75rem;display:grid}.site-footer__secondary a{color:var(--text-secondary);text-underline-offset:.2em;font-weight:600}@media (min-width:40rem){.portfolio-container{width:min(100% - 3rem,80rem)}.site-header__resume,.hero__handoff{display:inline-flex}.case-artifact{width:calc(100% - 3rem);padding:1.25rem}.case-artifact__grid{grid-template-columns:repeat(4,minmax(0,1fr))}.case-artifact__grid>div{padding:.9rem}.additional-experience{grid-template-columns:minmax(12rem,.8fr) minmax(0,1.5fr) auto;align-items:center}.site-footer__grid{grid-template-columns:minmax(16rem,2fr) repeat(2,minmax(8rem,1fr))}.site-footer__secondary{grid-column:1/-1;grid-template-columns:1fr auto;align-items:center}}@media (min-width:50rem){.mobile-navigation{display:none}.site-header__links{display:flex}.site-header__menu-button{display:none}.section-intro--split{grid-template-columns:minmax(16rem,.85fr) minmax(20rem,1.15fr);align-items:end;gap:4rem;display:grid}.principle-register{grid-template-columns:repeat(3,minmax(0,1fr))}.principle-register>li{border-inline-end:1px solid var(--border-primary);grid-template-columns:1fr;padding:2rem}.principle-register>li:first-child{padding-inline-start:0}.principle-register>li:last-child{border-inline-end:0;padding-inline-end:0}.working-set{grid-template-columns:minmax(15rem,.75fr) minmax(24rem,1.25fr);gap:4rem}.working-set dl>div{grid-template-columns:minmax(8rem,.5fr) minmax(0,1fr);gap:1.5rem}.contact-details>div{grid-template-columns:7rem 1fr;gap:1.5rem}}@media (min-width:64rem){.hero-scene{opacity:.88;pointer-events:auto;width:61%;height:92%;inset:7% -7% 0 auto}.hero__copy{width:58%}.case-study__body{grid-template-columns:minmax(0,1.12fr) minmax(21rem,.88fr);align-items:start}.case-study__content{padding-block-start:.5rem}.experience-layout{grid-template-columns:minmax(0,1.25fr) minmax(20rem,.75fr)}.contact-layout{grid-template-columns:minmax(0,.9fr) minmax(26rem,1.1fr);align-items:start}}@media (max-width:24rem){.portfolio-container{width:min(100% - 1.25rem,80rem)}.site-header__brand>span{display:none}.hero__actions>a{width:100%}.hero__proof{display:grid}.hero__proof span:not(:last-child):after{display:none}.hero__proof span:not(:last-child){border-block-end:1px solid var(--border-primary)}.case-study__heading{grid-template-columns:1.75rem minmax(0,1fr);gap:.5rem}}@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-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-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-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@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}@property --tw-duration{syntax:"*";inherits:false}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}
