/*
 * Header fix overrides for static site.
 * Forces solid background on non-homepage pages and handles scroll transitions.
 */

/* Ensure header is fixed and transitions smoothly */
#header {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  transition: transform 0.3s ease, background-color 0.3s ease;
}

/* On non-homepage pages (no .homepage class), always show solid background */
body:not(.homepage) #header {
  background-color: var(--solidHeaderBackgroundColor, hsla(var(--white-hsl), 1)) !important;
}

body:not(.homepage) #header .header-background {
  opacity: 1 !important;
}

/* Ensure nav text is visible against solid bg on non-homepage */
body:not(.homepage) #header .header-nav-item a,
body:not(.homepage) #header .header-title-text a {
  color: var(--solidHeaderNavigationColor, hsla(var(--black-hsl), 1)) !important;
}

/* On the homepage, when scrolled (header--solid), show solid background */
body.homepage #header.header--solid {
  background-color: var(--solidHeaderBackgroundColor, hsla(var(--white-hsl), 1)) !important;
}

body.homepage #header.header--solid .header-background {
  opacity: 1 !important;
}

body.homepage #header.header--solid .header-nav-item a,
body.homepage #header.header--solid .header-title-text a {
  color: var(--solidHeaderNavigationColor, hsla(var(--black-hsl), 1)) !important;
}

/* Add padding to body to account for fixed header */
body {
  padding-top: 0; /* Squarespace handles this dynamically; we keep 0 because the first section usually overlaps */
}

/* Non-homepage pages need top padding since header is solid and doesn't overlap */
body:not(.homepage) {
  padding-top: 120px;
}
