/*! tailwindcss v4.3.3 | 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)))){*,::backdrop,:after,:before{--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-font-weight: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-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-ease:initial}}}@layer theme{:host,:root{--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--font-weight-semibold:600;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-body-stack);--default-mono-font-family:var(--font-mono-stack)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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,pre,samp{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\!visible{visibility:visible!important}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.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}}.m-0{margin:0}.m-4{margin:calc(var(--spacing) * 4)}.m-14{margin:calc(var(--spacing) * 14)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.size-control{width:var(--size-control);height:var(--size-control)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-control{min-height:var(--size-control)}.min-h-control-compact{min-height:var(--size-control-compact)}.w-full{width:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.place-items-center{place-items:center}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.rounded{border-radius:.25rem}.rounded-capsule{border-radius:var(--shape-capsule)}.rounded-card{border-radius:var(--shape-card)}.rounded-control{border-radius:var(--shape-control)}.rounded-panel{border-radius:var(--shape-panel)}.border{border-style:var(--tw-border-style);border-width:1px}.border-accent{border-color:var(--sys-accent)}.border-border{border-color:var(--sys-border)}.border-border-strong{border-color:var(--sys-border-strong)}.border-status-danger{border-color:var(--sys-status-danger)}.border-transparent{border-color:#0000}.bg-accent{background-color:var(--sys-accent)}.bg-canvas{background-color:var(--sys-canvas)}.bg-status-danger-bg{background-color:var(--sys-status-danger-bg)}.bg-status-info-bg{background-color:var(--sys-status-info-bg)}.bg-status-success-bg{background-color:var(--sys-status-success-bg)}.bg-status-warning-bg{background-color:var(--sys-status-warning-bg)}.bg-surface{background-color:var(--sys-surface)}.bg-surface-elevated{background-color:var(--sys-surface-elevated)}.bg-surface-tonal{background-color:var(--sys-surface-tonal)}.bg-transparent{background-color:#0000}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-accent{color:var(--sys-accent)}.text-on-accent{color:var(--sys-on-accent)}.text-status-danger{color:var(--sys-status-danger)}.text-status-info{color:var(--sys-status-info)}.text-status-success{color:var(--sys-status-success)}.text-status-warning{color:var(--sys-status-warning)}.text-text{color:var(--sys-text)}.text-text-muted{color:var(--sys-text-muted)}.lowercase{text-transform:lowercase}.no-underline{text-decoration-line:none}.underline-offset-4{text-underline-offset:4px}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow,.shadow-glass{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-glass{--tw-shadow:var(--elevation-glass)}.shadow-medium{--tw-shadow:var(--elevation-medium)}.ring,.shadow-medium{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)}.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,)}.\!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,)!important}.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,)}.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-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))}.ease-standard{--tw-ease:var(--motion-ease-standard);transition-timing-function:var(--motion-ease-standard)}.placeholder\:text-text-subtle::placeholder{color:var(--sys-text-subtle)}@media (hover:hover){.hover\:border-accent:hover{border-color:var(--sys-accent)}.hover\:bg-accent-hover:hover{background-color:var(--sys-accent-hover)}.hover\:bg-surface-tonal:hover{background-color:var(--sys-surface-tonal)}.hover\:text-accent:hover{color:var(--sys-accent)}}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-55:disabled{opacity:.55}}:root,:root[data-theme=light]{color-scheme:light;--sys-canvas:#f5f9fc;--sys-canvas-subtle:#edf4f8;--sys-surface:#fff;--sys-surface-tonal:#f0f6f8;--sys-surface-elevated:#fff;--sys-glass-solid:#f8fbfd;--sys-glass-translucent:#fbfdffc7;--sys-text:#10172a;--sys-text-muted:#53637a;--sys-text-subtle:#5f7089;--sys-border:#d7e2e9;--sys-border-strong:#b7c6d1;--sys-accent:#41b98f;--sys-accent-hover:#289f79;--sys-on-accent:#071b16;--sys-focus:#167db5;--sys-status-success:#23845f;--sys-status-success-bg:#e6f7ef;--sys-status-warning:#a26613;--sys-status-warning-bg:#fff5dc;--sys-status-danger:#b23a48;--sys-status-danger-bg:#fff0f1;--sys-status-info:#167cb5;--sys-status-info-bg:#e9f6fd;--brand-mint:#58c19b;--brand-cyan:#38afe5;--brand-cyan-text:#166f9d;--brand-blue:#4d75ee;--brand-violet:#7446e9;--brand-coral:#ee696e;--brand-amber:#d89932;--brand-label:#21765c;--metric-mint:#58b997;--metric-cyan:#43a9e8;--metric-violet:#7345ed;--metric-amber:#d58b2b;--font-body-stack:var(--font-manrope),Manrope,ui-sans-serif,system-ui,sans-serif;--font-display-stack:var(--font-manrope),Manrope,ui-sans-serif,system-ui,sans-serif;--font-mono-stack:var(--font-jetbrains-mono),"JetBrains Mono",ui-monospace,monospace;--space-page:clamp(1.25rem,5vw,4rem);--space-section:clamp(5.5rem,9vw,8.5rem);--size-control:2.875rem;--size-control-compact:2.5rem;--shape-control:.9rem;--shape-card:1.4rem;--shape-panel:2.25rem;--shape-capsule:999px;--elevation-low:0 .5rem 1.8rem #2a4d5f12;--elevation-medium:0 1.5rem 4.5rem #2a4d5f1f;--elevation-glass:0 1.25rem 4rem #2a4d5f21;--blur-controlled:1.25rem;--motion-duration-fast:.13s;--motion-duration-standard:.22s;--motion-duration-slow:.46s;--motion-ease-standard:cubic-bezier(.2,0,0,1);--motion-ease-emphasized:cubic-bezier(.2,.82,.2,1)}:root[data-theme=dark]{color-scheme:dark;--sys-canvas:#07111e;--sys-canvas-subtle:#0b1828;--sys-surface:#0d1b2a;--sys-surface-tonal:#102234;--sys-surface-elevated:#132638;--sys-glass-solid:#102031;--sys-glass-translucent:#0c1a29c7;--sys-text:#eff7fb;--sys-text-muted:#b1c0cf;--sys-text-subtle:#8497aa;--sys-border:#284054;--sys-border-strong:#466277;--sys-accent:#69cba6;--sys-accent-hover:#88dbbd;--sys-on-accent:#061812;--sys-focus:#70c9f2;--sys-status-success:#83d9b7;--sys-status-success-bg:#123428;--sys-status-warning:#f2c472;--sys-status-warning-bg:#3b2b10;--sys-status-danger:#ffadb5;--sys-status-danger-bg:#401d25;--sys-status-info:#82cef1;--sys-status-info-bg:#14324a;--brand-mint:#69cba6;--brand-cyan:#57bce9;--brand-cyan-text:#57bce9;--brand-blue:#7594ff;--brand-violet:#9a78ff;--brand-coral:#ff8589;--brand-amber:#e7b258;--brand-label:#8bdcbe;--metric-mint:#73d0ad;--metric-cyan:#69c5ef;--metric-violet:#9a78ff;--metric-amber:#e7ae50;--elevation-low:0 .5rem 2rem #00000038;--elevation-medium:0 1.5rem 4.5rem #0000004d;--elevation-glass:0 1.25rem 4rem #00000052}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;overflow-wrap:anywhere;background:var(--sys-canvas);min-width:320px;scroll-padding-top:7.25rem}body{background:radial-gradient(circle at 82% 11%,var(--brand-cyan) 0,transparent 29rem),radial-gradient(circle at 11% 36%,var(--brand-mint) 0,transparent 31rem),var(--sys-canvas);min-height:100vh;margin:0;position:relative;overflow-x:clip}@supports (color:color-mix(in lab,red,red)){body{background:radial-gradient(circle at 82% 11%,color-mix(in srgb,var(--brand-cyan) 9%,transparent) 0,transparent 29rem),radial-gradient(circle at 11% 36%,color-mix(in srgb,var(--brand-mint) 8%,transparent) 0,transparent 31rem),var(--sys-canvas)}}body{color:var(--sys-text);font-family:var(--font-body-stack);text-rendering:optimizelegibility;font-size:1rem;line-height:1.65}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit}img,svg{max-width:100%;display:block}::selection{background:var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){::selection{background:color-mix(in srgb,var(--brand-cyan) 70%,var(--brand-mint))}}::selection{color:#07111e}:where(a,button,input,textarea,select):focus-visible{outline:.1875rem solid var(--sys-focus);outline-offset:.22rem}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{z-index:200;border:2px solid var(--sys-focus);background:var(--sys-surface);min-height:2.75rem;transition:transform var(--motion-duration-fast) var(--motion-ease-standard);border-radius:.8rem;padding:.65rem 1rem;font-weight:750;text-decoration:none;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.ambient-background{z-index:-2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.ambient-background:after,.ambient-background:before{content:"";filter:blur(5rem);opacity:.16;border-radius:50%;width:34rem;height:34rem;position:absolute}.ambient-background:before{background:var(--brand-cyan);top:4rem;right:-11rem}.ambient-background:after{background:var(--brand-mint);top:38%;left:-16rem}.glass-surface{border:1px solid var(--sys-border)}@supports (color:color-mix(in lab,red,red)){.glass-surface{border:1px solid color-mix(in srgb,var(--sys-border) 74%,white 26%)}}.glass-surface{background:linear-gradient(135deg,#fff3,transparent 42%),var(--sys-glass-translucent);box-shadow:inset 0 1px 0 #ffffffad,var(--elevation-glass)}:root[data-theme=dark] .glass-surface{border-color:var(--sys-border)}@supports (color:color-mix(in lab,red,red)){:root[data-theme=dark] .glass-surface{border-color:color-mix(in srgb,var(--sys-border) 84%,white 16%)}}:root[data-theme=dark] .glass-surface{box-shadow:inset 0 1px 0 #ffffff14,var(--elevation-glass)}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass-surface{-webkit-backdrop-filter:blur(var(--blur-controlled)) saturate(1.2);backdrop-filter:blur(var(--blur-controlled)) saturate(1.2)}[data-glass-surface] [data-glass-surface]{-webkit-backdrop-filter:none;backdrop-filter:none}}.site-header{top:max(1.25rem,env(safe-area-inset-top));z-index:100;width:100%;padding-inline:max(.75rem,env(safe-area-inset-left)) max(.75rem,env(safe-area-inset-right));pointer-events:none;opacity:1;justify-content:center;display:flex;position:fixed;left:0}.site-header[data-condensed=true]{opacity:1}.site-header[role=dialog]{z-index:130}.site-nav{border-radius:var(--shape-capsule);isolation:isolate;pointer-events:auto;width:max-content;max-width:100%;min-height:3.75rem;transition:background var(--motion-duration-standard) var(--motion-ease-standard),border-color var(--motion-duration-standard) var(--motion-ease-standard),box-shadow var(--motion-duration-standard) var(--motion-ease-standard),padding var(--motion-duration-standard) var(--motion-ease-emphasized),transform var(--motion-duration-standard) var(--motion-ease-emphasized);background:radial-gradient(92% 170% at 4% -46%,#ffffffb8,#0000 62%),linear-gradient(135deg,#fff3,#0000 46%),#fafafacc;border:1px solid #ffffffc2;align-items:center;gap:.2rem;padding:.42rem .5rem;display:flex;position:relative;overflow:visible;box-shadow:0 .85rem 2.8rem #0f172a21,0 .2rem .8rem #0f172a12,inset 0 1.5px #ffffffe6,inset 0 -1px #0f172a0f}.site-nav:after,.site-nav:before{z-index:0;border-radius:inherit;content:"";pointer-events:none;position:absolute;inset:0}.site-nav:before{background:radial-gradient(60% 170% at 5% -22%,#ffffffb3,#0000 68%),linear-gradient(142deg,#ffffff5c,#ffffff12 30%,#0000 58%)}.site-nav:after{background:linear-gradient(104deg,#ffffff24,#0000 36%,#ffffff0f 72%,#0000);border:1px solid #ffffff38;inset:1px}.site-header[data-condensed=true] .site-nav{background-color:#fafafae0;padding-block:.3rem;transform:translateY(-.45rem);box-shadow:0 .6rem 2rem #0f172a1f,inset 0 1.5px #ffffffdb,inset 0 -1px #0f172a0d}:root[data-theme=dark] .site-nav{background:radial-gradient(92% 170% at 4% -46%,#ffffff29,#0000 62%),linear-gradient(135deg,#ffffff12,#0000 46%),#08101dc7;border-color:#ffffff24;box-shadow:0 1rem 3.1rem #00071175,0 .2rem .9rem #00000047,inset 0 1.5px #ffffff2e,inset 0 -1px #ffffff0d}:root[data-theme=dark] .site-nav:before{background:radial-gradient(60% 170% at 5% -22%,#ffffff2e,#0000 68%),linear-gradient(142deg,#ffffff14,#ffffff06 30%,#0000 58%)}:root[data-theme=dark] .site-header[data-condensed=true] .site-nav{background-color:#08101dd6}.site-nav>*{z-index:2;position:relative}.site-nav__mark{background:linear-gradient(135deg,var(--brand-mint),var(--brand-cyan));width:2.75rem;height:2.75rem;box-shadow:inset 0 1px 0 #ffffff85,0 .45rem 1.15rem var(--brand-cyan);border-radius:50%;flex:none;place-items:center;display:grid}@supports (color:color-mix(in lab,red,red)){.site-nav__mark{box-shadow:inset 0 1px 0 #ffffff85,0 .45rem 1.15rem color-mix(in srgb,var(--brand-cyan) 18%,transparent)}}.site-nav__mark{color:#fff;letter-spacing:-.02em;font-size:.76rem;font-weight:850;text-decoration:none}.site-nav__desktop-links{flex:none;grid-template-columns:5.5rem 5.25rem 7.1rem 5.35rem 5.15rem 6.75rem 5.2rem;align-items:center;display:grid;position:relative}.site-nav__active-indicator{z-index:0;border-radius:var(--shape-capsule);opacity:0;pointer-events:none;transform-origin:50%;background:#ffffff94;position:absolute;top:0;bottom:0;box-shadow:inset 0 1.5px #fff,inset 0 -1px #ffffff73,inset 1.5px 0 #ffffff80,inset -1px 0 #ffffff47,0 .12rem .85rem #0000001a,0 .25rem 1.75rem #00000012}:root[data-theme=dark] .site-nav__active-indicator{background:#44bb912e;box-shadow:inset 0 1.5px #ffffff47,inset 0 -1px #ffffff0f,inset 1.5px 0 #ffffff29,inset -1px 0 #ffffff0f,0 .12rem .75rem #00000061,0 .25rem 1.5rem #44bb9138}.site-nav__active-indicator[data-ready=true]{opacity:1}.site-nav__active-indicator[data-phase=stretch]{transition:left .16s cubic-bezier(.25,0,.35,1),width .18s cubic-bezier(.25,0,.35,1),transform .14s ease-out,opacity .1s;transform:scaleY(.42)}.site-nav__active-indicator[data-phase=settled]{transition:left .42s cubic-bezier(.34,1.56,.64,1),width .38s cubic-bezier(.34,1.56,.64,1),transform .36s cubic-bezier(.34,1.56,.64,1),opacity .1s;transform:scaleY(1)}.site-nav__link{z-index:1;border-radius:var(--shape-capsule);width:100%;min-width:2.75rem;height:2.75rem;color:var(--sys-text-muted);white-space:nowrap;transition:color var(--motion-duration-fast) ease,transform var(--motion-duration-fast) var(--motion-ease-emphasized);justify-content:center;align-items:center;padding:0 .72rem;font-size:.82rem;font-weight:590;line-height:1;text-decoration:none;display:inline-flex;position:relative}.site-nav__link:hover,.site-nav__link[data-active=true]{color:var(--sys-text)}.site-nav__link[data-active=true]{box-shadow:none;background:0 0}.site-nav__link:hover{transform:translateY(-1px)}.site-nav__divider{background:var(--sys-border);width:1px;height:1.35rem;margin-inline:.25rem}@supports (color:color-mix(in lab,red,red)){.site-nav__divider{background:color-mix(in srgb,var(--sys-border) 84%,transparent)}}.site-nav__icon-button,.site-nav__locale,.site-nav__menu-button{border-radius:var(--shape-capsule);width:2.75rem;min-width:2.75rem;height:2.75rem;color:var(--sys-text-muted);cursor:pointer;transition:border-color var(--motion-duration-fast) ease,background var(--motion-duration-fast) ease,color var(--motion-duration-fast) ease,transform var(--motion-duration-fast) var(--motion-ease-emphasized);background:0 0;border:1px solid #0000;flex:none;place-items:center;padding:0;text-decoration:none;display:inline-grid}.site-nav__icon-button:hover,.site-nav__locale:hover,.site-nav__menu-button:hover{border-color:var(--sys-border)}@supports (color:color-mix(in lab,red,red)){.site-nav__icon-button:hover,.site-nav__locale:hover,.site-nav__menu-button:hover{border-color:color-mix(in srgb,var(--sys-border) 78%,transparent)}}.site-nav__icon-button:hover,.site-nav__locale:hover,.site-nav__menu-button:hover{background:var(--sys-surface)}@supports (color:color-mix(in lab,red,red)){.site-nav__icon-button:hover,.site-nav__locale:hover,.site-nav__menu-button:hover{background:color-mix(in srgb,var(--sys-surface) 58%,transparent)}}.site-nav__icon-button:hover,.site-nav__locale:hover,.site-nav__menu-button:hover{color:var(--sys-text);transform:translateY(-1px)}.site-nav__locale{border-color:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.site-nav__locale{border-color:color-mix(in srgb,var(--brand-mint) 38%,var(--sys-border))}}.site-nav__locale{background:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.site-nav__locale{background:color-mix(in srgb,var(--brand-mint) 9%,transparent)}}.site-nav__locale{color:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.site-nav__locale{color:color-mix(in srgb,var(--brand-mint) 76%,var(--sys-text))}}.site-nav__locale{font-family:var(--font-mono-stack);font-size:.68rem;font-weight:700}.site-nav__locale-label,.site-nav__menu-button{display:none}.site-nav__locale-short{display:inline}.site-nav>.site-nav__dispense-slot{z-index:1;border-radius:var(--shape-capsule);background:var(--brand-mint);border:0;width:min(42%,10rem);height:.16rem;display:none;position:absolute;bottom:-.12rem;left:50%}@supports (color:color-mix(in lab,red,red)){.site-nav>.site-nav__dispense-slot{background:color-mix(in srgb,var(--brand-mint) 32%,var(--sys-border))}}.site-nav>.site-nav__dispense-slot{opacity:0;pointer-events:none;transform-origin:top;transition:opacity .28s ease,transform .42s var(--motion-ease-emphasized);transform:translate(-50%,-.08rem)scaleX(.72);box-shadow:0 1px #ffffff85}.site-nav[data-menu-state=closing] .site-nav__dispense-slot,.site-nav[data-menu-state=open] .site-nav__dispense-slot,.site-nav[data-menu-state=opening] .site-nav__dispense-slot{opacity:1;transform:translate(-50%)scaleX(1)}:root[data-theme=dark] .site-nav__dispense-slot{background:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){:root[data-theme=dark] .site-nav__dispense-slot{background:color-mix(in srgb,var(--brand-mint) 40%,#ffffff24)}}:root[data-theme=dark] .site-nav__dispense-slot{box-shadow:0 1px #00050e7a}.mobile-nav-layer{z-index:120;pointer-events:auto;position:fixed;inset:0}.mobile-nav-backdrop{cursor:default;width:100%;animation:mobile-nav-scrim-in .5s var(--motion-ease-standard) both;background:#2a415029;border:0;position:absolute;inset:0}:root[data-theme=dark] .mobile-nav-backdrop{background:#01070f42}.mobile-nav-feed{top:calc(max(1.25rem, env(safe-area-inset-top)) + 2.8rem);bottom:max(.75rem,env(safe-area-inset-bottom));z-index:1;width:min(30rem,calc(100% - max(3rem, calc(env(safe-area-inset-left) + env(safe-area-inset-right) + 2rem))));pointer-events:none;align-items:flex-start;padding-top:1.3rem;display:flex;position:absolute;left:50%;overflow:hidden;transform:translate(-50%)}.mobile-nav-sheet{width:100%;max-height:100%;padding:1.05rem .85rem max(.95rem,env(safe-area-inset-bottom));border:1px solid var(--sys-border);position:relative;overflow:auto}@supports (color:color-mix(in lab,red,red)){.mobile-nav-sheet{border:1px solid color-mix(in srgb,var(--sys-border) 76%,white 24%)}}.mobile-nav-sheet{background:linear-gradient(142deg,#ffffff38,transparent 35%),var(--sys-surface);border-radius:1.15rem 1.15rem 1.65rem 1.65rem}@supports (color:color-mix(in lab,red,red)){.mobile-nav-sheet{background:linear-gradient(142deg,#ffffff38,transparent 35%),color-mix(in srgb,var(--sys-surface) 96%,var(--sys-surface-tonal))}}.mobile-nav-sheet{opacity:1;overscroll-behavior:contain;pointer-events:auto;will-change:clip-path,transform,opacity;transform:translate(0);box-shadow:0 1rem 2.8rem #132f442e,inset 0 1px #ffffffc7}:root[data-theme=dark] .mobile-nav-sheet{background:linear-gradient(142deg,#ffffff12,#0000 36%),#0d1b2af0;border-color:#ffffff24;box-shadow:0 1.5rem 4.5rem #00050e94,inset 0 1px #ffffff24}.mobile-nav-layer[data-state=opening] .mobile-nav-sheet{animation:mobile-nav-dispense-in .56s cubic-bezier(.3,0,.25,1) both}.mobile-nav-layer[data-state=closing] .mobile-nav-backdrop{animation:mobile-nav-scrim-out .42s both}.mobile-nav-layer[data-state=closing] .mobile-nav-sheet{animation:mobile-nav-dispense-out .46s cubic-bezier(.4,0,.2,1) both}.mobile-nav-layer[data-state=opening] .mobile-nav-sheet__link{animation:mobile-nav-item-in .28s cubic-bezier(.2,.82,.2,1) both;animation-delay:calc(70ms + var(--mobile-menu-index) * 34ms);will-change:transform,opacity}.mobile-nav-layer[data-state=closing] .mobile-nav-sheet__link{animation:mobile-nav-item-out .19s cubic-bezier(.4,0,.2,1) both;animation-delay:calc(var(--mobile-menu-reverse-index) * 32ms);will-change:transform,opacity}.mobile-nav-sheet__links{gap:.25rem;display:grid}.mobile-nav-sheet__link{min-height:3.5rem;color:var(--sys-text-muted);transition:background var(--motion-duration-standard) var(--motion-ease-standard),border-color var(--motion-duration-standard) var(--motion-ease-standard),color var(--motion-duration-fast) ease,transform var(--motion-duration-fast) var(--motion-ease-emphasized);border:1px solid #0000;border-radius:.95rem;grid-template-columns:2.15rem 1fr;align-items:center;padding:.65rem .9rem;font-size:1rem;font-weight:700;line-height:1.25;text-decoration:none;display:grid;position:relative}.mobile-nav-sheet__link span{color:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.mobile-nav-sheet__link span{color:color-mix(in srgb,var(--brand-mint) 54%,var(--sys-text))}}.mobile-nav-sheet__link span{font-family:var(--font-mono-stack);font-size:.66rem}.mobile-nav-sheet__link[data-active=true]{border-color:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.mobile-nav-sheet__link[data-active=true]{border-color:color-mix(in srgb,var(--brand-mint) 22%,var(--sys-border))}}.mobile-nav-sheet__link[data-active=true]{background:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.mobile-nav-sheet__link[data-active=true]{background:color-mix(in srgb,var(--brand-mint) 7%,var(--sys-surface-tonal))}}.mobile-nav-sheet__link[data-active=true]{box-shadow:inset 2px 0 0 var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.mobile-nav-sheet__link[data-active=true]{box-shadow:inset 2px 0 0 color-mix(in srgb,var(--brand-mint) 72%,transparent)}}.mobile-nav-sheet__link[data-active=true]{color:var(--sys-text)}.mobile-nav-sheet__link:hover{background:var(--sys-surface-tonal);color:var(--sys-text);transform:translate(2px)}@keyframes mobile-nav-dispense-in{0%{clip-path:inset(0 0 100%);opacity:0;transform:translateY(-.65rem)}16%{opacity:1}82%{clip-path:inset(0);opacity:1;transform:translateY(.18rem)}to{clip-path:inset(0);opacity:1;transform:translate(0)}}@keyframes mobile-nav-dispense-out{0%{clip-path:inset(0);opacity:1;transform:translate(0)}to{clip-path:inset(0 0 100%);opacity:0;transform:translateY(-.55rem)}}@keyframes mobile-nav-item-in{0%{opacity:0;transform:translateY(-.65rem)scale(.97)}72%{opacity:1;transform:translateY(.08rem)scale(1.006)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes mobile-nav-item-out{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translateY(-.5rem)scale(.98)}}@keyframes mobile-nav-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes mobile-nav-scrim-out{0%{opacity:1}to{opacity:0}}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-nav{-webkit-backdrop-filter:blur(20px)saturate(1.35)contrast(1.04)brightness(1.03);backdrop-filter:blur(20px)saturate(1.35)contrast(1.04)brightness(1.03)}.mobile-nav-sheet{-webkit-backdrop-filter:blur(22px)saturate(1.3);backdrop-filter:blur(22px)saturate(1.3)}}@media (prefers-reduced-transparency:reduce){.mobile-nav-sheet,.site-nav{background:var(--sys-glass-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}.archive-header,.archive-main,.portfolio-main,.site-footer{width:min(100%,92rem);padding-inline:var(--space-page);margin-inline:auto}.hero-section,.portfolio-section{scroll-margin-top:7rem}.hero-section{grid-template-columns:minmax(0,.88fr) minmax(30rem,1.12fr);align-items:center;gap:clamp(2rem,5vw,5.5rem);min-height:100svh;padding:clamp(7.4rem,13vh,10.5rem) 0 clamp(4rem,8vh,6.5rem);display:grid}.hero-section__content{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.card-eyebrow,.project-selector__number,.section-eyebrow,.section-index{color:var(--brand-label);font-family:var(--font-mono-stack);letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:570;line-height:1.45}.hero-section .section-eyebrow{color:var(--sys-text-subtle);order:3;margin-top:2rem}.hero-heading{color:var(--sys-text);font-family:var(--font-display-stack);letter-spacing:-.075em;order:1;margin:0;font-size:clamp(4.6rem,8.1vw,8.15rem);font-weight:720;line-height:.82}.hero-heading>span{display:block}.hero-heading__accent{background:linear-gradient(112deg,var(--brand-mint) 8%,var(--brand-cyan) 88%);color:#0000;-webkit-background-clip:text;background-clip:text;padding-right:.08em}.hero-headline{max-width:42rem;color:var(--sys-text-muted);letter-spacing:-.025em;order:2;margin:2.05rem 0 0;font-size:clamp(1.05rem,1.7vw,1.35rem);font-weight:680;line-height:1.4}.hero-positioning{max-width:39rem;color:var(--sys-text);order:4;margin:1.9rem 0 0;font-size:clamp(1rem,1.35vw,1.13rem);line-height:1.75}.availability-note{color:var(--sys-text-muted);align-items:center;gap:.65rem;margin:1.2rem 0 0;font-size:.88rem;font-weight:620;display:inline-flex}.hero-section .availability-note{order:5}.availability-note:before{background:var(--brand-mint);width:.52rem;height:.52rem;box-shadow:0 0 0 .3rem var(--brand-mint);border-radius:50%;flex:none}@supports (color:color-mix(in lab,red,red)){.availability-note:before{box-shadow:0 0 0 .3rem color-mix(in srgb,var(--brand-mint) 13%,transparent)}}.availability-note:before{content:""}.hero-actions,.project-actions{flex-wrap:wrap;gap:.85rem;display:flex}.hero-actions{order:6;margin-top:2rem}.action-link{border-radius:var(--shape-capsule);text-align:center;cursor:pointer;min-width:0;min-height:3.35rem;transition:transform var(--motion-duration-fast) var(--motion-ease-emphasized),border-color var(--motion-duration-fast) ease,background var(--motion-duration-fast) ease,box-shadow var(--motion-duration-fast) ease;border:1px solid #0000;justify-content:center;align-items:center;gap:.55rem;padding:.85rem 1.45rem;font-size:.92rem;font-weight:760;line-height:1.2;text-decoration:none;display:inline-flex}.action-link:hover{transform:translateY(-2px)}.action-link--primary{border-color:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.action-link--primary{border-color:color-mix(in srgb,var(--brand-mint) 70%,transparent)}}.action-link--primary{background:linear-gradient(100deg,var(--brand-mint),var(--brand-mint))}@supports (color:color-mix(in lab,red,red)){.action-link--primary{background:linear-gradient(100deg,var(--brand-mint),color-mix(in srgb,var(--brand-mint) 72%,var(--brand-cyan)))}}.action-link--primary{box-shadow:0 .85rem 2rem var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.action-link--primary{box-shadow:0 .85rem 2rem color-mix(in srgb,var(--brand-mint) 19%,transparent)}}.action-link--primary{color:#071b16}.action-link--primary:hover{box-shadow:0 1rem 2.4rem var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.action-link--primary:hover{box-shadow:0 1rem 2.4rem color-mix(in srgb,var(--brand-mint) 27%,transparent)}}.action-link--secondary{border-color:var(--sys-border-strong);background:var(--sys-surface)}@supports (color:color-mix(in lab,red,red)){.action-link--secondary{background:color-mix(in srgb,var(--sys-surface) 72%,transparent)}}.action-link--secondary{color:var(--sys-text)}.action-link small{color:var(--sys-text-muted);font-size:.68rem;font-weight:560}.text-link{min-height:2.75rem;color:var(--brand-cyan-text);-webkit-text-decoration-color:var(--brand-cyan);text-decoration-color:var(--brand-cyan);align-items:center;padding-inline:.35rem;font-weight:740;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.text-link{-webkit-text-decoration-color:color-mix(in srgb,var(--brand-cyan) 48%,transparent);text-decoration-color:color-mix(in srgb,var(--brand-cyan) 48%,transparent)}}.text-link{text-underline-offset:.4rem}.hero-graph{min-width:0;margin:0;position:relative}.hero-graph:before{z-index:-1;background:var(--brand-cyan);border-radius:50%;position:absolute;inset:7% 5% 16%}@supports (color:color-mix(in lab,red,red)){.hero-graph:before{background:color-mix(in srgb,var(--brand-cyan) 8%,transparent)}}.hero-graph:before{content:"";filter:blur(2.5rem)}.hero-graph__svg{width:100%;height:auto;overflow:visible}.hero-graph__halo{fill:var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.hero-graph__halo{fill:color-mix(in srgb,var(--brand-cyan) 5%,var(--sys-surface))}}.hero-graph__halo{stroke:var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.hero-graph__halo{stroke:color-mix(in srgb,var(--brand-cyan) 11%,transparent)}}.hero-graph__connections path{fill:none;stroke:var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.hero-graph__connections path{stroke:color-mix(in srgb,var(--brand-cyan) 30%,var(--sys-border))}}.hero-graph__connections path{stroke-dasharray:6 8;stroke-linecap:round;stroke-width:1.4px}.hero-graph__connections path:last-child{opacity:.35}.hero-graph__core-glow{fill:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.hero-graph__core-glow{fill:color-mix(in srgb,var(--brand-mint) 38%,transparent)}}.hero-graph__core-glow{filter:url(#graph-soft-glow)}.hero-graph__core{fill:url(#graph-core);stroke:#ffffff94;stroke-width:2px}.hero-graph__core-label,.hero-graph__node text{fill:#fff;font-family:var(--font-mono-stack);text-anchor:middle;font-size:.78rem;font-weight:700}.hero-graph__core-label{font-size:1rem}.hero-graph__node circle{stroke:#ffffff9e;stroke-width:2px}.hero-graph__node--mint circle{fill:var(--brand-mint)}.hero-graph__node--cyan circle{fill:var(--brand-cyan)}.hero-graph__node--navy circle{fill:#294b70}.hero-graph__node--violet circle{fill:var(--brand-violet)}.hero-graph__node-label{fill:var(--sys-text-muted);font-family:var(--font-mono-stack);text-anchor:middle;font-size:.61rem}.hero-graph>figcaption{max-width:34rem;color:var(--sys-text-muted);text-align:center;margin:0 auto;font-size:.82rem}.hero-graph>figcaption p{margin:0 0 1rem}.tag-list{flex-wrap:wrap;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.tag-list li{border:1px solid var(--sys-border);border-radius:var(--shape-capsule);background:var(--sys-surface);min-width:0;max-width:100%;padding:.38rem .68rem}@supports (color:color-mix(in lab,red,red)){.tag-list li{background:color-mix(in srgb,var(--sys-surface) 72%,transparent)}}.tag-list li{color:var(--sys-text-muted);font-family:var(--font-mono-stack);font-size:.68rem;line-height:1.35}.hero-graph .tag-list{justify-content:center}.portfolio-section{padding-block:var(--space-section);content-visibility:auto;contain-intrinsic-size:auto 64rem;position:relative}.portfolio-section--contact,.portfolio-section--projects{contain-intrinsic-size:auto 76rem}.portfolio-section+.portfolio-section:before{background:linear-gradient(90deg,transparent,var(--sys-border),transparent);content:"";opacity:.72;height:1px;position:absolute;top:0;left:0;right:0}.section-heading{grid-template-columns:minmax(9rem,.28fr) minmax(0,.72fr);align-items:end;gap:2rem;margin-bottom:clamp(2rem,5vw,4.25rem);display:grid}.section-index{padding-bottom:.65rem}.section-index>span:first-child{display:none}.archive-hero h1,.section-heading h2{max-width:18ch;font-family:var(--font-display-stack);letter-spacing:-.06em;margin:0;font-size:clamp(2.75rem,5.4vw,5.5rem);font-weight:690;line-height:.98}.section-body{min-width:0}.section-intro{max-width:49rem;color:var(--sys-text-muted);margin:0 0 clamp(2.2rem,5vw,4rem) auto;font-size:clamp(1rem,1.6vw,1.22rem);line-height:1.75}.about-layout{grid-template-columns:minmax(18rem,.78fr) minmax(0,1.22fr);align-items:start;gap:clamp(2.5rem,7vw,7rem);display:grid}.identity-lens{border:1px solid var(--sys-border);border-radius:var(--shape-panel);background:linear-gradient(145deg,var(--brand-mint),var(--sys-surface));padding:1rem;position:sticky;top:7.5rem;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.identity-lens{background:linear-gradient(145deg,color-mix(in srgb,var(--brand-mint) 9%,var(--sys-surface)),var(--sys-surface))}}.identity-lens{box-shadow:var(--elevation-low)}.identity-lens__reflection{width:80%;height:120%;transform:translateX(calc(var(--lens-reflection,0) * 1px)) rotate(10deg);pointer-events:none;background:linear-gradient(110deg,#0000 20%,#ffffff61 47%,#0000 64%);position:absolute;top:-35%;left:-25%}.portrait-frame{border-radius:calc(var(--shape-panel) - .65rem);background:var(--sys-surface-tonal);margin:0;position:relative;overflow:hidden}.portrait-frame img{aspect-ratio:1/1.12;object-fit:cover;object-position:50% 24%;width:100%}.portrait-frame figcaption{color:#fff;font-family:var(--font-mono-stack);-webkit-backdrop-filter:blur(.6rem);backdrop-filter:blur(.6rem);background:#08121eb3;border:1px solid #ffffff59;border-radius:.85rem;padding:.65rem .8rem;font-size:.63rem;position:absolute;bottom:.75rem;left:.75rem;right:.75rem}.identity-lens__focus{padding:1.25rem .4rem .35rem}.direct-channels>h3,.identity-lens__focus h3,.practice-strip h3,.principles-block h3{letter-spacing:.02em;margin:0 0 .9rem;font-size:.82rem;font-weight:750}.about-copy{padding-top:1rem}.about-copy>p{max-width:48rem;color:var(--sys-text-muted);margin:0 0 1.4rem;font-size:clamp(1.05rem,1.8vw,1.35rem);line-height:1.8}.about-copy>p:first-child{color:var(--sys-text);letter-spacing:-.025em;font-size:clamp(1.28rem,2.3vw,1.75rem);font-weight:570;line-height:1.55}.principles-block{border-block:1px solid var(--sys-border);margin-block:2.4rem;padding-block:1.5rem}.principle-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1.25rem;margin:0;padding:0;list-style:none;display:grid}.principle-list li{color:var(--sys-text-muted);padding-left:1.25rem;position:relative}.principle-list li:before{background:var(--brand-mint);content:"";border-radius:50%;width:.42rem;height:.42rem;position:absolute;top:.72em;left:0}.experience-route{--route-progress:0;gap:1.1rem;margin:0;padding:0;list-style:none;display:grid;position:relative}.experience-route:after,.experience-route:before{content:"";width:1px;position:absolute;top:1.8rem;bottom:1.8rem;left:1.75rem}.experience-route:before{background:var(--sys-border)}.experience-route:after{background:linear-gradient(var(--brand-mint),var(--brand-cyan));transform:scaleY(var(--route-progress));transform-origin:top}.experience-card{grid-template-columns:3.5rem minmax(0,1fr);gap:1.2rem;display:grid;position:relative}.route-marker{z-index:1;border:1px solid var(--brand-mint);place-items:center;width:3.5rem;height:3.5rem;display:grid;position:relative}@supports (color:color-mix(in lab,red,red)){.route-marker{border:1px solid color-mix(in srgb,var(--brand-mint) 45%,var(--sys-border))}}.route-marker{background:var(--sys-surface);color:var(--brand-mint);font-family:var(--font-mono-stack);box-shadow:0 0 0 .5rem var(--sys-canvas);border-radius:50%;font-size:.65rem}.experience-card>article{border:1px solid var(--sys-border);border-radius:var(--shape-card);background:var(--sys-surface);padding:clamp(1.3rem,3vw,2rem)}@supports (color:color-mix(in lab,red,red)){.experience-card>article{background:color-mix(in srgb,var(--sys-surface) 84%,transparent)}}.experience-card>article{transition:border-color var(--motion-duration-standard) ease,transform var(--motion-duration-standard) var(--motion-ease-emphasized),box-shadow var(--motion-duration-standard) ease}.experience-card>article:hover{border-color:var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.experience-card>article:hover{border-color:color-mix(in srgb,var(--brand-cyan) 35%,var(--sys-border))}}.experience-card>article:hover{box-shadow:var(--elevation-low);transform:translateY(-2px)}.experience-card header{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.experience-card header>div{min-width:0}.archive-card h2,.capability-card h3,.experience-card h3,.project-stage h3{letter-spacing:-.035em;margin:.35rem 0 0;font-size:clamp(1.35rem,2.4vw,2rem);font-weight:720;line-height:1.2}.organization{color:var(--brand-cyan-text);margin:.35rem 0 0;font-weight:650}.evidence-list,.experience-card article>h4,.experience-card article>p{margin-left:0}.experience-card article>p{color:var(--sys-text-muted)}.experience-card h4{text-transform:uppercase;margin:1.35rem 0 .55rem;font-size:.78rem}.status-badge{border:1px solid var(--brand-mint);align-items:center;min-height:2rem;padding:.32rem .72rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.status-badge{border:1px solid color-mix(in srgb,var(--brand-mint) 30%,var(--sys-border))}}.status-badge{border-radius:var(--shape-capsule);background:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.status-badge{background:color-mix(in srgb,var(--brand-mint) 8%,var(--sys-surface))}}.status-badge{color:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.status-badge{color:color-mix(in srgb,var(--brand-mint) 78%,var(--sys-text))}}.status-badge{white-space:nowrap;font-size:.7rem;font-weight:720}.evidence-list{color:var(--sys-text-muted);gap:.45rem;margin-block:0;padding-left:1.15rem;display:grid}.portfolio-section--projects{content-visibility:visible;contain-intrinsic-size:none;padding-block:2rem 0}.portfolio-section--projects .section-heading{margin-bottom:1.4rem}.portfolio-section--projects .section-heading h2{max-width:16ch;font-size:clamp(2.8rem,4.6vw,4.65rem)}.portfolio-section--projects .section-body{position:relative}@media not all and (min-width:48rem){.portfolio-section--projects .section-heading h2{font-size:clamp(1.875rem,8.6vw,2.25rem);line-height:1.15}}@media (min-width:48rem){.portfolio-section--projects .section-heading{grid-template-columns:minmax(0,1fr);gap:.625rem;margin-bottom:26px;padding-inline:10px}.portfolio-section--projects .section-index{margin:0;padding:0}.portfolio-section--projects .section-heading h2{letter-spacing:-.045em;text-wrap:balance;max-width:38ch;font-family:inherit;font-size:clamp(1.875rem,3.05vw,2.625rem);font-weight:800;line-height:1.2}}.portfolio-section--projects+#skills{padding-block-start:clamp(3rem,5vw,5rem)}.projects-layout{isolation:auto;min-height:52rem;position:relative}@media (min-width:50rem){.projects-layout[data-enhanced=true]:not([data-active-project]){min-height:7.5rem}}@media (min-width:56rem){.projects-layout[data-enhanced=true] .project-selector{top:0}.projects-layout[data-enhanced=true] .project-stage{top:-20rem}.projects-layout[data-enhanced=true][data-active-project]{min-height:32rem}}.project-focus-veil{z-index:40;opacity:0;pointer-events:none;background:var(--sys-canvas);position:fixed;inset:0}@supports (color:color-mix(in lab,red,red)){.project-focus-veil{background:color-mix(in srgb,var(--sys-canvas) 24%,transparent)}}.project-focus-veil{transition:opacity .18s}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.project-focus-veil{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}}.projects-layout[data-active-project] .project-focus-veil{opacity:1}.project-selector{z-index:auto;grid-template-columns:repeat(2,minmax(12rem,1fr));place-items:start center;gap:clamp(2rem,9vw,9rem);height:9rem;display:grid;position:absolute;top:20rem;left:5%;right:5%}.project-selector__slot{z-index:auto;position:relative}.project-selector__item{width:min(100%,15rem);min-height:7.5rem;color:var(--sys-text);text-align:left;background:0 0;border:0;grid-template-columns:4.75rem minmax(0,1fr);align-items:center;gap:.9rem;padding:.7rem;display:grid;position:relative}button.project-selector__item{cursor:pointer}.project-selector__glyph{border:1px solid var(--brand-cyan);place-items:center;width:4.75rem;height:4.75rem;display:grid}@supports (color:color-mix(in lab,red,red)){.project-selector__glyph{border:1px solid color-mix(in srgb,var(--brand-cyan) 35%,var(--sys-border))}}.project-selector__glyph{background:linear-gradient(145deg,var(--brand-mint),var(--brand-cyan));border-radius:50%}@supports (color:color-mix(in lab,red,red)){.project-selector__glyph{background:linear-gradient(145deg,color-mix(in srgb,var(--brand-mint) 14%,var(--sys-surface)),color-mix(in srgb,var(--brand-cyan) 16%,var(--sys-surface)))}}.project-selector__glyph{box-shadow:inset 0 1px 0 #ffffffa6,0 1rem 2.5rem var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.project-selector__glyph{box-shadow:inset 0 1px 0 #ffffffa6,0 1rem 2.5rem color-mix(in srgb,var(--brand-cyan) 12%,transparent)}}.project-selector__glyph{color:var(--sys-text);font-family:var(--font-mono-stack);transition:transform var(--motion-duration-standard) var(--motion-ease-emphasized),box-shadow var(--motion-duration-standard) ease;font-size:.82rem;font-weight:760}.project-selector__glyph--future{border-color:var(--sys-border);background:var(--sys-surface-tonal);color:var(--sys-text-muted);box-shadow:none}.project-selector__label{gap:.12rem;min-width:0;display:grid}.project-selector__label h3,.project-selector__label strong{letter-spacing:-.02em;margin:0;font-size:1rem;font-weight:760;line-height:1.2}.project-selector__label p,.project-selector__label small{color:var(--sys-text-muted);margin:0;font-size:.72rem;line-height:1.4}.project-selector__item--future{z-index:30}.project-selector__item--selectable{z-index:30;border-radius:1.35rem}.project-selector__item--selectable:focus-visible .project-selector__glyph,.project-selector__item--selectable:hover .project-selector__glyph,.project-selector__item--selectable[data-state=active] .project-selector__glyph{box-shadow:inset 0 1px 0 #ffffffb8,0 1.1rem 2.7rem var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.project-selector__item--selectable:focus-visible .project-selector__glyph,.project-selector__item--selectable:hover .project-selector__glyph,.project-selector__item--selectable[data-state=active] .project-selector__glyph{box-shadow:inset 0 1px 0 #ffffffb8,0 1.1rem 2.7rem color-mix(in srgb,var(--brand-cyan) 24%,transparent)}}.project-selector__item--selectable:focus-visible .project-selector__glyph,.project-selector__item--selectable:hover .project-selector__glyph,.project-selector__item--selectable[data-state=active] .project-selector__glyph{transform:translateY(-.25rem)scale(1.045)}.projects-layout[data-active-project] .project-selector__item--selectable{z-index:60}.projects-layout[data-active-project] .project-selector__item--future{z-index:30;opacity:.4}.project-stage{z-index:50;pointer-events:auto;min-width:0;transition:opacity .26s var(--motion-ease-standard),visibility .26s step-start;position:absolute;inset:0}.projects-layout[data-enhanced=true] .project-stage[data-preview-state=idle]{visibility:hidden;opacity:0;pointer-events:none;transition:opacity .14s,visibility .14s step-end}.project-stage__inner{min-height:52rem;padding-top:1rem;position:relative}.project-stage__copy{text-align:center;width:43%;max-width:34rem;padding-inline:1rem;position:absolute;top:31.5rem;left:2%}.project-stage__copy .card-eyebrow{color:var(--brand-cyan-text)}.project-stage__copy h3{letter-spacing:-.065em;margin:.65rem 0 0;font-size:clamp(2.8rem,5.5vw,5.25rem);font-weight:720}.projects-layout[data-enhanced=true] .project-stage__copy h3{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.project-tagline{color:var(--sys-text);margin:.7rem 0 0;font-size:clamp(1.05rem,1.65vw,1.3rem);font-weight:720;line-height:1.5}.project-stage__copy>p:not(.card-eyebrow,.project-tagline){color:var(--sys-text-muted);margin:.65rem 0 1rem;font-size:.84rem;line-height:1.6}.project-actions{align-items:center;margin-top:1.5rem}.projects-layout[data-enhanced=true]:not([data-active-project]) .project-detail-cta{visibility:hidden;opacity:0;pointer-events:none}.project-stage__copy .project-actions,.project-stage__copy .tag-list{justify-content:center}.project-stage__copy .project-actions{margin-top:1.2rem}.project-stage__copy .action-link{min-height:2.9rem;padding:.7rem 1.15rem}.project-preview{width:48%;min-width:0;margin:0}.project-preview__scene{perspective:80rem;width:calc(100% - 2rem);height:27rem;margin-left:2rem;position:relative}.project-preview__frame{opacity:1;transform-origin:50% 100%;transition:opacity .26s ease,transform .46s var(--motion-ease-emphasized),filter .26s ease;margin:0;position:absolute}.projects-layout[data-enhanced=true] .project-stage[data-preview-state=idle] .project-preview__frame{opacity:1}.project-preview__frame img{border:1px solid var(--sys-border);width:100%;height:auto}@supports (color:color-mix(in lab,red,red)){.project-preview__frame img{border:1px solid color-mix(in srgb,var(--sys-border) 76%,white)}}.project-preview__frame img{background:#fff;border-radius:.9rem;box-shadow:0 1.5rem 3.5rem #1123302e}.project-preview__frame figcaption{color:var(--sys-text-muted);font-family:var(--font-mono-stack);letter-spacing:.08em;text-align:center;text-transform:uppercase;margin-top:.55rem;font-size:.6rem}.project-preview__frame--client{z-index:1;width:50%;top:7.5rem;left:2%;transform:rotate(-6deg)translateZ(-1rem)}.project-preview__frame--flutter{z-index:3;width:37%;top:1rem;left:31%;transform:rotate(.7deg)translateZ(1rem)}.project-preview__frame--web{z-index:2;width:48%;top:7.2rem;right:2%;transform:rotate(5deg)translateZ(-.5rem)}.projects-layout[data-active-project] .project-preview__frame--client{transform:rotate(-6deg)translate3d(-.35rem,-.35rem,-1rem)}.projects-layout[data-active-project] .project-preview__frame--flutter{transform:rotate(0)translate3d(0,-.75rem,1rem)}.projects-layout[data-active-project] .project-preview__frame--web{transform:rotate(5deg)translate3d(.35rem,-.25rem,-.5rem)}.project-preview__caption{max-width:35rem;color:var(--sys-text-muted);text-align:center;margin:.6rem auto 0;font-size:.7rem;line-height:1.5}.capability-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:.8rem;display:grid}.capability-card{border:1px solid var(--sys-border);border-radius:var(--shape-card);background:var(--sys-surface);grid-column:span 4;min-width:0;min-height:17rem;padding:clamp(1.25rem,2.6vw,2rem)}@supports (color:color-mix(in lab,red,red)){.capability-card{background:color-mix(in srgb,var(--sys-surface) 86%,transparent)}}.capability-card{transition:border-color var(--motion-duration-standard) ease,transform var(--motion-duration-standard) var(--motion-ease-emphasized),background var(--motion-duration-standard) ease}.capability-card:nth-child(4),.capability-card:nth-child(5),.capability-card:nth-child(6),.capability-card:nth-child(7){grid-column:span 3}.capability-card:hover{border-color:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.capability-card:hover{border-color:color-mix(in srgb,var(--brand-mint) 36%,var(--sys-border))}}.capability-card:hover{background:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.capability-card:hover{background:color-mix(in srgb,var(--brand-mint) 5%,var(--sys-surface))}}.capability-card:hover{transform:translateY(-3px)}.capability-card .tag-list{margin-top:1.3rem}.capability-evidence{color:var(--sys-text-muted);margin:1.45rem 0 0;font-size:.82rem;line-height:1.65}.capability-evidence strong{color:var(--sys-text)}.practice-strip{border:1px solid var(--brand-cyan);grid-template-columns:minmax(10rem,.25fr) minmax(0,.75fr);align-items:start;gap:1.5rem;margin-top:1rem;padding:1.4rem 1.6rem;display:grid}@supports (color:color-mix(in lab,red,red)){.practice-strip{border:1px solid color-mix(in srgb,var(--brand-cyan) 22%,var(--sys-border))}}.practice-strip{border-radius:var(--shape-card);background:var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.practice-strip{background:color-mix(in srgb,var(--brand-cyan) 4%,var(--sys-surface))}}.portfolio-section--education{padding-top:3rem}.portfolio-section--education .section-heading{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.education-panel{border-radius:var(--shape-panel);background:radial-gradient(circle at 12% 8%,var(--brand-mint),transparent 25rem),var(--sys-surface);grid-template-columns:minmax(0,1.1fr) minmax(22rem,.9fr);gap:clamp(2.5rem,7vw,7rem);padding:clamp(2rem,5vw,5rem);display:grid;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.education-panel{background:radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--brand-mint) 9%,transparent),transparent 25rem),color-mix(in srgb,var(--sys-surface) 91%,transparent)}}.education-record h3{letter-spacing:-.05em;max-width:19ch;margin:1.3rem 0 .45rem;font-size:clamp(1.8rem,3.5vw,3rem);font-weight:730;line-height:1.15}.education-degree{color:var(--sys-text-muted);margin:0;font-size:1.03rem;font-weight:620}.education-record>p:not(.card-eyebrow,.education-degree){color:var(--sys-text-muted);margin:.25rem 0 0}.education-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:2.35rem;display:grid}.education-facts>div:first-child,.education-meta span{border-top:1px solid var(--sys-border);padding-top:1.15rem;font-weight:720}.education-facts{grid-template-columns:minmax(9rem,.35fr) minmax(0,.65fr);gap:1.2rem;margin:1.2rem 0 0;display:grid}.education-facts>div{min-width:0}.education-facts>div:last-child{border:1px solid var(--sys-border);background:var(--sys-surface);border-radius:1.15rem;grid-column:1/-1;margin-top:1.45rem;padding:1.3rem 1.4rem}@supports (color:color-mix(in lab,red,red)){.education-facts>div:last-child{background:color-mix(in srgb,var(--sys-surface) 78%,transparent)}}.education-facts dt{color:var(--sys-text-subtle);font-family:var(--font-mono-stack);letter-spacing:.08em;text-transform:uppercase;font-size:.63rem}.education-facts dd{color:var(--sys-text);margin:.35rem 0 0;font-size:1rem;font-weight:680;line-height:1.65}.education-facts>div:first-child dd{font-size:1.15rem}.education-results>header{margin-bottom:1.5rem}.education-results>header h3{font-family:var(--font-mono-stack);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:570}.education-results>header p{color:var(--sys-text-muted);margin:.45rem 0 0}.metric-grid{gap:.72rem;display:grid}.metric-card{--metric-color:var(--metric-mint);border:1px solid var(--metric-color);grid-template-columns:3.7rem minmax(0,1fr);align-items:center;gap:1rem;min-height:5.4rem;padding:.75rem 1rem;display:grid}@supports (color:color-mix(in lab,red,red)){.metric-card{border:1px solid color-mix(in srgb,var(--metric-color) 35%,var(--sys-border))}}.metric-card{background:var(--metric-color);border-radius:1rem}@supports (color:color-mix(in lab,red,red)){.metric-card{background:color-mix(in srgb,var(--metric-color) 4%,var(--sys-surface))}}.metric-card:nth-child(2){--metric-color:var(--metric-cyan)}.metric-card:nth-child(3){--metric-color:var(--metric-violet)}.metric-card:nth-child(4){--metric-color:var(--metric-amber)}.metric-ring{place-items:center;width:3.2rem;height:3.2rem;display:grid;position:relative}.metric-ring svg{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.metric-ring circle{fill:none;stroke-width:3.5px}.metric-ring__track{stroke:var(--metric-color)}@supports (color:color-mix(in lab,red,red)){.metric-ring__track{stroke:color-mix(in srgb,var(--metric-color) 16%,var(--sys-border))}}.metric-ring__progress{stroke:var(--metric-color);stroke-dasharray:100;stroke-dashoffset:0;stroke-linecap:round}.metric-value{color:var(--metric-color);font-family:var(--font-mono-stack);font-size:.72rem;font-weight:760;position:relative}.metric-card h4{margin:0;font-size:.88rem;font-weight:760}.metric-card p{color:var(--sys-text-muted);font-family:var(--font-mono-stack);margin:.22rem 0 0;font-size:.59rem;line-height:1.45}.portfolio-section--contact .section-heading{margin-bottom:1.75rem}.portfolio-section--contact .section-intro{margin-bottom:.35rem}.portfolio-section--contact>.section-body>.availability-note{margin-left:35%}@media (min-width:62.5rem){.portfolio-section--contact{--contact-panel-fill:var(--sys-surface)}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact{--contact-panel-fill:color-mix(in srgb,var(--sys-surface) 93%,transparent)}}.portfolio-section--contact{--contact-panel-highlight:#fffc;--contact-panel-depth:#2a4d5f0b;max-width:80rem;margin-inline:auto;padding-block:5rem 5.5rem}:root[data-theme=dark] .portfolio-section--contact{--contact-panel-highlight:#ffffff1a;--contact-panel-depth:#00040d29}.portfolio-section--contact .section-heading{margin-bottom:1rem;display:block}.portfolio-section--contact .section-index{letter-spacing:.13em;align-items:center;gap:.75rem;margin-bottom:1.1rem;padding:0;font-size:.6875rem;display:flex}.portfolio-section--contact .section-index>span:first-child{border-right:1px solid var(--sys-border-strong);padding-right:.75rem;display:inline}.portfolio-section--contact .section-heading h2{letter-spacing:-.045em;max-width:24ch;font-size:clamp(2.75rem,3.6vw,3.25rem);font-weight:650;line-height:1.12}.portfolio-section--contact .section-intro{max-width:66ch;margin:0 0 1.1rem;font-size:1rem;line-height:1.7}.portfolio-section--contact>.section-body>.availability-note{margin:0;padding-left:.3125rem;font-size:.8125rem;line-height:1.65}.portfolio-section--contact .contact-composer.glass-surface{isolation:isolate;border-color:var(--sys-border);background:radial-gradient(ellipse at 0 0,var(--brand-cyan),transparent 55%),var(--contact-panel-fill);border-radius:1.5rem;margin-top:2.25rem;padding:2rem;position:relative;overflow:clip}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-composer.glass-surface{background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--brand-cyan) 4%,transparent),transparent 55%),var(--contact-panel-fill)}}.portfolio-section--contact .contact-composer.glass-surface{box-shadow:inset 0 1px 0 var(--contact-panel-highlight),0 .5rem 1.75rem var(--contact-panel-depth)}.portfolio-section--contact .contact-composer.glass-surface:before{z-index:-1;border:1px solid var(--contact-panel-highlight);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-composer.glass-surface:before{border:1px solid color-mix(in srgb,var(--contact-panel-highlight) 45%,transparent)}}.portfolio-section--contact .contact-composer.glass-surface:before{border-radius:inherit;content:"";pointer-events:none}.portfolio-section--contact .contact-composer__glint{z-index:-1;background:var(--brand-cyan);border-radius:50%;width:18rem;height:10rem;position:absolute;top:-6rem;left:0}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-composer__glint{background:color-mix(in srgb,var(--brand-cyan) 5%,transparent)}}.portfolio-section--contact .contact-composer__glint{opacity:.4;pointer-events:none}.portfolio-section--contact .contact-layout{grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);gap:clamp(2rem,3vw,2.5rem);margin-top:0}.portfolio-section--contact .contact-form>header h3{letter-spacing:-.035em;font-size:1.5rem;font-weight:620}.portfolio-section--contact .contact-form>header p{max-width:52ch;margin-top:.5rem;font-size:.875rem;line-height:1.65}.portfolio-section--contact .form-privacy{text-align:left;max-width:60ch}.portfolio-section--contact .direct-channels{border-left:1px solid var(--sys-border);padding-left:2rem;position:static;top:auto;transform:none}.portfolio-section--contact .direct-channels>h3{letter-spacing:-.02em;margin-bottom:1.5rem;font-size:1.125rem;font-weight:650}.portfolio-section--contact .direct-channels>dl{border-bottom:1px solid var(--sys-border);grid-template-columns:1fr;gap:.85rem;margin-bottom:.75rem;padding-bottom:1.5rem}.portfolio-section--contact .direct-channels>dl div{background:0 0;border:0;border-radius:0;padding:0}.portfolio-section--contact .direct-channels dt{font-size:.625rem}.portfolio-section--contact .direct-channels dd{margin-top:.3rem;font-size:.875rem;font-weight:550;line-height:1.5}.portfolio-section--contact .direct-channels ul{gap:0}.portfolio-section--contact .direct-channels a{border:0;border-bottom:1px solid var(--sys-border);min-height:5.25rem;box-shadow:none;background:0 0;border-radius:0;grid-template-columns:2.5rem minmax(0,1fr) 1rem;gap:.75rem;padding:.875rem .25rem;transform:none}.portfolio-section--contact .direct-channels a:hover{background:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .direct-channels a:hover{background:color-mix(in srgb,var(--brand-mint) 4%,var(--sys-surface))}}.portfolio-section--contact .direct-channels a:hover{border-bottom-color:var(--brand-cyan)}.portfolio-section--contact .direct-channels a:focus-visible{outline:2px solid var(--sys-focus);outline-offset:3px;border-radius:.5rem}.portfolio-section--contact .channel-mark{width:2.5rem;height:2.5rem;color:var(--sys-text-muted);border-radius:.75rem}.portfolio-section--contact .channel-copy>span{font-family:var(--font-body-stack);letter-spacing:0;text-transform:none;font-size:.8125rem;font-weight:600}.portfolio-section--contact .channel-copy strong{color:var(--sys-text);overflow-wrap:anywhere;white-space:normal;font-size:.875rem;font-weight:550;line-height:1.5;overflow:visible}.portfolio-section--contact .contact-submit{background:linear-gradient(112deg,var(--brand-mint) 8%,var(--brand-cyan) 88%);width:fit-content;min-width:12.5rem;min-height:3.25rem;box-shadow:0 .25rem .75rem var(--brand-cyan);background-position:0;background-size:120% 100%;border:1px solid #0000;gap:.7rem;padding:.875rem 1.5rem}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-submit{box-shadow:0 .25rem .75rem color-mix(in srgb,var(--brand-cyan) 12%,transparent)}}.portfolio-section--contact .contact-submit{color:var(--sys-on-accent);transition:background-position .22s,box-shadow .16s,transform .16s}.portfolio-section--contact .contact-submit:hover:not(:disabled){box-shadow:0 .4rem 1rem var(--brand-cyan);background-position:100%}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-submit:hover:not(:disabled){box-shadow:0 .4rem 1rem color-mix(in srgb,var(--brand-cyan) 16%,transparent)}}.portfolio-section--contact .contact-submit:hover:not(:disabled){transform:translateY(-1px)}.portfolio-section--contact .contact-submit:active:not(:disabled){transform:translateY(0)scale(.99)}.portfolio-section--contact .contact-submit:focus-visible{outline:2px solid var(--sys-focus);outline-offset:4px}.portfolio-section--contact .contact-submit:disabled{cursor:wait;transform:none}@supports not ((-webkit-backdrop-filter:blur(1rem)) or (backdrop-filter:blur(1rem))){.portfolio-section--contact .contact-composer.glass-surface{background:var(--sys-glass-solid)}}}@media (min-width:62.5rem) and (prefers-reduced-motion:reduce){.portfolio-section--contact .contact-submit,.portfolio-section--contact .contact-submit:active:not(:disabled),.portfolio-section--contact .contact-submit:hover:not(:disabled){transition:none;transform:none}}@media (min-width:62.5rem) and (prefers-reduced-transparency:reduce){.portfolio-section--contact .contact-composer.glass-surface{background:var(--sys-glass-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}@media (min-width:62.5rem) and (prefers-contrast:more){.portfolio-section--contact .contact-composer.glass-surface{border-color:var(--sys-border-strong);background:var(--sys-glass-solid);box-shadow:none}}@media (min-width:62.5rem) and (forced-colors:active){.portfolio-section--contact .channel-mark,.portfolio-section--contact .contact-composer.glass-surface,.portfolio-section--contact .contact-submit{color:canvastext;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;forced-color-adjust:auto;background:canvas;border:1px solid canvastext}}.contact-layout{grid-template-columns:minmax(0,1.5fr) minmax(19rem,.68fr);align-items:start;gap:clamp(2rem,6vw,5rem);margin-top:2.5rem;display:grid}.contact-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 1rem;display:grid}.contact-form>.consent-field,.contact-form>.form-privacy,.contact-form>.honeypot-field,.contact-form>button,.contact-form>header,.contact-form>label:nth-of-type(n+3){grid-column:1/-1}.contact-form>header{margin-bottom:.45rem}.contact-form>header h3{letter-spacing:-.035em;margin:0;font-size:clamp(1.45rem,2.5vw,2.15rem)}.contact-form>header p{max-width:42rem;color:var(--sys-text-muted);margin:.55rem 0 0}.contact-form>label:not(.consent-field){min-width:0;color:var(--sys-text-muted);gap:.48rem;font-size:.78rem;font-weight:720;display:grid}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--sys-border);background:var(--sys-surface-tonal);width:100%;min-height:3.5rem;color:var(--sys-text);transition:border-color var(--motion-duration-fast) ease,box-shadow var(--motion-duration-fast) ease,background var(--motion-duration-fast) ease;border-radius:1rem;outline:none;padding:.85rem 1rem}.contact-form textarea{resize:vertical;min-height:10.5rem}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--sys-text-subtle)}.contact-form input:hover,.contact-form select:hover,.contact-form textarea:hover{border-color:var(--sys-border-strong)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--brand-cyan);background:var(--sys-surface);box-shadow:0 0 0 .25rem var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{box-shadow:0 0 0 .25rem color-mix(in srgb,var(--brand-cyan) 12%,transparent)}}.honeypot-field{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.consent-field{color:var(--sys-text-muted);grid-template-columns:1.15rem minmax(0,1fr);align-items:start;gap:.72rem;font-size:.8rem;font-weight:520;display:grid}.consent-field input{width:1.15rem;height:1.15rem;min-height:0;accent-color:var(--brand-mint);margin-top:.18rem;padding:0}.contact-form>button{border:0;width:100%}.form-privacy{color:var(--sys-text-subtle);text-align:center;margin:-.35rem 0 0;font-size:.72rem}.direct-channels{min-width:0;position:sticky;top:7.5rem}.direct-channels>dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:0 0 1rem;display:grid}.direct-channels>dl div{border:1px solid var(--sys-border);background:var(--sys-surface);border-radius:1rem;min-width:0;padding:.85rem}@supports (color:color-mix(in lab,red,red)){.direct-channels>dl div{background:color-mix(in srgb,var(--sys-surface) 70%,transparent)}}.channel-copy>span,.direct-channels dt{color:var(--sys-text-muted);font-family:var(--font-mono-stack);letter-spacing:.08em;text-transform:uppercase;font-size:.58rem}.direct-channels dd{color:var(--sys-text);margin:.25rem 0 0;font-size:.78rem;font-weight:650}.direct-channels ul{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.direct-channels a{border:1px solid var(--sys-border);background:var(--sys-surface);border-radius:1rem;grid-template-columns:2.8rem minmax(0,1fr) 1rem;align-items:center;gap:.85rem;min-height:4.8rem;padding:.7rem .85rem;display:grid}@supports (color:color-mix(in lab,red,red)){.direct-channels a{background:color-mix(in srgb,var(--sys-surface) 84%,transparent)}}.direct-channels a{transition:border-color var(--motion-duration-fast) ease,transform var(--motion-duration-fast) var(--motion-ease-emphasized),box-shadow var(--motion-duration-fast) ease;text-decoration:none}.direct-channels a:hover{border-color:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.direct-channels a:hover{border-color:color-mix(in srgb,var(--brand-mint) 43%,var(--sys-border))}}.direct-channels a:hover{box-shadow:var(--elevation-low);transform:translateY(-2px)}.channel-mark{background:var(--brand-mint);border-radius:.85rem;place-items:center;width:2.8rem;height:2.8rem;display:grid}@supports (color:color-mix(in lab,red,red)){.channel-mark{background:color-mix(in srgb,var(--brand-mint) 10%,var(--sys-surface-tonal))}}.channel-mark{color:var(--sys-text);font-family:var(--font-mono-stack);font-size:.65rem;font-weight:760}.direct-channels li:nth-child(2n) .channel-mark{background:var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.direct-channels li:nth-child(2n) .channel-mark{background:color-mix(in srgb,var(--brand-cyan) 10%,var(--sys-surface-tonal))}}.direct-channels li:nth-child(2n) .channel-mark{color:var(--sys-text)}.channel-copy{gap:.15rem;min-width:0;display:grid}.channel-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.channel-arrow{color:var(--sys-text-subtle)}.site-footer{border-top:1px solid var(--sys-border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:2rem;padding-top:3.5rem;padding-bottom:3.5rem;display:grid}.ra-seal{background:var(--sys-surface);width:7rem;height:7rem;box-shadow:var(--elevation-low);perspective:40rem;border-radius:50%;flex:none;position:relative}.ra-seal__face{width:100%;height:100%;transform:rotateX(var(--seal-tilt-x,0deg)) rotateY(var(--seal-tilt-y,0deg));transform-style:preserve-3d;transition:transform .24s var(--motion-ease-emphasized);position:relative}.ra-seal__orbit{color:var(--brand-mint);animation:seal-orbit 26s linear infinite;position:absolute;inset:0}.ra-seal__orbit svg{width:100%;height:100%}.ra-seal__orbit circle:first-of-type{fill:none;stroke:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.ra-seal__orbit circle:first-of-type{stroke:color-mix(in srgb,var(--brand-mint) 42%,var(--sys-border))}}.ra-seal__orbit circle:first-of-type{stroke-width:1px}.ra-seal__inner-ring{fill:none;stroke:var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.ra-seal__inner-ring{stroke:color-mix(in srgb,var(--brand-cyan) 25%,var(--sys-border))}}.ra-seal__inner-ring{stroke-width:1px}.ra-seal__text{fill:var(--brand-mint);font-family:var(--font-mono-stack);letter-spacing:2px;font-size:6.5px;font-weight:620}.ra-seal__monogram{background:linear-gradient(135deg,var(--brand-mint),var(--brand-cyan));width:3.5rem;height:3.5rem;box-shadow:0 .75rem 1.5rem var(--brand-cyan);border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%}@supports (color:color-mix(in lab,red,red)){.ra-seal__monogram{box-shadow:0 .75rem 1.5rem color-mix(in srgb,var(--brand-cyan) 18%,transparent)}}.ra-seal__monogram{color:#fff;font-size:.85rem;font-weight:850;transform:translate(-50%,-50%)translateZ(1rem)}.site-footer__copy p{margin:0;font-weight:690}.site-footer__copy small{color:var(--sys-text-subtle);font-family:var(--font-mono-stack);font-size:.62rem}.return-to-top{min-height:2.75rem;color:var(--sys-text-muted);align-items:center;gap:.55rem;font-size:.8rem;font-weight:720;text-decoration:none;display:inline-flex}.return-to-top span{border:1px solid var(--sys-border);background:var(--sys-surface);border-radius:50%;place-items:center;width:2.5rem;height:2.5rem;display:grid}@keyframes seal-orbit{to{transform:rotate(1turn)}}.archive-header{justify-content:space-between;align-items:center;gap:1rem;min-height:5.5rem;display:flex}.archive-header a{min-height:2.75rem;color:var(--sys-text-muted);align-items:center;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.archive-main{padding-top:clamp(4rem,9vw,8rem);padding-bottom:7rem}.archive-hero{max-width:54rem;margin-bottom:4rem}.archive-hero h1{margin-top:1rem}.archive-hero>p:last-child{max-width:44rem;color:var(--sys-text-muted);font-size:1.08rem}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.archive-card{border:1px solid var(--sys-border);border-radius:var(--shape-panel);background:var(--sys-surface);min-width:0;overflow:hidden}.archive-card>img{aspect-ratio:16/10;object-fit:cover;width:100%}.archive-card--future,.archive-card__copy{padding:clamp(1.5rem,4vw,2.75rem)}.archive-card--future{background:radial-gradient(circle at 80% 15%,var(--brand-violet),transparent 17rem),var(--sys-surface-tonal);align-content:end;min-height:22rem;display:grid}@supports (color:color-mix(in lab,red,red)){.archive-card--future{background:radial-gradient(circle at 80% 15%,color-mix(in srgb,var(--brand-violet) 11%,transparent),transparent 17rem),var(--sys-surface-tonal)}}.archive-card--future>p:not(.card-eyebrow),.archive-card__copy>p:not(.card-eyebrow){color:var(--sys-text-muted)}.archive-future-state{border:1px solid var(--sys-border);border-radius:var(--shape-card);background:var(--brand-mint);margin-top:1rem;padding:2rem}@supports (color:color-mix(in lab,red,red)){.archive-future-state{background:color-mix(in srgb,var(--brand-mint) 5%,var(--sys-surface))}}.archive-future-state h2,.archive-future-state p{margin:0}.archive-future-state p{color:var(--sys-text-muted);margin-top:.35rem}.placeholder-block{background:linear-gradient(100deg,var(--sys-surface-tonal),var(--sys-surface),var(--sys-surface-tonal));background-size:220% 100%}@media (max-width:62.4375rem){.hero-section{grid-template-columns:1fr;min-height:auto;padding-top:8.5rem}.hero-section__content{max-width:48rem}.hero-graph{width:min(100%,42rem);margin-inline:auto}.capability-card,.capability-card:nth-child(n){grid-column:span 6}.education-panel{grid-template-columns:1fr}.contact-layout{grid-template-columns:minmax(0,1.25fr) minmax(17rem,.75fr);gap:2rem}}@media (min-width:62.5rem) and (max-height:43.75rem){.site-header{top:.8rem}.hero-section{min-height:100svh;padding-top:5.8rem;padding-bottom:1.8rem}.hero-heading{font-size:clamp(5.5rem,7vw,6.35rem);line-height:.78}.hero-headline{white-space:nowrap;margin-top:1.35rem;font-size:.98rem}.hero-section .section-eyebrow{margin-top:1rem}.hero-positioning{margin-top:1rem;font-size:.9rem;line-height:1.55}.hero-section .availability-note{margin-top:.7rem;font-size:.76rem}.hero-actions{margin-top:1rem}.hero-actions .action-link{min-height:2.8rem;padding:.65rem 1.1rem;font-size:.78rem}.hero-graph>figcaption{display:none}}@media (max-width:55.99rem){.site-header{padding-inline:max(.75rem,env(safe-area-inset-left)) max(.75rem,env(safe-area-inset-right))}.site-nav{width:min(100%,32rem);min-height:3.75rem}.site-nav__desktop-links{display:none}.site-nav__icon-button{margin-left:auto}.site-nav__menu-button{display:inline-grid}.site-nav>.site-nav__dispense-slot{display:block}.site-nav__divider{display:none}.site-nav__locale{width:2.75rem;padding:0}.site-nav:not([data-menu-state=closed]){z-index:121;box-shadow:0 1rem 3.25rem #264e682b,0 .32rem .9rem #2048621a,inset 0 1.5px #ffffffe6,inset 0 -1px #44bb9121}.site-header[data-condensed=true] .site-nav:not([data-menu-state=closed]){transform:none}:root[data-theme=dark] .site-nav:not([data-menu-state=closed]){box-shadow:0 1.15rem 3.5rem #00071180,0 .3rem 1rem #0000004d,inset 0 1.5px #ffffff2e,inset 0 -1px #ffffff0f}.section-heading{grid-template-columns:1fr;gap:.75rem}.portfolio-section--contact>.section-body>.availability-note,.section-intro{margin-left:0}.about-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:2rem}.identity-lens{position:relative;top:auto}.contact-layout{grid-template-columns:1fr}.direct-channels{position:static}.direct-channels ul{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-layout{min-height:52rem}.project-selector{gap:1rem;height:auto;top:0;left:0;right:0}.project-stage{top:10rem}.project-stage__inner{min-height:42rem}.project-preview__scene{height:25rem}.project-stage__copy{width:48%;padding:0;top:29rem;left:4%}.project-stage__copy h3{font-size:clamp(2.4rem,7vw,4rem)}}@media (max-width:49.99rem){:root,:root[data-theme=light]{--font-body-stack:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-display-stack:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono-stack:ui-monospace,"Cascadia Code","SFMono-Regular",Consolas,monospace;--space-section:clamp(4.75rem,18vw,6.5rem)}body{background:var(--sys-canvas)}.ambient-background{display:none}.glass-surface{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--sys-glass-solid)}.hero-section{gap:3rem;padding-top:7.5rem}.hero-heading{font-size:clamp(4rem,20vw,6.2rem)}.hero-graph>figcaption p{text-align:left}.hero-graph .tag-list{justify-content:flex-start}.about-layout{grid-template-columns:1fr}.identity-lens{width:min(100%,30rem)}.principle-list{grid-template-columns:1fr}.experience-card header{display:grid}.status-badge{justify-self:start}.capability-card,.capability-card:nth-child(n){grid-column:1/-1;min-height:auto}.practice-strip{grid-template-columns:1fr}.education-panel{border-radius:1.65rem;padding:1.4rem}.contact-form{grid-template-columns:1fr}.contact-form>.form-privacy,.contact-form>button,.contact-form>header,.contact-form>label{grid-column:1}.direct-channels ul{grid-template-columns:1fr}.project-focus-veil{display:none}.projects-layout{gap:1.25rem;min-height:0;display:grid}.projects-layout[data-enhanced=true]:not([data-active-project]){row-gap:0}.project-selector{z-index:1;grid-template-columns:1fr;justify-items:stretch;gap:.55rem;height:auto;display:grid;position:relative;top:auto;left:auto;right:auto}.project-selector__item{border:1px solid var(--sys-border);background:var(--sys-surface);border-radius:1.2rem;grid-template-columns:3.8rem minmax(0,1fr);width:100%;min-height:5.8rem;padding:.65rem}@supports (color:color-mix(in lab,red,red)){.project-selector__item{background:color-mix(in srgb,var(--sys-surface) 82%,transparent)}}.project-selector__glyph{width:3.8rem;height:3.8rem}.project-selector__item--future,.projects-layout[data-active-project] .project-selector__item--selectable{z-index:1}.project-stage{z-index:1;position:relative;inset:auto;overflow:hidden}.projects-layout[data-enhanced=true] .project-stage[data-preview-state=idle]{visibility:hidden;height:0}.project-stage__inner{grid-template-columns:1fr;grid-template-areas:"preview""copy";gap:1.5rem;min-height:0;padding-top:.5rem;display:grid}.project-stage__copy{text-align:left;width:auto;padding:0;position:relative;top:auto;left:auto}.project-stage__copy h3{font-size:clamp(2.35rem,12vw,3.8rem);display:block}.project-preview{grid-area:preview;width:100%}.project-preview__scene{justify-content:center;align-items:flex-end;width:100%;height:auto;margin-left:0;padding:1.2rem .35rem 0;display:flex}.project-preview__frame,.project-preview__frame--client,.project-preview__frame--flutter,.project-preview__frame--web{flex:0 0 43%;width:43%;position:relative;top:auto;left:auto;right:auto}.project-preview__frame--client{margin-right:-14%;transform:rotate(-5deg)}.project-preview__frame--flutter{z-index:3;flex-basis:39%;transform:translateY(-.8rem)}.project-preview__frame--web{margin-left:-14%;transform:rotate(5deg)}.projects-layout[data-active-project] .project-preview__frame--client{transform:rotate(-5deg)translateY(-.2rem)}.projects-layout[data-active-project] .project-preview__frame--flutter{transform:translateY(-1rem)}.projects-layout[data-active-project] .project-preview__frame--web{transform:rotate(5deg)translateY(-.2rem)}.project-preview__frame figcaption{font-size:.48rem}.project-preview__caption{margin-top:.8rem}.project-actions{justify-content:stretch;display:grid}.project-stage__copy .tag-list{justify-content:flex-start}.project-actions .action-link,.project-actions .text-link{justify-content:center;width:100%}.site-footer{grid-template-columns:auto minmax(0,1fr)}.return-to-top{grid-column:1/-1;justify-content:space-between}.archive-grid{grid-template-columns:1fr}}@media (max-width:29.99rem){:root,:root[data-theme=light]{--space-page:16px}.site-header{top:max(.7rem,env(safe-area-inset-top));padding-inline:max(8px,env(safe-area-inset-left)) max(8px,env(safe-area-inset-right))}.site-nav{gap:2px;min-height:58px;padding:4px}.mobile-nav-feed{top:calc(max(.7rem, env(safe-area-inset-top)) + 2.65rem)}.site-nav__mark{width:44px;height:44px}.site-nav__icon-button,.site-nav__locale,.site-nav__menu-button{width:44px;min-width:44px;height:44px;padding:0}.site-nav__divider{display:none}.hero-heading{font-size:clamp(3.75rem,22vw,5.25rem)}.hero-headline{font-size:1rem}.hero-actions{width:100%;display:grid}.hero-actions .action-link{width:100%}.archive-hero h1,.section-heading h2{font-size:clamp(2.4rem,14vw,3.6rem)}.experience-card{grid-template-columns:44px minmax(0,1fr);gap:8px}.experience-route:after,.experience-route:before{left:22px}.route-marker{width:44px;height:44px;box-shadow:0 0 0 6px var(--sys-canvas)}.capability-card,.experience-card>article,.practice-strip{padding:16px}.card-eyebrow,.experience-card h3,.organization,.status-badge,.tag-list li{overflow-wrap:anywhere;white-space:normal}.direct-channels>dl,.education-facts,.education-meta{grid-template-columns:1fr}.education-facts>div:last-child{grid-column:1}.metric-card{grid-template-columns:3.3rem minmax(0,1fr);padding-inline:.7rem}.site-footer{grid-template-columns:1fr}.ra-seal{width:6.5rem;height:6.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{scroll-behavior:auto!important;transition-duration:1e-8s!important;animation-duration:1e-8s!important;animation-iteration-count:1!important}.ra-seal__orbit{animation:none}.site-nav__active-indicator,.site-nav__active-indicator[data-phase=settled],.site-nav__active-indicator[data-phase=stretch]{transition:none!important;transform:none!important}.project-preview__frame--client{transform:rotate(-6deg)}.project-preview__frame--flutter{transform:none}.project-preview__frame--web{transform:rotate(5deg)}}@media (prefers-contrast:more){.mobile-nav-sheet,.site-nav{border-color:var(--sys-border-strong);background:var(--sys-glass-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}@media (forced-colors:active){.availability-note,.hero-graph>figcaption,.hero-graph__node-label,.hero-heading,.hero-headline,.hero-positioning,.section-eyebrow,body{forced-color-adjust:auto;color:canvastext!important;fill:canvastext!important}.hero-heading__accent{-webkit-text-fill-color:CanvasText;background:0 0;color:canvastext!important}.action-link--primary,.action-link--secondary{box-shadow:none;color:buttontext;background:canvas;border:1px solid buttontext}.glass-surface,.mobile-nav-backdrop,.portrait-frame figcaption,.project-focus-veil,[data-glass-surface],[data-glass-surface] [data-glass-surface]{-webkit-backdrop-filter:none!important}.capability-card,.direct-channels a,.experience-card>article,.glass-surface,.metric-card,.mobile-nav-sheet,.project-selector__item,.site-nav{color:canvastext;background:canvas;border:1px solid canvastext}.mobile-nav-sheet,.site-nav{box-shadow:none}.site-nav:after,.site-nav:before,.site-nav>.site-nav__dispense-slot{display:none}.site-nav__mark{box-shadow:none;color:buttontext;background:buttonface;border:1px solid buttontext}.mobile-nav-sheet__link[data-active=true]{color:linktext;background:canvas;border:2px solid highlight;box-shadow:inset 4px 0 highlight}.project-focus-veil{opacity:.7;background:canvas}.site-nav__active-indicator{background:canvas;border:2px solid highlight}}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){@media (forced-colors:active){.glass-surface,.mobile-nav-backdrop,.portrait-frame figcaption,.project-focus-veil,[data-glass-surface],[data-glass-surface] [data-glass-surface]{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}}@supports not ((-webkit-backdrop-filter:blur(1rem)) or (backdrop-filter:blur(1rem))){.glass-surface,.mobile-nav-sheet,.site-nav{background:var(--sys-glass-solid)}}.contact-composer .contact-layout{z-index:1;margin-top:0;position:relative}.contact-form{align-content:start}.contact-form--success>*,.contact-form>.contact-error-summary,.contact-form>.contact-field--wide,.contact-form>.contact-status,.contact-form>header{grid-column:1/-1}.contact-form--success{align-content:start;gap:1rem;display:grid}.contact-field{gap:.48rem;min-width:0;display:grid}.contact-field__label{color:var(--sys-text-muted);font-size:.78rem;font-weight:720}.contact-field__required{color:var(--sys-status-danger);margin-left:.25rem}.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-select__native,.contact-select__trigger{border:1px solid var(--sys-border);width:100%;min-height:3.5rem;padding:.85rem 1rem}@supports (color:color-mix(in lab,red,red)){.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-select__native,.contact-select__trigger{border:1px solid color-mix(in srgb,var(--sys-border) 92%,transparent)}}.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-select__native,.contact-select__trigger{background:var(--sys-surface-tonal);border-radius:1rem}@supports (color:color-mix(in lab,red,red)){.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-select__native,.contact-select__trigger{background:color-mix(in srgb,var(--sys-surface-tonal) 96%,var(--sys-surface))}}.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-select__native,.contact-select__trigger{color:var(--sys-text);font:inherit;transition:border-color var(--motion-duration-fast) ease,box-shadow var(--motion-duration-fast) ease,background var(--motion-duration-fast) ease,transform var(--motion-duration-fast) var(--motion-ease-emphasized);outline:none}.contact-form input:not([type=checkbox]):hover,.contact-form textarea:hover,.contact-select__native:hover,.contact-select__trigger:hover{border-color:var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.contact-form input:not([type=checkbox]):hover,.contact-form textarea:hover,.contact-select__native:hover,.contact-select__trigger:hover{border-color:color-mix(in srgb,var(--brand-cyan) 38%,var(--sys-border-strong))}}.contact-form input:not([type=checkbox]):hover,.contact-form textarea:hover,.contact-select__native:hover,.contact-select__trigger:hover{background:var(--sys-surface)}.contact-form input:not([type=checkbox]):focus,.contact-form textarea:focus,.contact-select__native:focus,.contact-select__trigger:focus-visible{border-color:var(--brand-cyan);background:var(--sys-surface);box-shadow:0 0 0 .22rem var(--brand-cyan),0 .6rem 1.5rem var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.contact-form input:not([type=checkbox]):focus,.contact-form textarea:focus,.contact-select__native:focus,.contact-select__trigger:focus-visible{box-shadow:0 0 0 .22rem color-mix(in srgb,var(--brand-cyan) 17%,transparent),0 .6rem 1.5rem color-mix(in srgb,var(--brand-cyan) 6%,transparent)}}.contact-form [aria-invalid=true]:not([type=checkbox]),.contact-select__trigger[aria-invalid=true]{border-color:var(--sys-status-danger)}@supports (color:color-mix(in lab,red,red)){.contact-form [aria-invalid=true]:not([type=checkbox]),.contact-select__trigger[aria-invalid=true]{border-color:color-mix(in srgb,var(--sys-status-danger) 76%,var(--sys-border))}}.contact-field__meta{color:var(--sys-text-subtle);font-family:var(--font-mono-stack);grid-template-columns:minmax(0,1fr) auto;gap:.75rem;font-size:.64rem;display:grid}.contact-form .form-privacy{margin-top:-.25rem;line-height:1.6}.contact-select{position:relative}.contact-select[data-enhanced=true] .contact-select__native,.contact-select__native[aria-hidden=true]{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;min-height:0;padding:0;position:absolute;overflow:hidden}.contact-select__trigger{text-align:left;cursor:pointer;grid-template-columns:minmax(0,1fr) 1.2rem;align-items:center;gap:.75rem;display:grid}.contact-select__trigger span[data-placeholder=true]{color:var(--sys-text-muted)}.contact-select__chevron{width:.58rem;height:.58rem;color:var(--brand-cyan);transition:transform var(--motion-duration-fast) var(--motion-ease-emphasized);border-bottom:1.5px solid;border-right:1.5px solid;justify-self:center;transform:translateY(-.15rem)rotate(45deg)}.contact-select__trigger[aria-expanded=true] .contact-select__chevron{transform:translateY(.15rem)rotate(225deg)}.portfolio-section--contact .contact-channel-group+.contact-channel-group{margin-top:1.25rem}.portfolio-section--contact .contact-channel-group>h4{color:var(--sys-text-muted);margin:0 0 .5rem;font-size:.8125rem;font-weight:650;line-height:1.5}.portfolio-section--contact .contact-channel-group .channel-copy strong{overflow-wrap:anywhere;white-space:normal;overflow:visible}@media (max-width:68.6875rem){.portfolio-section--contact{--contact-panel-fill:var(--sys-surface)}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact{--contact-panel-fill:color-mix(in srgb,var(--sys-surface) 93%,transparent)}}.portfolio-section--contact{--contact-panel-highlight:#fffc;--contact-panel-depth:#2a4d5f0b;content-visibility:visible;contain-intrinsic-size:none;padding-block:3.5rem 4.5rem}:root[data-theme=dark] .portfolio-section--contact{--contact-panel-highlight:#ffffff1a;--contact-panel-depth:#00040d29}.portfolio-section--contact .section-heading{margin-bottom:1rem;display:block}.portfolio-section--contact .section-index{letter-spacing:.11em;align-items:center;gap:.75rem;margin:0 0 1rem;padding:0;font-size:.75rem;display:flex}.portfolio-section--contact .section-index>span:first-child{border-right:1px solid var(--sys-border-strong);padding-right:.75rem;display:inline}.portfolio-section--contact .section-heading h2{letter-spacing:-.04em;overflow-wrap:anywhere;max-width:24ch;font-size:clamp(2rem,4.2vw,2.75rem);font-weight:650;line-height:1.14}.portfolio-section--contact>.section-body>.section-intro{max-width:66ch;margin:0 0 1rem;font-size:1rem;line-height:1.65}.portfolio-section--contact>.section-body>.availability-note{margin:0;padding-left:.3125rem;font-size:.875rem;line-height:1.6}:root .portfolio-section--contact .contact-composer.glass-surface{isolation:isolate;border-color:var(--sys-border);background:radial-gradient(ellipse at 0 0,var(--brand-cyan),transparent 55%),var(--contact-panel-fill);border-radius:1.5rem;margin-top:1.75rem;padding:1.5rem;position:relative;overflow:clip}@supports (color:color-mix(in lab,red,red)){:root .portfolio-section--contact .contact-composer.glass-surface{background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--brand-cyan) 4%,transparent),transparent 55%),var(--contact-panel-fill)}}:root .portfolio-section--contact .contact-composer.glass-surface{box-shadow:inset 0 1px 0 var(--contact-panel-highlight),0 .5rem 1.75rem var(--contact-panel-depth)}:root .portfolio-section--contact .contact-composer.glass-surface:before{z-index:-1;border-color:var(--contact-panel-highlight);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){:root .portfolio-section--contact .contact-composer.glass-surface:before{border-color:color-mix(in srgb,var(--contact-panel-highlight) 45%,transparent)}}:root .portfolio-section--contact .contact-composer.glass-surface:before{border-radius:inherit;content:"";pointer-events:none}.portfolio-section--contact .contact-composer__glint{z-index:-1;background:var(--brand-cyan);border-radius:50%;width:18rem;height:10rem;position:absolute;top:-6rem;left:0}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-composer__glint{background:color-mix(in srgb,var(--brand-cyan) 9%,transparent)}}.portfolio-section--contact .contact-composer__glint{opacity:.4;pointer-events:none;transform:none}.portfolio-section--contact .contact-composer .contact-layout{grid-template-columns:minmax(0,1fr);gap:2rem;margin-top:0}.portfolio-section--contact .contact-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1rem}.portfolio-section--contact .contact-form>header h3{letter-spacing:-.035em;font-size:1.5rem}.portfolio-section--contact .contact-form>header p{max-width:52ch;margin-top:.5rem;font-size:1rem;line-height:1.65}.portfolio-section--contact .contact-field__label{font-size:.875rem;line-height:1.5}.portfolio-section--contact .contact-field__meta{font-size:.75rem;line-height:1.5}.portfolio-section--contact .contact-field__error{font-size:.8125rem}.portfolio-section--contact .contact-error-summary,.portfolio-section--contact .contact-error-summary p,.portfolio-section--contact .contact-error-summary ul,.portfolio-section--contact .contact-status,.portfolio-section--contact .contact-status p{font-size:.875rem}.portfolio-section--contact .consent-field{grid-template-columns:1.25rem minmax(0,1fr);align-items:start;min-height:2.75rem;padding-block:.5rem;font-size:.875rem;line-height:1.6}.portfolio-section--contact .consent-field input{width:1.25rem;height:1.25rem;margin-top:.1rem}.portfolio-section--contact .contact-form .form-privacy{text-align:left;max-width:65ch;margin-top:0;font-size:.8125rem;line-height:1.65}.portfolio-section--contact .contact-submit{background:linear-gradient(112deg,var(--brand-mint) 8%,var(--brand-cyan) 88%);width:fit-content;min-width:12.5rem;min-height:3.25rem;color:var(--sys-on-accent);box-shadow:0 .25rem .75rem var(--brand-cyan);border:1px solid #0000;padding:.875rem 1.5rem}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-submit{box-shadow:0 .25rem .75rem color-mix(in srgb,var(--brand-cyan) 12%,transparent)}}.portfolio-section--contact .contact-submit:focus-visible,.portfolio-section--contact .direct-channels a:focus-visible{outline:2px solid var(--sys-focus);outline-offset:4px}.portfolio-section--contact .direct-channels{border:0;border-top:1px solid var(--sys-border);min-width:0;padding:1.75rem 0 0;position:static;top:auto;transform:none}.portfolio-section--contact .direct-channels>h3{letter-spacing:-.02em;margin-bottom:1.25rem;font-size:1.125rem;font-weight:650}.portfolio-section--contact .direct-channels>dl{grid-template-columns:minmax(0,1fr);gap:.75rem;margin-bottom:1.25rem}.portfolio-section--contact .direct-channels>dl div{background:0 0;border:0;border-radius:0;padding:0}.portfolio-section--contact .direct-channels dt{font-size:.6875rem}.portfolio-section--contact .direct-channels dd{margin-top:.3rem;font-size:.875rem;font-weight:550;line-height:1.5}.portfolio-section--contact .contact-channel-group>h4{font-size:.875rem;line-height:1.5}.portfolio-section--contact .direct-channels ul{grid-template-columns:minmax(0,1fr);gap:0}.portfolio-section--contact .direct-channels a{border:0;border-bottom:1px solid var(--sys-border);min-height:4.75rem;box-shadow:none;background:0 0;border-radius:0;grid-template-columns:2.5rem minmax(0,1fr) 1rem;gap:.75rem;padding:.75rem .25rem;transform:none}.portfolio-section--contact .channel-mark{border-radius:.75rem;width:2.5rem;height:2.5rem}.portfolio-section--contact .channel-copy>span{font-family:var(--font-body-stack);letter-spacing:0;text-transform:none;font-size:.8125rem;font-weight:600}.portfolio-section--contact .channel-copy strong{color:var(--sys-text);overflow-wrap:anywhere;white-space:normal;font-size:.875rem;font-weight:550;line-height:1.5}.portfolio-section--contact .contact-error-summary,.portfolio-section--contact .contact-form :is(input,textarea,button),.portfolio-section--contact .direct-channels a{scroll-margin-block:6rem}@supports not ((-webkit-backdrop-filter:blur(1rem)) or (backdrop-filter:blur(1rem))){:root .portfolio-section--contact .contact-composer.glass-surface{background:var(--sys-glass-solid)}}}@media (min-width:48rem) and (max-width:68.6875rem){.portfolio-section--contact .direct-channels{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem;display:grid}.portfolio-section--contact .direct-channels>dl,.portfolio-section--contact .direct-channels>h3{grid-column:1/-1;margin-bottom:0}.portfolio-section--contact .direct-channels>dl{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-section--contact .contact-channel-group+.contact-channel-group{margin-top:0}}@media (max-width:47.9375rem){:root .portfolio-section--contact .contact-composer.glass-surface{border-radius:1.25rem;padding:1.125rem}.portfolio-section--contact .contact-form{grid-template-columns:minmax(0,1fr)}.portfolio-section--contact .contact-form>*{grid-column:1}.portfolio-section--contact .contact-submit{width:100%;min-width:0}}@media (max-width:68.6875rem) and (prefers-reduced-transparency:reduce){:root .portfolio-section--contact .contact-composer.glass-surface{background:var(--sys-glass-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}@media (max-width:68.6875rem) and (prefers-contrast:more){:root .portfolio-section--contact .contact-composer.glass-surface{border-color:var(--sys-border-strong);background:var(--sys-glass-solid);box-shadow:none}}@media (max-width:68.6875rem) and (forced-colors:active){.portfolio-section--contact .channel-mark,.portfolio-section--contact .contact-submit,:root .portfolio-section--contact .contact-composer.glass-surface{color:canvastext;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;forced-color-adjust:auto;background:canvas;border:1px solid canvastext}}.portfolio-section--education:has(~.portfolio-section--contact){padding-block-end:calc(var(--space-section) / 2)}@media (max-width:68.6875rem){.portfolio-section--contact .contact-composer .direct-channels a{-webkit-tap-highlight-color:var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-composer .direct-channels a{-webkit-tap-highlight-color:color-mix(in srgb,var(--brand-cyan) 28%,transparent)}}.portfolio-section--contact .contact-composer .direct-channels a{transition:background-color .18s,border-color .18s,box-shadow .18s}.portfolio-section--contact .contact-composer .direct-channels a:focus-visible{background:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-composer .direct-channels a:focus-visible{background:color-mix(in srgb,var(--brand-mint) 4%,var(--sys-surface))}}.portfolio-section--contact .contact-composer .direct-channels a:focus-visible{outline:2px solid var(--sys-focus);outline-offset:4px}}@media (min-width:48rem) and (max-width:68.6875rem) and (hover:hover) and (pointer:fine){.portfolio-section--contact .contact-composer .direct-channels a{transition:border-color var(--motion-duration-fast) ease,transform var(--motion-duration-fast) var(--motion-ease-emphasized),box-shadow var(--motion-duration-fast) ease}.portfolio-section--contact .contact-composer .direct-channels a:hover{border-bottom-color:var(--brand-cyan);background:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-composer .direct-channels a:hover{background:color-mix(in srgb,var(--brand-mint) 4%,var(--sys-surface))}}.portfolio-section--contact .contact-composer .direct-channels a:hover{box-shadow:var(--elevation-low);transform:translateY(-2px)}}@media (min-width:48rem) and (max-width:68.6875rem) and (hover:none){.portfolio-section--contact .contact-composer .direct-channels a:hover:not(:active):not(:focus-visible){border-bottom-color:var(--sys-border);box-shadow:none;background:0 0;transform:none}}@media (max-width:47.9375rem){.portfolio-section--contact .contact-composer .direct-channels>h3{margin-bottom:1rem}.portfolio-section--contact .contact-composer .direct-channels>dl{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:.75rem;margin-bottom:1.25rem}.portfolio-section--contact .contact-composer .direct-channels ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.portfolio-section--contact .contact-composer .direct-channels li{justify-items:center;min-width:0;display:grid}.portfolio-section--contact .contact-composer .direct-channels a{border:1px solid var(--sys-border-strong);background:var(--brand-mint);border-radius:1rem;grid-template-columns:minmax(0,1fr);justify-self:center;place-items:center;gap:0;width:3.5rem;min-width:44px;max-width:100%;height:3.5rem;min-height:3.5rem;padding:0;position:relative}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-composer .direct-channels a{background:color-mix(in srgb,var(--brand-mint) 7%,var(--sys-surface))}}.portfolio-section--contact .contact-composer .direct-channels a .channel-mark{width:2rem;height:2rem;color:var(--sys-text);background:0 0;border-radius:0}.portfolio-section--contact .contact-composer .direct-channels .channel-mark svg{width:1.5rem;height:1.5rem}.portfolio-section--contact .contact-composer .direct-channels .channel-copy{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:0;padding:0;position:absolute;overflow:hidden}.portfolio-section--contact .contact-composer .direct-channels .channel-arrow{display:none}}@media (max-width:47.9375rem) and (hover:hover) and (pointer:fine){.portfolio-section--contact .contact-composer .direct-channels a:hover{border-color:var(--brand-cyan);background:var(--brand-mint)}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-composer .direct-channels a:hover{background:color-mix(in srgb,var(--brand-mint) 14%,var(--sys-surface))}}.portfolio-section--contact .contact-composer .direct-channels a:hover{box-shadow:none;transform:none}}@media (max-width:68.6875rem){.portfolio-section--contact .contact-composer .direct-channels a:active{border-color:var(--brand-cyan);background:var(--brand-cyan)}@supports (color:color-mix(in lab,red,red)){.portfolio-section--contact .contact-composer .direct-channels a:active{background:color-mix(in srgb,var(--brand-cyan) 16%,var(--sys-surface))}}.portfolio-section--contact .contact-composer .direct-channels a:active{box-shadow:inset 0 0 0 1px var(--sys-focus)}}@media (max-width:68.6875rem) and (prefers-reduced-motion:reduce){.portfolio-section--contact .contact-composer .direct-channels a{transition:none}}@media (max-width:68.6875rem) and (forced-colors:active){.portfolio-section--contact .contact-composer .direct-channels a{color:linktext;box-shadow:none;forced-color-adjust:auto;background:canvas;border-color:canvastext}.portfolio-section--contact .contact-composer .direct-channels a:is(:focus-visible,:active){outline-offset:4px;outline:2px solid highlight}}@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-font-weight{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-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-ease{syntax:"*";inherits:false}