/* Page-specific cover art. Loaded only for mapped public inner pages. */
.inner-hero.has-page-cover {
  min-height: clamp(440px, 34vw, 560px);
  overflow: hidden;
  isolation: isolate;
  background-image: none;
  border-bottom: 3px solid #ffd900;
}
.has-page-cover .page-cover-media,
.has-page-cover .page-cover-media img {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.has-page-cover .page-cover-media { z-index: 0; pointer-events: none; }
.has-page-cover .page-cover-media img {
  object-fit: cover;
  object-position: var(--cover-x, 55%) var(--cover-y, 50%);
}
.inner-hero.has-page-cover::before {
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(8,14,18,.86), rgba(8,14,18,.48) 48%, rgba(8,14,18,.1) 80%),
    linear-gradient(180deg, rgba(8,14,18,.25), transparent 42%, rgba(8,14,18,.38));
}
.has-page-cover .inner-hero-copy { z-index: 2; padding-top: 175px; padding-bottom: 48px; }
.has-page-cover .inner-hero-copy h1 {
  max-width: 26ch;
  line-height: 1.13;
  overflow-wrap: break-word;
  text-shadow: 0 2px 22px rgba(0,0,0,.22);
}
.has-page-cover .breadcrumbs { flex-wrap: wrap; line-height: 1.6; color: #f1f3f4; }
.has-page-cover .eyebrow { text-transform: none; }
@media (max-width: 980px) {
  .site-header .menu-toggle { min-width: 44px; min-height: 44px; }
  .inner-hero.has-page-cover { min-height: 440px; }
  .has-page-cover .inner-hero-copy { padding-top: 145px; padding-bottom: 36px; }
}
@media (max-width: 640px) {
  .inner-hero.has-page-cover { min-height: 430px; }
  .has-page-cover .page-cover-media img { object-position: var(--cover-mobile-x, 50%) var(--cover-y, 50%); }
  .inner-hero.has-page-cover::before {
    background: linear-gradient(180deg, rgba(8,14,18,.22), rgba(8,14,18,.18) 25%, rgba(8,14,18,.8) 100%),
      linear-gradient(90deg, rgba(8,14,18,.3), transparent 90%);
  }
  .has-page-cover .inner-hero-copy { padding-top: 145px; padding-bottom: 30px; }
  .has-page-cover .inner-hero-copy h1 { max-width: 25ch; font-size: clamp(28px, 7.2vw, 38px); }
  .has-page-cover .breadcrumbs { margin-top: 17px; font-size: 12px; gap: 8px; }
}
@media print {
  .has-page-cover .page-cover-media { display: none; }
  .inner-hero.has-page-cover { min-height: 0; color: #111; border-color: #555; background: #fff; }
  .inner-hero.has-page-cover::before { display: none; }
  .has-page-cover .inner-hero-copy { padding: 20px 0; }
  .has-page-cover .inner-hero-copy h1, .has-page-cover .breadcrumbs, .has-page-cover .eyebrow { color: #111; text-shadow: none; }
}
