/* === Global Site Header === */
#header {
  height: 4.5625rem; /* spacer — 與 .header 同高 */
}

.header {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 300;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 1.25rem;
  background: #111;
  height: 4.5625rem;
  transition: height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
}

.header--expanded { height: 7.5rem; }

.header-logo {
  display: flex;
  align-items: center;
  text-decoration: none;
}

.header-logo img {
  height: 2.0625rem;
  max-width: 7.125rem;
  width: auto;
  display: block;
  filter: brightness(0) invert(1);
  transition: height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.header--expanded .header-logo img { height: 3.75rem; }

/* header right-side tagline */
.header-tagline {
  color: #F7F7F7;
  font-size: 0.75rem;
  font-weight: 700;
  white-space: nowrap;
  font-family: 'Geist', 'Helvetica Neue', sans-serif;
}

@media (min-width: 48.0625rem) {
  #header          { height: 5.5625rem; }
  .header          { height: 5.5625rem; padding: 0 2rem; }
  .header-logo img { height: 2.5rem; max-width: 8.625rem; }
  .header-tagline  { font-size: 0.875rem; }
}
