/* ============================================================
   AVENIR — inner pages. Built on home.css tokens.
   ============================================================ */
body.inner { background: var(--night); color: var(--warm-white); }

.ihero { position: relative; min-height: 78vh; display: flex; align-items: center; overflow: hidden; padding-block: clamp(116px, 18vh, 200px) clamp(48px, 8vh, 96px); }
.ihero__art { position: absolute; inset: 0; z-index: -1; overflow: hidden; }
.ihero__art img { width: 100%; height: 112%; object-fit: cover; transform: scale(1.04); }
.ihero__scrim { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(8,6,5,0.55), rgba(8,6,5,0.32) 42%, rgba(12,9,7,0.92) 90%, var(--night)); }
.ihero__inner { position: relative; z-index: 2; max-width: 820px; }
.ihero .kicker { color: var(--gold-soft); }
.ihero h1 { color: var(--paper-white); text-shadow: 0 2px 36px rgba(0,0,0,0.45); }
.ihero h1 em { color: var(--gold-soft); }
.ihero .lede { color: #E7DDC9; max-width: 52ch; text-shadow: 0 1px 20px rgba(0,0,0,0.4); }

.sblock { padding-block: clamp(46px, 7vh, 88px); border-bottom: 1px solid rgba(247,241,230,0.1); }
.sblock__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(30px, 5vw, 72px); align-items: center; }
.sblock--flip .sblock__media { order: -1; }
.sblock__no { font-size: 0.66rem; letter-spacing: 0.3em; color: var(--warm-dim); margin-bottom: 12px; }
.sblock__body h2 { color: var(--paper-white); margin-bottom: 14px; }
.sblock__body h2 em { color: var(--gold); }
.sblock__body .lede { color: var(--warm-muted); margin-bottom: 22px; }
.sblock__media { border-radius: 4px; overflow: hidden; }
.sblock__media img { width: 100%; aspect-ratio: 4/3; object-fit: cover; will-change: transform; }
.tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; }
.tags span { font-size: 0.66rem; letter-spacing: 0.14em; text-transform: uppercase; padding: 7px 14px; border: 1px solid rgba(247,241,230,0.18); border-radius: 2px; color: var(--warm-muted); }

.iblock { padding-block: clamp(46px, 7vh, 88px); }
.iblock--tint { background: rgba(20,14,10,0.5); }
.iblock h2 { color: var(--paper-white); }
.iblock h2 em { color: var(--gold); }
.cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin-top: 40px; }
.cards--3 { grid-template-columns: repeat(3, 1fr); }
.card { background: rgba(247,241,230,0.04); border: 1px solid rgba(247,241,230,0.1); border-radius: 5px; padding: 34px 28px; transition: transform .5s var(--ease-out), border-color .5s; }
.card:hover { transform: translateY(-5px); border-color: rgba(207,154,65,0.4); }
.card .n { font-size: 0.62rem; letter-spacing: 0.22em; color: var(--warm-dim); margin-bottom: 12px; }
.card h3 { font-size: 1.3rem; color: var(--paper-white); margin-bottom: 8px; }
.card h3 .ico { display: inline-block; width: 22px; height: 22px; vertical-align: -3px; margin-right: 8px; stroke: var(--gold); stroke-width: 1.5; fill: none; }
.card p { font-size: 0.9rem; color: var(--warm-muted); line-height: 1.65; }

.split2 { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(30px, 5vw, 64px); align-items: center; }
.statrow { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin-top: 40px; }
.statrow .n { font-family: var(--display); font-size: clamp(2.2rem, 4vw, 3.2rem); color: var(--paper-white); line-height: 1; }
.statrow .n em { color: var(--gold); font-style: normal; }
.statrow .l { font-size: 0.64rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--warm-dim); margin-top: 8px; }

.iclose { padding-block: clamp(70px, 11vh, 140px); }
.iclose h2 { color: var(--paper-white); } .iclose h2 em { color: var(--gold); }

.center-screen { min-height: 100svh; display: grid; place-items: center; text-align: center; padding: var(--gutter); background: var(--night); }
.center-screen .big-num { font-family: var(--display); font-style: italic; font-size: clamp(5rem, 18vw, 13rem); color: var(--gold); line-height: 0.9; margin-bottom: 6px; }
.center-screen h1 { color: var(--paper-white); font-size: clamp(2.2rem, 6vw, 4.4rem); margin-bottom: 16px; }
.center-screen p { color: var(--warm-muted); max-width: 44ch; margin: 0 auto 30px; }
.center-screen .mark { width: 72px; margin: 0 auto 24px; }
.center-screen .mark svg { overflow: visible; }
.center-screen .mark svg path, .center-screen .mark svg line { stroke: var(--gold); stroke-width: 2.2; fill: none; stroke-linecap: round; stroke-linejoin: round; }

@media (max-width: 940px) {
  .sblock__grid, .split2 { grid-template-columns: 1fr; }
  .sblock--flip .sblock__media { order: 0; }
  .cards, .cards--3 { grid-template-columns: 1fr; }
  .statrow { grid-template-columns: 1fr; gap: 22px; }
}

/* ============================================================
   GALLERY + ACTIVE PROJECTS pages
   ============================================================ */
.gallery-section { padding-block: clamp(40px, 6vh, 78px); }
.gallery-section + .gallery-section { padding-top: 0; }
.ggroup { margin-bottom: clamp(40px, 6vh, 84px); }
.ggroup:last-child { margin-bottom: 0; }
.ggroup__head { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; margin-bottom: 26px; padding-bottom: 16px; border-bottom: 1px solid rgba(247,241,230,0.13); flex-wrap: wrap; }
.ggroup__head h2 { color: var(--paper-white); }
.ggroup__head h2 em { color: var(--gold); }
.ggroup__head .meta { font-size: 0.66rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--warm-dim); }
.gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.gallery-grid--2 { grid-template-columns: repeat(2, 1fr); }
.gtile { position: relative; border-radius: 4px; overflow: hidden; background: rgba(247,241,230,0.04); }
.gtile img { width: 100%; height: 100%; object-fit: cover; aspect-ratio: 4/3; transition: transform .8s var(--ease-out); }
.gtile--tall img { aspect-ratio: 3/4; }
.gtile:hover img { transform: scale(1.05); }
.gtile__cap { position: absolute; left: 0; right: 0; bottom: 0; padding: 16px 18px; background: linear-gradient(transparent, rgba(8,6,5,0.86)); }
.gtile__cap .t { font-size: 0.58rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gold-soft); }
.gtile__cap .n { font-family: var(--display); font-size: 1.05rem; color: var(--warm-white); margin-top: 2px; }
.badge { display: inline-flex; align-items: center; gap: 7px; font-family: var(--ui); font-size: 0.58rem; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; padding: 6px 12px; border-radius: 999px; border: 1px solid; }
.badge::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.badge--active { color: #84CFAE; border-color: rgba(132,207,174,0.45); }
.badge--past { color: var(--gold-soft); border-color: rgba(235,192,105,0.45); }
@media (max-width: 940px) { .gallery-grid, .gallery-grid--2 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .gallery-grid, .gallery-grid--2 { grid-template-columns: 1fr; } }
