:root{--bg: #070a10;--surface: #0d1424;--surface-alt: #0b1120;--text: #f3f4f6;--text-muted: #9eabc4;--line: #1f2a3d;--accent: #3568d8;--radius: 10px;--space-1: .5rem;--space-2: .75rem;--space-3: 1rem;--space-4: 1.5rem;--space-5: 2rem;--space-6: 3rem;--space-7: 4rem}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:Inter,Geist,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html,body{scroll-behavior:auto}*{animation:none!important;transition:none!important}}a{color:inherit}#top,section[id]{scroll-margin-top:5.7rem}.site-shell{width:min(1100px,calc(100% - 2.8rem));margin:var(--space-6) auto;display:grid;gap:var(--space-7)}.site-nav{position:sticky;top:1rem;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:.7rem .95rem;border-radius:var(--radius);border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(10px)}.site-mark{text-decoration:none;font-size:.83rem;letter-spacing:.08em;text-transform:uppercase;color:#dce8ff}.nav-toggle{display:none;border:1px solid var(--line);background:var(--surface);color:#e7efff;border-radius:8px;width:2.1rem;height:2.1rem}.site-nav ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.site-nav ul a{text-decoration:none;font-size:.83rem;color:var(--text-muted);border-radius:6px;border:1px solid transparent;padding:.3rem .62rem;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.site-nav ul a:hover,.site-nav ul a.is-active{color:#edf3ff;background:color-mix(in srgb,var(--accent) 20%,transparent);border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.hero{border:1px solid var(--line);border-radius:var(--radius);padding:clamp(var(--space-5),4vw,4.5rem);display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,1fr);gap:var(--space-5);background:var(--surface);align-items:center}.eyebrow,.location,.card h3,.section-head h2,.timeline-item h3,.skill-group h3,.hero-actions a,.inline-socials a,.social-list a,.card-links a,.contact-actions a{display:inline-flex;align-items:center;gap:.5rem}.eyebrow{margin:0;font-size:.78rem;letter-spacing:.13em;text-transform:uppercase;color:var(--accent)}h1{margin:var(--space-2) 0 0;font-size:clamp(3rem,8vw,5rem);line-height:.95;letter-spacing:-.03em}.hero-title{margin:var(--space-4) 0 var(--space-2);color:#d9e3f6;font-size:clamp(1.3rem,2.8vw,1.8rem)}.hero-summary{margin:0;color:var(--text-muted);line-height:1.8;font-size:1.08rem;max-width:62ch}.location{margin-top:var(--space-4);color:var(--text-muted);font-size:.95rem}.hero-actions,.inline-socials,.social-list,.contact-actions,.card-links{display:flex;flex-wrap:wrap;gap:var(--space-2)}.inline-socials,.social-list{margin:0;padding:0;list-style:none}.hero-actions,.inline-socials{margin-top:var(--space-4)}.hero-actions a,.inline-socials a,.social-list a,.contact-actions a,.card-links a{text-decoration:none;padding:.67rem .95rem;border-radius:var(--radius);border:1px solid var(--line);font-size:.92rem;transition:transform .2s ease,border-color .2s ease,background-color .2s ease}.button-primary{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 20%,transparent);color:#edf3ff}.button-secondary{background:color-mix(in srgb,var(--surface-alt) 84%,transparent);color:#dbe7ff}.hero-actions a:hover,.inline-socials a:hover,.social-list a:hover,.contact-actions a:hover,.card-links a:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 60%,var(--line))}.hero-image-wrap{margin:0;justify-self:end}.hero-image-wrap img{width:clamp(210px,32vw,330px);aspect-ratio:1 / 1;object-fit:cover;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));box-shadow:0 14px 34px #03060c73}.section-block{border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-6);background:var(--surface)}.section-block:nth-of-type(2n){background:var(--surface-alt)}.section-head h2{margin:0;font-size:clamp(1.75rem,2.8vw,2.7rem);letter-spacing:-.02em}.section-head p{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:1.04rem}.section-content{margin-top:var(--space-5)}.stacked-content,.bullet-list,.skill-group ul,.card-grid{display:grid;gap:var(--space-3)}.stacked-content p,.card p,.section-content>p,.bullet-list li,.skill-group li,.timeline-item p{margin:0;color:var(--text-muted);line-height:1.8;font-size:1.04rem}.subheading{margin:var(--space-5) 0 var(--space-3);font-size:1.08rem}.bullet-list,.skill-group ul,.tags{margin:0;padding:0;list-style:none}.bullet-list li{position:relative;padding-left:1rem}.bullet-list li:before{content:"•";position:absolute;left:0;color:var(--accent)}.card-highlights{margin-top:var(--space-3)}.skill-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.skill-group,.card{border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-4);background:color-mix(in srgb,#0a1222 82%,transparent)}.skill-group h3,.card h3{margin:0 0 var(--space-3);color:#ebf2ff;font-size:1.1rem}.card-grid{grid-template-columns:1fr}.timeline-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2);align-items:baseline}.timeline-header span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem}.timeline-org{margin:0 0 var(--space-2);color:#d9e3f6;font-size:.95rem}.tags{display:flex;flex-wrap:wrap;gap:.48rem;margin:var(--space-4) 0}.tags li{font-size:.78rem;padding:.22rem .58rem;border-radius:999px;color:#dbe8ff;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line))}.contact-actions{margin-top:var(--space-4)}.site-footer{border-top:1px solid var(--line);padding-top:var(--space-4);color:var(--text-muted);font-size:.9rem;display:flex;justify-content:space-between;gap:var(--space-3)}.site-footer p{margin:0}.site-footer a{text-decoration:none;color:#dce7ff}.footer-links{display:inline-flex;align-items:center;gap:var(--space-2)}.footer-socials{margin:0;padding:0;list-style:none;display:inline-flex;gap:.35rem}.footer-socials a{width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:6px;color:var(--text-muted);transition:color .2s ease,border-color .2s ease}.footer-socials a:hover{color:#edf4ff;border-color:color-mix(in srgb,var(--accent) 60%,var(--line))}@media(max-width:980px){.hero{grid-template-columns:1fr;text-align:center}.hero-image-wrap{justify-self:center}.hero-actions,.inline-socials,.social-list,.contact-actions,.card-links{justify-content:center}.location,.section-head h2,.section-head p,.skill-group h3,.card h3,.timeline-item h3{justify-content:center;text-align:center}.hero-summary,.stacked-content p,.section-content>p{margin-inline:auto}.skill-groups{grid-template-columns:1fr}}@media(max-width:840px){.site-nav{position:sticky;flex-wrap:nowrap;align-items:center}.nav-toggle{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;cursor:pointer}.site-nav ul{position:absolute;top:calc(100% + .45rem);left:0;right:0;margin:0;padding:.45rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);box-shadow:0 16px 30px #050a1461;backdrop-filter:blur(10px);display:grid;grid-auto-rows:minmax(0,auto);justify-content:stretch;align-content:start;gap:.2rem;max-height:min(70vh,22rem);overflow-y:auto;opacity:0;transform:translateY(-.35rem);pointer-events:none;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility .2s ease;z-index:50}.site-nav ul.is-open{opacity:1;transform:translateY(0);pointer-events:auto;visibility:visible}.site-nav ul li{width:100%}.site-nav ul a{width:100%;display:inline-flex;justify-content:flex-start;padding:.68rem .75rem;border-radius:8px;font-size:.92rem}}@media(max-width:720px){.site-shell{width:min(1100px,calc(100% - 1.4rem));margin:var(--space-5) auto;gap:var(--space-6)}.hero,.section-block{padding:var(--space-4)}.timeline-header{grid-template-columns:1fr}.site-footer{flex-direction:column}.footer-links{justify-content:space-between}}
