/**
 * Header 1024px-breakpoint (samma som henrikssonscykel).
 * Klassnamn: brainforest-mobile-trigger, brainforest-desktop-mega, brainforest-mobile-dialog.
 */

/* Header – sidopadding på x-axeln så innehållet kommer lite in från kanterna */
.brainforest-header {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  box-sizing: border-box;
}
@media (min-width: 640px) {
  .brainforest-header {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .brainforest-header {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

/* Inre nav: max 1700px, slutar växa där; annars 100% inom padding */
.brainforest-header nav.max-w-360 {
  max-width: min(100%, 1700px);
}

/* Logo – centrerad med absolut positionering */
.brainforest-site-logo {
  flex: 0 0 auto;
  flex-shrink: 0;
}
/* Begränsa logga-höjd oavsett om den renderas via wp:site-logo eller patterns/header.php */
.brainforest-header .brainforest-site-logo img {
  height: 2rem !important;
  width: auto !important;
  max-width: none !important;
}
@media (min-width: 640px) {
  .brainforest-header .brainforest-site-logo img {
    height: 2.375rem !important;
  }
}
/* Header-bar: logga centrerad, menyer vid sidorna */
.brainforest-header-bar {
  position: relative;
  justify-content: space-between;
}
.brainforest-header-bar > .brainforest-site-logo {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.brainforest-header-bar > .brainforest-desktop-mega {
  flex: 1 1 0%;
  min-width: 0;
}
.brainforest-header-bar > .brainforest-header-right {
  flex: 1 1 0%;
  justify-content: flex-end;
}

/* Höger grupp: hamburger + konto + varukorg + support – luft mellan konto och kundvagn */
.brainforest-header-right {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-shrink: 0;
}
.brainforest-header-right .wp-block-woocommerce-customer-account {
  margin-left: 0.5rem;
}
.brainforest-header-right .flow-root {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}

/* Under 1024px: visa hamburger (vänster), dölj desktop-meny; logga centrerad */
@media (max-width: 1023px) {
  .brainforest-header-bar > .brainforest-mobile-trigger {
    display: flex !important;
    flex: 1 1 0%;
    justify-content: flex-start;
  }
  .brainforest-desktop-mega,
  .brainforest-desktop-nav {
    display: none !important;
  }
  .brainforest-header-right {
    gap: 0.375rem;
    flex: 1 1 0%;
    justify-content: flex-end;
  }
  .brainforest-header-right .wp-block-woocommerce-customer-account {
    margin-left: 0.15rem;
  }
  .brainforest-header-right .flow-root {
    margin-left: 0.15rem;
    margin-right: 0.15rem;
  }
}

/* Från 1024px: dölj hamburger och mobil-dialog, visa desktop mega + Butik/E-handel + Support */
@media (min-width: 1024px) {
  .brainforest-mobile-trigger {
    display: none !important;
  }
  .brainforest-desktop-mega {
    display: flex !important;
    flex: 1 1 0%;
    align-self: stretch;
    align-items: center;
    justify-content: flex-start;
  }
  .brainforest-desktop-nav {
    display: flex !important;
    align-items: center;
  }
  .brainforest-mobile-dialog {
    display: none !important;
  }
}

/* Mobilmeny: panel fyller höjden, endast nav scrollar – Support alltid längst ner */
.brainforest-mobile-panel {
  display: flex;
  flex-direction: column;
  height: 100%;
  max-height: 100dvh;
  overflow: hidden;
}
.brainforest-mobile-nav {
  flex: 1 1 0;
  min-height: 0;
  overflow-y: auto;
}
.brainforest-mobile-footer {
  flex-shrink: 0;
  margin-top: auto;
  border: none;
}

/* Mobilmeny: listor och länkar synliga */
.mobile-nav .mobile-nav-main,
.mobile-nav .mobile-nav-secondary,
.mobile-nav .mobile-nav-sub {
  display: block;
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.mobile-nav .mobile-nav-main li,
.mobile-nav .mobile-nav-secondary li,
.mobile-nav .mobile-nav-sub li {
  margin-bottom: 0.25rem;
}
.mobile-nav .mobile-nav-main a,
.mobile-nav .mobile-nav-secondary a,
.mobile-nav .mobile-nav-sub a {
  display: block;
  padding: 0.5rem 0;
  color: oklch(0.262 0.022 285.752);
  text-decoration: none;
}
.mobile-nav .mobile-nav-main a:hover,
.mobile-nav .mobile-nav-secondary a:hover,
.mobile-nav .mobile-nav-sub a:hover {
  color: oklch(0.129 0.042 264.695);
}
.mobile-nav-section-title {
  font-size: 1rem;
  font-weight: 600;
  margin-top: 1.25rem;
  margin-bottom: 0.5rem;
  color: #111827;
}
.mobile-nav .mobile-nav-section-title:first-of-type {
  margin-top: 0.75rem;
}
