:root{--bg: #f4efe6;--bg-strong: #e6dccd;--surface: rgba(255, 252, 246, .82);--surface-strong: #fffaf1;--line: rgba(49, 37, 27, .16);--text: #201911;--muted: #5f5448;--accent: #a64b2a;--accent-strong: #7f3218;--shadow: 0 20px 45px rgba(69, 45, 24, .12);font-family:Avenir Next,Helvetica Neue,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:radial-gradient(circle at top left,rgba(255,255,255,.8),transparent 34%),linear-gradient(180deg,#f7f1e8,#eee2d1);font-family:Avenir Next,Helvetica Neue,sans-serif}a{color:inherit;text-decoration:none}.site-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding-bottom:64px}.site-header{display:flex;justify-content:space-between;align-items:center;padding:26px 0 18px}.wordmark{font-family:Iowan Old Style,Palatino Linotype,serif;font-size:1.2rem;letter-spacing:.04em}.site-nav{display:flex;gap:18px;color:var(--muted)}.site-nav a:hover,.text-link:hover{color:var(--accent-strong)}.hero,.page-hero{display:grid;gap:24px;padding:48px 0 24px}.hero{grid-template-columns:minmax(0,1.35fr) minmax(280px,.85fr);align-items:stretch}.hero-copy h1,.page-hero h1,.section-heading h2{margin:0;font-family:Iowan Old Style,Palatino Linotype,serif;line-height:.98;letter-spacing:-.03em}.hero-copy h1,.page-hero h1{font-size:clamp(2.7rem,6.1vw,5rem);max-width:16ch}.eyebrow{margin:0 0 16px;color:var(--accent-strong);font-size:.82rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.lead,.supporting,.card p,.timeline-item p,.project-card p,.section p{color:var(--muted);font-size:1.04rem;line-height:1.7}.lead{max-width:42rem;margin:18px 0 0;font-size:1.32rem}.supporting{max-width:40rem;margin:14px 0 0}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:999px;border:1px solid var(--line);transition:transform .15s ease,background-color .15s ease,color .15s ease}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--accent);border-color:transparent;color:#fffaf6}.button-primary:hover{background:var(--accent-strong)}.button-secondary{background:#fffcf6a6}.hero-panel,.card,.project-card,.timeline-item{border:1px solid var(--line);background:var(--surface);backdrop-filter:blur(10px);box-shadow:var(--shadow)}.hero-panel{padding:24px;border-radius:28px;align-self:end}.panel-label{margin:0 0 18px;color:var(--muted);font-size:.88rem;letter-spacing:.12em;text-transform:uppercase}.stats-grid{display:grid;gap:18px;margin:0}.stats-grid dt{color:var(--muted);font-size:.86rem;text-transform:uppercase;letter-spacing:.08em}.stats-grid dd{margin:6px 0 0;font-size:1.02rem;line-height:1.5}.section{padding:42px 0 12px}.narrow{max-width:780px}.section-heading{margin-bottom:24px}.section-heading h2{font-size:clamp(2rem,4vw,3.2rem);max-width:14ch}.inline-heading{display:flex;justify-content:space-between;align-items:end;gap:16px}.card-grid,.project-grid{display:grid;gap:18px}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card,.project-card{padding:22px;border-radius:24px}.card h3,.project-card h2,.project-card h3,.timeline-item h3{margin:0 0 10px;font-size:1.28rem}.timeline{display:grid;gap:14px}.timeline-item{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;align-items:start;padding:18px 22px;border-radius:22px}.timeline-period{margin:6px 0 0;color:var(--accent-strong);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.project-links{display:flex;flex-wrap:wrap;gap:14px}.tag-row span{padding:6px 10px;border-radius:999px;background:var(--bg-strong);color:var(--accent-strong);font-size:.82rem}.text-link{color:var(--accent);font-weight:700}.project-card-wide h2{font-size:1.6rem}@media(max-width:900px){.hero,.card-grid,.project-grid{grid-template-columns:1fr}.inline-heading,.site-header{flex-direction:column;align-items:start}.timeline-item{grid-template-columns:1fr}}@media(max-width:600px){.site-shell{width:min(100% - 20px,1180px)}.site-nav{flex-wrap:wrap;gap:12px}.hero,.page-hero,.section{padding-top:32px}.hero-copy h1,.page-hero h1{font-size:2.45rem}}
