:root{color-scheme:dark;--bg: #080808;--surface: #121212;--line: #292929;--text: #f4f4f2;--muted: #999;--ease: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:#ddd;color:#111}h1,h2,h3,p{margin-top:0}#code-field{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.7}.noise{position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.15;background:repeating-linear-gradient(0deg,transparent 0 3px,#ffffff08 4px)}.progress{height:2px;position:fixed;z-index:9;top:0;left:0;right:0}.progress span{display:block;width:0;height:100%;background:#ddd}.shell{max-width:1800px;margin:auto;display:grid;grid-template-columns:190px minmax(0,1fr);min-height:100vh;position:relative}.sidebar{position:sticky;top:0;height:100vh;z-index:3;padding:34px 21px 24px 27px;border-right:1px solid var(--line);display:flex;flex-direction:column;background:#090909f5}.brand{font-size:28px;font-weight:750;letter-spacing:-1.8px;line-height:1}.brand span,.footer-brand span{color:#888}.brand small{display:block;margin-top:12px;color:#777;font:9px ui-monospace,Consolas,monospace;letter-spacing:.06em}.sidebar-label,.kicker{font:10px ui-monospace,Consolas,monospace;letter-spacing:.14em;color:#999}.sidebar-label{margin:67px 0 14px 10px}.sidebar-label span{margin-left:20px;color:#444}.navigation{display:grid;gap:5px}.nav-link{display:flex;align-items:center;gap:13px;padding:10px;color:#999;border-radius:5px;font-size:12px;transition:color .25s,background .25s,transform .25s}.nav-link span{font:10px ui-monospace,Consolas,monospace;color:#777}.nav-link:hover,.nav-link.active{background:#1c1c1c;color:#f2f2f2;transform:translate(3px)}.sidebar-bottom{margin-top:auto;font:9px ui-monospace,Consolas,monospace;letter-spacing:.04em;color:#aaa;line-height:2}.sidebar-bottom small{color:#777;font-size:10px}.status-dot,.eyebrow-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#ddd;margin-right:6px;box-shadow:0 0 12px #aaa}main{min-width:0;position:relative}.topbar{height:69px;padding:0 5.3%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:#909090;font:10px ui-monospace,Consolas,monospace;letter-spacing:.08em}.topbar i{font-style:normal;color:#555;margin:0 5px}.topbar-actions{display:flex;align-items:center;gap:18px}.demo-badge{border:1px solid #3c3c3c;border-radius:20px;padding:6px 9px;color:#aaa;font-size:9px}.topbar button{border:0;background:none;color:#aaa;cursor:pointer;font:10px ui-monospace,Consolas,monospace;padding:10px}.topbar button:hover{color:#fff}.motion-icon{font-size:14px;margin-right:4px;display:inline-block;animation:spin 12s linear infinite}.section{padding-left:5.3%;padding-right:5.3%;border-bottom:1px solid var(--line);scroll-margin-top:20px}.hero{position:relative;min-height:410px;padding-top:55px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.hero-content{position:relative;z-index:1;max-width:530px}.eyebrow{font:10px ui-monospace,Consolas,monospace;letter-spacing:.14em;color:#bbb;display:flex;align-items:center;gap:8px;margin:0 0 19px}.eyebrow-line{height:1px;background:#555;width:44px}.eyebrow-dot{margin:0;width:5px;height:5px}h1{font-size:clamp(30px,3.1vw,43px);letter-spacing:-.055em;line-height:1.08;margin-bottom:11px;font-weight:700}.period{color:#888}.hero-lead{font-size:clamp(19px,1.8vw,25px);letter-spacing:-.035em;color:#eee;line-height:1.35;margin-bottom:16px}.rotating-wrap{display:inline-block;color:#9b9b9b;overflow:hidden;vertical-align:bottom}.rotating-wrap span{display:inline-block;transition:transform .4s,opacity .4s}.rotating-wrap span.changing{transform:translateY(100%);opacity:0}.intro{max-width:475px;color:#a3a3a3;line-height:1.7;font-size:13px;margin-bottom:23px}.hero-actions{display:flex;align-items:center;gap:25px}.button{display:inline-flex;align-items:center;gap:30px;padding:12px 14px;border-radius:3px;font-size:12px;font-weight:600;transition:background .25s,transform .25s}.button:hover{transform:translateY(-3px)}.primary{background:#ededeb;color:#111}.primary:hover{background:#fff}.text-link{font-size:12px;color:#ccc}.hero-actions .text-link{display:inline-flex;align-items:center;padding:11px 13px;border:1px solid var(--theme-accent, #ededeb);border-radius:3px;background:transparent}@media(max-width:700px){.hero-actions .text-link{padding:10px 11px}}.text-link span{display:inline-block;margin-left:7px;transition:transform .3s}.text-link:hover span{transform:translate(4px,-4px)}.hero-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-top:40px;padding-bottom:20px;color:#888;font:9px ui-monospace,Consolas,monospace;letter-spacing:.08em}.hero-footer-signature{margin-left:auto;text-align:right;line-height:1.55}.hero-footer b{font-weight:400;color:#555}@media(max-width:360px){.hero .hero-footer{flex-wrap:nowrap;gap:8px}.hero-footer>span:first-child{min-width:0;white-space:normal}.hero-footer-signature{flex-shrink:0}}.arrow-down{display:inline-block;animation:bob 2s ease-in-out infinite}:root{--motion-scale: 1}.hero-visual{position:absolute;right:6%;top:30px;width:310px;height:310px;pointer-events:none;transform:translate3d(var(--move-x, 0),var(--move-y, 0),0);transition:transform .6s ease}.visual-grid{position:absolute;inset:2%;background-image:linear-gradient(#fff0 96%,#ffffff10 98%),linear-gradient(90deg,#fff0 96%,#ffffff10 98%);background-size:29px 29px;mask-image:radial-gradient(circle,#000,transparent 72%)}.radar-circle{position:absolute;border:1px solid #ffffff30;border-radius:50%;animation:spin 25s linear infinite}.radar-circle:after{content:"";position:absolute;top:18%;left:12%;height:5px;width:5px;border-radius:50%;background:#ddd;box-shadow:0 0 12px #fff}.radar-one{inset:18px}.radar-two{inset:45px;border-style:dashed;animation-duration:35s;animation-direction:reverse}.radar-three{inset:73px;animation-duration:19s}.radar-axis{position:absolute;background:linear-gradient(90deg,transparent,#ffffff40,transparent)}.axis-x{height:1px;left:0;right:0;top:50%}.axis-y{width:1px;top:0;bottom:0;left:50%;background:linear-gradient(transparent,#ffffff40,transparent)}.radar-core{position:absolute;inset:99px;border:1px solid #ffffff38;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,#292929,#0d0d0d 72%);box-shadow:0 0 40px #ffffff0c;animation:breathe 4s ease-in-out infinite}.bracket{font:30px ui-monospace,Consolas,monospace;color:#ddd}.radar-core small{font:7px ui-monospace,Consolas,monospace;color:#999;white-space:nowrap}.radar-tag{position:absolute;border:1px solid #444;background:#191919dc;padding:7px 9px;color:#bbb;font:10px ui-monospace,Consolas,monospace;box-shadow:0 8px 25px #0008;animation:float 5s ease-in-out infinite}.radar-tag span{color:#777;margin-left:10px}.tag-php{top:49px;right:-4px}.tag-js{bottom:71px;left:-35px;animation-delay:-2s}.tag-css{bottom:54px;right:0;animation-delay:-3s}.radar-foot{position:absolute;bottom:5px;left:50%;transform:translate(-50%);white-space:nowrap;color:#777;font:8px ui-monospace,Consolas,monospace;letter-spacing:.07em}.radar-foot span{color:#bbb}.ticker{overflow:hidden;border-bottom:1px solid var(--line);background:#151515a8;cursor:default}.ticker *{cursor:inherit}.ticker-track{display:flex;width:max-content;animation:marquee 30s linear infinite}.ticker-track>span{white-space:nowrap;padding:13px 0;color:#aaa;font:10px ui-monospace,Consolas,monospace;letter-spacing:.11em}.ticker b{color:#666;padding:0 23px;font-weight:400}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.section-heading h2,.about h2,.contact h2{font-size:22px;letter-spacing:-.035em;line-height:1.25;margin:8px 0 0}.section-heading>p{font-size:11px;line-height:1.6;color:#999;margin:0}@media(max-width:700px){.about-heading.section-heading{flex-direction:column;align-items:flex-start;gap:12px}.about-heading.section-heading>.about-aside{display:block;align-self:flex-end;text-align:right}}.kicker{margin:0}.expertise,.journey,.projects{padding-top:45px;padding-bottom:45px}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:25px}.expertise-item{position:relative;overflow:hidden;border:1px solid #353535;background:linear-gradient(135deg,#202020d9,#101010c9);border-radius:4px;padding:18px;min-width:0;transition:border-color .4s,transform .4s,background .4s}.expertise-item:before{content:"";position:absolute;inset:-100%;background:linear-gradient(115deg,transparent 40%,#ffffff13 50%,transparent 60%);transform:translate(-60%);transition:transform .8s}.expertise-item:hover:before{transform:translate(60%)}.expertise-item:hover{transform:translateY(-4px);border-color:#777;background:#1c1c1c}.expertise-top{display:flex;align-items:center;justify-content:space-between;color:#888;font:9px ui-monospace,Consolas,monospace}.expertise-icon{display:grid;place-items:center;width:32px;height:32px;background:#292929;color:#eee;border-radius:4px;font:14px ui-monospace,Consolas,monospace}.search-icon{font-size:24px}.expertise-item h3{font-size:13px;margin:17px 0 7px}.expertise-item p{color:#aaa;font-size:11px;line-height:1.7;min-height:38px;margin:0}.tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:15px}.tags span{border:1px solid #454545;border-radius:3px;padding:4px 6px;color:#bbb;font:9px ui-monospace,Consolas,monospace}.journey-layout{display:grid;grid-template-columns:28% 1fr;gap:6%;margin-top:27px}.journey-intro{border-top:1px solid #555;padding-top:18px}.journey-year{font:26px ui-monospace,Consolas,monospace;color:#ddd;letter-spacing:-.06em}.journey-year span{color:#777}.journey-intro p{max-width:190px;margin:15px 0 20px;color:#999;font-size:12px;line-height:1.7}.job{border-top:1px solid #303030;display:flex;justify-content:space-between;gap:15px;padding:13px 5px;transition:padding .3s,background .3s}.job:hover{padding-left:12px;background:#ffffff08}.job h3{font-size:12px;margin:0 0 3px;font-weight:600}.job p{color:#aaa;font-size:11px;margin:0}.job p span{color:#888}.job time{white-space:nowrap;color:#999;font:9px ui-monospace,Consolas,monospace;margin-top:3px}.demo-note{font-size:11px;color:#aaa;margin:20px 0 0}.project-list{margin-top:20px;border-top:1px solid #414141}.project-list details{border-bottom:1px solid #333}.project-list summary{display:grid;grid-template-columns:120px 1fr 90px;align-items:center;gap:18px;padding:22px 8px;cursor:pointer;list-style:none;transition:padding .35s,background .35s}.project-list summary::-webkit-details-marker{display:none}.project-list summary:hover{padding-left:16px;background:#ffffff08}.project-index{color:#888;font:10px ui-monospace,Consolas,monospace}.project-title{font-size:16px;font-weight:600;letter-spacing:-.025em}.project-title small{display:block;color:#999;font:9px ui-monospace,Consolas,monospace;margin-top:6px;letter-spacing:.05em}.project-action{font:9px ui-monospace,Consolas,monospace;color:#999;text-align:right}.project-action b{display:inline-block;color:#eee;font-size:17px;margin-left:8px;transition:transform .35s}.project-list details[open] .project-action b{transform:rotate(90deg)}.project-detail{color:#aaa;font-size:12px;line-height:1.7;padding:0 25px 22px 146px;max-width:720px;animation:fadein .4s both}.project-detail p{margin-bottom:0}.project-detail small{display:block;color:#999;font:9px ui-monospace,Consolas,monospace;margin-top:16px}.about{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-top:48px;padding-bottom:48px}.about h2 span,.contact h2 span{color:#999}.about-copy p{max-width:520px;font-size:12px;color:#aaa;line-height:1.8;margin-bottom:15px}.about-pill{font:9px ui-monospace,Consolas,monospace;color:#bbb;letter-spacing:.07em;margin-top:20px}.about-pill span{color:#777;padding:0 6px}.contact{display:flex;align-items:center;justify-content:space-between;padding-top:48px;padding-bottom:48px}.contact p:not(.kicker){color:#aaa;font-size:12px;margin:15px 0 0;max-width:460px}.contact-mark{width:75px;height:75px;border:1px solid #555;border-radius:50%;display:grid;place-items:center;font-size:30px;color:#bbb;animation:breathe 4s ease-in-out infinite}footer{display:flex;align-items:center;gap:28px;padding:25px 5.3%;color:#999;font-size:10px}footer p{margin:0;flex:1}footer p span{color:#666;padding:0 4px}.footer-brand{font-size:20px;font-weight:750;letter-spacing:-1.4px;color:#eee}footer>a:last-child:hover{color:#fff}.reveal{transition:opacity .7s,transform .7s var(--ease)}.reveal.waiting{opacity:0;transform:translateY(24px)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bob{50%{transform:translateY(4px)}}@keyframes float{50%{transform:translateY(-10px)}}@keyframes breathe{50%{box-shadow:0 0 30px #ffffff1b;border-color:#888}}@keyframes marquee{to{transform:translate(-50%)}}@keyframes fadein{0%{opacity:0;transform:translateY(5px)}}body.motion-off *,body.motion-off *:before,body.motion-off *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body.motion-off .reveal{opacity:1;transform:none}@media(max-width:1000px){.hero-visual{right:0;opacity:.55;transform:scale(.86)}.hero-content{max-width:490px}.hero-content .intro{max-width:380px}}@media(max-width:700px){.shell{display:block}.sidebar{position:relative;height:auto;padding:18px 18px 0;border-right:0;border-bottom:1px solid var(--line)}.brand{font-size:24px}.brand small,.sidebar-label,.sidebar-bottom{display:none}.navigation{display:flex;overflow:auto;margin:16px -18px 0;padding:0 12px;gap:0;scrollbar-width:none}.navigation::-webkit-scrollbar{display:none}.nav-link{white-space:nowrap;padding:11px 9px;border-radius:0;font-size:11px}.nav-link span{display:none}.nav-link.active{background:none;border-bottom:1px solid #ddd;transform:none}.topbar{height:48px;padding:0 20px;font-size:9px}.topbar-actions{gap:3px}.demo-badge{display:none}.section{padding-left:20px;padding-right:20px}.hero{min-height:390px;padding-top:45px}.hero-visual{opacity:.2;right:-145px;top:15px}.hero-content{max-width:100%}.hero-footer{font-size:8px}.expertise-grid{grid-template-columns:1fr}.expertise-item p{min-height:0}.journey-layout{grid-template-columns:1fr;gap:20px}.journey-intro{display:none}.job{gap:8px}.job time{font-size:8px}.job p{max-width:230px}.section-heading>p{display:none}.project-list summary{grid-template-columns:68px 1fr 42px;gap:6px}.project-index,.project-action{font-size:8px}.project-title{font-size:14px}.project-title small{font-size:8px}.project-action{font-size:0}.project-action b{font-size:16px}.project-detail{padding-left:75px}.about{grid-template-columns:1fr;gap:18px}.about h2 br{display:none}.contact-mark{width:55px;height:55px;flex-shrink:0}.contact{gap:15px}footer{padding:24px 20px;gap:14px}footer p{font-size:9px}footer>a:last-child{white-space:nowrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.reveal.waiting{opacity:1;transform:none}}:focus-visible{outline:2px solid #eee;outline-offset:4px}

body{font-family:Segoe UI,Inter,Arial,sans-serif;font-size:14px;line-height:1.6}#code-field{opacity:1}.brand{font-size:26px;letter-spacing:-.045em}.brand small,.sidebar-label,.kicker,.eyebrow,.hero-footer,.topbar,.demo-badge,.topbar button,.ticker-track>span{font-size:11px;letter-spacing:.07em}.navigation .nav-link{font-size:13px;padding-top:10px;padding-bottom:10px}.navigation .nav-link span{font-size:11px}.sidebar-bottom,.sidebar-bottom small{font-size:10px}.hero{min-height:430px}h1{font-size:clamp(30px,2.8vw,39px);letter-spacing:-.04em}.hero-lead{font-size:clamp(20px,1.7vw,23px);line-height:1.4;letter-spacing:-.025em}.intro{font-size:14px;line-height:1.7;max-width:490px}.button,.text-link{font-size:13px}.section-heading h2,.about h2,.contact h2{font-size:22px;letter-spacing:-.025em;line-height:1.3}.section-heading>p{font-size:12px}.expertise-item h3,.job h3{font-size:14px;line-height:1.45}.expertise-item p,.journey-intro p,.about-copy p,.contact p:not(.kicker),.project-detail{font-size:13px;line-height:1.7}.expertise-top,.tags span,.project-title small,.project-index,.project-action,.project-detail small,.about-pill{font-size:10px}.job p{font-size:13px;line-height:1.55}.job time{font-size:10px}.demo-note{font-size:12px}.project-title{font-size:16px}footer,footer p{font-size:11px}@media(max-width:700px){.navigation .nav-link{font-size:12px}.topbar,.topbar button{font-size:10px}.hero{min-height:405px}h1{font-size:32px}.hero-lead{font-size:20px}.intro{font-size:13px}.hero-footer{font-size:9px}.job time{font-size:9px}.project-index{font-size:9px}.project-action{font-size:0}}

.latest-blog{padding-top:70px;padding-bottom:72px}.latest-blog-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.latest-blog-title{font-size:var(--type-section, 24px);line-height:1.32;letter-spacing:-.025em;margin:8px 0 0;scroll-margin-top:120px}.latest-blog-all{color:var(--muted, #aaa);font-size:13px;text-decoration:none;transition:color .2s}.latest-blog-all{display:inline-flex;align-items:center;gap:6px}.latest-blog-all svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5}.latest-blog-all:hover,.latest-blog-read:hover{color:var(--theme-accent, #eee)}.latest-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:30px}.latest-blog-item{display:flex;flex-direction:column;min-width:0;border-top:1px solid var(--divider-color, rgba(255, 255, 255, .2));padding-top:17px}.latest-blog-cover{display:block;overflow:hidden;aspect-ratio:16 / 9;margin-bottom:17px;border:1px solid var(--divider-color, rgba(255, 255, 255, .2));border-radius:5px;background:var(--theme-soft, rgba(255, 255, 255, .04))}.latest-blog-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.latest-blog-cover:hover img{transform:scale(1.025)}.latest-blog-meta{color:var(--muted, #999);font:11px/1.5 ui-monospace,monospace;letter-spacing:.03em}.latest-blog-item h3{font-size:16px;line-height:1.45;margin:9px 0 7px}.latest-blog-item h3 a{color:var(--text, #eee);text-decoration:none}.latest-blog-item p{color:var(--muted, #aaa);font-size:14px;line-height:1.65;margin:0 0 12px}.latest-blog-read{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;gap:12px;min-height:38px;margin-top:auto;padding:8px 12px;border:1px solid var(--divider-color, rgba(255, 255, 255, .2));border-radius:4px;background:var(--theme-soft, rgba(255, 255, 255, .05));color:var(--text, #eee);font-size:13px;font-weight:600;line-height:1.4;text-decoration:none;transition:border-color .2s ease,background-color .2s ease,color .2s ease}.latest-blog-read:hover,.latest-blog-read:focus-visible{border-color:var(--theme-accent, #eee);background:var(--theme-surface, rgba(255, 255, 255, .09))}.latest-blog-read .arrow-ne{transition:transform .2s ease}.latest-blog-read:hover .arrow-ne,.latest-blog-read:focus-visible .arrow-ne{transform:translate(2px,-2px)}@media(prefers-reduced-motion:reduce){.latest-blog-cover img,.latest-blog-read .arrow-ne{transition:none}.latest-blog-cover:hover img,.latest-blog-read:hover .arrow-ne,.latest-blog-read:focus-visible .arrow-ne{transform:none}}@media(max-width:700px){.latest-blog{padding-top:54px;padding-bottom:55px}.latest-blog-grid{grid-template-columns:1fr;gap:22px}.latest-blog-heading{align-items:center}}

.concept-map{width:440px;height:310px;right:3.5%;top:42px;opacity:1}.concept-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff0c 1px,transparent 1px),linear-gradient(90deg,#ffffff0c 1px,transparent 1px);background-size:32px 32px;mask-image:radial-gradient(ellipse,#000 0,transparent 74%)}.concept-paths{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.concept-paths .line{stroke:#6b6b6b;stroke-width:1;stroke-dasharray:3 5;opacity:.58}.concept-paths .line-trace{stroke:#eee;stroke-width:1.5;stroke-dasharray:22 380;opacity:.8;animation:line-travel 5s linear infinite}.concept-paths .trace-two{animation-duration:6.5s;animation-delay:-2s}.concept-center{position:absolute;top:50%;left:50%;width:138px;min-height:91px;transform:translate(-50%,-50%);display:grid;align-content:center;justify-items:start;padding:13px 15px 12px 38px;border:1px solid #777;background:linear-gradient(145deg,#2c2c2c,#111);box-shadow:0 14px 40px #000b,0 0 30px #ffffff0e;line-height:1.15;color:#bcbcbc;font:10px ui-monospace,Consolas,monospace;letter-spacing:.08em}.concept-center strong{color:#fff;font:700 14px Segoe UI,sans-serif;letter-spacing:.07em}.concept-center small{font:7px ui-monospace,Consolas,monospace;color:#999;white-space:nowrap;margin-top:8px;letter-spacing:.04em}.center-symbol{position:absolute;left:13px;top:15px;color:#ddd;font-size:15px;animation:concept-spin 12s linear infinite}.concept-node{position:absolute;display:grid;grid-template-columns:auto auto;column-gap:7px;align-items:center;padding:9px 11px;min-width:98px;background:#171717ed;border:1px solid #525252;box-shadow:0 8px 22px #0009;animation:node-float 5s ease-in-out infinite}.concept-node strong{font:600 11px Segoe UI,sans-serif;letter-spacing:.06em;color:#eee}.concept-node small{grid-column:2;color:#aaa;font:9px ui-monospace,Consolas,monospace;margin-top:3px}.node-index{align-self:start;color:#999;font:9px ui-monospace,Consolas,monospace}.node-idea{left:18px;top:30px}.node-code{right:15px;top:30px;animation-delay:-1.1s}.node-design{left:0;top:190px;animation-delay:-2s}.node-seo{right:0;top:192px;animation-delay:-3.3s}.node-commerce{left:130px;bottom:0;animation-delay:-1.8s}@keyframes line-travel{to{stroke-dashoffset:-402}}@keyframes node-float{50%{transform:translateY(-7px)}}@keyframes concept-spin{to{transform:rotate(360deg)}}@media(max-width:1100px){.concept-map{right:-30px;transform:translate3d(var(--move-x, 0),var(--move-y, 0),0) scale(.82);transform-origin:right center}}@media(min-width:851px)and (max-width:1200px){.hero-content{max-width:clamp(300px,36vw,440px)}}@media(max-width:850px){.concept-map{opacity:.42;right:-75px}.hero-content{text-shadow:0 1px 10px #080808,0 0 20px #080808}}@media(max-width:700px){.concept-map{opacity:.22;right:-185px;top:32px;transform:scale(.78)}.hero-content{max-width:100%}.concept-node{animation-duration:7s}}@media(prefers-reduced-motion:reduce){.concept-map *,.concept-map *:before,.concept-map *:after{animation:none!important}}

.concept-grid{opacity:.35;mask-image:radial-gradient(ellipse,#000,transparent 66%)}.concept-paths .line{stroke:#a5a5a5;stroke-width:.9;stroke-dasharray:2 5;opacity:.6}.concept-paths .line-trace{stroke:#eee;stroke-width:1.9;stroke-dasharray:32 374;opacity:.9;filter:drop-shadow(0 0 3px #bbb)}.concept-center{width:160px;min-height:86px;padding:13px 0 13px 22px;border:0;background:none;box-shadow:none;align-content:center;letter-spacing:.16em;color:#a5a5a5}.concept-center:before{content:"";position:absolute;inset:-20px -35px;background:radial-gradient(ellipse,rgba(190,190,190,.12),transparent 68%);filter:blur(10px);z-index:-1;animation:soft-pulse 5s ease-in-out infinite}.concept-center strong{font-size:20px;letter-spacing:-.02em;font-weight:600;color:#f2f2f2}.concept-center small{font-size:8px;color:#aaa;letter-spacing:.1em;margin-top:8px}.center-symbol{left:0;top:16px;font-size:12px;color:#d4d4d4}.concept-center strong,.concept-center:before{transition:color .35s,filter .35s,opacity .35s}.center-active .concept-center strong{color:#fff;text-shadow:0 0 18px #ffffff80}.center-active .concept-center:before{opacity:1;filter:blur(6px)}.center-active .line-trace{stroke-width:2.5;filter:drop-shadow(0 0 5px #eee)}.concept-node{min-width:0;padding:4px 0;border:0;background:transparent;box-shadow:none;column-gap:8px;text-shadow:0 1px 8px #080808;translate:var(--push-x, 0px) var(--push-y, 0px);transition:translate .35s cubic-bezier(.2,.8,.2,1)}.concept-node:before{content:"";position:absolute;left:-11px;top:11px;width:4px;height:4px;border-radius:50%;background:#ddd;box-shadow:0 0 12px #ddd}.concept-node strong{font-size:13px;font-weight:550;letter-spacing:.04em;color:#eee}.concept-node small{font-size:9px;color:#999;letter-spacing:.05em}.node-index{font-size:9px;color:#888;margin-top:2px}.node-idea{left:40px;top:32px}.node-code{right:28px;top:33px}.node-design{left:18px;top:198px}.node-seo{right:21px;top:202px}.node-commerce{left:131px;bottom:7px}@keyframes soft-pulse{50%{opacity:.45;transform:scale(.9)}}

.skills{margin-top:38px;padding-top:27px;border-top:1px solid #303030}.skills-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.skills-heading h3{font-size:16px;letter-spacing:-.02em;margin:7px 0 0}.skills-heading>p{font-size:12px;color:#999;margin:0;text-align:right}.skills-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 22px;margin-top:20px}.skill-group{border-top:1px solid #333;padding:14px 0;min-width:0}.skill-group span{font:10px ui-monospace,Consolas,monospace;letter-spacing:.08em;color:#a4a4a4}.skill-group p{font-size:12px;line-height:1.7;color:#dedede;margin:7px 0 0}.skills-note{font-size:11px;color:#a1a1a1;margin:8px 0 0;line-height:1.6}.job{padding:16px 5px;align-items:start}.job>div{min-width:0}.job .job-description{max-width:540px;font-size:12px;line-height:1.6;color:#aaa;margin:8px 0 0}.job time{padding-top:2px}.about-copy{position:relative;background:#080808c7;padding:2px 12px}.about-copy p{font-size:13px;line-height:1.8}.about-aside{max-width:260px;color:#a2a2a2;font-size:12px;line-height:1.7;margin:18px 0 0}@media(max-width:900px){.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skills-heading>p{max-width:220px}}@media(max-width:700px){.skills-heading>p{display:none}.skills-grid{gap:0 15px}.skill-group p{font-size:12px}.job{display:block}.job time{display:block;margin-top:8px}.job .job-description,.job p{max-width:none}}@media(max-width:380px){.skills-grid{grid-template-columns:1fr}}

.job-description{max-width:540px}.job-tech{display:flex;flex-wrap:wrap;gap:7px 11px;margin-top:11px}.job-tech-item{display:inline-flex;gap:5px;align-items:center;font-size:10px;color:#c8c8c8;white-space:nowrap}.tech-symbol{height:19px;min-width:19px;padding:0 3px;display:inline-grid;place-items:center;border:1px solid #515151;border-radius:4px;background:#242424;color:#dedede;font:600 9px ui-monospace,Consolas,monospace;line-height:1;letter-spacing:-.04em}.job{padding-top:17px;padding-bottom:18px}.tech-symbol.brand-icon{border:0;background:none;padding:0;min-width:20px;height:20px;border-radius:0}.tech-symbol.brand-icon img,.tech-symbol.brand-icon svg{display:block;width:20px;height:20px;object-fit:contain}.tech-symbol.brand-icon img[src$="/mysql.svg"],.tech-symbol.brand-icon img[src$="/jquery.svg"]{filter:brightness(1.6)}.tech-symbol.brand-pair{display:inline-flex;gap:2px}.tech-symbol.brand-pair img{width:16px;height:18px}.job-tech{gap:9px 14px}.job-tech-item{font-size:11px;color:#d1d1d1}@media(max-width:700px){.job-tech{gap:8px 10px}.job-tech-item{font-size:11px}}

.journey-layout{display:block;margin-top:27px}.experience-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.experience-list .job{display:flex;flex-direction:column;justify-content:flex-start;gap:0;min-width:0;margin:0;padding:19px 20px 20px;border:1px solid #303030;border-radius:5px;background:#131313e6;transition:border-color .3s,background .3s,transform .3s}.experience-list .job:hover{padding:19px 20px 20px;border-color:#666;background:#1d1d1df5;transform:translateY(-3px)}.experience-list .job time{order:-1;display:block;margin:0 0 14px;padding:0;color:#d4d4d4;font:600 11px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.06em;white-space:normal}.experience-list .job time:before{content:"";display:inline-block;vertical-align:middle;width:5px;height:5px;margin-right:8px;border-radius:50%;background:#aaa}.experience-list .job h3{font-size:14px;margin:0 0 4px}.experience-list .job p{max-width:none}.experience-list .job .job-description{max-width:none;margin-top:11px;font-size:12px;line-height:1.65}.experience-list .job-tech{margin-top:14px}@media(max-width:1350px){.experience-list{grid-template-columns:minmax(0,1fr)}}@media(max-width:700px){.experience-list{grid-template-columns:1fr;gap:10px}.experience-list .job,.experience-list .job:hover{padding:17px 16px}.experience-list .job time{margin:0 0 12px}}@media(prefers-reduced-motion:reduce){.experience-list .job{transition:none}}

.seo-focus{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(24px,5vw,64px);margin-top:39px;padding:29px 0 0;border-top:1px solid #303030}.seo-intro h3{font-size:17px;line-height:1.4;letter-spacing:-.02em;max-width:320px;margin:10px 0 11px}.seo-intro>p:last-child{font-size:12px;line-height:1.75;color:#aaa;max-width:370px;margin:0}.seo-list{border-top:1px solid #383838}.seo-list>div{display:grid;grid-template-columns:26px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #303030}.seo-list>div>span{font:10px ui-monospace,Consolas,monospace;color:#898989;padding-top:3px}.seo-list p{margin:0}.seo-list strong{display:block;color:#eee;font-size:12px;font-weight:600}.seo-list small{display:block;color:#aaa;font-size:11px;line-height:1.65;margin-top:4px}@media(max-width:700px){.seo-focus{grid-template-columns:1fr;gap:21px}.seo-intro h3,.seo-intro>p:last-child{max-width:none}.seo-list strong{font-size:13px}.seo-list small{font-size:12px}}

.expertise-heading h2{font-size:23px;letter-spacing:-.035em}.expertise-flow{position:relative;margin-top:27px;border-top:1px solid #444}.expertise-flow:before{content:"";position:absolute;left:6px;top:26px;bottom:26px;width:1px;background:linear-gradient(transparent,#555 15%,#555 85%,transparent);opacity:.65;pointer-events:none}.expertise-flow:after{content:"";position:absolute;z-index:2;left:5px;top:20px;width:3px;height:36px;background:linear-gradient(transparent,#ddd,transparent);filter:blur(1px);pointer-events:none;animation:flow-travel 7s ease-in-out infinite alternate}.expertise-row{position:relative;display:grid;grid-template-columns:minmax(155px,.92fr) minmax(230px,1.42fr) minmax(175px,1fr);gap:clamp(16px,2.5vw,36px);align-items:start;padding:23px 0 23px 25px;border-bottom:1px solid #303030;isolation:isolate;background:#080808b3}.expertise-row:before{content:"";position:absolute;z-index:-1;inset:0 -10px;background:linear-gradient(90deg,rgba(255,255,255,.045),transparent 80%);opacity:0;transition:opacity .35s}.expertise-row:hover:before{opacity:1}.expertise-row:after{content:"";position:absolute;left:3px;top:27px;width:7px;height:7px;border-radius:50%;background:#c8c8c8;box-shadow:0 0 0 4px #101010,0 0 12px #aaa7;animation:flow-glow 4.5s ease-in-out infinite}.expertise-row:nth-child(2):after{animation-delay:-1.5s}.expertise-row:nth-child(3):after{animation-delay:-3s}.flow-step,.flow-caption,.flow-copy>span{font:10px/1.6 ui-monospace,Consolas,monospace;letter-spacing:.07em;color:#a6a6a6}.flow-step i{font-style:normal;color:#686868;padding:0 3px}.flow-title h3{font-size:16px;line-height:1.35;letter-spacing:-.025em;margin:8px 0 0;font-weight:650;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.expertise-row:hover .flow-title h3{transform:translate(4px)}.flow-title h3 span{display:block;color:#aaa}.flow-copy p{font-size:13px;line-height:1.7;color:#c3c3c3;margin:0 0 10px;max-width:460px}.flow-copy>span{font-size:9px;color:#929292;letter-spacing:.035em}.flow-copy b{color:#666;padding:0 4px;font-weight:400}.flow-details{position:relative;padding-top:1px}.flow-caption{font-size:9px;color:#999}.flow-tech,.flow-keywords{display:flex;align-items:center;flex-wrap:wrap;gap:9px 14px;margin-top:11px}.flow-tech span{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:#ddd;white-space:nowrap;transition:transform .3s,color .3s}.flow-tech span:hover{color:#fff;transform:translateY(-3px)}.flow-tech img{width:19px;height:19px;object-fit:contain}.flow-keywords span{font-size:11px;color:#c4c4c4;white-space:nowrap}.flow-keywords span:not(:last-child):after{content:"/";color:#666;margin-left:13px}@keyframes flow-glow{0%,to{box-shadow:0 0 0 4px #101010,0 0 7px #aaa4}50%{box-shadow:0 0 0 4px #101010,0 0 16px #ddd9}}@keyframes flow-travel{0%{top:20px;opacity:.5}to{top:calc(100% - 55px);opacity:1}}@media(max-width:1050px){.expertise-row{grid-template-columns:minmax(130px,.8fr) minmax(200px,1.3fr) minmax(150px,1fr);gap:18px}.flow-tech{gap:8px 10px}}@media(max-width:760px){.expertise-row{grid-template-columns:minmax(125px,.7fr) minmax(0,1.3fr);gap:10px 18px}.flow-details{grid-column:2}.flow-tech,.flow-keywords{margin-top:7px}.flow-title h3{font-size:15px}}@media(max-width:520px){.expertise-heading>p{display:none}.expertise-row{grid-template-columns:1fr;padding:20px 0 20px 23px;gap:10px}.flow-title h3 span{display:inline}.flow-copy p{margin-bottom:6px}.flow-details{grid-column:1}.flow-caption{display:none}.flow-tech,.flow-keywords{margin-top:2px}}@media(prefers-reduced-motion:reduce){.expertise-row:after,.expertise-flow:after{animation:none}.expertise-row:before,.flow-title h3,.flow-tech span{transition:none}}

.ticker-track>span{display:block;flex:0 0 auto}.concept-paths .trace-three{animation-duration:4.8s;animation-delay:-1.3s}.concept-node{will-change:translate;transition:translate .45s cubic-bezier(.2,.8,.2,1),color .35s}.concept-node strong{transition:color .35s,text-shadow .35s}.center-active .concept-node strong{color:#fff;text-shadow:0 0 12px #ffffff55}.project-list details[open] .project-action b{transform:rotate(45deg)}.project-action b{font-size:20px;line-height:1}.contact-placeholder{font:11px/1.6 ui-monospace,Consolas,monospace;color:#999!important}.gpt-note{margin-top:30px;max-width:390px;padding:20px 20px 19px;border:1px solid #333;border-radius:5px;background:linear-gradient(145deg,#1d1d1df5,#0c0c0cf0);position:sticky;top:24px;overflow:hidden}.gpt-note:before{content:"";position:absolute;left:0;top:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#aaa,transparent);opacity:.5}.gpt-note-top{display:flex;align-items:center;gap:10px;color:#ddd;font:10px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.07em}.gpt-note-top small{display:block;color:#999;font-size:9px;margin-top:3px}.gpt-spark{display:grid;place-items:center;width:28px;height:28px;color:#d7d7d7;border:1px solid #555;border-radius:50%;font-size:15px;animation:gpt-breathe 5s ease-in-out infinite}.gpt-note h3{font-size:17px;line-height:1.35;letter-spacing:-.025em;margin:18px 0 14px}.gpt-note h3 span{color:#aaa}.gpt-note p{font-size:12px;line-height:1.7;color:#bbb;margin:0 0 13px}.gpt-signature{display:block;border-top:1px solid #393939;padding-top:13px;color:#a4a4a4;font:9px/1.6 ui-monospace,Consolas,monospace;letter-spacing:.03em}.gpt-signature span{color:#666}@keyframes gpt-breathe{50%{box-shadow:0 0 14px #ffffff38;transform:rotate(25deg)}}@media(max-width:700px){.gpt-note{position:relative;top:auto;max-width:none;margin-top:20px;padding:17px}.gpt-note p{font-size:12px}.about h2 br{display:initial}}@media(prefers-reduced-motion:reduce){.gpt-spark{animation:none}.concept-node,.concept-node strong{transition:none}}

:root{--type-body: 15px;--type-secondary: 13px;--type-label: 11px;--type-section: clamp(22px, 1.8vw, 25px);--type-hero: clamp(30px, 2.7vw, 36px)}body{font-size:var(--type-body);line-height:1.6;font-kerning:normal}h1{font-size:var(--type-hero);line-height:1.14;letter-spacing:-.04em}.hero-lead{font-size:clamp(19px,1.65vw,22px);line-height:1.4}.section-heading h2,.expertise-heading h2,.about h2,.contact h2{font-size:var(--type-section);line-height:1.32;letter-spacing:-.025em}.navigation .nav-link{font-size:14px;line-height:1.45}.intro,.about-copy p{font-size:var(--type-body);line-height:1.75}.button,.text-link{font-size:14px;line-height:1.4}.hero-actions .primary{text-shadow:none}.flow-title h3{font-size:16px;line-height:1.4}.flow-copy p{font-size:14px;line-height:1.7}.seo-intro h3,.skills-heading h3,.gpt-note h3{font-size:17px;line-height:1.4}.seo-intro>p:last-child,.about-aside,.contact p:not(.kicker){font-size:14px;line-height:1.7}.seo-list strong{font-size:14px;line-height:1.5}.seo-list small,.skill-group p{font-size:13px;line-height:1.7}.experience-list .job h3{font-size:15px;line-height:1.45}.experience-list .job p{font-size:14px;line-height:1.55}.experience-list .job .job-description{font-size:13.5px;line-height:1.65}.experience-list .job time{font-size:11.5px;line-height:1.4}.job-tech-item{font-size:12px;line-height:1.4}.project-title{font-size:17px;line-height:1.45}.project-detail{font-size:14px;line-height:1.7}.section-heading>p,.skills-heading>p,.demo-note,.skills-note{font-size:var(--type-secondary);line-height:1.6}.gpt-note p{font-size:13.5px;line-height:1.7;color:#c3c3c3}.brand small,.sidebar-label,.sidebar-bottom,.sidebar-bottom small,.navigation .nav-link span,.topbar,.demo-badge,.eyebrow,.hero-footer,.ticker-track>span,.kicker,.flow-step,.flow-caption,.flow-copy>span,.skill-group span,.seo-list>div>span,.project-index,.project-title small,.project-detail small,.about-pill,.gpt-note-top,.gpt-note-top small,.gpt-signature,.contact-placeholder,footer,footer p{font-size:var(--type-label);line-height:1.5}.flow-tech span,.flow-keywords span{font-size:12px;line-height:1.45}.tags span{font-size:11px;line-height:1.35}.concept-node strong{font-size:13px;line-height:1.35}.concept-node small,.concept-center small,.node-index{font-size:10px;line-height:1.4}.about-copy{max-width:64ch}@media(max-width:700px){:root{--type-body: 15px;--type-label: 11px}h1{font-size:30px}.hero-lead{font-size:19px}.navigation .nav-link{font-size:13px}.intro{font-size:14px}.hero-actions{gap:12px;flex-wrap:wrap}.hero-actions .button{gap:12px;padding:11px 12px;white-space:nowrap}.hero-actions .text-link{font-size:13px;white-space:nowrap}.hero-footer{font-size:10px;letter-spacing:0;gap:8px}.hero-footer>span{white-space:nowrap}.project-action{font-size:0}.project-action b{font-size:20px}.gpt-note p{font-size:14px}}@media(max-height:1000px){.gpt-note{position:relative;top:auto}}

.progress span{width:100%;transform:scaleX(0);transform-origin:left center}.reveal.waiting{opacity:.94;transform:translateY(10px)}.material-story{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(310px,.92fr);gap:clamp(34px,6vw,90px);align-items:center;padding-top:64px;padding-bottom:64px;overflow:hidden;background:#0b0b0bbd}.material-intro{max-width:590px;position:relative;z-index:1}.material-intro h2{font-size:var(--type-section);line-height:1.3;letter-spacing:-.03em;margin:13px 0 18px}.material-intro h2 span{color:#888}.material-intro p:not(.kicker){font-size:14px;line-height:1.8;color:#b7b7b7;margin:0 0 15px;max-width:61ch}.material-intro .material-lead{font-size:16px!important;line-height:1.6!important;color:#e5e5e5!important;font-weight:550}.material-signature{display:flex;align-items:center;flex-wrap:wrap;gap:15px;margin-top:26px;color:#c4c4c4;font:11px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.08em}.material-signature i{font-style:normal;color:#777}.material-visual{min-width:0;position:relative;border-top:1px solid #464646;border-bottom:1px solid #333;padding:14px 0;color:#747474}.material-visual:before{content:"";position:absolute;inset:15% 10%;background:radial-gradient(ellipse,#ffffff0a,transparent 70%);pointer-events:none}.material-caption{display:flex;justify-content:space-between;gap:12px;color:#a0a0a0;font:10px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.07em}.material-caption-bottom{color:#8d8d8d}.material-visual svg{display:block;width:100%;height:auto;overflow:visible}.material-grid{opacity:.25;stroke-width:.65}.material-outline{stroke:#717171;stroke-width:1;stroke-linecap:round;stroke-linejoin:round}.material-track{stroke:#f1f1ef;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:.055 .945;opacity:.8}.material-dot{fill:#e3e3e3}.material-cross{stroke:#b4b4b4;stroke-width:.8}.job,.project-list summary{transition:background-color .22s ease,border-color .22s ease}.project-list summary:focus-visible{outline-offset:-3px}@media(prefers-reduced-motion:no-preference){.material-visual.in-view .material-track{animation:material-cut 5.5s linear infinite}@supports (animation-timeline: view()){.material-visual svg{animation:material-enter linear both;animation-timeline:view();animation-range:entry 5% entry 80%}.experience-list .job{animation:career-enter linear both;animation-timeline:view();animation-range:entry 0% entry 55%}.project-list details{animation:career-enter linear both;animation-timeline:view();animation-range:entry 0% entry 55%}}}@keyframes material-cut{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes material-enter{0%{opacity:.55;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes career-enter{0%{opacity:.72;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.material-story{grid-template-columns:minmax(0,1fr) minmax(240px,.8fr);gap:30px}}@media(max-width:700px){.material-story{grid-template-columns:1fr;gap:25px;padding-top:46px;padding-bottom:46px}.material-intro p:not(.kicker){font-size:14px}.material-intro .material-lead{font-size:15px!important}.material-visual{max-width:520px;width:100%}.material-visual svg{max-height:245px}.material-signature{gap:11px}}@media(prefers-reduced-motion:reduce){.material-visual svg,.material-track{animation:none!important}.reveal.waiting{opacity:1;transform:none}}:root{--motion-ease: cubic-bezier(.22, 1, .36, 1);--motion-response: .32s}.nav-link,.button,.text-link span,.flow-title h3,.flow-tech span,.project-title,.project-action b{transition:transform var(--motion-response) var(--motion-ease),color .2s ease,background-color .2s ease}.hero-visual{transition:transform .5s var(--motion-ease)}.concept-node{transition:translate .5s var(--motion-ease),color .2s ease}.project-list summary:hover{padding-left:8px}.project-list summary:hover .project-title{transform:translate(5px)}.project-detail{animation:story-enter .4s var(--motion-ease) both}@keyframes story-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.flow-more{display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:#ddd;font-size:13px;line-height:1.5}.flow-more span{display:inline-block;transition:transform var(--motion-response) var(--motion-ease)}.flow-more:hover span{transform:translate(3px,3px)}#seo{scroll-margin-top:24px}.about{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(36px,5vw,74px);align-items:start}.about-copy{width:100%;max-width:64ch;border-top:1px solid #383838;padding:18px 12px 0}.about-copy .story-kicker{font:11px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.08em;color:#aaa;margin:0 0 18px}.about-copy p:not(.story-kicker){color:#bdbdbd}.about-copy p:nth-child(2){color:#dedede}@media(max-width:700px){.about{grid-template-columns:1fr;gap:28px}.about-copy{padding:17px 0 0}.about-copy .story-kicker{margin-bottom:15px}}@media(prefers-reduced-motion:reduce){.project-detail{animation:none}.project-title,.flow-more span,.hero-visual,.concept-node{transition:none!important}}

:root{--reading-size: 14px;--reading-line: 1.8;--subheading-size: 16px;--label-size: 12px;--column-gap: clamp(24px, 3vw, 38px)}body{font-size:var(--reading-size)}.intro,.flow-copy p,.seo-list small,.skill-group p,.skills-note,.section-heading>p,.skills-heading>p,.demo-note,.experience-list .job p,.experience-list .job .job-description,.project-detail p,.about-aside,.about-copy p:not(.story-kicker),.gpt-note p,.material-intro p:not(.kicker),.contact p:not(.kicker){font-size:var(--reading-size);line-height:var(--reading-line)}.material-intro .material-lead{font-size:var(--reading-size)!important;line-height:var(--reading-line)!important}.flow-title h3,.seo-intro h3,.skills-heading h3,.experience-list .job h3,.gpt-note h3,.project-title,.seo-list strong{font-size:var(--subheading-size);line-height:1.45}.section-heading h2,.expertise-heading h2,.about h2,.material-intro h2,.contact h2{font-size:var(--type-section);line-height:1.32}.navigation .nav-link,.button,.text-link,.flow-more{font-size:var(--reading-size)}.brand small,.sidebar-label,.sidebar-bottom,.sidebar-bottom small,.navigation .nav-link span,.topbar,.demo-badge,.eyebrow,.hero-footer,.ticker-track>span,.kicker,.flow-step,.flow-caption,.flow-copy>span,.skill-group span,.seo-list>div>span,.experience-list .job time,.job-tech-item,.flow-tech span,.flow-keywords span,.project-index,.project-title small,.project-detail small,.about-pill,.gpt-note-top,.gpt-note-top small,.gpt-signature,.contact-placeholder,.material-signature,.material-caption,.about-copy .story-kicker,.tags span,footer,footer p{font-size:var(--label-size);line-height:1.5}.seo-focus,.material-story{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap)}.experience-list{column-gap:var(--column-gap);row-gap:12px}.about{display:block}.about-heading{margin-bottom:28px}.about-education{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:14px;padding:0 0 20px;border-bottom:1px solid var(--divider-color, var(--line))}.about-education-icon{width:28px;height:28px;fill:none;stroke:var(--theme-accent, var(--text));stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.about-education-copy{display:grid;gap:2px;min-width:0}.about-education-label,.about-education-years{color:var(--muted);font:var(--label-size) / 1.5 ui-monospace,Consolas,monospace;letter-spacing:.04em}.about-education-school{color:var(--text);font-size:var(--reading-size);font-weight:650;line-height:1.5}.about-education-program{color:var(--muted);font-size:var(--reading-size);line-height:1.5}@media(max-width:540px){.about-education{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:6px 14px}.about-education-icon{margin-top:2px}.about-education-years{grid-column:2}}.about-copy{columns:2;column-gap:var(--column-gap);max-width:none;width:100%;padding:18px 0 0}.about-copy p:not(.story-kicker){max-width:none;break-inside:avoid}.about-copy .story-kicker,.about-copy .about-pill{column-span:all}.about .gpt-note{position:relative;top:auto;max-width:none;width:100%;margin:32px 0 0;padding:22px}.gpt-body{columns:2;column-gap:var(--column-gap)}.gpt-body p{break-inside:avoid}.gpt-signature{margin-top:8px}.experience-list .job{background:#13131385}.experience-list .job:hover{background:#1d1d1d9e}.expertise-row{background:#08080857}.about-copy{background:#08080847}.about .gpt-note{background:linear-gradient(145deg,#1d1d1d8f,#0c0c0c70)}.material-story{background:#0b0b0b57}.ticker{background:#1515156b}.section,.topbar,.ticker,.expertise-flow,.expertise-row,.seo-focus,.seo-list,.skills,.skill-group,.about-copy,.material-visual,.project-list,.gpt-signature{border:0}:root{--divider-color: rgba(255, 255, 255, .16)}.sidebar{border-color:var(--divider-color)}.seo-list>div,.project-list details{border-color:var(--divider-color)}.seo-list>div:last-child,.project-list details:last-child{border-bottom:0}.experience-list .job,.about .gpt-note,.tags span,.demo-badge{border-color:var(--divider-color)}.experience-list .job:hover{border-color:#ffffff38}.gpt-note:before{display:none}.journey,.projects,.about,.material-story,.contact{border-top:1px solid var(--divider-color)}.expertise-row:not(:last-child){border-bottom:1px solid var(--divider-color)}.material-visual{border-top:1px solid var(--divider-color)}.ticker{border-top:1px solid var(--divider-color);border-bottom:1px solid var(--divider-color)}@media(max-width:700px){.ticker-track>span{padding:9px 0;color:#909090;font-size:10.5px;-webkit-text-size-adjust:100%;text-size-adjust:100%}.ticker b{padding:0 15px;color:#5d5d5d}}.journey-visual{isolation:isolate;border-top:0}.material-intro{max-width:none;text-align:right}.material-intro p:not(.kicker){max-width:none}.material-intro .material-signature{justify-content:flex-end}.contact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap);align-items:center}.contact-details{display:grid;gap:20px;min-width:0}.contact-item{min-width:0}.contact-label{display:block;margin-bottom:6px;color:#999;font:var(--label-size) / 1.5 ui-monospace,Consolas,monospace;letter-spacing:.04em}.contact-item a,.contact-profile-links a{display:flex;align-items:center;gap:10px;width:fit-content;max-width:100%;color:#ddd;font-size:var(--reading-size);line-height:var(--reading-line);overflow-wrap:anywhere;transition:color .2s ease}.contact-item a:hover,.contact-profile-links a:hover{color:#fff}.contact-item svg,.contact-profile-links svg{display:block;flex:0 0 17px;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;color:#aaa}.contact-profile-links{display:flex;flex-wrap:wrap;gap:10px 24px}.contact-arrow{display:inline-block;flex:none;transition:transform .25s ease}.contact-item a:hover .contact-arrow,.contact-profile-links a:hover .contact-arrow{transform:translate(3px,-3px)}.contact-signal{width:min(100%,250px);margin-top:15px;pointer-events:none}.contact-signal svg{display:block;width:100%;height:auto;overflow:visible}.contact-signal-envelope,.contact-signal-bubble{stroke:#aaa;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}.contact-signal-track{stroke:#666;stroke-width:1;stroke-dasharray:1.5 5;opacity:.5}.contact-signal-trace{stroke:#eee;stroke-width:1.8;stroke-linecap:round;stroke-dasharray:8 92;opacity:.9}.contact-signal-origin{fill:#d0d0d0}@media(prefers-reduced-motion:no-preference){.contact-signal-trace{animation:contact-signal-flow 4.5s linear infinite}.contact-signal-bubble{animation:contact-signal-receive 4.5s ease-in-out infinite}}@keyframes contact-signal-flow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-100}}@keyframes contact-signal-receive{0%,65%,to{opacity:.65}78%{opacity:1;filter:drop-shadow(0 0 5px #ffffff70)}}@media(max-width:700px){.contact{grid-template-columns:1fr;gap:24px}}@media(prefers-reduced-motion:reduce){.contact-item a,.contact-profile-links a,.contact-arrow{transition:none}}.experience-list{gap:12px}.experience-list .job--independent{grid-column:1 / -1}.experience-list .job{padding:22px;gap:0;border-color:var(--divider-color);background:#1212127a}.experience-list .job:hover{padding:22px}.experience-list .job time{margin:0 0 17px;color:#b6b6b6}.experience-list .job h3{margin:0 0 5px}.experience-list .job .job-company{margin:0;color:#aaa}.job-location{display:block;margin-top:2px;color:#888}.job-story,.job-pending{border-top:1px solid var(--divider-color);margin-top:19px;padding-top:16px}.experience-list .job .job-description{margin:0;color:#c4c4c4}.experience-list .job .job-description+.job-description{margin-top:10px}.experience-list .job .job-description{font-size:13.5px;line-height:1.7}.job-more{margin-top:12px}.job-more summary{display:inline-flex;align-items:center;gap:6px;color:#d4d4d4;cursor:pointer;list-style:none;font-size:13px;font-weight:600;line-height:1.5;transition:color .2s ease}.job-more summary::-webkit-details-marker{display:none}.job-more summary:hover{color:#fff}.job-more summary:focus-visible{outline:2px solid #eee;outline-offset:4px}.job-more summary svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease}.job-more[open] summary svg{transform:rotate(180deg)}.job-read-less,.job-more[open] .job-read-more{display:none}.job-more[open] .job-read-less{display:inline}.job-more-body{padding-top:12px}@media(prefers-reduced-motion:reduce){.job-more summary,.job-more summary svg{transition:none}}.job-highlights{list-style:none;margin:15px 0 0;padding:0;display:grid;gap:9px}.job-highlights li{font-size:var(--reading-size);line-height:var(--reading-line)}.job-highlights strong{font-weight:600;color:#dedede}.job-highlights strong:after{content:" — ";font-weight:400;color:#888}.job-highlights span{color:#aaa}.experience-list .job .job-pending{color:#888}@media(max-width:700px){.experience-list .job,.experience-list .job:hover{padding:18px}}.job-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.job-role,.job-employer{min-width:0}.experience-list .job .job-role time{margin:0 0 12px}.experience-list .job .job-role h3{margin:0}.job-employer{text-align:right;overflow-wrap:anywhere}.experience-list .job .job-company{color:#dedede;font-weight:600}.job-location{color:#999}.job-story{margin-top:17px;padding-top:15px}.job-sample{display:block;margin-top:13px;color:#999;font:10px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.04em}.experience-list .job .job-top,.experience-list .job .job-story{align-self:stretch;width:100%}.experience-list .job .job-role time,.experience-list .job .job-role h3{display:flex;align-items:flex-start;gap:7px}.experience-list .job .job-role time:before{display:none}.experience-list .job .job-company,.job-location{display:flex;align-items:flex-start;justify-content:flex-end;gap:7px}.experience-list .job .job-company span{color:inherit}.job-icon{display:block;flex:0 0 15px;width:15px;height:15px;margin-top:2px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;color:#a8a8a8}@media(max-width:380px){.job-top{gap:10px}}.job-top{grid-template-columns:minmax(0,1fr) minmax(0,160px);gap:12px}.job-identity,.job-meta{min-width:0}.experience-list .job .job-identity h3,.experience-list .job .job-identity .job-company,.experience-list .job .job-meta time,.job-meta .job-location{display:flex;align-items:center;gap:7px}.experience-list .job .job-identity h3{margin:0 0 8px}.experience-list .job .job-identity .job-company{justify-content:flex-start;text-align:left;font-weight:400;color:#aaa;overflow-wrap:anywhere}.experience-list .job .job-identity .job-company{flex-wrap:wrap;gap:6px}.experience-list .job .job-identity .job-company>span:not(.job-work-badge){min-width:0;max-width:calc(100% - 21px)}.experience-list .job .job-identity .job-company .job-work-badge{display:inline-flex;align-items:center;flex:none;padding:2px 7px;border:1px solid var(--divider-color);border-radius:4px;background:#ffffff0b;color:#bdbdbd;font:11px/1.4 Segoe UI,sans-serif;white-space:nowrap}.job-meta{text-align:right}.experience-list .job .job-meta time{justify-content:flex-end;margin:0 0 8px;text-align:right}.job-meta time span{white-space:nowrap}.experience-list .job .job-meta time:before{display:none}.job-meta .job-location{justify-content:flex-end;margin:0;text-align:right}.job-meta .job-work-mode{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:5px;color:#999;text-align:right;font-size:var(--reading-size);line-height:var(--reading-line)}.job-top .job-icon{margin:0}.featured-project{margin-top:27px;padding:24px;border:1px solid var(--divider-color);border-radius:5px;background:#1212127a;transition:border-color .3s ease,background .3s ease}.featured-project:hover{border-color:#ffffff38;background:#1616168c}.featured-project-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.featured-project-kicker,.featured-project-number,.featured-project-footer{margin:0;color:#999;font:var(--label-size) / 1.5 ui-monospace,Consolas,monospace;letter-spacing:.04em}.featured-project-top h3{margin:8px 0 0;font-size:var(--subheading-size);line-height:1.45;color:#eee}.featured-project-top h3 span{color:#999}.featured-project-link{display:inline-flex;align-items:center;gap:10px;color:#ddd;font-size:var(--reading-size);white-space:nowrap;transition:color .2s ease}.featured-project-link:hover{color:#fff}.featured-project-link span{transition:transform .25s ease}.featured-project-link:hover span{transform:translate(3px,-3px)}.featured-project-lead{max-width:90ch;margin:20px 0 0;color:#c4c4c4;font-size:var(--reading-size);line-height:var(--reading-line)}.featured-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--column-gap);row-gap:24px;margin-top:25px;padding-top:22px;border-top:1px solid var(--divider-color)}.featured-project-area h4{margin:7px 0;font-size:var(--reading-size);line-height:1.5;color:#eee}.featured-project-area p{margin:0;color:#aaa;font-size:var(--reading-size);line-height:var(--reading-line)}.featured-project-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px 20px;margin-top:25px;padding-top:17px;border-top:1px solid var(--divider-color)}.featured-project-footer i{font-style:normal;color:#a8c7b6;margin-left:5px}@media(max-width:700px){.featured-project{padding:18px}.featured-project-grid{grid-template-columns:1fr;gap:20px}}@media(max-width:400px){.featured-project-top{flex-direction:column;gap:12px}}@media(prefers-reduced-motion:reduce){.featured-project,.featured-project-link,.featured-project-link span{transition:none}}.job-top{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:8px;row-gap:8px}.job-identity,.job-meta{display:contents}.experience-list .job .job-identity h3{grid-column:1 / 7;grid-row:1;margin:0}.experience-list .job .job-meta time{grid-column:7 / 13;grid-row:1;margin:0}.experience-list .job .job-identity .job-company{grid-column:1 / 10;grid-row:2}.job-meta .job-location{grid-column:10 / 13;grid-row:2}@media(max-width:400px){.experience-list .job .job-identity h3{grid-column:1 / 6}.experience-list .job .job-meta time{grid-column:6 / 13}.experience-list .job .job-identity .job-company{grid-column:1 / 13}.job-meta .job-location{grid-column:1 / 13;grid-row:3}}@media(max-width:700px){.experience-list .job-top{grid-template-columns:minmax(0,1fr);row-gap:8px}.experience-list .job .job-identity h3{grid-column:1 / -1;grid-row:1}.experience-list .job .job-identity .job-company{grid-column:1 / -1;grid-row:2}.experience-list .job .job-meta time{grid-column:1 / -1;grid-row:3;justify-content:flex-start;text-align:left}.experience-list .job .job-meta .job-location{grid-column:1 / -1;grid-row:4;justify-content:flex-start;text-align:left}}.journey-visual .material-caption{align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--divider-color)}.world-stage{position:relative;min-width:0;margin:12px 0 20px}.material-visual .world-map{display:block;width:100%;height:auto;max-height:none}.world-land{fill:#a1a1a1;opacity:.27}.world-route-base{stroke:#777;stroke-width:1;stroke-dasharray:3 5;opacity:.48}.world-route-trace{stroke:#e9e9e9;stroke-width:1.6;stroke-linecap:round;stroke-dasharray:.09 .91;opacity:.9}.world-origin{fill:#f3f3f3}.world-origin-ring{stroke:#dfdfdf;stroke-width:1;opacity:.45}.world-destination{fill:#dedede;opacity:.7}.world-label{display:flex;align-items:center;gap:8px;margin-top:-7px;color:#aaa;font:12px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.04em}.world-status{width:5px;height:5px;border-radius:50%;background:#ddd;box-shadow:0 0 8px #ffffff80;flex:none}.process-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0}.process-step{position:relative;display:flex;align-items:flex-start;gap:10px;min-width:0;color:#d8d8d8}.process-step>span:last-child{min-width:0}.process-icon{display:grid;place-items:center;flex:0 0 28px;height:28px;color:#cfcfcf;transition:color .3s,transform .3s var(--motion-ease)}.material-visual .process-icon svg{display:block;width:23px;height:23px;max-height:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;animation:none!important}.process-step strong,.process-step small{display:block;line-height:1.5}.process-step strong{font-size:var(--reading-size);font-weight:600;color:#e7e7e7}.process-step small{font-size:var(--label-size);color:#a5a5a5;margin-top:4px}@media(hover:hover){.process-step:hover .process-icon{color:#fff;transform:translateY(-3px)}}@media(prefers-reduced-motion:no-preference){.journey-visual.in-view .world-route-trace{animation:world-travel 5.5s linear infinite}.journey-visual.in-view .route-two{animation-delay:-1.8s}.journey-visual.in-view .route-three{animation-delay:-3.6s}.journey-visual.in-view .world-origin-ring{animation:world-pulse 3s ease-out infinite}}@keyframes world-travel{0%{stroke-dashoffset:0}to{stroke-dashoffset:-1}}@keyframes world-pulse{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:.65;transform:scale(1.15)}}.world-origin-ring{transform-box:fill-box;transform-origin:center}.dev-motion{display:grid;gap:4px;margin-top:17px;color:#c6c6c6;font:12px/1.55 ui-monospace,Consolas,monospace;white-space:nowrap}.dev-motion-line{width:max-content;max-width:100%}.dev-motion code{font:inherit}.dev-motion code span{color:#b4abd3}.dev-motion code b{color:#c2bd9e;font-weight:400}@media(prefers-reduced-motion:no-preference){.dev-motion-first{animation:code-first 8s steps(24,end) infinite}.dev-motion-second{animation:code-second 8s steps(20,end) infinite}}@keyframes code-first{0%,8%{clip-path:inset(0 100% 0 0)}35%,88%{clip-path:inset(0 0 0 0);opacity:1}96%,to{clip-path:inset(0 0 0 0);opacity:.3}}@keyframes code-second{0%,35%{clip-path:inset(0 100% 0 0)}62%,88%{clip-path:inset(0 0 0 0);opacity:1}96%,to{clip-path:inset(0 0 0 0);opacity:.3}}.hero-stage{position:relative;display:flow-root}.hero-source{position:absolute;top:0;left:0;z-index:1;max-width:100%;overflow:hidden;visibility:hidden;opacity:0;pointer-events:none;white-space:nowrap;color:#bcbcbc;font:12px/1.55 ui-monospace,Consolas,monospace}.hero-source code{font:inherit}.hero-content .eyebrow{text-transform:uppercase}.hero-token-key,.hero-token-var{color:#b4abd3}.hero-token-string{color:#c7a489}.hero-token-func{color:#c2bd9e}.hero-token-tag{color:#94a5b5}.hero-token-number{color:#a8be9f}.stage-name .hero-source{font-size:var(--label-size);line-height:1.5}.stage-greeting .hero-source{font-size:var(--type-hero);line-height:1.14;white-space:normal;overflow-wrap:anywhere}.stage-lead .hero-source{font-size:clamp(19px,1.65vw,22px);line-height:1.4;white-space:normal;overflow-wrap:anywhere}.stage-intro .hero-source{font-size:var(--reading-size);line-height:var(--reading-line);white-space:normal;overflow-wrap:anywhere}.stage-primary .hero-source,.stage-secondary .hero-source{font-size:var(--reading-size);line-height:1.4;white-space:normal;overflow-wrap:anywhere;width:240px;max-width:none}.hero-actions .hero-stage{flex:0 0 auto}@media(prefers-reduced-motion:no-preference){html.hero-coding .hero-result{visibility:hidden;opacity:0;transform:translateY(6px)}html.hero-coding .hero-stage.is-typing .hero-source{visibility:visible;opacity:1}html.hero-coding .hero-stage.is-resolved .hero-source{visibility:hidden;opacity:0;transition:opacity .3s ease,visibility 0s linear .3s}html.hero-coding .hero-stage.is-resolved .hero-result{visibility:visible;opacity:1;transform:translateY(0);transition:opacity .4s ease,transform .4s var(--motion-ease)}}.concept-paths .network-wires path{stroke:#888;stroke-width:.8;opacity:.38}.concept-paths .network-packets path{stroke:#ddd;stroke-width:1.3;stroke-linecap:round;stroke-dasharray:12 88;opacity:.75}.concept-paths .network-wires,.concept-paths .network-packets{transition:opacity .45s ease}.concept-center{display:flex;align-items:flex-end;justify-content:center;width:160px;height:158px;min-height:0;padding:0 0 3px;pointer-events:none}.concept-center:before{inset:-12px -24px;opacity:.35}.concept-center small{margin:0;white-space:nowrap;font-size:10px;letter-spacing:.07em;color:#aaa;transform:translateY(34px)}.concept-node{animation:none}.concept-node:before{display:none}.node-commerce{left:175px;bottom:-4px}.work-scene{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}.studio-frame{fill:url(#studio-screen);stroke:#a4a4a4;stroke-width:1.25}.studio-bar,.studio-tab,.studio-monitor-stand,.studio-desk{stroke:#777;stroke-width:1;stroke-linecap:round}.studio-tab{stroke:#555;stroke-width:1.5}.studio-code-muted{stroke:#555;stroke-width:1;stroke-linecap:round}.studio-code-text{fill:#c2c2c2;font:6.1px ui-monospace,Consolas,monospace}.studio-caret{stroke:#e0e0e0;stroke-width:1.2}.studio-chair-back{fill:#111;stroke:#777;stroke-width:1.1}.studio-keyboard{fill:#1b1b1b;stroke:#888;stroke-width:1}.studio-key-lines{stroke:#777;stroke-width:1;stroke-linecap:round}.studio-arm{fill:#2b2b2b;stroke:#b0b0b0;stroke-width:1.2;stroke-linejoin:round}.studio-hand{fill:#555;stroke:#bbb;stroke-width:1;stroke-linejoin:round}.studio-hoodie{fill:url(#studio-hoodie);stroke:#d4d4d4;stroke-width:1.35;stroke-linejoin:round}.studio-sleeves,.studio-head-detail,.studio-seam{stroke:#777;stroke-width:1;stroke-linecap:round}.studio-hood{fill:#242424;stroke:#b9b9b9;stroke-width:1.15;stroke-linejoin:round}.studio-head{fill:#292929;stroke:#d1d1d1;stroke-width:1.2}.studio-hair{fill:#242424;stroke:#bfbfbf;stroke-width:1.2;stroke-linejoin:round}.studio-signature{fill:#ededed;font:700 16px Segoe UI,sans-serif;letter-spacing:-.8px}.studio-signature tspan{fill:#9c9c9c}.studio-desk{stroke:#888;stroke-width:1.2}.center-active .network-wires,.center-active .network-packets{opacity:.25}.center-active .studio-display{filter:drop-shadow(0 0 7px #ffffff30)}@media(prefers-reduced-motion:no-preference){.studio-display{animation:studio-on .9s .15s both;transition:filter .45s ease}.studio-person{transform-origin:220px 237px;animation:studio-enter 1s .45s both}.studio-code-line{animation-duration:10s;animation-timing-function:steps(24,end);animation-iteration-count:infinite}.studio-code-line.line-one{animation-name:terminal-line-one}.studio-code-line.line-two{animation-name:terminal-line-two}.studio-code-line.line-three{animation-name:terminal-line-three}.studio-code-line.line-four{animation-name:terminal-line-four}.studio-arm-left{transform-origin:194px 205px;animation:studio-type-left 1.1s ease-in-out infinite}.studio-arm-right{transform-origin:246px 205px;animation:studio-type-right 1.35s .2s ease-in-out infinite}.studio-caret{animation:studio-blink 1s steps(1) infinite}.concept-node{animation:node-appear .7s both}.node-idea{animation-delay:5s}.node-code{animation-delay:5.25s}.node-design{animation-delay:5.5s}.node-seo{animation-delay:5.75s}.node-commerce{animation-delay:6s}.network-wires,.network-packets{animation:scene-appear .8s 6.1s backwards}.network-packets path{animation:packet-stream 5s 6.1s linear infinite}.network-packets path:nth-child(2){animation-duration:4.4s;animation-delay:6.4s}.network-packets path:nth-child(3){animation-duration:4.8s;animation-delay:6.7s}.network-packets path:nth-child(4){animation-duration:4.2s;animation-delay:7s}.network-packets path:nth-child(5){animation-duration:3.8s;animation-delay:7.3s}}@keyframes studio-on{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes studio-enter{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes terminal-line-one{0%{clip-path:inset(0 100% 0 0)}12%,90%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes terminal-line-two{0%,12%{clip-path:inset(0 100% 0 0)}24%,90%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes terminal-line-three{0%,24%{clip-path:inset(0 100% 0 0)}36%,90%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes terminal-line-four{0%,36%{clip-path:inset(0 100% 0 0)}48%,90%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes terminal-line-five{0%,48%{clip-path:inset(0 100% 0 0)}60%,90%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes studio-type-left{0%,to{transform:translateY(0)}45%{transform:translateY(1.2px)}}@keyframes studio-type-right{0%,to{transform:translateY(0)}50%{transform:translateY(1.2px)}}@keyframes studio-blink{50%{opacity:0}}@keyframes scene-appear{0%{opacity:0}to{opacity:1}}@keyframes node-appear{0%{opacity:0;filter:blur(3px)}to{opacity:1;filter:blur(0)}}@keyframes packet-stream{to{stroke-dashoffset:-100}}.flow-details .flow-caption{display:block}.flow-more{display:flex;width:max-content;max-width:100%}@media(max-width:520px){.flow-details .flow-caption{display:none}}@media(max-width:700px){.concept-map{right:-80px;opacity:.22}.seo-focus,.material-story{grid-template-columns:1fr}.experience-list{row-gap:10px}.about-copy,.gpt-body{columns:1}.about .gpt-note{padding:18px;margin-top:26px}.navigation .nav-link,.hero-actions .text-link{font-size:var(--reading-size)}.hero-footer{font-size:var(--label-size);letter-spacing:0;flex-wrap:wrap;gap:6px 12px}.journey-visual .material-caption{flex-wrap:wrap}}@media(max-width:360px){.process-step{display:block}.process-icon{margin-bottom:7px}}

.expertise-scenes{display:grid;gap:14px;margin-top:30px}.expertise-feature{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap, clamp(28px, 4vw, 60px));align-items:center;padding:26px;border:1px solid var(--divider-color);border-radius:5px;background:#1212127a;isolation:isolate;overflow:hidden;transition:border-color .4s ease,background .4s ease}.expertise-feature:hover{border-color:#ffffff45;background:#17171787}.expertise-story{min-width:0}.scene-kicker{margin:0 0 10px;color:#999;font:11px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.07em}.scene-kicker span{color:#ddd}.expertise-story h3{margin:0 0 10px;font-size:17px;line-height:1.4;letter-spacing:-.02em;color:#f1f1f1}.scene-lead{margin:0;color:#c1c1c1;font-size:14px;line-height:1.7;max-width:58ch}.scene-points{list-style:none;counter-reset:expertise-point;margin:17px 0 0;padding:0;display:grid;gap:4px}.scene-points li{counter-increment:expertise-point;position:relative;padding:8px 10px 8px 38px;border-left:1px solid rgba(255,255,255,.17);background:linear-gradient(90deg,rgba(255,255,255,.045),transparent 90%);color:#aaa;font-size:13px;line-height:1.55;transition:background-color .3s ease,border-color .3s ease}.scene-points li:before{content:counter(expertise-point,decimal-leading-zero);position:absolute;top:10px;left:11px;color:#969696;font:10px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.03em}.scene-points li:hover{border-color:#ffffff6b;background-color:#ffffff06}.scene-points strong{display:inline;color:#dedede;font-size:13px;font-weight:600}.scene-points strong:after{content:" — ";color:#777;font-weight:400}.scene-points span{display:inline}.expertise-feature#seo .search-window{order:-1}.scene-window{min-width:0;border:1px solid rgba(255,255,255,.15);border-radius:6px;overflow:hidden;background:#0c0c0cc7;box-shadow:0 16px 40px #0004;color:#bbb}.window-bar{height:39px;padding:0 14px;display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--divider-color);background:#ffffff06;font:11px/1.4 ui-monospace,Consolas,monospace;color:#aaa}.window-bar>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.window-bar small{margin-left:auto;color:#898989;font-size:10px;white-space:nowrap;letter-spacing:.04em}.window-dots{display:flex;gap:5px;flex:none}.window-dots i{width:5px;height:5px;border-radius:50%;background:#686868}.editor-path{padding:15px 18px 5px;color:#888;font:11px/1.4 ui-monospace,Consolas,monospace}.editor-path span{color:#555;margin:0 3px}.editor-code{padding:13px 18px 18px;min-height:145px;overflow:auto;scrollbar-width:thin;font:12px/2 ui-monospace,Consolas,monospace}.editor-code>div{display:flex;white-space:pre;width:max-content;min-width:100%;border-radius:3px}.editor-code i{width:31px;flex:none;color:#626262;font-style:normal;user-select:none}.editor-code code{font:inherit;color:#d5d5d5}.editor-code em{color:#aebbe0;font-style:normal}.editor-code b{color:#c6b6dc;font-weight:400}.editor-code q{color:#cdb99a;quotes:none}.editor-code u{color:#c1a8cb;text-decoration:none}.editor-caret{display:inline-block;width:2px;height:1.1em;background:#ccc;vertical-align:middle;margin-left:4px;opacity:.8}.editor-status{padding:10px 16px;border-top:1px solid var(--divider-color);display:flex;justify-content:space-between;gap:12px;color:#929292;font:10px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.03em}.editor-status b{font-weight:400;color:#666}.status-light,.commerce-live i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#91bba5;margin-right:5px}.search-body,.commerce-body{padding:19px}.search-input{display:flex;align-items:center;gap:11px;height:37px;padding:0 12px;border:1px solid #444;border-radius:20px;color:#ccc;font-size:12px;background:#ffffff06}.search-input svg{width:15px;height:15px;flex:none;fill:none;stroke:#a6a6a6;stroke-width:1.7;stroke-linecap:round}.search-input b{margin-left:auto;color:#777;font-size:14px;font-weight:400}.search-result{position:relative;margin-top:22px;padding:0 3px;overflow:hidden}.result-domain{display:flex;align-items:center;gap:9px;color:#d0d0d0;font-size:12px;line-height:1.35}.result-domain small{display:block;color:#898989;font-size:10px}.result-domain b{margin-left:auto;color:#999;font-weight:400;letter-spacing:2px}.result-favicon{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#303030;color:#dedede;font-size:12px;font-weight:700}.result-title{margin-top:10px;color:#b7c8e1;font-size:15px;line-height:1.4;font-weight:500}.search-result p{margin:6px 0 0;color:#aaa;font-size:12px;line-height:1.6}.seo-signals{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.seo-signals span{padding:5px 8px;border:1px solid #383838;border-radius:3px;color:#bdbdbd;font:10px/1.4 ui-monospace,Consolas,monospace}.seo-signals i,.commerce-footer i{display:inline-block;width:5px;height:5px;background:#9da99e;border-radius:50%;margin-right:4px}.commerce-header{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:20px}.commerce-header small{display:block;color:#898989;font:10px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.05em}.commerce-header strong{display:block;color:#e5e5e5;margin-top:5px;font-size:15px;font-weight:600}.commerce-live{color:#a6a6a6;font:10px ui-monospace,Consolas,monospace}.orders-head,.order-row{display:grid;grid-template-columns:.8fr 1.25fr 1fr;gap:7px;align-items:center}.orders-head{padding:0 7px 8px;color:#777;font:10px ui-monospace,Consolas,monospace}.order-row{min-height:37px;padding:7px;border-top:1px solid #ffffff16;font-size:11px;color:#aaa}.order-row strong{color:#ddd;font-weight:500}.order-row b{width:max-content;max-width:100%;padding:3px 6px;border-radius:3px;background:#ffffff0b;color:#b9c5bb;font-size:10px;font-weight:400;white-space:nowrap}.commerce-footer{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:20px;color:#aaa;font:10px/1.4 ui-monospace,Consolas,monospace;white-space:nowrap}.flow-arrow{color:#666}@media(prefers-reduced-motion:no-preference){.expertise-feature.is-visible .editor-code>div{animation:editor-line 8s ease-in-out infinite}.expertise-feature.is-visible .editor-code>div:nth-child(2){animation-delay:.3s}.expertise-feature.is-visible .editor-code>div:nth-child(3){animation-delay:.6s}.expertise-feature.is-visible .editor-code>div:nth-child(4){animation-delay:.9s}.expertise-feature.is-visible .editor-code>div:nth-child(5){animation-delay:1.2s}.expertise-feature.is-visible .editor-code code{animation:code-write 10s steps(30,end) infinite backwards}.expertise-feature.is-visible .editor-code>div:nth-child(2) code{animation-delay:.6s}.expertise-feature.is-visible .editor-code>div:nth-child(3) code{animation-delay:1.2s}.expertise-feature.is-visible .editor-code>div:nth-child(4) code{animation-delay:1.8s}.expertise-feature.is-visible .editor-code>div:nth-child(5) code{animation-delay:2.4s}.expertise-feature.is-visible .editor-caret{animation:cursor-blink 1s steps(1) infinite}.expertise-feature.is-visible .search-input>span{animation:search-write 9s steps(27,end) infinite}.expertise-feature.is-visible .seo-signals span{animation:signal-focus 6s ease-in-out infinite}.expertise-feature.is-visible .seo-signals span:nth-child(2){animation-delay:2s}.expertise-feature.is-visible .seo-signals span:nth-child(3){animation-delay:4s}.expertise-feature.is-visible .order-row{animation:order-focus 7s ease-in-out infinite}.expertise-feature.is-visible .order-row:nth-child(4){animation-delay:1.2s}.expertise-feature.is-visible .order-row:nth-child(5){animation-delay:2.4s}.expertise-feature.is-visible .commerce-footer i{animation:signal-dot 3s ease-in-out infinite}.expertise-feature.is-visible .commerce-footer span:nth-child(3) i{animation-delay:1s}.expertise-feature.is-visible .commerce-footer span:nth-child(5) i{animation-delay:2s}}@keyframes editor-line{0%,to,45%{background:transparent}12%,25%{background:#ffffff0c}}@keyframes code-write{0%{clip-path:inset(0 100% 0 0)}18%,82%{clip-path:inset(0)}96%,to{clip-path:inset(0 100% 0 0)}}@keyframes search-write{0%,5%{clip-path:inset(0 100% 0 0)}25%,85%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes cursor-blink{50%{opacity:0}}@keyframes signal-focus{0%,to,45%{border-color:#383838;color:#aaa}15%,30%{border-color:#737373;color:#eee}}@keyframes order-focus{0%,to,50%{background:transparent;transform:translate(0)}14%,28%{background:#ffffff0a;transform:translate(3px)}}@keyframes signal-dot{0%,to{opacity:.45}50%{opacity:1;box-shadow:0 0 8px #c9e0ce}}@media(max-width:900px){.expertise-feature{gap:24px;padding:22px}.editor-code{font-size:11px;padding-left:12px;padding-right:12px}.search-body,.commerce-body{padding:16px}}@media(max-width:700px){.expertise-feature{grid-template-columns:minmax(0,1fr);gap:22px;padding:20px}.scene-window{width:100%}.scene-lead{max-width:none}.expertise-scenes{gap:12px}}@media(max-width:380px){.expertise-feature{padding:17px}.editor-code{font-size:10px}.window-bar small{font-size:9px}.orders-head,.order-row{grid-template-columns:.7fr 1.1fr 1fr}}@media(prefers-reduced-motion:reduce){.expertise-feature{transition:none}}

.skills-grid{gap:12px;margin-top:22px}.skill-group{min-width:0;padding:13px 14px 15px;border:1px solid var(--divider-color);border-radius:5px;background:#14141459;transition:background .35s ease,border-color .35s ease}.skill-group:hover{background:#1b1b1b7a;border-color:#ffffff42}.skill-top{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:8px}.skill-top>span{min-width:0;line-height:1.5;color:#b5b5b5}.skill-tags{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px 12px;margin:9px 0 0;padding:13px 0 0;border-top:1px solid var(--divider-color)}.skill-tags li{display:flex;align-items:center;gap:8px;min-width:0;color:#c8c8c8;font-size:14px;line-height:1.4;transition:color .3s ease}.skill-group:hover .skill-tags li{color:#ededed}.skill-group .skill-name{min-width:0;font:inherit;line-height:inherit;letter-spacing:normal;color:inherit;overflow-wrap:break-word}.skill-group .skill-symbol{display:grid;place-items:center;flex:0 0 16px;width:16px;height:16px}.skill-symbol img,.skill-symbol svg{display:block;width:16px;height:16px;object-fit:contain}.skill-symbol img{filter:grayscale(1) brightness(1.7)}.skill-symbol img[src*="/si-"],.skill-symbol img[src$="/opencart-brand.svg"]{filter:brightness(0) invert(1);opacity:.85}.skill-symbol-illustrated svg{width:16px;height:16px;stroke:#cfcfcf;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.skill-symbol-neutral svg{width:10px;height:10px;stroke:#aaa;stroke-width:1.2}.mini-scene{display:block;width:100px;height:50px;flex:0 0 100px;overflow:visible;stroke-linecap:round;stroke-linejoin:round}.mini-frame{stroke:#a1a1a1;stroke-width:1.2;fill:#151515a6}.mini-muted{stroke:#6b6b6b;stroke-width:1;fill:none}.mini-code-line{fill:#c2c2c2;font:5.8px ui-monospace,Consolas,monospace}.mini-cursor{stroke:#d7d7d7;stroke-width:1.1}.mini-panel{stroke:#b7b7b7;stroke-width:1.1;fill:#ffffff0a}.mini-flow{stroke:#dedede;stroke-width:1.6;stroke-dasharray:18 82;opacity:.8}.server-light{fill:#b8c7bc}.mini-search-ring{stroke:#d0d0d0;stroke-width:1.5}.mini-tools-prompt,.mini-tools-cursor{stroke:#d5d5d5;stroke-width:1.4}.mini-draw{stroke:#e0e0e0;stroke-width:1.5}.mini-anchor{stroke:#bbb;stroke-width:1;fill:#1b1b1b}.mini-cut{stroke:#d8d8d8;stroke-width:1.3}@media(prefers-reduced-motion:no-preference){.skill-group.is-visible .mini-code-first{animation:skill-code-first 7s steps(20,end) infinite}.skill-group.is-visible .mini-code-second{animation:skill-code-second 7s steps(16,end) infinite}.skill-group.is-visible .mini-cursor{animation:skill-cursor 1s steps(1) infinite}.skill-group.is-visible .mini-panel{animation:skill-panel 5s ease-in-out infinite}.skill-group.is-visible .mini-panel-b{animation-delay:.5s}.skill-group.is-visible .mini-panel-c{animation-delay:1s}.skill-group.is-visible .mini-flow{animation:skill-flow 2.8s linear infinite}.skill-group.is-visible .server-light{animation:skill-light 3s ease-in-out infinite}.skill-group.is-visible .server-light-two{animation-delay:1s}.skill-group.is-visible .server-light-three{animation-delay:2s}.skill-group.is-visible .mini-search-ring{transform-origin:28px 27px;animation:skill-search 5s ease-in-out infinite}.skill-group.is-visible .mini-tools-cursor{animation:skill-cursor 1s steps(1) infinite}.skill-group.is-visible .mini-draw{animation:skill-draw 5s ease-in-out infinite}.skill-group.is-visible .mini-cut{animation:skill-cut 4s ease-in-out infinite}}@keyframes skill-code-first{0%{clip-path:inset(0 100% 0 0)}25%,85%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes skill-code-second{0%,23%{clip-path:inset(0 100% 0 0)}50%,85%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes skill-cursor{50%{opacity:0}}@keyframes skill-panel{0%,to{opacity:.48;transform:translateY(2px)}35%,70%{opacity:1;transform:translateY(0)}}@keyframes skill-flow{to{stroke-dashoffset:-100}}@keyframes skill-light{0%,to{opacity:.35}50%{opacity:1}}@keyframes skill-search{0%,to{transform:translate(0)}40%,60%{transform:translate(3px,-2px)}}@keyframes skill-draw{0%,8%{stroke-dasharray:100;stroke-dashoffset:100}48%,85%{stroke-dasharray:100;stroke-dashoffset:0}to{stroke-dasharray:100;stroke-dashoffset:100}}@keyframes skill-cut{0%,to{opacity:.35;transform:translate(-3px)}50%{opacity:1;transform:translate(3px)}}@media(max-width:1200px){.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}@media(max-width:700px){.skills-grid{grid-template-columns:minmax(0,1fr)}.skill-group{padding:14px}.skill-top{display:flex;min-height:52px}.mini-scene{width:100px;height:50px;flex-basis:100px}.skill-tags{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin-top:6px;padding-top:11px}}@media(max-width:359px){.skill-tags{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.skill-group,.skill-tags li{transition:none}}

.stage-name .eyebrow{display:flex;align-items:center;gap:11px;text-transform:none}.hero-identity-photo{display:block;flex:0 0 44px;width:44px;height:44px;border:1px solid var(--divider-color);border-radius:50%;object-fit:cover}.hero-identity-text{display:flex;min-width:0;flex-direction:column;gap:2px;letter-spacing:.03em}.hero-identity-name{color:#e5e5e5;font-size:12px;line-height:1.4;white-space:nowrap}.hero-identity-role{color:#a5a5a5;font-size:11px;line-height:1.4;white-space:nowrap}@media(max-width:700px){.stage-name .eyebrow-line{display:none}}@media(max-width:360px){.hero-lead .rotating-wrap{min-height:2.8em}}.workspace-scene{pointer-events:none}.workspace-backdrop{position:absolute;inset:14px 8px;background:radial-gradient(ellipse at center,rgba(150,150,150,.09),transparent 70%);filter:blur(8px)}.workspace-composition{position:absolute;inset:7px 28px;display:flex;flex-direction:column;justify-content:center}.workspace-label{display:flex;align-items:center;justify-content:space-between;margin:0 0 10px;color:#999;font:11px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.1em}.workspace-label>span:last-child{color:#e4e4e4;font:700 17px/1 Segoe UI,sans-serif;letter-spacing:-1px}.workspace-brand-dot{color:#8b8b8b}.hero-editor{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:#0e0e0ec2;box-shadow:0 16px 45px #0007;transition:border-color .4s ease,box-shadow .4s ease,transform .4s ease}.editor-border-light{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:visible;pointer-events:none}.editor-border-light rect{fill:none;stroke:#eee;stroke-width:1.25;stroke-linecap:round;stroke-dasharray:3 97;opacity:.9;filter:drop-shadow(0 0 3px #ffffffaa);animation:editor-border-orbit 7s linear infinite}.center-active .hero-editor{border-color:#fff6;box-shadow:0 16px 45px #0007,0 0 30px #ffffff0c;transform:translateY(-3px)}.workspace-bar{height:38px;display:flex;align-items:center;gap:11px;padding:0 13px;background:#ffffff09;border-bottom:1px solid var(--divider-color);color:#aaa;font:11px/1.4 ui-monospace,Consolas,monospace}.workspace-controls{display:flex;gap:4px;flex:none}.workspace-controls i{display:block;width:5px;height:5px;background:#676767;border-radius:50%}.workspace-file{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.workspace-language{margin-left:auto;color:#858585;font-size:10px}.workspace-code{height:128px;padding:11px 12px;display:grid;grid-template-rows:repeat(5,1fr);overflow:hidden;transition:opacity .28s ease,transform .28s ease}.workspace-code-line{display:flex;gap:11px;min-width:0;white-space:pre;font:12px/1.8 ui-monospace,Consolas,monospace}.workspace-line-number{width:16px;flex:none;color:#666;user-select:none}.workspace-code code{font:inherit;color:#d0d0d0;white-space:pre}.syntax-class{color:#a9c2b9}.syntax-method{color:#ccbf9c}.syntax-string{color:#d0aa92}.syntax-keyword{color:#beb0d2}.syntax-tag{color:#abc2d1}.syntax-variable{color:#a6bdca}.syntax-command{color:#b7c9b6}.syntax-muted{color:#aaa}.workspace-caret{display:inline-block;width:1px;height:1.1em;margin-left:2px;background:#ddd;vertical-align:middle;animation:workspace-cursor 1s steps(1) infinite}.workspace-status{height:31px;display:flex;align-items:center;gap:7px;padding:0 13px;border-top:1px solid var(--divider-color);color:#aaa;font:11px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.04em}.workspace-indicator{width:6px;height:6px;flex:none;border-radius:50%;background:#a7bdb0;box-shadow:0 0 7px #a7bdb060}.workspace-count{margin-left:auto;color:#777}.workspace-composition[data-stage=terminal] .workspace-bar{gap:0}.workspace-composition[data-stage=terminal] .workspace-controls{margin-right:11px}.workspace-composition[data-stage=terminal] .workspace-file{align-self:stretch;display:flex;align-items:center;gap:7px;padding:0 11px;border-bottom:1px solid #aaa;background:#ffffff0b;color:#e2e2e2}.workspace-composition[data-stage=terminal] .workspace-file:before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:#a9c5b4}.workspace-composition[data-stage=terminal] .workspace-code{background:#0003;padding-left:13px}.workspace-composition[data-stage=terminal] .workspace-line-number{display:none}.workspace-composition[data-stage=terminal] .workspace-code-line{gap:0}.workspace-composition[data-stage=terminal] .workspace-caret{width:6px;background:#ddd;opacity:.8}.syntax-prompt-user{color:#a9c8b6}.syntax-prompt-path{color:#aebdd2}.syntax-prompt-sign{color:#aaa}.syntax-terminal-command{color:#e3e3e3}.syntax-terminal-info{color:#b1cbb8}.workspace-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.workspace-step{position:relative;display:flex;align-items:center;gap:4px;min-width:0;padding:0 0 8px;color:#888;font:11px/1.4 ui-monospace,Consolas,monospace;white-space:nowrap;transition:color .4s ease}.workspace-step b{color:#777;font-weight:400}.workspace-step:before,.workspace-step:after{content:"";position:absolute;bottom:0;left:0;height:1px}.workspace-step:before{right:0;background:#ffffff29}.workspace-step:after{width:0;background:#ddd}.workspace-step.is-active{color:#eee}.workspace-step.is-active b{color:#bbb}.workspace-step.is-active:after{animation:workspace-progress 7s linear both}.workspace-check{display:inline-block;flex:none;color:#eee;opacity:0;transform:translateY(2px);transition:opacity .35s ease,transform .35s ease}.workspace-step.is-complete{color:#eee}.workspace-step.is-complete b{color:#bbb}.workspace-step.is-complete:after{width:100%}.workspace-step.is-complete .workspace-check{opacity:1;transform:translateY(0)}.workspace-disciplines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;color:#999;font:10px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.03em}.workspace-disciplines span{white-space:nowrap;transition:color .45s ease,text-shadow .45s ease}.workspace-disciplines .is-active,.workspace-disciplines .is-complete{color:#e2e2e2;text-shadow:0 0 12px #ffffff55}.workspace-composition.is-transitioning .workspace-code{opacity:0;transform:translateY(-5px)}@keyframes workspace-cursor{50%{opacity:0}}@keyframes workspace-progress{to{width:100%}}@keyframes editor-border-orbit{to{stroke-dashoffset:-100}}@media(max-width:850px){.hero{min-height:0}.workspace-scene{position:relative;top:auto;right:auto;width:100%;height:auto;opacity:1;transform:none!important}.workspace-composition{position:relative;inset:auto;width:100%;max-width:410px;margin:28px auto 0}.workspace-backdrop{inset:0;opacity:.55}.hero-footer{margin-top:28px}}@media(max-width:380px){.workspace-composition{margin-top:24px}.workspace-code-line{font-size:11px;gap:8px}.workspace-step,.workspace-disciplines{font-size:10px}}@media(prefers-reduced-motion:reduce){.hero-editor,.workspace-code,.workspace-step,.workspace-disciplines span{transition:none}.editor-border-light{display:none}.workspace-caret,.workspace-step.is-active:after{animation:none}.workspace-step.is-active:after{width:100%}}

html.scroll-motion-ready .experience-list .job,html.scroll-motion-ready .project-list details{animation:none}.scroll-reveal{translate:0 0;opacity:1;transition:opacity .6s cubic-bezier(.22,1,.36,1),translate .6s cubic-bezier(.22,1,.36,1),background .3s ease,border-color .3s ease;transition-delay:var(--scroll-delay, 0ms),var(--scroll-delay, 0ms),0ms,0ms}.scroll-reveal.scroll-pending{opacity:0;translate:var(--scroll-x, 0px) var(--scroll-y, 20px)}@media(prefers-reduced-motion:reduce){.scroll-reveal{transition:none!important;translate:none!important;opacity:1!important}}

.sidebar-identity{display:none}@media(min-width:701px){.shell{grid-template-columns:228px minmax(0,1fr)}.sidebar{height:100vh;height:100dvh;padding:30px 18px 24px;background:linear-gradient(180deg,#121212f5,#080808f5)}.sidebar .brand{display:none}.sidebar-identity{display:flex;align-items:center;gap:9px;min-width:0;padding:2px 8px 0;letter-spacing:.02em}.sidebar-identity img{display:block;width:38px;height:38px;flex:0 0 38px;object-fit:cover;border:1px solid var(--divider-color);border-radius:50%}.sidebar-identity>span{display:flex;flex-direction:column;min-width:0;gap:2px}.sidebar-identity strong,.sidebar-identity small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:11px/1.35 ui-monospace,Consolas,monospace}.sidebar-identity strong{color:#e5e5e5}.sidebar-identity small{color:#a5a5a5}.sidebar-label{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:56px 8px 14px;color:#949494;font:11px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.05em}.sidebar-label span{margin:0}.sidebar-label span:last-child{color:#777;font-size:10px}.navigation{position:relative;gap:4px}.navigation .nav-link{position:relative;overflow:hidden;min-height:39px;padding:9px 10px;gap:11px;border-radius:4px;color:#aaa;background:transparent;transform:none;transition:color .25s ease,background .25s ease,transform .25s ease}.navigation .nav-link span{width:20px;flex:0 0 20px;color:#777;font:11px/1.4 ui-monospace,Consolas,monospace;transition:color .25s ease}.navigation .nav-link:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:2px;border-radius:2px;background:#e9e9e9;opacity:0;transform:scaleY(.55);transition:opacity .25s ease,transform .25s ease}.navigation .nav-link:hover{color:#f5f5f5;background:#ffffff06;transform:none}.navigation .nav-link.active{color:#f5f5f5;background:linear-gradient(90deg,#ffffff14,#ffffff04);transform:none}.navigation .nav-link.active span{color:#e6e6e6}.navigation .nav-link.active:before{opacity:1;transform:scaleY(1)}.navigation .nav-link:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 34%,rgba(255,255,255,.09) 50%,transparent 66%);opacity:0;transform:translate(-110%);transition:transform .65s ease,opacity .2s ease}.navigation .nav-link:hover:after,.navigation .nav-link:focus-visible:after{opacity:1;transform:translate(110%)}.sidebar-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-top:auto;padding:18px 8px 0;border-top:1px solid var(--divider-color);color:#b5b5b5;font:12px/1.6 Segoe UI,sans-serif;letter-spacing:0}.sidebar-wordmark{display:block;width:max-content;color:#f4f4f2;font:750 26px/1 Inter,Segoe UI,Arial,sans-serif;letter-spacing:-1.5px}.sidebar-wordmark span{color:#888}.sidebar .sidebar-bottom>.language-switch{justify-self:end;margin:0}.sidebar-social{display:flex;grid-column:1 / -1;align-items:center;gap:15px;margin-top:13px}.sidebar-social a{display:inline-flex;align-items:center;gap:5px;color:#a9a9a9;font:12px/1.5 Segoe UI,sans-serif;white-space:nowrap;transition:color .2s ease}.sidebar-social a:hover{color:#fff}.sidebar-social a:hover svg,.sidebar-social a:focus-visible svg{filter:drop-shadow(0 0 5px rgba(255,255,255,.4))}.sidebar-social a span:last-child{color:#858585;font-size:11px}.sidebar-social svg{width:14px;height:14px;flex:0 0 14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}}@media(min-width:701px)and (prefers-reduced-motion:no-preference){.navigation .nav-link{animation:sidebar-item-enter .48s cubic-bezier(.22,1,.36,1) both}.navigation .nav-link:nth-child(1){animation-delay:.08s}.navigation .nav-link:nth-child(2){animation-delay:.15s}.navigation .nav-link:nth-child(3){animation-delay:.22s}.navigation .nav-link:nth-child(4){animation-delay:.29s}.navigation .nav-link:nth-child(5){animation-delay:.36s}.navigation .nav-link:nth-child(6){animation-delay:.43s}}@keyframes sidebar-item-enter{0%{opacity:0;transform:translate(-7px)}to{opacity:1;transform:translate(0)}}@media(min-width:701px)and (max-height:620px){.sidebar{padding-top:20px;padding-bottom:16px}.sidebar-label{margin-top:25px;margin-bottom:8px}.navigation{gap:1px}.navigation .nav-link{min-height:34px;padding-top:6px;padding-bottom:6px}}@media(prefers-reduced-motion:reduce){.navigation .nav-link,.navigation .nav-link span,.navigation .nav-link:before,.navigation .nav-link:after,.sidebar-social a{transition:none;animation:none}}.identity-hover-logo{display:none}@media(min-width:701px)and (hover:hover){:is(.sidebar-identity,.topbar-identity){position:relative}:is(.sidebar-identity,.topbar-identity)>:is(img,span){transition:opacity .2s ease,transform .25s ease}.identity-hover-logo{position:absolute;top:50%;left:0;display:block;width:min(120px,100%);height:auto;overflow:visible;opacity:0;pointer-events:none;transform:translateY(calc(-50% + 4px)) scale(.97);transform-origin:left center;transition:opacity .2s ease,transform .3s ease}.sidebar-identity .identity-hover-logo{left:8px}.identity-logo-glyph{fill:#ededed}.identity-logo-glint{fill:none;stroke:var(--theme-accent, #fff);stroke-width:24px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:13 87;opacity:0;filter:drop-shadow(0 0 38px var(--theme-glow, rgba(255, 255, 255, .9)))}.identity-logo-dot{fill:var(--theme-accent, #929292);filter:drop-shadow(0 0 30px var(--theme-glow, rgba(255, 255, 255, .18)));transform-box:fill-box;transform-origin:center top}html[data-theme^=light] .identity-logo-glyph{fill:#262725}:is(.sidebar:hover .sidebar-identity,.topbar:hover .topbar-identity,html:is([data-nav-layout=top],[data-nav-layout=bottom]) .nav-settings:hover~main .topbar-identity,.sidebar-identity:focus-visible,.topbar-identity:focus-visible)>:is(img,span){opacity:0;transform:translateY(-3px)}:is(.sidebar:hover .sidebar-identity,.topbar:hover .topbar-identity,html:is([data-nav-layout=top],[data-nav-layout=bottom]) .nav-settings:hover~main .topbar-identity,.sidebar-identity:focus-visible,.topbar-identity:focus-visible) .identity-hover-logo{opacity:1;transform:translateY(-50%) scale(1)}}@media(min-width:701px)and (hover:hover)and (prefers-reduced-motion:no-preference){:is(.sidebar:hover .sidebar-identity,.topbar:hover .topbar-identity,html:is([data-nav-layout=top],[data-nav-layout=bottom]) .nav-settings:hover~main .topbar-identity,.sidebar-identity:focus-visible,.topbar-identity:focus-visible) .identity-logo-glyph{animation:preloader-ink .4s ease var(--letter-delay) both}html[data-theme^=light] :is(.sidebar:hover .sidebar-identity,.topbar:hover .topbar-identity,html:is([data-nav-layout=top],[data-nav-layout=bottom]) .nav-settings:hover~main .topbar-identity,.sidebar-identity:focus-visible,.topbar-identity:focus-visible) .identity-logo-glyph{animation-name:preloader-light-ink}:is(.sidebar:hover .sidebar-identity,.topbar:hover .topbar-identity,html:is([data-nav-layout=top],[data-nav-layout=bottom]) .nav-settings:hover~main .topbar-identity,.sidebar-identity:focus-visible,.topbar-identity:focus-visible) .identity-logo-glint{animation:preloader-trace .4s ease-in-out var(--letter-delay) both}:is(.sidebar:hover .sidebar-identity,.topbar:hover .topbar-identity,html:is([data-nav-layout=top],[data-nav-layout=bottom]) .nav-settings:hover~main .topbar-identity,.sidebar-identity:focus-visible,.topbar-identity:focus-visible) .identity-logo-dot{animation:preloader-bounce .4s cubic-bezier(.2,.7,.25,1) 1.45s both}}@media(prefers-reduced-motion:reduce){:is(.sidebar-identity,.topbar-identity)>:is(img,span,.identity-hover-logo){transition:none}}

.mobile-menu-toggle,.mobile-menu-backdrop,.mobile-profile{display:none}@media(max-width:700px){.mobile-nav-ready body{padding-top:64px}.mobile-nav-ready .sidebar{position:fixed;inset:0 0 auto;z-index:30;display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%;height:64px;padding:0 20px;border-right:0;border-bottom:1px solid var(--divider-color);background:#0a0a0ae8;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.mobile-nav-ready .sidebar .brand{display:none}.mobile-nav-ready .sidebar-identity{position:relative;z-index:3;display:flex;align-items:center;gap:10px;min-width:0;max-width:calc(100% - 52px);text-decoration:none}.mobile-nav-ready .sidebar-identity img{display:block;width:38px;height:38px;flex:0 0 38px;object-fit:cover;border:1px solid var(--divider-color);border-radius:50%}.mobile-nav-ready .sidebar-identity>span{display:flex;flex-direction:column;gap:2px;min-width:0}.mobile-nav-ready .sidebar-identity strong,.mobile-nav-ready .sidebar-identity small{overflow:hidden;font:11px/1.35 ui-monospace,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.mobile-nav-ready .sidebar-identity strong{color:#e5e5e5;font-size:12px}.mobile-nav-ready .sidebar-identity small{color:#a5a5a5}.mobile-nav-ready .hero .stage-name{display:none}.mobile-nav-ready .mobile-menu-toggle{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;height:44px;padding:0;border:0;border-radius:8px;color:#eee;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.mobile-menu-toggle span{display:block;width:21px;height:1.5px;border-radius:2px;background:currentColor;transition:transform .3s ease,opacity .2s ease}.mobile-menu-open .mobile-menu-toggle span:first-child{transform:translateY(6.5px) rotate(45deg)}.mobile-menu-open .mobile-menu-toggle span:nth-child(2){opacity:0}.mobile-menu-open .mobile-menu-toggle span:last-child{transform:translateY(-6.5px) rotate(-45deg)}.mobile-nav-ready .navigation{position:fixed;z-index:2;top:64px;right:0;left:0;display:flex;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 64px);margin:0;padding:12px 20px 22px;overflow:auto;border-bottom:1px solid var(--divider-color);background:#0c0c0cf7;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-10px);transition:opacity .28s ease,transform .35s cubic-bezier(.22,1,.36,1),visibility 0s .35s}.mobile-nav-ready .mobile-menu-open .navigation{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0);transition-delay:0s}.mobile-nav-ready .mobile-profile{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:4px 12px 12px;margin-bottom:6px;border-bottom:1px solid var(--divider-color)}.mobile-nav-ready .mobile-profile-photo,.mobile-nav-ready .mobile-profile-identity{display:none}.mobile-nav-ready .mobile-language-label{margin-right:auto;color:var(--theme-label, var(--muted));font:10px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.05em}.mobile-profile-photo{display:block;width:44px;height:44px;flex:0 0 44px;object-fit:cover;border:1px solid rgba(255,255,255,.24);border-radius:50%;filter:grayscale(100%)}.mobile-profile strong,.mobile-profile small{display:block}.mobile-profile strong{color:#dedede;font-size:13px;font-weight:600}.mobile-profile small{margin-top:3px;color:#999;font:10px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.05em;text-transform:uppercase}.mobile-nav-ready .navigation .nav-link{display:flex;align-items:center;gap:14px;min-height:48px;padding:11px 12px;border:0;border-radius:5px;color:#b4b4b4;background:transparent;font-size:14px;opacity:0;transform:translateY(7px);transition:opacity .32s ease,transform .38s cubic-bezier(.22,1,.36,1),color .2s ease,background .2s ease}.mobile-nav-ready .navigation .nav-link span{display:inline;width:23px;flex:0 0 23px;color:#888;font:11px/1.5 ui-monospace,Consolas,monospace}.mobile-nav-ready .navigation .nav-link.active{color:#f4f4f4;background:#fff1}.mobile-nav-ready .navigation .nav-link.active span{color:#ddd}.mobile-nav-ready .mobile-menu-open .nav-link{opacity:1;transform:translateY(0)}.mobile-menu-open .nav-link:nth-of-type(1){transition-delay:.04s}.mobile-menu-open .nav-link:nth-of-type(2){transition-delay:.08s}.mobile-menu-open .nav-link:nth-of-type(3){transition-delay:.12s}.mobile-menu-open .nav-link:nth-of-type(4){transition-delay:.16s}.mobile-menu-open .nav-link:nth-of-type(5){transition-delay:.2s}.mobile-menu-open .nav-link:nth-of-type(6){transition-delay:.24s}.mobile-menu-open .nav-link:nth-of-type(7){transition-delay:.28s}.mobile-nav-ready .mobile-menu-backdrop{position:fixed;z-index:1;top:64px;right:0;left:0;height:calc(100dvh - 64px);display:block;background:#00000094;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility 0s .3s}.mobile-nav-ready .mobile-menu-open .mobile-menu-backdrop{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.mobile-nav-ready .section{scroll-margin-top:78px}.mobile-nav-ready body.mobile-menu-lock{overflow:hidden}}@media(max-width:700px)and (prefers-reduced-motion:reduce){.mobile-menu-toggle span,.mobile-nav-ready .navigation,.mobile-nav-ready .navigation .nav-link,.mobile-nav-ready .mobile-menu-backdrop{transition:none!important;animation:none!important}}

html.wheel-scrolling{scroll-behavior:auto!important}

.experience-list .job,.featured-project,.expertise-feature{background-color:#121212a8}.experience-list .job:hover,.featured-project:hover,.expertise-feature:hover{background-color:#171717b8}.skill-group{background-color:#14141487}.skill-group:hover{background-color:#1b1b1ba3}.about-copy{background:linear-gradient(90deg,#08080894,#0808087a 92%,#0808082e)}.about .gpt-note{background:linear-gradient(145deg,#1d1d1db8,#0c0c0ca3)}.material-intro p,.contact-intro p,.featured-project-area p,.about-copy p,.gpt-body p{text-shadow:0 1px 6px rgba(0,0,0,.88)}.kicker,.scene-kicker,.contact-label,.featured-project-kicker,.featured-project-number,.featured-project-footer,.job-location{color:#ababab}.featured-project-area p{color:#bcbcbc}.experience-list .job .job-identity .job-company{color:#b9b9b9}.experience-list .job .job-identity .job-company .job-work-badge{color:#c7c7c7}

.desktop-sidebar-toggle{display:none}@media(min-width:701px){html.desktop-sidebar-ready .desktop-sidebar-toggle{position:fixed;z-index:20;top:27px;left:236px;display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid rgba(255,255,255,.15);border-radius:6px;background:#151515;color:#aaa;cursor:pointer;transition:left .35s cubic-bezier(.22,1,.36,1),color .2s,border-color .2s,background .2s}.desktop-sidebar-toggle:hover,.desktop-sidebar-toggle:focus-visible{color:#f5f5f5;border-color:#777;background:#222}.desktop-sidebar-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.desktop-sidebar-toggle .sidebar-open-icon{display:none}html.desktop-sidebar-ready .shell{transition:grid-template-columns .35s cubic-bezier(.22,1,.36,1)}html.desktop-sidebar-ready .sidebar{width:228px;overflow:hidden;transition:opacity .25s ease,transform .35s cubic-bezier(.22,1,.36,1),visibility 0s linear .35s}html.desktop-sidebar-collapsed .shell{grid-template-columns:0 minmax(0,1fr);max-width:none}html.desktop-sidebar-collapsed .sidebar{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-16px)}html.desktop-sidebar-ready:not(.desktop-sidebar-collapsed) .sidebar{visibility:visible;transition-delay:0s}html.desktop-sidebar-collapsed .desktop-sidebar-toggle{left:16px}html.desktop-sidebar-collapsed .desktop-sidebar-toggle .sidebar-close-icon{display:none}html.desktop-sidebar-collapsed .desktop-sidebar-toggle .sidebar-open-icon{display:block}html.desktop-sidebar-collapsed .topbar{padding-left:max(62px,5.3%)}}@media(min-width:701px)and (max-height:620px){html.desktop-sidebar-ready .desktop-sidebar-toggle{top:17px}}@media(prefers-reduced-motion:reduce){html.desktop-sidebar-ready .shell,html.desktop-sidebar-ready .sidebar,html.desktop-sidebar-ready .desktop-sidebar-toggle{transition:none}}

.nav-settings,.topbar-identity,.topbar-social{display:none}@keyframes nav-settings-appear{0%{opacity:0;transform:scale(.98)}}html.nav-initializing .shell,html.nav-initializing .sidebar{transition:none!important}@media(min-width:701px){.nav-settings{display:block;position:fixed;z-index:40;top:27px;right:max(22px,calc((100vw - 1800px)/2 + 22px));font-family:Inter,Segoe UI,Arial,sans-serif}.nav-settings-toggle{display:grid;place-items:center;width:32px;height:32px;padding:0;background:var(--theme-accent, #eaeae7);color:#1b1b1b;border:1px solid transparent;border-radius:6px;cursor:pointer;transition:color .2s,background .2s,border-color .2s}.nav-settings-toggle:hover,.nav-settings-toggle:focus-visible,.nav-settings-toggle[aria-expanded=true]{color:#111;background:#fff;border-color:transparent}.nav-settings-toggle:focus-visible{outline:2px solid var(--theme-accent, #eee);outline-offset:3px}.nav-settings-toggle svg{width:15px;height:15px;fill:currentColor}.nav-settings-panel{position:absolute;top:42px;right:0;width:264px;max-height:calc(100dvh - 90px);padding:14px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--divider-color, #3b3b3b);border-radius:10px;background:#121212f7;box-shadow:0 16px 36px #0009;color:#eee;transform-origin:top right;animation:nav-settings-appear .2s ease both}.nav-settings-panel[hidden]{display:none}.nav-settings-label{margin:0 0 9px;color:#999;font:11px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.04em}.nav-settings-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.nav-settings-choice{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:7px;width:100%;min-height:77px;padding:9px 10px;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#ffffff06;color:#bbb;font:12px/1.4 Inter,Segoe UI,Arial,sans-serif;text-align:left;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.nav-settings-choice:hover{background:#fff1;border-color:#ffffff38;color:#f3f3f3}.nav-settings-choice:focus-visible{outline:2px solid var(--theme-accent, #eee);outline-offset:2px}.nav-settings-choice[aria-pressed=true]{background:#ffffff14;border-color:var(--theme-glow, rgba(255, 255, 255, .38));color:#f3f3f3}.nav-settings-choice:after{content:"";position:absolute;top:11px;right:12px;width:8px;height:5px;border-bottom:1.5px solid var(--theme-accent, #eee);border-left:1.5px solid var(--theme-accent, #eee);opacity:0;transform:rotate(-45deg)}.nav-settings-choice[aria-pressed=true]:after{opacity:1}.nav-layout-preview{width:50px;height:32px;flex:none}.nav-preview-frame{fill:var(--theme-bg, #101010);stroke:#ffffff45}.nav-preview-menu{fill:none;stroke:#777;stroke-linecap:round;stroke-width:4;transition:stroke .2s ease}.nav-preview-lines{fill:none;stroke:#ffffff54;stroke-linecap:round;stroke-width:1.2}.nav-settings-choice:hover .nav-preview-menu{stroke:#d2d2d2}.nav-settings-choice[aria-pressed=true] .nav-preview-menu{stroke:var(--theme-accent, #eee)}.nav-settings-panel .theme-options{justify-content:space-between}html[data-nav-layout=side] .shell{max-width:none}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .shell{grid-template-columns:0 minmax(0,1fr);max-width:none}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .sidebar{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-16px)}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .desktop-sidebar-toggle{display:none}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar{position:sticky;top:0;z-index:8;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding:0 5.3%;background:transparent;transition:background-color .25s ease,backdrop-filter .25s ease}html:is([data-nav-layout=top],[data-nav-layout=bottom]).topbar-over-content .topbar{background:#080808e0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .section{scroll-margin-top:69px}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .current-section{display:none}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .stage-name,html[data-nav-layout=side]:not(.desktop-sidebar-collapsed) .stage-name,html[data-nav-layout=right]:not(.desktop-sidebar-collapsed) .stage-name{display:none}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar-identity{grid-column:1;grid-row:1;display:flex;align-items:center;gap:9px;min-width:0;width:max-content;max-width:100%;color:#e5e5e5;letter-spacing:.02em;text-transform:none}.topbar-identity img{display:block;width:38px;height:38px;flex:0 0 38px;border:1px solid var(--divider-color);border-radius:50%;object-fit:cover}.topbar-identity span{display:flex;min-width:0;flex-direction:column;gap:2px}.topbar-identity strong,.topbar-identity small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:11px/1.35 ui-monospace,Consolas,monospace}.topbar-identity strong{color:#e5e5e5}.topbar-identity small{color:#a5a5a5}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar-social{grid-column:3;grid-row:1;display:flex;align-items:center;justify-self:end;gap:8px;margin-right:42px}.topbar-social a{display:grid;place-items:center;width:30px;height:30px;color:#aaa;border-radius:5px;transition:color .2s,background .2s}.topbar-social a:hover,.topbar-social a:focus-visible{color:#fff;background:#ffffff0b}.topbar-social>a svg{display:block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .nav-settings{top:18px;right:5.3%}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar .navigation{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;gap:clamp(4px,1.5vw,22px);margin:0;min-width:0}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar .nav-link{min-height:36px;padding:8px 6px;border-radius:0;background:none;color:#aaa;font:13px/1.4 Inter,Segoe UI,Arial,sans-serif;white-space:nowrap;animation:none;transform:none}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar .nav-link span{display:none}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar .nav-link:before{inset:auto 6px 2px;width:auto;height:1px;transform:scaleX(.5)}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar .nav-link.active:before{transform:scaleX(1)}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar .nav-link:hover,html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar .nav-link.active{color:#f1f1f1;background:none}}@media(min-width:701px)and (max-width:1100px){.nav-settings{right:12px}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar{height:108px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:56px 52px;gap:0;padding:0 5.3%}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .section{scroll-margin-top:108px}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar-identity{grid-column:1;grid-row:1}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar-social{grid-column:2;grid-row:1}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .nav-settings{top:12px;right:5.3%}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar .navigation{grid-column:1 / -1;grid-row:2;gap:4px}html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar .nav-link{padding-left:5px;padding-right:5px;font-size:12px}}@media(min-width:701px)and (max-height:620px){.nav-settings{top:17px}}@media(prefers-reduced-motion:reduce){.nav-settings-panel{animation:none}.nav-settings-toggle,.nav-settings-choice,.nav-preview-menu,html:is([data-nav-layout=top],[data-nav-layout=bottom]) .topbar,.topbar-social a{transition:none}}@media(min-width:701px){html[data-nav-layout=right] .shell{grid-template-columns:minmax(0,1fr) 228px;max-width:none}html[data-nav-layout=right] .sidebar{grid-column:2;grid-row:1;border-right:0;border-left:1px solid var(--divider-color)}html[data-nav-layout=right] .shell>main{grid-column:1;grid-row:1}html[data-nav-layout=right] .topbar{padding-left:max(62px,5.3%)}html[data-nav-layout=right] .nav-settings{left:22px;right:auto}html[data-nav-layout=right] .nav-settings-panel{left:0;right:auto;transform-origin:top left}html[data-nav-layout=right] .desktop-sidebar-toggle{left:auto;right:236px}html[data-nav-layout=right] .desktop-sidebar-toggle svg{transform:scaleX(-1)}html[data-nav-layout=right].desktop-sidebar-collapsed .shell{grid-template-columns:minmax(0,1fr) 0}html[data-nav-layout=right].desktop-sidebar-collapsed .sidebar{width:0;min-width:0;padding-right:0;padding-left:0;border:0;transform:translate(-16px)}html[data-nav-layout=right].desktop-sidebar-collapsed .desktop-sidebar-toggle{left:auto;right:16px}html[data-nav-layout=right].desktop-sidebar-collapsed .topbar{padding-right:max(62px,5.3%)}html[data-nav-layout=bottom] .topbar{position:fixed;inset:auto 0 0;border-top:1px solid var(--divider-color);border-bottom:0;background:#080808f0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}html[data-nav-layout=bottom] .shell>main{padding-bottom:85px}html[data-nav-layout=bottom] .nav-settings{inset:auto 5.3% 18px auto}html[data-nav-layout=bottom] .nav-settings-panel{top:auto;bottom:42px;transform-origin:bottom right;max-height:calc(100dvh - 85px);overflow-y:auto}}@media(min-width:701px)and (max-width:1100px){html[data-nav-layout=bottom] .shell>main{padding-bottom:124px}html[data-nav-layout=bottom] .nav-settings{top:auto;right:5.3%;bottom:64px}html[data-nav-layout=bottom] .nav-settings-panel{max-height:calc(100dvh - 130px)}}@media(min-width:701px){html[data-nav-layout=bottom] .section{scroll-margin-top:20px}}@media(min-width:851px)and (max-width:1100px){html[data-nav-layout] .workspace-scene{right:5.3%}}@media(min-width:851px)and (max-width:1000px){html:is([data-nav-layout=side],[data-nav-layout=right]):not(.desktop-sidebar-collapsed) .hero{min-height:0}html:is([data-nav-layout=side],[data-nav-layout=right]):not(.desktop-sidebar-collapsed) .hero-content{max-width:100%}html:is([data-nav-layout=side],[data-nav-layout=right]):not(.desktop-sidebar-collapsed) .workspace-scene{position:relative;top:auto;right:auto;width:100%;height:auto;opacity:1;transform:none!important}html:is([data-nav-layout=side],[data-nav-layout=right]):not(.desktop-sidebar-collapsed) .workspace-composition{position:relative;inset:auto;width:100%;max-width:410px;margin:28px auto 0}html:is([data-nav-layout=side],[data-nav-layout=right]):not(.desktop-sidebar-collapsed) .workspace-backdrop{inset:0;opacity:.55}html:is([data-nav-layout=side],[data-nav-layout=right]):not(.desktop-sidebar-collapsed) .hero-footer{margin-top:28px}}

.language-switch{display:inline-flex;flex:none}.language-toggle,.topbar .language-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:4px 5px;border:1px solid transparent;border-radius:5px;background:transparent;color:#ddd;font:11px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.03em;cursor:pointer;transition:color .2s,background .2s,border-color .2s}.language-toggle:hover,.language-toggle:focus-visible,.language-toggle[aria-expanded=true],.topbar .language-toggle:hover,.topbar .language-toggle:focus-visible,.topbar .language-toggle[aria-expanded=true]{color:#fff;background:#ffffff0f;border-color:#ffffff21}.language-flag{display:block;flex:none;width:21px;height:14px;border-radius:2px}.language-chevron{display:block;width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}.language-toggle[aria-expanded=true] .language-chevron{transform:rotate(180deg)}.sidebar-bottom .language-switch{margin-top:9px}.topbar-social .language-switch{margin-right:4px}@media(max-width:700px){.mobile-profile .language-switch{margin-left:auto}}@media(min-width:701px)and (max-height:620px){.sidebar-bottom .language-switch{margin-top:4px}}.language-panel{position:fixed;z-index:60;width:214px;padding:12px;border:1px solid #3b3b3b;border-radius:8px;background:#121212fa;box-shadow:0 16px 36px #0009;color:#eee;font-family:Inter,Segoe UI,Arial,sans-serif}.language-panel[hidden]{display:none}.language-panel-label{margin:0 0 8px;color:#999;font:11px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.04em}.language-option{display:flex;align-items:center;gap:10px;width:100%;min-height:39px;padding:8px;border:0;border-radius:4px;background:transparent;color:#c9c9c9;font:13px/1.4 Inter,Segoe UI,Arial,sans-serif;text-align:left}.language-option-current{background:#292929;color:#f3f3f3;cursor:pointer}.language-option:not(:disabled){cursor:pointer}.language-option:not(:disabled):not(.language-option-current):hover,.language-option:not(:disabled):not(.language-option-current):focus-visible{background:#80808024}.language-option-current:hover,.language-option-current:focus-visible{background:#333;color:#fff}.language-check{margin-left:auto;color:#eee}.language-option:not(.language-option-current) .language-check{display:none}@media(prefers-reduced-motion:reduce){.language-toggle,.language-chevron{transition:none}}

.contact-card{position:relative;isolation:isolate;min-width:0;padding:14px;border:1px solid var(--divider-color);border-radius:6px;background:#121212a3;overflow:hidden;transition:border-color .3s ease,background .3s ease,transform .3s ease}.contact-card:before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;background:linear-gradient(120deg,transparent 28%,rgba(255,255,255,.08) 48%,transparent 68%);transform:translate(-115%);pointer-events:none}.contact-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.contact-card-kicker,.contact-card-qr-label{color:#aaa;font:11px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.05em}.contact-card-brand{color:#ededed;font-size:20px;font-weight:750;letter-spacing:-1.2px;line-height:1}.contact-card-brand span{color:#888}.contact-card-body{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:10px;align-items:center}.contact-card-copy{min-width:0}.contact-card-name,.contact-card-role{display:block}.contact-card-name{color:#e9e9e9;font-size:14px;line-height:1.5;font-weight:650}.contact-card-role{margin-top:3px;color:#aaa;font-size:12px;line-height:1.5}.contact-card-links{display:flex;flex-wrap:wrap;gap:3px;margin-top:10px}.contact-card-links a{display:grid;place-items:center;width:24px;height:24px;border-radius:4px;color:#a9a9a9;transition:color .2s ease,background .2s ease}.contact-card-links a:hover,.contact-card-links a:focus-visible{color:#fff;background:#ffffff0e}.contact-card-links svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.contact-card-download{display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:#ddd;font-size:12px;line-height:1.5;transition:color .2s ease}.contact-card-download span{display:inline-block;transition:transform .25s ease}.contact-card-download:hover,.contact-card-download:focus-visible{color:#fff}.contact-card-download:hover span,.contact-card-download:focus-visible span{transform:translate(3px,-3px)}.contact-card-qr{text-align:center}.contact-card-qr-code{position:relative;width:162px;max-width:100%;margin-inline:auto}.contact-card-qr-image{display:block;width:100%;height:auto;aspect-ratio:1;border-radius:4px;background:#fff}.contact-card-qr-mark{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:18.52%;aspect-ratio:1;padding:1.85%;border-radius:6px;background:#fff;transform:translate(-50%,-50%);pointer-events:none}.contact-card-qr-mark img{display:block;width:100%;height:100%}.contact-card-qr-label{display:block;margin-top:7px;font-size:9px;letter-spacing:.02em}.contact-resources{min-width:0;container:contact-resources / inline-size}.contact-resources-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;justify-content:end}.cv-card{min-width:0;min-height:124px;padding:14px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;border:1px solid var(--divider-color);border-radius:6px;background:#121212a3;transition:border-color .3s ease,background .3s ease}.cv-card-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(255,255,255,.14);border-radius:5px;color:#bbb}.cv-card-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.cv-card-kicker{display:block;color:#999;font:10px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.05em}.cv-card-title{display:block;margin-top:4px;color:#e9e9e9;font-size:14px;line-height:1.4;font-weight:650}.cv-card-person{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.cv-card-person img{width:40px;height:40px;flex:none;object-fit:cover;border-radius:50%;border:1px solid rgba(255,255,255,.18);filter:grayscale(1)}.cv-card-person div{min-width:0}.cv-card-person strong,.cv-card-person span{display:block}.cv-card-person strong{color:#dedede;font-size:12px;font-weight:600;line-height:1.4}.cv-card-person span{margin-top:2px;color:#999;font-size:10px;line-height:1.4}.cv-card-action{display:inline-flex;align-items:center;gap:12px;margin-top:auto;min-height:40px;padding:8px 12px;border:1px solid var(--divider-color);border-radius:4px;background:#ffffff09;color:var(--text);font:inherit;font-size:12px;line-height:1.3;cursor:pointer;text-decoration:none;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.cv-card-action span{color:currentColor}.cv-card-action:hover,.cv-card-action:focus-visible{border-color:currentColor}.cv-card-action:focus-visible{outline:2px solid currentColor;outline-offset:3px}@container contact-resources (min-width: 490px){.contact-resources-layout{grid-template-columns:minmax(330px,420px) minmax(140px,175px)}}@media(min-width:1351px){.contact{grid-template-columns:minmax(0,1fr) minmax(220px,.8fr) minmax(270px,.95fr)}}@media(min-width:701px)and (max-width:1350px){.contact-intro{grid-column:1;grid-row:1}.contact-details{grid-column:2;grid-row:1}.contact-resources{grid-column:1 / -1;grid-row:2}}@media(max-width:700px){.contact-resources{width:100%}.contact-card-body{grid-template-columns:minmax(0,1fr) 180px}}@media(max-width:480px){.contact-card-body{grid-template-columns:minmax(0,1fr);gap:18px}.contact-card-qr{justify-self:center}.contact-card-name{font-size:13px}}@media(hover:hover){.contact-card:hover{border-color:#ffffff4d;background:#171717b3;transform:translateY(-2px)}.contact-card:hover:before{transform:translate(115%);transition:transform 1.2s ease}.cv-card:hover{border-color:#ffffff40;background:#171717b3}}@media(prefers-reduced-motion:reduce){.contact-card,.contact-card:before,.contact-card-links a,.contact-card-download,.contact-card-download span,.cv-card-action,.cv-card{transition:none!important;animation:none!important}}.contact-resources-layout{max-width:595px;margin-left:auto;gap:0;justify-content:stretch;overflow:hidden;border:1px solid var(--divider-color);border-radius:6px;background:#121212a3;transition:border-color .3s ease,background .3s ease}.contact-resources-layout .contact-card,.contact-resources-layout .cv-card{border:0;border-radius:0;background:transparent}.contact-resources-layout .cv-card{border-top:1px solid var(--divider-color)}@container contact-resources (min-width: 490px){.contact-resources-layout{grid-template-columns:minmax(0,1fr) minmax(140px,175px)}.contact-resources-layout .cv-card{border-top:0;border-left:1px solid var(--divider-color)}}@media(hover:hover){.contact-resources-layout:hover{border-color:#ffffff4d;background:#171717b3}.contact-resources-layout .contact-card:hover{background:transparent;transform:none}.contact-resources-layout .cv-card:hover{background:transparent}}@media(prefers-reduced-motion:reduce){.contact-resources-layout{transition:none!important}}.contact-resources-header{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-bottom:1px solid var(--divider-color)}.contact-resources-person{display:flex;align-items:center;gap:10px;min-width:0}.contact-resources-person img{width:40px;height:40px;flex:none;object-fit:cover;border:1px solid rgba(255,255,255,.18);border-radius:50%;filter:grayscale(1)}.contact-resources-person strong,.contact-resources-person span{display:block}.contact-resources-person strong{color:#e9e9e9;font-size:13px;font-weight:650;line-height:1.4}.contact-resources-person span{margin-top:2px;color:#aaa;font-size:11px;line-height:1.4}.contact-card-body{grid-template-columns:minmax(0,1fr) 162px}@media(max-width:700px){.contact-card-body{grid-template-columns:minmax(0,1fr) 162px}}@media(max-width:480px){.contact-card-body{grid-template-columns:minmax(0,1fr)}}

::selection{background-color:var(--theme-accent, #ddd);color:var(--theme-button-text, #111)}.primary::selection{background-color:#111;color:var(--theme-accent, #ededeb)}.theme-picker-mobile{display:none}.theme-picker-desktop{margin-top:12px;padding-top:13px;border-top:1px solid var(--divider-color)}.theme-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#999;font:10px/1.4 ui-monospace,Consolas,monospace;letter-spacing:.04em}.theme-picker-heading [data-theme-current]{color:#d5d5d5;font:11px/1.4 Inter,Segoe UI,Arial,sans-serif;letter-spacing:0}.theme-options{display:grid;grid-template-columns:repeat(5,30px);align-items:center;gap:7px;margin-top:10px}.theme-option{position:relative;display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;cursor:pointer;transition:border-color .2s ease,transform .2s ease}.theme-option:before{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--swatch)}.theme-option:after{content:"";position:relative;width:8px;height:5px;margin-top:-2px;border-left:1.5px solid #fff;border-bottom:1.5px solid #fff;opacity:0;transform:rotate(-45deg);filter:drop-shadow(0 1px 2px #000)}.theme-option[aria-pressed=true]:after{opacity:1}.theme-option:focus-visible{outline:2px solid #fff;outline-offset:2px}.theme-auto{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:34px;margin-top:10px;padding:7px 9px;border:1px solid var(--divider-color);border-radius:5px;background:#ffffff06;color:#bbb;cursor:pointer;font:12px/1.3 Inter,Segoe UI,Arial,sans-serif;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.theme-auto-name{display:inline-flex;align-items:center;gap:7px}.theme-auto-name svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.theme-auto-status{color:#909090;font:10px/1.3 ui-monospace,Consolas,monospace}.theme-auto[aria-pressed=true]{border-color:var(--theme-glow, rgba(255, 255, 255, .3));background:var(--theme-soft, rgba(255, 255, 255, .075));color:#eee}.theme-auto[aria-pressed=true] .theme-auto-status{color:var(--theme-accent, #ddd)}.theme-auto:focus-visible{outline:2px solid var(--theme-accent, #eee);outline-offset:2px}@media(min-width:701px)and (hover:hover){.theme-option:hover{transform:translateY(-2px)}.theme-auto:hover{border-color:var(--theme-glow, rgba(255, 255, 255, .3))}}.theme-option[data-theme-choice=monochrome]{--swatch: linear-gradient(135deg, #202020 48%, #ddd 49%)}.theme-option[data-theme-choice=midnight]{--swatch: linear-gradient(135deg, #172b42 48%, #8bbbf2 49%)}.theme-option[data-theme-choice=emerald]{--swatch: linear-gradient(135deg, #18352a 48%, #70cfa8 49%)}.theme-option[data-theme-choice=copper]{--swatch: linear-gradient(135deg, #38271c 48%, #d7a878 49%)}.theme-option[data-theme-choice=bordeaux]{--swatch: linear-gradient(135deg, #3b1a20 48%, #c86a73 49%)}html[data-theme=midnight]{--theme-bg: #090d14;--theme-side: rgba(11, 17, 27, .97);--theme-surface: rgba(22, 32, 46, .68);--theme-elevated: rgba(31, 44, 61, .85);--theme-editor: rgba(10, 17, 28, .86);--theme-accent: #9fc7f5;--theme-soft: rgba(139, 187, 242, .14);--theme-glow: rgba(139, 187, 242, .4);--theme-code-filter: sepia(.12) hue-rotate(155deg) saturate(1.08);--divider-color: rgba(160, 190, 225, .22)}html[data-theme=emerald]{--theme-bg: #090f0d;--theme-side: rgba(10, 21, 16, .97);--theme-surface: rgba(20, 38, 29, .68);--theme-elevated: rgba(29, 51, 39, .85);--theme-editor: rgba(10, 24, 17, .86);--theme-accent: #8bdcb9;--theme-soft: rgba(112, 207, 168, .14);--theme-glow: rgba(112, 207, 168, .4);--theme-code-filter: sepia(.12) hue-rotate(75deg) saturate(1.08);--divider-color: rgba(142, 204, 173, .22)}html[data-theme=copper]{--theme-bg: #100c0a;--theme-side: rgba(24, 17, 13, .97);--theme-surface: rgba(42, 29, 21, .68);--theme-elevated: rgba(56, 40, 29, .85);--theme-editor: rgba(26, 18, 13, .86);--theme-accent: #e7bc90;--theme-soft: rgba(215, 168, 120, .14);--theme-glow: rgba(215, 168, 120, .4);--theme-code-filter: sepia(.15) saturate(1.08);--divider-color: rgba(213, 176, 143, .22)}html[data-theme=bordeaux]{--theme-bg: #0d090a;--theme-side: rgba(24, 13, 16, .97);--theme-surface: rgba(43, 23, 27, .68);--theme-elevated: rgba(58, 31, 36, .85);--theme-editor: rgba(27, 13, 17, .86);--theme-accent: #e9a0a7;--theme-soft: rgba(200, 106, 115, .15);--theme-glow: rgba(200, 106, 115, .44);--theme-code-filter: sepia(.14) hue-rotate(310deg) saturate(1.08);--divider-color: rgba(220, 150, 157, .22)}html[data-theme]:not([data-theme=monochrome]) body{background:var(--theme-bg)}html[data-theme]:not([data-theme=monochrome]) .sidebar{background:var(--theme-side)}html[data-theme]:not([data-theme=monochrome]) :is(.expertise-feature,.skill-group,.experience-list .job,.featured-project,.contact-resources-layout,.gpt-note){background:var(--theme-surface);border-color:var(--divider-color)}html[data-theme]:not([data-theme=monochrome]) :is(.expertise-feature,.skill-group,.experience-list .job):hover{background:var(--theme-elevated);border-color:var(--theme-glow)}html[data-theme]:not([data-theme=monochrome]) :is(.hero-editor,.scene-window){background:var(--theme-editor);border-color:var(--divider-color)}html[data-theme]:not([data-theme=monochrome]) :is(.nav-settings-panel,.language-panel){background:var(--theme-side);border-color:var(--divider-color)}html[data-theme]:not([data-theme=monochrome]) :is(.nav-settings-choice[aria-pressed=true],.language-option-current,.sidebar .navigation .nav-link.active){background:var(--theme-soft)}html[data-theme]:not([data-theme=monochrome]) :is(.navigation .nav-link.active:before,.workspace-step.is-active:after,.workspace-step.is-complete:after,.progress span){background:var(--theme-accent)}html[data-theme]:not([data-theme=monochrome]) :is(.workspace-indicator,.status-light,.world-status){background:var(--theme-accent);box-shadow:0 0 9px var(--theme-glow)}html[data-theme]:not([data-theme=monochrome]) :is(.kicker,.scene-kicker,.featured-project-kicker,.featured-project-number){color:var(--theme-label, var(--theme-accent))}html[data-theme]:not([data-theme=monochrome]) .primary{background:var(--theme-accent);color:var(--theme-button-text, #101010)}html[data-theme]:not([data-theme=monochrome]) .primary:hover{background:#f1f1f1;color:#101010}html[data-theme]:not([data-theme=monochrome]) .editor-border-light rect{stroke:var(--theme-accent);filter:drop-shadow(0 0 4px var(--theme-glow))}html[data-theme]:not([data-theme=monochrome]) :is(.world-route-trace,.world-origin-ring,.contact-signal-trace){stroke:var(--theme-accent)}html[data-theme]:not([data-theme=monochrome]) :is(.world-origin,.world-destination,.contact-signal-origin){fill:var(--theme-accent)}html[data-theme]:not([data-theme=monochrome]) #code-field{filter:var(--theme-code-filter)}@media(min-width:701px){html[data-theme]:not([data-theme=monochrome])[data-nav-layout=top].topbar-over-content .topbar{background:var(--theme-side)}}@media(min-width:701px){html[data-nav-layout=bottom][data-theme]:not([data-theme=monochrome]) .topbar{background:var(--theme-side)}}@media(max-width:700px){.mobile-nav-ready .navigation .theme-picker-mobile{display:block;margin:14px 12px 0;padding-top:15px;border-top:1px solid var(--divider-color)}.theme-picker-mobile .theme-options{gap:11px}html.mobile-nav-ready[data-theme]:not([data-theme=monochrome]) .sidebar,html.mobile-nav-ready[data-theme]:not([data-theme=monochrome]) .navigation{background:var(--theme-side)}}@media(prefers-reduced-motion:reduce){.theme-option,.theme-auto{transition:none}}

.arrow-ne{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:12px;height:12px;line-height:1;vertical-align:-.08em}.arrow-ne svg{display:block;flex:none;width:100%;height:100%;color:inherit;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}:is(.sidebar-social,.topbar-social,.contact-profile-links,.contact-card-links) a>svg.social-brand-icon{fill:currentColor;stroke:none}

.theme-option[data-theme-choice=light]{--swatch: linear-gradient(135deg, #f2f2ed 48%, #353533 49%)}.theme-option[data-theme-choice=light-midnight]{--swatch: linear-gradient(135deg, #eef5fb 48%, #789dc2 49%)}.theme-option[data-theme-choice=light-emerald]{--swatch: linear-gradient(135deg, #edf7ef 48%, #75ae92 49%)}.theme-option[data-theme-choice=light-copper]{--swatch: linear-gradient(135deg, #fbf2e8 48%, #c49a70 49%)}.theme-option[data-theme-choice=light-bordeaux]{--swatch: linear-gradient(135deg, #fbf0f1 48%, #bf838b 49%)}.theme-option[data-theme-choice^=light]:before{box-shadow:inset 0 0 0 1px #2d2d2d24}html[data-theme^=light]{color-scheme:light;--light-bg-rgb: 243, 243, 240;--bg: var(--theme-bg);--text: #222221;--muted: #62625f;--line: rgba(37, 37, 35, .2);--theme-bg: rgb(var(--light-bg-rgb));--theme-side: rgba(247, 247, 244, .97);--theme-surface: rgba(255, 255, 253, .55);--theme-elevated: rgba(255, 255, 253, .68);--theme-editor: rgba(19, 20, 20, .97);--theme-accent: #292a29;--theme-hover: #444540;--theme-button-text: #f9f9f6;--theme-label: #5f605c;--theme-soft: rgba(42, 43, 40, .07);--theme-glow: rgba(38, 39, 36, .26);--theme-code-filter: invert(1) hue-rotate(180deg);--light-band: rgba(232, 233, 228, .55);--light-shimmer-rim: rgba(45, 47, 45, .15);--light-shimmer-core: rgba(255, 255, 255, .75);--divider-color: rgba(45, 46, 43, .2)}html[data-theme=light-midnight]{--light-bg-rgb: 238, 243, 248;--theme-side: rgba(245, 249, 252, .97);--theme-accent: #284f72;--theme-hover: #386589;--theme-label: #526b80;--theme-soft: rgba(40, 79, 114, .09);--theme-glow: rgba(40, 79, 114, .3);--light-band: rgba(215, 229, 241, .5);--light-shimmer-rim: rgba(40, 79, 114, .15);--divider-color: rgba(53, 79, 101, .22)}html[data-theme=light-emerald]{--light-bg-rgb: 238, 245, 240;--theme-side: rgba(246, 250, 247, .97);--theme-accent: #285d48;--theme-hover: #39765d;--theme-label: #527364;--theme-soft: rgba(40, 93, 72, .09);--theme-glow: rgba(40, 93, 72, .3);--light-band: rgba(218, 234, 223, .5);--light-shimmer-rim: rgba(40, 93, 72, .15);--divider-color: rgba(50, 83, 67, .22)}html[data-theme=light-copper]{--light-bg-rgb: 246, 240, 233;--theme-side: rgba(251, 247, 242, .97);--theme-accent: #775136;--theme-hover: #93694b;--theme-label: #806b57;--theme-soft: rgba(119, 81, 54, .09);--theme-glow: rgba(119, 81, 54, .3);--light-band: rgba(237, 224, 210, .5);--light-shimmer-rim: rgba(119, 81, 54, .15);--divider-color: rgba(97, 75, 57, .22)}html[data-theme=light-bordeaux]{--light-bg-rgb: 247, 239, 240;--theme-side: rgba(252, 247, 248, .97);--theme-accent: #843f4a;--theme-hover: #9d5862;--theme-label: #806067;--theme-soft: rgba(132, 63, 74, .09);--theme-glow: rgba(132, 63, 74, .3);--light-band: rgba(240, 222, 225, .5);--light-shimmer-rim: rgba(132, 63, 74, .15);--divider-color: rgba(102, 65, 71, .22)}html[data-theme^=light] ::selection{background:var(--theme-accent);color:var(--theme-button-text)}html[data-theme^=light] :is(.primary,.hero-editor,.scene-window)::selection,html[data-theme^=light] :is(.primary,.hero-editor,.scene-window) *::selection{background:#e7e7e1;color:#171717}html[data-theme^=light] #code-field{opacity:.7}html[data-theme^=light] .noise{opacity:.12;background:repeating-linear-gradient(0deg,transparent 0 3px,#0000000b 4px)}html[data-theme^=light] :is(.hero-content,.material-intro p,.contact-intro p,.featured-project-area p,.about-copy p,.gpt-body p){text-shadow:none}html[data-theme^=light] :is(h1,h2,h3,h4,.hero-lead,.expertise-story h3,.featured-project-top h3,.featured-project-area h4){color:#202120}html[data-theme^=light] :is(.rotating-wrap,.period,.hero-footer,.section-heading>p,.skills-heading>p,.skills-note){color:#666763}html[data-theme^=light] :is(.intro,.text-link,.scene-lead,.scene-points li,.featured-project-lead,.featured-project-area p,.about-copy p:not(.story-kicker),.material-intro p:not(.kicker),.contact-intro p){color:#4e504d}html[data-theme^=light] :is(.kicker,.scene-kicker,.scene-kicker span,.featured-project-kicker,.featured-project-number,.contact-label,.story-kicker){color:var(--theme-label)}html[data-theme^=light] :is(.hero-identity-name,.topbar-identity strong,.sidebar-identity strong,.mobile-profile strong){color:#252625}html[data-theme^=light] :is(.hero-identity-role,.topbar-identity small,.sidebar-identity small,.mobile-profile small){color:#666763}html[data-theme^=light] .hero-source{color:#505451}html[data-theme^=light] .hero-token-key{color:#7143a5}html[data-theme^=light] .hero-token-var{color:#176972}html[data-theme^=light] .hero-token-string{color:#984525}html[data-theme^=light] .hero-token-func{color:#765608}html[data-theme^=light] .hero-token-tag{color:#1f5e89}html[data-theme^=light] .hero-token-number{color:#286e45}html[data-theme^=light] .hero-actions .primary:hover{background:var(--theme-hover);color:#fff}html[data-theme^=light] .workspace-label,html[data-theme^=light] .workspace-step,html[data-theme^=light] .workspace-disciplines{color:#656660}html[data-theme^=light] :is(.workspace-label>span:last-child,.workspace-step.is-active,.workspace-step.is-complete,.workspace-check,.workspace-disciplines .is-active,.workspace-disciplines .is-complete){color:#242523;text-shadow:none}html[data-theme^=light] :is(.workspace-step.is-active b,.workspace-step.is-complete b){color:#5a5b56}html[data-theme^=light] .workspace-step:before{background:#23242233}html[data-theme^=light] .hero-editor,html[data-theme^=light] .scene-window{background:var(--theme-editor);border-color:#3c3c3b;box-shadow:0 12px 35px #1e1e1921}html[data-theme^=light] :is(.workspace-bar,.workspace-status,.window-bar,.editor-status){border-color:#ffffff24}html[data-theme^=light] .editor-border-light rect{stroke:#efefea;filter:drop-shadow(0 0 4px rgba(255,255,255,.55))}html[data-theme^=light] .hero-editor .workspace-indicator,html[data-theme^=light] .scene-window .status-light{background:#aac5b4;box-shadow:0 0 8px #aac5b473}html[data-theme^=light] :is(.brand,.sidebar-wordmark,.footer-brand,.mobile-menu-toggle){color:#252625}html[data-theme^=light] :is(.topbar-social a,.sidebar-social a,.navigation .nav-link,.nav-settings-toggle,.language-toggle,.topbar .language-toggle){color:#5b5d59}html[data-theme^=light] :is(.navigation .nav-link:hover,.navigation .nav-link.active,.navigation .nav-link.active span,.topbar .nav-link:hover,.topbar .nav-link.active,.topbar-social a:hover,.sidebar-social a:hover){color:#1f201e}html[data-theme^=light] .sidebar .navigation .nav-link.active{background:var(--theme-soft)}@media(min-width:701px){html[data-theme^=light] .sidebar .navigation .nav-link:after{background:linear-gradient(110deg,transparent 28%,var(--light-shimmer-rim) 43%,var(--light-shimmer-core) 50%,var(--light-shimmer-rim) 57%,transparent 72%)}}html[data-theme^=light] :is(.nav-settings-toggle:hover,.nav-settings-toggle[aria-expanded=true],.language-toggle:hover,.language-toggle[aria-expanded=true],.topbar .language-toggle:hover,.topbar .language-toggle[aria-expanded=true],.desktop-sidebar-toggle){color:#252625;background:#2323210f;border-color:var(--divider-color)}html[data-theme^=light] .nav-settings .nav-settings-toggle{color:#fff;background:var(--theme-accent);border-color:transparent}html[data-theme^=light] .nav-settings .nav-settings-toggle:is(:hover,:focus-visible,[aria-expanded=true]){color:#fff;background:var(--theme-hover);border-color:transparent}html[data-theme^=light] .nav-settings .nav-settings-toggle:focus-visible{outline-color:var(--theme-accent)}html[data-theme^=light] :is(.nav-settings-panel,.language-panel){color:#262725;box-shadow:0 16px 36px #20201c26}html[data-theme^=light] :is(.nav-settings-label,.theme-picker-heading,.language-panel-label){color:#686963}html[data-theme^=light] .theme-picker-heading [data-theme-current]{color:#292a27}html[data-theme^=light] :is(.nav-settings-choice,.language-option){color:#565750}html[data-theme^=light] .nav-settings-choice{border-color:#2828241f;background:#23232106}html[data-theme^=light] :is(.nav-settings-choice:hover,.nav-settings-choice[aria-pressed=true],.language-option-current,.language-option-current:hover){color:#222321;background:#23232117}html[data-theme^=light] :is(.nav-preview-frame,.nav-preview-lines){stroke:#23232166}html[data-theme^=light] :is(.nav-preview-menu,.nav-settings-choice:hover .nav-preview-menu,.nav-settings-choice[aria-pressed=true] .nav-preview-menu){stroke:#454641}html[data-theme^=light] .language-check{color:#74756e}html[data-theme^=light] .theme-option:focus-visible{outline-color:#292a28}html[data-theme^=light] .theme-auto{color:#51534f;background:#23232106}html[data-theme^=light] .theme-auto-status{color:#6a6b65}html[data-theme^=light] .theme-auto[aria-pressed=true]{color:#262725;background:var(--theme-soft)}html[data-theme^=light] .theme-auto[aria-pressed=true] .theme-auto-status{color:var(--theme-accent)}html[data-theme^=light] :is(.ticker,.material-story){background:var(--light-band)}html[data-theme^=light] :is(.ticker-track>span,.ticker b){color:#6a6b65}html[data-theme^=light] :is(.expertise-feature,.skill-group,.experience-list .job,.featured-project,.contact-resources-layout,.about .gpt-note){background:var(--theme-surface);border-color:var(--divider-color)}html[data-theme^=light] :is(.expertise-feature,.skill-group,.experience-list .job,.featured-project,.contact-resources-layout):hover{background:var(--theme-elevated);border-color:var(--theme-glow)}html[data-theme^=light] .contact-card:before{background:linear-gradient(120deg,transparent 24%,var(--light-shimmer-rim) 43%,var(--light-shimmer-core) 50%,var(--light-shimmer-rim) 57%,transparent 76%)}html[data-theme^=light] .scene-points li{border-color:#23232133;background:linear-gradient(90deg,rgba(35,35,33,.04),transparent 90%)}html[data-theme^=light] :is(.scene-points strong,.skill-tags li,.skill-group:hover .skill-tags li,.featured-project-link,.featured-project-area h4){color:#30312e}html[data-theme^=light] :is(.scene-points li:before,.skill-top>span,.featured-project-footer){color:#6a6b65}html[data-theme^=light] .skill-symbol img{filter:grayscale(1) brightness(.8) contrast(1.05)}html[data-theme^=light] .skill-symbol svg{stroke:#50514d}html[data-theme^=light] .mini-scene{filter:invert(.83)}html[data-theme^=light] .experience-list .job :is(h3,.job-company),html[data-theme^=light] .experience-list .job .job-identity .job-company{color:#292a28}html[data-theme^=light] .experience-list .job :is(time,.job-location,.job-icon,.job-description,.job-more summary),html[data-theme^=light] .experience-list .job .job-identity .job-company .job-work-badge{color:#555650}html[data-theme^=light] .job-work-badge{background:#1e1e1c0f}html[data-theme^=light] .about-copy{background:linear-gradient(90deg,rgba(var(--light-bg-rgb),.65),rgba(var(--light-bg-rgb),.5) 92%,transparent)}html[data-theme^=light] .about-copy p:nth-child(2),html[data-theme^=light] .material-intro .material-lead{color:#30312e!important}html[data-theme^=light] :is(.gpt-note-top,.gpt-note h3 span,.gpt-note p,.gpt-signature,.gpt-spark,.material-signature,.process-step,.process-step strong,.process-icon,.contact-item a,.contact-resources-person strong,.contact-card-brand,.contact-card-download,.cv-card-title){color:#42433f}html[data-theme^=light] :is(.gpt-note-top small,.contact-resources-person span,.contact-card-kicker,.contact-card-qr-label,.cv-card-kicker,.process-step small){color:#6a6b65}html[data-theme^=light] :is(.about h2 span,.contact h2 span,.about-aside,.about-pill,.world-label,.cv-card-action,footer p,footer>a:last-child){color:#676861}html[data-theme^=light] .contact-profile-links a span{color:#42433f}html[data-theme^=light] :is(.contact-card-links a,.cv-card-icon,.contact-item svg){color:#5d5f59;border-color:var(--divider-color)}html[data-theme^=light] :is(.contact-card-links a:hover,.contact-card-download:hover,.contact-item a:hover){color:#111}html[data-theme^=light] .world-land{fill:#666762;opacity:.25}html[data-theme^=light] :is(.world-route-trace,.world-origin-ring,.contact-signal-trace){stroke:#444540}html[data-theme^=light] :is(.world-origin,.world-destination,.contact-signal-origin,.world-status){fill:#444540;background:#444540}html.site-preloading[data-theme][data-theme^=light] #site-preloader{background:radial-gradient(circle at center,#fff 0,var(--theme-bg) 72%)}html[data-theme^=light] .preloader-glyph{animation-name:preloader-light-ink}html[data-theme^=light] .preloader-glint{stroke:var(--theme-accent, #777872);filter:drop-shadow(0 0 30px var(--theme-glow, rgba(30, 30, 30, .4)))}html[data-theme^=light] .preloader-dot{fill:var(--theme-accent, #585953)}html[data-theme^=light] .preloader-subtitle text{fill:#5b5c57}html[data-theme^=light] .preloader-rule:before{background:#1e1e1e59}@keyframes preloader-light-ink{0%{fill:#b7b8b1}to{fill:#262725}}@media(max-width:700px){html.mobile-nav-ready[data-theme^=light] .mobile-menu-toggle,html.mobile-nav-ready[data-theme^=light] .navigation .nav-link.active{color:#252625}html.mobile-nav-ready[data-theme^=light] .navigation .nav-link.active{background:#23232114}html.mobile-nav-ready[data-theme^=light] .navigation .nav-link.active span{color:#333430}}

.work-highlights{padding-top:42px;padding-bottom:48px}.work-highlights-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.work-highlights-heading .kicker{margin-bottom:9px}.work-highlights-heading h2{color:var(--text);font-size:var(--type-section, 23px);line-height:1.2;letter-spacing:-.035em}.work-highlights-all{display:inline-flex;align-items:center;gap:8px;min-height:36px;color:var(--muted);font-size:var(--type-secondary, 13px);white-space:nowrap;text-decoration:none;transition:color .2s ease}.work-highlights-all:hover,.work-highlights-all:focus-visible{color:var(--theme-accent, var(--text))}.work-highlights-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--divider-color, var(--line))}.work-highlight{position:relative;display:grid;grid-template-columns:50px minmax(0,1fr);align-items:start;gap:15px;min-width:0;padding:20px 24px 4px 0;color:var(--text)}.work-highlight-icon{display:block;width:50px;height:50px;fill:none;stroke:var(--theme-accent, var(--text));stroke-linecap:round;stroke-linejoin:round;stroke-width:1.35;opacity:.8;transition:opacity .25s ease,transform .3s var(--ease)}.work-highlight:hover .work-highlight-icon,.work-highlight:focus-within .work-highlight-icon{opacity:1;transform:translateY(-3px)}.work-highlight-content{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:0;min-height:100%}.work-highlight+.work-highlight{padding-left:24px;border-left:1px solid var(--divider-color, var(--line))}.work-highlight:before{position:absolute;inset:-1px 24px auto 0;height:1px;background:var(--theme-accent, #d8d8d6);content:"";opacity:0;transform:scaleX(.15);transform-origin:left;transition:opacity .25s ease,transform .4s var(--ease)}.work-highlight+.work-highlight:before{left:24px}.work-highlight:hover:before,.work-highlight:focus-within:before{opacity:1;transform:scaleX(1)}.work-highlight a:focus-visible,.work-highlights-all:focus-visible{outline:2px solid var(--theme-accent, var(--text));outline-offset:5px}.work-highlight-meta,.work-highlight-client,.work-highlight-clients{color:var(--theme-label, var(--muted));font:11px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.045em}.work-highlight-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.work-highlight-arrow{display:inline-flex;width:15px;height:15px;flex:0 0 15px;transition:transform .25s ease,color .25s ease}.work-highlight-arrow svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.work-highlight:hover .work-highlight-arrow,.work-highlight:focus-within .work-highlight-arrow{color:var(--theme-accent, var(--text));transform:translate(3px,-3px)}.work-highlight-title{margin:0;font-size:var(--type-body, 15px);font-weight:650;line-height:1.4}.work-highlight-main{color:inherit;text-decoration:none}.work-highlight-main:after{position:absolute;inset:0;content:""}.work-highlight-copy{max-width:38ch;margin:0;color:var(--muted);font-size:var(--type-body, 15px);line-height:1.55}.work-highlight-client,.work-highlight-clients{margin-top:auto;padding-top:5px;font-size:12px}.work-highlight-clients{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:2px 6px}.work-highlight-clients a{color:inherit;text-decoration:underline;text-decoration-color:var(--divider-color, var(--line));text-underline-offset:3px;white-space:nowrap}.work-highlight-clients a:hover,.work-highlight-clients a:focus-visible{color:var(--theme-accent, var(--text));text-decoration:underline;text-underline-offset:3px}.experience-list .job[id]{scroll-margin-top:90px}@media(max-width:700px){.work-highlights{padding-top:32px;padding-bottom:34px}.work-highlights-heading{align-items:flex-start;flex-direction:column;gap:4px;margin-bottom:16px}.work-highlights-grid{grid-template-columns:1fr}.work-highlight,.work-highlight+.work-highlight{padding:17px 0;border-left:0}.work-highlight-content{gap:7px}.work-highlight+.work-highlight{border-top:1px solid var(--divider-color, var(--line))}.work-highlight+.work-highlight:before{left:0}.work-highlight-client,.work-highlight-clients{padding-top:1px}}@media(prefers-reduced-motion:reduce){.work-highlight:before,.work-highlight-arrow,.work-highlight-icon,.work-highlights-all{transition:none}.work-highlight:hover .work-highlight-icon,.work-highlight:focus-within .work-highlight-icon{transform:none}}

.workspace-code-line{border-radius:2px;transition:background-color .2s ease,box-shadow .2s ease}.center-active .workspace-code-line:has(.workspace-caret){background:#fff1;box-shadow:inset 2px 0 var(--theme-accent, #dedede)}@media(hover:hover){.skill-group:hover .mini-scene{filter:drop-shadow(0 0 3px var(--theme-glow, rgba(255, 255, 255, .25)))}.skill-group:hover .server-light{fill:var(--theme-accent, #e4e4e4)}}@media(hover:hover)and (prefers-reduced-motion:no-preference){.skill-group:hover .mini-code-first{animation:interaction-code 1s steps(20,end) both}.skill-group:hover .mini-code-second{animation:interaction-code 1s steps(16,end) .25s both}.skill-group:hover .mini-cursor{animation:skill-cursor .55s steps(1) infinite}.skill-group:hover .mini-interface .mini-panel,.skill-group:hover .mini-commerce .mini-panel{animation:interaction-panel .7s ease both}.skill-group:hover :is(.mini-interface,.mini-commerce) .mini-panel-b{animation-delay:.12s}.skill-group:hover :is(.mini-interface,.mini-commerce) .mini-panel-c{animation-delay:.24s}.skill-group:hover .mini-flow{animation:skill-flow .9s linear infinite}.skill-group:hover .server-light{animation:skill-light 1s ease-in-out infinite}.skill-group:hover .server-light-two{animation-delay:.2s}.skill-group:hover .server-light-three{animation-delay:.4s}.skill-group:hover .mini-search-ring{animation:interaction-search 1.5s ease-in-out infinite}}@keyframes interaction-code{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes interaction-panel{0%{opacity:.35;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@keyframes interaction-search{0%,to{transform:translate(0)}50%{transform:translate(4px,-2px)}}.experience-list .job{position:relative}.experience-list .job:before{content:"";position:absolute;top:15px;bottom:15px;left:-1px;width:2px;border-radius:2px;background:linear-gradient(transparent,var(--theme-accent, #ededed),transparent);opacity:0;pointer-events:none;transform:scaleY(.3);transition:opacity .3s ease,transform .4s ease}.experience-list .job:is(:hover,:focus-within):before{opacity:.85;transform:scaleY(1)}.experience-list .job:is(:hover,:focus-within) .job-identity :is(h3,.job-company){text-shadow:0 0 12px var(--theme-glow, rgba(255, 255, 255, .2))}@media(min-width:701px){.navigation .nav-indicator{position:absolute;z-index:2;display:block;border-radius:2px;background:var(--theme-accent, #e9e9e9);opacity:0;pointer-events:none;transition:left .4s ease,top .4s ease,width .4s ease,height .4s ease,opacity .2s ease}.navigation .nav-indicator.is-ready{opacity:1}.navigation .nav-indicator.is-resetting{transition:none}html.nav-indicator-ready .navigation .nav-link.active:before{opacity:0}}.navigation .nav-indicator[hidden]{display:none}.contact-value{display:flex;align-items:center;gap:6px;min-width:0}.contact-value>a{min-width:0}.contact-value>a>span:not(.contact-arrow){min-width:0;overflow-wrap:anywhere}.contact-copy{display:inline-grid;place-items:center;flex:0 0 34px;width:34px;height:34px;padding:0;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--theme-accent, #bdbdbd);cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.contact-copy[hidden]{display:none}.contact-item .contact-copy svg{width:16px;height:16px;color:inherit;fill:none;stroke:currentColor;stroke-width:1.5}.contact-copy:is(:hover,:focus-visible){border-color:var(--divider-color);background:var(--theme-soft, rgba(255, 255, 255, .07));color:var(--theme-accent, #fff)}.contact-copy:focus-visible{outline:2px solid var(--theme-accent, #ededed);outline-offset:2px}@media(pointer:coarse){.contact-copy{flex-basis:40px;width:40px;height:40px}}.contact-copy-feedback{position:fixed;z-index:1000;bottom:24px;left:50%;max-width:calc(100vw - 32px);padding:10px 14px;border:1px solid var(--divider-color);border-radius:5px;background:var(--theme-elevated, rgba(28, 28, 28, .97));color:var(--text, #ededed);box-shadow:0 8px 24px #00000029;font-size:13px;line-height:1.4;opacity:0;pointer-events:none;transform:translate(-50%,8px);transition:opacity .2s ease,transform .2s ease}.contact-copy-feedback.is-visible{opacity:1;transform:translate(-50%)}@media(min-width:701px){html[data-nav-layout=bottom] .contact-copy-feedback{bottom:88px}}.contact-card-qr-code:before,.contact-card-qr-code:after{content:"";position:absolute;inset:-6px;pointer-events:none;opacity:0;transform:scale(.97);transition:opacity .3s ease,transform .3s ease}.contact-card-qr-code:before{background:linear-gradient(var(--theme-accent, #ededed),var(--theme-accent, #ededed)) left top / 12px 1px no-repeat,linear-gradient(var(--theme-accent, #ededed),var(--theme-accent, #ededed)) left top / 1px 12px no-repeat,linear-gradient(var(--theme-accent, #ededed),var(--theme-accent, #ededed)) right bottom / 12px 1px no-repeat,linear-gradient(var(--theme-accent, #ededed),var(--theme-accent, #ededed)) right bottom / 1px 12px no-repeat}.contact-card-qr-code:after{background:linear-gradient(var(--theme-accent, #ededed),var(--theme-accent, #ededed)) right top / 12px 1px no-repeat,linear-gradient(var(--theme-accent, #ededed),var(--theme-accent, #ededed)) right top / 1px 12px no-repeat,linear-gradient(var(--theme-accent, #ededed),var(--theme-accent, #ededed)) left bottom / 12px 1px no-repeat,linear-gradient(var(--theme-accent, #ededed),var(--theme-accent, #ededed)) left bottom / 1px 12px no-repeat;transition-delay:.12s}.contact-card:is(:hover,:focus-within) .contact-card-qr-code:before,.contact-card:is(:hover,:focus-within) .contact-card-qr-code:after{opacity:.85;transform:scale(1)}.featured-project-link .arrow-ne{position:relative}.featured-project-link .arrow-ne:before{content:"";position:absolute;left:-7px;bottom:0;width:10px;height:1px;background:linear-gradient(90deg,transparent,var(--theme-accent, #ededed));opacity:0;pointer-events:none;transform:rotate(-45deg) scaleX(0);transform-origin:right center}.featured-project-link:focus-visible .arrow-ne{transform:translate(3px,-3px)}@media(prefers-reduced-motion:no-preference){.featured-project-link:is(:hover,:focus-visible) .arrow-ne:before{animation:interaction-arrow-trace .65s ease-out both}}@keyframes interaction-arrow-trace{0%{opacity:0;transform:rotate(-45deg) scaleX(0)}35%{opacity:.8}to{opacity:0;transform:rotate(-45deg) scaleX(1)}}@media(prefers-reduced-motion:reduce){.workspace-code-line,.experience-list .job:before,.navigation .nav-indicator,.contact-copy,.contact-copy-feedback,.contact-card-qr-code:before,.contact-card-qr-code:after{transition:none;animation:none}}
