:root{--navy:#003c66;--navy-deep:#001e33;--royal:#2199ab;--royal-deep:#187381;--gold:#c70;--tangerine:#ff7b00;--tangerine-deep:#994a00;--brandy:#e34e1c;--brandy-deep:#882f11;--paper:#fff;--paper-soft:#fafafa;--ink:#001524;--muted:color-mix(in oklch, var(--ink) 58%, white);--line:color-mix(in oklch, var(--ink) 14%, transparent);--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "SF Mono", "Roboto Mono", Menlo, Consolas, monospace;--container:78rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);letter-spacing:0;margin:0}a{color:inherit;text-decoration:none}main{min-height:100vh;overflow:hidden}.site-header{z-index:20;background:color-mix(in oklch, var(--paper-soft) 88%, transparent);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:.9rem clamp(1rem,4vw,3.5rem);position:fixed;inset:0 0 auto}.site-header-inner{width:100%;max-width:var(--container);justify-content:space-between;align-items:center;gap:1rem;margin-inline:auto;display:flex}.brand{font-family:var(--sans);letter-spacing:-.02em;font-size:clamp(1.15rem,2vw,1.4rem);font-weight:800}.nav-desktop{color:var(--muted);align-items:center;gap:clamp(1.1rem,2vw,1.9rem);font-size:.92rem;display:flex}.nav-desktop a{align-items:center;min-height:2.75rem;padding:.4rem 0;display:inline-flex;position:relative}.nav-desktop a:after{content:"";background:var(--royal);transform-origin:0;height:1px;transition:transform .16s cubic-bezier(.2,.8,.2,1);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav-desktop a:hover:after,.nav-desktop a:focus-visible:after{transform:scaleX(1)}.nav-desktop a:last-child{border:1px solid var(--ink);min-height:auto;color:var(--ink);padding:.5rem 1rem;font-weight:700;transition:background .16s,color .16s}.nav-desktop a:last-child:after{content:none}.nav-desktop a:last-child:hover,.nav-desktop a:last-child:focus-visible{background:var(--ink);color:var(--paper)}.mobile-nav{display:none}.mobile-nav-toggle{width:2.75rem;height:2.75rem;color:var(--ink);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.mobile-nav-panel{background:var(--paper);border-bottom:1px solid var(--line);opacity:0;pointer-events:none;flex-direction:column;padding:.5rem clamp(1rem,4vw,3.5rem) 1rem;transition:opacity .18s,transform .18s;display:flex;position:absolute;top:100%;left:0;right:0;transform:translateY(-8px)}.mobile-nav-panel.open{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-nav-panel a{border-top:1px solid var(--line);color:var(--ink);padding:1rem 0;font-size:1.05rem;font-weight:600}.mobile-nav-panel a:first-child{border-top:none}.hero{max-width:var(--container);background:var(--paper);grid-template-columns:minmax(0,1fr) minmax(16rem,22rem);grid-template-areas:"copy visual";align-items:center;gap:clamp(2rem,6vw,5rem);margin-inline:auto;padding:clamp(6.5rem,13vh,8.5rem) clamp(1.5rem,4vw,3.5rem) clamp(3rem,6vw,5rem);display:grid;position:relative}.hero-copy{grid-area:copy;max-width:34rem}.hero-location{color:var(--muted);letter-spacing:.03em;margin:0 0 .85rem;font-size:.85rem;font-weight:600}.eyebrow{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;align-items:baseline;gap:.6em;margin:0 0 1rem;font-size:.78rem;font-weight:700;display:inline-flex}.eyebrow .index{font-family:var(--mono);color:var(--gold);letter-spacing:.03em;font-weight:700}.eyebrow-gold{color:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--sans);letter-spacing:-.02em;text-wrap:balance;font-weight:800;line-height:1.08}h1{max-width:16ch;margin-bottom:1.1rem;font-size:clamp(2.4rem,4.6vw,3.75rem)}h2{max-width:34ch;font-size:clamp(1.4rem,2.4vw,2rem)}h3{font-family:var(--sans);letter-spacing:-.01em;margin-bottom:.55rem;font-size:clamp(1.1rem,1.5vw,1.3rem);font-weight:700}.hero-title{max-width:30rem;color:var(--muted);font-size:clamp(1.25rem,2.3vw,1.7rem);font-weight:500;line-height:1.3}.hero-summary{max-width:34rem;color:var(--muted);font-size:clamp(1rem,1.3vw,1.12rem);line-height:1.8}.hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.button{border:1px solid var(--ink);min-height:3.15rem;color:var(--ink);justify-content:center;align-items:center;gap:.5rem;padding:.9rem 1.25rem;font-weight:700;transition:transform .16s cubic-bezier(.2,.8,.2,1),background .16s,color .16s,border-color .16s;display:inline-flex}.button:hover,.button:focus-visible{transform:translateY(-2px)}.button.primary{background:var(--ink);color:var(--paper)}.button.secondary:hover,.button.secondary:focus-visible{border-color:var(--royal);color:var(--royal-deep)}.hero-visual{border:1px solid var(--line);grid-area:visual;overflow:hidden}.hero-visual img{width:100%;height:auto;display:block}.hero-in{opacity:0;animation:.7s cubic-bezier(.2,.8,.2,1) forwards heroIn;transform:translateY(14px)}@keyframes heroIn{to{opacity:1;transform:none}}.reveal{transition:opacity .55s cubic-bezier(.2,.8,.2,1),transform .55s cubic-bezier(.2,.8,.2,1)}.reveal.pre-reveal{opacity:0;transform:translateY(18px)}.statement{max-width:var(--container);background:var(--paper-soft);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(20rem,.65fr);align-items:stretch;gap:clamp(1.4rem,4vw,4rem);margin-inline:auto;padding:clamp(2.2rem,5vw,4.6rem) clamp(1rem,4vw,3.5rem);display:grid}.statement-text{max-width:38rem;color:var(--ink);letter-spacing:-.01em;text-wrap:balance;margin-bottom:0;font-size:clamp(1.35rem,2.2vw,1.9rem);font-weight:700;line-height:1.3}.highlight-row{background:var(--line);align-self:stretch;gap:1px;min-width:min(27rem,100%);display:grid}.highlight-row article{background:var(--paper-soft);align-content:center;gap:.35rem;padding:1rem clamp(.85rem,2vw,1.25rem);display:grid}.highlight-row strong{color:var(--ink);font-size:clamp(1.4rem,2vw,1.8rem);font-weight:800;line-height:1}.highlight-row span{color:var(--muted);text-transform:uppercase;font-size:.84rem;font-weight:700;line-height:1.4}.section{max-width:var(--container);margin-inline:auto;padding:clamp(4.5rem,9vw,8.5rem) clamp(1rem,4vw,3.5rem)}.split{grid-template-columns:minmax(16rem,.82fr) minmax(0,1.18fr);gap:clamp(2.2rem,8vw,7rem);display:grid}.expertise-list{background:0 0;gap:clamp(1rem,2vw,1.25rem);display:grid}.expertise-item{border:1px solid var(--line);background:var(--paper-soft);grid-template-columns:minmax(8rem,.5fr) minmax(0,1fr);gap:clamp(1rem,3vw,2.5rem);padding:clamp(1.25rem,3vw,2rem);display:grid}.expertise-item span{color:var(--ink);letter-spacing:-.01em;align-items:center;gap:.6rem;font-size:clamp(1.05rem,1.6vw,1.3rem);font-weight:700;line-height:1.2;display:flex}.expertise-icon{flex-shrink:0}.expertise-item p,.project-item p,.credential-item p{color:var(--muted);margin-bottom:0;font-size:1rem;line-height:1.75}.skills-band{border-block:1px solid var(--line);grid-template-columns:minmax(16rem,.75fr) minmax(0,1.25fr);align-items:end;gap:clamp(2rem,7vw,6rem);display:grid}.skill-cloud{flex-wrap:wrap;place-content:end flex-start;gap:.7rem;margin:0;padding:0;list-style:none;display:flex}.skill-cloud li{border:1px solid var(--line);background:var(--paper-soft);min-width:6.5rem;color:var(--ink);text-align:center;padding:.8rem 1rem;font-weight:700}.projects{background:var(--paper)}.section-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:clamp(2rem,5vw,4rem);display:flex}.section-heading h2{max-width:34ch}.project-list{border-bottom:1px solid var(--line);gap:0;display:grid}.project-item{border-top:1px solid var(--line);grid-template-columns:minmax(8rem,.3fr) minmax(0,1fr);gap:clamp(1rem,4vw,4rem);padding:clamp(1.4rem,3vw,2.4rem) 0;display:grid}.project-item time{color:var(--navy);letter-spacing:-.01em;font-size:clamp(1.05rem,1.5vw,1.35rem);font-weight:700}.track ol{counter-reset:track;gap:0;margin:0;padding:0;list-style:none;display:grid}.track li{border-top:1px solid var(--line);color:var(--ink);counter-increment:track;gap:.35rem;padding:1.25rem 0 1.25rem 4.2rem;display:grid;position:relative}.track li:before{border:1px solid var(--royal);width:2.4rem;height:2.4rem;color:var(--royal-deep);content:counter(track, decimal-leading-zero);font-family:var(--mono);place-items:center;font-size:.75rem;font-weight:700;display:grid;position:absolute;top:1.45rem;left:0}.track li span{color:var(--navy);letter-spacing:.14em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.78rem;font-weight:700;display:flex}.track li em.status-current{border:1px solid color-mix(in oklch, var(--brandy) 55%, transparent);color:var(--brandy-deep);letter-spacing:.06em;text-transform:none;padding:.2rem .55rem;font-size:.7rem;font-weight:700}.track li strong{letter-spacing:-.01em;font-size:clamp(1rem,1.4vw,1.2rem);font-weight:700;line-height:1.3}.track li em{color:var(--muted);font-size:.95rem;font-style:normal;line-height:1.5}.credentials{background:var(--paper)}.credential-grid{grid-template-columns:minmax(0,1fr) minmax(18rem,.72fr);align-items:start;gap:clamp(2rem,6vw,5rem);display:grid}.credential-list{display:grid}.credential-item{border-top:1px solid var(--line);padding:clamp(1.2rem,3vw,2rem) 0}.credential-item span{color:var(--navy);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.7rem;font-size:.78rem;font-weight:700;display:block}.seminar-panel{border-top:1px solid var(--line);padding-top:clamp(1.2rem,3vw,2rem)}.seminar-panel h3{margin-bottom:1rem}.seminar-panel ul{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.seminar-panel li{color:var(--muted);padding-left:1.4rem;line-height:1.6;position:relative}.seminar-panel li:before{content:"";background:var(--gold);width:.45rem;height:.45rem;position:absolute;top:.7rem;left:0}.contact{max-width:var(--container);border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(16rem,.55fr);align-items:end;gap:clamp(2rem,6vw,6rem);margin-inline:auto;padding:clamp(4rem,9vw,8rem) clamp(1rem,4vw,3.5rem);display:grid}.contact address{gap:.85rem;font-style:normal;display:grid}.contact address span{color:var(--navy);align-items:center;gap:.55rem;font-weight:700;line-height:1.45;display:flex}.contact a{border-bottom:1px solid var(--line);width:fit-content;color:var(--ink);align-items:center;gap:.55rem;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.4;transition:color .16s,border-color .16s;display:flex}.contact a:hover,.contact a:focus-visible{color:var(--royal-deep);border-color:currentColor}.contact address svg{color:var(--muted);flex-shrink:0}:focus-visible{outline:3px solid var(--royal);outline-offset:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.hero-in,.reveal.pre-reveal{opacity:1!important;transform:none!important}}@media (max-width:1120px){.statement{grid-template-columns:1fr}.highlight-row{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:860px){.site-header{padding:.5rem 1rem}.brand{font-size:1.15rem}.nav-desktop{display:none}.mobile-nav{display:flex}.split,.statement,.skills-band,.credential-grid,.contact{grid-template-columns:1fr}.hero{grid-template-columns:1fr;grid-template-areas:"visual""copy";padding-top:clamp(4.5rem,18vw,5.5rem)}.hero-copy{max-width:none}.hero-visual{max-width:18rem;margin:0 auto}.section-heading{display:block}.expertise-item,.project-item{grid-template-columns:1fr}.project-item{gap:.4rem}.highlight-row{grid-template-columns:1fr}.skills-band,.contact{align-items:start}}@media (max-width:520px){h1{font-size:clamp(2.1rem,10vw,2.8rem)}h2{font-size:clamp(1.35rem,6vw,1.7rem)}.hero-actions{display:grid}.button{width:100%}.hero-title{font-size:clamp(1.05rem,5.5vw,1.35rem)}.hero-summary,.expertise-item p,.project-item p,.credential-item p,.seminar-panel li{font-size:.97rem;line-height:1.7}.statement-text{font-size:clamp(1.15rem,6vw,1.5rem)}.skill-cloud{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.skill-cloud li{min-width:0}}
