
/* Inner page system */
.inner-header{background:rgba(250,249,246,.96);border-bottom:1px solid var(--border-color)}.header-actions{display:flex;gap:1rem;align-items:center}.inner-hero{min-height:82vh;padding:10rem 10% 6rem;display:flex;align-items:flex-end;position:relative;background-image:linear-gradient(90deg,rgba(12,16,18,.82),rgba(12,16,18,.25)),var(--hero-image);background-size:cover;background-position:center}.inner-hero-content{max-width:760px;color:#fff}.eyebrow{display:block;color:var(--color-gold);font:600 .72rem var(--font-sans);letter-spacing:.25em;text-transform:uppercase;margin-bottom:1.5rem}.inner-hero h1{font-size:clamp(3.2rem,7vw,6.6rem);line-height:.95;font-weight:400;margin-bottom:1.7rem}.inner-hero h1 em{color:var(--color-gold);font-weight:400}.inner-hero p{max-width:620px;color:rgba(255,255,255,.78);line-height:1.8;margin-bottom:2rem}.hero-index{position:absolute;right:4%;bottom:4rem;color:rgba(255,255,255,.55);font:.65rem var(--font-sans);letter-spacing:.2em;writing-mode:vertical-rl}.intro-centered{text-align:center}.intro-centered>p{max-width:720px;margin:0 auto 3.5rem;color:var(--color-muted);line-height:1.8}.intro-centered h2,.editorial-copy h2,.dark-cta h2{font-size:clamp(2.5rem,4vw,4.4rem);font-weight:400;line-height:1.05;margin:1rem 0 1.5rem}.inner-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;text-align:left}.inner-card{border:1px solid var(--border-color);padding:2.4rem;background:var(--bg-primary);min-height:260px;transition:.35s}.inner-card:hover{transform:translateY(-6px);border-color:var(--color-gold)}.inner-card>span{font:500 .7rem var(--font-sans);color:var(--color-gold);letter-spacing:.2em}.inner-card h3{font-size:1.8rem;margin:2.5rem 0 1rem}.inner-card p{color:var(--color-muted);line-height:1.7}.inner-card a,.text-link,.featured-story a{display:inline-block;margin-top:1.5rem;color:var(--color-gold);font:.72rem var(--font-sans);letter-spacing:.12em;text-transform:uppercase}.editorial-split{display:grid;grid-template-columns:1.05fr 1fr;gap:6rem;align-items:center}.editorial-split.reverse .editorial-image{order:2}.editorial-image{position:relative}.editorial-image img{width:100%;height:620px;object-fit:cover}.image-caption{position:absolute;right:-1px;bottom:-1px;background:var(--bg-primary);padding:1rem 1.4rem;color:var(--color-muted);font:.65rem var(--font-sans);letter-spacing:.1em;text-transform:uppercase}.editorial-copy p{color:var(--color-muted);line-height:1.9}.dark-cta{text-align:center;background:#0f161c;color:white}.dark-cta p{color:rgba(255,255,255,.65);max-width:620px;margin:0 auto 2rem}.process-list{max-width:1000px;margin:auto}.process-list article{display:grid;grid-template-columns:120px 1fr;gap:3rem;padding:3rem 0;border-bottom:1px solid var(--border-color)}.process-list article>span{font:400 3rem var(--font-serif);color:var(--color-gold)}.process-list h2{font-size:2.4rem;margin-bottom:.7rem}.process-list p{color:var(--color-muted);line-height:1.8}.gallery-masonry{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:280px;gap:1rem}.gallery-masonry figure{position:relative;overflow:hidden}.gallery-masonry .wide{grid-column:span 2}.gallery-masonry .tall{grid-row:span 2}.gallery-masonry img{width:100%;height:100%;object-fit:cover;transition:.6s}.gallery-masonry figure:hover img{transform:scale(1.04)}.gallery-masonry figcaption{position:absolute;left:0;bottom:0;background:rgba(15,22,28,.85);color:white;padding:.8rem 1rem;font:.68rem var(--font-sans);letter-spacing:.12em;text-transform:uppercase}.journal-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:5rem}.featured-story img{width:100%;height:480px;object-fit:cover}.featured-story div{padding:2rem 0}.featured-story span,.story-list span{color:var(--color-gold);font:.68rem var(--font-sans);letter-spacing:.15em;text-transform:uppercase}.featured-story h2{font-size:2.7rem;margin:1rem 0}.featured-story p,.story-list p{color:var(--color-muted);line-height:1.7}.story-list article{padding:0 0 2rem;margin-bottom:2rem;border-bottom:1px solid var(--border-color)}.story-list h3{font-size:1.7rem;margin:.7rem 0}.site-footer{background:#0f161c;border-top:1px solid rgba(197,168,128,.2);padding:6rem 10% 4rem}.site-footer,.site-footer a{color:rgba(255,255,255,.65)}.footer-logo{font-size:2rem!important;color:#fff!important}.site-footer h5{color:var(--color-gold)}.footer-spacer{margin-top:1rem}.site-footer .footer-bottom{border-top:1px solid rgba(255,255,255,.06);padding-top:2rem;color:rgba(255,255,255,.4)}
@media(max-width:1024px){.inner-card-grid{grid-template-columns:repeat(2,1fr)}.editorial-split,.journal-grid{grid-template-columns:1fr;gap:3rem}.editorial-split.reverse .editorial-image{order:0}.editorial-image img{height:520px}}@media(max-width:768px){.inner-hero{min-height:72vh;padding:8rem 7% 4rem}.hero-index{display:none}.inner-card-grid{grid-template-columns:1fr}.editorial-image img{height:390px}.process-list article{grid-template-columns:60px 1fr;gap:1rem}.process-list article>span{font-size:2rem}.gallery-masonry{grid-template-columns:1fr;grid-auto-rows:300px}.gallery-masonry .wide{grid-column:auto}.gallery-masonry .tall{grid-row:auto}.site-footer{padding:4rem 7% 2rem}.header-actions .btn-gold{display:none}}

/* Theme-aware inner-page surfaces */
.inner-header{background:var(--bg-scrolled)}
[data-theme="dark"] .inner-header{box-shadow:0 10px 35px rgba(0,0,0,.22)}

/* Headings on photographic and permanently dark surfaces must not inherit the
   light theme's dark heading token. */
.inner-hero h1,
.dark-cta h2 {
  color: #fff;
}

.inner-hero h1 {
  font-size: clamp(2.9rem, 5vw, 5rem);
}

.dark-cta h2 {
  font-size: clamp(2.4rem, 3.5vw, 3.75rem);
}

/* The resting header overlays the hero photograph. Its foreground therefore
   uses image-safe contrast; the scrolled header returns to theme tokens. */
header:not(.scrolled) {
  background: transparent;
  border-bottom-color: rgba(255, 255, 255, 0.14);
  box-shadow: none;
}

header:not(.scrolled) > .logo {
  color: #fff;
}

header:not(.scrolled) .mobile-toggle span {
  background-color: #fff;
}

@media (min-width: 1101px) {
  header:not(.scrolled) .nav-link {
    color: rgba(255, 255, 255, 0.88);
  }
}
