@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/inter-latin-400-normal.C38fXH4l.woff2)format("woff2"),url(/_astro/inter-latin-400-normal.CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/inter-latin-500-normal.Cerq10X2.woff2)format("woff2"),url(/_astro/inter-latin-500-normal.BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/inter-latin-600-normal.LgqL8muc.woff2)format("woff2"),url(/_astro/inter-latin-600-normal.CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/inter-latin-700-normal.Yt3aPRUw.woff2)format("woff2"),url(/_astro/inter-latin-700-normal.BLAVimhd.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/space-grotesk-latin-500-normal.lFbtlQH6.woff2)format("woff2"),url(/_astro/space-grotesk-latin-500-normal.CNSSEhBt.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/space-grotesk-latin-700-normal.RjhwGPKo.woff2)format("woff2"),url(/_astro/space-grotesk-latin-700-normal.CwsQ-cCU.woff)format("woff")}@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/space-mono-latin-400-normal.Rg4St2Dn.woff2)format("woff2"),url(/_astro/space-mono-latin-400-normal._3DlpgIW.woff)format("woff")}:root{--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-display:"Space Grotesk", sans-serif;--font-mono:"Space Mono", monospace;--dur-fast:.18s;--dur-med:.32s;--ease-std:cubic-bezier(.25, .8, .25, 1);--ease-pop:cubic-bezier(.34, 1.56, .64, 1);--r-lg:16px;--r-md:8px;--r-pill:9999px;--bg-primary:#090d16;--bg-secondary:#0f1524;--bg-card:#141c2f;--bg-input:#1e293b;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#94a3b8;--accent:#0ea5e9;--accent-light:#38bdf8;--accent-rgb:14, 165, 233;--accent-gold:#fbb500;--border:#94a3b81f;--border-focus:#0ea5e966;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #00000026, 0 4px 6px -4px #00000026;--shadow-glow:0 0 20px #0ea5e933}[data-theme=light]{--bg-primary:#f8fafc;--bg-secondary:#f1f5f9;--bg-card:#fff;--bg-input:#e2e8f0;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#526279;--accent:#0369a1;--accent-light:#0ea5e9;--accent-rgb:2, 132, 199;--accent-gold:#b45309;--border:#0f172a14;--border-focus:#0284c74d;--shadow-sm:0 1px 3px #00000005;--shadow-md:0 4px 12px -2px #0f172a0d;--shadow-lg:0 12px 24px -4px #0f172a14;--shadow-glow:0 0 15px #0284c71a}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:100px}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;transition:background-color var(--dur-med) ease, color var(--dur-med) ease;line-height:1.6;overflow-x:hidden}.topo-canvas{z-index:-1;pointer-events:none;width:100vw;height:100vh;display:block;position:fixed;top:0;left:0}a{color:inherit;transition:color var(--dur-fast) ease;text-decoration:none}.container{width:min(1040px,90vw);margin:0 auto}.header{z-index:50;background:color-mix(in srgb, var(--bg-primary) 85%, transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);transition:background-color var(--dur-med) ease, border-color var(--dur-med) ease;position:fixed;top:0;left:0;right:0}.header-inner{justify-content:space-between;align-items:center;height:72px;display:flex}.logo-lockup{font-family:var(--font-display);color:var(--text-primary);align-items:center;gap:8px;font-size:19px;font-weight:700;display:flex}.logo-dot{color:var(--accent)}.logo-domain{font-family:var(--font-mono);color:var(--text-muted);background:var(--bg-secondary);border-radius:var(--r-md);border:1px solid var(--border);padding:2px 8px;font-size:13px;font-weight:400}.nav-links{align-items:center;gap:24px;display:flex}.nav-link{color:var(--text-secondary);text-transform:lowercase;padding:4px 0;font-size:14px;font-weight:500;position:relative}.nav-link:hover,.nav-link.active{color:var(--text-primary)}.nav-link:after{content:"";background-color:var(--accent);width:0;height:2px;transition:width var(--dur-fast) ease;position:absolute;bottom:0;left:0}.nav-link:hover:after,.nav-link.active:after{width:100%}.header-controls{align-items:center;gap:12px;display:flex}.btn-icon{border:1px solid var(--border);color:var(--text-primary);border-radius:var(--r-md);cursor:pointer;width:44px;height:44px;transition:background-color var(--dur-fast) ease, border-color var(--dur-fast) ease, transform var(--dur-fast) var(--ease-pop);background:0 0;place-items:center;display:grid}.btn-icon:hover{background-color:var(--bg-secondary);border-color:var(--accent);transform:scale(1.05)}.btn-icon:active{transform:scale(.95)}.btn-icon svg{width:18px;height:18px}.hero{padding:160px 0 80px;position:relative;overflow:hidden}.hero-grid{grid-template-columns:1fr auto;align-items:center;gap:60px;display:grid}@media (width<=820px){.hero-grid{text-align:center;grid-template-columns:1fr;gap:30px}.hero-actions{justify-content:center}.hero-avatar{margin-top:16px;margin-bottom:24px}}.hero-text h1{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:8px;font-size:clamp(2.5rem,6.5vw,4.2rem);font-weight:800;line-height:1.1}.hero-text h1 span{color:var(--accent)}.hero-subtitle{font-family:var(--font-mono);color:var(--accent-gold);margin-bottom:24px;font-size:clamp(1rem,2.4vw,1.25rem)}.hero-bio{color:var(--text-secondary);max-width:620px;margin-bottom:36px;font-size:clamp(1rem,2vw,1.15rem)}.hero-actions{flex-wrap:wrap;gap:16px;display:flex}.hero-avatar{width:clamp(240px,28vw,300px);transition:transform var(--dur-med) var(--ease-pop), box-shadow var(--dur-med) ease, border-color var(--dur-med) ease;background-color:#fff;border:1px solid #00000014;border-radius:12px;margin:0 auto;padding:8px 8px 18px;position:relative;transform:rotate(3deg);box-shadow:0 10px 25px -5px #0f172a1f,0 8px 16px -6px #0f172a14}.hero-avatar img{aspect-ratio:1/1.25;object-fit:cover;border-radius:6px;width:100%;height:auto;display:block}.hero-avatar:hover{transform:translateY(-6px)scale(1.03)rotate(1deg);box-shadow:0 20px 35px -10px #0f172a33,0 12px 20px -8px #0f172a26}[data-theme=dark] .hero-avatar{border-color:#ffffff26;box-shadow:0 0 25px #0ea5e959}[data-theme=dark] .hero-avatar:hover{box-shadow:0 0 35px #0ea5e98c}.btn-primary{background-color:var(--accent);color:#082f49;font-family:var(--font-sans);border-radius:var(--r-md);cursor:pointer;box-shadow:var(--shadow-md);transition:background-color var(--dur-fast) ease, transform var(--dur-fast) var(--ease-pop), box-shadow var(--dur-fast);border:0;align-items:center;gap:8px;padding:12px 28px;font-size:15px;font-weight:600;display:inline-flex}.btn-primary:hover{background-color:var(--accent-light);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-card);color:var(--text-primary);font-family:var(--font-sans);border-radius:var(--r-md);border:1px solid var(--border);cursor:pointer;box-shadow:var(--shadow-sm);transition:background-color var(--dur-fast) ease, border-color var(--dur-fast) ease, transform var(--dur-fast) var(--ease-pop);align-items:center;gap:8px;padding:12px 28px;font-size:15px;font-weight:600;display:inline-flex}.btn-secondary:hover{background-color:var(--bg-secondary);border-color:var(--accent);transform:translateY(-2px)}.btn-secondary:active{transform:translateY(0)}.contact-info-list{background:var(--bg-card);border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--shadow-md);grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:16px;margin-top:50px;padding:24px;display:grid}.contact-card{color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:var(--r-md);min-width:0;transition:background-color var(--dur-fast) ease;background:0 0;border:0;align-items:center;gap:14px;padding:8px;display:flex;position:relative}.contact-card:hover{background-color:var(--bg-secondary)}.contact-icon{background-color:var(--bg-secondary);width:40px;height:40px;color:var(--accent);border:1px solid var(--border);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.contact-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;display:block}.contact-value{overflow-wrap:anywhere;user-select:text;color:var(--text-primary);font-size:14px;font-weight:500;display:block}.toast-msg{background:var(--text-primary);color:var(--bg-primary);border-radius:var(--r-md);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) ease, transform var(--dur-fast) var(--ease-pop);padding:4px 10px;font-size:11px;font-weight:700;position:absolute;top:-30px;left:50%;transform:translate(-50%)translateY(10px)}.toast-msg.show{opacity:1;transform:translate(-50%)translateY(0)}.section{border-top:1px solid var(--border);padding:80px 0}.section-head{margin-bottom:50px}.section-eyebrow{font-family:var(--font-mono);color:var(--accent);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;font-size:13px}.section-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-primary);font-size:clamp(1.8rem,4vw,2.5rem);font-weight:700}.timeline{padding-left:32px;position:relative}.timeline:before{content:"";background-color:var(--border);width:2px;position:absolute;top:8px;bottom:8px;left:5px}.timeline-item{margin-bottom:48px;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-dot{background-color:var(--bg-primary);border:3px solid var(--accent);width:12px;height:12px;transition:transform var(--dur-fast) var(--ease-pop);z-index:5;border-radius:50%;position:absolute;top:8px;left:-32px}.timeline-item:hover .timeline-dot{background-color:var(--accent);transform:scale(1.3)}.timeline-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.timeline-header-left{align-items:center;gap:16px;display:flex}.company-logo-container{border:1px solid var(--border);width:42px;min-width:42px;height:42px;box-shadow:var(--shadow-sm);transition:transform var(--dur-fast) ease, border-color var(--dur-fast) ease;background-color:#fff;border-radius:8px;place-items:center;padding:6px;display:grid}.timeline-item:hover .company-logo-container{border-color:var(--accent);transform:scale(1.05)}.company-logo-container img{object-fit:contain;width:100%;height:100%}.role-title{font-family:var(--font-display);color:var(--text-primary);font-size:20px;font-weight:700}.company-badge{font-family:var(--font-mono);color:var(--accent-gold);background-color:rgba(var(--accent-rgb), .08);border-radius:var(--r-pill);border:1px solid var(--border);padding:4px 12px;font-size:13px;font-weight:600}.timeline-date{font-family:var(--font-mono);color:var(--text-muted);font-size:13px}.timeline-body{background:var(--bg-card);border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease;padding:28px}.timeline-item:hover .timeline-body{border-color:var(--border-focus);box-shadow:var(--shadow-md)}.timeline-desc-list{list-style:none}.timeline-desc-list li{color:var(--text-secondary);margin-bottom:12px;padding-left:20px;font-size:15px;position:relative}.timeline-desc-list li:last-child{margin-bottom:0}.timeline-desc-list li:before{content:"→";color:var(--accent);font-weight:700;position:absolute;left:0}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.skills-card{background:var(--bg-card);border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:30px}.skills-card h3{font-family:var(--font-display);color:var(--text-primary);border-bottom:1px solid var(--border);align-items:center;gap:10px;margin-bottom:20px;padding-bottom:12px;font-size:18px;font-weight:700;display:flex}.skills-card h3 svg{color:var(--accent);width:18px;height:18px}.skills-tags{flex-wrap:wrap;gap:10px;display:flex}.skill-tag{color:var(--text-secondary);background-color:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color var(--dur-fast) ease, color var(--dur-fast) ease, background-color var(--dur-fast) ease;padding:6px 14px;font-size:13px;font-weight:600}.skill-tag:hover{border-color:var(--accent);color:var(--text-primary);background-color:rgba(var(--accent-rgb), .05)}.education-card{background:var(--bg-card);border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);grid-template-columns:auto 1fr;align-items:center;gap:24px;padding:34px;display:grid}@media (width<=600px){.education-card{text-align:center;grid-template-columns:1fr}}.education-icon{background-color:var(--bg-secondary);border-radius:var(--r-lg);width:64px;height:64px;color:var(--accent);border:1px solid var(--border);place-items:center;margin:0 auto;display:grid}.education-icon svg{width:32px;height:32px}.education-icon img{object-fit:contain;width:36px;height:36px}.education-details h3{font-family:var(--font-display);color:var(--text-primary);margin-bottom:4px;font-size:22px;font-weight:700}.education-details .school{color:var(--accent-gold);margin-bottom:8px;font-size:16px;font-weight:500}.education-details .meta{font-family:var(--font-mono);color:var(--text-muted);font-size:13px}.footer{background-color:var(--bg-secondary);border-top:1px solid var(--border);text-align:center;color:var(--text-secondary);padding:56px 0 64px}.footer-logo{font-family:var(--font-display);color:var(--text-primary);margin-bottom:12px;font-size:18px;font-weight:700}.footer-links{flex-wrap:wrap;justify-content:center;gap:24px;margin-bottom:24px;display:flex}.footer-link{text-transform:lowercase;color:var(--text-muted);font-size:14px}.footer-link:hover{color:var(--text-primary)}.footer-legal{color:var(--text-muted);font-size:13px}.logo-lockup{white-space:nowrap}.mobile-menu-toggle{display:none}@media (width<=768px){.btn-print{display:none!important}.mobile-menu-toggle{display:grid!important}.logo-lockup{font-size:17px}.logo-domain{display:none}.header-controls{gap:8px}.nav-links{background:var(--bg-card);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);z-index:49;flex-direction:column;align-items:stretch;gap:0;padding:8px 0;display:none;position:absolute;top:72px;left:0;right:0}.header.nav-open .nav-links{animation:.25s cubic-bezier(.16,1,.3,1) forwards mobileMenuFadeIn;display:flex}.nav-link{border-bottom:1px solid var(--border);text-align:left;width:100%;padding:16px 24px;font-size:16px}.nav-link:last-child{border-bottom:none}.nav-link:after{display:none!important}}@media (width<=600px){.section{padding:50px 0}.timeline-body{padding:20px 16px}.skills-card{padding:20px}.skills-card h3{margin-bottom:16px;padding-bottom:10px}.contact-info-list{gap:12px;margin-top:30px;padding:16px}.education-card{gap:16px;padding:24px 20px}}@media (width<=480px){.timeline-header-left{flex-direction:column;align-items:flex-start;gap:10px}.timeline-date{margin-top:4px;display:block}}@keyframes mobileMenuFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}:focus-visible{outline:3px solid var(--accent-gold);outline-offset:3px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--bg-card);color:var(--text-primary);border-radius:var(--r-md);padding:12px 20px;position:fixed;top:12px;left:16px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}[data-theme=dark]{color-scheme:dark}[data-theme=light]{color-scheme:light}[data-theme=light] .btn-primary{color:#fff;background:#0369a1}[data-theme=light] .btn-primary:hover{background:#075985}.theme-icon-dark,.menu-icon-close,[data-theme=light] .theme-icon-light,.nav-open .menu-icon-open{display:none}[data-theme=light] .theme-icon-dark,.nav-open .menu-icon-close{display:block}@media (width<=480px){.header-controls{gap:4px}.logo-lockup{gap:2px;font-size:15px}.hero{padding-top:120px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.print-header{display:none}@media print{html{color-scheme:light!important;background:#fff!important}@page{size:letter;margin:.5in .6in}body,h1,h2,h3,h4,h5,h6,p,li,span,time,div,a,.print-name,.print-subtitle,.print-contact,.role-title,.company-badge,.timeline-date,.skills-card h3,.skill-tag,.education-details h3,.education-details .school,.education-details .meta{font-family:Georgia,Garamond,Times New Roman,Times,serif!important}a{color:#000!important;text-decoration:none!important}.header,.skip-link,#copy-status,.header-controls,.hero-actions,.btn-icon,.toast-msg,.footer,.btn-secondary,.hero-avatar,.topo-canvas,.contact-info-list,.hero-subtitle,.hero-text h1,.company-logo-container,.timeline:before,.timeline-dot,.education-icon,.skills-card h3 svg,.skills-card h3 i,.skills-card svg,.skills-card i{display:none!important}body{color:#000!important;background-color:#fff!important;font-size:10pt!important;line-height:1.35!important}.container{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}.print-header{text-align:center!important;border-bottom:1px solid #111!important;margin-bottom:18px!important;padding-bottom:8px!important;display:block!important}.print-name{text-transform:uppercase!important;letter-spacing:-.01em!important;color:#000!important;margin-bottom:4px!important;font-size:22pt!important;font-weight:700!important}.print-subtitle{text-transform:uppercase!important;letter-spacing:.05em!important;color:#333!important;margin-bottom:6px!important;font-size:11pt!important;font-weight:700!important}.print-contact{color:#222!important;word-spacing:1px!important;font-size:9pt!important}.hero{margin-bottom:12px!important;padding:0!important}.hero-bio{color:#222!important;max-width:none!important;margin-bottom:0!important;font-size:9.5pt!important;line-height:1.35!important}.hero-grid{text-align:left!important;display:block!important}.section{padding:8px 0!important}.section-head{border-bottom:.75px solid #111!important;margin-bottom:10px!important;padding-bottom:2px!important}.section-eyebrow{display:none!important}.section-title{text-transform:uppercase!important;letter-spacing:.05em!important;color:#000!important;margin:0!important;font-size:11pt!important;font-weight:700!important}.timeline{padding-left:0!important}.timeline-item{page-break-inside:avoid!important;margin-bottom:14px!important}.timeline-header{grid-template-columns:1fr auto!important;align-items:baseline!important;margin-bottom:4px!important;display:grid!important}.timeline-header-left{grid-column:1!important;display:block!important}.role-title{color:#000!important;font-size:11pt!important;font-weight:700!important;display:block!important}.company-badge{color:#444!important;background:0 0!important;border:0!important;margin:2px 0 0!important;padding:0!important;font-size:10pt!important;font-style:italic!important;font-weight:400!important;display:block!important}.timeline-date{color:#444!important;white-space:nowrap!important;text-align:right!important;grid-area:1/2!important;font-size:9.5pt!important;font-weight:400!important}.timeline-body{box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}.timeline-desc-list{margin-top:2px!important;margin-bottom:4px!important}.timeline-desc-list li{color:#222!important;margin-bottom:3px!important;padding-left:10px!important;font-size:9.5pt!important;line-height:1.35!important}.timeline-desc-list li:before{content:"•"!important;color:#333!important;font-size:10pt!important;left:0!important}.skills-grid{display:block!important}.skills-card{page-break-inside:avoid!important;box-shadow:none!important;background:0 0!important;border:0!important;flex-direction:row!important;align-items:flex-start!important;gap:12px!important;margin-bottom:2px!important;padding:3px 0!important;display:flex!important}.skills-card h3{text-transform:uppercase!important;letter-spacing:.02em!important;color:#000!important;min-width:215px!important;max-width:215px!important;margin:0!important;padding:0!important;font-size:10pt!important;font-weight:700!important;display:block!important}.skills-card h3:after{content:":"!important}.skills-tags{display:inline!important}.skill-tag{color:#333!important;background:0 0!important;border:0!important;padding:0!important;font-size:9.5pt!important;display:inline!important}.skill-tag:after{content:", "!important}.skill-tag:last-child:after{content:""!important}.education-card{box-shadow:none!important;page-break-inside:avoid!important;background:0 0!important;border:0!important;padding:0!important;display:block!important}.education-details{grid-template-columns:1fr auto!important;row-gap:2px!important;width:100%!important;display:grid!important}.education-details h3{color:#000!important;grid-column:1!important;font-size:11pt!important;font-weight:700!important;display:inline!important}.education-details .school{color:#444!important;grid-column:1!important;margin:0!important;font-size:10pt!important;font-style:italic!important;font-weight:400!important;display:inline!important}.education-details .meta{color:#444!important;white-space:nowrap!important;text-align:right!important;grid-area:1/2/span 2!important;align-self:start!important;font-size:9.5pt!important;font-weight:400!important}}
