@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/space-mono-vietnamese-400-normal.18b3to-wi7ziq.woff2)format("woff2"),url(../media/space-mono-vietnamese-400-normal.0d9rpzdufd4_1.woff)format("woff");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:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/space-mono-latin-ext-400-normal.0zpt.adtkfkx..woff2)format("woff2"),url(../media/space-mono-latin-ext-400-normal.0~9jko_wt.jey.woff)format("woff");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:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/space-mono-latin-400-normal.0-jau7~ksv-8p.woff2)format("woff2"),url(../media/space-mono-latin-400-normal.0h6lfhbvflzn4.woff)format("woff");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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/plus-jakarta-sans-cyrillic-ext-400-normal.07c14j2xpghk0.woff2)format("woff2"),url(../media/plus-jakarta-sans-cyrillic-ext-400-normal.0fxw-ibahlrgu.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/plus-jakarta-sans-vietnamese-400-normal.096fn35.1gvqc.woff2)format("woff2"),url(../media/plus-jakarta-sans-vietnamese-400-normal.0g30k8v7whxgp.woff)format("woff");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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/plus-jakarta-sans-latin-ext-400-normal.0rmhsbwsks-u~.woff2)format("woff2"),url(../media/plus-jakarta-sans-latin-ext-400-normal.0flxr_wf_bjj~.woff)format("woff");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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(../media/plus-jakarta-sans-latin-400-normal.0y1p3d-x2.x56.woff2)format("woff2"),url(../media/plus-jakarta-sans-latin-400-normal.03_ixdf5mv6eo.woff)format("woff");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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/plus-jakarta-sans-cyrillic-ext-500-normal.172nqozzwr6-8.woff2)format("woff2"),url(../media/plus-jakarta-sans-cyrillic-ext-500-normal.0m9pqq3h8exl5.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/plus-jakarta-sans-vietnamese-500-normal.0zxj3spy~4ddq.woff2)format("woff2"),url(../media/plus-jakarta-sans-vietnamese-500-normal.0i7b.80w__6q..woff)format("woff");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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/plus-jakarta-sans-latin-ext-500-normal.0~2y-445q2jw5.woff2)format("woff2"),url(../media/plus-jakarta-sans-latin-ext-500-normal.0sxxkfhwzmf-w.woff)format("woff");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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(../media/plus-jakarta-sans-latin-500-normal.0g9j7s_v53npr.woff2)format("woff2"),url(../media/plus-jakarta-sans-latin-500-normal.07pf1f71gnuz7.woff)format("woff");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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/plus-jakarta-sans-cyrillic-ext-600-normal.0nwgf~h4dy4zx.woff2)format("woff2"),url(../media/plus-jakarta-sans-cyrillic-ext-600-normal.0254ea~yk2dmv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/plus-jakarta-sans-vietnamese-600-normal.09gxc-vp7uag-.woff2)format("woff2"),url(../media/plus-jakarta-sans-vietnamese-600-normal.0~nzy.b2dgz3s.woff)format("woff");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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/plus-jakarta-sans-latin-ext-600-normal.0ucmg6zc7zswv.woff2)format("woff2"),url(../media/plus-jakarta-sans-latin-ext-600-normal.02fhlcxywc4r3.woff)format("woff");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:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(../media/plus-jakarta-sans-latin-600-normal.07tlnqgx6s_gz.woff2)format("woff2"),url(../media/plus-jakarta-sans-latin-600-normal.0a_7euqu_rn2q.woff)format("woff");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:Clash;src:url(/fonts/ClashDisplay_Complete/Fonts/WEB/fonts/ClashDisplay-Variable.woff2)format("woff2");font-weight:400 700;font-display:swap}:root{--ink:#172326;--muted:#627072;--paper:#f6f5f0;--soft:#e9e8e1;--line:#d5d7ce;--orange:#de6742;--dark:#142427}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font:16px/1.65 Plus Jakarta Sans,Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.page-wrap{width:min(1180px,100% - 48px);margin:auto}.page-intro{z-index:100;background:var(--ink);color:#f6f5f0;place-content:center;gap:18px;min-height:100dvh;padding:24px;transition:opacity .42s,visibility .42s;display:grid;position:fixed;inset:0}.page-intro.is-ready{visibility:hidden;opacity:0;pointer-events:none}.page-intro-mark{align-items:center;gap:13px;display:flex}.page-intro .brand-monogram{color:#f6f5f0;width:76px;height:38px}.page-intro-mark span{color:#d7dfd8;letter-spacing:.07em;text-transform:uppercase;font:10px/1.4 Space Mono,monospace}.page-intro-progress{background:#e6eee847;width:min(242px,100vw - 48px);height:1px;position:relative;overflow:hidden}.page-intro-progress i{background:var(--orange);animation:.72s cubic-bezier(.65,0,.35,1) forwards intro-progress;display:block;position:absolute;inset:0;transform:translate(-100%)}@keyframes intro-progress{to{transform:translate(0)}}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;width:min(1280px,100% - 48px);height:86px;margin:auto;display:flex}.mobile-menu{display:none}.mobile-menu-trigger{border:1px solid var(--line);background:var(--paper);min-height:38px;color:var(--ink);letter-spacing:.03em;text-transform:uppercase;align-items:center;gap:7px;padding:0 10px;font:700 11px/1 Space Mono,monospace;display:inline-flex}.mobile-menu-panel{z-index:20;border:1px solid var(--ink);background:var(--paper);width:min(320px,100vw - 34px);box-shadow:8px 8px 0 var(--ink);padding:11px;position:absolute;top:calc(100% + 1px);right:0}.mobile-menu-panel nav{display:grid}.mobile-menu-panel nav a,.mobile-menu-resume{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:46px;padding:0 10px;font-size:15px;font-weight:700;display:flex}.mobile-menu-panel nav a:hover,.mobile-menu-resume:hover{color:var(--orange)}.mobile-menu-resume{border:1px solid var(--ink);margin-top:8px}.wordmark{color:var(--ink);align-items:center;display:inline-flex}.brand-monogram{width:68px;height:34px;transition:transform .2s;overflow:visible}.wordmark:hover .brand-monogram{transform:translateY(-1px)}nav{gap:27px;font-size:13px;font-weight:600;display:flex}nav a,.resume-link,.text-link{transition:color .2s}nav a:hover,.resume-link:hover,.text-link:hover{color:var(--orange)}.resume-link,.text-link{align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.hero{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 320px;align-items:center;gap:56px;min-height:610px;display:grid}.eyebrow{color:#4b5758;letter-spacing:.08em;text-transform:uppercase;margin:0 0 19px;font:11px/1.4 Space Mono,monospace}.eyebrow span{background:var(--orange);border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}h1,h2,h3{letter-spacing:-.018em;font-family:Clash;line-height:1.04}h1{max-width:850px;margin:0 0 22px;font-size:clamp(3rem,5.2vw,5.2rem);font-weight:600}h2{font-size:clamp(2.35rem,4vw,4.25rem);font-weight:600}h3{font-size:clamp(1.9rem,3vw,2.9rem);font-weight:600}.lede{color:#4f5b5d;max-width:630px;margin:0 0 21px;font-size:17px;line-height:1.64}.hero-capabilities{color:#364647;letter-spacing:.035em;text-transform:uppercase;margin:0 0 27px;font:10px/1.5 Space Mono,monospace}.hero-capabilities i{color:var(--orange);padding:0 6px;font-style:normal}.hero-actions,.profile-links{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.profile-links{gap:20px;margin-top:27px}.button{border:1px solid;justify-content:center;align-items:center;gap:9px;min-height:49px;padding:0 19px;font-size:14px;font-weight:700;transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ink);color:#fff}.button-primary:hover{background:#304347}.button-quiet:hover{background:var(--soft)}.hero-resume{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--orange);-webkit-text-decoration-color:var(--orange);-webkit-text-decoration-color:var(--orange);text-decoration-color:var(--orange);text-underline-offset:5px;align-items:center;gap:5px;padding:10px 4px;font-size:13px;font-weight:700;text-decoration-thickness:1px;display:inline-flex}.hero-resume:hover{color:var(--orange)}.opportunity-panel{border-top:2px solid var(--ink);width:100%;color:var(--ink);box-sizing:border-box;padding:18px 0 0}.opportunity-status{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding-bottom:14px;display:flex}.opportunity-status>span{background:#58a979;border-radius:50%;width:8px;height:8px}.opportunity-status p{letter-spacing:.065em;text-transform:uppercase;margin:0;font:10px/1.4 Space Mono,monospace}.opportunity-location{border-bottom:1px solid var(--line);align-items:flex-start;gap:11px;padding:16px 0;display:flex}.opportunity-location svg,.opportunity-item svg{color:var(--orange);flex:none}.opportunity-location span{color:#657170;letter-spacing:.055em;text-transform:uppercase;margin-bottom:3px;font:9px/1.4 Space Mono,monospace;display:block}.opportunity-location strong{letter-spacing:-.008em;font-size:15px;display:block}.opportunity-intro{color:#506061;margin:16px 0 4px;font-size:13px;line-height:1.55}.opportunity-item{border-top:1px solid var(--line);grid-template-columns:18px minmax(0,1fr);gap:11px;padding:16px 0;transition:padding-left .2s,border-color .2s;display:grid}.opportunity-item:first-of-type{margin-top:16px}.opportunity-item:hover{border-color:var(--orange);padding-left:5px}.opportunity-item strong{letter-spacing:-.008em;margin-bottom:5px;font-size:14px;display:block}.opportunity-item p{color:#596667;margin:0;font-size:12px;line-height:1.56}.section{padding:118px 0}.section-heading{grid-template-columns:275px minmax(0,1fr);gap:35px;margin-bottom:48px;display:grid}.section-heading .eyebrow{margin-top:10px}.section-heading h2{max-width:750px;margin:0 0 15px}.section-heading>div>p{max-width:600px;color:var(--muted);margin:0}.certification-section .section-heading,.experience-section .section-heading{grid-template-columns:250px minmax(0,1fr)}.certification-section .section-heading h2,.experience-section .section-heading h2{white-space:nowrap;letter-spacing:-.008em;max-width:none;font-size:clamp(2.25rem,3vw,3.15rem)}.work-demo-link{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--orange);-webkit-text-decoration-color:var(--orange);-webkit-text-decoration-color:var(--orange);text-decoration-color:var(--orange);text-underline-offset:5px;align-items:center;gap:6px;margin-top:20px;font-size:13px;font-weight:700;text-decoration-thickness:1px;display:inline-flex}.work-demo-link:hover{color:var(--orange)}.project{border-top:1px solid var(--line);grid-template-columns:1.15fr .85fr;align-items:center;gap:58px;padding:59px 0;display:grid}.project-body{max-width:470px}.project-kicker{color:var(--muted);text-transform:uppercase;margin-bottom:16px;font:11px/1.4 Space Mono,monospace}.project-kicker span{color:var(--orange);margin-right:9px}.project h3{margin:0 0 16px}.project-summary{color:#455052;margin:0 0 27px}.detail-grid{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:25px;display:grid}.detail-grid strong{margin-bottom:4px;font-size:12px;display:block}.detail-grid p,.project-note{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.stack{color:#526061;font:11px/1.5 Space Mono,monospace}.flow{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;margin:0 0 20px;padding:13px 0;font:10px/1.5 Space Mono,monospace;display:flex}.flow i{color:var(--orange);font-style:normal}.project-note{margin-bottom:22px}.project-reverse .project-visual{order:2}.project-visual{aspect-ratio:1.54;background:#111;position:relative;overflow:hidden}.project-visual>img:first-child{object-fit:cover;width:100%;height:100%;transition:transform .5s}.project:hover .project-visual>img:first-child{transform:scale(1.025)}.screenshot-pair img+img{border:1px solid #ffffff47;width:45%;height:auto;position:absolute;bottom:17px;right:17px;box-shadow:0 15px 35px #00000054}.project-list{color:var(--muted);margin:0 0 26px;padding-left:19px;font-size:14px}.project-list li+li{margin-top:6px}.aria-section{color:#f1f2ec;background:#142427;padding:120px 0;overflow:hidden}.aria-layout{grid-template-columns:.88fr 1.12fr;align-items:center;gap:70px;display:grid}.aria-copy .eyebrow{color:#b8c5bd}.aria-copy h2{margin:0 0 9px;font-size:clamp(3.5rem,6vw,6rem)}.aria-title{color:#ef754d;letter-spacing:.08em;text-transform:uppercase;max-width:430px;margin:0 0 27px;font:11px/1.55 Space Mono,monospace}.aria-copy>p:not(.eyebrow):not(.aria-title):not(.aria-footnote){color:#c6d0c9;max-width:470px;font-size:17px}.aria-copy dl{grid-template-columns:repeat(3,1fr);gap:18px;margin:34px 0 24px;display:grid}.aria-copy dl div{border-top:1px solid #526360;padding-top:11px}.aria-copy dt{color:#ef754d;text-transform:uppercase;margin-bottom:7px;font:11px Space Mono,monospace}.aria-copy dd{color:#b8c4bd;margin:0;font-size:12px;line-height:1.55}.aria-footnote{color:#84928c;margin:0;font-size:11px}.aria-architecture{color:#bec9c1;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:7px;margin:26px 0 15px;font:9px/1.5 Space Mono,monospace;display:flex}.aria-architecture i{color:#ef754d;font-style:normal}.aria-visual{color:#ec7651;background:radial-gradient(circle at 50% 42%,#4a7c9b2b,#0000 45%);border:1px solid #e4ede424;flex-direction:column;justify-content:center;align-items:center;gap:22px;min-height:570px;padding:28px;display:flex;position:relative}.aria-presence{isolation:isolate;filter:drop-shadow(0 0 20px #7cb5ff38);flex:none;width:min(410px,82%);height:400px;position:relative;overflow:hidden}.aria-presence>img{object-fit:cover;mix-blend-mode:screen;opacity:.92;width:100%;height:100%;display:block}.aria-particle-overlay{opacity:.22;mix-blend-mode:screen;inset:0;width:100%!important;height:100%!important;position:absolute!important}.aria-example{color:#dce6de;grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;gap:10px;width:min(100%,590px);display:grid}.aria-example>div{background:#0b1a1d61;border-top:1px solid #d7e7dc47;gap:7px;padding:12px 13px;display:grid}.aria-example span{color:#94a79d;letter-spacing:.06em;text-transform:uppercase;font:8px Space Mono,monospace}.aria-example strong{font-size:11px;font-weight:600;line-height:1.43}.aria-example>i{color:#ef754d;align-self:center;font:14px Space Mono,monospace}.capability-section{background:var(--soft)}.capability-list,.experience-list{border-top:1px solid #cdd0c8}.capability{border-bottom:1px solid #cdd0c8;grid-template-columns:90px 275px minmax(0,1fr);gap:35px;padding:27px 0 30px;display:grid}.capability>span,.experience-date{color:var(--orange);text-transform:uppercase;padding-top:4px;font:11px Space Mono,monospace}.capability h3{letter-spacing:-.008em;margin:0;font-size:23px;line-height:1.16}.capability p{max-width:700px;color:var(--muted);margin:0;font-size:14px;line-height:1.62}.certification-section{background:#efeee8}.education-record{border-top:2px solid var(--ink);border-bottom:1px solid #cdd0c8;grid-template-columns:72px minmax(0,1fr) minmax(250px,.58fr);gap:22px;margin-bottom:38px;padding:27px 0 29px;display:grid}.education-index{align-content:start;gap:6px;padding-top:3px;display:grid}.education-index span{color:var(--orange);letter-spacing:.045em;text-transform:uppercase;font:10px Space Mono,monospace}.education-index strong{font:400 10px/1.45 Space Mono,monospace}.education-record h3{letter-spacing:-.01em;margin:0 0 7px;font-size:26px;line-height:1.14}.education-focus{color:#536364;margin:0;font-size:14px;font-weight:600}.education-highlights{color:#536364;gap:8px;margin:1px 0 0;padding:0 0 0 17px;font-size:12px;line-height:1.52;display:grid}.certification-list{border-top:1px solid #cdd0c8}.certification{border-bottom:1px solid #cdd0c8;grid-template-columns:72px minmax(0,1fr) 190px;gap:22px;padding:25px 0 27px;display:grid}.certification>span{color:var(--orange);padding-top:4px;font:11px Space Mono,monospace}.credential-issuer{color:#647171;letter-spacing:.045em;text-transform:uppercase;margin:0 0 5px;font:10px/1.4 Space Mono,monospace}.certification h3{letter-spacing:-.008em;margin:0 0 8px;font-size:22px;line-height:1.16}.certification h3+p{max-width:620px;color:var(--muted);margin:0;font-size:13px;line-height:1.55}.certification time{color:#586565;text-align:right;padding-top:6px;font:10px/1.55 Space Mono,monospace}.experience-list{border-color:var(--line)}.experience{grid-template-columns:275px minmax(0,1fr);gap:35px;padding:29px 0;display:grid}.experience+.experience{border-top:1px solid var(--line)}.experience h3{margin:0 0 5px;font-size:29px}.company{color:var(--muted);margin:0 0 18px;font-size:14px}.experience-summary{color:#455052;letter-spacing:-.004em;max-width:790px;margin:0;line-height:1.65}.experience-summary+.experience-summary{margin-top:13px}.company,.lede,.section-heading>div>p,.case-story-header>div>p:last-child{letter-spacing:-.004em}.experience-scope{border-top:1px solid var(--line);color:#4b5a5b;letter-spacing:.025em;text-transform:uppercase;margin:18px 0 0;padding-top:12px;font:10px/1.55 Space Mono,monospace}.about-section{background:#e6e5df}.about-layout{grid-template-columns:310px minmax(0,1fr);align-items:center;gap:80px;display:grid}.portrait{background:#c6c6bf;height:415px;position:relative;overflow:hidden}.portrait img{object-fit:cover;object-position:center top;filter:saturate(.85)}.about-layout h2{white-space:nowrap;margin:0 0 25px;font-size:clamp(2.45rem,4vw,4rem)}.about-layout p:not(.eyebrow){color:#455052;max-width:610px;font-size:17px}.about-layout .button{margin-top:13px}footer{background:var(--dark);color:#f5f3ec;padding:102px 0 31px}.footer-content{grid-template-columns:1fr auto;gap:42px;display:grid}.footer-content .eyebrow{color:#aeb9b6}.footer-content h2{letter-spacing:-.012em;max-width:710px;margin:0;font-weight:550;line-height:1.1}.footer-content>div>p:not(.eyebrow){color:#adbab3;max-width:510px;font-size:14px}.contact-actions{align-self:end;align-items:center;gap:15px;display:flex}.footer-email{border-bottom:1px solid #94a09c;align-items:center;gap:11px;padding-bottom:6px;font-size:clamp(1rem,1.8vw,1.35rem);font-weight:600;display:inline-flex}.footer-email:hover{color:#f58b62}.footer-phone{color:#d4ddd5;text-underline-offset:5px;width:max-content;margin-top:11px;font:600 14px Plus Jakarta Sans,sans-serif;-webkit-text-decoration:underline #71817a;text-decoration:underline #71817a;display:block}.footer-phone:hover{color:#f58b62;text-decoration-color:#f58b62}.footer-resume{color:#f5f3ec;border-color:#95a39e}.footer-bottom{color:#aeb9b6;border-top:1px solid #465052;grid-column:1/-1;justify-content:space-between;gap:20px;margin-top:62px;padding-top:20px;font-size:11px;display:flex}.footer-bottom .text-link{color:#e6e9e3;margin-left:17px}@media (max-width:780px){.page-wrap,.site-header{width:min(620px,100% - 34px)}.site-header{height:72px;position:relative}.site-header>.resume-link{display:none}.mobile-menu{display:block}.site-header nav{display:none}.hero{grid-template-columns:1fr;gap:36px;min-height:auto;padding:70px 0 46px}.opportunity-panel{max-width:none}.hero-capabilities{margin-bottom:24px}.profile-links{gap:13px}.section,.aria-section{padding:79px 0}.section-heading{margin-bottom:35px;display:block}.certification-section .section-heading h2,.experience-section .section-heading h2{white-space:normal}.section-heading .eyebrow{margin-top:0}.project,.project-reverse{flex-direction:column;align-items:stretch;gap:27px;padding:44px 0;display:flex}.project-reverse .project-visual{order:initial}.project-body{max-width:none}.detail-grid,.aria-copy dl{grid-template-columns:1fr;gap:15px}.opportunity-system{min-height:290px}.system-flow{flex-wrap:wrap;justify-content:flex-start}.system-flow div{width:calc(50% - 12px)}.system-flow b{display:none}.aria-layout,.about-layout{grid-template-columns:1fr;gap:38px}.about-layout h2{white-space:normal}.aria-visual{min-height:390px;padding:20px}.aria-presence{width:min(100%,410px);height:360px}.aria-example{grid-template-columns:1fr;gap:7px;width:100%}.aria-example>i,.aria-panel{display:none}.capability{grid-template-columns:48px 1fr;gap:10px 17px}.capability p{grid-column:2}.education-record{grid-template-columns:1fr;gap:13px;margin-bottom:30px;padding:23px 0}.education-index{align-items:center;gap:11px;padding-top:0;display:flex}.education-highlights{margin-top:2px}.certification{grid-template-columns:45px minmax(0,1fr);gap:8px 15px;padding:22px 0}.certification time{text-align:left;grid-column:2;padding-top:0}.experience{grid-template-columns:1fr;gap:10px}.portrait{height:min(115vw,430px)}.footer-content{grid-template-columns:1fr}.contact-actions{flex-direction:column;align-items:flex-start}.footer-bottom{flex-direction:column;margin-top:31px}.footer-bottom .text-link:first-child{margin-left:0}}@media (prefers-reduced-motion:reduce){.page-intro{transition:none}.page-intro-progress i{animation:none;transform:translate(0)}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.contact-right{align-self:end;width:min(100%,430px)}.contact-form{gap:22px;display:grid}.contact-form label{border-bottom:1px solid #60706c;gap:8px;transition:border-color .2s;display:grid}.contact-form label:focus-within{border-color:var(--orange)}.contact-form label span{color:#b5c1b9;letter-spacing:.08em;text-transform:uppercase;font:10px Space Mono,monospace}.contact-form input,.contact-form textarea{resize:vertical;color:#f5f3ec;background:0 0;border:0;outline:0;width:100%;padding:0 0 10px;font:15px/1.55 Plus Jakarta Sans,sans-serif}.contact-form textarea{min-height:94px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#81908a;opacity:1}.contact-submit{color:#f5f3ec;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #dfe7df;align-items:center;gap:8px;width:max-content;padding:7px 0;font:700 13px Plus Jakarta Sans,sans-serif;transition:color .2s,border-color .2s;display:inline-flex}.contact-submit:hover:not(:disabled){color:#f58b62;border-color:#f58b62}.contact-submit:hover svg{transform:translate(4px)}.contact-submit svg{transition:transform .2s}.contact-submit:disabled{cursor:wait;color:#84928c}.form-status{color:#b6c2ba;min-height:20px;margin:0;font-size:12px}.form-status.success{color:#b9d7ba}.form-status.error{color:#f5ad90}.direct-email{color:#aebbb3;margin:25px 0 0;font-size:12px}.direct-email a{color:#f5f3ec;align-items:center;gap:5px;margin-left:5px;font-weight:600;display:inline-flex}.direct-email a:hover{color:#f58b62}.footer-links{align-items:center;gap:18px;display:flex}.footer-links .text-link{margin-left:0}.footer-links svg{width:13px;height:13px}@media (max-width:780px){.contact-right{width:100%}.contact-form{gap:20px}.footer-links{flex-wrap:wrap;gap:12px}}.case-story{border-top:1px solid var(--line);padding:82px 0 94px;display:block}.case-story-header{grid-template-columns:minmax(0,1fr) minmax(230px,.43fr);align-items:end;gap:58px;margin-bottom:54px;display:grid}.case-story-header h3{margin:0 0 14px}.case-story-header>div>p:last-child{color:#475657;max-width:650px;margin:0;font-size:clamp(1rem,1.3vw,1.2rem);line-height:1.55}.case-story-header aside{border-top:1px solid var(--line);padding-top:13px}.case-story-header aside span,.step-label{color:var(--accent);letter-spacing:.045em;text-transform:uppercase;margin:0 0 8px;font:10px/1.4 Space Mono,monospace}.case-story-header aside p{color:#4f5c5d;margin:0;font:11px/1.65 Space Mono,monospace}.case-story-step{grid-template-columns:minmax(0,.78fr) minmax(260px,.42fr);align-items:center;gap:48px;margin-bottom:68px;display:grid}.case-story-step.is-reversed{grid-template-columns:minmax(0,.78fr) minmax(260px,.42fr)}.step-copy h4,.case-story-support h4{max-width:360px;color:var(--ink);letter-spacing:-.012em;margin:0 0 13px;font-size:clamp(1.5rem,2.25vw,2.25rem);line-height:1.04}.step-copy>p:last-child,.case-story-support>div>p:last-child{color:#506061;max-width:380px;margin:0;font-size:15px;line-height:1.62}.screen-plate{background:#e5e9e4;border:1px solid #cbd1ca;min-width:0;margin:0;padding:9px}.screen-plate img{object-fit:contain;width:100%;height:auto;display:block}.screen-dark{background:#101825;border-color:#293646}.screen-light{background:#e4e8e3;border-color:#cbd1ca}.screen-plate figcaption{color:#657170;letter-spacing:.045em;text-transform:uppercase;margin-top:10px;font:9px/1.4 Space Mono,monospace}.screen-dark figcaption{color:#9aa9b8}.case-story-support{border-top:1px solid var(--line);grid-template-columns:minmax(0,.62fr) minmax(210px,.38fr);align-items:center;gap:48px;padding-top:30px;display:grid}.case-story-primary{grid-template-columns:minmax(260px,.42fr) minmax(0,.88fr);align-items:center;gap:48px;margin-bottom:32px;display:grid}.case-story-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.screen-plate figcaption>span{display:block}.screen-plate figcaption p{color:#687371;letter-spacing:0;text-transform:none;max-width:420px;margin:5px 0 0;font:12px/1.48 Plus Jakarta Sans,Arial,sans-serif}.screen-dark figcaption p{color:#a6b2bc}.project-facts{border-top:1px solid var(--line);gap:0;margin:25px 0 0;display:grid}.project-facts div{border-bottom:1px solid var(--line);grid-template-columns:82px minmax(0,1fr);gap:14px;padding:10px 0;display:grid}.project-facts dt{color:var(--accent);letter-spacing:.045em;text-transform:uppercase;font:9px/1.55 Space Mono,monospace}.project-facts dd{color:#536263;margin:0;font-size:12px;line-height:1.5}.case-story-evidence{border-top:1px solid var(--line);grid-template-columns:minmax(230px,.32fr) minmax(0,.98fr);align-items:start;gap:48px;margin-top:52px;padding-top:30px;display:grid}.evidence-intro h4{margin-bottom:13px}.evidence-intro>p:not(.step-label):not(.evidence-flow){color:#506061;max-width:330px;margin:0;font-size:14px;line-height:1.62}.evidence-flow{color:var(--ink);letter-spacing:.025em;text-transform:uppercase;margin:20px 0 0;font:9px/1.65 Space Mono,monospace}@media (max-width:780px){.case-story{padding:54px 0 64px}.case-story-header,.case-story-step,.case-story-step.is-reversed,.case-story-support,.case-story-primary,.case-story-evidence{grid-template-columns:1fr;gap:26px}.case-story-header{margin-bottom:36px}.case-story-step{margin-bottom:44px}.case-story-step.is-reversed .step-copy{order:-1}.case-story-pair{grid-template-columns:1fr;gap:14px}.screen-plate{padding:5px}.case-story-support{padding-top:25px}.case-story-evidence{margin-top:40px;padding-top:25px}}
