/* Live round 01: header and hero only. */
.header { padding: .85rem max(1.25rem, calc((100% - 1560px) / 2)); gap: 1rem 2rem; border-bottom-color: #d5d5cc; }
.header .wordmark[data-media] { width: 144px; min-height: 36px; }
.header .wordmark[data-media] img { width: 144px; height: 28px; }
.header nav { gap: clamp(1rem, 2vw, 2rem); }
.header nav a { font-size: .75rem; }
.header .button { min-height: 44px; padding: .75rem 1rem; font-size: .6875rem; }
.header .button:hover, .hero .button:hover { transform: none; background: #9e2018; color: white; }
.header a:focus-visible, .header button:focus-visible, .hero a:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 4px; }
.hero { max-width: 1680px; margin-inline: auto; padding: 2.5rem 1.25rem 0; min-height: 0; }
.hero > * { min-width: 0; }
.hero-copy { padding: 0; }
.hero h1 { font-size: clamp(3rem, 11.7vw, 5rem); line-height: .97; letter-spacing: -.065em; margin: 1.4rem 0 1.6rem; }
.hero .eyebrow { font-size: .625rem; letter-spacing: .11em; }
.hero-description { font-size: .95rem; line-height: 1.7; color: #55584f; }
.hero-origin-copy { font-size: .75rem; margin-top: 1.25rem; }
.hero-actions { gap: .65rem 1.4rem; margin-top: 1.6rem; }
.hero .button { min-height: 50px; padding: .9rem 1.2rem; font-size: .75rem; }
.hero .text-link { min-height: 46px; font-size: .75rem; }
.hero-art, .hero-art:has(img) { aspect-ratio: 2 / 3; min-height: 0; max-height: none; margin: 2rem -1.25rem 0; background: #e5e4dc; border: 0; }
.hero-art > img { object-fit: contain; object-position: center; }
.hero-art .placeholder { background-image: none; }
.hero-art .placeholder-type { color: #777a70; }
.hero-art .placeholder-caption { font-size: .625rem; }
.hero-art .frame-corner, .hero-art .art-meta { display: none; }
.hero-bottom { padding: 1.3rem 0; font-size: .625rem; letter-spacing: .06em; gap: 1rem; }
.hero-bottom > span { max-width: none; }
@media (max-width: 767px) {
  .header { padding-block: .6rem; }
  .header nav { gap: 0; max-height: calc(100dvh - 70px); overflow-y: auto; }
  .header nav a { min-height: 48px; }
  .hero-actions .button { width: 100%; }
  .hero-actions .text-link { width: 100%; justify-content: space-between; }
}
@media (min-width: 768px) {
  .header { padding-inline: 2rem; }
  .hero { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); gap: 0 2rem; padding: 0 2rem; align-items: center; }
  .hero-copy { padding-block: 2.5rem; }
  .hero h1 { font-size: clamp(3rem, 6.05vw, 6.5rem); }
  .hero-art, .hero-art:has(img) { margin: 0; }
  .hero-actions { flex-direction: column; align-items: flex-start; }
  .hero-bottom { grid-column: 1 / -1; }
}
@media (min-width: 1024px) {
  .header { padding-inline: max(2rem, calc((100% - 1560px) / 2)); }
  .hero { padding-inline: clamp(2rem, 3.6vw, 4rem); column-gap: clamp(2rem, 3vw, 3.5rem); }
  .hero h1 { font-size: clamp(3.8rem, 6.05vw, 6.5rem); }
  .hero .eyebrow { font-size: .6875rem; }
  .hero-description { font-size: 1.0625rem; }
  .hero-art, .hero-art:has(img) { width: 100%; max-width: 520px; justify-self: end; }
  .hero-actions { flex-direction: row; align-items: center; margin-top: 2rem; }
  .hero-copy { padding-block: 3rem; }
}
@media (min-width: 1440px) {
  .header .wordmark[data-media], .header .wordmark[data-media] img { width: 156px; }
  .hero-art, .hero-art:has(img) { max-width: 560px; }
  .hero { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
}
