@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/dm-sans-latin-ext-400-normal.BtiwyxMk.woff2)format("woff2"),url(/_astro/dm-sans-latin-ext-400-normal.BjWJ59Pq.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:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/dm-sans-latin-400-normal.CW0RaeGs.woff2)format("woff2"),url(/_astro/dm-sans-latin-400-normal.BwCSEQnW.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:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/dm-sans-latin-ext-500-normal.BJfUCQsA.woff2)format("woff2"),url(/_astro/dm-sans-latin-ext-500-normal.DR84L5F-.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:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/dm-sans-latin-500-normal.B9HHJjqV.woff2)format("woff2"),url(/_astro/dm-sans-latin-500-normal.Dr3UlScf.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:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/dm-sans-latin-ext-600-normal.4vooXBpG.woff2)format("woff2"),url(/_astro/dm-sans-latin-ext-600-normal.DRtaDpgU.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:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/dm-sans-latin-600-normal.Aqo67rzb.woff2)format("woff2"),url(/_astro/dm-sans-latin-600-normal.BmdmIIQ2.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}:root{color-scheme:light;--bg:#f7f8fc;--surface:#fff;--ink:#26304a;--muted:#616b81;--accent:#5651c7;--accent-hover:#423daf;--soft:#eeedfc;--band:#e9e8fa;--line:#e0e3ef;--shadow:0 10px 35px #30366e08;--font:"DM Sans", Arial, Helvetica, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{background:var(--bg);color:var(--ink);font:15px/1.75 var(--font);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{letter-spacing:-.5px;font-weight:600;line-height:1.25}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{cursor:wait}img,svg{max-width:100%;display:block}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:4px}::selection{background:var(--band);color:var(--ink)}[hidden]{display:none!important}.wrap{width:min(1080px,100% - 64px);margin-inline:auto}.section-space{padding-block:62px}.eyebrow{color:var(--accent);letter-spacing:1.1px;text-transform:uppercase;font-size:11px;font-weight:500}h2{color:var(--accent);font-size:30px}h3{font-size:18px}.section-heading{text-align:center;margin-bottom:31px}.section-heading .eyebrow{margin-bottom:8px}.section-heading>p:not(.eyebrow){color:var(--muted);margin-top:10px;font-size:13px}.button{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:14px;padding:11px 17px;font-size:12px;font-weight:500;line-height:1.5;transition:background .15s,transform .15s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-primary,.button-dark{background:var(--accent);color:#fff}.button-primary:hover,.button-dark:hover{background:var(--accent-hover)}.text-link{color:var(--accent);align-items:center;gap:10px;font-size:12px;font-weight:500;display:inline-flex}.text-link:hover{text-underline-offset:5px;text-decoration:underline}.icon-button{border:1px solid var(--line);background:var(--surface);border-radius:8px;place-items:center;width:37px;height:37px;display:grid}.icon-button:hover{background:var(--soft)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:50;background:var(--accent);color:#fff;border-radius:5px;padding:10px 17px;position:fixed;top:10px;left:10px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{justify-content:space-between;align-items:center;gap:25px;padding-block:22px;display:flex}.brand{align-items:center;gap:10px;font-size:17px;font-weight:600;line-height:1.2;display:flex}.brand-mark{color:var(--accent);letter-spacing:-3px;padding-right:4px;font-family:monospace;font-size:22px;font-weight:600}.brand-description{color:var(--muted);letter-spacing:.2px;padding-top:4px;font-size:9px;font-weight:400;display:block}.desktop-nav{color:var(--muted);align-items:center;gap:24px;margin-left:30px;font-size:11px;display:flex}.desktop-nav a:hover{color:var(--accent)}.header-actions{align-items:center;gap:10px;display:flex}.resume-link{background:var(--accent);color:#fff;border-radius:7px;align-items:center;gap:12px;padding:9px 14px;font-size:11px;font-weight:500;display:flex}.resume-link:hover{background:var(--accent-hover)}.mobile-menu{display:none}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:70px;max-width:980px;padding-block:38px 47px;display:grid}.hero-copy{padding-bottom:18px}.hero .eyebrow{text-transform:none;letter-spacing:.3px;align-items:center;gap:9px;margin-bottom:11px;font-size:12px;display:flex}.hero .eyebrow>span{background:var(--accent);border-radius:50%;width:6px;height:6px}.hero h1{letter-spacing:-2px;font-size:55px;line-height:1.12}.hero h1>span:first-child{color:var(--accent)}.typing-cursor{color:var(--accent);padding-left:3px;font-size:44px;font-weight:400;animation:1.5s step-end infinite cursor-blink}.hero-intro{color:var(--muted);max-width:415px;margin-top:22px;font-size:16px;line-height:1.85}.hero-actions{align-items:center;gap:24px;margin-top:25px;display:flex}.portrait{justify-self:center;width:100%;min-width:0;max-width:430px}.model-stage{aspect-ratio:1;isolation:isolate;border-radius:22px;width:100%;position:relative;overflow:hidden}.model-halo{z-index:-1;background:radial-gradient(#d8d6fc80 0%,#e8e7fb80 38%,#f7f8fc00 70%);border-radius:50%;width:85%;height:85%;position:absolute;top:8%;left:7.5%}.model-stage:after{content:"";z-index:-1;background:radial-gradient(#49417e24,#0000 70%);width:56%;height:5%;position:absolute;bottom:5%;left:22%}.model-placeholder{z-index:-1;background:linear-gradient(150deg,#eeedfb50,#e2e1f660);border-radius:50%;place-items:center;display:grid;position:absolute;inset:12%}.model-placeholder>span{letter-spacing:-4px;color:#b2afd4;font-size:65px;font-weight:500}.portrait[data-state=ready] .model-placeholder{display:none}#model-mount{position:absolute;inset:0}#model-mount canvas{touch-action:pan-y;width:100%;height:100%;display:block}.model-status{text-align:center;color:var(--muted);background:var(--bg);border-radius:5px;padding:5px 12px;font-size:11px;position:absolute;bottom:9px;left:0;right:0}.portrait[data-state=ready] .model-status{display:none}.portrait figcaption{text-align:center;margin-top:7px}.model-caption{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;font-size:9px;display:flex}.model-dot{background:var(--accent);border-radius:50%;width:4px;height:4px}.model-hint{border-left:1px solid var(--line);color:var(--muted);margin-left:2px;padding-left:9px}.model-controls{justify-content:center;align-items:center;gap:6px;margin-top:11px;display:flex}.model-controls button{border:1px solid var(--line);background:var(--surface);min-width:29px;height:29px;color:var(--muted);border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:4px 9px;font-size:10px;display:flex}.model-controls button:hover{background:var(--soft);color:var(--accent)}.model-controls #model-play{min-width:72px}.model-fallback{color:var(--muted);margin-top:10px;font-size:11px}.model-fallback a{text-decoration:underline}.portrait[data-state=error] .model-hint{display:none}.wave{width:100%;height:60px;fill:var(--band);max-width:none}.wave-top{margin-bottom:-1px}.wave-bottom{height:47px;margin-top:-1px}.values-band{background:var(--band);padding-block:33px 31px}.values-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:940px;margin-inline:auto;display:grid}.value-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;overflow:hidden}.value-card:nth-child(2){transform:translateY(-17px)}.value-card>img{object-fit:cover;width:100%;height:143px}.value-body{padding:20px 21px 22px;position:relative}.card-index{color:var(--accent);letter-spacing:1px;margin-bottom:8px;font-size:9px;font-weight:500;display:block}.value-card h3{max-width:230px;font-size:16px;line-height:1.4}.value-card p{color:var(--muted);margin-top:10px;font-size:12px;line-height:1.8}.work-section{padding-top:57px;padding-bottom:38px}.projects-grid{grid-template-columns:1fr 1fr;gap:23px;max-width:855px;margin-inline:auto;display:grid}.project-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;align-items:flex-start;padding:27px;display:flex}.project-top{justify-content:space-between;align-items:center;width:100%;margin-bottom:17px;display:flex}.project-symbol{background:var(--soft);width:39px;height:39px;color:var(--accent);border-radius:10px;place-items:center;display:grid}.badge{color:var(--muted);border:1px solid var(--line);border-radius:20px;padding:3px 8px;font-size:9px}.project-card h3{max-width:330px;font-size:20px;line-height:1.4}.project-card>p{color:var(--muted);margin-top:13px;margin-bottom:21px;font-size:12px;line-height:1.85}.project-stack{flex-wrap:wrap;gap:6px;margin:0 0 21px;padding:0;list-style:none;display:flex}.project-stack li{color:var(--ink);background:var(--soft);border-radius:5px;align-items:center;gap:6px;padding:4px 7px;font-size:10px;line-height:1.5;display:flex}.stack-icon{background:#fff;border-radius:4px;flex:0 0 20px;place-items:center;width:20px;height:20px;display:grid}.technology-icon{object-fit:contain;flex-shrink:0}.project-card>.button{margin-top:auto;padding:9px 14px;font-size:11px}.data-section{padding-top:48px}.data-filters{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:-7px;margin-bottom:25px;display:flex}.filter{color:var(--muted);border:1px solid #0000;border-radius:20px;padding:6px 13px;font-size:10px}.filter>span{margin-left:8px;font-size:8px}.filter.active{color:var(--accent);background:var(--soft);border-color:#d8d5f7}.filter:not(.active):hover{color:var(--accent)}.data-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:27px 23px;display:grid}.data-image{aspect-ratio:1.45;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:9px;display:block;position:relative;overflow:hidden}.data-image img{object-fit:contain;width:100%;height:100%;transition:transform .2s}.data-image:hover img{transform:scale(1.025)}.zoom-affordance{border:1px solid var(--line);width:25px;height:25px;color:var(--accent);background:var(--surface);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:8px;right:8px}.data-caption{text-align:center;margin-top:11px}.data-caption h3{letter-spacing:0;font-size:13px;font-weight:500;line-height:1.5}.data-caption h3 a:hover{color:var(--accent)}.data-caption>span{color:var(--muted);margin-top:1px;font-size:9px;display:block}.experience-section{grid-template-columns:1fr 1fr;align-items:center;gap:85px;max-width:900px;padding-block:35px 63px;display:grid}.experience-heading{order:2}.experience-heading .eyebrow{margin-bottom:10px}.experience-heading h2{font-size:31px}.experience-heading>p:not(.eyebrow){color:var(--muted);margin-top:13px;font-size:13px}.experience-heading .text-link{margin-top:19px}.timeline{order:1;padding-left:22px}.experience{border-left:1px solid var(--line);padding:10px 0 25px 25px;position:relative}.experience:last-child{padding-bottom:10px}.timeline-dot{background:var(--accent);width:9px;height:9px;box-shadow:0 0 0 5px var(--soft);border-radius:50%;position:absolute;top:18px;left:-5px}.experience h3{max-width:340px;font-size:17px;line-height:1.4}.experience .company{color:var(--muted);margin-top:7px;font-size:12px}.experience-highlights{color:var(--muted);margin-top:13px;padding-left:16px;font-size:12px;line-height:1.8}.experience-highlights li+li{margin-top:7px}.experience-details{color:var(--muted);flex-direction:column;gap:2px;margin-top:8px;font-size:10px;display:flex}.experience-details>span:before{content:"·";width:10px;color:var(--accent);font-size:12px;display:inline-block}.skills-section{padding-block:10px 64px}.skills-section .section-heading{margin-bottom:27px}.skills-section h2{font-size:28px}.skills-list{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:26px;margin:0;padding:0;list-style:none;display:flex}.skills-list li{color:var(--muted);flex-direction:column;align-items:center;gap:9px;min-width:50px;font-size:9px;display:flex}.technology-mark{border:1px solid var(--line);width:42px;height:42px;box-shadow:var(--shadow);background:#fff;border-radius:10px;place-items:center;display:grid}.site-footer{background:var(--surface);border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;gap:25px;margin-bottom:24px;padding:23px 27px;display:flex}.site-footer>div>p{font-size:11px;font-weight:500}.model-download{color:var(--muted);align-items:center;gap:5px;margin-top:3px;font-size:9px;display:flex}.model-download:hover{color:var(--accent)}.copyright{color:var(--muted);font-size:9px}.social-links{align-items:center;gap:20px;font-size:10px;display:flex}.social-links a{align-items:center;gap:6px;display:flex}.social-links a:hover{color:var(--accent)}.not-found{flex-direction:column;justify-content:center;align-items:flex-start;gap:25px;min-height:65vh;padding-block:100px;display:flex}.not-found h1{max-width:600px;font-size:45px}.not-found h1 em{color:var(--accent);font-style:normal}.not-found>p:not(.eyebrow){color:var(--muted);max-width:500px;font-size:14px}dialog{border:1px solid var(--line);background:var(--surface);width:min(1100px,100% - 40px);max-height:calc(100dvh - 40px);color:var(--ink);border-radius:12px;padding:0;box-shadow:0 20px 80px #13172a50}dialog::backdrop{backdrop-filter:blur(5px);background:#171b38c9}.dialog-header,.dialog-footer{justify-content:space-between;align-items:center;gap:22px;padding:20px 24px;display:flex}.dialog-header{border-bottom:1px solid var(--line)}.dialog-header h2{letter-spacing:-.3px;margin-top:4px;font-size:22px}.dialog-header .eyebrow{font-size:9px}.dialog-close{flex-shrink:0}.dialog-image-wrap{background:#fff;place-items:center;min-height:120px;padding:16px;display:grid}.dialog-image-wrap img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:65dvh}.dialog-footer{border-top:1px solid var(--line)}.dialog-footer>p{color:var(--muted);font-size:11px}.dialog-footer .text-link{flex-shrink:0;font-size:11px}body.dialog-open{overflow:hidden}html[data-theme=dark]{color-scheme:dark;--bg:#171b2b;--surface:#20263a;--ink:#e9ebf5;--muted:#b2b9ce;--accent:#b6afff;--accent-hover:#9a91ee;--soft:#30304f;--band:#252740;--line:#363d55;--shadow:0 10px 35px #00000010}html[data-theme=dark] .button-primary,html[data-theme=dark] .button-dark,html[data-theme=dark] .resume-link{color:#fff;background:#6f63d4}html[data-theme=dark] .button-primary:hover,html[data-theme=dark] .button-dark:hover,html[data-theme=dark] .resume-link:hover{background:#665bc9}html[data-theme=dark] .model-halo{background:radial-gradient(#54517f60,#29294725 55%,#0000 74%)}html[data-theme=dark] .model-placeholder{background:linear-gradient(150deg,#37334e50,#292d4550)}html[data-theme=dark] .model-placeholder>span{color:#797398}html[data-theme=dark] .filter.active{border-color:#4d4771}html[data-theme=dark] .data-image{background:#f5f6fb}@keyframes cursor-blink{0%,48%{opacity:1}49%,to{opacity:0}}@media (width<=1000px){.wrap{width:calc(100% - 48px)}.hero{gap:45px;padding-top:28px;padding-bottom:35px}.hero h1{font-size:49px}.hero-intro{font-size:15px}.portrait{max-width:390px}.desktop-nav{gap:18px;margin-left:0}.values-grid{gap:18px}.value-body{padding:17px 18px 20px}.value-card h3{font-size:15px}.value-card>img{height:135px}.skills-list{gap:19px}.experience-section{gap:55px}}@media (width<=760px){.desktop-nav{gap:13px;font-size:10px}.site-header{gap:15px}.hero{gap:20px;min-height:390px;padding-block:25px 35px}.hero h1{font-size:42px}.typing-cursor{font-size:34px}.hero-intro{margin-top:17px;font-size:13px;line-height:1.9}.hero-actions{gap:17px;margin-top:20px}.hero-actions .button{gap:10px;padding:10px 13px;font-size:10px}.hero-actions .text-link{font-size:11px}.portrait{max-width:330px}.model-caption{gap:5px;font-size:8px}.model-hint{margin-left:0;padding-left:6px}.values-grid{gap:14px}.value-body{padding:15px}.value-card>img{height:112px}.value-card h3{font-size:14px}.value-card p{font-size:11px;line-height:1.8}.section-space{padding-block:48px}.section-heading h2{font-size:27px}.section-heading>p:not(.eyebrow){font-size:12px}.projects-grid{gap:18px}.project-card{padding:22px}.project-card h3{font-size:18px}.project-card>p{font-size:11px}.data-grid{gap:25px 17px}.data-image{aspect-ratio:1.2;padding:7px}.data-caption h3{font-size:11px}.data-caption>span{font-size:8px}.experience-section{gap:35px;padding-block:20px 50px}.experience-heading h2{font-size:27px}.experience-heading>p:not(.eyebrow){font-size:12px}.experience h3{font-size:15px}.experience .company{font-size:11px}.experience-details{font-size:9px}.skills-list{gap:18px 22px;max-width:580px;margin-inline:auto}.skills-list li{min-width:60px}.site-footer{gap:20px;padding:20px}.social-links{gap:13px;font-size:9px}}@media (width<=600px){.wrap{width:calc(100% - 36px)}.site-header{gap:10px;padding-block:18px}.brand{gap:8px;font-size:16px}.brand-mark{font-size:20px}.brand-description{font-size:8px}.desktop-nav{display:none}.header-actions{gap:8px}.resume-link{gap:7px;padding:8px 10px;font-size:10px}.resume-link svg{width:14px}.theme-toggle{width:33px;height:33px}.theme-toggle svg{width:17px}.mobile-menu{display:block;position:relative}.mobile-menu summary{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:25px;height:33px;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary>span{background:var(--ink);width:17px;height:1px;display:block}.mobile-menu nav{z-index:5;background:var(--surface);border:1px solid var(--line);min-width:190px;box-shadow:var(--shadow);border-radius:9px;padding:8px;display:grid;position:absolute;top:43px;right:0}.mobile-menu nav a{padding:9px 12px;font-size:12px}.mobile-menu nav a:hover{background:var(--soft)}.hero{grid-template-columns:1fr;gap:20px;max-width:460px;min-height:0;padding-block:31px 13px}.hero-copy{padding-bottom:0;padding-inline:7px}.hero .eyebrow{margin-bottom:12px;font-size:11px}.hero h1{letter-spacing:-1.8px;font-size:48px}.typing-cursor{font-size:38px}.hero-intro{max-width:380px;margin-top:18px;font-size:14px;line-height:1.9}.hero-actions{gap:23px;margin-top:20px}.hero-actions .button{gap:12px;padding:11px 15px;font-size:11px}.hero-actions .text-link{font-size:11px}.portrait{max-width:335px}.model-stage{aspect-ratio:1.08}.model-caption{gap:6px;font-size:9px}.model-controls{margin-top:10px}.model-controls button{height:28px;font-size:9px}.model-status{font-size:10px}.wave{height:36px}.wave-bottom{height:30px}.values-band{padding-block:21px}.values-grid{grid-template-columns:1fr;gap:14px;max-width:430px}.value-card{border-radius:10px;grid-template-columns:108px 1fr;align-items:stretch;display:grid}.value-card:nth-child(2){transform:none}.value-card>img{object-fit:cover;width:100%;height:100%;min-height:150px}.value-body{padding:17px 16px}.card-index{margin-bottom:5px;font-size:8px}.value-card h3{max-width:250px;font-size:14px;line-height:1.45}.value-card p{margin-top:7px;font-size:10px;line-height:1.8}.section-space{padding-block:43px}.section-heading{margin-bottom:24px}.section-heading .eyebrow{letter-spacing:.9px;font-size:9px}.section-heading h2{letter-spacing:-.6px;font-size:26px}.section-heading>p:not(.eyebrow){margin-top:8px;font-size:11px}.work-section{padding-top:35px;padding-bottom:18px}.projects-grid{grid-template-columns:1fr;gap:17px;max-width:430px}.project-card{border-radius:11px;padding:23px}.project-top{margin-bottom:14px}.project-symbol{border-radius:9px;width:35px;height:35px}.project-symbol svg{width:20px}.badge{font-size:8px}.project-card h3{max-width:100%;font-size:19px;line-height:1.4}.project-card>p{margin-top:12px;margin-bottom:18px;font-size:12px;line-height:1.85}.project-card>.button{padding:9px 13px;font-size:10px}.data-section{padding-top:36px}.data-filters{gap:1px;margin-top:-3px;margin-bottom:22px}.filter{padding:6px 10px;font-size:9px}.filter>span{margin-left:5px;font-size:7px}.data-grid{grid-template-columns:1fr 1fr;gap:22px 13px}.data-image{aspect-ratio:1.15;border-radius:7px;padding:6px}.zoom-affordance{width:22px;height:22px;bottom:5px;right:5px}.zoom-affordance svg{width:15px}.data-caption{margin-top:8px}.data-caption h3{font-size:10px;line-height:1.5}.data-caption>span{margin-top:2px;font-size:8px}.experience-section{grid-template-columns:1fr;gap:28px;max-width:470px;padding-top:7px;padding-bottom:37px}.experience-heading{text-align:center;order:0}.experience-heading .eyebrow{margin-bottom:7px;font-size:9px}.experience-heading h2{font-size:26px}.experience-heading>p:not(.eyebrow){margin-top:8px;font-size:11px}.experience-heading .text-link{margin-top:12px;font-size:11px}.timeline{order:1;padding-left:12px}.experience{padding-bottom:25px;padding-left:22px}.experience h3{font-size:17px;line-height:1.4}.experience .company{margin-top:6px;font-size:12px}.experience-details{margin-top:7px;font-size:10px}.skills-section{padding-block:5px 37px}.skills-section .section-heading{margin-bottom:23px}.skills-section h2{font-size:25px}.skills-list{gap:21px 13px;max-width:380px}.skills-list li{gap:7px;min-width:55px;font-size:8px}.technology-mark{border-radius:8px;width:34px;height:34px;font-size:13px}.site-footer{border-radius:10px;flex-wrap:wrap;gap:16px;margin-bottom:18px;padding:20px}.site-footer>div>p{font-size:10px}.model-download{margin-top:3px;font-size:8px}.site-footer .copyright{margin-left:auto;font-size:8px}.social-links{border-top:1px solid var(--line);gap:24px;width:100%;padding-top:14px;font-size:10px}.not-found{gap:20px;min-height:65vh;padding-block:70px}.not-found h1{letter-spacing:-1px;font-size:35px}.not-found>p:not(.eyebrow){font-size:13px}.dialog-header,.dialog-footer{gap:14px;padding:15px 16px}.dialog-header h2{font-size:19px}.dialog-header .eyebrow{font-size:8px}.dialog-close{width:32px;height:32px}.dialog-image-wrap{min-height:100px;padding:8px}.dialog-footer{display:block}.dialog-footer>p{font-size:11px}.dialog-footer .text-link{margin-top:10px;font-size:10px}dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}}@media (width<=360px){.wrap{width:calc(100% - 28px)}.brand-description{display:none}.brand{gap:6px;font-size:14px}.resume-link{gap:6px;padding:8px 9px;font-size:9px}.header-actions{gap:6px}.hero h1{font-size:43px}.hero-copy{padding-inline:2px}.value-card{grid-template-columns:90px 1fr}.value-body{padding:14px}.value-card h3{font-size:13px}.skills-list{gap:19px 10px}.skills-list li{min-width:50px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.typing-cursor{opacity:1}}.model-source{color:var(--accent);margin-top:9px;font-size:11px;text-decoration:underline;display:none}.portrait[data-state=error] .model-source{display:inline-flex}.portrait:not([data-enhanced=true]) .model-status{display:none}
