@media screen and (min-width: 1024px) {
  /* Compact permanent PC header; existing brand image and navigation kept. */
  .site-header { padding-block: 4px !important; }
  .site-header .site-logo { width: min(100%, 700px) !important; max-width: 700px !important; margin: 0 auto !important; padding: 0 !important; }
  .site-header .site-logo a, .site-header .site-logo picture { display: block; }
  .site-header .site-logo img { display: block !important; width: 100% !important; height: auto !important; }
  .site-header .main-nav ul { width: 100%; max-width: 1100px; margin: 0 auto !important; padding: 4px 16px !important; column-gap: 12px !important; row-gap: 4px !important; }
  .site-header .main-nav li { min-width: 0; }
  .site-header .main-nav a { display: flex; align-items: center; justify-content: center; min-height: 40px; font-size: 16px !important; line-height: 1.4 !important; padding: 4px 8px !important; white-space: nowrap; }
  .site-header .main-nav li + li::before, .site-header .main-nav li:first-child::before { left: -6px !important; height: 16px !important; }
  .site-header .main-nav li:last-child::after { right: -6px !important; height: 16px !important; }
  html { scroll-padding-top: max(var(--fixed-header, 160px), 160px) !important; }
  main[id], main section[id], main h1[id], main h2[id] { scroll-margin-top: 16px !important; }
  .site-header .site-logo { width: min(100%, 640px) !important; max-width: 640px !important; }
}
