body:not(.admin-body) {
  --runtime-ink: #111827;
  --runtime-ink-soft: #4b5563;
  --runtime-line: rgba(207, 216, 232, 0.92);
  --runtime-blue: #2142a2;
  --runtime-blue-dark: #1d2f84;
  --runtime-sky: #12b9ee;
}

body:not(.admin-body) .site-header,
body:not(.admin-body) .header-main,
body:not(.admin-body) .main-nav,
body:not(.admin-body) .nav-band,
body:not(.admin-body) .nav-band-inner {
  border: 0 !important;
  box-shadow: none !important;
}

body:not(.admin-body) .site-header,
body:not(.admin-body) .header-main {
  overflow: visible !important;
}

body:not(.admin-body) .site-header::before,
body:not(.admin-body) .site-header::after,
body:not(.admin-body) .nav-band::before,
body:not(.admin-body) .nav-band::after {
  display: none !important;
}

body:not(.admin-body) .nav-band {
  position: relative !important;
  margin: 0 !important;
  z-index: 220 !important;
  overflow: visible !important;
}

body:not(.admin-body) .nav-band-inner {
  position: static !important;
  margin: 0 !important;
  overflow: visible !important;
}

body:not(.admin-body) .nav-categories-dropdown {
  position: static !important;
  overflow: visible !important;
}

body:not(.admin-body) .header-search,
body:not(.admin-body) .header-search-shell,
body:not(.admin-body) .search-autocomplete-shell {
  position: relative !important;
  overflow: visible !important;
}

body:not(.admin-body) .header-search,
body:not(.admin-body) .header-search-shell,
body:not(.admin-body) .search-autocomplete-shell:focus-within {
  z-index: 1800 !important;
}

body:not(.admin-body) .search-autocomplete-panel {
  position: absolute !important;
  z-index: 1900 !important;
}

@media (max-width: 980px) {
  body:not(.admin-body) .nav-band:has(.nav-categories-dropdown[open]) {
    z-index: 2600 !important;
  }

  body:not(.admin-body) .nav-categories-dropdown[open] .nav-categories-panel {
    z-index: 2610 !important;
  }

  body:not(.admin-body) .nav-categories-dropdown[open] .nav-categories-panel::before {
    position: sticky !important;
    top: 0 !important;
    z-index: 2 !important;
  }
}

@media (min-width: 981px) {
  body:not(.admin-body) .nav-categories-dropdown[open] .nav-categories-panel,
  body:not(.admin-body) .nav-categories-dropdown[open]:hover .nav-categories-panel,
  body:not(.admin-body) .nav-categories-dropdown[open]:focus-within .nav-categories-panel {
    position: fixed !important;
    inset: auto 0 0 0 !important;
    margin: 0 !important;
    top: var(--nav-megamenu-top, 152px) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100vw !important;
    min-height: 24rem !important;
    height: min(34rem, calc(100vh - var(--nav-megamenu-top, 152px))) !important;
    transform: none !important;
    border-top: 0 !important;
    border-radius: 0 0 1rem 1rem !important;
    z-index: 260 !important;
    overflow: hidden !important;
    background: #ffffff !important;
    box-shadow: 0 20px 44px rgba(8, 18, 46, 0.18) !important;
  }

  body:not(.admin-body) .nav-taxonomy-desktop {
    display: grid !important;
    grid-template-columns: minmax(16.5rem, 18rem) minmax(0, 1fr) !important;
    width: min(calc(100vw - 1.5rem), 1360px) !important;
    max-width: calc(100vw - 1.5rem) !important;
    min-width: 0 !important;
    min-height: 24rem !important;
    height: 100% !important;
    margin: 0 auto !important;
  }

  body:not(.admin-body) .nav-taxonomy-sidebar,
  body:not(.admin-body) .nav-taxonomy-detail {
    min-width: 0 !important;
    max-height: none !important;
    height: 100% !important;
  }

  body:not(.admin-body) .nav-categories-dropdown[open] .nav-categories-panel::before,
  body:not(.admin-body) .nav-categories-dropdown[open] .nav-categories-panel::after {
    display: none !important;
  }
}

body:not(.admin-body) .nav-taxonomy-category,
body:not(.admin-body) .nav-taxonomy-line,
body:not(.admin-body) .nav-taxonomy-mobile-category-link,
body:not(.admin-body) .nav-taxonomy-mobile-line {
  color: var(--runtime-ink) !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: color 0.18s ease, text-decoration-color 0.18s ease !important;
}

body:not(.admin-body) .nav-taxonomy-category:hover,
body:not(.admin-body) .nav-taxonomy-category:focus-visible,
body:not(.admin-body) .nav-taxonomy-line:hover,
body:not(.admin-body) .nav-taxonomy-line:focus-visible,
body:not(.admin-body) .nav-taxonomy-mobile-category-link:hover,
body:not(.admin-body) .nav-taxonomy-mobile-category-link:focus-visible,
body:not(.admin-body) .nav-taxonomy-mobile-line:hover,
body:not(.admin-body) .nav-taxonomy-mobile-line:focus-visible {
  color: var(--runtime-blue) !important;
  text-decoration: underline !important;
  text-underline-offset: 0.2em !important;
}

body:not(.admin-body) .nav-taxonomy-category-count,
body:not(.admin-body) .nav-taxonomy-category small,
body:not(.admin-body) .nav-taxonomy-mobile-category-link small {
  color: var(--runtime-ink-soft) !important;
}

body:not(.admin-body) .cookie-banner {
  position: fixed !important;
  inset: auto 1rem 1rem 1rem !important;
  z-index: 420 !important;
  background:
    linear-gradient(135deg, rgba(18, 28, 61, 0.96), rgba(32, 46, 102, 0.94)) !important;
  border: 1px solid rgba(115, 141, 211, 0.28) !important;
  border-radius: 1.35rem !important;
  box-shadow: 0 24px 52px rgba(10, 19, 44, 0.28) !important;
  backdrop-filter: blur(16px) saturate(120%) !important;
}

body:not(.admin-body) .cookie-banner-inner {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 1rem !important;
  padding: 1rem 1.15rem !important;
}

body:not(.admin-body) .cookie-banner-copy,
body:not(.admin-body) .cookie-banner-copy p {
  margin: 0 !important;
  color: rgba(243, 247, 255, 0.96) !important;
  font-size: 0.95rem !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
}

body:not(.admin-body) .cookie-banner-copy a {
  color: #7fd6ff !important;
  text-decoration: underline !important;
  text-underline-offset: 0.22em !important;
}

body:not(.admin-body) .cookie-banner-actions {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 0.7rem !important;
  flex-wrap: wrap !important;
}

body:not(.admin-body) .cookie-banner-button {
  min-width: 8.25rem !important;
  min-height: 2.9rem !important;
  padding: 0.72rem 1.25rem !important;
  border-radius: 0.9rem !important;
  border: 1px solid rgba(170, 192, 255, 0.18) !important;
  box-shadow: none !important;
  font-weight: 500 !important;
}

body:not(.admin-body) .cookie-banner-button.is-secondary {
  background: rgba(255, 255, 255, 0.06) !important;
  color: #eff4ff !important;
}

body:not(.admin-body) .cookie-banner-button[data-cookie-accept] {
  background: linear-gradient(135deg, var(--runtime-sky), var(--runtime-blue)) !important;
  color: #ffffff !important;
}

body:not(.admin-body) .cookie-banner-button.is-secondary:hover,
body:not(.admin-body) .cookie-banner-button.is-secondary:focus-visible {
  background: rgba(255, 255, 255, 0.12) !important;
}

body:not(.admin-body) .cookie-banner-button[data-cookie-accept]:hover,
body:not(.admin-body) .cookie-banner-button[data-cookie-accept]:focus-visible {
  background: linear-gradient(135deg, #33c9ff, #2b51c0) !important;
}

@media (max-width: 840px) {
  body:not(.admin-body) .cookie-banner {
    inset: auto 0.55rem 0.55rem 0.55rem !important;
    border-radius: 1rem !important;
  }

  body:not(.admin-body) .cookie-banner-inner {
    grid-template-columns: 1fr !important;
    gap: 0.85rem !important;
    padding: 0.95rem !important;
  }

  body:not(.admin-body) .cookie-banner-actions {
    width: 100% !important;
    justify-content: stretch !important;
  }

  body:not(.admin-body) .cookie-banner-button {
    flex: 1 1 12rem !important;
    width: 100% !important;
  }
}

@media (max-width: 980px) {
  body:not(.admin-body) .mobile-account-drawer-shell {
    position: fixed !important;
    inset: var(--mobile-account-drawer-top, 0) 0 0 0 !important;
    z-index: 2590 !important;
    width: 100vw !important;
    height: auto !important;
    min-height: 0 !important;
    display: block !important;
    pointer-events: none !important;
  }

  body:not(.admin-body) .mobile-account-drawer-shell[hidden] {
    display: none !important;
  }

  body:not(.admin-body) .mobile-account-drawer-backdrop {
    position: fixed !important;
    inset: var(--mobile-account-drawer-top, 0) 0 0 0 !important;
    z-index: 0 !important;
    background: rgba(8, 18, 37, 0.42) !important;
    pointer-events: auto !important;
  }

  body:not(.admin-body) .mobile-account-drawer {
    position: relative !important;
    inset: auto !important;
    z-index: 1 !important;
    width: min(100vw, 31rem) !important;
    max-width: 100vw !important;
    height: calc(100dvh - var(--mobile-account-drawer-top, 0px)) !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    padding: 0.55rem 0.95rem 1.15rem !important;
    border: 0 !important;
    border-radius: 0 0 1.15rem 0 !important;
    background: #ffffff !important;
    box-shadow: 12px 18px 34px rgba(15, 32, 61, 0.16) !important;
    pointer-events: auto !important;
  }

  body:not(.admin-body) .mobile-account-drawer-topbar {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    min-height: 2.25rem !important;
    padding: 0 0 0.25rem !important;
    border: 0 !important;
  }

  body:not(.admin-body) .mobile-account-drawer-topbar-brand,
  body:not(.admin-body) .mobile-account-drawer-cart,
  body:not(.admin-body) .mobile-account-drawer-search,
  body:not(.admin-body) .mobile-account-drawer-brand {
    display: none !important;
  }

  body:not(.admin-body) .mobile-account-drawer-close {
    width: 2.15rem !important;
    min-width: 2.15rem !important;
    height: 2.15rem !important;
    min-height: 2.15rem !important;
    border-radius: 999px !important;
    color: #12204a !important;
    background: rgba(239, 245, 255, 0.9) !important;
  }

  body:not(.admin-body) .mobile-account-drawer-welcome {
    margin: 0.25rem 0 0.95rem !important;
    padding: 0.9rem !important;
    border-radius: 1rem !important;
    background: #f8fbff !important;
  }

  body:not(.admin-body) .mobile-account-drawer-links {
    gap: 0.2rem !important;
  }

  body:not(.admin-body) .mobile-account-drawer-links a,
  body:not(.admin-body) .mobile-account-drawer-logout {
    min-height: 3rem !important;
    padding: 0.62rem 0.15rem !important;
  }

  body:not(.admin-body) .mobile-account-drawer-footer {
    margin-top: 0.85rem !important;
    padding-top: 0.85rem !important;
  }
}
