.inner-page { background: #f2efe8; }
.inner-header { position: relative; color: #171714; border-bottom: 1px solid rgba(23,23,20,.16); }
.inner-header .menu-toggle { color: #171714; border-color: rgba(23,23,20,.35); }
.page-hero { min-height: 74vh; padding: 150px 7vw 80px; display: grid; grid-template-columns: 1.25fr .75fr; gap: 8vw; align-items: end; }
.page-hero .page-number { font-size: 10px; letter-spacing: .22em; text-transform: uppercase; margin-bottom: 25px; }
.page-hero .display { font-size: clamp(54px, 7vw, 110px); }
.page-hero .lead { font-size: 19px; line-height: 1.7; max-width: 520px; margin: 0 0 10px; }
.page-banner { height: 72vh; overflow: hidden; }
.page-banner img { height: 100%; object-fit: cover; }
.editorial-section { display: grid; grid-template-columns: .65fr 1.35fr; gap: 9vw; }
.editorial-section .kicker { font-size: 11px; letter-spacing: .2em; text-transform: uppercase; }
.editorial-copy { max-width: 820px; }
.editorial-copy h2 { margin-bottom: 40px; }
.editorial-copy p { font-size: 18px; line-height: 1.85; }
.about-page .editorial-section { display: block; }
.about-page .editorial-section .kicker { max-width: 1080px; margin: 0 auto 38px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.about-page .editorial-copy { max-width: 1080px; margin: 0 auto; }
.about-page .editorial-copy h2 { max-width: 900px; line-height: 1.08; padding-top: .08em; }
.about-page .large-quote { max-width: 980px; overflow: visible; }
.about-page .film-block { display: none; }
.large-quote { margin: 100px 0 0; padding-top: 50px; border-top: 1px solid var(--line); font: clamp(34px,4vw,64px)/1.2 var(--serif); }
.timeline { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 85px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.timeline article { min-height: 240px; padding: 35px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.timeline span { font-size: 11px; letter-spacing: .2em; }
.timeline h3 { font: 34px/1.1 var(--serif); font-weight: 400; margin: 60px 0 15px; }
.split-visual { display: grid; grid-template-columns: 1fr 1fr; min-height: 760px; }
.split-visual img { height: 100%; object-fit: cover; }
.split-content { padding: 90px 7vw; background: #ded7c9; display: flex; flex-direction: column; justify-content: center; }
.split-content p { font-size: 17px; line-height: 1.8; }
.project-list { display: grid; grid-template-columns: repeat(2,1fr); gap: 2px; margin-top: 75px; }
.project-tile { position: relative; min-height: 680px; overflow: hidden; background: #d7d0c4; }
.project-tile img { position: absolute; inset: 0; height: 100%; object-fit: cover; transition: transform .8s ease; }
.project-tile:hover img { transform: scale(1.035); }
.project-tile::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(0,0,0,.76),transparent 58%); }
.project-tile .tile-copy { position: absolute; z-index: 1; left: 36px; right: 36px; bottom: 35px; color: white; }
.project-tile .tile-copy span { font-size: 10px; letter-spacing: .18em; text-transform: uppercase; }
.project-tile h2 { font: 42px/1.05 var(--serif); font-weight: 400; margin: 14px 0; }
.project-tile p { max-width: 560px; line-height: 1.65; color: rgba(255,255,255,.76); }
.project-tile.alt img { filter: sepia(.16) brightness(.7); }
.project-story-hero { min-height: 92vh; position: relative; display: flex; align-items: end; color: white; }
.project-story-hero>img { position: absolute; inset: 0; height: 100%; object-fit: cover; }
.project-story-hero::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.75),transparent 62%); }
.project-story-copy { position: relative; z-index: 1; padding: 70px 7vw; }
.project-story-copy .display { font-size: clamp(55px,8vw,120px); color:white; }
.project-story-copy .display em { color:#d8c7b3; }
.project-meta { display: flex; gap: 50px; margin-top: 35px; font-size: 10px; letter-spacing: .2em; text-transform: uppercase; }
.gallery-strip { display:grid; grid-template-columns:1fr 1fr; gap:2px; }
.gallery-strip img { height: 680px; object-fit:cover; }
.contact-page { min-height: 100vh; background:#22251f; color:white; }
.contact-page .inner-header { color:white; border-color:rgba(255,255,255,.16); }
.contact-page .inner-header .menu-toggle { color:white; border-color:rgba(255,255,255,.4); }
.contact-layout { min-height: calc(100vh - 100px); padding: 100px 7vw 70px; display:grid; grid-template-columns:1.2fr .8fr; gap:10vw; align-items:center; }
.contact-layout .display em { color:#d0bea9; }
.contact-details { border-top:1px solid rgba(255,255,255,.25); }
.contact-details a,.contact-details p { display:block; padding:24px 0; margin:0; border-bottom:1px solid rgba(255,255,255,.18); font-size:17px; }
.contact-note { margin-top:45px; color:rgba(255,255,255,.55); line-height:1.7; }
.page-footer { margin-top:0; }
body.page-transition { animation: pageIn .65s ease both; }
@keyframes pageIn { from { opacity:0; transform:translateY(8px) } to { opacity:1; transform:none } }
@media(max-width:900px){
  .inner-header .site-nav{color:white}
  .page-hero,.editorial-section,.split-visual,.contact-layout{grid-template-columns:1fr}
  .page-hero{min-height:auto;padding:120px 24px 70px;gap:45px}
  .page-banner{height:58vh}
  .editorial-section{gap:45px}
  .timeline{grid-template-columns:1fr}
  .split-visual{min-height:auto}.split-visual>img{height:520px}.split-content{padding:75px 24px}
  .project-list{grid-template-columns:1fr}.project-tile{min-height:570px}
  .project-story-copy{padding:55px 24px}.project-meta{flex-wrap:wrap;gap:20px}
  .gallery-strip{grid-template-columns:1fr}.gallery-strip img{height:520px}
  .contact-layout{padding:90px 24px 60px}
}
@media(max-width:520px){.project-tile{min-height:510px}.project-tile .tile-copy{left:24px;right:24px}.project-tile h2{font-size:35px}.editorial-copy p{font-size:16px}}
