body,html{overflow-x:clip;max-width:100%;min-height:100dvh;min-height:100svh}body{width:100%}#hero .mobile-carousel{margin-inline:0!important;padding-inline:clamp(.875rem,4vw,1.125rem)!important;scroll-padding-inline:clamp(.875rem,4vw,1.125rem);overscroll-behavior-x:contain;scroll-snap-type:x proximity!important}@media (max-width:389px){#hero .mobile-carousel{scroll-padding-inline:.875rem}#hero .mobile-carousel-item{flex-basis:100%!important;max-width:100%!important}}@media (min-width:390px) and (max-width:639px){#hero .mobile-carousel{scroll-padding-inline:1rem}#hero .mobile-carousel-item{flex-basis:min(92vw,22rem)!important;max-width:min(92vw,22rem)!important}}#hero .hero-grid-child,#hero .hero-grid-shell{min-width:0;max-width:100%}@media (max-width:639px){body,html{width:100%;overflow-x:clip}#hero,#hero .container,#hero .hero-grid-child,#hero .hero-grid-shell,#hero>*,body,html{max-width:100%}#hero .mobile-carousel{padding-right:0}#hero .mobile-carousel-item{max-width:min(92vw,22rem)!important}#hero .mobile-carousel~div[aria-hidden=true]{right:0}}@media (max-width:389px){.hero-support-grid{grid-template-columns:1fr!important;gap:.75rem}#hero .hero-metrics-grid{gap:.75rem}}.hero-mobile-portrait-shell{width:100%;max-width:18rem;aspect-ratio:4/5;position:relative;contain:layout paint}@media (max-width:389px){.hero-mobile-portrait-shell{max-width:16.25rem}}@media (max-width:1023px) and (prefers-reduced-motion:no-preference){@keyframes hero-portrait-edge-pulse{0%,to{opacity:.35}50%{opacity:.62}}.hero-mobile-portrait-shell:after{content:"";position:absolute;inset:-1px;border-radius:38px;pointer-events:none;background:linear-gradient(135deg,color-mix(in oklch,var(--chapter-accent) 28%,transparent),transparent 35%,transparent 65%,color-mix(in oklch,var(--chapter-accent) 18%,transparent));mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;padding:1px;opacity:.4;animation:hero-portrait-edge-pulse 4.2s ease-in-out infinite;will-change:opacity;z-index:5}}@media (max-width:389px){#hero .hero-metrics-grid{gap:.625rem}#hero .hero-metric-card{padding:.875rem .875rem 1rem}}body.nav-open{position:fixed;width:100%;overflow-y:scroll}[data-lenis-prevent]{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}html:not([data-nav-open=true]):not(.nav-open) body{overflow-y:auto!important;overflow-x:clip!important}@media (max-width:389px){.cta-hero-group{flex-direction:column;align-items:stretch;gap:.625rem}.cta-hero-group .cta-primary,.cta-hero-group .cta-secondary{width:100%;justify-content:center;min-height:48px}}.carousel-dot{width:44px;height:44px;margin:-10px 0}@media (min-width:1024px){.hero-chapter-button{min-width:32px;min-height:32px}}html[data-reduced-motion=true] [data-cinematic],html[data-scroll-engine=native] [data-cinematic],html[data-scroll-engine=static] [data-cinematic]{opacity:1!important;visibility:visible!important;transform:none!important}@media (hover:hover) and (pointer:fine){#hero .hero-metric-card{transition:transform .28s var(--ease-out-expo,cubic-bezier(.16,1,.3,1)),border-color .28s ease,box-shadow .28s ease,background .32s ease}#hero .hero-metric-card:hover{border-color:color-mix(in oklch,var(--chapter-accent) 42%,oklch(100% 0 0/.08));box-shadow:0 24px 60px -36px color-mix(in oklch,var(--chapter-accent) 48%,transparent),inset 0 1px 0 color-mix(in oklch,var(--chapter-accent) 22%,oklch(100% 0 0/.1)),inset 1px 0 0 color-mix(in oklch,var(--chapter-accent) 10%,transparent);background:linear-gradient(175deg,color-mix(in oklch,var(--chapter-accent) 7%,oklch(100% 0 0/.055)),oklch(100% 0 0/.025) 60%)}}[data-cinematic]{backface-visibility:hidden}@supports (padding:max(0px)){.glass-nav{padding-top:env(safe-area-inset-top,0)}}@media (hover:hover) and (pointer:fine){.cta-primary--lg:hover{box-shadow:0 0 0 2px oklch(70% .21 188/.28),0 8px 32px -4px var(--color-film-teal-glow,oklch(70% .21 188/.55)),0 2px 8px oklch(0 0 0/.28)}}#hero .conviction-stat{border-left-color:var(--chapter-accent);transition:border-left-color .65s cubic-bezier(.16,1,.3,1),border-color .26s ease,box-shadow .26s ease,background .32s ease}#hero .hero-visual-panel{box-shadow:inset 0 1px 0 0 oklch(100% 0 0/.14),0 8px 28px -6px oklch(0 0 0/.38)}@container (max-width: 14rem){#hero .conviction-stat .conviction-stat-value{font-size:clamp(.875rem,12cqi,1.5rem)}}@media (pointer:coarse){body,html{overflow-y:auto!important}body{overscroll-behavior-y:auto}}@supports (padding:env(safe-area-inset-bottom)){body{padding-bottom:env(safe-area-inset-bottom,0)}#section-contact,footer{padding-bottom:max(env(safe-area-inset-bottom,0px),1.5rem)}}#main-content{min-height:100dvh;min-height:100svh}html[data-scroll-engine=lenis]{overscroll-behavior-y:auto}@media (pointer:coarse){html[data-scroll-engine=lenis],html[data-scroll-engine=lenis] body{overscroll-behavior-y:auto;-webkit-overflow-scrolling:touch}}.nav-item-active-indicator{transform:translate(0);will-change:auto;overflow:clip;backface-visibility:hidden}@media (hover:hover) and (pointer:fine){.hero-nav-item:focus-within .nav-item-active-indicator,.hero-nav-item:hover .nav-item-active-indicator{will-change:transform}}.hero-nav-item-bg-active{transition:background-color .3s cubic-bezier(.16,1,.3,1),border-color .3s ease,box-shadow .3s ease,opacity .25s ease}#section-recap,#section-testimonials,#skills{scroll-margin-top:calc(var(--nav-height, 60px) + 1.5rem)}#hero .conviction-stat-strip,#hero .hero-metrics-grid{scroll-margin-top:0}.glass-nav{contain:layout style;will-change:auto}.arch-grid,.arch-grid>*,[id*=decision],[id*=philosophy]{overflow:visible;min-height:-moz-min-content;min-height:min-content}.hero-mobile-portrait-shell img,.hero-portrait-dock img,figure[aria-label*=identity] img,figure[aria-label*=portrait] img{image-rendering:auto;-webkit-image-smoothing:high;-o-object-fit:cover;object-fit:cover;-o-object-position:50% 18%;object-position:50% 18%;border-radius:inherit;max-width:100%;height:100%}@media (max-width:639px){.hero-mobile-portrait-shell{aspect-ratio:4/5;width:min(100%,clamp(260px,72vw,20rem));margin-inline:auto;overflow:clip}}@media (min-width:640px) and (max-width:1023px){.hero-mobile-portrait-shell{aspect-ratio:4/5;width:min(100%,clamp(22rem,48vw,26rem));margin-inline:auto}}@media (max-width:375px){.hero-kicker{font-size:clamp(.65rem,2.4vw + .1rem,.8rem);letter-spacing:.11em}#hero p,#section-about p,#section-projects p,.hero-body-text{font-size:clamp(.875rem,4vw + .1rem,1rem);line-height:1.7}.hero-proof-callout{padding-left:.875rem;font-size:clamp(.8rem,3.5vw,.9375rem)}}body:not([data-lenis-prevent]),html:not([data-lenis-prevent]){touch-action:auto!important}.mobile-carousel{touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.badge-live,.badge-muted,.badge-wip,.conviction-stat-label,.hero-kicker,.label,.label-mono,.live-bar-text,.pill-cyan,.project-metric-label,.section-label,.section-number{color:var(--color-text-muted,oklch(67% .005 264))}.pill-cyan{color:var(--color-film-teal,oklch(70% .21 188))}.badge-live,.dot-live{color:var(--color-success,oklch(65% .18 155))}.section-number{color:var(--color-film-amber,oklch(73% .17 65))}.section-label{color:color-mix(in oklch,var(--chapter-accent,var(--color-film-teal)) 12%,var(--color-text-muted))}@media (prefers-reduced-motion:reduce){.hero-mobile-portrait-shell:after{animation:none!important;opacity:0!important}.hero-nav-item-bg-active,.hero-nav-item-bg-idle,.nav-item-active-indicator{transition:none!important}.mobile-carousel,body,html{touch-action:auto}}@media (max-width:639px){.hero-mobile-portrait-shell{aspect-ratio:auto;max-height:52svh;min-height:220px}}@media (max-width:389px){.hero-mobile-portrait-shell{aspect-ratio:auto;max-height:44svh;min-height:190px}}@media (pointer:coarse){#main-content,[data-chapter],main{touch-action:pan-y}#main-content,main{transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden;perspective:1000px;-webkit-perspective:1000px}}[data-chapter]{isolation:isolate}@media (pointer:coarse){.glass-elevated,.glass-medium,.glass-surface{backface-visibility:hidden;-webkit-backface-visibility:hidden}}.gradient-mesh,.grain-overlay,[data-decorative=true],body:after{pointer-events:none}@font-face{font-family:Syne;font-style:normal;font-weight:400 800;font-display:swap;src:url(/_next/static/media/0da54fcd0470ea43-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Syne;font-style:normal;font-weight:400 800;font-display:swap;src:url(/_next/static/media/680a7121f7a85e3f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Syne;font-style:normal;font-weight:400 800;font-display:swap;src:url(/_next/static/media/8a1d8947e5852e30-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Syne Fallback;src:local("Arial");ascent-override:93.93%;descent-override:27.93%;line-gap-override:0.00%;size-adjust:98.47%}.__className_744198{font-family:Syne,Syne Fallback,Avenir Next,Segoe UI,Inter,system-ui,sans-serif;font-style:normal}.__variable_744198{--font-syne:"Syne","Syne Fallback",Avenir Next,Segoe UI,Inter,system-ui,sans-serif}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/7ab938503e4547a1-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/_next/static/media/13971731025ec697-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:DM Sans Fallback;src:local("Arial");ascent-override:94.90%;descent-override:29.66%;line-gap-override:0.00%;size-adjust:104.53%}.__className_0d7163{font-family:DM Sans,DM Sans Fallback,Inter,Avenir Next,Segoe UI,system-ui,sans-serif;font-style:normal}.__variable_0d7163{--font-dm-sans:"DM Sans","DM Sans Fallback",Inter,Avenir Next,Segoe UI,system-ui,sans-serif}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-s.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_694534{font-family:JetBrains Mono,JetBrains Mono Fallback,Fira Code,Cascadia Code,Consolas,Menlo,monospace;font-style:normal}.__variable_694534{--font-mono:"JetBrains Mono","JetBrains Mono Fallback",Fira Code,Cascadia Code,Consolas,Menlo,monospace}