:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1d2328;background:#f7f4ee;--ink: #1d2328;--muted: #5b646b;--line: #d7d0c5;--paper: #fffdfa;--soft: #ece7df;--primary: #215e6f;--primary-dark: #143e49;--accent: #9d4f2f;--green: #596f3f}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(180deg,#fffdfadb,#f7f4eef5),#f7f4ee}a{color:var(--primary)}a:hover{color:var(--accent)}.site-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto}.site-header,.site-footer{width:min(1120px,calc(100% - 32px));margin:0 auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--primary-dark);font-weight:800;font-size:.78rem}.brand strong,.brand small{display:block}.brand small,.card-meta,.section-label,.site-footer{color:var(--muted)}.primary-nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px}.primary-nav a,.button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:0 14px;text-decoration:none;color:var(--ink);border:1px solid transparent}.primary-nav a:hover,.primary-nav a.active{border-color:var(--line);background:var(--paper);color:var(--primary-dark)}main{width:min(1120px,calc(100% - 32px));margin:0 auto}.hero,.page-heading{padding:clamp(44px,8vw,96px) 0 clamp(32px,7vw,72px)}.hero{max-width:880px}.page-heading{max-width:820px}.eyebrow,.section-label,.card-meta,.status{margin:0 0 12px;text-transform:uppercase;font-size:.75rem;font-weight:800;letter-spacing:0}h1,h2,h3,p{margin-top:0}h1{max-width:13ch;margin-bottom:24px;font-size:clamp(3rem,7vw,5.75rem);line-height:.96;letter-spacing:0}.page-heading h1{max-width:16ch;font-size:clamp(2.5rem,6vw,4.6rem)}h2{font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.15;letter-spacing:0}h3{font-size:1.05rem;line-height:1.25}p{line-height:1.7;color:var(--muted)}.lede,.page-heading p{max-width:68ch;font-size:clamp(1.08rem,2vw,1.35rem)}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.button{background:var(--paper);border-color:var(--line);font-weight:700}.button.primary{background:var(--primary);border-color:var(--primary);color:#fff}.section{padding:44px 0;border-top:1px solid var(--line)}.two-column{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:clamp(28px,6vw,72px)}.prose p:last-child,.card p:last-child,.list-row p:last-child,.timeline-item p:last-child,.contact-panel p:last-child{margin-bottom:0}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card,.list-panel,.timeline-item,.contact-panel{border:1px solid var(--line);border-radius:8px;background:var(--paper)}.card{min-height:220px;padding:22px}.card.accent{border-top:4px solid var(--primary)}.list-panel{overflow:hidden}.list-row,.timeline-item,.contact-panel{padding:22px}.list-row{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.list-row:last-child{border-bottom:0}.list-row small{color:var(--muted)}.project-row{align-items:flex-start}.status{flex:0 0 auto;margin:0;padding:6px 10px;border-radius:999px;background:#e5eee8;color:var(--green)}.timeline{display:grid;gap:16px}.timeline-item{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:24px}.contact-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.site-footer{display:flex;justify-content:space-between;gap:16px;padding:36px 0;border-top:1px solid var(--line)}@media(max-width:820px){.site-header{align-items:flex-start;flex-direction:column}.primary-nav{justify-content:flex-start}.two-column,.timeline-item,.contact-panel,.card-grid{grid-template-columns:1fr}h1{max-width:11ch}}@media(max-width:560px){.site-header,.site-footer,main{width:min(100% - 24px,1120px)}.primary-nav{width:100%}.primary-nav a{flex:1 1 calc(50% - 6px);padding:0 10px}.list-row,.site-footer{align-items:flex-start;flex-direction:column}}
