/* Shared header and footer only; approved artwork and hero compositions are isolated. */
.site-header { gap: 28px; }
.site-header .brand { flex-shrink: 0; }
.site-header .primary-navigation { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px 24px; padding: 0; }
.site-header .primary-navigation a { font: 400 11px/1.6 'Helvetica Neue', Helvetica, sans-serif; letter-spacing: .07em; padding: 14px 0; min-height: 44px; display: inline-flex; align-items: center; text-transform: uppercase; }
.primary-navigation a[aria-current] { border-bottom: 1px solid var(--gold); color: var(--teal); }
.site-footer { display: block; }
.site-footer > div { display: flex; justify-content: space-between; gap: 18px; flex-wrap: wrap; }
.site-footer nav { display: flex; flex-wrap: wrap; padding: 20px 0 0; gap: 4px 24px; }
.site-footer nav a { font: 400 11px/1.6 'Helvetica Neue', sans-serif; letter-spacing: .06em; min-height: 44px; display: inline-flex; align-items: center; padding: 10px 0; }
@media(max-width:760px) {
 .site-header, .editorial-page .site-header { display: block; padding: 0 6% 22px; }
 .site-header .brand { width: 135px; }
 .site-header .primary-navigation, .editorial-page .site-header .primary-navigation { justify-content: flex-start; gap: 2px 19px; padding: 0; }
 .site-header .primary-navigation a { font-size: 10px; padding: 10px 0; }
 .site-footer > div { flex-direction: column; gap: 12px; }
 .site-footer nav { gap: 3px 20px; }
}
