
:root{
  --bg:#f6f0e6;
  --paper:#fbf8f1;
  --paper-2:#efe5d6;
  --ink:#29251f;
  --muted:#6f695f;
  --line:#d9ccba;
  --olive:#2f3b2b;
  --olive-2:#465340;
  --camel:#a8754d;
  --camel-soft:#dfc7ad;
  --oxford:#7890b0;
  --oxford-deep:#496887;
  --white:#fffdf8;
  --max:1460px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.58;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.container{width:min(var(--max),calc(100% - 96px));margin:0 auto}
.site-header,header{position:sticky;top:0;z-index:30;background:rgba(246,240,230,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(95,78,58,.18)}
.navbar{min-height:88px;display:flex;align-items:center;gap:30px}
.brand{display:inline-flex;align-items:center;gap:15px;min-width:max-content}
.monogram{font-family:Georgia,'Times New Roman',serif;font-size:34px;line-height:1;letter-spacing:-.07em}
.brandname{font-family:Georgia,'Times New Roman',serif;letter-spacing:.28em;font-size:14px}
.nameplate{font-family:Georgia,'Times New Roman',serif;font-size:26px;letter-spacing:.03em}
nav{margin-left:auto;display:flex;align-items:center;gap:2px;font-size:14px}
nav a{padding:10px 11px;border-bottom:1px solid transparent;transition:.2s ease}
nav a:hover,nav a.active{color:var(--olive);border-bottom-color:var(--camel)}
.header-cta{margin-left:12px;display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:6px;background:var(--olive);color:#fff;font-size:13px;font-weight:700;letter-spacing:.02em}

/* Home */
.home-hero{position:relative;border-bottom:1px solid var(--line);overflow:hidden;background:linear-gradient(90deg,rgba(255,253,248,.7),rgba(246,240,230,.28))}
.home-hero:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 76% 28%,rgba(120,144,176,.14),transparent 25%),radial-gradient(circle at 18% 15%,rgba(168,117,77,.10),transparent 30%);pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(420px,.78fr) 180px;gap:48px;align-items:center;min-height:690px;padding:70px 0 64px}
.kicker{margin:0 0 18px;color:var(--camel);text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:700}
.hero-title{font-family:Georgia,'Times New Roman',serif;font-size:84px;line-height:.98;font-weight:400;letter-spacing:-.045em;margin:0 0 20px;color:#31291f}
.hero-subtitle{font-family:Georgia,'Times New Roman',serif;font-size:22px;line-height:1.35;margin:0 0 18px;color:#3f382f}
.hero-lead{max-width:700px;margin:0 0 31px;font-size:17px;line-height:1.72;color:#5b554c}
.actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;border-radius:6px;font-size:14px;font-weight:700;border:1px solid #a8967f;background:rgba(255,253,248,.7);transition:.2s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(58,47,35,.08)}
.btn.primary{background:var(--olive);border-color:var(--olive);color:#fff}
.hero-photo-wrap{align-self:stretch;min-height:560px;position:relative;border-left:1px solid rgba(79,65,50,.13);border-right:1px solid rgba(79,65,50,.13);overflow:hidden;background:#e5dacb}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}
.hero-photo-wrap:after{content:'';position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(transparent,rgba(52,42,31,.14))}
.hero-rail{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:40px 0 40px 8px}
.hero-rail .rail-label{font-size:11px;letter-spacing:.27em;line-height:1.8;text-transform:uppercase;color:#6c6257}
.hero-rail blockquote{font-family:Georgia,'Times New Roman',serif;font-size:24px;line-height:1.25;font-style:italic;margin:34px 0 14px;color:#453a2d}
.hero-rail .quote-by{font-size:10px;text-transform:uppercase;letter-spacing:.22em;color:#7a6e61}

section{padding:74px 0;border-top:1px solid var(--line)}
.section-label{font-size:11px;text-transform:uppercase;letter-spacing:.24em;color:var(--camel);font-weight:700;margin-bottom:13px}
.section-title{font-family:Georgia,'Times New Roman',serif;font-size:48px;font-weight:400;letter-spacing:-.03em;margin:0 0 24px;color:#332b22}
.section-intro{max-width:860px;color:#5e574e;font-size:18px;margin:0 0 34px}

.featured{background:var(--paper)}
.featured-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}
.featured-head p{max-width:540px;color:var(--muted);margin:0}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.feature-card{display:grid;grid-template-columns:minmax(0,.88fr) minmax(240px,1.12fr);min-height:305px;background:rgba(255,253,248,.72);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 12px 36px rgba(74,59,42,.045);transition:.22s ease}
.feature-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(74,59,42,.08)}
.feature-copy{padding:32px;display:flex;flex-direction:column}
.feature-copy .eyebrow,.eyebrow{color:var(--camel);font-size:11px;text-transform:uppercase;letter-spacing:.2em;font-weight:700}
.feature-copy h3{font-family:Georgia,'Times New Roman',serif;font-size:32px;font-weight:400;margin:8px 0 12px}
.feature-copy p{color:#615a51;font-size:15px;margin:0 0 22px}
.feature-copy .link{margin-top:auto}
.feature-media{background:#ece6dc;display:flex;align-items:center;padding:18px}
.feature-media img{width:100%;border-radius:10px;border:1px solid rgba(61,50,38,.13);box-shadow:0 14px 28px rgba(30,27,22,.08)}
.link{color:var(--oxford-deep);font-weight:700}

.impact-strip{background:var(--olive);color:#fff;padding:0;border-top:0}
.impact-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.impact-item{padding:30px 28px;border-right:1px solid rgba(255,255,255,.16)}
.impact-item:last-child{border-right:0}
.impact-item strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:32px;font-weight:400;margin-bottom:4px}
.impact-item span{display:block;font-size:13px;line-height:1.5;color:rgba(255,255,255,.75)}

.editorial-section{background:linear-gradient(180deg,var(--bg),#f2e8da)}
.editorial-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}
.editorial-callout{position:sticky;top:120px}
.editorial-callout h2{font-family:Georgia,'Times New Roman',serif;font-size:48px;font-weight:400;line-height:1.08;margin:0 0 20px}
.editorial-callout h2 em{color:var(--oxford-deep);font-weight:400}
.editorial-callout p{color:var(--muted);font-size:17px}
.glance-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.glance-card{background:rgba(255,253,248,.72);border:1px solid var(--line);border-radius:12px;padding:26px}
.glance-card h3{font-family:Georgia,'Times New Roman',serif;font-size:24px;font-weight:400;margin:0 0 13px}
.glance-card ul{margin:0;padding-left:18px;color:#5f584f;font-size:15px}
.glance-card li{margin:7px 0}

/* Generic pages */
.page-head,.resume-head{padding:82px 0 52px}
.page-head:before,.resume-head:before{content:'';display:block;width:42px;height:1px;background:var(--camel);margin-bottom:22px}
.page-head h1,.resume-head h1{font-family:Georgia,'Times New Roman',serif;font-size:66px;font-weight:400;margin:0 0 16px;letter-spacing:-.04em;color:#332b22}
.page-head p,.resume-head p{font-size:19px;color:var(--muted);max-width:900px;margin:0 0 24px}
.project{padding:70px 0;border-top:1px solid var(--line)}
.project-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:start}
.project h2{font-family:Georgia,'Times New Roman',serif;font-size:44px;font-weight:400;margin:4px 0 16px;color:#332b22}
.project p{color:#5d564d;font-size:16px}
.casepoints{display:grid;gap:18px;margin-top:28px}
.casepoint{border-left:2px solid var(--camel);padding-left:17px}
.casepoint b{display:block;color:#332b22}
.casepoint span{color:var(--muted);font-size:14px}
.gallery{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.gallery figure{margin:0;background:var(--white);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 8px 24px rgba(74,59,42,.04)}
.gallery figure.wide{grid-column:1/-1}.gallery img{display:block;width:100%}.gallery figcaption{padding:11px 14px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
.timeline{border-top:1px solid var(--line)}
.role{display:grid;grid-template-columns:230px 1fr;gap:50px;padding:38px 0;border-bottom:1px solid var(--line)}
.role .date{color:var(--camel);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.role h2{font-family:Georgia,'Times New Roman',serif;font-size:28px;font-weight:400;margin:0 0 4px;color:#332b22}
.role h3{margin:0 0 12px;color:#665e54;font-size:15px}.role p,.role li{color:#5f584f;font-size:15px}.role ul{padding-left:20px}
.other-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.other-card,.contact-box{background:rgba(255,253,248,.72);border:1px solid var(--line);border-radius:12px;padding:30px;box-shadow:0 10px 28px rgba(74,59,42,.035)}
.other-card h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;margin:0 0 10px;color:#332b22}.other-card p{color:var(--muted)}
.contact-box{max-width:800px;margin-top:24px}.contact-box a{color:var(--oxford-deep);font-weight:700}
.text-link{color:var(--oxford-deep);text-decoration:underline;text-underline-offset:3px}

/* Resume */
.resume-download{margin-top:0}.resume-section{padding-top:58px}.resume-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,.7fr);gap:70px;align-items:start}.resume-preview-stack{display:grid;gap:28px}.resume-preview{display:block;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 12px 30px rgba(74,59,42,.06);transition:.2s ease}.resume-preview:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(74,59,42,.09)}.resume-preview img{display:block;width:100%;height:auto}.resume-aside{position:sticky;top:125px}.resume-aside h2{font-family:Georgia,'Times New Roman',serif;font-size:32px;font-weight:400;letter-spacing:-.02em;margin:0 0 16px;color:#332b22}.resume-aside h2:not(:first-child){margin-top:42px}.resume-impact{display:grid;gap:0;border-top:1px solid var(--line)}.resume-impact>div{padding:18px 0;border-bottom:1px solid var(--line)}.resume-impact strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:31px;font-weight:400;color:var(--olive)}.resume-impact span{display:block;color:var(--muted);font-size:14px;max-width:360px}.resume-focus{margin:0;padding-left:20px;color:#5f584f}.resume-focus li{margin:9px 0}.resume-aside p{color:var(--muted);font-size:15px}

/* Leadership */
.leadership-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.lead-card{background:rgba(255,253,248,.72);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 10px 28px rgba(74,59,42,.035)}.lead-visual{height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-family:Georgia,'Times New Roman',serif}.lead-visual span{font-size:55px;line-height:1}.lead-visual small{font-family:Arial,Helvetica,sans-serif;font-size:11px;text-transform:uppercase;letter-spacing:.2em;margin-top:12px;opacity:.86}.lead-visual.giants{background:linear-gradient(135deg,#35445a,#7890b0)}.lead-visual.school{background:linear-gradient(135deg,#8a6648,#b68f6c)}.lead-visual.court{background:linear-gradient(135deg,#2f3b2b,#5e7158)}.lead-visual.realestate{background:linear-gradient(135deg,#5e6873,#8fa2b5)}.lead-copy{padding:28px}.lead-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:29px;font-weight:400;line-height:1.15;margin:8px 0 12px;color:#332b22}.lead-copy p:not(.eyebrow){color:#5d564d;margin:0;font-size:15px}

footer{border-top:1px solid var(--line);padding:34px 0 48px;color:var(--muted);font-size:12px;background:#f0e7da}.footer-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}.footer-brand{font-family:Georgia,'Times New Roman',serif;letter-spacing:.18em;color:#40382f}

@media(max-width:1200px){.container{width:min(var(--max),calc(100% - 56px))}.header-cta{display:none}.hero-grid{grid-template-columns:1fr 430px;gap:38px}.hero-rail{display:none}.hero-title{font-size:72px}.feature-card{grid-template-columns:1fr}.feature-media{min-height:250px}.editorial-grid{gap:50px}}
@media(max-width:900px){nav{display:none}.hero-grid{grid-template-columns:1fr;min-height:0;padding:55px 0}.hero-photo-wrap{min-height:520px;border:1px solid var(--line);border-radius:12px}.hero-title{font-size:64px}.feature-grid,.impact-grid,.editorial-grid,.glance-grid,.project-grid,.leadership-grid,.resume-grid,.other-grid{grid-template-columns:1fr}.impact-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}.editorial-callout,.resume-aside{position:static}.feature-card{grid-template-columns:.9fr 1.1fr}.project-grid{gap:40px}}
@media(max-width:640px){.container{width:calc(100% - 32px)}.navbar{min-height:74px}.brandname{font-size:11px;letter-spacing:.2em}.monogram{font-size:30px}.hero-title{font-size:52px}.hero-subtitle{font-size:18px}.hero-lead{font-size:15px}.hero-photo-wrap{min-height:430px}.feature-card{grid-template-columns:1fr}.feature-copy{padding:24px}.section-title,.editorial-callout h2{font-size:39px}.page-head h1,.resume-head h1{font-size:50px}.gallery{grid-template-columns:1fr}.gallery figure.wide{grid-column:auto}.role{grid-template-columns:1fr;gap:8px}.resume-head p,.page-head p{font-size:17px}}


/* About */
.about-section{background:var(--bg);padding:86px 0 92px}
.about-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.58fr);gap:92px;align-items:start}
.about-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:52px;font-weight:400;line-height:1.07;letter-spacing:-.035em;margin:0 0 28px;color:#332b22;max-width:760px}
.about-copy h2 em{font-weight:400;color:var(--oxford-deep)}
.about-copy p:not(.section-label){font-size:17px;line-height:1.78;color:#595248;margin:0 0 20px;max-width:900px}
.about-aside{border-left:1px solid var(--line);padding:10px 0 8px 38px;position:sticky;top:124px}
.about-quote{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:30px;line-height:1.25;color:#3d352c;max-width:330px}
.about-rule{width:44px;height:1px;background:var(--camel);margin:28px 0 26px}
.about-meta{display:grid;gap:21px}
.about-meta div{display:grid;gap:4px}
.about-meta span{text-transform:uppercase;letter-spacing:.18em;font-size:9px;color:var(--camel);font-weight:700}
.about-meta strong{font-family:Georgia,'Times New Roman',serif;font-size:17px;font-weight:400;color:#41382f;line-height:1.35}
.about-link{display:inline-block;margin-top:30px;font-size:13px}
.other-card .eyebrow{margin:0 0 9px}

@media(max-width:900px){.about-grid{grid-template-columns:1fr;gap:46px}.about-aside{position:static;border-left:0;border-top:1px solid var(--line);padding:34px 0 0}.about-copy h2{font-size:44px}}
@media(max-width:640px){.about-section{padding:64px 0}.about-copy h2{font-size:38px}.about-copy p:not(.section-label){font-size:15px}.about-quote{font-size:26px}}

/* Curated Beyond Work */
.beyond-head{padding-bottom:68px}
.beyond-story{padding:86px 0;background:var(--paper)}
.beyond-story.alt{background:linear-gradient(180deg,#efe5d6,#f4ecdf)}
.story-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.82fr);gap:76px;align-items:center}
.story-grid-reverse{grid-template-columns:minmax(360px,.82fr) minmax(0,1.08fr)}
.story-copy h2,.photography-head h2,.discipline-copy h2,.beyond-close h2{font-family:Georgia,'Times New Roman',serif;font-size:46px;line-height:1.08;font-weight:400;letter-spacing:-.03em;color:#332b22;margin:8px 0 20px}
.story-copy p,.discipline-copy p,.photography-head>p,.beyond-close p{color:#5b544b;font-size:16px;line-height:1.75}
.story-fact{margin-top:28px;padding-top:22px;border-top:1px solid var(--line);display:flex;align-items:baseline;gap:16px}
.story-fact strong{font-family:Georgia,'Times New Roman',serif;font-size:34px;font-weight:400;color:var(--olive)}
.story-fact span{color:var(--muted);font-size:13px}
.story-media{position:relative}
.story-media-stack{padding:0 52px 62px 0}
.story-photo{margin:0;background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:0 16px 38px rgba(74,59,42,.08)}
.story-photo img{display:block;width:100%;height:100%;object-fit:cover}
.story-photo figcaption{padding:10px 13px;border-top:1px solid var(--line);font-size:11px;letter-spacing:.04em;color:#766c60;background:#fffdf8}
.story-photo-large{height:470px}
.story-photo-inset{position:absolute;right:0;bottom:0;width:42%;height:250px;border:8px solid var(--paper)}
.story-photo-full{height:520px}
.story-grid-reverse .story-photo-full{border-color:#cbb89e}
.discipline-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:start}
.discipline-copy{padding-top:22px;position:sticky;top:126px}
.discipline-collage{display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:330px 280px;gap:16px}
.discipline-collage .action{grid-row:1/3;height:626px}
.discipline-collage .team,.discipline-collage .hike{height:100%}
.discipline-collage .action img{object-position:center 45%}
.discipline-collage .team img{object-position:center 40%}
.discipline-collage .hike img{object-position:center 50%}
.photography-section{background:#f1e7d9}
.photography-head{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:end;margin-bottom:32px}
.photography-head>p{margin:0 0 6px}
.photo-triptych{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
.photo-triptych .story-photo{height:390px}
.photo-triptych .story-photo img{object-position:center}
.beyond-close{padding:80px 0;background:var(--olive);color:#fff;border-top:0}
.beyond-close-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:center}
.beyond-close .eyebrow{color:#d9b690}
.beyond-close h2{color:#fff}
.beyond-close p{color:rgba(255,255,255,.78)}
.beyond-close blockquote{font-family:Georgia,'Times New Roman',serif;font-size:29px;line-height:1.4;font-style:italic;color:#f9f2e7;margin:0;border-left:1px solid rgba(255,255,255,.34);padding-left:36px}

/* Leadership photo treatment */
.lead-photo-wrap{height:200px;position:relative;overflow:hidden;background:#d9ccba}
.lead-photo-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 43%;display:block;filter:saturate(.86) contrast(.98)}
.lead-photo-wrap:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,26,20,.08),rgba(20,26,20,.58))}
.lead-photo-stat{position:absolute;left:28px;bottom:20px;z-index:2;color:#fff;display:flex;align-items:baseline;gap:12px}
.lead-photo-stat span{font-family:Georgia,'Times New Roman',serif;font-size:49px;line-height:1}
.lead-photo-stat small{text-transform:uppercase;letter-spacing:.18em;font-size:10px}

@media(max-width:1000px){
  .story-grid,.story-grid-reverse,.discipline-layout,.photography-head,.beyond-close-grid{grid-template-columns:1fr;gap:40px}
  .story-grid-reverse .story-copy{order:2}.story-grid-reverse .story-media{order:1}
  .discipline-copy{position:static}
  .photo-triptych{grid-template-columns:1fr 1fr}.photo-triptych .story-photo:last-child{grid-column:1/-1}
}
@media(max-width:640px){
  .beyond-story{padding:62px 0}.story-copy h2,.photography-head h2,.discipline-copy h2,.beyond-close h2{font-size:36px}
  .story-media-stack{padding:0}.story-photo-large,.story-photo-full{height:340px}.story-photo-inset{position:static;width:72%;height:210px;margin:-36px 0 0 auto;border:7px solid var(--paper)}
  .discipline-collage{display:grid;grid-template-columns:1fr;grid-template-rows:auto;gap:12px}.discipline-collage .action,.discipline-collage .team,.discipline-collage .hike{grid-row:auto;height:300px}
  .photo-triptych{grid-template-columns:1fr}.photo-triptych .story-photo,.photo-triptych .story-photo:last-child{height:300px;grid-column:auto}
  .beyond-close blockquote{font-size:24px;padding-left:24px}
}
