@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poiret One;src:url(/assets/poiret-one-regular-D46AoXrb.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Josefin Sans;src:url(/assets/josefin-sans-regular-DQUZOl9r.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Josefin Sans;src:url(/assets/josefin-sans-semibold-CYNiiikb.ttf) format("truetype");font-style:normal;font-weight:600;font-display:swap}:root{--bg: #050812;--surface: #090e1b;--surface-2: #101827;--text: #eef3fb;--muted: #b5c0d3;--line: rgba(137, 163, 211, .27);--line-strong: rgba(154, 183, 255, .58);--accent: #ef3e5c;--accent-light: #9ab7ff;--red: #ef3e5c;--accent-soft: rgba(239, 62, 92, .11);--max: 1160px;--display: "Poiret One", "Josefin Sans", sans-serif;--heading: "Josefin Sans", "Geist Variable", Arial, sans-serif;color:var(--text);background:var(--bg);font-family:Geist Variable,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{position:relative;margin:0;min-width:320px;background:var(--bg)}img{display:block;max-width:100%}a{color:inherit}button,a{font:inherit}::selection{color:#fff;background:var(--accent)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.hero-kicker,.button,.about-note>span,.current-item a,.project-name p,.project-meta,.project-links,.more-link,.experience-heading>p,.experience-heading span,.experience-details time,.experience-details a,.skill-block a,.feature-card>p,.feature-card>a,.contact-links small,.footer-bottom{font-family:var(--heading)}.ambient-scenes{position:fixed;z-index:0;inset:0;overflow:hidden;background:var(--bg);pointer-events:none}.ambient-scene{position:absolute;inset:0;background-color:var(--bg);background-repeat:no-repeat;background-size:cover,min(70vw,880px) auto;opacity:0;transform:scale(1.025);transition:opacity 1.1s ease,transform 8s ease}.ambient-scene.active{opacity:1;transform:scale(1)}.ambient-scene--sax{background-image:linear-gradient(90deg,#050812c7,#0508124d),url(/assets/artdeco-sax-background-CduIhmTn.jpg);background-position:center,calc(100% - 4vw) center}.ambient-scene--city{background-image:linear-gradient(90deg,#05081247,#050812c2),url(/assets/artdeco-city-transit-ZcdwTvQn.jpg);background-position:center,4vw center}.ambient-scene--lounge{background-image:linear-gradient(90deg,#050812b8,#05081242),url(/assets/artdeco-private-lounge-fVdBETJf.jpg);background-position:center,calc(100% - 5vw) center}.ambient-scene--hotel{background-image:linear-gradient(90deg,#0508124d,#050812b8),url(/assets/artdeco-hotel-street--vVMLP-J.jpg);background-position:center,5vw center}main,footer{position:relative;z-index:1}.header{position:fixed;z-index:20;top:0;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:space-between;width:min(var(--max),calc(100% - 40px));height:76px;border-bottom:1px solid var(--line);background:#050713d6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.header:after{position:absolute;bottom:-4px;left:50%;width:64px;height:7px;border-inline:1px solid var(--accent);background:var(--bg);transform:translate(-50%);content:""}.logo{display:flex;align-items:center;gap:11px;color:var(--text);font-family:var(--heading);font-size:.8rem;font-weight:600;letter-spacing:.18em;text-decoration:none}.logo img{width:36px;height:36px;object-fit:contain;object-position:50% 22%;filter:drop-shadow(0 0 10px rgba(215,44,104,.2))}.nav{display:flex;align-items:center;gap:27px;font-family:var(--heading);font-size:.72rem;letter-spacing:.09em;text-transform:uppercase}.nav a{color:var(--muted);text-decoration:none;transition:color .2s ease}.nav a:hover{color:var(--text)}.nav .nav-cta{border:1px solid var(--accent);padding:9px 15px;color:var(--text);clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px)}.menu{display:none;border:0;padding:6px;color:var(--text);background:transparent}.hero{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:900px;padding:155px max(20px,calc((100vw - var(--max)) / 2)) 110px;overflow:hidden;isolation:isolate}.hero:before{position:absolute;z-index:-2;inset:0;background:url(/assets/cyber-noir-hero-burp-tor-rn0YF7Ur.jpg) center/cover no-repeat;opacity:.92;transform:scale(1.015);animation:skylineDrift 18s ease-in-out infinite alternate;content:""}.hero:after{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#050713fc,#050713e8 37%,#05071347 66%,#05071314),linear-gradient(0deg,var(--bg) 0%,transparent 24%,rgba(0,0,0,.06) 100%);content:""}.hero-effects,.hero-effects span{position:absolute;pointer-events:none}.hero-effects{z-index:1;inset:0;overflow:hidden}.hero-window-lights{inset:0;background:radial-gradient(circle at 48% 54%,rgba(240,189,74,.8) 0 1px,transparent 2px),radial-gradient(circle at 42% 60%,rgba(240,189,74,.65) 0 1.5px,transparent 2.5px),radial-gradient(circle at 54% 65%,rgba(215,44,104,.55) 0 1px,transparent 2px),radial-gradient(circle at 88% 38%,rgba(240,189,74,.52) 0 1px,transparent 2px);opacity:.18;animation:windowFlicker 7.5s steps(1,end) infinite}.hero-passing-light{top:-24%;bottom:-24%;left:-60%;width:42%;background:linear-gradient(100deg,transparent 5%,rgba(240,189,74,.03) 34%,rgba(240,189,74,.2) 48%,rgba(215,44,104,.09) 58%,transparent 78%);mix-blend-mode:screen;transform:translate3d(-40vw,0,0) skew(-8deg);animation:passingHeadlights 13s cubic-bezier(.32,.04,.22,1) infinite;will-change:transform,opacity}.hero-agent-shadow{top:4%;right:-24%;width:68%;height:118%;background:linear-gradient(108deg,transparent 32%,rgba(0,0,0,.4) 48%,transparent 65%);mix-blend-mode:multiply;opacity:0;transform:translate3d(30%,0,0);animation:passingShadow 13s cubic-bezier(.32,.04,.22,1) infinite;will-change:transform,opacity}.hero-inner{position:relative;z-index:2;max-width:640px}.hero-kicker{display:flex;align-items:center;gap:12px;margin:0 0 24px;color:var(--accent-light);font-family:var(--heading);font-size:.67rem;letter-spacing:.2em;text-transform:uppercase}.hero-kicker:before{width:36px;height:1px;background:var(--accent);content:""}.hero h1{max-width:760px;margin:0;color:var(--text);font-family:var(--display);font-size:clamp(4.6rem,8.8vw,7.8rem);font-weight:400;line-height:.84;letter-spacing:.015em;text-transform:uppercase;text-shadow:0 3px 24px rgba(0,0,0,.72);text-wrap:balance}.hero h1 span{display:block}.hero h1 span:last-child{margin-left:.1em;color:var(--accent);-webkit-text-stroke:0}.hero-role{max-width:540px;margin:38px 0 0;color:var(--accent-light);font-family:var(--heading);font-size:clamp(1.02rem,1.8vw,1.4rem);font-weight:400;letter-spacing:.055em}.hero-copy{max-width:580px;margin:28px 0 0;color:var(--muted);font-size:1.05rem;line-height:1.7}.hero-actions{display:flex;gap:10px;margin-top:34px}.button{display:inline-flex;align-items:center;gap:10px;min-height:46px;border-radius:0;padding:0 18px;font-family:var(--heading);font-size:.72rem;font-weight:600;letter-spacing:.1em;text-decoration:none;text-transform:uppercase;transition:transform .2s ease,border-color .2s ease;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.button:hover{transform:translateY(-2px)}.button.primary{color:#fff4dd;background:var(--accent)}.button.secondary{border:1px solid var(--line-strong);color:var(--text);background:#050812b3}.section{position:relative;isolation:isolate;width:min(var(--max),calc(100% - 40px));margin:0 auto;padding:120px 0;scroll-margin-top:50px;border-bottom:1px solid var(--line)}.section:before{position:absolute;z-index:-1;inset:0;background:#050812ad;box-shadow:0 0 0 100vmax #050812ad;clip-path:inset(0 -100vmax);-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);content:""}.section:nth-of-type(odd):before{background:#090e1b99;box-shadow:0 0 0 100vmax #090e1b99}.section:after{position:absolute;right:0;bottom:-4px;left:0;width:7px;height:7px;margin:auto;border:1px solid var(--accent);background:var(--bg);transform:rotate(45deg);content:""}.section-title{display:grid;grid-template-columns:1fr 7px auto 7px 1fr;align-items:center;gap:16px;margin-bottom:62px}.section-title h2{margin:0;color:var(--text);font-family:var(--display);font-size:clamp(2.5rem,5vw,4.55rem);font-weight:400;line-height:1;letter-spacing:.075em;text-align:center;text-shadow:0 2px 18px rgba(0,0,0,.72);text-transform:uppercase;text-wrap:balance}.section-title .deco-rule{height:1px;background:linear-gradient(90deg,transparent,var(--line-strong))}.section-title .deco-rule:last-child{background:linear-gradient(90deg,var(--line-strong),transparent)}.section-title i{width:7px;height:7px;border:1px solid var(--accent);transform:rotate(45deg)}.about{padding-top:95px}.about-layout{display:grid;grid-template-columns:230px 1fr 1fr;gap:clamp(34px,5vw,60px);align-items:start}.about-photo{position:relative;isolation:isolate;justify-self:start;width:min(100%,220px);aspect-ratio:.8;padding:7px}.about-photo:before,.about-photo:after{position:absolute;pointer-events:none;content:""}.about-photo:before{z-index:-1;inset:0 12px 12px 0;border-top:1px solid var(--accent);border-left:1px solid var(--accent)}.about-photo:after{z-index:-2;inset:12px 0 0 12px;border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 38%;filter:saturate(.72) contrast(1.08);clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px);transform:scale(1.1)}.about-story{max-width:720px}.about-story p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.75}.about-story p+p{margin-top:20px}.about-story .about-lead{color:var(--text);font-family:var(--heading);font-size:clamp(1.3rem,2.35vw,1.95rem);font-weight:600;line-height:1.35;letter-spacing:-.015em}.about-story .deco-joke{margin-top:30px;color:var(--accent);font-size:.68rem;font-style:italic;letter-spacing:.04em}.summary-link{color:var(--accent-light);font-weight:600;text-decoration-color:var(--accent);text-underline-offset:3px}.summary-link:hover{color:var(--text)}.about-note{padding:4px 0 4px 32px;border-left:1px solid var(--line)}.about-note>span{display:block;margin-bottom:28px;color:var(--accent-light);font-size:.62rem;text-transform:uppercase;letter-spacing:.2em}.current-item{display:grid;grid-template-columns:24px 1fr;gap:13px;padding:20px 0;border-top:1px solid var(--line)}.current-item:last-child{border-bottom:1px solid var(--line)}.current-item>svg{margin-top:2px;color:var(--accent)}.current-item h3{margin:0 0 8px;color:var(--text);font-family:var(--heading);font-size:1.08rem;font-weight:600;line-height:1.25;letter-spacing:.01em}.current-item p{margin:0 0 12px;color:var(--muted);font-size:.71rem;line-height:1.55}.current-item a{display:inline-flex;align-items:center;gap:6px;color:var(--accent-light);font-size:.66rem;font-weight:620;text-decoration:none}.achievements-list{border-top:1px solid var(--line)}.achievement-row{display:grid;grid-template-columns:22% 31% 1fr;gap:5%;padding:30px 0;border-bottom:1px solid var(--line)}.achievement-row time,.achievement-row span{display:block;color:var(--muted);font-size:.7rem;line-height:1.45}.achievement-row span{margin-top:6px;color:var(--accent)}.achievement-row h3{margin:0 0 8px;font-family:var(--heading);font-size:1.2rem;font-weight:600;letter-spacing:-.015em}.achievement-row strong{color:var(--accent);font-size:.7rem;font-weight:550}.achievement-row>p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.6}.achievement-link{display:inline-flex;align-items:center;gap:6px;color:inherit;text-decoration:none}.achievement-link:hover{color:var(--accent)}.projects-list{border-top:1px solid var(--line)}.project-row{display:grid;grid-template-columns:1.25fr 2fr 1fr;gap:34px;align-items:start;padding:34px 14px;border-bottom:1px solid var(--line);transition:background .2s ease,padding .2s ease}.project-row:hover{padding-right:22px;padding-left:22px;background:linear-gradient(90deg,rgba(183,150,82,.06),transparent)}.project-name p{margin:0 0 10px;color:var(--accent);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em}.project-name h3{margin:0;font-family:var(--heading);font-size:1.5rem;font-weight:600;line-height:1.12;letter-spacing:.005em}.project-description{margin:0;color:var(--muted);font-size:.8rem;line-height:1.65}.project-meta{display:flex;flex-direction:column;gap:25px}.project-meta>ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.project-meta>ul li{padding:2px 0;color:var(--accent-light);font-size:.6rem;letter-spacing:.05em;text-transform:uppercase}.project-meta>ul li:not(:last-child):after{margin:0 7px;color:var(--red);content:"◆";font-size:.45rem}.project-links{display:flex;flex-wrap:wrap;gap:14px}.project-links a,.more-link,.experience-details a,.skill-block a,.feature-card>a{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-size:.72rem;font-weight:620;text-decoration:none}.project-links a:hover,.more-link:hover{color:var(--accent)}.more-link{margin-top:28px}.experience-list{border-top:1px solid var(--line)}.experience-item{display:grid;grid-template-columns:70px 32% 1fr;gap:30px;padding:38px 0;border-bottom:1px solid var(--line)}.experience-logo{display:grid;place-items:center;width:56px;height:56px;overflow:hidden;border:1px solid var(--line);border-radius:10px;padding:7px;background:#fff}.experience-logo img{width:100%;height:100%;object-fit:contain}.experience-heading>p{margin:0 0 9px;color:var(--accent);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.experience-heading h3{margin:0 0 10px;font-family:var(--heading);font-size:1.38rem;font-weight:600;line-height:1.2;letter-spacing:.005em}.experience-heading span,.experience-details time{color:var(--muted);font-size:.72rem}.experience-details time{display:block;margin-bottom:17px}.experience-details ul{margin:0 0 20px;padding-left:17px;color:var(--muted);font-size:.79rem;line-height:1.55}.experience-details li+li{margin-top:8px}.skills-list{position:relative;border-top:1px solid var(--line-strong)}.skill-block{position:relative;display:grid;grid-template-columns:minmax(220px,29%) 1fr;gap:clamp(24px,4vw,54px);align-items:start;min-height:142px;padding:30px 18px 30px 0;border-bottom:1px solid var(--line);isolation:isolate;transition:padding .25s ease}.skill-block:before{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(239,62,92,.08),rgba(154,183,255,.045) 46%,transparent 92%);opacity:0;transition:opacity .25s ease;content:""}.skill-block:after{position:absolute;top:0;right:0;width:18px;height:18px;border-top:1px solid var(--accent);border-right:1px solid var(--accent);opacity:.42;content:""}.skill-block:hover{padding-left:12px}.skill-block:hover:before{opacity:1}.skill-heading{display:grid;grid-template-columns:9px 1fr;gap:13px;align-items:start}.skill-marker{width:7px;height:7px;margin-top:8px;border:1px solid var(--accent);background:var(--bg);transform:rotate(45deg)}.skill-block h3{margin:0;color:var(--accent-light);font-family:var(--heading);font-size:1.25rem;font-weight:600;line-height:1.3;letter-spacing:.01em}.skill-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.skill-tags li{border:1px solid var(--line);padding:7px 10px 6px;color:var(--muted);background:#0508128a;font-family:var(--heading);font-size:.66rem;line-height:1.25;letter-spacing:.035em;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);transition:border-color .2s ease,color .2s ease,background .2s ease}.skill-block:hover .skill-tags li{border-color:#9ab7ff61;color:var(--text);background:#101827b8}.education{padding-bottom:95px}.education-list{border-top:1px solid var(--line)}.education-item{display:grid;grid-template-columns:76px 1fr;gap:24px;padding:28px 0;border-bottom:1px solid var(--line)}.education-item>img{width:58px;height:58px;object-fit:contain;border-radius:8px;padding:5px;background:#fff}.education-item h3{margin:0 0 8px;color:var(--accent-light);font-family:var(--heading);font-size:1.24rem;font-weight:600}.education-item p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.5}.education-item ul{margin:16px 0 0;padding-left:16px;color:var(--muted);font-size:.71rem;line-height:1.5}.education-item li+li{margin-top:6px}.certifications{padding-top:95px}.certifications-list{border-top:1px solid var(--line)}.certification{display:grid;grid-template-columns:58px 1fr auto;gap:18px;align-items:center;min-height:104px;padding:18px 0;border-bottom:1px solid var(--line)}.certification:hover h3{color:var(--accent)}.certification>img{width:54px;height:54px;object-fit:contain;border-radius:7px;padding:5px;background:#fff}.certification h3{margin:0 0 7px;font-family:var(--heading);font-size:.86rem;font-weight:600;line-height:1.35}.certification p,.certification time{display:block;margin:0;color:var(--muted);font-size:.66rem;line-height:1.4}.certification time{margin-top:3px}.certification>a{white-space:nowrap}.featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card{display:flex;flex-direction:column}.feature-card>a:first-child{display:block;aspect-ratio:1.38;overflow:hidden;background:var(--surface)}.feature-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.75);transition:transform .5s ease,filter .3s ease}.feature-card:hover img{transform:scale(1.025);filter:saturate(1)}.feature-card>p{margin:20px 0 10px;color:var(--accent-light);font-size:.62rem;text-transform:uppercase;letter-spacing:.16em}.feature-card h3{margin:0 0 13px;font-family:var(--heading);font-size:1.15rem;font-weight:600;line-height:1.35;letter-spacing:.01em}.feature-card>span{margin-bottom:16px;color:var(--muted);font-size:.75rem;line-height:1.5}.feature-card>a:last-child{margin-top:auto}footer{position:relative;padding:120px max(20px,calc((100vw - var(--max)) / 2)) 28px;background:linear-gradient(180deg,#0a0d1cdb,#050713f0);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}footer:before{position:absolute;top:0;left:50%;width:min(420px,72vw);height:15px;border:1px solid var(--accent);border-block-width:0 1px;transform:translate(-50%);clip-path:polygon(0 0,42% 0,46% 100%,54% 100%,58% 0,100% 0,100% 100%,0 100%);content:""}.footer-main p{max-width:540px;margin:0;color:var(--muted);line-height:1.6}.footer-main h2{margin:24px 0;color:var(--accent-light);font-family:var(--display);font-size:clamp(4rem,10vw,8rem);font-weight:400;line-height:.9;letter-spacing:.055em;text-transform:uppercase}.footer-main>a{display:inline-flex;align-items:center;gap:10px;border-bottom:1px solid var(--accent);padding-bottom:6px;color:var(--accent);font-size:clamp(1rem,2.5vw,1.5rem);text-decoration:none}.profile-groups{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:clamp(34px,6vw,86px);margin-top:70px}.profile-group h3{margin:0 0 14px;color:var(--muted);font-family:var(--heading);font-size:.65rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.contact-links{border-top:1px solid var(--line)}.contact-links>a{display:grid;grid-template-columns:1fr auto;align-items:center;min-height:78px;border-bottom:1px solid var(--line);text-decoration:none;transition:color .2s ease,padding .2s ease}.contact-links>a:hover{padding-left:10px;color:var(--accent)}.contact-brand{display:flex;align-items:center;gap:16px}.contact-logo{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border:1px solid var(--line);color:var(--accent-light);background:#05071380;clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px)}.contact-logo svg{width:23px;height:23px}.contact-logo img{width:25px;height:25px;object-fit:contain}.contact-links strong{display:block;font-family:var(--heading);font-size:1.08rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.contact-links small{display:block;margin-top:5px;color:var(--muted);font-size:.7rem}.footer-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:70px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:.7rem}.footer-bottom a{text-decoration:none}.footer-bottom>a:last-child{justify-self:end}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1)}.reveal.visible{opacity:1;transform:translateY(0)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@keyframes skylineDrift{0%{transform:scale(1.025) translateZ(0)}to{transform:scale(1.055) translate3d(-.5%,-.35%,0)}}@keyframes windowFlicker{0%,18%,26%,61%,69%,to{opacity:.16}19%,25%,62%,68%{opacity:.55}44%,47%{opacity:.32}}@keyframes passingHeadlights{0%,54%{opacity:0;transform:translate3d(-42vw,0,0) skew(-8deg)}59%{opacity:.15}69%{opacity:.78}79%{opacity:0;transform:translate3d(190vw,0,0) skew(-8deg)}to{opacity:0;transform:translate3d(190vw,0,0) skew(-8deg)}}@keyframes passingShadow{0%,57%{opacity:0;transform:translate3d(36%,0,0)}64%{opacity:.08}71%{opacity:.7}79%,to{opacity:0;transform:translate3d(-100%,0,0)}}@media(max-width:1050px){.nav{gap:20px}.hero-inner{max-width:560px}.hero h1{font-size:clamp(5rem,12vw,7.6rem)}.section{width:min(var(--max),calc(100% - 48px))}}@media(max-width:850px){.header{width:calc(100% - 32px)}.menu{display:grid;place-items:center;width:44px;height:44px;cursor:pointer}.nav{position:fixed;top:76px;right:-16px;left:-16px;display:none;flex-direction:column;align-items:stretch;gap:3px;max-height:calc(100dvh - 76px);overflow-y:auto;padding:20px;border-bottom:1px solid var(--line);background:#050713fa;font-size:.9rem}.nav.open{display:flex}.nav a{display:flex;align-items:center;min-height:46px;border-bottom:1px solid var(--line)}.nav .nav-cta{justify-content:center;margin-top:10px;border:1px solid var(--accent)}.hero{min-height:780px}.hero:before{background-position:63% center}.hero:after{background:linear-gradient(90deg,#050713fc,#050713f0 48%,#0507136b),linear-gradient(0deg,var(--bg),transparent 28%)}.about-layout{grid-template-columns:200px 1fr;gap:40px}.about-note{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:18px;padding:28px 0 0;border-top:1px solid var(--line);border-left:0}.about-note>span{grid-column:1 / -1;margin-bottom:0}.current-item{align-content:start;border-bottom:1px solid var(--line)}.project-row{grid-template-columns:minmax(190px,.85fr) 1.4fr;gap:26px}.project-meta{grid-column:2}.experience-item{grid-template-columns:60px 1fr}.experience-details{grid-column:2}.skill-block{grid-template-columns:minmax(190px,31%) 1fr;gap:24px;padding-right:8px}.featured-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){html,body{overflow-x:hidden}.ambient-scene{background-position:center,center;background-size:cover,cover}.header{width:calc(100% - 24px)}.header:after{width:42px}.logo{gap:8px;font-size:.74rem;letter-spacing:.1em}.logo img{width:32px;height:32px}.nav{right:-12px;left:-12px}.hero{min-height:760px;padding:125px 18px 76px}.hero:before{background-position:82% center}.hero:after{background:linear-gradient(90deg,#0507137a,#05071333 62%,#05071314),linear-gradient(0deg,var(--bg) 0%,rgba(5,7,19,.76) 14%,transparent 46%)}.hero-passing-light{width:72%;animation-duration:15s}.hero-agent-shadow{right:-42%;width:100%;animation-duration:15s}.hero-inner{text-shadow:0 2px 18px rgba(0,0,0,.82)}.hero-kicker{gap:8px;margin-bottom:20px;font-size:.55rem;line-height:1.5;letter-spacing:.14em}.hero-kicker:before{width:22px}.hero h1{font-size:clamp(3.5rem,18vw,5rem);line-height:.78}.hero h1 span:last-child{margin-left:.08em}.hero-role{max-width:90%;margin-top:30px;font-size:1.08rem;line-height:1.3}.hero-actions{flex-direction:column;align-items:stretch}.button{justify-content:center;width:100%;min-height:48px}.section{width:calc(100% - 32px);padding:76px 0}.section:before{background:#050812bd;box-shadow:0 0 0 100vmax #050812bd;-webkit-backdrop-filter:none;backdrop-filter:none}.section:nth-of-type(odd):before{background:#090e1bb3;box-shadow:0 0 0 100vmax #090e1bb3}.section-title{grid-template-columns:minmax(12px,1fr) 5px minmax(0,auto) 5px minmax(12px,1fr);gap:8px;margin-bottom:42px}.section-title h2{max-width:100%;font-size:clamp(1.85rem,9.2vw,2.65rem);overflow-wrap:anywhere}.section-title i{width:5px;height:5px}.about-layout{grid-template-columns:1fr;gap:32px}.about-photo{justify-self:center;width:min(52vw,200px);margin-inline:auto}.about-note{display:block;margin-top:0;padding:26px 0 0;border-top:1px solid var(--line);border-left:0}.about-note>span{margin-bottom:18px}.current-item{grid-template-columns:22px minmax(0,1fr);gap:11px;padding:19px 0}.current-item h3,.current-item p{overflow-wrap:anywhere}.achievement-row{grid-template-columns:1fr;gap:16px}.project-row{grid-template-columns:1fr;gap:14px;padding:28px 0}.project-row:hover{padding-right:0;padding-left:0;background:transparent}.project-description,.project-meta{grid-column:auto}.project-description{margin-top:4px}.project-name h3,.project-description{overflow-wrap:anywhere}.project-links a,.more-link,.experience-details a,.skill-block a,.feature-card>a{min-height:40px}.experience-item{grid-template-columns:50px 1fr;gap:18px}.experience-logo{width:46px;height:46px}.experience-heading{min-width:0}.experience-heading h3{overflow-wrap:anywhere}.experience-details{grid-column:1 / -1}.experience-details ul{padding-left:18px}.skill-block{grid-template-columns:1fr;gap:13px;min-height:0;padding:24px 0}.skill-block:hover{padding-left:0}.skill-heading{gap:10px}.skill-block h3{font-size:1.18rem}.skill-tags{gap:6px;padding-top:8px}.skill-tags li{padding:6px 8px 5px;font-size:.62rem}.education-item{grid-template-columns:54px minmax(0,1fr);gap:16px}.education-item>img{width:48px;height:48px}.education-item h3,.education-item p{overflow-wrap:anywhere}.featured-grid{grid-template-columns:1fr;gap:40px}.feature-card>a:first-child{aspect-ratio:1.45}.certification{grid-template-columns:46px minmax(0,1fr);gap:13px}.certification>img{width:42px;height:42px}.certification>a{grid-column:2}.certification h3{overflow-wrap:anywhere}footer{padding:86px 16px 24px}.footer-main h2{font-size:clamp(3.3rem,17vw,4.6rem)}.footer-main>a{max-width:100%;font-size:.92rem;overflow-wrap:anywhere}.profile-groups{grid-template-columns:1fr;gap:38px;margin-top:52px}.contact-links>a{min-height:72px}.contact-brand{min-width:0;gap:12px}.contact-logo{width:38px;height:38px}.contact-links strong{font-size:.94rem}.footer-bottom{flex-wrap:wrap;gap:20px}.footer-bottom>a:last-child{display:none}}@media(max-width:390px){.hero:before{background-position:85% center}.section-title{display:block;text-align:center}.section-title .deco-rule,.section-title i{display:none}.section-title h2{font-size:clamp(1.75rem,10vw,2.25rem)}.hero h1{font-size:clamp(3.2rem,17vw,4rem)}.hero-kicker{max-width:250px}.project-meta>ul li:not(:last-child):after{margin-inline:5px}.contact-links>a>svg{width:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.ambient-scene{transform:none;transition:none}.hero-window-lights,.hero-passing-light,.hero-agent-shadow{display:none}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
