:root{
  --bg:#f7f3ee;
  --surface:#fffdf9;
  --surface-2:#eee6dd;
  --ink:#181614;
  --muted:#655e58;
  --accent:#775843;
  --accent-dark:#4b382d;
  --line:#dcd2c8;
  --serif:Georgia,"Times New Roman",serif;
  --sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}
a{color:inherit}
img{max-width:100%}
.container{width:min(1120px,calc(100% - 48px));margin:0 auto}
.topbar{position:sticky;top:0;z-index:20;background:rgba(247,243,238,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(119,88,67,.12)}
.topbar-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:18px 28px;flex-wrap:wrap}
.brand{font-family:var(--serif);font-weight:700;text-decoration:none;font-size:18px}
nav{display:flex;gap:18px 28px;flex-wrap:wrap;justify-content:flex-end}
nav a{font-size:13px;text-decoration:none;color:var(--muted)}
nav a:hover{color:var(--ink)}
.hero{padding:78px 0 86px;background:linear-gradient(135deg,#f6f0e9 0%,#fbf8f4 58%,#efe4da 100%);border-bottom:1px solid var(--line)}
.hero-grid{display:flex;flex-wrap:wrap;gap:52px 72px;align-items:center}.hero-copy{flex:1 1 560px;min-width:0}.portrait-wrap{flex:0 0 220px}
.portrait{display:block;width:190px;height:230px;object-fit:cover;object-position:center 20%;filter:grayscale(100%);border:1px solid rgba(75,56,45,.12);box-shadow:18px 18px 0 rgba(119,88,67,.08)}
.kicker{margin:0 0 12px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:var(--accent);font-size:12px}
h1,h2,h3,p{margin-top:0}
h1{font-family:var(--serif);font-size:clamp(54px,7vw,88px);line-height:.9;letter-spacing:-.055em;margin:0 0 22px}
.role{font-weight:750;color:var(--accent-dark);font-size:17px;margin:0 0 24px}
.lead{font-size:19px;line-height:1.58;max-width:780px;color:#39332f;margin-bottom:0}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;text-decoration:none;font-weight:750;font-size:14px;border:1px solid var(--accent-dark)}
.button.primary{background:var(--ink);border-color:var(--ink);color:white}
.button.primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}
.button.secondary{background:transparent;color:var(--ink)}
.button.secondary:hover{background:rgba(255,255,255,.55)}
.section{padding:84px 0}
.story{background:var(--surface)}
.story-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:44px 72px;align-items:start}
h2{font-family:var(--serif);font-size:clamp(35px,4.2vw,54px);line-height:1.03;letter-spacing:-.035em;margin-bottom:18px}
.story-text{font-size:19px;color:#342f2b}
.story-text p{margin-bottom:18px}
.story-text p:last-child{margin-bottom:0}
.teaching-section{background:var(--bg)}
.section-heading{max-width:760px;margin-bottom:38px}
.section-heading>p:last-child{font-size:18px;color:var(--muted);margin-bottom:0}
.section-heading.compact{margin-bottom:0}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.card{background:var(--surface);border:1px solid var(--line);padding:28px 24px;min-height:270px}
.card.featured{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}
.card-num{font-size:12px;letter-spacing:.12em;font-weight:800;color:var(--accent);margin-bottom:54px}
.card.featured .card-num{color:#d7c5b7}
.card h3,.education-card h3{font-family:var(--serif);font-size:25px;line-height:1.12;margin-bottom:16px}
.card p:last-child{color:var(--muted);margin-bottom:0}
.card.featured p:last-child{color:#eee5de}
.career-section{background:var(--surface-2)}
.career-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:44px 80px;align-items:start}
.career-details{border-top:1px solid rgba(75,56,45,.25)}
.detail-row{display:grid;grid-template-columns:130px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid rgba(75,56,45,.2)}
.detail-row span{font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:var(--accent)}
.detail-row p{margin:0;color:#39322d}
.education-section{background:var(--surface)}
.education-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.education-card{border-top:2px solid var(--accent);padding:26px 0 0}
.education-card .year{font-weight:800;color:var(--accent);letter-spacing:.08em}
.education-card p:last-child{font-size:17px;color:var(--muted);max-width:480px}
.skills-section{background:var(--bg)}
.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:36px 70px;align-items:start}
.tags{display:flex;flex-wrap:wrap;gap:10px}
.tags span{padding:10px 13px;background:var(--surface);border:1px solid var(--line);font-size:14px}
.contact-section{padding:70px 0;background:#201b18;color:#fff}
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:36px 70px;align-items:end}
.contact-section h2{margin-bottom:0;max-width:700px}
.kicker.light{color:#c8aa95}
.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.contact-links a{text-underline-offset:5px;color:#f5eee8}
.footer{background:#151210;color:#a89d95;padding:20px 0;font-size:12px}
.footer-inner{display:flex;justify-content:space-between;gap:20px}
@media(max-width:920px){
  .hero-grid{gap:34px}.hero-copy{flex-basis:460px}.portrait-wrap{flex-basis:170px}.portrait{width:155px;height:188px;box-shadow:12px 12px 0 rgba(119,88,67,.08)}
  .card{min-height:230px}.card-num{margin-bottom:34px}
  .story-grid,.career-grid,.skills-grid,.contact-grid{gap:34px}
  .section-heading.compact{max-width:760px}
}
@media(max-width:640px){
  body{font-size:15px}.container{width:min(100% - 32px,1120px)}
  .topbar-inner{height:56px}.brand{font-size:16px}nav{display:none}
  .hero{padding:46px 0 56px}
  .hero-grid{display:flex;gap:28px;align-items:flex-start}.hero-copy{flex-basis:100%}.portrait-wrap{flex:0 0 132px}.portrait{width:132px;height:160px;box-shadow:10px 10px 0 rgba(119,88,67,.08)}
  h1{font-size:50px;line-height:.93;margin-bottom:17px}.role{font-size:14px;margin-bottom:18px}
  .lead{font-size:16px}.actions{margin-top:24px}.button{width:100%}
  .section{padding:58px 0}.story-grid{gap:22px}.story-text{font-size:16px}
  h2{font-size:38px}.section-heading{margin-bottom:28px}.section-heading>p:last-child{font-size:16px}
  .cards,.education-grid{grid-template-columns:1fr}.card{min-height:0}.card-num{margin-bottom:24px}
  .career-grid{gap:26px}.detail-row{grid-template-columns:1fr;gap:7px;padding:18px 0}
  .skills-grid{gap:20px}.tags{gap:8px}.tags span{font-size:13px;padding:8px 10px}
  .contact-section{padding:52px 0}.contact-grid{gap:28px}.footer-inner{flex-direction:column;gap:5px}
}
@media print{.topbar,.contact-section,.footer,.actions{display:none}.hero,.section{padding:28px 0}.hero{background:white}.container{width:100%}}
