@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-400-normal-BCNrxLz_.woff2) format("woff2"),url(/assets/eb-garamond-latin-400-normal-maQnHeKB.woff) format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/eb-garamond-latin-500-normal-DehAIUv0.woff2) format("woff2"),url(/assets/eb-garamond-latin-500-normal-DZU8xF9o.woff) format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/eb-garamond-latin-600-normal-DHwxsLHv.woff2) format("woff2"),url(/assets/eb-garamond-latin-600-normal-xCe6GkOx.woff) format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/eb-garamond-latin-700-normal-D7LhwqnD.woff2) format("woff2"),url(/assets/eb-garamond-latin-700-normal-DcHu0PDI.woff) format("woff")}:root{color-scheme:dark;--bg: #05070d;--bg-soft: #0b101b;--navy: #101c31;--surface: #111827;--surface-raised: #182338;--surface-hover: #1c2a43;--border: #334155;--border-soft: #263348;--text: #f8fafc;--body-text: #dce4f2;--muted: #b9c4d3;--blue: #2563eb;--blue-hover: #1d4ed8;--blue-light: #93bbff;--blue-glow: rgb(59 130 246 / 26%);--blue-glow-soft: rgb(59 130 246 / 12%);--slate-glow: rgb(148 163 184 / 11%);--nav-glass: rgb(5 7 13 / 86%);--photo-scrim: rgb(5 7 13 / 86%);--shadow: rgb(0 0 0 / 28%);--clear: transparent;--hero-gradient: radial-gradient(ellipse at 14% 12%, var(--slate-glow), var(--clear) 55%), linear-gradient(125deg, var(--navy), var(--bg-soft) 52%, var(--bg));--section-gradient: linear-gradient(180deg, var(--bg), var(--bg-soft) 50%, var(--bg));--section-ambient-gradient: radial-gradient(ellipse 65% 42% at 5% 0%, var(--blue-glow-soft), var(--clear) 90%), radial-gradient(ellipse 55% 45% at 95% 100%, var(--slate-glow), var(--clear) 90%);--card-gradient: linear-gradient(145deg, var(--surface-raised), var(--surface));--photo-gradient: linear-gradient(var(--clear), var(--photo-scrim));--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-5: 3rem;--space-6: 4rem;--space-7: 6rem;--radius: 1rem;--radius-pill: 999px;--content-width: 75rem;--font-main: "EB Garamond", Georgia, serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:280px;background:var(--bg);color:var(--body-text);font-family:var(--font-main);font-size:1.125rem;line-height:1.55}button,a{-webkit-tap-highlight-color:var(--clear)}button{font:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{color:var(--text);line-height:1.12}a{color:var(--blue-light);text-underline-offset:.25em}a:hover{color:var(--text)}:focus-visible{outline:3px solid var(--blue-light);outline-offset:4px}section{scroll-margin-top:6.5rem}.container{width:min(calc(100% - 2rem),var(--content-width));margin-inline:auto}.top-anchor{display:block;height:0}.skip-link{position:fixed;z-index:50;top:var(--space-2);left:var(--space-2);transform:translateY(-200%);padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);background:var(--text);color:var(--bg);font-weight:700}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:30;border-bottom:1px solid var(--border-soft);background:var(--nav-glass);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.nav{position:relative;display:flex;min-height:4.75rem;align-items:center;justify-content:space-between;gap:var(--space-2)}.brand{display:inline-flex;min-height:2.75rem;align-items:center;gap:.75rem;color:var(--text);font-size:1.125rem;font-weight:700;text-decoration:none;white-space:nowrap}.brand:hover{color:var(--text)}.brand-mark{display:block;width:2.75rem;height:2.75rem;flex:none;object-fit:contain}.menu-toggle{display:grid;width:3rem;height:3rem;place-items:center;border:1px solid var(--border);border-radius:.75rem;background:var(--surface);color:var(--text);cursor:pointer}.menu-toggle:hover{background:var(--surface-hover)}.menu-toggle:active{background:var(--navy)}.menu-lines{display:grid;gap:5px}.menu-lines span{display:block;width:20px;height:2px;border-radius:var(--radius-pill);background:currentColor}.nav-links{position:absolute;top:calc(100% + .5rem);right:0;left:0;display:none;list-style:none;margin:0;padding:.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:0 20px 45px var(--shadow)}.nav-links[data-open=true]{display:flex;flex-direction:column}.nav-links li{margin:0}.nav-links a{display:flex;min-height:3rem;align-items:center;padding:.5rem 1rem;border-radius:.65rem;color:var(--body-text);font-size:1.05rem;font-weight:600;text-decoration:none}.nav-links a:hover,.nav-links a:active{background:var(--surface-hover);color:var(--text)}.nav-links a:focus-visible{outline-offset:-3px}.button{display:inline-flex;min-height:3rem;align-items:center;justify-content:center;padding:.7rem 1.4rem;border:1px solid var(--clear);border-radius:var(--radius-pill);font-size:1.08rem;font-weight:700;line-height:1.3;text-align:center;text-decoration:none;transition:background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)}.button-primary{background:var(--blue);color:var(--text);box-shadow:0 10px 30px var(--blue-glow-soft)}.button-primary:hover,.button-primary:active{background:var(--blue-hover);color:var(--text)}.button-secondary{border-color:var(--border);background:var(--surface);color:var(--text)}.button-secondary:hover,.button-secondary:active{border-color:var(--blue-light);background:var(--surface-hover);color:var(--text)}.button:disabled{cursor:wait;opacity:.72;transform:none}.section-backdrop{background:var(--section-gradient)}.hero{position:relative;isolation:isolate;overflow:hidden;padding:var(--space-6) 0 var(--space-7);background:var(--hero-gradient)}.hero-glow{position:absolute;z-index:-1;top:var(--glow-y, 38%);left:var(--glow-x, 68%);width:min(70vw,46rem);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--blue-glow),var(--blue-glow-soft) 45%,var(--clear) 72%);filter:blur(48px);pointer-events:none;animation:glow-breathe 14s ease-in-out infinite alternate}.hero-grid{display:grid;align-items:center;gap:var(--space-5)}.eyebrow,.section-index,.card-meta{color:var(--blue-light);font-size:.95rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.eyebrow{margin-bottom:var(--space-3)}h1{max-width:10ch;margin-bottom:var(--space-1);font-size:clamp(3.8rem,10vw,7.5rem);font-weight:700;letter-spacing:-.045em}h1 span{display:block}.hero-role{margin-bottom:var(--space-3);color:var(--blue-light);font-size:clamp(1.25rem,1.8vw,1.5rem);font-weight:600;letter-spacing:.08em;line-height:1.25}.hero-tagline{max-width:32ch;margin-bottom:var(--space-2);color:var(--text);font-size:clamp(1.5rem,2.5vw,2rem);font-weight:600;line-height:1.3}.hero-description{max-width:57ch;margin-bottom:var(--space-4);color:var(--muted);font-size:1.125rem;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.portrait-card{position:relative;width:min(100%,33rem);aspect-ratio:4 / 5;justify-self:center;margin:0;overflow:hidden;border:1px solid var(--border);border-radius:calc(var(--radius) + .5rem);background:var(--surface);box-shadow:0 28px 65px var(--shadow)}.portrait-card>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 43%}.portrait-card:after{content:"";position:absolute;inset:45% 0 0;background:var(--photo-gradient);pointer-events:none}.portrait-caption{position:absolute;z-index:1;right:var(--space-3);bottom:var(--space-3);left:var(--space-3);display:grid;gap:.4rem;padding-top:var(--space-2);border-top:1px solid var(--muted);color:var(--text);font-size:1rem;line-height:1.45;pointer-events:none}.portrait-caption strong{color:var(--blue-light);font-size:.88rem;letter-spacing:.1em;text-transform:uppercase}.content-section{position:relative;isolation:isolate;overflow:hidden;padding:var(--space-7) 0;border-top:1px solid var(--border-soft)}.content-section:before{content:"";position:absolute;inset:-4%;z-index:-1;background:var(--section-ambient-gradient);pointer-events:none;animation:ambient-drift 18s ease-in-out infinite alternate}.section-heading{margin-bottom:var(--space-4)}.section-index{margin-bottom:var(--space-2)}h2{max-width:19ch;margin-bottom:0;font-size:clamp(2.7rem,4.7vw,4.25rem);font-weight:700;letter-spacing:-.025em}.card{padding:var(--space-3);border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--card-gradient);box-shadow:0 15px 36px var(--shadow)}.card p:last-child{margin-bottom:0}.about-layout,.about-details,.experience-grid,.interest-grid{display:grid;gap:var(--space-2)}.about-intro p{margin:0;color:var(--text);font-size:clamp(1.4rem,2vw,1.75rem);font-weight:500;line-height:1.4}.about-details p,.experience-card p:not(.card-meta),.interest-grid p{color:var(--muted);font-size:1.125rem;line-height:1.65}.experience-section{background:var(--section-gradient)}.experience-card{min-height:15rem}.experience-card h3,.interest-grid h3{margin-bottom:var(--space-2);font-size:clamp(1.6rem,2vw,2rem);font-weight:700;letter-spacing:-.015em}.experience-card .card-meta{margin-bottom:var(--space-3)}.experience-card:hover,.experience-card:focus-visible{border-color:var(--blue);box-shadow:0 15px 36px var(--shadow),0 0 0 1px var(--blue-glow-soft)}.experience-card:focus-visible{outline:2px solid var(--blue-light);outline-offset:3px}.credentials{display:grid;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--surface)}.credentials div{display:grid;gap:.2rem}.credentials strong{color:var(--text);font-size:1rem;letter-spacing:.03em}.credentials span{color:var(--muted);font-size:1.05rem}.interest-grid .card{min-height:12.5rem}.interest-grid h3{margin-top:0}.contact-layout{display:grid;gap:var(--space-4);align-items:start}.contact-intro{max-width:42ch;margin:var(--space-3) 0 0;color:var(--muted);font-size:1.125rem;line-height:1.6}.contact-phone{margin:var(--space-2) 0 0;color:var(--body-text);font-size:1.125rem;line-height:1.6}.contact-phone a{display:inline-block;min-height:2.75rem;align-content:center;font-weight:700}.contact-form{display:grid;gap:var(--space-3)}.form-field{display:grid;gap:var(--space-1)}.form-field label{color:var(--text);font-size:1.125rem;font-weight:600}.form-field input,.form-field textarea{width:100%;min-height:3rem;padding:.75rem 1rem;border:1px solid var(--border);border-radius:.75rem;background:var(--bg-soft);color:var(--text);font:inherit;font-size:1.125rem;line-height:1.4}.form-field textarea{min-height:9rem;resize:vertical}.form-field input:hover,.form-field textarea:hover{border-color:var(--blue-light)}.form-field input:focus-visible,.form-field textarea:focus-visible{outline:3px solid var(--blue-light);outline-offset:2px}.form-note{margin:0;color:var(--muted);font-size:1rem}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.field-error{color:var(--blue-light);font-size:1rem}.contact-success{display:grid;align-content:start;gap:var(--space-2)}.contact-success h3{margin:0;font-size:clamp(1.8rem,3vw,2.4rem)}.contact-success p{margin:0;color:var(--muted)}.contact-success .button{justify-self:start;margin-top:var(--space-2)}.contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.story-section{background:var(--section-gradient)}.story-layout{display:grid;gap:var(--space-2)}.story-card{align-self:start}.story-content p{margin-bottom:var(--space-3);color:var(--body-text);font-size:1.125rem;line-height:1.65}.story-content p:last-child{margin-bottom:0}.site-footer{padding:var(--space-5) 0 var(--space-3);border-top:1px solid var(--border-soft);background:var(--bg-soft)}.footer-main{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2);padding-bottom:var(--space-5)}.footer-name{margin:0 0 .2rem;color:var(--text);font-size:1.6rem;font-weight:700}.footer-main p:last-child{margin-bottom:0;color:var(--muted)}.footer-bottom{display:grid;gap:.25rem;padding-top:var(--space-2);border-top:1px solid var(--border-soft);color:var(--muted);font-size:1rem}.footer-bottom p{margin:0}.motion-ready [data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .52s ease-out,transform .52s ease-out;transition-delay:var(--reveal-delay, 0ms)}.motion-ready [data-reveal].entered{opacity:1;transform:translateY(0)}.hero-grid>:nth-child(2),.about-layout>:nth-child(2),.about-details>:nth-child(2),.experience-grid>:nth-child(2),.interest-grid>:nth-child(2){--reveal-delay: .11s}.experience-grid>:nth-child(3){--reveal-delay: .18s}.experience-grid>:nth-child(4){--reveal-delay: .24s}@keyframes glow-breathe{0%{transform:translate(-50%,-50%) scale(.92);opacity:.68}to{transform:translate(-50%,-50%) scale(1.14);opacity:1}}@keyframes ambient-drift{0%{transform:translate(-2%) scale(1)}to{transform:translate(2%,2%) scale(1.04)}}@media(min-width:700px){.container{width:min(calc(100% - 3rem),var(--content-width))}.menu-toggle{display:none}.nav-links,.nav-links[data-open=true]{position:static;display:flex;flex-direction:row;gap:.4rem;padding:0;border:0;border-radius:0;background:var(--clear);box-shadow:none}.nav-links a{min-height:2.75rem;padding-inline:.9rem}.hero{padding:var(--space-7) 0}.about-details,.experience-grid,.interest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card{padding:var(--space-4)}.credentials{grid-template-columns:repeat(3,minmax(0,1fr));padding:var(--space-4)}.footer-bottom{grid-template-columns:1fr auto;gap:var(--space-3)}}@media(min-width:980px){.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:var(--space-6)}.hero-copy{padding-block:var(--space-4)}.portrait-card{width:100%}.about-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.about-details{grid-template-columns:1fr}.experience-grid{gap:var(--space-3)}.story-layout,.contact-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:var(--space-6)}}@media(max-width:420px){.footer-main{flex-direction:column}.portrait-caption{right:var(--space-2);bottom:var(--space-2);left:var(--space-2)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready [data-reveal]{opacity:1;transform:none}}
