@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a342834df7752944-s.3hd2l7bm32o7k.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d3fe2f289711ac3f-s.1l2zhvq5eocqf.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/58c4895d0a0ef7cc-s.2vhvl9vrvk-va.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/bfc7db5c00d21bc5-s.173xwsdme27n8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6ab0db14f70d8ed6-s.13hnt-xgp82zk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a343f882a40d2cc9-s.p.1sj6eobyi31rd.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Fallback;src:local(Arial);ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.0%;size-adjust:103.19%}.manrope_de7b2fa9-module__1ltb7q__className{font-family:Manrope,Manrope Fallback;font-style:normal}.manrope_de7b2fa9-module__1ltb7q__variable{--font-manrope:"Manrope", "Manrope Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer theme{:root,:host{--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--leading-tight:1.25;--ease-out:cubic-bezier(0, 0, .2, 1);--default-font-family:var(--font-manrope);--default-mono-font-family:var(--font-geist-mono);--color-background:var(--color-background)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.sticky{position:sticky}}:root{--palette-paper:#f3efe5;--palette-paper-light:#fbfaf6;--palette-paper-deep:#e5e0d5;--palette-ink:#121614;--palette-ink-soft:#444b46;--palette-ink-faint:#747c76;--palette-line:#d4cfc4;--palette-line-strong:#aaa69d;--palette-blue:#315884;--palette-blue-deep:#173654;--palette-blue-soft:#d5e4ee;--palette-sage:#9eaf98;--palette-sage-deep:#4f624f;--palette-sage-soft:#e1e8dc;--palette-coral:#b45d4c;--palette-coral-soft:#f0d8d1;--palette-gold:#a17832;--palette-gold-soft:#eee0bd;--palette-purple:#655c82;--palette-purple-soft:#ded9e9;--palette-error:#a13f5a;--palette-white:#fff;--color-background:var(--palette-paper-deep);--color-surface:var(--palette-paper-light);--color-surface-muted:var(--palette-paper);--color-text:var(--palette-ink);--color-text-muted:var(--palette-ink-soft);--color-text-faint:var(--palette-ink-faint);--color-border:var(--palette-line);--color-border-strong:var(--palette-line-strong);--color-accent:var(--palette-blue);--color-accent-deep:var(--palette-blue-deep);--color-accent-soft:var(--palette-blue-soft);--color-success:var(--palette-sage-deep);--color-success-soft:var(--palette-sage-soft);--color-inverse:var(--palette-ink);--color-inverse-text:var(--palette-paper-light);--color-error:var(--palette-error);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--space-10:8rem;--space-11:12rem;--text-xs:.72rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:clamp(1.8rem, 3vw, 2.75rem);--text-3xl:clamp(2.6rem, 5vw, 5.3rem);--text-display:clamp(3.65rem, 7.2vw, 7.4rem);--leading-tight:.94;--leading-heading:1.04;--leading-copy:1.62;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--radius-small:.65rem;--radius-medium:1.25rem;--radius-large:2.4rem;--radius-full:999rem;--shadow-small:0 .75rem 2rem #12161414;--shadow-medium:0 1.5rem 4rem #1216141a;--duration-fast:.16s;--duration-normal:.28s;--duration-slow:.62s;--ease-out:cubic-bezier(.22, 1, .36, 1);--page-inset:clamp(.8rem, 1.8vw, 1.75rem);--profile-width:clamp(21rem, 28vw, 32rem);--navigation-width:3.7rem;--content-width:118rem;--reading-width:44rem;--control-height:3rem;--z-base:1;--z-sticky:20;--z-navigation:30;--z-skip:50;--z-texture:60}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-block-start:var(--page-inset)}body{background:var(--color-background);min-width:20rem;color:var(--color-text);font-family:var(--font-manrope), sans-serif;font-size:var(--text-base);line-height:var(--leading-copy);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0}body:before{z-index:var(--z-texture);content:"";opacity:.035;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.42'/%3E%3C/svg%3E");position:fixed;inset:0}::selection{background:var(--color-accent);color:var(--color-inverse-text)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img,svg{display:block}svg{stroke-width:1.75px;width:1.05rem;height:1.05rem}h1,h2,h3,p{margin:0}h1,h2,h3{word-spacing:.08em}ul,ol,dl,dd{margin:0;padding:0}ul,ol{list-style:none}:focus-visible{outline:.18rem solid var(--color-accent);outline-offset:.22rem}.skip-link{z-index:var(--z-skip);padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);background:var(--color-inverse);color:var(--color-inverse-text);font-family:var(--font-geist-mono), monospace;font-size:var(--text-sm);transition:transform var(--duration-fast) var(--ease-out);position:fixed;inset-block-start:var(--space-4);inset-inline-start:var(--space-4);transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.section-kicker{color:var(--color-accent);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.1em;text-transform:uppercase}.section-heading{gap:var(--space-5);max-width:58rem;display:grid}.section-heading h2{font-size:var(--text-3xl);font-weight:var(--weight-medium);letter-spacing:-.055em;line-height:var(--leading-tight)}.section-heading>p:last-child{max-width:var(--reading-width);color:var(--color-text-muted);font-size:var(--text-lg)}.button{min-height:var(--control-height);justify-content:center;align-items:center;gap:var(--space-3);padding-inline:var(--space-5);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-semibold);transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:.08rem solid #0000;display:inline-flex}.button:hover{transform:translateY(-.12rem)}.button--primary{background:var(--color-inverse);color:var(--color-inverse-text)}.button--primary:hover{background:var(--color-accent-deep)}.button--secondary{border-color:var(--color-border-strong);color:var(--color-text);background:0 0}.button--secondary:hover{border-color:var(--color-text);background:var(--color-surface-muted)}.portfolio{min-height:100svh;padding:var(--page-inset)}.portfolio-shell{width:min(100%, var(--content-width));grid-template-columns:minmax(20rem, var(--profile-width)) minmax(0, 1fr) var(--navigation-width);gap:var(--page-inset);margin-inline:auto;display:grid}.portfolio-shell__profile{top:var(--page-inset);height:calc(100svh - (var(--page-inset) * 2));align-self:start;position:sticky}.portfolio-main{gap:var(--page-inset);min-width:0;display:grid}.content-section{padding:clamp(var(--space-7), 5vw, var(--space-9));border-radius:var(--radius-large);background:var(--color-surface);box-shadow:var(--shadow-small);border:.08rem solid #12161417;position:relative;overflow:hidden}.profile{border-radius:var(--radius-large);background:var(--color-accent-deep);height:100%;box-shadow:var(--shadow-medium);color:var(--color-inverse-text);isolation:isolate;position:relative;overflow:hidden}.profile__surface{z-index:-3;background:radial-gradient(circle at 72% 13%, #d5e4ee47, transparent 31%), radial-gradient(circle at 18% 56%, #9eaf9838, transparent 34%), linear-gradient(145deg, var(--palette-blue) 0%, var(--palette-blue-deep) 58%, var(--palette-ink) 100%);position:absolute;inset:0}.profile__surface:after{background-image:linear-gradient(#ffffff0d .06rem,#0000 .06rem),linear-gradient(90deg,#ffffff0d .06rem,#0000 .06rem);background-size:var(--space-8) var(--space-8);content:"";position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 78%);mask-image:linear-gradient(#000,#0000 78%)}.profile__topbar{z-index:5;inset-block-start:var(--space-5);inset-inline:var(--space-5);justify-content:space-between;align-items:center;display:flex;position:absolute}.profile__monogram{border-radius:var(--radius-full);width:2.8rem;height:2.8rem;font-family:var(--font-geist-mono), monospace;font-size:var(--text-sm);font-weight:var(--weight-bold);letter-spacing:-.06em;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);border:.08rem solid #ffffff52;place-items:center;display:grid}.profile__monogram:hover{background:var(--color-inverse-text);color:var(--color-accent-deep)}.profile__socials{gap:var(--space-2);display:flex}.profile__socials a{border-radius:var(--radius-full);color:#ffffffc7;width:2.7rem;height:2.7rem;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:#ffffff17;place-items:center;display:grid}.profile__socials a:hover{color:var(--color-inverse-text);background:#ffffff2e}.profile__identity-art,.profile__project-art{z-index:1;inset:5.5rem var(--space-5) 14.5rem;transition:opacity var(--duration-slow) var(--ease-out), transform var(--duration-slow) var(--ease-out);position:absolute}.profile__identity-art{place-items:center;display:grid}.profile__identity-art>strong{z-index:3;font-family:var(--font-manrope), sans-serif;font-size:clamp(7rem,14vw,13rem);font-weight:var(--weight-semibold);letter-spacing:-.13em;text-shadow:0 1.2rem 3rem #0000002e;line-height:1;position:relative;transform:translate(-.09em)}.profile__orbit{border-radius:var(--radius-full);border:.08rem solid #ffffff2e;position:absolute}.profile__orbit--outer{aspect-ratio:1;width:min(24rem,76%);animation:28s linear infinite profile-orbit}.profile__orbit--inner{aspect-ratio:1;border-style:dashed;width:min(15rem,49%);animation:20s linear infinite reverse profile-orbit}.profile__node{z-index:4;padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;background:#12161461;border:.08rem solid #ffffff2e;font-size:.62rem;position:absolute}.profile__node--web{inset-block-start:10%;inset-inline-start:9%}.profile__node--api{inset-block-start:25%;inset-inline-end:6%}.profile__node--ai{inset-block-end:19%;inset-inline-start:5%}.profile__node--cloud{inset-block-end:7%;inset-inline-end:9%}.profile__project-art{opacity:0;transform:translateY(1.4rem)scale(.96)}.profile__project-art .project-artwork{border-radius:var(--radius-medium);height:100%;min-height:0;box-shadow:none;border:.08rem solid #ffffff21}.profile__identity,.profile__project-copy{z-index:5;inset-inline:var(--space-6);transition:opacity var(--duration-slow) var(--ease-out), transform var(--duration-slow) var(--ease-out);position:absolute;inset-block-end:9.5rem}.profile__eyebrow{color:#ffffff9e;font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;margin-block-end:var(--space-3)}.profile__identity h2,.profile__project-copy h2{font-size:clamp(2rem,3.5vw,3.5rem);font-weight:var(--weight-medium);letter-spacing:-.035em;word-spacing:.12em;line-height:1}.profile__identity>p:last-child,.profile__project-copy>p:last-child{color:#ffffffb8;max-width:29rem;font-size:var(--text-sm);margin-block-start:var(--space-3);line-height:1.5}.profile__project-copy{opacity:0;transform:translateY(var(--space-4))}.profile__actions{z-index:5;inset-inline:var(--space-6);gap:var(--space-2);display:flex;position:absolute;inset-block-end:5.2rem}.profile__actions a{align-items:center;gap:var(--space-2);min-height:2.75rem;padding-inline:var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-semibold);transition:background var(--duration-fast) var(--ease-out);background:#ffffff17;border:.08rem solid #ffffff2e;display:inline-flex}.profile__actions a:hover{background:#ffffff2e}.profile__footer{z-index:5;inset-inline:var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--text-xs);display:flex;position:absolute;inset-block-end:var(--space-5)}.profile__footer>span{align-items:center;gap:var(--space-2);color:#ffffffa3;display:flex}.profile__footer i{border-radius:var(--radius-full);background:var(--palette-sage);width:.45rem;height:.45rem;box-shadow:0 0 0 .25rem #9eaf9824}.profile__footer a{align-items:center;gap:var(--space-2);font-weight:var(--weight-semibold);display:inline-flex}.profile--project .profile__identity-art,.profile--project .profile__identity{opacity:0;transform:translateY(-1.2rem)scale(.96)}.profile--project .profile__project-art,.profile--project .profile__project-copy{opacity:1;transform:translateY(0)scale(1)}.section-navigation{gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-full);box-shadow:var(--shadow-small);-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:#fbfaf6e6;border:.08rem solid #12161417;flex-direction:column;display:flex}.portfolio-shell>[data-navigation]{align-self:start;height:max-content;position:sticky;top:calc(50svh - 14rem)}.section-navigation a{border-radius:var(--radius-full);width:2.7rem;height:2.7rem;color:var(--color-text-faint);transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);place-items:center;display:grid;position:relative}.section-navigation a:hover,.section-navigation a.is-active{background:var(--color-inverse);color:var(--color-inverse-text);transform:scale(1.04)}.section-navigation a>span{width:max-content;padding:var(--space-2) var(--space-3);border-radius:var(--radius-small);background:var(--color-inverse);color:var(--color-inverse-text);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);opacity:0;pointer-events:none;transform:translateX(var(--space-2));transition:opacity var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);position:absolute;inset-inline-end:calc(100% + var(--space-3))}.section-navigation a:hover>span,.section-navigation a:focus-visible>span{opacity:1;transform:translate(0)}.section-navigation__top{border-block-start:.08rem solid var(--color-border);margin-block-start:var(--space-2)}.hero{min-height:calc(100svh - (var(--page-inset) * 2));flex-direction:column;justify-content:space-between;display:flex}.hero:after{aspect-ratio:1;border:.08rem solid var(--color-border);border-radius:var(--radius-full);content:"";width:clamp(14rem,35vw,34rem);box-shadow:0 0 0 var(--space-6) #3158840a, 0 0 0 var(--space-10) #4f624f08;pointer-events:none;position:absolute;inset-block-start:-24%;inset-inline-end:-15%}.hero__meta{z-index:1;justify-content:space-between;gap:var(--space-4);color:var(--color-text-faint);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);text-transform:uppercase;display:flex;position:relative}.hero__content{z-index:1;gap:var(--space-5);max-width:74rem;padding-block:var(--space-8);margin-block:auto;display:grid;position:relative}.hero h1{font-size:var(--text-display);font-weight:var(--weight-medium);letter-spacing:-.045em;line-height:var(--leading-tight);word-spacing:.1em}.hero__summary{max-width:39rem;color:var(--color-text-muted);font-size:var(--text-xl)}.hero__actions{z-index:1;gap:var(--space-3);flex-wrap:wrap;display:flex;position:relative}.work{gap:var(--space-9);display:grid}.work__featured{gap:var(--space-10);display:grid}.work-project{gap:var(--space-6);border-block-start:.08rem solid var(--color-border);padding-block-start:var(--space-6);scroll-margin-block-start:var(--space-5);display:grid}.work-project__header{align-items:center;gap:var(--space-4);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);text-transform:uppercase;grid-template-columns:auto 1fr auto;display:grid}.work-project__header>span{border-radius:var(--radius-full);background:var(--color-inverse);width:2.3rem;height:2.3rem;color:var(--color-inverse-text);place-items:center;display:grid}.work-project__header p{color:var(--color-text);font-weight:var(--weight-semibold);letter-spacing:.08em}.work-project__header small{color:var(--color-text-faint);font-size:inherit}.work-project__copy{gap:var(--space-4);max-width:56rem;display:grid}.work-project__copy h3{font-size:var(--text-3xl);font-weight:var(--weight-medium);letter-spacing:-.06em;line-height:var(--leading-tight)}.work-project__copy h3 a{transition:color var(--duration-fast) var(--ease-out);display:inline-flex}.work-project__copy h3 a:hover{color:var(--color-accent)}.work-project__copy>p{max-width:var(--reading-width);color:var(--color-text-muted);font-size:var(--text-lg)}.work-project__artwork{will-change:transform;height:clamp(23rem,44vw,38rem)}.work-project__footer{align-items:end;gap:var(--space-5);grid-template-columns:minmax(0,1fr) auto;display:grid}.work-project__footer>p{max-width:47rem;color:var(--color-text-muted)}.work-project__footer>div{gap:var(--space-2);flex-wrap:wrap;grid-column:1;display:flex}.work-project__footer>div span,.case-study__technology li{padding:var(--space-2) var(--space-3);border:.08rem solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-muted);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs)}.work-project__footer>a{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold);grid-area:1/2/span 2;display:inline-flex}.work-project__footer>a:hover{color:var(--color-accent)}.work__additional{gap:var(--space-7);padding:var(--space-7);border-radius:var(--radius-medium);background:var(--color-inverse);color:var(--color-inverse-text);grid-template-columns:minmax(12rem,.55fr) minmax(0,1fr);display:grid}.work__additional>header{align-content:start;gap:var(--space-4);display:grid}.work__additional>header>p:last-child{color:#ffffff9e;font-size:var(--text-sm)}.work__additional>div{display:grid}.work__additional>div a{align-items:center;gap:var(--space-4);padding-block:var(--space-4);transition:color var(--duration-fast) var(--ease-out);border-block-end:.08rem solid #ffffff21;grid-template-columns:minmax(8rem,.65fr) 1fr auto;display:grid}.work__additional>div a:first-child{border-block-start:.08rem solid #ffffff21}.work__additional>div a:hover{color:var(--palette-sage)}.work__additional>div span{color:#ffffff85;font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);text-transform:uppercase}.project-artwork{--art-accent:var(--palette-blue);--art-accent-soft:var(--palette-blue-soft);--art-ink:var(--palette-ink);--art-surface:var(--palette-paper);border-radius:var(--radius-medium);background:radial-gradient(circle at 12% 8%, #fffc, transparent 34%), var(--art-surface);height:100%;min-height:18rem;color:var(--art-ink);isolation:isolate;position:relative;overflow:hidden;box-shadow:inset 0 0 0 .08rem #12161414}.project-artwork:before,.project-artwork:after{border:.08rem solid var(--art-accent);position:absolute}@supports (color:color-mix(in lab, red, red)){.project-artwork:before,.project-artwork:after{border:.08rem solid color-mix(in srgb, var(--art-accent) 28%, transparent)}}.project-artwork:before,.project-artwork:after{border-radius:var(--radius-full);content:"";pointer-events:none}.project-artwork:before{aspect-ratio:1;width:24rem;inset-block-start:-10rem;inset-inline-end:-8rem}.project-artwork:after{aspect-ratio:1;width:15rem;inset-block-end:-8rem;inset-inline-start:-5rem}.project-artwork--automiq{--art-accent:var(--palette-coral);--art-accent-soft:var(--palette-coral-soft);--art-surface:var(--palette-paper)}.project-artwork--phoenix{--art-accent:var(--palette-gold);--art-accent-soft:var(--palette-gold-soft);--art-ink:var(--palette-paper-light);--art-surface:var(--palette-ink)}.project-artwork--healthtionary{--art-accent:var(--palette-blue);--art-accent-soft:var(--palette-blue-soft)}.project-artwork--myfam{--art-accent:var(--palette-sage-deep);--art-accent-soft:var(--palette-sage-soft)}.project-artwork--leflux{--art-accent:var(--palette-purple);--art-accent-soft:var(--palette-purple-soft);--art-ink:var(--palette-paper-light);--art-surface:var(--palette-ink)}.project-artwork--open7{--art-accent:var(--palette-blue);--art-accent-soft:var(--palette-blue-soft)}.project-artwork--publish-shark{--art-accent:var(--palette-purple);--art-accent-soft:var(--palette-purple-soft)}.art-window{z-index:2;border:.08rem solid var(--art-ink);width:min(83%,47rem);position:absolute;inset-block-start:50%;inset-inline-start:50%;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.art-window{border:.08rem solid color-mix(in srgb, var(--art-ink) 12%, transparent)}}.art-window{border-radius:var(--radius-medium);background:var(--art-surface)}@supports (color:color-mix(in lab, red, red)){.art-window{background:color-mix(in srgb, var(--art-surface) 88%, var(--palette-white))}}.art-window{transform:translate(-50%,-50%)rotate(-1.5deg);box-shadow:0 1.8rem 4.8rem #1216142e}.project-artwork--phoenix .art-window,.project-artwork--leflux .art-window{background:var(--art-surface)}@supports (color:color-mix(in lab, red, red)){.project-artwork--phoenix .art-window,.project-artwork--leflux .art-window{background:color-mix(in srgb, var(--art-surface) 88%, var(--palette-blue-deep))}}.art-window>header{min-height:3.1rem;padding-inline:var(--space-4);border-block-end:.08rem solid var(--art-ink);justify-content:space-between;align-items:center;display:flex}@supports (color:color-mix(in lab, red, red)){.art-window>header{border-block-end:.08rem solid color-mix(in srgb, var(--art-ink) 12%, transparent)}}.art-window>header>span{gap:.36rem;display:flex}.art-window>header i{border-radius:var(--radius-full);background:var(--art-ink);width:.48rem;height:.48rem}@supports (color:color-mix(in lab, red, red)){.art-window>header i{background:color-mix(in srgb, var(--art-ink) 28%, transparent)}}.art-window>header small{font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);letter-spacing:.06em;opacity:.62}.art-automiq{gap:var(--space-5);padding:var(--space-6);display:grid}.art-automiq__command{align-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-small);background:var(--art-accent-soft);font-size:var(--text-sm);font-weight:var(--weight-semibold);display:flex}.art-automiq ol{gap:var(--space-3);display:grid}.art-automiq li{align-items:center;gap:var(--space-3);color:var(--color-text-faint);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);display:flex}.art-automiq li.is-active{color:var(--art-accent)}.art-automiq li svg{border-radius:var(--radius-full);background:var(--art-accent);padding:.18rem}@supports (color:color-mix(in lab, red, red)){.art-automiq li svg{background:color-mix(in srgb, var(--art-accent) 14%, transparent)}}.art-phoenix{gap:var(--space-5);padding:var(--space-6);display:grid}.art-phoenix__metric{gap:var(--space-1);display:grid}.art-phoenix__metric small{color:#ffffff7a;font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);text-transform:uppercase}.art-phoenix__metric strong{font-size:var(--text-xl)}.art-phoenix__chart{align-items:end;gap:var(--space-3);height:8rem;padding-inline:var(--space-3);border-block-end:.08rem solid #ffffff2e;display:flex;position:relative}.art-phoenix__chart i{border-radius:var(--radius-small) var(--radius-small) 0 0;background:var(--art-accent);width:11%}@supports (color:color-mix(in lab, red, red)){.art-phoenix__chart i{background:color-mix(in srgb, var(--art-accent) 74%, var(--palette-white))}}.art-phoenix__chart i:first-child{height:35%}.art-phoenix__chart i:nth-child(2){height:58%}.art-phoenix__chart i:nth-child(3){height:46%}.art-phoenix__chart i:nth-child(4){height:76%}.art-phoenix__chart i:nth-child(5){height:91%}.art-phoenix__chart span{background:var(--art-accent);height:.1rem;box-shadow:0 0 1rem var(--art-accent);position:absolute;inset-block-start:42%;inset-inline:0;transform:rotate(-8deg)}.art-phoenix__footer{gap:var(--space-3);flex-wrap:wrap;display:flex}.art-phoenix__footer span{align-items:center;gap:var(--space-2);color:#ffffff9e;font-size:var(--text-xs);display:inline-flex}.art-health{gap:var(--space-5);padding:var(--space-6);display:grid}.art-health__pulse{align-items:center;gap:var(--space-3);display:flex}.art-health__pulse>svg{width:2.4rem;height:2.4rem;padding:var(--space-2);border-radius:var(--radius-small);background:var(--art-accent-soft);color:var(--art-accent)}.art-health__pulse>span{padding:var(--space-2) var(--space-3);border:.08rem solid var(--color-border);border-radius:var(--radius-full);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs)}.art-health__message{align-items:start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-medium);background:var(--art-accent-soft);grid-template-columns:auto 1fr;display:grid}.art-health__message svg{color:var(--art-accent)}.art-health__message p{font-size:var(--text-sm)}.art-health__topics{gap:var(--space-2);flex-wrap:wrap;display:flex}.art-health__topics span{padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);background:var(--art-accent-soft)}@supports (color:color-mix(in lab, red, red)){.art-health__topics span{background:color-mix(in srgb, var(--art-accent-soft) 56%, transparent)}}.art-health__topics span{font-size:var(--text-xs)}.art-myfam{z-index:2;inset:var(--space-6);justify-content:center;align-items:center;gap:var(--space-7);display:flex;position:absolute}.art-phone{aspect-ratio:.56;align-content:center;justify-items:center;gap:var(--space-3);border:.45rem solid var(--art-ink);background:var(--palette-paper-light);border-radius:2.2rem;width:min(42%,13rem);display:grid;transform:rotate(-4deg);box-shadow:0 1.5rem 3rem #12161430}.art-phone small,.art-phone p{color:var(--color-text-faint);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs)}.art-phone strong{font-size:var(--text-lg)}.art-phone button{border-radius:var(--radius-full);background:var(--art-accent);width:4.8rem;height:4.8rem;color:var(--palette-white);pointer-events:none;border:0;place-items:center;display:grid}.art-phone button svg{width:1.5rem;height:1.5rem}.art-myfam__contacts{gap:var(--space-3);max-width:14rem;padding:var(--space-5);border-radius:var(--radius-medium);background:var(--palette-white);box-shadow:var(--shadow-small);transform:translateY(var(--space-5)) rotate(3deg);display:grid}.art-myfam__contacts svg{color:var(--art-accent)}.art-myfam__contacts span{color:var(--color-text-faint);font-size:var(--text-xs)}.art-flux{padding:var(--space-5)}.art-flux>header{justify-content:space-between;align-items:center;margin-block-end:var(--space-4);display:flex}.art-flux>header span{align-items:center;gap:var(--space-2);color:var(--palette-sage);font-size:var(--text-sm);font-weight:var(--weight-semibold);display:flex}.art-flux>header small{color:#ffffff7a;font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs)}.art-flux ol{gap:var(--space-2);display:grid}.art-flux li{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-small);background:#ffffff0f;grid-template-columns:auto 1fr auto;display:grid}.art-flux li strong,.art-flux li small{font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs)}.art-flux li strong{border-radius:var(--radius-full);background:var(--art-accent);place-items:center;width:1.9rem;height:1.9rem;display:grid}.art-flux li small{color:var(--palette-sage)}.art-open7{gap:var(--space-5);padding:var(--space-6);display:grid}.art-open7__search{align-items:center;gap:var(--space-3);padding:var(--space-4);border:.08rem solid var(--color-border);border-radius:var(--radius-full);background:var(--palette-white);color:var(--color-text-faint);font-size:var(--text-sm);display:flex}.art-open7__grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.art-open7__grid article{gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-medium);background:var(--palette-white);box-shadow:var(--shadow-small);display:grid}.art-open7__grid article:last-child{background:var(--art-accent-soft)}.art-open7__grid svg{color:var(--art-accent)}.art-open7__grid small{color:var(--color-text-faint)}.art-publish{grid-template-columns:minmax(7rem,.4fr) 1fr;min-height:17rem;display:grid}.art-publish aside{align-content:start;gap:var(--space-2);padding:var(--space-5) var(--space-3);border-inline-end:.08rem solid var(--color-border);background:var(--art-accent-soft);display:grid}@supports (color:color-mix(in lab, red, red)){.art-publish aside{background:color-mix(in srgb, var(--art-accent-soft) 48%, var(--palette-white))}}.art-publish aside span{padding:var(--space-2) var(--space-3);border-radius:var(--radius-small);color:var(--color-text-faint);font-size:var(--text-xs)}.art-publish aside span.is-active{background:var(--palette-white);color:var(--art-accent);font-weight:var(--weight-semibold)}.art-publish>div{align-content:start;gap:var(--space-3);padding:var(--space-5);display:grid}.art-publish>div>svg{color:var(--art-accent)}.art-publish>div>i{border-radius:var(--radius-full);background:var(--color-border);width:100%;height:.45rem}.art-publish>div>i:nth-of-type(2){width:82%}.art-publish>div>i:nth-of-type(3){width:64%}.art-publish>div p{align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-small);background:var(--art-accent-soft);color:var(--art-accent);font-size:var(--text-xs);margin-block-start:var(--space-3);display:flex}.about{gap:var(--space-9);display:grid}.about__principles{display:grid}.about__principles>li{gap:var(--space-5);padding-block:var(--space-6);border-block-start:.08rem solid var(--color-border);grid-template-columns:4.5rem 1fr;display:grid}.about__principles>li:last-child{border-block-end:.08rem solid var(--color-border)}.about__principles>li>span{color:var(--color-accent);font-family:var(--font-geist-mono), monospace;font-size:var(--text-sm)}.about__principles>li>div{gap:var(--space-5);grid-template-columns:minmax(12rem,.65fr) minmax(0,1fr);display:grid}.about__principles h3{font-size:var(--text-xl);font-weight:var(--weight-medium);letter-spacing:-.025em}.about__principles p{color:var(--color-text-muted)}.experience{gap:var(--space-9);display:grid}.experience__timeline{display:grid}.experience__timeline>li{gap:var(--space-4);grid-template-columns:2.2rem 1fr;display:grid}.experience__marker{justify-content:center;display:flex;position:relative}.experience__marker:after{background:var(--color-border);content:"";width:.08rem;position:absolute;inset-block:1.1rem 0}.experience__timeline>li:last-child .experience__marker:after{display:none}.experience__marker span{z-index:1;border:.18rem solid var(--color-surface);border-radius:var(--radius-full);background:var(--color-accent);width:.72rem;height:.72rem;box-shadow:0 0 0 .08rem var(--color-accent);margin-block-start:.7rem;position:relative}.experience__entry{gap:var(--space-4);padding-block-end:var(--space-8);display:grid}.experience__entry>header{justify-content:space-between;align-items:start;gap:var(--space-5);display:flex}.experience__entry h3{font-size:var(--text-2xl);font-weight:var(--weight-medium);letter-spacing:-.045em}.experience__entry header p{color:var(--color-accent);font-weight:var(--weight-semibold);margin-block-start:var(--space-1)}.experience__entry time{padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);background:var(--color-surface-muted);color:var(--color-text-faint);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);white-space:nowrap}.experience__entry>p{max-width:var(--reading-width);color:var(--color-text-muted)}.experience__entry ul{gap:var(--space-2);max-width:50rem;display:grid}.experience__entry li{color:var(--color-text-muted);font-size:var(--text-sm);padding-inline-start:var(--space-5);position:relative}.experience__entry li:before{border-radius:var(--radius-full);background:var(--palette-sage-deep);content:"";width:.42rem;height:.42rem;position:absolute;inset-block-start:.58rem;inset-inline-start:0}.leadership{gap:var(--space-9);display:grid}.leadership__entries{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.leadership__entries article{align-content:start;gap:var(--space-4);min-height:14rem;padding:var(--space-5);border:.08rem solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface-muted);transition:background var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);grid-template-columns:auto 1fr;display:grid}.leadership__entries article:hover{background:var(--palette-white);transform:translateY(-.18rem)}.leadership__entries article:last-child{grid-column:1/-1;min-height:auto}.leadership__icon{border-radius:var(--radius-full);background:var(--color-accent-soft);width:2.8rem;height:2.8rem;color:var(--color-accent);place-items:center;display:grid}.leadership__entries article>div:last-child{align-content:start;gap:var(--space-2);display:grid}.leadership__entries article p{color:var(--color-text-faint);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);text-transform:uppercase}.leadership__entries article h3{font-size:var(--text-lg);line-height:var(--leading-heading)}.leadership__entries article span{color:var(--color-text-muted);font-size:var(--text-sm)}.capabilities{gap:var(--space-9);display:grid}.capabilities__list{display:grid}.capabilities details{border-block-start:.08rem solid var(--color-border)}.capabilities details:last-child{border-block-end:.08rem solid var(--color-border)}.capabilities summary{align-items:center;gap:var(--space-4);cursor:pointer;grid-template-columns:3rem 1fr auto;min-height:5.5rem;list-style:none;display:grid}.capabilities summary::-webkit-details-marker{display:none}.capabilities summary>span{color:var(--color-accent);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs)}.capabilities summary strong{font-size:var(--text-xl);font-weight:var(--weight-medium);letter-spacing:-.03em}.capabilities summary i{width:1.2rem;height:1.2rem;position:relative}.capabilities summary i:before,.capabilities summary i:after{background:var(--color-text);content:"";width:100%;height:.08rem;transition:transform var(--duration-normal) var(--ease-out);position:absolute;inset-block-start:50%;inset-inline-start:0}.capabilities summary i:after{transform:rotate(90deg)}.capabilities details[open] summary i:after{transform:rotate(0)}.capabilities details>div{gap:var(--space-6);padding:0 var(--space-7) var(--space-6) var(--space-7);grid-template-columns:minmax(12rem,.7fr) 1fr;display:grid}.capabilities details>div p{color:var(--color-text-muted)}.capabilities details ul{align-content:start;gap:var(--space-2);flex-wrap:wrap;display:flex}.capabilities details li{padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);background:var(--color-surface-muted);color:var(--color-text-muted);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs)}.contact{min-height:min(48rem, calc(100svh - (var(--page-inset) * 2)));background:var(--color-inverse);color:var(--color-inverse-text);flex-direction:column;justify-content:space-between;display:flex}.contact .section-kicker{color:var(--palette-sage)}.contact__content{gap:var(--space-5);display:grid}.contact h2{max-width:65rem;font-size:var(--text-3xl);font-weight:var(--weight-medium);letter-spacing:-.06em;line-height:var(--leading-tight)}.contact__email{align-items:center;gap:var(--space-3);width:fit-content;font-size:var(--text-xl);overflow-wrap:anywhere;border-block-end:.08rem solid #ffffff5c;margin-block-start:var(--space-4);display:inline-flex}.contact__footer{justify-content:space-between;align-items:end;gap:var(--space-5);display:flex}.contact__footer nav{gap:var(--space-4);flex-wrap:wrap;display:flex}.contact__footer a{align-items:center;gap:var(--space-2);color:#ffffffad;font-size:var(--text-sm);transition:color var(--duration-fast) var(--ease-out);display:inline-flex}.contact__footer a:hover{color:var(--palette-sage)}.portfolio-footer{min-height:32rem;padding:var(--space-7);border-radius:var(--radius-large);background:var(--palette-sage);color:var(--color-inverse);align-content:space-between;display:grid;position:relative;overflow:hidden}.portfolio-footer p,.portfolio-footer small{z-index:2;font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);text-transform:uppercase;position:relative}.portfolio-footer strong{font-size:clamp(9rem,23vw,27rem);font-weight:var(--weight-bold);letter-spacing:-.12em;white-space:nowrap;line-height:.72;position:absolute;inset-block-end:-.16em;inset-inline-start:50%;transform:translate(-50%)}.portfolio-footer small{align-self:end}.case-study{min-height:100svh;padding:var(--page-inset)}.case-study__navigation{width:min(100%,100rem);min-height:4.5rem;padding-inline:var(--space-2);justify-content:space-between;align-items:center;margin-inline:auto;display:flex}.case-study__brand{align-items:center;gap:var(--space-3);display:flex}.case-study__brand strong{border-radius:var(--radius-full);background:var(--color-inverse);width:2.6rem;height:2.6rem;color:var(--color-inverse-text);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);place-items:center;display:grid}.case-study__brand span{font-weight:var(--weight-semibold);word-spacing:.08em}.case-study__navigation nav{gap:var(--space-3);display:flex}.case-study__navigation nav a{align-items:center;gap:var(--space-2);min-height:2.7rem;padding-inline:var(--space-4);border:.08rem solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);font-size:var(--text-sm);display:inline-flex}.case-study>article{gap:var(--page-inset);width:min(100%,100rem);margin-inline:auto;display:grid}.case-study>article>section,.case-study__hero,.case-study__next{padding:clamp(var(--space-7), 5vw, var(--space-9));border-radius:var(--radius-large);background:var(--color-surface);box-shadow:var(--shadow-small);border:.08rem solid #12161417}.case-study__hero{align-items:center;gap:var(--space-8);grid-template-columns:minmax(0,.9fr) minmax(24rem,1.1fr);min-height:calc(100svh - 6.5rem);display:grid}.case-study__hero-copy{align-content:center;gap:var(--space-5);display:grid}.case-study__hero h1{font-size:var(--text-display);font-weight:var(--weight-medium);letter-spacing:-.075em;line-height:var(--leading-tight)}.case-study__hero-copy>p:nth-of-type(2){max-width:var(--reading-width);color:var(--color-text-muted);font-size:var(--text-xl)}.case-study__hero-copy>div{align-items:center;gap:var(--space-4);color:var(--color-text-faint);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);flex-wrap:wrap;margin-block-start:var(--space-3);display:flex}.case-study__hero-copy>div a{align-items:center;gap:var(--space-2);color:var(--color-accent);font-weight:var(--weight-semibold);display:inline-flex}.case-study__hero-art{gap:var(--space-3);grid-template-rows:minmax(0,1fr) auto;height:clamp(27rem,45vw,43rem);display:grid}.case-study__hero-art>p{color:var(--color-text-faint);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs)}.case-study__contribution{gap:var(--space-5);color:var(--color-inverse-text);display:grid;background:var(--color-inverse)!important}.case-study__contribution .section-kicker{color:var(--palette-sage)}.case-study__contribution h2{max-width:76rem;font-size:var(--text-2xl);font-weight:var(--weight-medium);letter-spacing:-.035em;line-height:var(--leading-heading)}.case-study__challenge{gap:var(--space-8);grid-template-columns:minmax(14rem,.5fr) minmax(0,1fr);display:grid}.case-study__challenge>div,.case-study__modules>header,.case-study__engineering>header,.case-study__outcomes>header,.case-study__technology>div{align-content:start;gap:var(--space-4);display:grid}.case-study__challenge h2,.case-study__modules h2,.case-study__engineering h2,.case-study__outcomes h2,.case-study__technology h2{font-size:var(--text-2xl);font-weight:var(--weight-medium);letter-spacing:-.04em;line-height:var(--leading-heading)}.case-study__challenge>p{color:var(--color-text-muted);font-size:var(--text-xl)}.case-study__modules,.case-study__engineering,.case-study__outcomes{gap:var(--space-8);grid-template-columns:minmax(14rem,.45fr) minmax(0,1fr);display:grid}.case-study__modules ol{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.case-study__modules li{align-content:space-between;gap:var(--space-5);min-height:9rem;padding:var(--space-5);border:.08rem solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface-muted);display:grid}.case-study__modules li span{color:var(--color-accent);font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs)}.case-study__modules li p{font-weight:var(--weight-semibold);line-height:var(--leading-heading)}.case-study__engineering ol,.case-study__outcomes ul{display:grid}.case-study__engineering li,.case-study__outcomes li{padding:var(--space-5) var(--space-5) var(--space-5) var(--space-7);border-block-start:.08rem solid var(--color-border);color:var(--color-text-muted);position:relative}.case-study__engineering li:last-child,.case-study__outcomes li:last-child{border-block-end:.08rem solid var(--color-border)}.case-study__engineering li:before,.case-study__outcomes li:before{border-radius:var(--radius-full);background:var(--color-accent);content:"";width:.5rem;height:.5rem;position:absolute;inset-block-start:1.95rem;inset-inline-start:var(--space-2)}.case-study__outcomes{background:var(--palette-sage-soft)!important}.case-study__outcomes li:before{background:var(--palette-sage-deep)}.case-study__technology{gap:var(--space-8);grid-template-columns:minmax(14rem,.45fr) minmax(0,1fr);display:grid}.case-study__technology ul{align-content:start;gap:var(--space-2);flex-wrap:wrap;display:flex}.case-study__next{gap:var(--space-4);background:var(--color-inverse);color:var(--color-inverse-text);display:grid}.case-study__next>p{color:#ffffff8a;font-family:var(--font-geist-mono), monospace;font-size:var(--text-xs);text-transform:uppercase}.case-study__next a{justify-content:space-between;align-items:center;gap:var(--space-5);font-size:var(--text-3xl);font-weight:var(--weight-medium);letter-spacing:-.055em;line-height:var(--leading-tight);display:flex}.case-study__next svg{flex:none;width:2.8rem;height:2.8rem}.resume-page{min-height:100svh;padding:var(--space-6)}.resume-actions{width:min(100%,56rem);margin:0 auto var(--space-4);justify-content:space-between;display:flex}.resume-actions a{align-items:center;gap:var(--space-2);min-height:2.7rem;padding-inline:var(--space-4);border:.08rem solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);font-size:var(--text-sm);font-weight:var(--weight-semibold);display:inline-flex}.resume-document{border:.08rem solid var(--color-border);background:var(--palette-white);width:min(100%,56rem);min-height:76rem;box-shadow:var(--shadow-medium);margin-inline:auto;padding:3.2rem 3.5rem;font-size:.78rem;line-height:1.4}.resume-document__header{justify-content:space-between;align-items:start;gap:var(--space-6);border-block-end:.15rem solid var(--color-text);padding-block-end:var(--space-5);display:flex}.resume-document__header h1{font-size:2.45rem;font-weight:var(--weight-semibold);letter-spacing:-.04em;word-spacing:.14em;line-height:1}.resume-document__header>div p{color:var(--color-accent);font-size:var(--text-sm);font-weight:var(--weight-semibold);word-spacing:.08em;margin-block-start:var(--space-2)}.resume-document address{color:var(--color-text-muted);font-family:var(--font-geist-mono), monospace;justify-items:end;gap:.14rem;font-size:.61rem;font-style:normal;line-height:1.35;display:grid}.resume-document h2{border-block-end:.08rem solid var(--color-border-strong);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;margin-block-end:var(--space-3);padding-block-end:var(--space-2);font-size:.67rem}.resume-document__summary{gap:var(--space-4);padding-block:var(--space-5);grid-template-columns:7.5rem 1fr;display:grid}.resume-document__summary h2{margin:0}.resume-document__summary p{color:var(--color-text-muted)}.resume-document__columns{gap:var(--space-6);grid-template-columns:minmax(0,1.85fr) minmax(12rem,.95fr);display:grid}.resume-document__main,.resume-document__sidebar{align-content:start;gap:var(--space-5);display:grid}.resume-entry{gap:var(--space-3);display:grid}.resume-entry>header{justify-content:space-between;gap:var(--space-4);display:flex}.resume-entry h3,.resume-projects h3,.resume-sidebar-entry h3{font-size:.9rem;line-height:1.2}.resume-entry header p,.resume-sidebar-entry p{color:var(--color-accent);font-weight:var(--weight-semibold)}.resume-entry time,.resume-sidebar-entry time{color:var(--color-text-faint);font-family:var(--font-geist-mono), monospace;white-space:nowrap;font-size:.62rem}.resume-entry ul{gap:var(--space-2);display:grid}.resume-entry li,.resume-leadership li{color:var(--color-text-muted);padding-inline-start:var(--space-4);position:relative}.resume-entry li:before,.resume-leadership li:before{border-radius:var(--radius-full);background:var(--color-accent);content:"";width:.3rem;height:.3rem;position:absolute;inset-block-start:.42rem;inset-inline-start:0}.resume-projects{gap:var(--space-3);display:grid}.resume-projects article{gap:var(--space-1);display:grid}.resume-projects header{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.resume-projects header span{color:var(--color-text-faint);font-family:var(--font-geist-mono), monospace;text-align:end;font-size:.56rem}.resume-projects p{color:var(--color-text-muted)}.resume-skills{gap:var(--space-3);display:grid}.resume-skills div{gap:var(--space-1);display:grid}.resume-skills dt{font-weight:var(--weight-bold)}.resume-skills dd{color:var(--color-text-muted)}.resume-sidebar-entry{gap:var(--space-1);display:grid}.resume-leadership{gap:var(--space-3);display:grid}.resume-leadership li{gap:var(--space-1);display:grid}.resume-leadership span{color:var(--color-text-muted)}@keyframes profile-orbit{to{transform:rotate(1turn)}}@media (max-width:75rem){:root{--profile-width:clamp(19rem, 27vw, 25rem)}.profile__identity-art>strong{font-size:clamp(6rem,13vw,10rem)}.profile__identity,.profile__project-copy,.profile__actions,.profile__footer{inset-inline:var(--space-5)}.hero h1{font-size:clamp(3.3rem,6.5vw,6.3rem)}.work-project__footer{grid-template-columns:1fr}.work-project__footer>a{grid-area:auto/1;width:fit-content}.work__additional{grid-template-columns:1fr}}@media (max-width:60rem){:root{--page-inset:clamp(.75rem, 2.6vw, 1.25rem)}body{padding-block-end:4.8rem}.portfolio-shell{display:block}.portfolio-shell__profile{height:min(48rem, calc(100svh - (var(--page-inset) * 2)));min-height:40rem;margin-block-end:var(--page-inset);position:relative;top:auto}.portfolio-shell>[data-navigation]{z-index:var(--z-navigation);width:min(calc(100% - var(--space-4)), 29rem);height:auto;position:fixed;inset-block-end:var(--space-2);inset-inline-start:50%;transform:translate(-50%)}.section-navigation{flex-direction:row;justify-content:space-between;gap:0;padding:.38rem}.section-navigation a{width:2.75rem;height:2.75rem}.section-navigation a>span,.section-navigation__top{display:none}.hero,.contact{min-height:min(48rem, calc(100svh - (var(--page-inset) * 2)))}.case-study__hero{grid-template-columns:1fr;min-height:auto}.case-study__hero-art{height:min(36rem,65vw);min-height:25rem}}@media (max-width:46rem){:root{--text-xl:1.2rem;--text-3xl:clamp(2.35rem, 11vw, 4.1rem)}.content-section,.case-study>article>section,.case-study__hero,.case-study__next{padding:var(--space-6);border-radius:var(--radius-medium)}.profile{border-radius:var(--radius-medium)}.profile__identity-art,.profile__project-art{inset-inline:var(--space-4)}.profile__identity-art>strong{font-size:clamp(6.8rem,34vw,10rem)}.profile__footer>span{display:none}.profile__footer{justify-content:flex-end}.hero__meta{display:grid}.hero__meta span:last-child{display:none}.hero h1{font-size:clamp(3.1rem,15vw,5.3rem)}.hero__actions{display:grid}.hero__actions .button{width:100%}.work{gap:var(--space-8)}.work__featured{gap:var(--space-9)}.work-project__header{grid-template-columns:auto 1fr}.work-project__header small{display:none}.work-project__artwork{height:23rem}.work__additional{padding:var(--space-5)}.work__additional>div a{grid-template-columns:1fr auto}.work__additional>div span{grid-column:1/-1}.art-window{width:92%}.art-myfam{gap:var(--space-3);padding:var(--space-4)}.art-phone{width:50%}.art-myfam__contacts{max-width:10rem;padding:var(--space-4)}.about__principles>li{grid-template-columns:2.8rem 1fr}.about__principles>li>div{gap:var(--space-2);grid-template-columns:1fr}.experience__entry>header{display:grid}.experience__entry time{width:fit-content}.leadership__entries{grid-template-columns:1fr}.leadership__entries article:last-child{grid-column:auto}.capabilities details>div{padding-inline:var(--space-5);grid-template-columns:1fr}.contact__footer{display:grid}.portfolio-footer{min-height:24rem;padding:var(--space-6);border-radius:var(--radius-medium)}.case-study{padding:var(--space-3)}.case-study__navigation{padding-inline:0}.case-study__brand span,.case-study__navigation nav a:last-child{display:none}.case-study__hero-art{height:24rem;min-height:0}.case-study__challenge,.case-study__modules,.case-study__engineering,.case-study__outcomes,.case-study__technology{gap:var(--space-6);grid-template-columns:1fr}.case-study__modules ol{grid-template-columns:1fr}.case-study__next a{font-size:var(--text-2xl)}.resume-page{padding:var(--space-3)}.resume-document{padding:var(--space-6)}.resume-document__header,.resume-document__columns{grid-template-columns:1fr}.resume-document__header{display:grid}.resume-document address{justify-items:start}.resume-document__summary{grid-template-columns:1fr}}@media (max-width:25rem){.profile__actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.profile__actions a{padding-inline:var(--space-2);justify-content:center}.section-navigation a{width:2.65rem}.art-myfam__contacts{display:none}.art-phone{width:64%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@page{size:A4;margin:0}@media print{html,body{background:var(--palette-white);overflow:visible;margin:0!important;padding:0!important}body:before,.resume-actions{display:none}.resume-page{width:auto;height:auto;min-height:0;padding:0;overflow:visible}.resume-document{width:190mm;height:auto;min-height:0;max-height:none;box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;border:0;margin:0 auto;padding:10mm;overflow:hidden}}
