/* ═══════════════════════════════════════════
   Brühwerk Header — Sticky, glass-morphism, announcement bar
   ═══════════════════════════════════════════ */

/* ── Announcement Bar ── */
.bw-announce {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 10001 !important;
  background: var(--bw-accent) !important;
  color: var(--bw-accent-ink) !important;
  text-align: center !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  padding: 7px 16px !important;
  font-family: var(--bw-font-sans) !important;
  overflow: hidden !important;
  height: 32px !important;
  line-height: 18px !important;
}
.bw-announce__track {
  display: flex !important;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.bw-announce__msg {
  flex: 0 0 100% !important;
  white-space: nowrap !important;
}

/* ── Push header down by announcement bar height ── */
.bw-header {
  top: 32px !important;
}

/* ── Glass-morphism on scroll ── */
.bw-header.scrolled {
  background: rgba(14, 14, 16, 0.85) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.3) !important;
  backdrop-filter: blur(20px) saturate(1.3) !important;
  border-bottom: 1px solid var(--bw-border) !important;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3) !important;
}

/* ── Collapse announcement bar on scroll ── */
.bw-announce.collapsed {
  height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  transition: height 0.3s ease, padding 0.3s ease, opacity 0.2s ease !important;
}
.bw-announce:not(.collapsed) {
  transition: height 0.3s ease, padding 0.3s ease, opacity 0.3s ease !important;
}
body.announce-collapsed .bw-header {
  top: 0 !important;
  transition: top 0.3s ease !important;
}

/* ── Body offset for fixed header + announcement bar ── */
body {
  padding-top: 102px !important;
}
body.announce-collapsed {
  padding-top: 70px !important;
}
body.admin-bar {
  padding-top: 134px !important;
}
body.admin-bar.announce-collapsed {
  padding-top: 102px !important;
}

/* ── Nav link polish ── */
.bw-nav__link {
  position: relative !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.75) !important;
  transition: color var(--bw-t-fast) !important;
  padding: 8px 0 !important;
}
.bw-nav__link:hover {
  color: #fff !important;
}
.bw-nav__link.current,
.bw-nav__item.current .bw-nav__link,
.bw-nav__item.current-menu-item .bw-nav__link {
  color: var(--bw-accent) !important;
}
.bw-nav__link.current::after,
.bw-nav__item.current .bw-nav__link::after,
.bw-nav__item.current-menu-item .bw-nav__link::after {
  content: "" !important;
  position: absolute !important;
  bottom: -2px !important;
  left: 0 !important;
  right: 0 !important;
  height: 2px !important;
  background: var(--bw-accent) !important;
  border-radius: 1px !important;
}

/* ── Cart icon with count badge ── */
.bw-header__actions .bw-cart-count {
  position: absolute !important;
  top: -6px !important;
  right: -8px !important;
  background: var(--bw-accent) !important;
  color: var(--bw-accent-ink) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
}

/* ── Actions area ── */
.bw-header__actions {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
}
.bw-header__actions a {
  color: rgba(255,255,255,0.75) !important;
  transition: color var(--bw-t-fast) !important;
  font-size: 13px !important;
}
.bw-header__actions a:hover {
  color: #fff !important;
}

/* ── Admin bar offset ── */
body.admin-bar .bw-announce {
  top: 32px !important;
}
body.admin-bar .bw-header {
  top: 64px !important;  /* 32px admin + 32px announce */
}
body.admin-bar.announce-collapsed .bw-header {
  top: 32px !important;
}

/* ── Mobile: hide announcement on small screens ── */
@media (max-width: 768px) {
  .bw-announce {
    font-size: 11px !important;
    padding: 6px 12px !important;
    height: 28px !important;
  }
  .bw-header {
    top: 28px !important;
  }
  body.announce-collapsed .bw-header {
    top: 0 !important;
  }
}
