@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Manrope:wght@400;500;600;700&display=swap");
:root{--ink:#102a2b;--paper:#f4f0e8;--deep:#e8e1d4;--accent:#b9733e;--lime:#d5df88;--line:rgba(16,42,43,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Manrope",Arial,sans-serif}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif}.nav{min-height:86px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 5vw;border-bottom:1px solid var(--line);background:rgba(244,240,232,.94);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10}.brand{font:700 2rem "Cormorant Garamond",Georgia,serif;letter-spacing:-.08em}.brand span,em{color:var(--accent)}.links{display:flex;gap:2rem;text-transform:uppercase;font-size:.74rem;font-weight:700;letter-spacing:.12em}.links a:hover,.links .active{color:var(--accent)}.contact{justify-self:end;border-bottom:1px solid;padding-bottom:.25rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.hero{min-height:calc(100vh - 86px);display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:6vw;padding:6vw 8vw}.kicker{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.2em}.kicker:before{content:'';display:inline-block;width:2.4rem;height:1px;background:currentColor;vertical-align:middle;margin-right:.8rem}.hero h1{font-size:clamp(4rem,7.4vw,8rem);font-weight:500;line-height:.82;letter-spacing:-.06em;margin:2rem 0}.lead{max-width:44rem;font-size:1.1rem;line-height:1.8;color:#536361}.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.button{display:inline-block;border:1px solid;padding:1rem 1.25rem;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.primary{background:var(--ink);color:var(--paper)}.portrait{position:relative;padding:1rem;border:1px solid var(--line)}.portrait img{width:100%;aspect-ratio:4/5.1;object-fit:cover;object-position:top;display:block}.portrait div{position:absolute;left:-2rem;bottom:2rem;background:var(--lime);padding:1rem 1.25rem}.portrait small,.portrait strong{display:block}.status{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}.status:first-letter{color:#5d8b56}.band{display:flex;justify-content:space-around;gap:2rem;overflow:hidden;background:var(--accent);color:white;padding:1.15rem 2rem;font:italic 1.2rem "Cormorant Garamond",Georgia,serif;white-space:nowrap}.band i{color:var(--lime)}.section{display:grid;grid-template-columns:minmax(120px,.22fr) 1fr;gap:4vw;padding:7rem 8vw}.section aside{text-transform:uppercase;font-size:.68rem;font-weight:800;letter-spacing:.14em;border-top:1px solid;padding-top:1rem;align-self:start}.section h2,.cv-section h2{font-size:clamp(2.8rem,5vw,5.2rem);font-weight:500;letter-spacing:-.04em;line-height:1;margin:0 0 3rem}.dark{background:var(--ink);color:var(--paper)}.cols{display:grid;grid-template-columns:1fr 1fr;gap:4rem;max-width:70rem}.cols p,.card p,.grid4 p,.records p,.full-pub p{line-height:1.75;color:#586765}.dark .grid4 p,.dark .records p{color:#b7c3bc}.profile-links{display:flex;gap:2rem;flex-wrap:wrap;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.18)}.grid4 article{background:var(--ink);padding:2rem}.grid4 b{color:var(--lime)}.grid4 h3{font-size:1.5rem}.section-top{display:flex;justify-content:space-between;align-items:end}.section-top a{font-size:.75rem;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.pub-row{display:grid;grid-template-columns:50px 1fr auto;gap:1.5rem;padding:2rem 0;border-top:1px solid var(--line)}.pub-row h3{font-size:1.35rem;margin:.5rem 0}.pub-row p{margin:0;color:#586765}.tag,.meta span{font-size:.64rem;text-transform:uppercase;letter-spacing:.1em}.records article{display:grid;grid-template-columns:minmax(120px,.25fr) 1fr;gap:2rem;border-top:1px solid rgba(255,255,255,.18);padding:1.5rem 0}.records article>span{font-size:.76rem;font-weight:700}.records h3{font-size:1.3rem;margin:0 0 .35rem}.records p{margin:0}.light .records article,.cv-section .records article{border-color:var(--line)}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.card{border:1px solid var(--line);padding:2rem;min-height:280px;display:flex;flex-direction:column}.card h3{font-size:1.65rem}.card strong{margin-top:auto;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.inner-hero,.cv-hero{display:grid;grid-template-columns:1fr .65fr;gap:6vw;align-items:end;padding:7rem 8vw}.inner-hero h1,.cv-hero h1{font-size:clamp(4rem,9vw,9rem);font-weight:500;letter-spacing:-.06em;line-height:.8;margin:1.5rem 0}.summary{display:flex;gap:2rem;align-items:center}.summary strong{font:6rem "Cormorant Garamond",Georgia,serif;color:var(--accent)}.summary p{line-height:1.6}.stats{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper);padding:0 8vw}.stats a{padding:2rem;border-right:1px solid rgba(255,255,255,.15)}.stats strong,.stats span{display:block}.stats strong{font:3rem "Cormorant Garamond",Georgia,serif;color:var(--lime)}.stats span{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}.archive{padding:5rem 8vw 8rem}.archive-group{display:grid;grid-template-columns:minmax(190px,.28fr) 1fr;gap:4vw;margin-bottom:6rem}.archive-group>header{position:sticky;top:115px;align-self:start}.archive-group>header span{font-size:.72rem;font-weight:800;color:var(--accent)}.archive-group>header h2{font-size:2.4rem;margin:.8rem 0}.archive-group>header p{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.full-pub{display:grid;grid-template-columns:45px 1fr;gap:1.4rem;padding:1.75rem 0;border-top:1px solid var(--line)}.full-pub h3{font-size:1.3rem;line-height:1.3;margin:.6rem 0}.full-pub p{margin:.35rem 0}.full-pub a{display:inline-block;margin-top:.6rem;color:var(--accent);font-size:.78rem;font-weight:800}.meta{display:flex;gap:1rem}.cv-hero img{width:min(320px,100%);aspect-ratio:4/5;object-fit:cover;object-position:top;justify-self:end}.cv-section{padding:6rem 8vw}.cv-section>header{display:grid;grid-template-columns:100px 1fr;border-top:1px solid var(--line);padding-top:1rem}.cv-section>header>span{font-weight:800;color:var(--accent)}.cv-section>header h2{font-size:3.2rem}.cv-section .records{margin-left:100px}.alt{background:var(--deep)}.expertise{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-left:100px}.expertise article{border:1px solid var(--line);padding:1.5rem}.expertise small{text-transform:uppercase;letter-spacing:.12em;font-weight:800}.expertise h3{line-height:1.45}.certs{margin-left:100px;columns:2;column-gap:4rem}.certs li{break-inside:avoid;padding:.8rem 0;border-bottom:1px solid var(--line);line-height:1.5}.callout{padding:5rem 8vw;background:var(--lime);display:flex;justify-content:space-between;align-items:center}.callout h2{font-size:3rem;margin:.8rem 0}footer{background:#091c1d;color:var(--paper);padding:7rem 8vw 2rem}footer h2{font-size:clamp(3.5rem,7vw,7.5rem);line-height:.9;font-weight:500;letter-spacing:-.05em}.email{font-size:clamp(1rem,2vw,1.6rem);border-bottom:1px solid;padding-bottom:.3rem}.foot{display:flex;justify-content:space-between;gap:2rem;margin-top:6rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.18);font-size:.75rem}.foot a{margin-left:.8rem}@media(max-width:900px){.nav{grid-template-columns:1fr auto}.links{display:none}.hero,.inner-hero,.cv-hero{grid-template-columns:1fr}.hero{padding-top:4rem}.hero h1{font-size:clamp(3.5rem,14vw,6rem)}.portrait{max-width:460px}.section{grid-template-columns:1fr;padding:5rem 6vw}.cols,.grid4,.cards,.expertise{grid-template-columns:1fr}.archive-group{grid-template-columns:1fr}.archive-group>header{position:static}.stats{grid-template-columns:repeat(2,1fr);padding:0 4vw}.cv-section .records,.expertise,.certs{margin-left:0}.certs{columns:1}.cv-section>header{grid-template-columns:50px 1fr}.cv-section>header h2{font-size:2.5rem}.callout{align-items:flex-start;gap:2rem;flex-direction:column}}@media(max-width:560px){.nav{min-height:70px}.contact{font-size:.66rem}.hero{padding:4rem 6vw}.hero h1{font-size:3.4rem}.portrait div{left:.5rem}.band{justify-content:flex-start}.pub-row{grid-template-columns:35px 1fr}.pub-row>strong{display:none}.inner-hero,.cv-hero{padding:5rem 6vw}.inner-hero h1,.cv-hero h1{font-size:3.8rem}.summary strong{font-size:4rem}.stats{grid-template-columns:1fr}.archive{padding:4rem 6vw}.full-pub{grid-template-columns:30px 1fr}.foot{flex-direction:column}}
@media (min-width:901px){
  :root{--hero-nav:64px}
  .nav{height:var(--hero-nav);min-height:0;padding-inline:3.5vw}
  .brand{font-size:1.28rem}
  .links{gap:1.65rem;font-size:.6rem}
  .contact{font-size:.62rem}
  .hero{width:min(100%,74rem);min-height:calc(100svh - var(--hero-nav));margin-inline:auto;grid-template-columns:minmax(0,1fr) 18rem;gap:clamp(3rem,7vw,7rem);padding:clamp(2rem,5vh,3.5rem) 2rem}
  .kicker{font-size:.58rem}
  .kicker:before{width:1.9rem;margin-right:.65rem}
  .hero h1{font-size:clamp(3.35rem,4.25vw,4.65rem);margin:1.1rem 0 1.2rem;line-height:.88}
  .lead{max-width:35rem;font-size:.92rem;line-height:1.7}
  .actions{margin-top:1.25rem;gap:.65rem}
  .button{padding:.75rem 1rem;font-size:.62rem}
  .hero>div:last-child{width:18rem;justify-self:end}
  .portrait{padding:.55rem}
  .portrait img{width:100%;height:21rem;max-height:calc(100svh - var(--hero-nav) - 9rem);aspect-ratio:auto;object-fit:cover;object-position:center top}
  .portrait div{left:-1.15rem;bottom:1rem;padding:.55rem .7rem;min-width:9.5rem}
  .portrait div small{font-size:.64rem}
  .portrait div strong{font-size:.78rem}
  .status{font-size:.56rem;margin:.55rem 0 0}
  .band{font-size:1rem;padding-block:.9rem}
  .section{grid-template-columns:minmax(105px,.2fr) 1fr;gap:3.5rem;padding:5.25rem max(5vw,calc((100vw - 74rem)/2))}
  .section h2,.cv-section h2{font-size:clamp(2.35rem,3.5vw,3.75rem);margin-bottom:2.25rem}
  .cols{gap:3rem}.cols p,.card p,.grid4 p,.records p,.full-pub p{font-size:.92rem;line-height:1.7}
  .grid4 article{padding:1.6rem}.grid4 h3{font-size:1.3rem}
  .pub-row{padding:1.5rem 0}.pub-row h3{font-size:1.18rem}
  .records h3{font-size:1.18rem}.card{min-height:240px;padding:1.6rem}.card h3{font-size:1.4rem}
  .inner-hero,.cv-hero{padding:5.5rem max(5vw,calc((100vw - 74rem)/2));gap:4rem}
  .inner-hero h1,.cv-hero h1{font-size:clamp(3.25rem,5vw,5rem)}
  .summary strong{font-size:4.75rem}.stats{padding-inline:max(5vw,calc((100vw - 74rem)/2))}
  .archive{padding:4rem max(5vw,calc((100vw - 74rem)/2)) 6rem}
  .archive-group{margin-bottom:4.5rem}.archive-group>header h2{font-size:2rem}.full-pub h3{font-size:1.16rem}
  .cv-section{padding:4.75rem max(5vw,calc((100vw - 74rem)/2))}.cv-section>header h2{font-size:2.65rem}
  .callout{padding:4rem max(5vw,calc((100vw - 74rem)/2))}.callout h2{font-size:2.5rem}
  footer{padding:5.5rem max(5vw,calc((100vw - 74rem)/2)) 2rem}footer h2{font-size:clamp(3.25rem,5.5vw,5.5rem)}
}
