/* ===========================
   CB Consult Theme - Header (White)
   Targets Astra Header Footer Builder (HFB) selectors.
   =========================== */

/* Header background */
.ast-primary-header-bar,
.ast-primary-header-bar .site-primary-header-wrap {
  background-color: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
}

/* Site logo */
.site-logo-img .custom-logo {
  height: 80px;
  width: auto;
}

@media (max-width: 1200px) {
  .site-logo-img .custom-logo {
    height: 56px;
  }
}

.ast-site-identity {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
}

/* Site title */
.site-title a,
.ast-site-identity .site-title a {
  color: var(--color-primary);
}

.site-title a:hover {
  color: var(--color-accent);
}

/* Nav links - Astra HFB Menu Builder */
.ast-builder-menu-1 .menu-item > .menu-link,
.ast-builder-menu-1 .menu-item > .ast-menu-toggle {
  color: var(--color-primary);
  font-family: var(--font-heading);
  font-weight: 600;
}

/*
 * Astra emits inline dynamic CSS at (0,5,0) specificity
 * (.ast-builder-menu-1 .main-header-menu > .menu-item:hover > .menu-link),
 * which outranks a plain .menu-item:hover rule. Mirror its structure and
 * prefix with .site-header so the accent colour wins without !important.
 */
.site-header .ast-builder-menu-1 .main-header-menu > .menu-item:hover > .menu-link,
.site-header .ast-builder-menu-1 .main-header-menu > .menu-item:hover > .ast-menu-toggle,
.site-header .ast-builder-menu-1 .menu-link:hover {
  color: var(--color-accent);
}

.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link,
.ast-builder-menu-1 .menu-item.current-menu-ancestor > .menu-link {
  color: var(--color-accent);
}

/* Submenu */
.ast-builder-menu-1 .sub-menu {
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-md);
  border-radius: var(--border-radius);
}

.ast-builder-menu-1 .sub-menu .menu-item > .menu-link {
  color: var(--color-text);
}

.ast-builder-menu-1 .sub-menu .menu-item:hover > .menu-link {
  color: var(--color-accent);
  background-color: var(--color-background);
}

/* Above/Below header bars */
.ast-above-header-bar,
.ast-below-header-bar {
  background-color: var(--color-primary);
}

/* Mobile off-canvas drawer */
.ast-mobile-popup-drawer .ast-mobile-popup-inner {
  background-color: var(--color-surface);
  max-width: 320px;
  padding: var(--spacing-lg) 0;
}

.ast-mobile-popup-drawer .ast-mobile-popup-inner .menu-item {
  border-bottom: 1px solid var(--color-border);
}

.ast-mobile-popup-drawer .ast-mobile-popup-inner .menu-item:last-child {
  border-bottom: none;
}

.ast-mobile-popup-drawer .ast-mobile-popup-inner .menu-item > .menu-link {
  color: var(--color-primary);
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 0.9375rem;
  padding: 0.875em var(--spacing-md);
  transition: color var(--transition-fast), background-color var(--transition-fast);
}

.ast-mobile-popup-drawer .ast-mobile-popup-inner .menu-item:hover > .menu-link,
.ast-mobile-popup-drawer .ast-mobile-popup-inner .menu-item.current-menu-item > .menu-link {
  color: var(--color-accent);
  background-color: var(--color-background);
}

.ast-mobile-popup-drawer .ast-mobile-popup-inner .close-button,
.ast-mobile-popup-drawer .menu-toggle-close {
  color: var(--color-text-light);
}

/* Off-canvas overlay */
.ast-mobile-popup-drawer .ast-mobile-popup-overlay {
  background-color: rgba(26, 35, 50, 0.5);
}

/* Mobile header row */
.ast-builder-menu-mobile .main-navigation .menu-item > .menu-link,
.ast-builder-menu-mobile .main-navigation .menu-item > .ast-menu-toggle {
  color: var(--color-primary);
}

.ast-builder-menu-mobile .main-navigation .menu-item:hover > .menu-link,
.ast-builder-menu-mobile .main-navigation .menu-item.current-menu-item > .menu-link {
  color: var(--color-accent);
}

/* Mobile toggle button */
.ast-header-break-point .ast-button-wrap .menu-toggle {
  color: var(--color-primary);
}

