.editorial-page { background: var(--ink); overflow-x: hidden; }
.editorial-page .site-header { background: rgba(9,9,8,.96); }
.editorial-hero { display:grid; min-height:100svh; grid-template-columns:.85fr 1.15fr; align-items:end; gap:6vw; padding:160px 6vw 8vw; }
.editorial-title { position:relative; z-index:1; padding-bottom:4vw; }
.editorial-title h1 { font-size:clamp(100px,14vw,220px); line-height:.69; }
.editorial-hero figure { margin:0; }
.editorial-hero figure img { width:100%; max-height:76svh; object-fit:cover; object-position:50% 46%; }
.editorial-hero figcaption { margin-top:14px; color:#aaa69d; font-size:10px; text-transform:uppercase; letter-spacing:.16em; }
.content-band { padding:14vw 6vw; }
.statement { display:grid; grid-template-columns:.55fr 1.45fr; gap:8vw; border-top:1px solid var(--line); }
.statement-copy { max-width:950px; }
.statement-copy p { color:#aaa69d; font-size:16px; line-height:1.85; }
.statement-copy .lead { margin-top:0; color:var(--ivory); font-family:var(--serif); font-size:clamp(42px,5vw,76px); line-height:1; }
.light-band { color:var(--ink); background:var(--ivory); }
.band-heading { display:grid; grid-template-columns:.6fr 1.4fr; align-items:end; gap:5vw; }
.band-heading h2 { font-size:clamp(72px,10vw,155px); line-height:.78; }
.method-list { max-width:1200px; margin:10vw 0 0 auto; border-top:1px solid #aaa49a; }
.method-list p { display:grid; grid-template-columns:50px 1fr; margin:0; padding:22px 0; border-bottom:1px solid #aaa49a; font-family:var(--serif); font-size:clamp(29px,4vw,54px); }
.method-list p::before { content:"—"; color:var(--gold); }
.method-note { max-width:600px; margin:8vw 0 0 auto; color:#625e57; line-height:1.8; }
.series-feature { position:relative; min-height:100svh; display:grid; align-items:end; padding:7vw 6vw; isolation:isolate; }
.series-feature > img { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; }
.series-feature::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(5,5,5,.86),rgba(5,5,5,.1)),linear-gradient(0deg,rgba(5,5,5,.7),transparent 60%); }
.series-copy { max-width:650px; }
.series-copy h2 { font-size:clamp(75px,10vw,150px); line-height:.76; }
.series-copy p { max-width:560px; color:#d0ccc3; line-height:1.8; }
.vita-intro { max-width:700px; margin:8vw 0 10vw auto; color:#aaa69d; line-height:1.85; }
.timeline { max-width:1250px; margin-left:auto; border-top:1px solid var(--line); }
.timeline-year { display:grid; grid-template-columns:.45fr 1.55fr; gap:5vw; padding:55px 0; border-bottom:1px solid var(--line); }
.timeline-year h3 { color:var(--gold); font-size:clamp(55px,7vw,100px); line-height:.8; }
.timeline-year ul { margin:0; padding:0; list-style:none; }
.timeline-year li { display:grid; grid-template-columns:.8fr 1.2fr; gap:25px; padding:14px 0; border-bottom:1px solid rgba(240,237,229,.1); }
.timeline-year li:last-child { border-bottom:0; }
.timeline-year strong { font-weight:400; }
.timeline-year span { color:#aaa69d; font-size:13px; line-height:1.6; }
.page-cta { min-height:85svh; display:grid; place-content:center; justify-items:center; padding:100px 5vw; color:var(--ink); background:var(--ivory); text-align:center; }
.page-cta h2 { font-size:clamp(70px,11vw,170px); line-height:.75; }
.contact-hero { min-height:92svh; display:grid; align-content:end; padding:160px 6vw 8vw; border-bottom:1px solid var(--line); }
.contact-hero h1 { font-size:clamp(90px,14vw,220px); line-height:.7; }
.contact-mail { justify-self:end; margin-top:6vw; padding:20px 0; color:var(--ivory); font-size:clamp(18px,2.2vw,30px); text-decoration:none; border-bottom:1px solid var(--line); }
.contact-options { display:grid; grid-template-columns:repeat(3,1fr); }
.contact-options article { min-height:650px; padding:7vw 3.5vw; border-right:1px solid var(--line); }
.contact-options article:last-child { border-right:0; }
.contact-options h2 { font-size:clamp(50px,5vw,80px); line-height:.84; }
.contact-options article > p:not(.eyebrow) { margin-top:45px; color:#aaa69d; line-height:1.8; }
.direct-contact { display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; padding:14vw 6vw; color:var(--ink); background:var(--ivory); }
.direct-contact .band-heading { display:block; }
.direct-contact .band-heading h2 { font-size:clamp(70px,10vw,150px); }
.contact-list { align-self:end; border-top:1px solid #aaa49a; }
.contact-list a { display:grid; grid-template-columns:120px 1fr; gap:20px; padding:24px 0; color:var(--ink); text-decoration:none; border-bottom:1px solid #aaa49a; }
.contact-list span { color:#77736b; font-size:10px; text-transform:uppercase; letter-spacing:.14em; }
@media (max-width:800px) {
  .editorial-hero { display:flex; min-height:auto; flex-direction:column; padding:130px 20px 80px; }
  .editorial-title { align-self:stretch; }
  .editorial-title h1 { font-size:clamp(80px,28vw,116px); }
  .editorial-hero figure img { height:64svh; object-position:50% 44%; }
  .content-band { padding:110px 20px; }
  .statement,.band-heading { display:block; }
  .statement-copy { margin-top:55px; }
  .statement-copy .lead { font-size:46px; }
  .band-heading h2 { font-size:clamp(62px,19vw,88px); }
  .method-list { margin-top:75px; }
  .method-list p { grid-template-columns:32px 1fr; font-size:31px; }
  .method-note { margin-top:65px; }
  .series-feature { min-height:82svh; padding:80px 20px; }
  .series-feature > img { object-position:48% 50%; }
  .series-copy h2 { font-size:73px; }
  .vita-intro { margin:65px 0 80px; }
  .timeline-year { display:block; padding:45px 0; }
  .timeline-year ul { margin-top:32px; }
  .timeline-year li { display:block; }
  .timeline-year span { display:block; margin-top:8px; }
  .page-cta { min-height:70svh; padding:90px 20px; }
  .page-cta h2 { font-size:70px; }
  .contact-hero { min-height:80svh; padding:140px 20px 70px; }
  .contact-hero h1 { font-size:clamp(68px,21vw,92px); }
  .contact-mail { justify-self:start; margin-top:65px; font-size:17px; }
  .contact-options { display:block; }
  .contact-options article { min-height:auto; padding:90px 20px; border-right:0; border-bottom:1px solid var(--line); }
  .contact-options h2 { font-size:60px; }
  .direct-contact { display:block; padding:110px 20px; }
  .contact-list { margin-top:70px; }
  .contact-list a { grid-template-columns:1fr; gap:10px; overflow-wrap:anywhere; }
}
