/* Shared logo sizing for every page; preserve the original artwork. */
header .bar { min-height: 124px; gap: 24px; padding-top: 12px; padding-bottom: 12px; }
header .logo { display: flex; flex: 0 0 auto; width: 300px; max-width: 100%; }
header .logo .brand-image { display: block; width: 100%; height: auto; object-fit: contain; border-radius: 0; }
header .book { white-space: nowrap; }
@media (max-width: 1100px) {
  header nav { gap: 18px; }
  header .bar { gap: 16px; }
  header .logo { width: 270px; }
}
@media (max-width: 980px) {
  header nav { display: none; }
  header .book { margin-left: auto; }
}
@media (max-width: 600px) {
  header .bar { display: grid; grid-template-columns: 1fr auto; gap: 10px 12px; padding-top: 12px; padding-bottom: 12px; }
  header .logo { grid-column: 1 / -1; width: 280px; justify-self: center; }
  header .book { margin-left: 0; justify-self: start; }
  header .langs { justify-self: end; }
}