:root{
  --ink:#171816;
  --muted:#696b65;
  --paper:#f4f2ec;
  --paper-2:#ebe8df;
  --line:rgba(23,24,22,.16);
  --accent:#9a6a42;
  --accent-2:#d1b99d;
  --dark:#20221e;
  --white:#fffdf8;
  --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}
a{color:inherit;text-decoration:none}
.site-header{height:78px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(244,242,236,.94);backdrop-filter:blur(12px);position:sticky;top:0;z-index:20}
.brand{display:flex;align-items:center;gap:12px}
.brand strong{display:block;font-size:21px;letter-spacing:.14em;line-height:1}
.brand small{display:block;font-size:8px;letter-spacing:.19em;color:var(--muted);margin-top:5px}
.brand-mark{width:34px;height:34px;position:relative;display:grid;gap:3px;transform:skewY(-12deg)}
.brand-mark span{display:block;border-top:4px solid var(--ink)}
.brand-mark span:nth-child(1){width:28px}
.brand-mark span:nth-child(2){width:21px;margin-left:7px}
.brand-mark span:nth-child(3){width:14px;margin-left:14px}
.main-nav{display:flex;gap:30px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.main-nav a{transition:opacity .2s}.main-nav a:hover{opacity:.5}
.menu-toggle{display:none;border:0;background:none;font-size:24px}
.hero{min-height:700px;max-width:var(--max);margin:auto;position:relative;overflow:hidden;display:flex;align-items:center;padding:90px 5vw}
.hero-content{position:relative;z-index:3;max-width:620px}
.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:700;color:var(--accent);margin:0 0 20px}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(100px,16vw,220px);line-height:.72;margin:0 0 45px;font-weight:400;letter-spacing:-.06em}
.hero-title{font-family:Georgia,serif;font-size:clamp(27px,3.4vw,48px);line-height:1.08;max-width:600px;margin:0 0 24px}
em{font-weight:400;color:var(--accent);font-style:italic}
.hero-text{color:var(--muted);max-width:470px;font-size:15px;margin-bottom:32px}
.button{display:inline-flex;gap:24px;align-items:center;padding:15px 21px;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700;border:1px solid var(--ink)}
.button.primary{background:var(--ink);color:var(--white)}
.button span{font-size:16px}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:80px 80px;opacity:.23;mask-image:linear-gradient(90deg,black,transparent 75%)}
.hero-profile{position:absolute;right:-3%;top:50%;width:55%;height:500px;transform:translateY(-45%);opacity:.75}
.profile-line{position:absolute;border:1px solid var(--accent);border-radius:50%;width:120%;height:48%;transform:rotate(-9deg)}
.line-a{top:2%;left:-5%}.line-b{top:25%;left:-10%;width:135%}.line-c{top:50%;left:-18%;width:150%}
.profile-label{position:absolute;font:11px monospace;text-transform:uppercase;color:var(--muted);letter-spacing:.12em}
.label-a{top:17%;right:15%}.label-b{top:48%;right:8%}.label-c{top:72%;right:21%}
.hero-depth{position:absolute;bottom:3%;left:18%;font:10px monospace;color:var(--muted);letter-spacing:.12em}
.intro,.areas,.statement,.feature-section,.data-strip,.education,.projects,.closing{max-width:var(--max);margin:auto;padding-left:5vw;padding-right:5vw}
.intro{padding-top:120px;padding-bottom:60px;display:grid;grid-template-columns:1fr 1fr;gap:80px;border-top:1px solid var(--line)}
.intro h2,.section-heading h2,.statement h2,.education h2,.closing h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(38px,5vw,68px);line-height:1.03;letter-spacing:-.03em;margin:0}
.intro>p{align-self:end;max-width:470px;color:var(--muted);font-size:16px}
.areas{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);padding-top:1px;padding-bottom:1px}
.area-card{min-height:300px;background:var(--paper);padding:28px;position:relative;transition:background .25s,transform .25s}
.area-card:hover{background:var(--paper-2);transform:translateY(-3px);z-index:2}
.area-card.featured{background:var(--dark);color:var(--white)}
.number{font:10px monospace;opacity:.55}
.area-icon{display:block;font:42px Georgia;margin:50px 0 20px;color:var(--accent)}
.area-card h3{font-family:Georgia,serif;font-size:31px;font-weight:400;margin:0 0 10px}
.area-card p{font-size:13px;color:var(--muted);max-width:250px;margin:0}
.featured p{color:#b9b9b0}
.arrow{position:absolute;right:25px;bottom:24px;font-size:20px}
.statement{padding-top:150px;padding-bottom:150px;display:grid;grid-template-columns:180px 1fr;gap:60px;align-items:start}
.statement-mark{font-family:Georgia,serif;font-size:160px;line-height:.7;color:var(--accent);opacity:.65}
.statement h2{max-width:760px;margin-bottom:28px}.statement p{max-width:650px;color:var(--muted);font-size:16px}
.feature-section{padding-top:100px;padding-bottom:120px}
.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:50px}
.section-heading>p{color:var(--muted);max-width:430px;margin:0}
.map-placeholder{height:460px;background:#dedbd1;position:relative;overflow:hidden;border:1px solid var(--line);display:flex;align-items:center;justify-content:center}
.map-placeholder:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(23,24,22,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(23,24,22,.09) 1px,transparent 1px);background-size:70px 70px}
.contours{position:absolute;border:1px solid var(--accent);border-radius:50%;transform:rotate(-16deg)}
.c1{width:80%;height:58%}.c2{width:63%;height:48%}.c3{width:44%;height:35%}
.map-cross{font-size:30px;z-index:2;color:var(--accent)}
.map-placeholder>span{position:absolute;left:25px;bottom:22px;font:10px monospace;letter-spacing:.12em}.map-placeholder small{color:var(--muted)}
.data-strip{background:var(--dark);color:var(--white);max-width:none;padding-top:100px;padding-bottom:100px;display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-left:max(5vw,calc((100vw - var(--max))/2 + 5vw));padding-right:max(5vw,calc((100vw - var(--max))/2 + 5vw))}
.data-strip .eyebrow{color:var(--accent-2)}
.data-items{border-top:1px solid rgba(255,255,255,.18)}
.data-items div{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.18);font-size:14px}.data-items strong{font:10px monospace;color:var(--accent-2)}
.education{padding-top:130px;padding-bottom:130px;display:grid;grid-template-columns:1fr 1fr;gap:90px}
.education-copy>p:not(.eyebrow){max-width:470px;color:var(--muted);margin:30px 0}
.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:5px}
.education-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}
.education-grid div{background:var(--paper-2);min-height:180px;padding:25px;display:flex;flex-direction:column;justify-content:flex-end}
.education-grid span{font:9px monospace;color:var(--accent);letter-spacing:.14em}.education-grid strong{font:28px Georgia;font-weight:400}.education-grid small{font-size:11px;color:var(--muted)}
.projects{padding-top:120px;padding-bottom:140px}
.project-list{border-top:1px solid var(--ink)}
.project-list article{display:grid;grid-template-columns:70px 1fr 30px;gap:20px;padding:28px 0;border-bottom:1px solid var(--line);align-items:start}
.project-list article>span{font:10px monospace;color:var(--accent)}
.project-list h3{font:29px Georgia;font-weight:400;margin:0 0 6px}.project-list p{margin:0;color:var(--muted);font-size:13px;max-width:700px}.project-list b{font-size:18px;font-weight:400}
.closing{max-width:none;text-align:center;background:var(--paper-2);padding-top:150px;padding-bottom:150px}
.closing .eyebrow{margin-bottom:25px}.closing h2{font-size:clamp(45px,7vw,90px)}.closing>p:last-child{color:var(--muted);margin-top:28px}
.site-footer{background:var(--dark);color:var(--white);padding:32px 5vw;display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.footer-brand strong{font-size:20px;letter-spacing:.16em}.footer-brand span{margin-left:12px;color:#aaa;font-size:8px}
@media(max-width:800px){
 .site-header{height:68px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:20px 5vw;border-bottom:1px solid var(--line);flex-direction:column;gap:18px}.main-nav.open{display:flex}
 .hero{min-height:720px;padding-top:100px;align-items:flex-start}.hero-profile{width:120%;right:-45%;top:58%;opacity:.45}.hero-grid{mask-image:none}
 .intro,.statement,.feature-section,.data-strip,.education,.projects{display:block}
 .intro{padding-top:80px}.intro>p{margin-top:35px}
 .areas{grid-template-columns:1fr}
 .area-card{min-height:250px}
 .statement{padding-top:100px;padding-bottom:100px}.statement-mark{font-size:100px;margin-bottom:35px}
 .section-heading{display:block}.section-heading>p{margin-top:25px}
 .map-placeholder{height:330px}
 .data-strip{padding-left:5vw;padding-right:5vw}.data-strip h2{margin-bottom:50px}
 .education-grid{margin-top:50px}
 .site-footer{grid-template-columns:1fr}
}
