/* Rävenager owned header 0.13.5
   Canonical header geometry. This file deliberately overrides every historic
   Divi/header layout rule and works without the Mega Menu panel stylesheet. */

:root {
  --rmm-owned-logo-edge: 24px;
  --rmm-owned-right-edge: 24px;
  --rmm-owned-header-height: 82px;
  --rmm-owned-logo-max-w: 190px;
  --rmm-owned-logo-max-h: 58px;
  --rmm-owned-cluster-gap: 22px;
  --rmm-owned-action-gap: 12px;
  --rmm-owned-collision-gap: 24px;
  --rmm-owned-search-min: 240px;
  --rmm-owned-search-max: 420px;
}

body.rmm-owned-header-ready.rmm-hide-theme-header .et-l--header,
body.rmm-owned-header-ready.rmm-hide-theme-header #main-header,
body.rmm-owned-header-ready.rmm-hide-theme-header header.et-l--header,
body.rmm-owned-header-ready.rmm-hide-theme-header .et_pb_section.huvudheader,
html.rmm-owned-boot body.rmm-owned-header-replaces-theme .et-l--header,
html.rmm-owned-boot body.rmm-owned-header-replaces-theme #main-header,
html.rmm-owned-boot body.rmm-owned-header-replaces-theme header.et-l--header,
html.rmm-owned-boot body.rmm-owned-header-replaces-theme .et_pb_section.huvudheader {
  display: none !important;
}

.rmm-owned-header {
  position: relative !important;
  z-index: 99990 !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
  font-family: Inter, Arial, sans-serif !important;
  overflow: visible !important;
}
.rmm-owned-header *, .rmm-owned-header *::before, .rmm-owned-header *::after { box-sizing: border-box; }
.rmm-owned-header.is-sticky-enabled { position: sticky !important; top: 0 !important; }
.admin-bar .rmm-owned-header.is-sticky-enabled { top: 32px !important; }

.rmm-owned-header-inner {
  min-height: var(--rmm-owned-header-height) !important;
}
.rmm-owned-logo { color: #111 !important; text-decoration: none !important; }
.rmm-owned-logo-img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: var(--rmm-owned-logo-max-w) !important;
  max-height: var(--rmm-owned-logo-max-h) !important;
}
.rmm-owned-site-name { font-size: 22px !important; font-weight: 700 !important; white-space: nowrap !important; }
.rmm-owned-nav-list, .rmm-owned-nav-list ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.rmm-owned-nav-list > li { position: relative !important; margin: 0 !important; padding: 0 !important; }
.rmm-owned-nav-list > li > a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 40px !important;
  padding: 0 !important;
  color: #202124 !important;
  text-decoration: none !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}
.rmm-owned-nav-list > li > .sub-menu {
  display: none !important;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  min-width: 220px !important;
  padding: 14px !important;
  background: #fff !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.12) !important;
  z-index: 30 !important;
}
.rmm-owned-nav-list > li:hover > .sub-menu,
.rmm-owned-nav-list > li:focus-within > .sub-menu { display: block !important; }

.rmm-owned-actions button,
.rmm-owned-actions a {
  min-width: 38px !important;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 5px !important;
  border: 0 !important;
  background: transparent !important;
  color: #202124 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  text-decoration: none !important;
  cursor: pointer !important;
  line-height: 1 !important;
}
.rmm-owned-account { font-size: 14px !important; font-weight: 600 !important; }
.rmm-owned-search-toggle { font-size: 27px !important; }
.rmm-owned-cart { position: relative !important; }
.rmm-owned-cart .rmm-cart-icon, .rmm-owned-cart .rmm-cart-icon svg { display: block !important; width: 27px !important; height: 27px !important; }
.rmm-owned-cart .rmm-cart-badge {
  position: absolute !important;
  right: -2px !important;
  top: -1px !important;
  min-width: 17px !important;
  height: 17px !important;
  padding: 0 4px !important;
  border-radius: 999px !important;
  background: #111 !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 10px !important;
}
.rmm-owned-burger { flex-direction: column !important; gap: 4px !important; }
.rmm-owned-burger span { display: block !important; width: 25px !important; height: 2px !important; background: currentColor !important; }

/* Desktop is established in wp_head before first paint. JavaScript later adds
   the equivalent header class so this geometry never changes during bootstrap. */
html.rmm-desktop-env .rmm-owned-header .rmm-owned-header-inner,
.rmm-owned-header.is-desktop-window .rmm-owned-header-inner {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-height: var(--rmm-owned-header-height) !important;
  margin: 0 !important;
  padding: 0 !important;
}
html.rmm-desktop-env .rmm-owned-header .rmm-owned-logo,
.rmm-owned-header.is-desktop-window .rmm-owned-logo {
  position: absolute !important;
  left: var(--rmm-owned-logo-edge) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 6 !important;
}
html.rmm-desktop-env .rmm-owned-header .rmm-owned-center-cluster,
.rmm-owned-header.is-desktop-window .rmm-owned-center-cluster {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: max-content !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--rmm-owned-cluster-gap) !important;
  z-index: 5 !important;
}
html.rmm-desktop-env .rmm-owned-header .rmm-owned-nav,
.rmm-owned-header.is-desktop-window .rmm-owned-nav {
  display: block !important;
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html.rmm-desktop-env .rmm-owned-header .rmm-owned-nav-list,
.rmm-owned-header.is-desktop-window .rmm-owned-nav-list {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
  gap: clamp(12px, 1.45vw, 26px) !important;
}
html.rmm-desktop-env .rmm-owned-header .rmm-owned-actions,
.rmm-owned-header.is-desktop-window .rmm-owned-actions {
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--rmm-owned-action-gap) !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html.rmm-desktop-env .rmm-owned-header .rmm-owned-account,
.rmm-owned-header.is-desktop-window .rmm-owned-account { order: 1 !important; }
html.rmm-desktop-env .rmm-owned-header .rmm-owned-cart,
.rmm-owned-header.is-desktop-window .rmm-owned-cart { order: 2 !important; }
html.rmm-desktop-env .rmm-owned-header .rmm-owned-search-toggle,
.rmm-owned-header.is-desktop-window .rmm-owned-search-toggle { order: 3 !important; }
html.rmm-desktop-env .rmm-owned-header .rmm-owned-burger,
.rmm-owned-header.is-desktop-window .rmm-owned-burger { display: none !important; order: 4 !important; }

html.rmm-desktop-env .rmm-owned-header.is-space-constrained .rmm-owned-nav,
.rmm-owned-header.is-desktop-window.is-space-constrained .rmm-owned-nav { display: none !important; }
html.rmm-desktop-env .rmm-owned-header.is-space-constrained .rmm-owned-account,
.rmm-owned-header.is-desktop-window.is-space-constrained .rmm-owned-account { display: none !important; }
html.rmm-desktop-env .rmm-owned-header.is-space-constrained .rmm-owned-burger,
.rmm-owned-header.is-desktop-window.is-space-constrained .rmm-owned-burger { display: inline-flex !important; order: 1 !important; }
html.rmm-desktop-env .rmm-owned-header.is-space-constrained .rmm-owned-cart,
.rmm-owned-header.is-desktop-window.is-space-constrained .rmm-owned-cart { order: 2 !important; }
html.rmm-desktop-env .rmm-owned-header.is-space-constrained .rmm-owned-search-toggle,
.rmm-owned-header.is-desktop-window.is-space-constrained .rmm-owned-search-toggle { order: 3 !important; }

/* Search is independent of the centered group. The runtime writes only its
   left coordinate and width. Opening search therefore cannot move navigation. */
html.rmm-desktop-env .rmm-owned-header:not(.is-search-stacked) .rmm-owned-search,
.rmm-owned-header.is-desktop-window:not(.is-search-stacked) .rmm-owned-search {
  position: absolute !important;
  left: var(--rmm-owned-search-left, calc(100% - 444px)) !important;
  right: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: var(--rmm-owned-search-width, 420px) !important;
  max-width: var(--rmm-owned-search-width, 420px) !important;
  height: 46px !important;
  max-height: 46px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  z-index: 9 !important;
}
html.rmm-desktop-env .rmm-owned-header:not(.is-search-stacked).is-search-open .rmm-owned-search,
.rmm-owned-header.is-desktop-window:not(.is-search-stacked).is-search-open .rmm-owned-search {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html.rmm-desktop-env .rmm-owned-header:not(.is-search-stacked) .rmm-owned-search form,
.rmm-owned-header.is-desktop-window:not(.is-search-stacked) .rmm-owned-search form {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.rmm-owned-search input[type=search] {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid #d6d6d6 !important;
  border-radius: 3px !important;
  background: #fff !important;
  box-shadow: 0 3px 14px rgba(0,0,0,.10) !important;
  font: inherit !important;
}
.rmm-owned-search button {
  flex: 0 0 auto !important;
  height: 44px !important;
  padding: 0 20px !important;
  border: 1px solid #222 !important;
  border-radius: 3px !important;
  background: #222 !important;
  color: #fff !important;
  cursor: pointer !important;
}

html.rmm-desktop-env .rmm-owned-header.is-search-stacked .rmm-owned-search,
.rmm-owned-header.is-desktop-window.is-search-stacked .rmm-owned-search {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  transform: none !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-top: 0 solid #eee !important;
  background: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
html.rmm-desktop-env .rmm-owned-header.is-search-stacked.is-search-open .rmm-owned-search,
.rmm-owned-header.is-desktop-window.is-search-stacked.is-search-open .rmm-owned-search {
  max-height: 76px !important;
  border-top-width: 1px !important;
}
html.rmm-desktop-env .rmm-owned-header.is-search-stacked .rmm-owned-search form,
.rmm-owned-header.is-desktop-window.is-search-stacked .rmm-owned-search form {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: min(calc(100% - 48px), 640px) !important;
  margin: 0 auto !important;
  padding: 13px 0 !important;
}

/* Touch layouts remain a separate composition. Window width on a desktop does
   not activate this branch. */
html.rmm-touch-env .rmm-owned-header .rmm-owned-header-inner,
.rmm-owned-header.is-touch-window .rmm-owned-header-inner {
  width: 100% !important;
  min-height: 72px !important;
  margin: 0 !important;
  padding: 7px 14px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}
html.rmm-touch-env .rmm-owned-header .rmm-owned-logo,
.rmm-owned-header.is-touch-window .rmm-owned-logo {
  position: static !important;
  transform: none !important;
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
}
html.rmm-touch-env .rmm-owned-header .rmm-owned-logo-img,
.rmm-owned-header.is-touch-window .rmm-owned-logo-img { max-width: 160px !important; max-height: 52px !important; }
html.rmm-touch-env .rmm-owned-header .rmm-owned-center-cluster,
.rmm-owned-header.is-touch-window .rmm-owned-center-cluster {
  position: static !important;
  transform: none !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}
html.rmm-touch-env .rmm-owned-header .rmm-owned-nav,
.rmm-owned-header.is-touch-window .rmm-owned-nav { display: none !important; }
html.rmm-touch-env .rmm-owned-header .rmm-owned-actions,
.rmm-owned-header.is-touch-window .rmm-owned-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}
html.rmm-touch-env .rmm-owned-header .rmm-owned-account,
.rmm-owned-header.is-touch-window .rmm-owned-account { display: none !important; }
html.rmm-touch-env .rmm-owned-header .rmm-owned-burger,
.rmm-owned-header.is-touch-window .rmm-owned-burger { display: inline-flex !important; order: 1 !important; }
html.rmm-touch-env .rmm-owned-header .rmm-owned-cart,
.rmm-owned-header.is-touch-window .rmm-owned-cart { order: 2 !important; }
html.rmm-touch-env .rmm-owned-header .rmm-owned-search-toggle,
.rmm-owned-header.is-touch-window .rmm-owned-search-toggle { order: 3 !important; }
html.rmm-touch-env .rmm-owned-header .rmm-owned-search,
.rmm-owned-header.is-touch-window .rmm-owned-search {
  position: relative !important;
  width: 100% !important;
  max-height: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  border-top: 0 solid #eee !important;
}
html.rmm-touch-env .rmm-owned-header.is-search-open .rmm-owned-search,
.rmm-owned-header.is-touch-window.is-search-open .rmm-owned-search { max-height: 76px !important; border-top-width: 1px !important; }
html.rmm-touch-env .rmm-owned-header .rmm-owned-search form,
.rmm-owned-header.is-touch-window .rmm-owned-search form {
  display: flex !important;
  gap: 8px !important;
  width: calc(100% - 28px) !important;
  max-width: 640px !important;
  margin: 0 auto !important;
  padding: 13px 0 !important;
}

.rmm-owned-mobile-panel {
  display: block !important;
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: min(88vw, 420px) !important;
  background: #fff !important;
  box-shadow: -18px 0 48px rgba(0,0,0,.18) !important;
  transform: translateX(105%) !important;
  transition: transform .2s ease !important;
  z-index: 100001 !important;
  overflow: auto !important;
  pointer-events: none !important;
}
.rmm-owned-header.is-mobile-open .rmm-owned-mobile-panel { transform: translateX(0) !important; pointer-events: auto !important; }
.rmm-owned-mobile-panel-inner { padding: 88px 26px 30px !important; }
.rmm-owned-mobile-list { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.rmm-owned-mobile-list li { margin: 0 !important; padding: 0 !important; }
.rmm-owned-mobile-list a, .rmm-owned-mobile-panel-inner > a {
  display: block !important;
  padding: 11px 0 !important;
  color: #202124 !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}
.rmm-owned-mobile-list .sub-menu { list-style: none !important; margin: 0 0 0 16px !important; padding: 0 !important; }
body.rmm-mobile-menu-open { overflow: hidden !important; }

body.rmm-owned-header-stuck .rmm-owned-header-inner { min-height: 64px !important; }
body.rmm-owned-header-stuck .rmm-owned-logo-img { max-width: 165px !important; max-height: 46px !important; }

@media (max-width: 782px) {
  .admin-bar .rmm-owned-header.is-sticky-enabled { top: 46px !important; }
}
@media (max-width: 520px) {
  html.rmm-touch-env .rmm-owned-header .rmm-owned-logo-img,
  .rmm-owned-header.is-touch-window .rmm-owned-logo-img { max-width: 142px !important; max-height: 48px !important; }
  html.rmm-touch-env .rmm-owned-header .rmm-owned-header-inner,
  .rmm-owned-header.is-touch-window .rmm-owned-header-inner { padding-left: 10px !important; padding-right: 10px !important; }
  html.rmm-touch-env .rmm-owned-header .rmm-owned-actions,
  .rmm-owned-header.is-touch-window .rmm-owned-actions { gap: 4px !important; }
}
