/* Rävenager Mega Menu 0.12.70 */
:root {
  --rmm-desktop-width: 88vw;
  --rmm-desktop-max: 1200px;
  --rmm-wide-width: 84vw;
  --rmm-wide-max: 1500px;
  --rmm-ultrawide-width: 80vw;
  --rmm-ultrawide-max: 1900px;
  --rmm-gap: 28px;
  --rmm-pad-x: 32px;
  --rmm-pad-y: 30px;
  --rmm-radius: 0px;
  --rmm-shadow: 0 18px 55px rgba(0,0,0,.16);
  --rmm-bg: #fff;
  --rmm-text: #202124;
  --rmm-muted: #6b6f76;
  --rmm-border: rgba(0,0,0,.09);
  --rmm-soft: rgba(0,0,0,.035);
}

.rmm-menu { box-sizing: border-box; }
.rmm-menu *, .rmm-menu *::before, .rmm-menu *::after { box-sizing: border-box; }

.rmm-global {
  position: fixed;
  inset: 0;
  z-index: 999999;
  visibility: hidden;
  pointer-events: none;
}
.rmm-global.rmm-open { visibility: visible; pointer-events: auto; }

.rmm-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(12,15,18,.22);
  opacity: 0;
  backdrop-filter: blur(1px);
  transition: opacity .2s ease;
}
.rmm-open .rmm-backdrop { opacity: 1; }

.rmm-shell {
  position: absolute;
  background: var(--rmm-bg);
  color: var(--rmm-text);
  box-shadow: var(--rmm-shadow);
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.rmm-close {
  position: absolute;
  right: 14px;
  top: 10px;
  z-index: 3;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 999px;
  background: rgba(0,0,0,.04);
  color: inherit;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}
.rmm-close:hover { background: rgba(0,0,0,.08); }

.rmm-columns {
  display: grid;
  gap: var(--rmm-gap);
  align-items: start;
}

.rmm-section { min-width: 0; }
.rmm-heading-row { display: flex; align-items: center; gap: 8px; }
.rmm-heading {
  display: block;
  flex: 1 1 auto;
  margin: 0 0 11px;
  color: var(--rmm-text);
  text-decoration: none;
  text-transform: uppercase;
  font-size: 15px;
  line-height: 1.25;
  font-weight: 750;
  letter-spacing: .025em;
}
.rmm-list { list-style: none; margin: 0; padding: 0; }
.rmm-item { margin: 0; padding: 0; }
.rmm-link {
  display: block;
  padding: 4px 0;
  color: var(--rmm-text);
  text-decoration: none;
  font-size: 14px;
  line-height: 1.35;
}
.rmm-heading:hover, .rmm-link:hover { opacity: .62; }
.rmm-level-2, .rmm-level-3, .rmm-level-4 { margin: 3px 0 5px 12px; }
.rmm-level-2 .rmm-link, .rmm-level-3 .rmm-link, .rmm-level-4 .rmm-link { font-size: 13px; color: var(--rmm-muted); }

.rmm-section-image { display: none; }
.rmm-section-toggle {
  display: none;
  position: relative;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  cursor: pointer;
}
.rmm-section-toggle span::before,
.rmm-section-toggle span::after {
  content: '';
  position: absolute;
  left: 9px;
  top: 14px;
  width: 12px;
  height: 1.5px;
  background: currentColor;
  transition: transform .18s ease;
}
.rmm-section-toggle span::after { transform: rotate(90deg); }
.rmm-section-open .rmm-section-toggle span::after { transform: rotate(0deg); }

/* Shared wide positioning. Keep the actual site header/logo outside the overlay. */
.rmm-template-wide-grid .rmm-backdrop,
.rmm-template-wide-clean .rmm-backdrop,
.rmm-template-wide-dense .rmm-backdrop,
.rmm-template-wide-editorial .rmm-backdrop,
.rmm-template-wide-cards .rmm-backdrop,
.rmm-template-wide-showcase .rmm-backdrop,
.rmm-template-wide-lines .rmm-backdrop {
  top: var(--rmm-top, 90px);
}

.rmm-template-wide-grid .rmm-shell,
.rmm-template-wide-clean .rmm-shell,
.rmm-template-wide-dense .rmm-shell,
.rmm-template-wide-editorial .rmm-shell,
.rmm-template-wide-cards .rmm-shell,
.rmm-template-wide-showcase .rmm-shell,
.rmm-template-wide-lines .rmm-shell {
  top: var(--rmm-top, 90px);
  left: 50%;
  width: min(calc(100vw - 32px), var(--rmm-desktop-width), var(--rmm-desktop-max));
  max-height: calc(100vh - var(--rmm-top, 90px) - 18px);
  transform: translate(-50%, -10px) scale(.995);
  transform-origin: top center;
  opacity: 0;
  transition: transform .2s ease, opacity .18s ease;
}
.rmm-open.rmm-template-wide-grid .rmm-shell,
.rmm-open.rmm-template-wide-clean .rmm-shell,
.rmm-open.rmm-template-wide-dense .rmm-shell,
.rmm-open.rmm-template-wide-editorial .rmm-shell,
.rmm-open.rmm-template-wide-cards .rmm-shell,
.rmm-open.rmm-template-wide-showcase .rmm-shell,
.rmm-open.rmm-template-wide-lines .rmm-shell {
  transform: translate(-50%, 0) scale(1);
  opacity: 1;
}

/* 1 – balanced grid */
.rmm-template-wide-grid { --rmm-min-col: 185px; }
.rmm-template-wide-grid .rmm-shell {
  padding: var(--rmm-pad-y) var(--rmm-pad-x);
  border-top: 1px solid var(--rmm-border);
}

/* 2 – minimal */
.rmm-template-wide-clean { --rmm-min-col: 220px; }
.rmm-template-wide-clean .rmm-shell { padding: 40px 46px; }
.rmm-template-wide-clean .rmm-columns { gap: 44px; }
.rmm-template-wide-clean .rmm-heading { font-size: 16px; margin-bottom: 15px; letter-spacing: .045em; }
.rmm-template-wide-clean .rmm-link { padding: 5px 0; }

/* 3 – dense */
.rmm-template-wide-dense { --rmm-min-col: 150px; }
.rmm-template-wide-dense .rmm-shell { padding: 22px 26px; }
.rmm-template-wide-dense .rmm-columns { gap: 20px; }
.rmm-template-wide-dense .rmm-heading { font-size: 13px; margin-bottom: 8px; }
.rmm-template-wide-dense .rmm-link { font-size: 13px; padding: 3px 0; }
.rmm-template-wide-dense .rmm-level-2 .rmm-link { font-size: 12px; }

/* 4 – editorial */
.rmm-template-wide-editorial { --rmm-min-col: 205px; }
.rmm-template-wide-editorial .rmm-shell { padding: 38px 42px 42px; border-radius: 0 0 18px 18px; }
.rmm-template-wide-editorial .rmm-columns { gap: 34px 42px; }
.rmm-template-wide-editorial .rmm-section { padding-top: 14px; border-top: 2px solid var(--rmm-text); }
.rmm-template-wide-editorial .rmm-heading { font-size: 20px; text-transform: none; letter-spacing: -.02em; margin-bottom: 14px; }
.rmm-template-wide-editorial .rmm-link { padding: 5px 0; color: #3e4248; }

/* 5 – cards with Woo category image */
.rmm-template-wide-cards { --rmm-min-col: 210px; --rmm-gap: 18px; }
.rmm-template-wide-cards .rmm-shell { padding: 28px; background: #f6f7f8; border-radius: 0 0 18px 18px; }
.rmm-template-wide-cards .rmm-section {
  height: 100%;
  padding: 14px 16px 18px;
  border: 1px solid var(--rmm-border);
  border-radius: 14px;
  background: #fff;
}
.rmm-template-wide-cards .rmm-section-image {
  display: block;
  width: 100%;
  aspect-ratio: 16/7;
  margin: -6px 0 15px;
  border-radius: 9px;
  overflow: hidden;
  background: #eceeef;
}
.rmm-template-wide-cards .rmm-section-image img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .25s ease; }
.rmm-template-wide-cards .rmm-section-image:hover img { transform: scale(1.025); }
.rmm-template-wide-cards .rmm-heading { font-size: 14px; }
.rmm-template-wide-cards .rmm-link { font-size: 13px; }

/* 6 – first category featured */
.rmm-template-wide-showcase { --rmm-min-col: 190px; }
.rmm-template-wide-showcase .rmm-shell { padding: 30px; border-radius: 0 0 18px 18px; }
.rmm-template-wide-showcase .rmm-columns { grid-auto-flow: row; }
.rmm-template-wide-showcase .rmm-featured-section {
  padding: 22px;
  border-radius: 14px;
  background: var(--rmm-text);
  color: #fff;
}
.rmm-template-wide-showcase .rmm-featured-section .rmm-heading,
.rmm-template-wide-showcase .rmm-featured-section .rmm-link,
.rmm-template-wide-showcase .rmm-featured-section .rmm-level-2 .rmm-link,
.rmm-template-wide-showcase .rmm-featured-section .rmm-level-3 .rmm-link { color: #fff; }
.rmm-template-wide-showcase .rmm-featured-section .rmm-section-image {
  display: block;
  margin: -10px -10px 18px;
  aspect-ratio: 16/8;
  border-radius: 9px;
  overflow: hidden;
}
.rmm-template-wide-showcase .rmm-featured-section .rmm-section-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.rmm-template-wide-showcase .rmm-featured-section .rmm-heading { font-size: 19px; text-transform: none; }
.rmm-template-wide-showcase .rmm-section:not(.rmm-featured-section) { padding: 10px 0; }

/* 7 – Scandinavian lines */
.rmm-template-wide-lines { --rmm-min-col: 180px; }
.rmm-template-wide-lines .rmm-shell { padding: 34px 28px; }
.rmm-template-wide-lines .rmm-columns { gap: 0; }
.rmm-template-wide-lines .rmm-section { padding: 0 24px; border-left: 1px solid var(--rmm-border); }
.rmm-template-wide-lines .rmm-section:first-child { border-left: 0; }
.rmm-template-wide-lines .rmm-heading { font-size: 14px; letter-spacing: .06em; }
.rmm-template-wide-lines .rmm-link { padding: 5px 0; }

/* Responsive desktop tiers. Extra sections always wrap automatically. */
@media (min-width: 1025px) and (max-width: 1439px) {
  .rmm-template-wide-grid .rmm-shell,
  .rmm-template-wide-clean .rmm-shell,
  .rmm-template-wide-dense .rmm-shell,
  .rmm-template-wide-editorial .rmm-shell,
  .rmm-template-wide-cards .rmm-shell,
  .rmm-template-wide-showcase .rmm-shell,
  .rmm-template-wide-lines .rmm-shell {
    width: min(calc(100vw - 32px), var(--rmm-desktop-width), var(--rmm-desktop-max));
  }

  .rmm-cols-desktop-auto .rmm-columns { grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--rmm-min-col, 185px)), 1fr)); }
  .rmm-cols-desktop-2 .rmm-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rmm-cols-desktop-3 .rmm-columns { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rmm-cols-desktop-4 .rmm-columns { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .rmm-cols-desktop-5 .rmm-columns { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .rmm-cols-desktop-6 .rmm-columns { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .rmm-cols-desktop-7 .rmm-columns { grid-template-columns: repeat(7, minmax(0, 1fr)); }
  .rmm-cols-desktop-8 .rmm-columns { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .rmm-cols-desktop-9 .rmm-columns { grid-template-columns: repeat(9, minmax(0, 1fr)); }
  .rmm-cols-desktop-10 .rmm-columns { grid-template-columns: repeat(10, minmax(0, 1fr)); }
  .rmm-template-wide-showcase.rmm-cols-desktop-auto .rmm-featured-section { grid-column: span 2; }
}

@media (min-width: 1440px) and (max-width: 1919px) {
  .rmm-template-wide-grid .rmm-shell,
  .rmm-template-wide-clean .rmm-shell,
  .rmm-template-wide-dense .rmm-shell,
  .rmm-template-wide-editorial .rmm-shell,
  .rmm-template-wide-cards .rmm-shell,
  .rmm-template-wide-showcase .rmm-shell,
  .rmm-template-wide-lines .rmm-shell {
    width: min(calc(100vw - 40px), var(--rmm-wide-width), var(--rmm-wide-max));
  }

  .rmm-cols-wide-auto .rmm-columns { grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--rmm-min-col, 185px)), 1fr)); }
  .rmm-cols-wide-2 .rmm-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rmm-cols-wide-3 .rmm-columns { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rmm-cols-wide-4 .rmm-columns { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .rmm-cols-wide-5 .rmm-columns { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .rmm-cols-wide-6 .rmm-columns { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .rmm-cols-wide-7 .rmm-columns { grid-template-columns: repeat(7, minmax(0, 1fr)); }
  .rmm-cols-wide-8 .rmm-columns { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .rmm-cols-wide-9 .rmm-columns { grid-template-columns: repeat(9, minmax(0, 1fr)); }
  .rmm-cols-wide-10 .rmm-columns { grid-template-columns: repeat(10, minmax(0, 1fr)); }
  .rmm-template-wide-showcase.rmm-cols-wide-auto .rmm-featured-section { grid-column: span 2; }
}

@media (min-width: 1920px) {
  .rmm-template-wide-grid .rmm-shell,
  .rmm-template-wide-clean .rmm-shell,
  .rmm-template-wide-dense .rmm-shell,
  .rmm-template-wide-editorial .rmm-shell,
  .rmm-template-wide-cards .rmm-shell,
  .rmm-template-wide-showcase .rmm-shell,
  .rmm-template-wide-lines .rmm-shell {
    width: min(calc(100vw - 48px), var(--rmm-ultrawide-width), var(--rmm-ultrawide-max));
  }

  .rmm-cols-ultrawide-auto .rmm-columns { grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--rmm-min-col, 185px)), 1fr)); }
  .rmm-cols-ultrawide-2 .rmm-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rmm-cols-ultrawide-3 .rmm-columns { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rmm-cols-ultrawide-4 .rmm-columns { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .rmm-cols-ultrawide-5 .rmm-columns { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .rmm-cols-ultrawide-6 .rmm-columns { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .rmm-cols-ultrawide-7 .rmm-columns { grid-template-columns: repeat(7, minmax(0, 1fr)); }
  .rmm-cols-ultrawide-8 .rmm-columns { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .rmm-cols-ultrawide-9 .rmm-columns { grid-template-columns: repeat(9, minmax(0, 1fr)); }
  .rmm-cols-ultrawide-10 .rmm-columns { grid-template-columns: repeat(10, minmax(0, 1fr)); }
  .rmm-template-wide-showcase.rmm-cols-ultrawide-auto .rmm-featured-section { grid-column: span 2; }
}

/* Left panel shared */
.rmm-template-left-panel-light .rmm-shell,
.rmm-template-left-panel-dark .rmm-shell {
  top: 0;
  left: 0;
  width: min(480px, 92vw);
  height: 100vh;
  padding: 58px 28px 34px;
  transform: translateX(-102%);
  transition: transform .24s cubic-bezier(.22,.61,.36,1);
}
.rmm-open.rmm-template-left-panel-light .rmm-shell,
.rmm-open.rmm-template-left-panel-dark .rmm-shell { transform: translateX(0); }
.rmm-template-left-panel-light .rmm-columns,
.rmm-template-left-panel-dark .rmm-columns { grid-template-columns: 1fr; gap: 0; }
.rmm-template-left-panel-light .rmm-section,
.rmm-template-left-panel-dark .rmm-section { padding: 13px 0; border-bottom: 1px solid var(--rmm-border); }
.rmm-template-left-panel-light .rmm-heading,
.rmm-template-left-panel-dark .rmm-heading { margin: 0; font-size: 16px; text-transform: none; letter-spacing: 0; }

.rmm-template-left-panel-dark { --rmm-bg: #151719; --rmm-text: #f6f7f8; --rmm-muted: #aeb3ba; --rmm-border: rgba(255,255,255,.12); }
.rmm-template-left-panel-dark .rmm-backdrop { background: rgba(0,0,0,.42); }
.rmm-template-left-panel-dark .rmm-close { background: rgba(255,255,255,.08); }

/* Left panel section behavior */
.rmm-template-left-panel-light.rmm-sections-hover .rmm-section-toggle,
.rmm-template-left-panel-light.rmm-sections-click .rmm-section-toggle,
.rmm-template-left-panel-dark.rmm-sections-hover .rmm-section-toggle,
.rmm-template-left-panel-dark.rmm-sections-click .rmm-section-toggle { display: block; }

.rmm-template-left-panel-light.rmm-sections-hover .rmm-section-body,
.rmm-template-left-panel-light.rmm-sections-click .rmm-section-body,
.rmm-template-left-panel-dark.rmm-sections-hover .rmm-section-body,
.rmm-template-left-panel-dark.rmm-sections-click .rmm-section-body {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows .2s ease, opacity .18s ease, margin .2s ease;
}
.rmm-template-left-panel-light.rmm-sections-hover .rmm-section-body > *,
.rmm-template-left-panel-light.rmm-sections-click .rmm-section-body > *,
.rmm-template-left-panel-dark.rmm-sections-hover .rmm-section-body > *,
.rmm-template-left-panel-dark.rmm-sections-click .rmm-section-body > * { overflow: hidden; }

.rmm-template-left-panel-light.rmm-sections-hover .rmm-section-open .rmm-section-body,
.rmm-template-left-panel-light.rmm-sections-click .rmm-section-open .rmm-section-body,
.rmm-template-left-panel-dark.rmm-sections-hover .rmm-section-open .rmm-section-body,
.rmm-template-left-panel-dark.rmm-sections-click .rmm-section-open .rmm-section-body {
  grid-template-rows: 1fr;
  opacity: 1;
  margin-top: 9px;
}

/* Inline mode */
.rmm-inline { position: relative; visibility: visible; pointer-events: auto; }
.rmm-inline .rmm-backdrop, .rmm-inline .rmm-close { display: none; }
.rmm-inline .rmm-shell { position: relative; inset: auto; width: 100%; max-height: none; transform: none !important; opacity: 1 !important; box-shadow: none; padding: 0; }
.rmm-inline .rmm-columns { grid-template-columns: repeat(4, minmax(0,1fr)); }

/* Tablet/mobile: robust off-canvas; hover section mode becomes click via JS */
@media (max-width: 1024px) {
  .rmm-template-wide-grid .rmm-backdrop,
  .rmm-template-wide-clean .rmm-backdrop,
  .rmm-template-wide-dense .rmm-backdrop,
  .rmm-template-wide-editorial .rmm-backdrop,
  .rmm-template-wide-cards .rmm-backdrop,
  .rmm-template-wide-showcase .rmm-backdrop,
  .rmm-template-wide-lines .rmm-backdrop { top: 0; }

  .rmm-global .rmm-shell,
  .rmm-template-wide-grid .rmm-shell,
  .rmm-template-wide-clean .rmm-shell,
  .rmm-template-wide-dense .rmm-shell,
  .rmm-template-wide-editorial .rmm-shell,
  .rmm-template-wide-cards .rmm-shell,
  .rmm-template-wide-showcase .rmm-shell,
  .rmm-template-wide-lines .rmm-shell,
  .rmm-template-left-panel-light .rmm-shell,
  .rmm-template-left-panel-dark .rmm-shell {
    top: 0;
    left: 0;
    width: min(580px, 94vw);
    height: 100vh;
    max-height: none;
    padding: 58px 26px 32px;
    border-radius: 0;
    transform: translateX(-102%);
    opacity: 1;
  }
  .rmm-open .rmm-shell { transform: translateX(0); }
  .rmm-columns,
  .rmm-template-wide-grid .rmm-columns,
  .rmm-template-wide-clean .rmm-columns,
  .rmm-template-wide-dense .rmm-columns,
  .rmm-template-wide-editorial .rmm-columns,
  .rmm-template-wide-cards .rmm-columns,
  .rmm-template-wide-showcase .rmm-columns,
  .rmm-template-wide-lines .rmm-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 22px; }
  .rmm-template-wide-lines .rmm-section { border-left: 0; border-bottom: 1px solid var(--rmm-border); padding: 0 0 18px; }
  .rmm-template-wide-showcase .rmm-featured-section { grid-column: span 2; }
}

@media (max-width: 900px) and (orientation: portrait) {
  .rmm-columns { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 767px) and (orientation: landscape) {
  .rmm-global .rmm-shell { width: min(640px, 96vw); }
  .rmm-columns { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 567px) and (orientation: portrait) {
  .rmm-global .rmm-shell { width: 94vw; padding: 56px 22px 28px; }
  .rmm-columns { grid-template-columns: 1fr; gap: 22px; }
  .rmm-section { padding-bottom: 14px; border-bottom: 1px solid var(--rmm-border); }
  .rmm-template-wide-showcase .rmm-featured-section { grid-column: auto; }
  .rmm-template-wide-cards .rmm-section { padding: 13px 14px 16px; }
}

body.rmm-lock { overflow: hidden; }

/* ===== v0.5.0: close rail, full-image category cards, new card templates, configurable contrast panel ===== */

/* Close control gets its own rail, so it never sits on top of a category heading. */
.rmm-toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-height: 32px;
  margin: 0 0 8px;
  position: relative;
  z-index: 4;
}
.rmm-close {
  position: static;
  width: 32px;
  height: 32px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 32px;
  border: 1px solid var(--rmm-border);
  border-radius: 999px;
  background: rgba(255,255,255,.78);
  color: var(--rmm-text);
  box-shadow: 0 5px 16px rgba(0,0,0,.08);
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  backdrop-filter: blur(8px);
  transition: transform .16s ease, background .16s ease, box-shadow .16s ease;
}
.rmm-close span { transform: translateY(-1px); }
.rmm-close:hover {
  background: #fff;
  transform: translateY(-1px);
  box-shadow: 0 7px 20px rgba(0,0,0,.12);
}
.rmm-inline .rmm-toolbar { display: none; }

/* Kategorikort: preserve the full WooCommerce image. Height controls image size,
   while width adapts naturally without cropping. */
.rmm-template-wide-cards .rmm-section-image,
.rmm-template-wide-cards-air .rmm-section-image,
.rmm-template-wide-cards-gallery .rmm-section-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: var(--rmm-card-image-height, 150px);
  aspect-ratio: auto;
  overflow: hidden;
}
.rmm-template-wide-cards .rmm-section-image img,
.rmm-template-wide-cards-air .rmm-section-image img,
.rmm-template-wide-cards-gallery .rmm-section-image img {
  display: block;
  width: auto;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}
.rmm-template-wide-cards .rmm-section-image:hover img,
.rmm-template-wide-cards-air .rmm-section-image:hover img,
.rmm-template-wide-cards-gallery .rmm-section-image:hover img {
  transform: scale(1.015);
}

/* Card alternative A: Air – soft surfaces, generous whitespace, full image. */
.rmm-template-wide-cards-air {
  --rmm-min-col: 215px;
  --rmm-gap: 20px;
}
.rmm-template-wide-cards-air .rmm-shell {
  background: #eef2f4;
  border: 1px solid rgba(36,45,52,.06);
  border-radius: 0 0 24px 24px;
  padding: 24px 26px 30px;
}
.rmm-template-wide-cards-air .rmm-section {
  height: 100%;
  padding: 12px 14px 18px;
  border: 1px solid rgba(32,40,47,.07);
  border-radius: 20px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 8px 26px rgba(28,38,46,.065);
}
.rmm-template-wide-cards-air .rmm-section-image {
  margin: 0 0 15px;
  padding: 10px;
  border-radius: 14px;
  background: linear-gradient(145deg,#f8fafb,#e9eef1);
}
.rmm-template-wide-cards-air .rmm-heading {
  margin-bottom: 10px;
  font-size: 15px;
  letter-spacing: .01em;
}
.rmm-template-wide-cards-air .rmm-link { font-size: 13px; padding: 4px 0; }

/* Card alternative B: Gallery – image-first framed cards with calm editorial text. */
.rmm-template-wide-cards-gallery {
  --rmm-min-col: 225px;
  --rmm-gap: 22px;
}
.rmm-template-wide-cards-gallery .rmm-shell {
  background: #fff;
  border-radius: 0 0 20px 20px;
  padding: 26px 28px 34px;
}
.rmm-template-wide-cards-gallery .rmm-section {
  height: 100%;
  padding: 0 0 16px;
  border: 1px solid rgba(31,37,42,.12);
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 5px 18px rgba(20,26,31,.045);
}
.rmm-template-wide-cards-gallery .rmm-section-image {
  margin: 0 0 16px;
  padding: 12px;
  border-radius: 0;
  border-bottom: 1px solid rgba(31,37,42,.08);
  background: #f5f5f2;
}
.rmm-template-wide-cards-gallery .rmm-heading-row,
.rmm-template-wide-cards-gallery .rmm-section-body {
  margin-left: 17px;
  margin-right: 17px;
}
.rmm-template-wide-cards-gallery .rmm-heading {
  font-size: 17px;
  text-transform: none;
  letter-spacing: -.015em;
  margin-bottom: 11px;
}
.rmm-template-wide-cards-gallery .rmm-link { font-size: 13px; padding: 4px 0; color: #41484e; }

/* New card templates use the same wide dropdown positioning as the other wide templates. */
@media (min-width: 1025px) {
  .rmm-template-wide-cards-air .rmm-backdrop,
  .rmm-template-wide-cards-gallery .rmm-backdrop {
    top: var(--rmm-top, 90px);
  }
  .rmm-template-wide-cards-air .rmm-shell,
  .rmm-template-wide-cards-gallery .rmm-shell {
    top: var(--rmm-top, 90px);
    left: 50%;
    width: min(calc(100vw - 32px), var(--rmm-desktop-width), var(--rmm-desktop-max));
    max-height: calc(100vh - var(--rmm-top, 90px) - 18px);
    transform: translate(-50%, -10px) scale(.995);
    transform-origin: top center;
    opacity: 0;
    transition: transform .2s ease, opacity .18s ease;
  }
  .rmm-open.rmm-template-wide-cards-air .rmm-shell,
  .rmm-open.rmm-template-wide-cards-gallery .rmm-shell {
    transform: translate(-50%, 0) scale(1);
    opacity: 1;
  }
}

@media (min-width: 1440px) and (max-width: 1919px) {
  .rmm-template-wide-cards-air .rmm-shell,
  .rmm-template-wide-cards-gallery .rmm-shell {
    width: min(calc(100vw - 40px), var(--rmm-wide-width), var(--rmm-wide-max));
  }
}
@media (min-width: 1920px) {
  .rmm-template-wide-cards-air .rmm-shell,
  .rmm-template-wide-cards-gallery .rmm-shell {
    width: min(calc(100vw - 48px), var(--rmm-ultrawide-width), var(--rmm-ultrawide-max));
  }
}

/* Contrast panel now uses a palette generated from the admin setting. */
.rmm-template-left-panel-dark {
  --rmm-bg: var(--rmm-panel-bg, #2b3035);
  --rmm-text: var(--rmm-panel-text, #f7f8f9);
  --rmm-muted: var(--rmm-panel-muted, rgba(255,255,255,.70));
  --rmm-border: var(--rmm-panel-border, rgba(255,255,255,.13));
}
.rmm-template-left-panel-dark .rmm-shell { background: var(--rmm-panel-bg, #2b3035); }
.rmm-template-left-panel-dark .rmm-close {
  background: var(--rmm-panel-close-bg, rgba(255,255,255,.10));
  color: var(--rmm-panel-text, #f7f8f9);
  border-color: var(--rmm-panel-border, rgba(255,255,255,.13));
  box-shadow: none;
}
.rmm-template-left-panel-dark .rmm-close:hover { filter: brightness(1.08); }

/* Left-panel spacing now accounts for the close rail instead of an absolutely overlaid X. */
.rmm-template-left-panel-light .rmm-shell,
.rmm-template-left-panel-dark .rmm-shell {
  padding-top: 18px;
}

@media (max-width: 1024px) {
  .rmm-template-wide-cards-air .rmm-backdrop,
  .rmm-template-wide-cards-gallery .rmm-backdrop { top: 0; }

  .rmm-global .rmm-shell,
  .rmm-template-wide-cards-air .rmm-shell,
  .rmm-template-wide-cards-gallery .rmm-shell {
    top: 0;
    left: 0;
    width: min(580px, 94vw);
    height: 100vh;
    max-height: none;
    padding-top: 18px;
    border-radius: 0;
    transform: translateX(-102%);
    opacity: 1;
  }
  .rmm-open .rmm-shell { transform: translateX(0); }
  .rmm-template-wide-cards-air .rmm-columns,
  .rmm-template-wide-cards-gallery .rmm-columns {
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 24px 20px;
  }
}

@media (max-width: 567px) and (orientation: portrait) {
  .rmm-global .rmm-shell { padding-top: 16px; }
  .rmm-template-wide-cards-air .rmm-columns,
  .rmm-template-wide-cards-gallery .rmm-columns { grid-template-columns: 1fr; }
  .rmm-template-wide-cards-air .rmm-section,
  .rmm-template-wide-cards-gallery .rmm-section { padding-bottom: 15px; }
}

/* ===== v0.6.0: compact floating close button + optional clean card images ===== */
/* The close control is now a small floating corner control instead of a full
   toolbar row. This removes the large dead space above the first category row. */
.rmm-toolbar {
  position: absolute;
  top: 4px;
  right: 4px;
  z-index: 12;
  min-height: 0;
  margin: 0;
  padding: 0;
  pointer-events: none;
}
.rmm-toolbar .rmm-close {
  pointer-events: auto;
  width: 24px;
  height: 24px;
  flex-basis: 24px;
  border-radius: 999px;
  font-size: 18px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 4px 13px rgba(0,0,0,.09);
}
.rmm-toolbar .rmm-close:hover {
  transform: translateY(-1px) scale(1.02);
}

/* Card templates no longer receive any extra top spacing from the X control. */
.rmm-template-wide-cards .rmm-shell,
.rmm-template-wide-cards-air .rmm-shell,
.rmm-template-wide-cards-gallery .rmm-shell {
  padding-top: 18px;
}

/* When automatic background cleanup is enabled, the transparent derivative
   sits directly on the card design rather than inside a white image rectangle. */
.rmm-card-bg-clean.rmm-template-wide-cards .rmm-section-image,
.rmm-card-bg-clean.rmm-template-wide-cards-air .rmm-section-image,
.rmm-card-bg-clean.rmm-template-wide-cards-gallery .rmm-section-image {
  background-color: transparent;
}

/* On tablet/mobile the X stays in the right padding gutter, so only compact top padding is needed. */
@media (max-width: 1024px) {
  .rmm-global .rmm-shell,
  .rmm-template-wide-cards-air .rmm-shell,
  .rmm-template-wide-cards-gallery .rmm-shell {
    padding-top: 20px;
  }
  .rmm-toolbar {
    top: 4px;
    right: 2px;
  }
}


/* ===== v0.7.0: smarter card image fit + clearer floating menu edge ===== */

/* Card images use nearly the full image stage while preserving the complete
   image. Cleaned PNG derivatives are trimmed server-side, so products that
   previously looked tiny in the middle now scale up naturally with an even
   safety margin around them. */
.rmm-template-wide-cards .rmm-section-image,
.rmm-template-wide-cards-air .rmm-section-image,
.rmm-template-wide-cards-gallery .rmm-section-image {
  padding: 4px;
}
.rmm-template-wide-cards .rmm-section-image img,
.rmm-template-wide-cards-air .rmm-section-image img,
.rmm-template-wide-cards-gallery .rmm-section-image img {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: contain;
  object-position: center;
}

/* Make the dropdown read as a separate floating surface instead of a white
   continuation of the header. This is intentionally subtle enough for the
   non-card templates too. */
@media (min-width: 1025px) {
  .rmm-template-wide-grid .rmm-shell,
  .rmm-template-wide-clean .rmm-shell,
  .rmm-template-wide-dense .rmm-shell,
  .rmm-template-wide-editorial .rmm-shell,
  .rmm-template-wide-cards .rmm-shell,
  .rmm-template-wide-cards-air .rmm-shell,
  .rmm-template-wide-cards-gallery .rmm-shell,
  .rmm-template-wide-showcase .rmm-shell,
  .rmm-template-wide-lines .rmm-shell {
    border-top: 1px solid rgba(31, 37, 42, .16);
    border-radius: 16px;
    box-shadow:
      0 -2px 10px rgba(22, 28, 33, .055),
      0 18px 55px rgba(0, 0, 0, .16);
  }

  .rmm-template-wide-cards .rmm-shell {
    border-radius: 18px;
  }
  .rmm-template-wide-cards-air .rmm-shell {
    border-radius: 22px;
    border-color: rgba(36, 45, 52, .14);
    box-shadow:
      0 -3px 13px rgba(28, 38, 46, .075),
      0 18px 48px rgba(28, 38, 46, .14);
  }
  .rmm-template-wide-cards-gallery .rmm-shell {
    border-radius: 20px;
    border-color: rgba(31, 37, 42, .15);
  }
}


/* ===== v0.8.0: card surface palettes + viewport-fit Gallery ===== */

/* The two card templates can now inherit a site-specific surface palette. */
.rmm-template-wide-cards .rmm-shell,
.rmm-template-wide-cards-air .rmm-shell {
  background: var(--rmm-card-menu-bg, #f3f5f6);
}
.rmm-template-wide-cards .rmm-section-image,
.rmm-template-wide-cards-air .rmm-section-image {
  background: var(--rmm-card-image-bg, linear-gradient(145deg,#f8fafb,#e9eef1));
}

/* When a cleaned transparent category image is used, keep the chosen image
   surface instead of forcing transparency. This lets the site palette show. */
.rmm-card-bg-clean.rmm-template-wide-cards .rmm-section-image,
.rmm-card-bg-clean.rmm-template-wide-cards-air .rmm-section-image {
  background: var(--rmm-card-image-bg, transparent);
}

/* Gallery adapts vertically to the available viewport. On normal desktop
   heights the image stage becomes smaller before the shell needs to scroll. */
@media (min-width: 1025px) {
  .rmm-template-wide-cards-gallery .rmm-shell {
    padding-top: clamp(12px, 2.1vh, 26px);
    padding-bottom: clamp(14px, 2.8vh, 34px);
  }
  .rmm-template-wide-cards-gallery .rmm-columns {
    gap: clamp(10px, 1.7vh, 22px);
  }
  .rmm-template-wide-cards-gallery .rmm-section {
    padding-bottom: clamp(8px, 1.4vh, 16px);
  }
  .rmm-template-wide-cards-gallery .rmm-section-image {
    height: clamp(68px, 11vh, var(--rmm-card-image-height, 150px));
    margin-bottom: clamp(8px, 1.5vh, 16px);
    padding: clamp(5px, .9vh, 12px);
  }
  .rmm-template-wide-cards-gallery .rmm-heading {
    margin-bottom: clamp(5px, .9vh, 11px);
    font-size: clamp(14px, 1.9vh, 17px);
  }
  .rmm-template-wide-cards-gallery .rmm-link {
    padding-top: clamp(2px, .45vh, 4px);
    padding-bottom: clamp(2px, .45vh, 4px);
  }
}

/* ===== v0.9.0: Gallery fits without an internal scrollbar ===== */
@media (min-width: 1025px) {
  .rmm-template-wide-cards-gallery .rmm-shell {
    overflow-y: hidden;
    scrollbar-gutter: auto;
  }
  .rmm-template-wide-cards-gallery .rmm-columns {
    will-change: transform;
  }
  .rmm-template-wide-cards-gallery.rmm-gallery-fitted .rmm-section {
    box-shadow: 0 3px 12px rgba(20,26,31,.04);
  }
}

/* WordPress-menu branches can use the same visual engine even when their
   section items do not have WooCommerce category images. */
.rmm-menu-nav-source.rmm-template-wide-cards .rmm-section,
.rmm-menu-nav-source.rmm-template-wide-cards-air .rmm-section,
.rmm-menu-nav-source.rmm-template-wide-cards-gallery .rmm-section {
  min-height: 82px;
}
.rmm-menu-nav-source.rmm-template-wide-cards-gallery .rmm-heading-row,
.rmm-menu-nav-source.rmm-template-wide-cards-gallery .rmm-section-body {
  margin-top: 14px;
}

/* ===== v0.10.0: switchable triggers, adaptive extra-menu width and images ===== */

/* Keep the real site header interactive while a wide Raven menu is open.
   Only the visible menu surface/backdrop handles pointer events. This lets
   BUTIK -> UTHYRNING -> BLOGG switch instantly on hover and keeps the top
   navigation links clickable. */
.rmm-global.rmm-open {
  pointer-events: none;
}
.rmm-global.rmm-open .rmm-shell,
.rmm-global.rmm-open .rmm-backdrop {
  pointer-events: auto;
}

/* Extra menus with only one/few branches should not look like a nearly
   full-width shop megamenu. Auto width scales with the number of sections,
   while respecting the responsive screen-tier ceiling. */
.rmm-menu-nav-source.rmm-width-auto {
  --rmm-nav-col-width: 230px;
}
.rmm-menu-nav-source.rmm-width-auto.rmm-template-wide-clean,
.rmm-menu-nav-source.rmm-width-auto.rmm-template-wide-editorial {
  --rmm-nav-col-width: 250px;
}
.rmm-menu-nav-source.rmm-width-auto.rmm-template-wide-cards,
.rmm-menu-nav-source.rmm-width-auto.rmm-template-wide-cards-air,
.rmm-menu-nav-source.rmm-width-auto.rmm-template-wide-cards-gallery {
  --rmm-nav-col-width: 265px;
}
.rmm-menu-nav-source.rmm-width-auto.rmm-template-wide-dense {
  --rmm-nav-col-width: 190px;
}

@media (min-width: 1025px) and (max-width: 1439px) {
  .rmm-menu-nav-source.rmm-width-auto .rmm-shell {
    width: min(
      calc(100vw - 32px),
      var(--rmm-desktop-width),
      var(--rmm-desktop-max),
      max(360px, calc(var(--rmm-section-count, 1) * var(--rmm-nav-col-width, 230px) + 72px))
    );
  }
  .rmm-menu-nav-source.rmm-width-custom .rmm-shell {
    width: min(calc(100vw - 32px), var(--rmm-desktop-width), var(--rmm-desktop-max), var(--rmm-extra-max, 900px));
  }
}

@media (min-width: 1440px) and (max-width: 1919px) {
  .rmm-menu-nav-source.rmm-width-auto .rmm-shell {
    width: min(
      calc(100vw - 40px),
      var(--rmm-wide-width),
      var(--rmm-wide-max),
      max(380px, calc(var(--rmm-section-count, 1) * var(--rmm-nav-col-width, 230px) + 80px))
    );
  }
  .rmm-menu-nav-source.rmm-width-custom .rmm-shell {
    width: min(calc(100vw - 40px), var(--rmm-wide-width), var(--rmm-wide-max), var(--rmm-extra-max, 900px));
  }
}

@media (min-width: 1920px) {
  .rmm-menu-nav-source.rmm-width-auto .rmm-shell {
    width: min(
      calc(100vw - 48px),
      var(--rmm-ultrawide-width),
      var(--rmm-ultrawide-max),
      max(400px, calc(var(--rmm-section-count, 1) * var(--rmm-nav-col-width, 230px) + 88px))
    );
  }
  .rmm-menu-nav-source.rmm-width-custom .rmm-shell {
    width: min(calc(100vw - 48px), var(--rmm-ultrawide-width), var(--rmm-ultrawide-max), var(--rmm-extra-max, 900px));
  }
}

/* When a WordPress-menu branch has featured/category images, card templates
   use exactly the same image stage as the WooCommerce BUTIK menu. */
.rmm-menu-nav-source.rmm-template-wide-cards .rmm-section-image,
.rmm-menu-nav-source.rmm-template-wide-cards-air .rmm-section-image,
.rmm-menu-nav-source.rmm-template-wide-cards-gallery .rmm-section-image,
.rmm-menu-nav-source.rmm-template-wide-showcase .rmm-section-image {
  display: flex;
}

/* A small nav-source menu should also form sensible columns rather than leave
   empty grid space inherited from a larger BUTIK configuration. */
@media (min-width: 1025px) {
  .rmm-menu-nav-source.rmm-width-auto .rmm-columns {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--rmm-min-col, 185px)), 1fr));
  }
}

/* ===== v0.11.0: Fritidslivet Theme integration + auto width for BUTIK ===== */

/* The plugin stays standalone, but when the active theme advertises the
   Fritidslivet design system the same menu markup inherits common design
   tokens. Both long --fritidslivet-* and compact --fl-* aliases are accepted.
   A theme may also override --rmm-* variables directly. */
.rmm-theme-integrated {
  --rmm-bg: var(--fritidslivet-surface, var(--fl-surface, #fff));
  --rmm-text: var(--fritidslivet-text, var(--fl-text, #202124));
  --rmm-muted: var(--fritidslivet-text-muted, var(--fl-text-muted, #6b6f76));
  --rmm-border: var(--fritidslivet-border, var(--fl-border, rgba(0,0,0,.09)));
  --rmm-soft: var(--fritidslivet-surface-soft, var(--fl-surface-soft, rgba(0,0,0,.035)));
  --rmm-gap: var(--fritidslivet-space-6, var(--fl-space-6, 28px));
  --rmm-pad-x: var(--fritidslivet-space-7, var(--fl-space-7, 32px));
  --rmm-pad-y: var(--fritidslivet-space-6, var(--fl-space-6, 30px));
  --rmm-theme-radius-lg: var(--fritidslivet-radius-lg, var(--fl-radius-lg, 18px));
  --rmm-theme-radius-md: var(--fritidslivet-radius-md, var(--fl-radius-md, 14px));
  --rmm-theme-radius-sm: var(--fritidslivet-radius-sm, var(--fl-radius-sm, 9px));
  --rmm-theme-shadow: var(--fritidslivet-shadow-lg, var(--fl-shadow-lg, 0 18px 55px rgba(0,0,0,.16)));
  --rmm-theme-font: var(--fritidslivet-font-family, var(--fl-font-family, inherit));
  --rmm-theme-motion: var(--fritidslivet-motion-fast, var(--fl-motion-fast, .2s ease));
  --rmm-theme-hover-opacity: var(--fritidslivet-hover-opacity, var(--fl-hover-opacity, .68));
  font-family: var(--rmm-theme-font);
}

.rmm-theme-integrated .rmm-shell {
  background: var(--rmm-bg);
  color: var(--rmm-text);
  border-color: var(--rmm-border);
  box-shadow: var(--rmm-theme-shadow);
}
.rmm-theme-integrated .rmm-heading,
.rmm-theme-integrated .rmm-link { color: var(--rmm-text); }
.rmm-theme-integrated .rmm-level-2 .rmm-link,
.rmm-theme-integrated .rmm-level-3 .rmm-link,
.rmm-theme-integrated .rmm-level-4 .rmm-link { color: var(--rmm-muted); }
.rmm-theme-integrated .rmm-heading:hover,
.rmm-theme-integrated .rmm-link:hover { opacity: var(--rmm-theme-hover-opacity); }
.rmm-theme-integrated .rmm-shell,
.rmm-theme-integrated .rmm-close,
.rmm-theme-integrated .rmm-section,
.rmm-theme-integrated .rmm-section-image {
  transition-duration: var(--rmm-theme-motion);
}

/* Let the theme own radii while preserving each Raven template's structure. */
@media (min-width: 1025px) {
  .rmm-theme-integrated.rmm-template-wide-grid .rmm-shell,
  .rmm-theme-integrated.rmm-template-wide-clean .rmm-shell,
  .rmm-theme-integrated.rmm-template-wide-dense .rmm-shell,
  .rmm-theme-integrated.rmm-template-wide-editorial .rmm-shell,
  .rmm-theme-integrated.rmm-template-wide-cards .rmm-shell,
  .rmm-theme-integrated.rmm-template-wide-cards-air .rmm-shell,
  .rmm-theme-integrated.rmm-template-wide-cards-gallery .rmm-shell,
  .rmm-theme-integrated.rmm-template-wide-showcase .rmm-shell,
  .rmm-theme-integrated.rmm-template-wide-lines .rmm-shell {
    border-radius: var(--rmm-theme-radius-lg);
  }
}
.rmm-theme-integrated.rmm-template-wide-cards .rmm-section,
.rmm-theme-integrated.rmm-template-wide-cards-air .rmm-section,
.rmm-theme-integrated.rmm-template-wide-cards-gallery .rmm-section,
.rmm-theme-integrated.rmm-template-wide-showcase .rmm-featured-section {
  border-radius: var(--rmm-theme-radius-md);
}
.rmm-theme-integrated.rmm-template-wide-cards .rmm-section-image,
.rmm-theme-integrated.rmm-template-wide-cards-air .rmm-section-image,
.rmm-theme-integrated.rmm-template-wide-cards-gallery .rmm-section-image {
  border-radius: var(--rmm-theme-radius-sm);
}

/* If the Fritidslivet theme exposes matching surfaces, card templates inherit
   them. Otherwise the palette selected in Raven admin remains the fallback. */
.rmm-theme-integrated.rmm-template-wide-cards .rmm-shell,
.rmm-theme-integrated.rmm-template-wide-cards-air .rmm-shell {
  background: var(--fritidslivet-surface-soft, var(--fl-surface-soft, var(--rmm-card-menu-bg, #f3f5f6)));
}
.rmm-theme-integrated.rmm-template-wide-cards .rmm-section-image,
.rmm-theme-integrated.rmm-template-wide-cards-air .rmm-section-image {
  background: var(--fritidslivet-image-surface, var(--fl-image-surface, var(--rmm-card-image-bg, #eef2f4)));
}

/* Main BUTIK menu can now use the same content-aware width strategy as the
   smaller UTHYRNING/BLOGG branches. Manual mode remains the default so an
   update never changes an existing installation unexpectedly. */
.rmm-width-auto-main { --rmm-main-col-width: 225px; }
.rmm-width-auto-main.rmm-template-wide-clean,
.rmm-width-auto-main.rmm-template-wide-editorial { --rmm-main-col-width: 250px; }
.rmm-width-auto-main.rmm-template-wide-cards,
.rmm-width-auto-main.rmm-template-wide-cards-air,
.rmm-width-auto-main.rmm-template-wide-cards-gallery { --rmm-main-col-width: 265px; }
.rmm-width-auto-main.rmm-template-wide-dense { --rmm-main-col-width: 185px; }

@media (min-width: 1025px) and (max-width: 1439px) {
  .rmm-width-auto-main:not(.rmm-template-left-panel-light):not(.rmm-template-left-panel-dark) .rmm-shell {
    width: min(
      calc(100vw - 32px),
      var(--rmm-desktop-width),
      var(--rmm-desktop-max),
      max(520px, calc(var(--rmm-section-count, 1) * var(--rmm-main-col-width, 225px) + 76px))
    );
  }
}
@media (min-width: 1440px) and (max-width: 1919px) {
  .rmm-width-auto-main:not(.rmm-template-left-panel-light):not(.rmm-template-left-panel-dark) .rmm-shell {
    width: min(
      calc(100vw - 40px),
      var(--rmm-wide-width),
      var(--rmm-wide-max),
      max(560px, calc(var(--rmm-section-count, 1) * var(--rmm-main-col-width, 225px) + 84px))
    );
  }
}
@media (min-width: 1920px) {
  .rmm-width-auto-main:not(.rmm-template-left-panel-light):not(.rmm-template-left-panel-dark) .rmm-shell {
    width: min(
      calc(100vw - 48px),
      var(--rmm-ultrawide-width),
      var(--rmm-ultrawide-max),
      max(600px, calc(var(--rmm-section-count, 1) * var(--rmm-main-col-width, 225px) + 92px))
    );
  }
}

/* Context classes do not create separate systems. They are stable styling
   hooks for Fritidslivet Theme to distinguish Shop, Rental and Inspiration. */
.rmm-theme-integrated.rmm-context-rental { --rmm-context-accent: var(--fritidslivet-rental-accent, var(--fl-rental-accent, currentColor)); }
.rmm-theme-integrated.rmm-context-inspiration { --rmm-context-accent: var(--fritidslivet-inspiration-accent, var(--fl-inspiration-accent, currentColor)); }

/* ===== v0.12.2: frontend viewport fix =====
   Global mega menus are moved to <body> by rmm.js so Divi/theme wrappers cannot
   constrain fixed positioning. These rules make the viewport anchoring explicit
   while keeping every existing Raven width variable and Auto/Manual mode intact. */
@media (min-width: 1025px) {
  body > .rmm-menu.rmm-global:not(.rmm-template-left-panel-light):not(.rmm-template-left-panel-dark) .rmm-shell {
    position: absolute;
    left: 50%;
    max-width: none;
  }
}

/* ===== v0.12.4: refined tablet/mobile navigation bridge =====
   Raven owns the mobile launcher and drawer so Divi's legacy mobile menu cannot
   diverge from the dynamic desktop mega-menu data. */
.rmm-mobile-launcher,
.rmm-mobile-site-menu { display: none; }

@media (max-width: 1024px) {
  body.rmm-mobile-bridge-active .et-l--header .et_mobile_nav_menu,
  body.rmm-mobile-bridge-active header .et_mobile_nav_menu,
  body.rmm-mobile-bridge-active .menyikoner .et_mobile_nav_menu {
    display: none !important;
  }

  .rmm-mobile-launcher {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    width: 44px;
    height: 44px;
    margin: 0 0 0 10px;
    padding: 0;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: currentColor;
    cursor: pointer;
    vertical-align: middle;
  }
  .rmm-mobile-launcher:hover,
  .rmm-mobile-launcher:focus-visible { background: rgba(0,0,0,.055); }
  .rmm-mobile-launcher-bars,
  .rmm-mobile-launcher-bars::before,
  .rmm-mobile-launcher-bars::after {
    display: block;
    width: 28px;
    height: 3px;
    border-radius: 99px;
    background: currentColor;
    content: '';
  }
  .rmm-mobile-launcher-bars { position: relative; }
  .rmm-mobile-launcher-bars::before { position: absolute; left: 0; top: -9px; }
  .rmm-mobile-launcher-bars::after { position: absolute; left: 0; top: 9px; }

  .rmm-mobile-site-menu {
    position: fixed;
    inset: 0;
    z-index: 2147482000;
    visibility: hidden;
    display: block;
    pointer-events: none;
  }
  .rmm-mobile-site-menu.rmm-mobile-open {
    visibility: visible;
    pointer-events: auto;
  }
  .rmm-mobile-site-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15,18,21,.42);
    opacity: 0;
    transition: opacity .2s ease;
  }
  .rmm-mobile-open .rmm-mobile-site-backdrop { opacity: 1; }
  .rmm-mobile-site-drawer {
    position: absolute;
    top: 0;
    right: 0;
    width: min(430px, 100vw);
    height: 100dvh;
    max-height: 100dvh;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--fritidslivet-surface, var(--fl-surface, #fff));
    color: var(--fritidslivet-text, var(--fl-text, #25282b));
    box-shadow: -18px 0 55px rgba(0,0,0,.18);
    transform: translateX(102%);
    transition: transform .24s cubic-bezier(.22,.61,.36,1);
    -webkit-overflow-scrolling: touch;
  }
  .rmm-mobile-open .rmm-mobile-site-drawer { transform: translateX(0); }
  .rmm-mobile-site-head {
    position: sticky;
    top: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 68px;
    padding: max(12px, env(safe-area-inset-top)) 18px 12px;
    border-bottom: 1px solid rgba(0,0,0,.08);
    background: rgba(255,255,255,.96);
    backdrop-filter: blur(12px);
  }
  .rmm-mobile-site-title {
    margin: 0;
    font-size: 17px;
    font-weight: 750;
    letter-spacing: .04em;
    text-transform: uppercase;
  }
  .rmm-mobile-site-close {
    display: inline-grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border: 1px solid rgba(0,0,0,.09);
    border-radius: 999px;
    background: #fff;
    color: inherit;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
  }
  .rmm-mobile-site-list,
  .rmm-mobile-site-list ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .rmm-mobile-site-list { padding: 8px 16px calc(28px + env(safe-area-inset-bottom)); }
  .rmm-mobile-top-item { border-bottom: 1px solid rgba(0,0,0,.075); }
  .rmm-mobile-row {
    display: flex;
    align-items: center;
    min-height: 58px;
    gap: 8px;
  }
  .rmm-mobile-row > a,
  .rmm-mobile-row > span {
    min-width: 0;
    flex: 1 1 auto;
    padding: 16px 4px;
    color: inherit;
    text-decoration: none;
    font-size: 17px;
    font-weight: 720;
    line-height: 1.25;
  }
  .rmm-mobile-toggle {
    position: relative;
    display: inline-grid;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    place-items: center;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: inherit;
    cursor: pointer;
  }
  .rmm-mobile-toggle::before {
    position: absolute;
    width: 9px;
    height: 9px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
    content: '';
    transform: rotate(45deg);
    transition: transform .18s ease;
  }
  .rmm-mobile-expanded > .rmm-mobile-row .rmm-mobile-toggle::before { transform: rotate(135deg); }
  .rmm-mobile-submenu {
    display: none;
    padding: 0 0 10px 10px !important;
  }
  .rmm-mobile-expanded > .rmm-mobile-submenu { display: block; }
  .rmm-mobile-submenu > li { margin: 0 0 7px; }
  .rmm-mobile-submenu .rmm-mobile-row {
    min-height: 46px;
    border-radius: 10px;
    background: rgba(0,0,0,.025);
  }
  .rmm-mobile-submenu .rmm-mobile-row > a,
  .rmm-mobile-submenu .rmm-mobile-row > span {
    padding: 12px 12px;
    font-size: 15px;
    font-weight: 650;
  }
  .rmm-mobile-submenu .rmm-mobile-submenu {
    padding: 4px 0 3px 14px !important;
  }
  .rmm-mobile-submenu .rmm-mobile-submenu .rmm-mobile-row {
    min-height: 40px;
    background: transparent;
  }
  .rmm-mobile-submenu .rmm-mobile-submenu .rmm-mobile-row > a,
  .rmm-mobile-submenu .rmm-mobile-submenu .rmm-mobile-row > span {
    padding: 8px 10px;
    font-size: 14px;
    font-weight: 520;
    color: var(--fritidslivet-text-muted, var(--fl-text-muted, #596068));
  }
  .rmm-mobile-section-group {
    margin: 5px 0 9px;
    padding: 4px 0;
  }
  .rmm-mobile-section-group > .rmm-mobile-row {
    border: 1px solid rgba(0,0,0,.065);
    background: rgba(0,0,0,.025);
  }

  /* v0.12.4: compact category thumbnails, balanced controls and cleaner touch targets. */
  .rmm-mobile-thumb {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    margin-left: 2px;
    border-radius: 9px;
    object-fit: cover;
    background: rgba(0,0,0,.045);
  }
  .rmm-mobile-section-group > .rmm-mobile-row {
    padding: 5px 6px;
    gap: 10px;
  }
  .rmm-mobile-section-group > .rmm-mobile-row > a,
  .rmm-mobile-section-group > .rmm-mobile-row > span { padding-left: 2px; }

  body.rmm-mobile-bridge-active .menyikoner,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(8px, 2.8vw, 18px) !important;
  }
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__wrap > *,
  body.rmm-mobile-bridge-active .menyikoner > * {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-launcher { margin: 0 !important; }

  /* Keep the same control group compact when the theme switches to sticky header. */
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__wrap,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__wrap {
    justify-content: flex-end !important;
    gap: clamp(6px, 2vw, 12px) !important;
  }
  body.rmm-mobile-bridge-active .et-fixed-header .rmm-mobile-launcher,
  body.rmm-mobile-bridge-active .et_pb_sticky .rmm-mobile-launcher {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
  }

  body.rmm-mobile-menu-open { overflow: hidden !important; touch-action: none; }

  /* The desktop/tablet mega-menu surfaces are no longer used as a second,
     competing mobile navigation when the unified bridge is active. */
  body.rmm-mobile-bridge-active > .rmm-menu.rmm-global { display: none !important; }
}

@media (max-width: 567px) {
  .rmm-mobile-site-drawer { width: 100vw; }
  .rmm-mobile-site-list { padding-left: 12px; padding-right: 12px; }
}


/* ===== v0.12.5: mobile header ergonomics + universal logo home link ===== */
.rmm-home-logo-link { display: inline-flex; align-items: center; }
.rmm-home-logo-link img { display: block; }

@media (max-width: 1024px) {
  /* Normal mobile header: keep the complete control cluster visually centered. */
  body.rmm-mobile-bridge-active .menyikoner,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__wrap {
    justify-content: center !important;
    column-gap: clamp(14px, 4.2vw, 24px) !important;
  }

  /* Every action gets a distinct finger-sized target. Divi may render search and
     cart as links, buttons or icon wrappers, so cover all common structures. */
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__icon,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__search-button,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__cart-button,
  body.rmm-mobile-bridge-active .menyikoner a.et_pb_menu__icon,
  body.rmm-mobile-bridge-active .menyikoner button,
  body.rmm-mobile-bridge-active .rmm-mobile-launcher {
    min-width: 46px !important;
    width: 46px;
    height: 46px !important;
    min-height: 46px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 46px !important;
    box-sizing: border-box;
  }

  /* Match the cart glyph visually to search and hamburger without shrinking its
     touch target. Font-based Divi icons inherit this size. */
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__cart-button,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__cart-button::after,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__cart-button::before {
    font-size: 25px !important;
    line-height: 1 !important;
  }
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__search-button,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__search-button::after,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__search-button::before {
    font-size: 25px !important;
    line-height: 1 !important;
  }

  /* Sticky mode: retain clear separation instead of compressing the actions. */
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__wrap,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__wrap {
    justify-content: flex-end !important;
    column-gap: clamp(12px, 3.5vw, 20px) !important;
  }
  body.rmm-mobile-bridge-active .et-fixed-header .rmm-mobile-launcher,
  body.rmm-mobile-bridge-active .et_pb_sticky .rmm-mobile-launcher {
    width: 46px !important;
    height: 46px !important;
    flex-basis: 46px !important;
  }
}

/* ===== v0.12.6: stable cart label + balanced mobile action spacing ===== */
@media (max-width: 1024px) {
  /* The cart contains both icon and WooCommerce count text. It must never be
     forced into the same fixed 46px box as the icon-only controls. */
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__cart-button,
  body.rmm-mobile-bridge-active .menyikoner a.et_pb_menu__cart-button {
    width: auto !important;
    min-width: 46px !important;
    max-width: none !important;
    flex: 0 0 auto !important;
    flex-basis: auto !important;
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
  }

  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__cart-button *,
  body.rmm-mobile-bridge-active .menyikoner a.et_pb_menu__cart-button * {
    white-space: nowrap !important;
  }

  /* Preserve the successful search-to-menu spacing, but add a deliberate
     buffer after the wider cart control so the search glyph cannot touch text. */
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__search-button,
  body.rmm-mobile-bridge-active .menyikoner a.et_pb_menu__search-button {
    margin-left: clamp(6px, 1.8vw, 12px) !important;
  }

  /* Prevent the action cluster itself from wrapping in portrait, landscape,
     normal and sticky headers. */
  body.rmm-mobile-bridge-active .menyikoner,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__wrap,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__wrap,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__wrap {
    flex-wrap: nowrap !important;
  }
}

@media (max-width: 420px) {
  /* On narrow phones keep one row by tightening only the gaps, never the cart
     label. Touch targets remain 46px. */
  body.rmm-mobile-bridge-active .menyikoner,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__wrap {
    column-gap: 10px !important;
  }
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__search-button,
  body.rmm-mobile-bridge-active .menyikoner a.et_pb_menu__search-button {
    margin-left: 4px !important;
  }
}


/* ===== v0.12.7: portrait centering + compact sticky header that protects logo ===== */
@media (max-width: 767px) and (orientation: portrait) {
  /* Normal portrait: treat cart, search and menu as one intrinsic-width block
     and center that block independently of the surrounding Divi column. */
  body.rmm-mobile-bridge-active .menyikoner:not(.et_pb_sticky),
  body.rmm-mobile-bridge-active .menyikoner:not(.et_pb_sticky) .et_pb_menu__wrap {
    width: fit-content !important;
    max-width: calc(100vw - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
  }

  /* Sticky portrait has less horizontal room because the logo must remain
     visible. Compact only the cart presentation; keep search/menu touch sizes. */
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__wrap,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__wrap {
    width: auto !important;
    max-width: calc(100vw - 118px) !important;
    margin-left: auto !important;
    margin-right: 8px !important;
    justify-content: flex-end !important;
    column-gap: 10px !important;
  }

  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__cart-button,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner a.et_pb_menu__cart-button,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__cart-button,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner a.et_pb_menu__cart-button {
    font-size: 17px !important;
    line-height: 1 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    min-width: 0 !important;
    white-space: nowrap !important;
  }

  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__cart-button::before,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__cart-button::after,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__cart-button::before,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__cart-button::after {
    font-size: 23px !important;
  }

  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__search-button,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__search-button {
    margin-left: 2px !important;
  }

  /* Keep the sticky logo above neighboring header columns and reserve a usable
     footprint for it. This prevents the action group from visually covering it. */
  body.rmm-mobile-bridge-active .et-fixed-header .headerlogo,
  body.rmm-mobile-bridge-active .et-fixed-header .rmm-home-logo-link,
  body.rmm-mobile-bridge-active .et_pb_sticky .headerlogo,
  body.rmm-mobile-bridge-active .et_pb_sticky .rmm-home-logo-link {
    position: relative !important;
    z-index: 5 !important;
  }

  body.rmm-mobile-bridge-active .et-fixed-header .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .et_pb_sticky .rmm-home-logo-link img {
    max-width: 104px !important;
    height: auto !important;
    object-fit: contain !important;
  }
}

@media (max-width: 380px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__wrap,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__wrap {
    max-width: calc(100vw - 102px) !important;
    column-gap: 6px !important;
  }
  body.rmm-mobile-bridge-active .et-fixed-header .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .et_pb_sticky .rmm-home-logo-link img {
    max-width: 90px !important;
  }
}


/* ===== v0.12.8: compact “0 val” cart + protected portrait sticky logo ===== */
@media (max-width: 767px) and (orientation: portrait) {
  /* The shorter cart label lets the whole action cluster move right, away from
     the logo. Keep it intrinsic-width and right aligned rather than stretching. */
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__wrap,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__wrap {
    width: fit-content !important;
    max-width: calc(100vw - 112px) !important;
    margin-left: auto !important;
    margin-right: 8px !important;
    justify-content: flex-end !important;
    column-gap: 10px !important;
  }

  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__cart-button,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner a.et_pb_menu__cart-button,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__cart-button,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner a.et_pb_menu__cart-button {
    font-size: 16px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    white-space: nowrap !important;
  }

  /* Search-to-menu spacing stays unchanged; remove only unnecessary extra cart
     pressure in sticky portrait. */
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__search-button,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__search-button {
    margin-left: 0 !important;
  }
}

@media (max-width: 380px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__wrap,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__wrap {
    max-width: calc(100vw - 96px) !important;
    column-gap: 7px !important;
  }
}


/* ===== v0.12.10: portrait sticky logo/cart separation ===== */
@media (max-width: 767px) and (orientation: portrait) {
  /* Sticky only: reserve a gap between the logo and cart equal to the action gap.
     Push the logo left and the complete action cluster right without changing
     the normal mobile header or the search-to-hamburger spacing. */
  body.rmm-mobile-bridge-active .et-fixed-header .headerlogo,
  body.rmm-mobile-bridge-active .et-fixed-header .rmm-home-logo-link,
  body.rmm-mobile-bridge-active .et_pb_sticky .headerlogo,
  body.rmm-mobile-bridge-active .et_pb_sticky .rmm-home-logo-link {
    transform: translateX(-12px) !important;
  }

  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__wrap,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__wrap {
    width: fit-content !important;
    max-width: calc(100vw - 126px) !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    justify-content: flex-end !important;
    column-gap: 10px !important;
  }
}

@media (max-width: 380px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .et-fixed-header .headerlogo,
  body.rmm-mobile-bridge-active .et-fixed-header .rmm-home-logo-link,
  body.rmm-mobile-bridge-active .et_pb_sticky .headerlogo,
  body.rmm-mobile-bridge-active .et_pb_sticky .rmm-home-logo-link {
    transform: translateX(-10px) !important;
  }

  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner,
  body.rmm-mobile-bridge-active .et-fixed-header .menyikoner .et_pb_menu__wrap,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner,
  body.rmm-mobile-bridge-active .et_pb_sticky .menyikoner .et_pb_menu__wrap {
    max-width: calc(100vw - 108px) !important;
    margin-right: 0 !important;
    column-gap: 10px !important;
  }
}


/* ===== v0.12.11: compact normal mobile header vertical rhythm ===== */
@media (max-width: 767px) {
  /* Normal mobile only. Divi's header rows/modules can contribute padding and
     module margins at the same time, which visually merges with the white area
     below the header. Collapse that accumulated space without touching sticky. */
  body.rmm-mobile-bridge-active .et-l--header .et_pb_section:not(.et_pb_sticky):not(.et-fixed-header) .menyikoner,
  body.rmm-mobile-bridge-active header:not(.et-fixed-header) .menyikoner:not(.et_pb_sticky) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  body.rmm-mobile-bridge-active .et-l--header .et_pb_section:not(.et_pb_sticky):not(.et-fixed-header) .menyikoner .et_pb_menu__wrap,
  body.rmm-mobile-bridge-active header:not(.et-fixed-header) .menyikoner:not(.et_pb_sticky) .et_pb_menu__wrap {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Reduce the row's lower whitespace. :has() scopes the rule to the actual
     action row, so unrelated header rows keep their existing dimensions. */
  body.rmm-mobile-bridge-active .et-l--header .et_pb_row:has(.menyikoner):not(.et_pb_sticky),
  body.rmm-mobile-bridge-active header:not(.et-fixed-header) .et_pb_row:has(.menyikoner) {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}

@media (max-width: 767px) and (orientation: portrait) {
  /* Portrait has the logo above the action row. Keep only a compact, even gap
     above and below the centered action cluster. */
  body.rmm-mobile-bridge-active .et-l--header .et_pb_row:has(.menyikoner):not(.et_pb_sticky),
  body.rmm-mobile-bridge-active header:not(.et-fixed-header) .et_pb_row:has(.menyikoner) {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
}

@media (max-width: 767px) and (orientation: landscape) {
  /* Landscape: make the lower edge match the upper breathing room instead of
     leaving a larger white tail under the controls. */
  body.rmm-mobile-bridge-active .et-l--header .et_pb_row:has(.menyikoner):not(.et_pb_sticky),
  body.rmm-mobile-bridge-active header:not(.et-fixed-header) .et_pb_row:has(.menyikoner) {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
}


/* ===== v0.12.12: actual Divi action-row compaction =====
   0.12.11 targeted inferred wrappers. Divi's sticky-capable header markup can
   retain classes that made those selectors miss the normal header. JS now marks
   the exact row and column containing .menyikoner, so these rules hit the real
   source of the extra white space. */
@media (max-width: 767px) {
  body.rmm-mobile-bridge-active .rmm-action-row,
  body.rmm-mobile-bridge-active .rmm-action-column,
  body.rmm-mobile-bridge-active .rmm-action-column > .menyikoner,
  body.rmm-mobile-bridge-active .rmm-action-column > .menyikoner .et_pb_menu_inner_container,
  body.rmm-mobile-bridge-active .rmm-action-column > .menyikoner .et_pb_menu__wrap {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  /* Normal header only. Sticky dimensions from 0.12.10 remain untouched. */
  body.rmm-mobile-bridge-active:not(.rmm-runtime-sticky) .rmm-action-row {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
    min-height: 0 !important;
  }
  body.rmm-mobile-bridge-active:not(.rmm-runtime-sticky) .rmm-action-column {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
  }
  body.rmm-mobile-bridge-active:not(.rmm-runtime-sticky) .rmm-action-column > .menyikoner {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 46px !important;
  }
}

@media (max-width: 767px) and (orientation: landscape) {
  body.rmm-mobile-bridge-active:not(.rmm-runtime-sticky) .rmm-action-row {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
  }
}

/* ===== v0.12.14: dedicated tablet header (768–1024px) =====
   Tablets no longer inherit a squeezed desktop navigation. Keep the proven
   desktop header untouched above 1024px and the phone rules untouched below
   768px. On tablets the logo and action cluster are stable in normal + sticky,
   while navigation lives behind the Raven launcher/drawer. */
@media (min-width: 768px) and (max-width: 1024px) {
  body.rmm-mobile-bridge-active .menykolumn .et_pb_menu__menu,
  body.rmm-mobile-bridge-active .menykolumn .et-menu-nav,
  body.rmm-mobile-bridge-active .menykolumn ul.et-menu,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__menu,
  body.rmm-mobile-bridge-active .menyikoner .et-menu-nav,
  body.rmm-mobile-bridge-active .menyikoner ul.et-menu {
    display: none !important;
  }

  body.rmm-mobile-bridge-active .et-l--header .et_pb_row:has(.headerlogo),
  body.rmm-mobile-bridge-active header .et_pb_row:has(.headerlogo) {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    width: min(94%, 1180px) !important;
    max-width: 1180px !important;
    min-height: 88px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  body.rmm-mobile-bridge-active .headerlogo,
  body.rmm-mobile-bridge-active .rmm-home-logo-link {
    flex: 0 0 auto !important;
    margin: 0 !important;
    transform: none !important;
  }
  body.rmm-mobile-bridge-active .headerlogo img,
  body.rmm-mobile-bridge-active .rmm-home-logo-link img {
    width: auto !important;
    max-width: 132px !important;
    max-height: 76px !important;
    object-fit: contain !important;
  }

  body.rmm-mobile-bridge-active .menykolumn {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.rmm-mobile-bridge-active .menyikoner,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu_inner_container,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 16px !important;
  }

  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__cart-button,
  body.rmm-mobile-bridge-active .menyikoner a.et_pb_menu__cart-button {
    white-space: nowrap !important;
    flex: 0 0 auto !important;
  }
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__search-button,
  body.rmm-mobile-bridge-active .rmm-mobile-launcher {
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
  }

  /* Sticky must keep exactly the same tablet information architecture instead
     of resurrecting desktop links or losing the launcher in landscape. */
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .et-l--header .et_pb_row:has(.headerlogo),
  body.rmm-mobile-bridge-active .et-fixed-header .et_pb_row:has(.headerlogo),
  body.rmm-mobile-bridge-active .et_pb_sticky .et_pb_row:has(.headerlogo) {
    min-height: 68px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .headerlogo img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .et-fixed-header .headerlogo img,
  body.rmm-mobile-bridge-active .et-fixed-header .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .et_pb_sticky .headerlogo img,
  body.rmm-mobile-bridge-active .et_pb_sticky .rmm-home-logo-link img {
    max-width: 105px !important;
    max-height: 58px !important;
  }
}


/* ===== v0.12.15: tablet header rebuilt as a true single-row layout =====
   768–1024 px gets its own compact desktop-like header. This intentionally
   overrides v0.12.14, which hid the primary navigation and left only actions
   in landscape. Phone rules below 768 px and desktop above 1024 px are untouched. */
@media (min-width: 768px) and (max-width: 1024px) {
  /* One row in both normal and sticky states. */
  body.rmm-mobile-bridge-active .et-l--header .et_pb_row:has(.headerlogo),
  body.rmm-mobile-bridge-active header .et_pb_row:has(.headerlogo),
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .et-l--header .et_pb_row:has(.headerlogo),
  body.rmm-mobile-bridge-active .et-fixed-header .et_pb_row:has(.headerlogo),
  body.rmm-mobile-bridge-active .et_pb_sticky .et_pb_row:has(.headerlogo) {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    width: 98% !important;
    max-width: 1280px !important;
    min-height: 64px !important;
    padding: 5px 0 !important;
    gap: clamp(8px, 1.15vw, 15px) !important;
  }

  /* Logo is always the first item, never centered between menu groups. */
  body.rmm-mobile-bridge-active .headerlogo,
  body.rmm-mobile-bridge-active .rmm-home-logo-link {
    order: 1 !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    transform: none !important;
  }
  body.rmm-mobile-bridge-active .headerlogo img,
  body.rmm-mobile-bridge-active .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .headerlogo img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .et-fixed-header .headerlogo img,
  body.rmm-mobile-bridge-active .et-fixed-header .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .et_pb_sticky .headerlogo img,
  body.rmm-mobile-bridge-active .et_pb_sticky .rmm-home-logo-link img {
    width: auto !important;
    max-width: clamp(72px, 10.5vw, 108px) !important;
    max-height: 58px !important;
    object-fit: contain !important;
  }

  /* Restore the real primary navigation that v0.12.14 suppressed. */
  body.rmm-mobile-bridge-active .menykolumn {
    order: 2 !important;
    display: flex !important;
    align-items: center !important;
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.rmm-mobile-bridge-active .menykolumn .et_pb_menu__menu,
  body.rmm-mobile-bridge-active .menykolumn .et-menu-nav,
  body.rmm-mobile-bridge-active .menykolumn ul.et-menu {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    min-width: 0 !important;
  }
  body.rmm-mobile-bridge-active .menykolumn ul.et-menu {
    gap: clamp(5px, .8vw, 11px) !important;
  }
  body.rmm-mobile-bridge-active .menykolumn ul.et-menu > li {
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 auto !important;
  }
  body.rmm-mobile-bridge-active .menykolumn ul.et-menu > li > a {
    padding: 8px 0 !important;
    white-space: nowrap !important;
    font-size: clamp(10px, 1.28vw, 13px) !important;
    line-height: 1.1 !important;
  }

  /* Account/cart/search stay together on the right. Do not let Mitt konto or
     the cart overlap. */
  body.rmm-mobile-bridge-active .menyikoner {
    order: 3 !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
    margin: 0 0 0 auto !important;
    padding: 0 !important;
  }
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu_inner_container,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
    gap: clamp(7px, 1vw, 13px) !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__menu,
  body.rmm-mobile-bridge-active .menyikoner .et-menu-nav,
  body.rmm-mobile-bridge-active .menyikoner ul.et-menu {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    width: auto !important;
  }
  body.rmm-mobile-bridge-active .menyikoner ul.et-menu > li,
  body.rmm-mobile-bridge-active .menyikoner ul.et-menu > li > a {
    white-space: nowrap !important;
    margin: 0 !important;
  }
  body.rmm-mobile-bridge-active .menyikoner ul.et-menu > li > a {
    font-size: clamp(10px, 1.2vw, 13px) !important;
    line-height: 1.1 !important;
    padding: 8px 0 !important;
  }
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__cart-button,
  body.rmm-mobile-bridge-active .menyikoner a.et_pb_menu__cart-button {
    width: auto !important;
    min-width: max-content !important;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    margin: 0 !important;
  }
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__search-button {
    flex: 0 0 40px !important;
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
  }

  /* Full navigation is visible on tablet, so the phone drawer launcher is not
     part of the tablet header. */
  body.rmm-mobile-bridge-active .rmm-mobile-launcher {
    display: none !important;
  }

  /* Divi's own mobile trigger must remain suppressed to avoid a second menu. */
  body.rmm-mobile-bridge-active .et_mobile_nav_menu {
    display: none !important;
  }
}

/* Portrait tablet needs every pixel. Keep the same information architecture,
   but tighten logo, labels and gaps instead of wrapping or hiding controls. */
@media (min-width: 768px) and (max-width: 900px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .et-l--header .et_pb_row:has(.headerlogo),
  body.rmm-mobile-bridge-active header .et_pb_row:has(.headerlogo) {
    width: 99% !important;
    gap: 6px !important;
  }
  body.rmm-mobile-bridge-active .headerlogo img,
  body.rmm-mobile-bridge-active .rmm-home-logo-link img {
    max-width: 74px !important;
  }
  body.rmm-mobile-bridge-active .menykolumn ul.et-menu { gap: 5px !important; }
  body.rmm-mobile-bridge-active .menykolumn ul.et-menu > li > a,
  body.rmm-mobile-bridge-active .menyikoner ul.et-menu > li > a {
    font-size: 10px !important;
    letter-spacing: -.12px !important;
  }
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu_inner_container,
  body.rmm-mobile-bridge-active .menyikoner .et_pb_menu__wrap {
    gap: 6px !important;
  }
}

/* ===== v0.12.16: reliable tablet row + orientation-specific information architecture ===== */
@media (min-width: 768px) and (max-width: 1024px) {
  body.rmm-tablet-header-live .rmm-tablet-unified-row {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin: 0 12px !important;
    padding: 5px 0 !important;
    min-height: 62px !important;
    gap: 8px !important;
    overflow: visible !important;
  }
  body.rmm-tablet-header-live .rmm-tablet-unified-row > .et_pb_column {
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
  }
  body.rmm-tablet-header-live .rmm-tablet-logo-col {
    order: 1 !important;
    flex: 0 0 auto !important;
    width: auto !important;
  }
  body.rmm-tablet-header-live .rmm-tablet-menu-col {
    order: 2 !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
  }
  body.rmm-tablet-header-live .rmm-tablet-actions-col {
    order: 3 !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
    margin-left: auto !important;
  }
  body.rmm-tablet-header-live .headerlogo,
  body.rmm-tablet-header-live .rmm-home-logo-link { margin: 0 !important; transform: none !important; }
  body.rmm-tablet-header-live .headerlogo img,
  body.rmm-tablet-header-live .rmm-home-logo-link img {
    display: block !important;
    width: auto !important;
    max-width: 76px !important;
    max-height: 54px !important;
    object-fit: contain !important;
  }
  body.rmm-tablet-header-live .menykolumn,
  body.rmm-tablet-header-live .menykolumn .et_pb_menu_inner_container,
  body.rmm-tablet-header-live .menykolumn .et_pb_menu__wrap,
  body.rmm-tablet-header-live .menykolumn .et_pb_menu__menu,
  body.rmm-tablet-header-live .menykolumn .et-menu-nav,
  body.rmm-tablet-header-live .menykolumn ul.et-menu {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.rmm-tablet-header-live .menykolumn ul.et-menu { gap: 8px !important; }
  body.rmm-tablet-header-live .menykolumn ul.et-menu > li { flex: 0 0 auto !important; margin: 0 !important; padding: 0 !important; }
  body.rmm-tablet-header-live .menykolumn ul.et-menu > li > a {
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    padding: 7px 0 !important;
    font-size: 11px !important;
    line-height: 1 !important;
  }
  body.rmm-tablet-header-live .menyikoner,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu_inner_container,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 8px !important;
  }
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__menu,
  body.rmm-tablet-header-live .menyikoner .et-menu-nav,
  body.rmm-tablet-header-live .menyikoner ul.et-menu {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    width: auto !important;
  }
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li,
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li > a { white-space: nowrap !important; }
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li > a { font-size: 11px !important; line-height: 1 !important; padding: 7px 0 !important; }
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__cart-button { white-space: nowrap !important; flex: 0 0 auto !important; }
  body.rmm-tablet-header-live .et_mobile_nav_menu { display: none !important; }
}

/* Portrait normal: logo at the left and the complete navigation on ONE line. */
@media (min-width: 768px) and (max-width: 900px) and (orientation: portrait) {
  body.rmm-tablet-header-live:not(.rmm-runtime-sticky) .rmm-tablet-unified-row {
    width: calc(100% - 20px) !important;
    margin: 0 10px !important;
    gap: 5px !important;
  }
  body.rmm-tablet-header-live:not(.rmm-runtime-sticky) .headerlogo img,
  body.rmm-tablet-header-live:not(.rmm-runtime-sticky) .rmm-home-logo-link img { max-width: 60px !important; max-height: 48px !important; }
  body.rmm-tablet-header-live:not(.rmm-runtime-sticky) .menykolumn ul.et-menu { gap: 5px !important; }
  body.rmm-tablet-header-live:not(.rmm-runtime-sticky) .menykolumn ul.et-menu > li > a,
  body.rmm-tablet-header-live:not(.rmm-runtime-sticky) .menyikoner ul.et-menu > li > a { font-size: 9px !important; letter-spacing: -.12px !important; }
  body.rmm-tablet-header-live:not(.rmm-runtime-sticky) .menyikoner,
  body.rmm-tablet-header-live:not(.rmm-runtime-sticky) .menyikoner .et_pb_menu__wrap { gap: 5px !important; }
  body.rmm-tablet-header-live:not(.rmm-runtime-sticky) .rmm-mobile-launcher { display: none !important; }
}

/* Portrait sticky: deliberately simpler. Keep logo + Mitt konto + cart + search
   + hamburger; primary words move into the drawer instead of colliding. */
@media (min-width: 768px) and (max-width: 900px) and (orientation: portrait) {
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-unified-row {
    width: calc(100% - 20px) !important;
    margin: 0 10px !important;
    gap: 10px !important;
  }
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-menu-col { display: none !important; }
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-actions-col { margin-left: auto !important; }
  body.rmm-tablet-header-live.rmm-runtime-sticky .headerlogo img,
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-home-logo-link img { max-width: 66px !important; max-height: 50px !important; }
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-mobile-launcher {
    display: inline-flex !important;
    flex: 0 0 40px !important;
    width: 40px !important;
    height: 40px !important;
  }
}

/* Landscape has room: full menu in normal AND sticky. Logo gets a deliberate
   left inset instead of touching the viewport edge. */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
  body.rmm-tablet-header-live .rmm-tablet-unified-row {
    width: calc(100% - 32px) !important;
    margin: 0 16px !important;
    gap: 9px !important;
  }
  body.rmm-tablet-header-live .headerlogo img,
  body.rmm-tablet-header-live .rmm-home-logo-link img { max-width: 74px !important; max-height: 52px !important; }
  body.rmm-tablet-header-live .menykolumn ul.et-menu { gap: 8px !important; }
  body.rmm-tablet-header-live .menykolumn ul.et-menu > li > a { font-size: 10px !important; }
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li > a { font-size: 10px !important; }
  body.rmm-tablet-header-live .rmm-mobile-launcher { display: none !important; }
}

/* ===== v0.12.17: simple, invariant tablet header =====
   Tablet uses one architecture in every orientation and state:
   logo + Mitt konto + cart + search + Raven drawer launcher.
   The primary word navigation lives only inside the drawer. */
@media (min-width: 768px) and (max-width: 1024px) {
  body.rmm-tablet-header-live .rmm-tablet-unified-row {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: calc(100% - 32px) !important;
    max-width: none !important;
    margin: 0 16px !important;
    padding: 5px 0 !important;
    min-height: 60px !important;
    gap: 12px !important;
    overflow: visible !important;
  }

  /* Never render the desktop word menu directly in the tablet header. */
  body.rmm-tablet-header-live .rmm-tablet-menu-col,
  body.rmm-tablet-header-live .menykolumn {
    display: none !important;
  }

  body.rmm-tablet-header-live .rmm-tablet-logo-col {
    order: 1 !important;
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 !important;
  }
  body.rmm-tablet-header-live .headerlogo,
  body.rmm-tablet-header-live .rmm-home-logo-link {
    display: block !important;
    margin: 0 !important;
    transform: none !important;
  }
  body.rmm-tablet-header-live .headerlogo img,
  body.rmm-tablet-header-live .rmm-home-logo-link img {
    display: block !important;
    width: auto !important;
    max-width: 72px !important;
    max-height: 52px !important;
    object-fit: contain !important;
  }

  body.rmm-tablet-header-live .rmm-tablet-actions-col {
    order: 2 !important;
    display: flex !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 0 0 auto !important;
    padding: 0 !important;
    align-items: center !important;
  }
  body.rmm-tablet-header-live .menyikoner,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu_inner_container,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__wrap {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 10px !important;
  }
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__menu,
  body.rmm-tablet-header-live .menyikoner .et-menu-nav,
  body.rmm-tablet-header-live .menyikoner ul.et-menu {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li,
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li > a {
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
  }
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li > a {
    font-size: 11px !important;
    line-height: 1 !important;
    padding: 7px 0 !important;
  }
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__cart-button,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__search-button {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
  }

  /* Raven's drawer button is always present on tablet: portrait/landscape,
     normal/sticky. This overrides all older orientation rules. */
  body.rmm-mobile-bridge-active.rmm-tablet-header-live .rmm-mobile-launcher,
  body.rmm-tablet-header-live .rmm-mobile-launcher,
  body.rmm-tablet-header-live:not(.rmm-runtime-sticky) .rmm-mobile-launcher,
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-mobile-launcher {
    display: inline-flex !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

@media (min-width: 768px) and (max-width: 850px) {
  body.rmm-tablet-header-live .rmm-tablet-unified-row {
    width: calc(100% - 20px) !important;
    margin: 0 10px !important;
    gap: 8px !important;
  }
  body.rmm-tablet-header-live .headerlogo img,
  body.rmm-tablet-header-live .rmm-home-logo-link img {
    max-width: 62px !important;
    max-height: 48px !important;
  }
  body.rmm-tablet-header-live .menyikoner,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__wrap { gap: 7px !important; }
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li > a { font-size: 10px !important; }
}


/* ===== v0.12.18: portrait tablet cleanup + sticky parity ===== */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  body.rmm-tablet-header-live .rmm-tablet-unified-row {
    width: calc(100% - 36px) !important;
    margin: 0 18px !important;
    padding: 5px 0 !important;
    gap: 16px !important;
    min-height: 60px !important;
  }
  body.rmm-tablet-header-live .rmm-tablet-logo-col {
    margin-right: 8px !important;
  }
  body.rmm-tablet-header-live .rmm-tablet-actions-col {
    margin-left: auto !important;
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  body.rmm-tablet-header-live .menyikoner,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu_inner_container,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__wrap {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    gap: 12px !important;
  }
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__menu,
  body.rmm-tablet-header-live .menyikoner .et-menu-nav,
  body.rmm-tablet-header-live .menyikoner ul.et-menu {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex-flow: row nowrap !important;
  }
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li.rmm-tablet-extra-item {
    display: none !important;
  }
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li.rmm-tablet-account-item {
    display: flex !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li.rmm-tablet-account-item > a {
    display: flex !important;
    white-space: nowrap !important;
    font-size: 11px !important;
    padding: 7px 0 !important;
  }
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__cart-button,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__search-button {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex: 0 0 auto !important;
  }
  body.rmm-tablet-header-live .rmm-mobile-launcher,
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-mobile-launcher,
  body.rmm-tablet-header-live:not(.rmm-runtime-sticky) .rmm-mobile-launcher {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    height: 42px !important;
  }
}


/* ===== v0.12.19: tablet landscape drawer launcher only =====
   Some iPads expose a landscape CSS viewport above 1024px. In that range the
   existing cart and search stay untouched; only the Raven hamburger is added. */
@media (min-width: 1025px) and (max-width: 1366px) and (orientation: landscape) and (pointer: coarse) {
  body.rmm-mobile-bridge-active .rmm-mobile-launcher {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 0 0 10px !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

/* ===== v0.12.20: reliable iPad/tablet landscape hamburger + drawer =====
   The bridge JS can be active above 1024px on landscape touch tablets, so the
   actual three-bar launcher and off-canvas drawer must use the same range. */
@media (min-width: 1025px) and (max-width: 1366px) and (orientation: landscape) {
  body.rmm-mobile-bridge-active .rmm-mobile-launcher {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 44px !important;
    height: 44px !important;
    flex: 0 0 44px !important;
    margin: 0 0 0 10px !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    color: currentColor !important;
    cursor: pointer !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-launcher-bars,
  body.rmm-mobile-bridge-active .rmm-mobile-launcher-bars::before,
  body.rmm-mobile-bridge-active .rmm-mobile-launcher-bars::after {
    display: block !important;
    width: 28px !important;
    height: 3px !important;
    border-radius: 99px !important;
    background: currentColor !important;
    content: '' !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-launcher-bars { position: relative !important; }
  body.rmm-mobile-bridge-active .rmm-mobile-launcher-bars::before { position: absolute !important; left: 0 !important; top: -9px !important; }
  body.rmm-mobile-bridge-active .rmm-mobile-launcher-bars::after { position: absolute !important; left: 0 !important; top: 9px !important; }

  body.rmm-mobile-bridge-active .rmm-mobile-site-menu {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147482000 !important;
    display: block !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-site-menu.rmm-mobile-open {
    visibility: visible !important;
    pointer-events: auto !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-site-backdrop {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    background: rgba(0,0,0,.42) !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-site-drawer {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    display: block !important;
    width: min(440px, 82vw) !important;
    max-width: 100vw !important;
    overflow-y: auto !important;
    background: #fff !important;
    transform: translateX(105%) !important;
    transition: transform .24s ease !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-open .rmm-mobile-site-drawer {
    transform: translateX(0) !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-site-head,
  body.rmm-mobile-bridge-active .rmm-mobile-site-list,
  body.rmm-mobile-bridge-active .rmm-mobile-row,
  body.rmm-mobile-bridge-active .rmm-mobile-toggle {
    display: flex !important;
  }
  body.rmm-mobile-menu-open { overflow: hidden !important; touch-action: none !important; }
}


/* ===== v0.12.21: calm, dedicated landscape-tablet drawer =====
   Keep portrait tablet behavior untouched. In landscape, suppress the desktop
   mega-menu surfaces and present one clean, anchored right-side navigation panel.
   The panel uses only a short entrance motion instead of flying across the screen. */
body.rmm-tablet-landscape-drawer > .rmm-menu.rmm-global {
  display: none !important;
}

body.rmm-tablet-landscape-drawer .rmm-mobile-site-menu {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147482000 !important;
  display: block !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-site-menu.rmm-mobile-open {
  visibility: visible !important;
  pointer-events: auto !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-site-backdrop {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  background: rgba(15,18,21,.38) !important;
  opacity: 0 !important;
  transition: opacity .16s ease !important;
  backdrop-filter: blur(1.5px);
  -webkit-backdrop-filter: blur(1.5px);
}
body.rmm-tablet-landscape-drawer .rmm-mobile-open .rmm-mobile-site-backdrop {
  opacity: 1 !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-site-drawer {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  bottom: 10px !important;
  left: auto !important;
  display: block !important;
  width: clamp(360px, 40vw, 460px) !important;
  height: auto !important;
  max-width: calc(100vw - 20px) !important;
  max-height: calc(100dvh - 20px) !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  border: 1px solid rgba(0,0,0,.075) !important;
  border-radius: 18px !important;
  background: var(--fritidslivet-surface, var(--fl-surface, #fff)) !important;
  color: var(--fritidslivet-text, var(--fl-text, #25282b)) !important;
  box-shadow: -12px 12px 38px rgba(0,0,0,.20) !important;
  opacity: 0 !important;
  transform: translate3d(24px,0,0) scale(.992) !important;
  transform-origin: center right !important;
  transition: transform .18s cubic-bezier(.22,.61,.36,1), opacity .14s ease !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-open .rmm-mobile-site-drawer {
  opacity: 1 !important;
  transform: translate3d(0,0,0) scale(1) !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-site-head {
  position: sticky !important;
  top: 0 !important;
  z-index: 5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 62px !important;
  padding: 10px 14px 10px 18px !important;
  border-bottom: 1px solid rgba(0,0,0,.075) !important;
  background: rgba(255,255,255,.96) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-site-title {
  margin: 0 !important;
  font-size: 16px !important;
  font-weight: 760 !important;
  line-height: 1 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-site-close {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: inline-grid !important;
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(0,0,0,.085) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: inherit !important;
  font-size: 27px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-site-list,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-list ul {
  margin: 0 !important;
  list-style: none !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-site-list {
  display: block !important;
  padding: 8px 14px 22px !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-site-list ul {
  padding: 0 !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-top-item {
  display: block !important;
  margin: 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.07) !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-row {
  display: flex !important;
  align-items: center !important;
  min-height: 54px !important;
  gap: 10px !important;
  margin: 0 !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-row > a,
body.rmm-tablet-landscape-drawer .rmm-mobile-row > span {
  display: block !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  padding: 14px 4px !important;
  color: inherit !important;
  text-decoration: none !important;
  font-size: 16px !important;
  font-weight: 720 !important;
  line-height: 1.2 !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-toggle {
  position: relative !important;
  display: inline-grid !important;
  width: 42px !important;
  height: 42px !important;
  flex: 0 0 42px !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  color: inherit !important;
  cursor: pointer !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-toggle::before {
  position: absolute !important;
  width: 9px !important;
  height: 9px !important;
  border-top: 2px solid currentColor !important;
  border-right: 2px solid currentColor !important;
  content: '' !important;
  transform: rotate(45deg) !important;
  transition: transform .16s ease !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-expanded > .rmm-mobile-row .rmm-mobile-toggle::before {
  transform: rotate(135deg) !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-submenu {
  display: none !important;
  padding: 0 0 9px 8px !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-expanded > .rmm-mobile-submenu {
  display: block !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-submenu > li {
  margin: 0 0 6px !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-submenu .rmm-mobile-row {
  min-height: 44px !important;
  border-radius: 10px !important;
  background: rgba(0,0,0,.025) !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-submenu .rmm-mobile-row > a,
body.rmm-tablet-landscape-drawer .rmm-mobile-submenu .rmm-mobile-row > span {
  padding: 11px 10px !important;
  font-size: 14.5px !important;
  font-weight: 620 !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-submenu .rmm-mobile-submenu {
  padding: 4px 0 3px 12px !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-submenu .rmm-mobile-submenu .rmm-mobile-row {
  min-height: 38px !important;
  background: transparent !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-submenu .rmm-mobile-submenu .rmm-mobile-row > a,
body.rmm-tablet-landscape-drawer .rmm-mobile-submenu .rmm-mobile-submenu .rmm-mobile-row > span {
  padding: 8px 8px !important;
  font-size: 13.5px !important;
  font-weight: 520 !important;
  color: var(--fritidslivet-text-muted, var(--fl-text-muted, #596068)) !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-section-group {
  display: block !important;
  margin: 5px 0 8px !important;
  padding: 4px 0 !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-section-group > .rmm-mobile-row {
  padding: 4px 5px !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  border-radius: 11px !important;
  background: rgba(0,0,0,.022) !important;
}
body.rmm-tablet-landscape-drawer .rmm-mobile-thumb {
  display: block !important;
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  margin-left: 2px !important;
  border-radius: 9px !important;
  object-fit: cover !important;
  background: rgba(0,0,0,.045) !important;
}
body.rmm-tablet-landscape-drawer.rmm-mobile-menu-open {
  overflow: hidden !important;
  touch-action: none !important;
}

@media (prefers-reduced-motion: reduce) {
  body.rmm-tablet-landscape-drawer .rmm-mobile-site-backdrop,
  body.rmm-tablet-landscape-drawer .rmm-mobile-site-drawer {
    transition: none !important;
  }
}


/* ===== v0.12.23: portrait tablet uses the proven 0.12.21 drawer =====
   Portrait uses a separate selector copy instead of :is(), preserving the exact
   0.12.21 landscape behavior and remaining compatible with older iPad Safari. */
body.rmm-tablet-portrait-drawer > .rmm-menu.rmm-global {
  display: none !important;
}

body.rmm-tablet-portrait-drawer .rmm-mobile-site-menu {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147482000 !important;
  display: block !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-site-menu.rmm-mobile-open {
  visibility: visible !important;
  pointer-events: auto !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-site-backdrop {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  background: rgba(15,18,21,.38) !important;
  opacity: 0 !important;
  transition: opacity .16s ease !important;
  backdrop-filter: blur(1.5px);
  -webkit-backdrop-filter: blur(1.5px);
}
body.rmm-tablet-portrait-drawer .rmm-mobile-open .rmm-mobile-site-backdrop {
  opacity: 1 !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-site-drawer {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  bottom: 10px !important;
  left: auto !important;
  display: block !important;
  width: clamp(360px, 40vw, 460px) !important;
  height: auto !important;
  max-width: calc(100vw - 20px) !important;
  max-height: calc(100dvh - 20px) !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  border: 1px solid rgba(0,0,0,.075) !important;
  border-radius: 18px !important;
  background: var(--fritidslivet-surface, var(--fl-surface, #fff)) !important;
  color: var(--fritidslivet-text, var(--fl-text, #25282b)) !important;
  box-shadow: -12px 12px 38px rgba(0,0,0,.20) !important;
  opacity: 0 !important;
  transform: translate3d(24px,0,0) scale(.992) !important;
  transform-origin: center right !important;
  transition: transform .18s cubic-bezier(.22,.61,.36,1), opacity .14s ease !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-open .rmm-mobile-site-drawer {
  opacity: 1 !important;
  transform: translate3d(0,0,0) scale(1) !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-site-head {
  position: sticky !important;
  top: 0 !important;
  z-index: 5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 62px !important;
  padding: 10px 14px 10px 18px !important;
  border-bottom: 1px solid rgba(0,0,0,.075) !important;
  background: rgba(255,255,255,.96) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-site-title {
  margin: 0 !important;
  font-size: 16px !important;
  font-weight: 760 !important;
  line-height: 1 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-site-close {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: inline-grid !important;
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(0,0,0,.085) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: inherit !important;
  font-size: 27px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-site-list,
body.rmm-tablet-portrait-drawer .rmm-mobile-site-list ul {
  margin: 0 !important;
  list-style: none !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-site-list {
  display: block !important;
  padding: 8px 14px 22px !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-site-list ul {
  padding: 0 !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-top-item {
  display: block !important;
  margin: 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.07) !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-row {
  display: flex !important;
  align-items: center !important;
  min-height: 54px !important;
  gap: 10px !important;
  margin: 0 !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-row > a,
body.rmm-tablet-portrait-drawer .rmm-mobile-row > span {
  display: block !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  padding: 14px 4px !important;
  color: inherit !important;
  text-decoration: none !important;
  font-size: 16px !important;
  font-weight: 720 !important;
  line-height: 1.2 !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-toggle {
  position: relative !important;
  display: inline-grid !important;
  width: 42px !important;
  height: 42px !important;
  flex: 0 0 42px !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  color: inherit !important;
  cursor: pointer !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-toggle::before {
  position: absolute !important;
  width: 9px !important;
  height: 9px !important;
  border-top: 2px solid currentColor !important;
  border-right: 2px solid currentColor !important;
  content: '' !important;
  transform: rotate(45deg) !important;
  transition: transform .16s ease !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-expanded > .rmm-mobile-row .rmm-mobile-toggle::before {
  transform: rotate(135deg) !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-submenu {
  display: none !important;
  padding: 0 0 9px 8px !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-expanded > .rmm-mobile-submenu {
  display: block !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-submenu > li {
  margin: 0 0 6px !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-submenu .rmm-mobile-row {
  min-height: 44px !important;
  border-radius: 10px !important;
  background: rgba(0,0,0,.025) !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-submenu .rmm-mobile-row > a,
body.rmm-tablet-portrait-drawer .rmm-mobile-submenu .rmm-mobile-row > span {
  padding: 11px 10px !important;
  font-size: 14.5px !important;
  font-weight: 620 !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-submenu .rmm-mobile-submenu {
  padding: 4px 0 3px 12px !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-submenu .rmm-mobile-submenu .rmm-mobile-row {
  min-height: 38px !important;
  background: transparent !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-submenu .rmm-mobile-submenu .rmm-mobile-row > a,
body.rmm-tablet-portrait-drawer .rmm-mobile-submenu .rmm-mobile-submenu .rmm-mobile-row > span {
  padding: 8px 8px !important;
  font-size: 13.5px !important;
  font-weight: 520 !important;
  color: var(--fritidslivet-text-muted, var(--fl-text-muted, #596068)) !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-section-group {
  display: block !important;
  margin: 5px 0 8px !important;
  padding: 4px 0 !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-section-group > .rmm-mobile-row {
  padding: 4px 5px !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  border-radius: 11px !important;
  background: rgba(0,0,0,.022) !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-thumb {
  display: block !important;
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  margin-left: 2px !important;
  border-radius: 9px !important;
  object-fit: cover !important;
  background: rgba(0,0,0,.045) !important;
}
body.rmm-tablet-portrait-drawer.rmm-mobile-menu-open {
  overflow: hidden !important;
  touch-action: none !important;
}

@media (prefers-reduced-motion: reduce) {
  body.rmm-tablet-portrait-drawer .rmm-mobile-site-backdrop,
  body.rmm-tablet-portrait-drawer .rmm-mobile-site-drawer {
    transition: none !important;
  }
}



/* ===== v0.12.24: portrait tablet simplified header =====
   Portrait tablet now mirrors the calm landscape drawer concept in the header:
   keep only the logo + cart + search + Raven burger in both normal and sticky.
   Remove duplicated text links from the visible row; all navigation lives in the
   off-canvas drawer, which already uses the approved landscape design. */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  body.rmm-tablet-header-live .rmm-tablet-unified-row,
  body.rmm-mobile-bridge-active.rmm-tablet-header-live .rmm-tablet-unified-row,
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-unified-row,
  body.rmm-mobile-bridge-active.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-unified-row {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: calc(100% - 40px) !important;
    max-width: none !important;
    margin: 0 20px !important;
    padding: 8px 0 !important;
    min-height: 64px !important;
    gap: 18px !important;
    overflow: visible !important;
  }

  /* Remove all visible word-navigation from the portrait tablet header. */
  body.rmm-tablet-header-live .rmm-tablet-menu-col,
  body.rmm-tablet-header-live .menykolumn,
  body.rmm-tablet-header-live .menykolumn .et_pb_menu_inner_container,
  body.rmm-tablet-header-live .menykolumn .et_pb_menu__wrap,
  body.rmm-tablet-header-live .menykolumn .et_pb_menu__menu,
  body.rmm-tablet-header-live .menykolumn .et-menu-nav,
  body.rmm-tablet-header-live .menykolumn ul.et-menu,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__menu,
  body.rmm-tablet-header-live .menyikoner .et-menu-nav,
  body.rmm-tablet-header-live .menyikoner ul.et-menu,
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li,
  body.rmm-tablet-header-live .menyikoner ul.et-menu > li > a {
    display: none !important;
  }

  body.rmm-tablet-header-live .rmm-tablet-logo-col {
    order: 1 !important;
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.rmm-tablet-header-live .headerlogo,
  body.rmm-tablet-header-live .rmm-home-logo-link {
    display: block !important;
    margin: 0 !important;
    transform: none !important;
  }
  body.rmm-tablet-header-live .headerlogo img,
  body.rmm-tablet-header-live .rmm-home-logo-link img,
  body.rmm-tablet-header-live.rmm-runtime-sticky .headerlogo img,
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-home-logo-link img {
    display: block !important;
    width: auto !important;
    max-width: 78px !important;
    max-height: 56px !important;
    object-fit: contain !important;
  }

  body.rmm-tablet-header-live .rmm-tablet-actions-col {
    order: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 0 0 auto !important;
    padding: 0 !important;
  }
  body.rmm-tablet-header-live .menyikoner,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu_inner_container,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__wrap {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 12px !important;
  }

  body.rmm-tablet-header-live .menyikoner .et_pb_menu__cart-button,
  body.rmm-tablet-header-live .menyikoner a.et_pb_menu__cart-button,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__search-button,
  body.rmm-tablet-header-live .rmm-mobile-launcher {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin: 0 !important;
  }
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__search-button,
  body.rmm-tablet-header-live .rmm-mobile-launcher {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
  }
  body.rmm-tablet-header-live .rmm-mobile-launcher {
    padding: 0 !important;
  }

  /* Divi's own mobile nav icon must stay hidden so there is only one burger. */
  body.rmm-tablet-header-live .et_mobile_nav_menu {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 900px) and (orientation: portrait) {
  body.rmm-tablet-header-live .rmm-tablet-unified-row,
  body.rmm-mobile-bridge-active.rmm-tablet-header-live .rmm-tablet-unified-row,
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-unified-row,
  body.rmm-mobile-bridge-active.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-unified-row {
    width: calc(100% - 28px) !important;
    margin: 0 14px !important;
    gap: 14px !important;
  }
  body.rmm-tablet-header-live .headerlogo img,
  body.rmm-tablet-header-live .rmm-home-logo-link img,
  body.rmm-tablet-header-live.rmm-runtime-sticky .headerlogo img,
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-home-logo-link img {
    max-width: 72px !important;
    max-height: 52px !important;
  }
  body.rmm-tablet-header-live .menyikoner,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu_inner_container,
  body.rmm-tablet-header-live .menyikoner .et_pb_menu__wrap {
    gap: 10px !important;
  }
}


/* ===== v0.12.25: stable iPad header architecture =====
   One active header row per state. Portrait is intentionally compact; landscape
   shows the real primary nav once, then account/cart/search/burger. Normal logo
   is larger than sticky without changing its left anchor. */

/* The coordinator marks only the currently visible Divi modules as live. Hide
   stale duplicate menu/action modules from inactive rows or clones on tablets. */
body.rmm-tablet-header-live .menykolumn:not(.rmm-tablet-menu-live),
body.rmm-tablet-header-live .menyikoner:not(.rmm-tablet-actions-live) {
  display: none !important;
}

body.rmm-tablet-header-live .rmm-tablet-unified-row {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  box-sizing: border-box !important;
  width: calc(100% - 48px) !important;
  max-width: none !important;
  margin: 0 24px !important;
  padding: 7px 0 !important;
  min-height: 72px !important;
  gap: 14px !important;
  overflow: visible !important;
}
body.rmm-tablet-header-live .rmm-tablet-unified-row > .et_pb_column {
  float: none !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.rmm-tablet-header-live .rmm-tablet-logo-col {
  order: 1 !important;
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
}
body.rmm-tablet-header-live .rmm-tablet-logo-live,
body.rmm-tablet-header-live .rmm-home-logo-link.rmm-tablet-logo-live {
  display: block !important;
  margin: 0 !important;
  transform: none !important;
  transform-origin: left center !important;
}
body.rmm-tablet-header-live .rmm-tablet-logo-live img,
body.rmm-tablet-header-live img.rmm-tablet-logo-live,
body.rmm-tablet-header-live .rmm-home-logo-link.rmm-tablet-logo-live img {
  display: block !important;
  width: auto !important;
  max-width: 96px !important;
  max-height: 68px !important;
  object-fit: contain !important;
  object-position: left center !important;
}
body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-unified-row {
  min-height: 62px !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}
body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-logo-live img,
body.rmm-tablet-header-live.rmm-runtime-sticky img.rmm-tablet-logo-live,
body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-home-logo-link.rmm-tablet-logo-live img {
  max-width: 74px !important;
  max-height: 52px !important;
}

body.rmm-tablet-header-live .rmm-tablet-actions-col {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
}
body.rmm-tablet-header-live .rmm-tablet-actions-live,
body.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu_inner_container,
body.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__wrap {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 11px !important;
}
body.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__cart-button,
body.rmm-tablet-header-live .rmm-tablet-actions-live a.et_pb_menu__cart-button,
body.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__search-button,
body.rmm-tablet-header-live .rmm-mobile-launcher {
  visibility: visible !important;
  opacity: 1 !important;
  flex: 0 0 auto !important;
}
body.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__cart-button,
body.rmm-tablet-header-live .rmm-tablet-actions-live a.et_pb_menu__cart-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: max-content !important;
  white-space: nowrap !important;
  margin: 0 !important;
}
body.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__search-button,
body.rmm-tablet-header-live .rmm-mobile-launcher {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  min-width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
}
body.rmm-tablet-header-live .et_mobile_nav_menu { display: none !important; }

/* PORTRAIT TABLET: logo + cart/count + search + burger only, normal and sticky. */
body.rmm-tablet-portrait-drawer.rmm-tablet-header-live .rmm-tablet-menu-col,
body.rmm-tablet-portrait-drawer.rmm-tablet-header-live .rmm-tablet-menu-live,
body.rmm-tablet-portrait-drawer.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__menu,
body.rmm-tablet-portrait-drawer.rmm-tablet-header-live .rmm-tablet-actions-live .et-menu-nav,
body.rmm-tablet-portrait-drawer.rmm-tablet-header-live .rmm-tablet-actions-live ul.et-menu {
  display: none !important;
}
body.rmm-tablet-portrait-drawer.rmm-tablet-header-live .rmm-tablet-unified-row {
  justify-content: space-between !important;
}
body.rmm-tablet-portrait-drawer.rmm-tablet-header-live .rmm-tablet-actions-col {
  margin-left: auto !important;
}
body.rmm-tablet-portrait-drawer.rmm-tablet-header-live .rmm-mobile-launcher {
  display: inline-flex !important;
}

/* LANDSCAPE TABLET: one primary menu only. The action module is allowed to show
   Mitt konto, but all duplicate primary links are suppressed. */
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-col {
  order: 2 !important;
  display: flex !important;
  align-items: center !important;
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-live,
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-live .et_pb_menu_inner_container,
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-live .et_pb_menu__wrap,
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-live .et_pb_menu__menu,
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-live .et-menu-nav,
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-live ul.et-menu {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-live ul.et-menu {
  gap: clamp(7px, .85vw, 13px) !important;
}
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-live ul.et-menu > li {
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-live ul.et-menu > li > a {
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  padding: 8px 0 !important;
  font-size: clamp(10px, 1.05vw, 13px) !important;
  line-height: 1 !important;
}
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__menu,
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-actions-live .et-menu-nav,
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-actions-live ul.et-menu {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-actions-live ul.et-menu > li.rmm-tablet-extra-item {
  display: none !important;
}
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-actions-live ul.et-menu > li.rmm-tablet-account-item {
  display: flex !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-actions-live ul.et-menu > li.rmm-tablet-account-item > a {
  display: flex !important;
  white-space: nowrap !important;
  padding: 8px 0 !important;
  font-size: clamp(10px, 1vw, 13px) !important;
  line-height: 1 !important;
}
body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-mobile-launcher {
  display: inline-flex !important;
}

/* iPad Mini / 10-inch landscape: preserve breathing room while fitting all
   controls on one row. */
@media (min-width: 900px) and (max-width: 1100px) and (orientation: landscape) {
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-unified-row {
    width: calc(100% - 32px) !important;
    margin: 0 16px !important;
    gap: 9px !important;
  }
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-logo-live img,
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live img.rmm-tablet-logo-live,
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-home-logo-link.rmm-tablet-logo-live img {
    max-width: 86px !important;
    max-height: 62px !important;
  }
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-logo-live img,
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live.rmm-runtime-sticky img.rmm-tablet-logo-live,
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live.rmm-runtime-sticky .rmm-home-logo-link.rmm-tablet-logo-live img {
    max-width: 68px !important;
    max-height: 50px !important;
  }
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-live ul.et-menu { gap: 6px !important; }
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-menu-live ul.et-menu > li > a,
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-actions-live ul.et-menu > li.rmm-tablet-account-item > a {
    font-size: 10px !important;
  }
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-actions-live,
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__wrap {
    gap: 7px !important;
  }
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__search-button,
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-mobile-launcher {
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
  }
}

/* iPad Pro 13 landscape: maintain a deliberate left inset. Normal logo grows
   from the same left anchor; sticky merely shrinks it, so the row never jumps. */
@media (min-width: 1180px) and (max-width: 1366px) and (orientation: landscape) {
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-unified-row {
    width: calc(100% - 64px) !important;
    margin-left: 32px !important;
    margin-right: 32px !important;
  }
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-tablet-logo-live img,
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live img.rmm-tablet-logo-live,
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live .rmm-home-logo-link.rmm-tablet-logo-live img {
    max-width: 104px !important;
    max-height: 72px !important;
  }
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-logo-live img,
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live.rmm-runtime-sticky img.rmm-tablet-logo-live,
  body.rmm-tablet-landscape-drawer.rmm-tablet-header-live.rmm-runtime-sticky .rmm-home-logo-link.rmm-tablet-logo-live img {
    max-width: 78px !important;
    max-height: 54px !important;
  }
}

/* iPad portrait, including Pro 13 at 1024px: same left anchor in both states. */
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  body.rmm-tablet-portrait-drawer.rmm-tablet-header-live .rmm-tablet-unified-row {
    width: calc(100% - 44px) !important;
    margin-left: 22px !important;
    margin-right: 22px !important;
  }
  body.rmm-tablet-portrait-drawer.rmm-tablet-header-live .rmm-tablet-logo-live img,
  body.rmm-tablet-portrait-drawer.rmm-tablet-header-live img.rmm-tablet-logo-live,
  body.rmm-tablet-portrait-drawer.rmm-tablet-header-live .rmm-home-logo-link.rmm-tablet-logo-live img {
    max-width: 92px !important;
    max-height: 66px !important;
  }
  body.rmm-tablet-portrait-drawer.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-logo-live img,
  body.rmm-tablet-portrait-drawer.rmm-tablet-header-live.rmm-runtime-sticky img.rmm-tablet-logo-live,
  body.rmm-tablet-portrait-drawer.rmm-tablet-header-live.rmm-runtime-sticky .rmm-home-logo-link.rmm-tablet-logo-live img {
    max-width: 72px !important;
    max-height: 52px !important;
  }
}

/* ===== v0.12.27: restore Rävenager tablet header, suppress legacy Woo/Divi menu =====
   Built from 0.12.25 because 0.12.26 overreached and could hide the active logo.
   Phones keep their existing layout. Tablets use one simple architecture in
   every orientation/state: logo + cart/count + search + Rävenager burger. */

body.rmm-tablet-header-live .menykolumn,
body.rmm-tablet-header-live .menykolumn .et_pb_menu_inner_container,
body.rmm-tablet-header-live .menykolumn .et_pb_menu__wrap,
body.rmm-tablet-header-live .menykolumn .et_pb_menu__menu,
body.rmm-tablet-header-live .menykolumn .et-menu-nav,
body.rmm-tablet-header-live .menykolumn ul.et-menu {
  display: none !important;
}

/* Action module may contain a second copy of the old text menu. Hide only that
   textual nav; preserve Divi's cart and search controls. */
body.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__menu,
body.rmm-tablet-header-live .rmm-tablet-actions-live .et-menu-nav,
body.rmm-tablet-header-live .rmm-tablet-actions-live ul.et-menu {
  display: none !important;
}

body.rmm-tablet-header-live .rmm-tablet-unified-row {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: calc(100% - 44px) !important;
  max-width: none !important;
  margin-left: 22px !important;
  margin-right: 22px !important;
  padding-top: 9px !important;
  padding-bottom: 9px !important;
  min-height: 72px !important;
  gap: 18px !important;
  overflow: visible !important;
}
body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-unified-row {
  min-height: 60px !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

body.rmm-tablet-header-live .rmm-tablet-logo-col {
  order: 1 !important;
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.rmm-tablet-header-live .rmm-tablet-logo-live,
body.rmm-tablet-header-live .rmm-home-logo-link.rmm-tablet-logo-live {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  transform: none !important;
  transform-origin: left center !important;
}
body.rmm-tablet-header-live .rmm-tablet-logo-live img,
body.rmm-tablet-header-live img.rmm-tablet-logo-live,
body.rmm-tablet-header-live .rmm-home-logo-link.rmm-tablet-logo-live img {
  display: block !important;
  width: auto !important;
  max-width: 96px !important;
  max-height: 68px !important;
  object-fit: contain !important;
  object-position: left center !important;
}
body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-logo-live img,
body.rmm-tablet-header-live.rmm-runtime-sticky img.rmm-tablet-logo-live,
body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-home-logo-link.rmm-tablet-logo-live img {
  max-width: 72px !important;
  max-height: 52px !important;
}

body.rmm-tablet-header-live .rmm-tablet-actions-col {
  order: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
}
body.rmm-tablet-header-live .rmm-tablet-actions-live,
body.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu_inner_container,
body.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__wrap {
  display: inline-flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 12px !important;
}
body.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__cart-button,
body.rmm-tablet-header-live .rmm-tablet-actions-live a.et_pb_menu__cart-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  visibility: visible !important;
  opacity: 1 !important;
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: max-content !important;
  white-space: nowrap !important;
  margin: 0 !important;
}
body.rmm-tablet-header-live .rmm-tablet-actions-live .et_pb_menu__search-button,
body.rmm-tablet-header-live .rmm-mobile-launcher {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  visibility: visible !important;
  opacity: 1 !important;
  flex: 0 0 42px !important;
  width: 42px !important;
  min-width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
}
body.rmm-tablet-header-live .rmm-mobile-launcher {
  padding: 0 !important;
}
body.rmm-tablet-header-live .et_mobile_nav_menu {
  display: none !important;
}

/* Keep the logo anchored to the same left point in normal and sticky. Normal
   grows only to the right from that anchor. Large tablets get a slightly larger
   edge inset to match the visual top/bottom breathing room. */
@media (min-width: 900px) and (max-width: 1100px) and (orientation: portrait) {
  body.rmm-tablet-header-live .rmm-tablet-unified-row {
    width: calc(100% - 56px) !important;
    margin-left: 28px !important;
    margin-right: 28px !important;
  }
  body.rmm-tablet-header-live .rmm-tablet-logo-live img,
  body.rmm-tablet-header-live img.rmm-tablet-logo-live,
  body.rmm-tablet-header-live .rmm-home-logo-link.rmm-tablet-logo-live img {
    max-width: 100px !important;
    max-height: 70px !important;
  }
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-logo-live img,
  body.rmm-tablet-header-live.rmm-runtime-sticky img.rmm-tablet-logo-live,
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-home-logo-link.rmm-tablet-logo-live img {
    max-width: 76px !important;
    max-height: 54px !important;
  }
}

@media (min-width: 1101px) and (max-width: 1450px) and (orientation: landscape) {
  body.rmm-tablet-header-live .rmm-tablet-unified-row {
    width: calc(100% - 64px) !important;
    margin-left: 32px !important;
    margin-right: 32px !important;
  }
  body.rmm-tablet-header-live .rmm-tablet-logo-live img,
  body.rmm-tablet-header-live img.rmm-tablet-logo-live,
  body.rmm-tablet-header-live .rmm-home-logo-link.rmm-tablet-logo-live img {
    max-width: 106px !important;
    max-height: 74px !important;
  }
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-tablet-logo-live img,
  body.rmm-tablet-header-live.rmm-runtime-sticky img.rmm-tablet-logo-live,
  body.rmm-tablet-header-live.rmm-runtime-sticky .rmm-home-logo-link.rmm-tablet-logo-live img {
    max-width: 80px !important;
    max-height: 56px !important;
  }
}

/* ===== v0.12.28: Rävenager owns the tablet header =====
   Divi/Woo header modules remain as data sources only. Their visible tablet
   output is suppressed, and one dedicated Rävenager bar is rendered in each
   normal/sticky logo row. */
body.rmm-tablet-master-active .headerlogo,
body.rmm-tablet-master-active .rmm-home-logo-link,
body.rmm-tablet-master-active .menykolumn,
body.rmm-tablet-master-active .menyikoner,
body.rmm-tablet-master-active .et_mobile_nav_menu,
body.rmm-tablet-master-active .rmm-mobile-launcher {
  display: none !important;
}

body.rmm-tablet-master-active .rmm-tablet-legacy-row {
  display: none !important;
}

body.rmm-tablet-master-active .rmm-tablet-master-header {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 82px !important;
  margin: 0 !important;
  padding: 10px clamp(22px, 2.5vw, 34px) !important;
  box-sizing: border-box !important;
  gap: clamp(14px, 1.5vw, 24px) !important;
  background: transparent !important;
}

body.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-header {
  min-height: 62px !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

body.rmm-tablet-master-active .rmm-tablet-master-logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  transform-origin: left center !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-logo-img {
  display: block !important;
  width: auto !important;
  max-width: 104px !important;
  max-height: 72px !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: left center !important;
}
body.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
  max-width: 78px !important;
  max-height: 54px !important;
}

body.rmm-tablet-master-active .rmm-tablet-master-nav {
  display: flex !important;
  align-items: center !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-nav ul {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  gap: clamp(8px, .9vw, 14px) !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  min-width: 0 !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-nav li {
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-nav a {
  display: inline-flex !important;
  align-items: center !important;
  padding: 8px 0 !important;
  white-space: nowrap !important;
  color: inherit !important;
  text-decoration: none !important;
  font-size: clamp(10px, 1vw, 13px) !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

body.rmm-tablet-master-active .rmm-tablet-master-actions {
  display: inline-flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex: 0 0 auto !important;
  min-width: 0 !important;
  margin-left: auto !important;
  padding: 0 !important;
  gap: 10px !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-account,
body.rmm-tablet-master-active .rmm-tablet-master-cart {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
  color: inherit !important;
  text-decoration: none !important;
  font-size: clamp(10px, 1vw, 13px) !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-tablet-master-active .rmm-tablet-master-burger {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 42px !important;
  width: 42px !important;
  min-width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  color: inherit !important;
  cursor: pointer !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-bars,
body.rmm-tablet-master-active .rmm-tablet-master-bars::before,
body.rmm-tablet-master-active .rmm-tablet-master-bars::after {
  display: block !important;
  width: 28px !important;
  height: 3px !important;
  border-radius: 99px !important;
  background: currentColor !important;
  content: '' !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-bars {
  position: relative !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-bars::before {
  position: absolute !important;
  left: 0 !important;
  top: -9px !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-bars::after {
  position: absolute !important;
  left: 0 !important;
  top: 9px !important;
}

/* Portrait: intentionally simple. Navigation lives in the Rävenager drawer. */
@media (orientation: portrait) {
  body.rmm-tablet-master-active .rmm-tablet-master-nav,
  body.rmm-tablet-master-active .rmm-tablet-master-account {
    display: none !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-header {
    justify-content: space-between !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-actions {
    margin-left: auto !important;
    gap: 12px !important;
  }
}

/* Landscape: show the one Rävenager-owned text menu plus account/actions. */
@media (orientation: landscape) {
  body.rmm-tablet-master-active .rmm-tablet-master-nav,
  body.rmm-tablet-master-active .rmm-tablet-master-account {
    display: flex !important;
  }
}

/* iPad Mini / ~1024px landscape: keep the full one-row structure compact. */
@media (min-width: 900px) and (max-width: 1100px) and (orientation: landscape) {
  body.rmm-tablet-master-active .rmm-tablet-master-header {
    padding-left: 18px !important;
    padding-right: 18px !important;
    gap: 10px !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-logo-img {
    max-width: 84px !important;
    max-height: 60px !important;
  }
  body.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
    max-width: 66px !important;
    max-height: 48px !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-nav ul { gap: 6px !important; }
  body.rmm-tablet-master-active .rmm-tablet-master-nav a,
  body.rmm-tablet-master-active .rmm-tablet-master-account,
  body.rmm-tablet-master-active .rmm-tablet-master-cart {
    font-size: 10px !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-actions { gap: 7px !important; }
  body.rmm-tablet-master-active .rmm-tablet-master-search,
  body.rmm-tablet-master-active .rmm-tablet-master-burger {
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    flex-basis: 38px !important;
  }
}

/* Large tablets: preserve the same left anchor while allowing the normal logo
   to grow only to the right. */
@media (min-width: 1101px) and (max-width: 1450px) and (orientation: landscape) {
  body.rmm-tablet-master-active .rmm-tablet-master-header {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-logo-img {
    max-width: 110px !important;
    max-height: 76px !important;
  }
  body.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
    max-width: 80px !important;
    max-height: 56px !important;
  }
}

@media (min-width: 900px) and (max-width: 1100px) and (orientation: portrait) {
  body.rmm-tablet-master-active .rmm-tablet-master-header {
    padding-left: 28px !important;
    padding-right: 28px !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-logo-img {
    max-width: 100px !important;
    max-height: 70px !important;
  }
  body.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
    max-width: 76px !important;
    max-height: 54px !important;
  }
}

/* ===== v0.12.29: deterministic Rävenager tablet takeover =====
   One Rävenager header row is visible on tablet. Divi/Woo remains only as a
   hidden data source, preventing duplicate legacy menus and empty sticky rows. */
body.rmm-tablet-master-active .rmm-tablet-source-column,
body.rmm-tablet-master-active .rmm-tablet-suppressed-row {
  display: none !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-row {
  display: flex !important;
  align-items: center !important;
  width: calc(100% - 40px) !important;
  max-width: none !important;
  margin-left: 20px !important;
  margin-right: 20px !important;
  padding: 0 !important;
  min-height: 0 !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header {
  flex: 1 1 auto !important;
  width: 100% !important;
}

/* Normal and sticky share exactly the same left anchor. The normal logo only
   grows to the right from that anchor. */
body.rmm-tablet-master-active .rmm-tablet-master-header {
  padding-left: 4px !important;
  padding-right: 4px !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-logo-img {
  max-width: 104px !important;
  max-height: 74px !important;
  transform-origin: left center !important;
}
body.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
  max-width: 76px !important;
  max-height: 54px !important;
}

@media (orientation: portrait) {
  body.rmm-tablet-master-active .rmm-tablet-master-nav,
  body.rmm-tablet-master-active .rmm-tablet-master-account {
    display: none !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-actions {
    margin-left: auto !important;
    gap: 12px !important;
  }
}

@media (orientation: landscape) {
  body.rmm-tablet-master-active .rmm-tablet-master-nav,
  body.rmm-tablet-master-active .rmm-tablet-master-account {
    display: flex !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-nav {
    overflow: hidden !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-nav ul {
    flex-wrap: nowrap !important;
  }
}

@media (min-width: 900px) and (max-width: 1100px) and (orientation: landscape) {
  body.rmm-tablet-master-active .rmm-tablet-master-row {
    width: calc(100% - 28px) !important;
    margin-left: 14px !important;
    margin-right: 14px !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-header { gap: 8px !important; }
  body.rmm-tablet-master-active .rmm-tablet-master-logo-img {
    max-width: 78px !important;
    max-height: 58px !important;
  }
  body.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
    max-width: 64px !important;
    max-height: 46px !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-nav ul { gap: 5px !important; }
  body.rmm-tablet-master-active .rmm-tablet-master-nav a,
  body.rmm-tablet-master-active .rmm-tablet-master-account,
  body.rmm-tablet-master-active .rmm-tablet-master-cart { font-size: 9.5px !important; }
  body.rmm-tablet-master-active .rmm-tablet-master-actions { gap: 6px !important; }
  body.rmm-tablet-master-active .rmm-tablet-master-search,
  body.rmm-tablet-master-active .rmm-tablet-master-burger {
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    flex-basis: 36px !important;
  }
}

/* ===== v0.12.30: responsive header ownership cleanup =====
   Wide landscape phones and tablets now use the same Rävenager-owned header.
   Divi/Woo header rows are retained only as hidden data sources. */

/* Hide every legacy Divi column in the active header row, not just known menu
   modules. This also prevents stray Code/Text modules from leaking raw CSS or
   duplicate navigation into the visible responsive header. */
body.rmm-tablet-master-active .rmm-tablet-master-row > .et_pb_column {
  display: none !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header {
  display: flex !important;
}
body.rmm-tablet-master-active .rmm-tablet-suppressed-row {
  display: none !important;
}

/* The master row itself is the only visible navigation row in managed modes. */
body.rmm-tablet-master-active .rmm-tablet-master-row {
  box-sizing: border-box !important;
  overflow: visible !important;
}

/* Wide phone landscape: match the proven compact iPhone SE concept. No old
   text navigation and no Mitt konto in the bar. Navigation is in the drawer. */
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-nav,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-account {
  display: none !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row {
  width: calc(100% - 28px) !important;
  margin-left: 14px !important;
  margin-right: 14px !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header {
  min-height: 72px !important;
  padding: 7px 4px !important;
  gap: 12px !important;
  justify-content: space-between !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-logo-img {
  max-width: 86px !important;
  max-height: 60px !important;
  transform-origin: left center !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-header {
  min-height: 58px !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
  max-width: 64px !important;
  max-height: 46px !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-actions {
  margin-left: auto !important;
  gap: 11px !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-burger {
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
  flex-basis: 40px !important;
}

/* Portrait tablets: explicit simple structure. */
body.rmm-managed-tablet-portrait.rmm-tablet-master-active .rmm-tablet-master-nav,
body.rmm-managed-tablet-portrait.rmm-tablet-master-active .rmm-tablet-master-account {
  display: none !important;
}
body.rmm-managed-tablet-portrait.rmm-tablet-master-active .rmm-tablet-master-header {
  justify-content: space-between !important;
}

/* Landscape tablets: exactly one Rävenager-rendered text navigation plus the
   action group. Source Divi menus remain hidden. */
body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-nav,
body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-account {
  display: flex !important;
}

/* Normal logo is intentionally larger than sticky, but both share the exact
   same left anchor so size changes only expand toward the right. */
body.rmm-tablet-master-active .rmm-tablet-master-logo,
body.rmm-tablet-master-active .rmm-tablet-master-logo-img {
  transform-origin: left center !important;
  object-position: left center !important;
}
body.rmm-tablet-master-active:not(.rmm-runtime-sticky) .rmm-tablet-master-logo-img {
  max-width: 104px !important;
  max-height: 74px !important;
}
body.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
  max-width: 76px !important;
  max-height: 54px !important;
}

/* Large touch tablets get a little more edge breathing room without moving the
   logo anchor between normal and sticky states. */
body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-row,
body.rmm-managed-tablet-portrait.rmm-tablet-master-active .rmm-tablet-master-row {
  width: calc(100% - 48px) !important;
  margin-left: 24px !important;
  margin-right: 24px !important;
}

/* Never show Divi's own hamburger while Rävenager owns the responsive row. */
body.rmm-tablet-master-active .et_mobile_nav_menu,
body.rmm-tablet-master-active .mobile_menu_bar,
body.rmm-tablet-master-active .mobile_nav {
  display: none !important;
}

/* ===== v0.12.31: one tablet architecture, phones/desktops untouched =====
   All managed tablets use the same visible row in portrait and landscape:
   logo + cart/count + search + Rävenager burger. Text navigation lives only in
   the drawer. Normal/sticky differ only in logo/header size, not position. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-nav,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-account {
  display: none !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  width: calc(100% - 48px) !important;
  max-width: none !important;
  margin-left: 24px !important;
  margin-right: 24px !important;
  padding: 0 !important;
  overflow: visible !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row > .et_pb_column {
  display: none !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header {
  display: flex !important;
  flex: 1 1 auto !important;
  width: 100% !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header {
  box-sizing: border-box !important;
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 88px !important;
  padding: 9px 0 !important;
  gap: 18px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-header {
  min-height: 66px !important;
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
  transform-origin: left center !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo-img {
  display: block !important;
  width: auto !important;
  max-width: 104px !important;
  max-height: 70px !important;
  object-fit: contain !important;
  object-position: left center !important;
  transform-origin: left center !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
  max-width: 76px !important;
  max-height: 52px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-actions {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  margin-left: auto !important;
  gap: 14px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-cart,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-burger {
  visibility: visible !important;
  opacity: 1 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-cart {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: max-content !important;
  white-space: nowrap !important;
  margin: 0 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-burger {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  margin: 0 !important;
}

/* Smaller tablets: same logic, slightly tighter measurements only. */
@media (max-width: 900px) and (min-width: 600px) {
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row {
    width: calc(100% - 32px) !important;
    margin-left: 16px !important;
    margin-right: 16px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header {
    min-height: 80px !important;
    gap: 12px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo-img {
    max-width: 92px !important;
    max-height: 64px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
    max-width: 70px !important;
    max-height: 50px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-actions {
    gap: 10px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-search,
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-burger {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    flex-basis: 40px !important;
  }
}

/* Large iPad Pro / Surface tablet portrait and landscape: keep the exact same
   left anchor in normal and sticky; only the logo grows rightward. */
@media (min-width: 1000px) and (max-width: 1450px) {
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row {
    width: calc(100% - 56px) !important;
    margin-left: 28px !important;
    margin-right: 28px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo-img {
    max-width: 112px !important;
    max-height: 76px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
    max-width: 80px !important;
    max-height: 56px !important;
  }
}

/* When Rävenager owns tablet navigation, every legacy Divi/Woo navigation
   surface remains a hidden source only. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-source-column,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-suppressed-row,
body.rmm-managed-tablet.rmm-tablet-master-active .menykolumn,
body.rmm-managed-tablet.rmm-tablet-master-active .menyikoner,
body.rmm-managed-tablet.rmm-tablet-master-active .et_mobile_nav_menu,
body.rmm-managed-tablet.rmm-tablet-master-active .mobile_nav,
body.rmm-managed-tablet.rmm-tablet-master-active .mobile_menu_bar {
  display: none !important;
}

/* ===== v0.12.32: universal cart badge + real normal/sticky logo scaling ===== */

/* One cart design on every viewport and in every header state. */
a.rmm-cart-standard,
button.rmm-cart-standard,
.rmm-cart-standard {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: currentColor !important;
  line-height: 1 !important;
  font-size: 0 !important;
  text-decoration: none !important;
  overflow: visible !important;
}
.rmm-cart-standard::before,
.rmm-cart-standard::after {
  content: none !important;
  display: none !important;
}
.rmm-cart-standard .rmm-cart-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 29px !important;
  height: 29px !important;
  flex: 0 0 29px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.rmm-cart-standard .rmm-cart-icon svg {
  display: block !important;
  width: 29px !important;
  height: 29px !important;
  overflow: visible !important;
}
.rmm-cart-standard .rmm-cart-badge {
  position: absolute !important;
  top: -1px !important;
  right: -4px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  min-width: 18px !important;
  height: 18px !important;
  padding: 0 5px !important;
  border: 2px solid #fff !important;
  border-radius: 999px !important;
  background: #e85a1c !important;
  color: #fff !important;
  font-family: inherit !important;
  font-size: 10.5px !important;
  font-weight: 800 !important;
  line-height: 14px !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  z-index: 3 !important;
  pointer-events: none !important;
}
.rmm-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Tablet master header: force actual image dimensions rather than only max-width.
   The left edge never moves; normal grows to the right, sticky shrinks in place. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo-img {
  transform-origin: left center !important;
  object-position: left center !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active:not(.rmm-runtime-sticky) .rmm-tablet-master-logo-img {
  width: 108px !important;
  max-width: 108px !important;
  height: auto !important;
  max-height: 76px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
  width: 76px !important;
  max-width: 76px !important;
  height: auto !important;
  max-height: 54px !important;
}
@media (max-width: 900px) and (min-width: 600px) {
  body.rmm-managed-tablet.rmm-tablet-master-active:not(.rmm-runtime-sticky) .rmm-tablet-master-logo-img {
    width: 96px !important;
    max-width: 96px !important;
    max-height: 68px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
    width: 70px !important;
    max-width: 70px !important;
    max-height: 50px !important;
  }
}
@media (min-width: 1000px) and (max-width: 1450px) {
  body.rmm-managed-tablet.rmm-tablet-master-active:not(.rmm-runtime-sticky) .rmm-tablet-master-logo-img {
    width: 116px !important;
    max-width: 116px !important;
    max-height: 80px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active.rmm-runtime-sticky .rmm-tablet-master-logo-img {
    width: 80px !important;
    max-width: 80px !important;
    max-height: 56px !important;
  }
}

/* Phones: enforce a genuine size change between normal and sticky. Earlier rules
   often only changed max-width, which cannot enlarge an image with a smaller
   intrinsic/inline width. */
@media (max-width: 767px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active:not(.rmm-runtime-sticky) .headerlogo img,
  body.rmm-mobile-bridge-active:not(.rmm-runtime-sticky) .rmm-home-logo-link img {
    width: clamp(138px, 36vw, 170px) !important;
    max-width: none !important;
    height: auto !important;
    transform-origin: center center !important;
  }
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .headerlogo img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .et-fixed-header .headerlogo img,
  body.rmm-mobile-bridge-active .et-fixed-header .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .et_pb_sticky .headerlogo img,
  body.rmm-mobile-bridge-active .et_pb_sticky .rmm-home-logo-link img {
    width: clamp(82px, 22vw, 108px) !important;
    max-width: none !important;
    height: auto !important;
  }
}

/* Landscape phones can be 800–960px wide but are still phones. Keep the same
   normal > sticky relationship without making the header unnecessarily tall. */
@media (max-width: 1000px) and (max-height: 560px) and (orientation: landscape) {
  body.rmm-mobile-bridge-active:not(.rmm-runtime-sticky) .headerlogo img,
  body.rmm-mobile-bridge-active:not(.rmm-runtime-sticky) .rmm-home-logo-link img {
    width: 96px !important;
    max-width: 96px !important;
    height: auto !important;
    transform-origin: left center !important;
  }
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .headerlogo img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .et-fixed-header .headerlogo img,
  body.rmm-mobile-bridge-active .et-fixed-header .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .et_pb_sticky .headerlogo img,
  body.rmm-mobile-bridge-active .et_pb_sticky .rmm-home-logo-link img {
    width: 68px !important;
    max-width: 68px !important;
    height: auto !important;
    transform-origin: left center !important;
  }
}

/* ===== v0.12.33: deterministic tablet header + iPhone-SE mobile baseline =====
   Tablets use one Rävenager-owned header. Portrait is compact actions only.
   Landscape has room for the complete primary navigation. Normal and sticky
   sizing are driven by the master header itself, not by unreliable Divi clones. */

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header {
  box-sizing: border-box !important;
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 8px 0 !important;
  gap: 16px !important;
  overflow: visible !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal {
  min-height: 86px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky {
  min-height: 62px !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

/* Fixed left anchor: normal logo grows only to the right, sticky shrinks from
   the same left edge. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
  transform-origin: left center !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo-img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: left center !important;
  transform-origin: left center !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img {
  width: 108px !important;
  max-width: 108px !important;
  max-height: 72px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky .rmm-tablet-master-logo-img {
  width: 74px !important;
  max-width: 74px !important;
  max-height: 50px !important;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-nav {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-nav ul {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: clamp(7px, .8vw, 13px) !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  min-width: 0 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-nav li {
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-nav a,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-account {
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  text-decoration: none !important;
  color: inherit !important;
  font-size: clamp(10px, .92vw, 13px) !important;
  font-weight: 650 !important;
  line-height: 1 !important;
  padding: 8px 0 !important;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-actions {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  margin-left: auto !important;
  padding: 0 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-account {
  flex: 0 0 auto !important;
}

/* Own SVG search icon: never rely on Divi's ETmodules font, which rendered as
   the stray U/Y glyph on some tablets. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-search {
  appearance: none !important;
  -webkit-appearance: none !important;
  border: 0 !important;
  background: transparent !important;
  color: currentColor !important;
  font-family: inherit !important;
  font-size: 0 !important;
  line-height: 1 !important;
  padding: 0 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-search::before,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-search::after {
  content: none !important;
  display: none !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-search-icon,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-search-icon svg {
  display: block !important;
  width: 30px !important;
  height: 30px !important;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-burger {
  appearance: none !important;
  -webkit-appearance: none !important;
  border: 0 !important;
  background: transparent !important;
  color: currentColor !important;
  padding: 0 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-bars,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-bars::before,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-bars::after {
  display: block !important;
  width: 28px !important;
  height: 3px !important;
  border-radius: 99px !important;
  background: currentColor !important;
  content: '' !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-bars {
  position: relative !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-bars::before {
  position: absolute !important;
  left: 0 !important;
  top: -9px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-bars::after {
  position: absolute !important;
  left: 0 !important;
  top: 9px !important;
}

/* Portrait tablets: same clean control logic as the good iPhone SE header. */
body.rmm-managed-tablet-portrait.rmm-tablet-master-active .rmm-tablet-master-nav,
body.rmm-managed-tablet-portrait.rmm-tablet-master-active .rmm-tablet-master-account {
  display: none !important;
}
body.rmm-managed-tablet-portrait.rmm-tablet-master-active .rmm-tablet-master-header {
  justify-content: space-between !important;
}
body.rmm-managed-tablet-portrait.rmm-tablet-master-active .rmm-tablet-master-actions {
  margin-left: auto !important;
  gap: 12px !important;
}

/* Landscape tablets: show the complete primary navigation exactly once. */
body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-nav,
body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-account {
  display: flex !important;
}

/* Small landscape tablets such as iPad Mini: fit the same architecture without
   wrapping menu labels. */
@media (min-width: 900px) and (max-width: 1100px) and (orientation: landscape) {
  body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-header {
    gap: 10px !important;
  }
  body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img {
    width: 88px !important;
    max-width: 88px !important;
    max-height: 62px !important;
  }
  body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky .rmm-tablet-master-logo-img {
    width: 66px !important;
    max-width: 66px !important;
    max-height: 48px !important;
  }
  body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-nav ul {
    gap: 6px !important;
  }
  body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-nav a,
  body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-account {
    font-size: 9.5px !important;
  }
  body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-actions {
    gap: 7px !important;
  }
}

/* Large iPad Pro / Surface class tablets: maintain a deliberate left inset and
   let the normal logo use the additional room. */
@media (min-width: 1101px) and (max-width: 1450px) {
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row {
    width: calc(100% - 64px) !important;
    margin-left: 32px !important;
    margin-right: 32px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img {
    width: 116px !important;
    max-width: 116px !important;
    max-height: 78px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky .rmm-tablet-master-logo-img {
    width: 80px !important;
    max-width: 80px !important;
    max-height: 56px !important;
  }
}

/* Reassert source suppression after all old tablet rules. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-source-column,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-suppressed-row,
body.rmm-managed-tablet.rmm-tablet-master-active .menykolumn,
body.rmm-managed-tablet.rmm-tablet-master-active .menyikoner,
body.rmm-managed-tablet.rmm-tablet-master-active .et_mobile_nav_menu,
body.rmm-managed-tablet.rmm-tablet-master-active .mobile_nav,
body.rmm-managed-tablet.rmm-tablet-master-active .mobile_menu_bar {
  display: none !important;
}

/* ===== v0.12.34: final compact phone/tablet landscape policy =====
   Portrait phones remain untouched. All managed tablets and modern landscape
   phones use one Rävenager-owned bar: logo + cart + search + burger. No Divi
   text navigation is allowed to leak into these modes. */

/* Tablet landscape is intentionally compact too. Navigation remains available
   from the burger drawer, so there is never a squeezed or duplicated text row. */
body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-nav,
body.rmm-managed-tablet-landscape.rmm-tablet-master-active .rmm-tablet-master-account,
body.rmm-managed-tablet-portrait.rmm-tablet-master-active .rmm-tablet-master-nav,
body.rmm-managed-tablet-portrait.rmm-tablet-master-active .rmm-tablet-master-account,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-nav,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-account {
  display: none !important;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header {
  justify-content: space-between !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-actions,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-actions {
  margin-left: auto !important;
  gap: 12px !important;
}

/* Make source Divi/Woo navigation completely non-visual in every managed mode. */
body.rmm-tablet-master-active .rmm-tablet-master-row > .et_pb_column,
body.rmm-tablet-master-active .rmm-tablet-source-column,
body.rmm-tablet-master-active .rmm-tablet-suppressed-row,
body.rmm-tablet-master-active .menykolumn,
body.rmm-tablet-master-active .menyikoner,
body.rmm-tablet-master-active .et_mobile_nav_menu,
body.rmm-tablet-master-active .mobile_nav,
body.rmm-tablet-master-active .mobile_menu_bar {
  display: none !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header {
  display: flex !important;
}

/* Stable normal/sticky proportions. The left logo anchor never moves; only its
   width and the bar height change. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal {
  min-height: 88px !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img {
  width: 104px !important;
  max-width: 104px !important;
  max-height: 72px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky {
  min-height: 62px !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky .rmm-tablet-master-logo-img {
  width: 72px !important;
  max-width: 72px !important;
  max-height: 50px !important;
}

/* Wide phone landscape follows the iPhone SE visual concept, scaled for the
   wider viewport: larger normal logo, smaller sticky logo, same action trio. */
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row {
  width: calc(100% - 28px) !important;
  margin-left: 14px !important;
  margin-right: 14px !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img {
  width: 90px !important;
  max-width: 90px !important;
  max-height: 64px !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky .rmm-tablet-master-logo-img {
  width: 66px !important;
  max-width: 66px !important;
  max-height: 48px !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-burger,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-cart {
  flex: 0 0 auto !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-burger {
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
}

/* Tablet edge spacing stays stable between orientations and states. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row {
  width: calc(100% - 48px) !important;
  margin-left: 24px !important;
  margin-right: 24px !important;
}

/* Search is always the SVG control, never Divi's icon-font glyph. */
body.rmm-tablet-master-active .rmm-tablet-master-search {
  font-family: inherit !important;
  font-size: 0 !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-search::before,
body.rmm-tablet-master-active .rmm-tablet-master-search::after {
  display: none !important;
  content: none !important;
}
body.rmm-tablet-master-active .rmm-tablet-search-icon,
body.rmm-tablet-master-active .rmm-tablet-search-icon svg {
  display: block !important;
  width: 30px !important;
  height: 30px !important;
}

/* ===== v0.12.35: proportional logo + smooth responsive header =====
   Tablet portrait/landscape and managed phone landscape share one geometry.
   Phone portrait keeps its existing layout; it only gains smoother transitions. */

/* No design changes on ordinary desktop/phone portrait, only soften existing
   theme state changes when those layouts already resize their logo/header. */
.headerlogo img,
.rmm-home-logo-link img {
  transition: width .30s cubic-bezier(.22,.61,.36,1),
              height .30s cubic-bezier(.22,.61,.36,1),
              max-width .30s cubic-bezier(.22,.61,.36,1),
              max-height .30s cubic-bezier(.22,.61,.36,1),
              transform .30s cubic-bezier(.22,.61,.36,1) !important;
}

/* Managed responsive header: use an explicit height in each state so logo size
   can be a true percentage of the white bar and remain vertically centered. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  overflow: visible !important;
  transition: height .30s cubic-bezier(.22,.61,.36,1),
              min-height .30s cubic-bezier(.22,.61,.36,1),
              padding .30s cubic-bezier(.22,.61,.36,1) !important;
  will-change: height;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal {
  height: 92px !important;
  min-height: 92px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky {
  height: 64px !important;
  min-height: 64px !important;
}

/* Logo = ~67% of bar height in both states. The left anchor stays fixed and the
   image grows only toward the right, avoiding the apparent sideways jump. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  align-self: center !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  transform-origin: left center !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo-img,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-logo-img {
  display: block !important;
  width: auto !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: left center !important;
  transform-origin: left center !important;
  transition: height .30s cubic-bezier(.22,.61,.36,1),
              max-height .30s cubic-bezier(.22,.61,.36,1),
              transform .30s cubic-bezier(.22,.61,.36,1) !important;
  will-change: height;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img {
  height: 62px !important;
  max-height: 62px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky .rmm-tablet-master-logo-img,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky .rmm-tablet-master-logo-img {
  height: 43px !important;
  max-height: 43px !important;
}

/* Actions are always centered vertically inside the white bar. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-actions,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-actions {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  align-self: center !important;
  height: 100% !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-cart,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-burger,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-cart,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-burger {
  align-self: center !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  transform: translateY(0) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-burger,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-burger {
  width: 42px !important;
  min-width: 42px !important;
  height: 42px !important;
}

/* Earlier model-specific rules used fixed logo widths. Height is now the single
   sizing authority so iPad Mini, Pro, Surface and phone landscape behave alike. */
@media (orientation: landscape) {
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img,
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky .rmm-tablet-master-logo-img,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky .rmm-tablet-master-logo-img {
    width: auto !important;
    max-width: none !important;
  }
}
@media (orientation: portrait) {
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img,
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky .rmm-tablet-master-logo-img {
    width: auto !important;
    max-width: none !important;
  }
}

/* Reduce transition work for users who explicitly request reduced motion. */
@media (prefers-reduced-motion: reduce) {
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header,
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo-img,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-logo-img,
  .headerlogo img,
  .rmm-home-logo-link img {
    transition: none !important;
  }
}

/* ===== v0.12.36: larger responsive tablet header + reliable touch/sticky ===== */

/* Hide legacy Divi navigation before the JS-owned header is painted. */
@media (pointer: coarse) and (min-width: 768px) and (max-width: 1450px) {
  .menykolumn,
  .menyikoner .et_pb_menu__menu,
  .menyikoner .et-menu-nav,
  .menyikoner ul.et-menu,
  .et_mobile_nav_menu,
  .mobile_nav,
  .mobile_menu_bar {
    visibility: hidden !important;
  }
  body.rmm-tablet-master-active .rmm-tablet-master-header,
  body.rmm-tablet-master-active .rmm-tablet-master-header * {
    visibility: visible !important;
  }
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row {
  min-height: 120px !important;
  position: relative !important;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  max-width: none !important;
  padding-left: clamp(22px, 3vw, 42px) !important;
  padding-right: clamp(22px, 3vw, 42px) !important;
  background: #fff !important;
  transition: height .28s cubic-bezier(.22,.61,.36,1), min-height .28s cubic-bezier(.22,.61,.36,1), box-shadow .20s ease !important;
  transform: translateZ(0) !important;
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal {
  position: relative !important;
  inset: auto !important;
  height: 120px !important;
  min-height: 120px !important;
  box-shadow: none !important;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 2147481200 !important;
  height: 82px !important;
  min-height: 82px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.12) !important;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  height: 100% !important;
  flex: 0 0 auto !important;
  transform-origin: left center !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo-img {
  display: block !important;
  width: auto !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: left center !important;
  transform-origin: left center !important;
  transition: height .28s cubic-bezier(.22,.61,.36,1), max-height .28s cubic-bezier(.22,.61,.36,1) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img {
  height: 84px !important;
  max-height: 84px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-sticky .rmm-tablet-master-logo-img {
  height: 58px !important;
  max-height: 58px !important;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-actions {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  align-self: center !important;
  height: 100% !important;
  gap: 24px !important;
  margin-left: auto !important;
  position: relative !important;
  z-index: 3 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-cart,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-burger {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 48px !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
  z-index: 4 !important;
  pointer-events: auto !important;
  touch-action: manipulation !important;
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-burger {
  width: 48px !important;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-nav,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-account {
  display: none !important;
}

body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-cart,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-burger,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-logo {
  visibility: visible !important;
  opacity: 1 !important;
}

@media (min-width: 768px) and (max-width: 900px) {
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-actions {
    gap: 20px !important;
  }
}

/* ===== v0.12.37: stable dual-state responsive header =====
   Normal and sticky bars are now separate surfaces. The normal bar stays in the
   document flow; the sticky bar lives directly under <body>. Scrolling only
   toggles one body class, so repeated up/down movement cannot orphan the header
   inside a transformed Divi wrapper or lock controls during transition. */

body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 2147482001 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate3d(0,-10px,0) !important;
  transition: opacity .34s ease,
              transform .42s cubic-bezier(.22,.61,.36,1),
              visibility 0s linear .42s !important;
  will-change: opacity, transform !important;
}
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate3d(0,0,0) !important;
  transition: opacity .32s ease,
              transform .42s cubic-bezier(.22,.61,.36,1),
              visibility 0s linear 0s !important;
}

/* The in-flow bar never changes role while the page is moving. */
body.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal {
  position: relative !important;
  inset: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
}

/* Normal/sticky dimensions remain intentionally different but no longer animate
   the same DOM node. This removes the height/logo oscillation seen on fast scroll. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal {
  height: 120px !important;
  min-height: 120px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone,
body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  height: 82px !important;
  min-height: 82px !important;
  padding-left: clamp(22px, 3vw, 42px) !important;
  padding-right: clamp(22px, 3vw, 42px) !important;
  background: #fff !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.12) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-header.rmm-master-normal .rmm-tablet-master-logo-img {
  height: 84px !important;
  max-height: 84px !important;
  width: auto !important;
  max-width: none !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-logo-img,
body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-logo-img {
  height: 58px !important;
  max-height: 58px !important;
  width: auto !important;
  max-width: none !important;
}

/* Generous, invariant touch spacing in both bars. */
body.rmm-tablet-master-active .rmm-tablet-master-actions {
  gap: 24px !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-cart,
body.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-tablet-master-active .rmm-tablet-master-burger {
  min-width: 48px !important;
  width: 48px !important;
  height: 48px !important;
  flex: 0 0 48px !important;
  pointer-events: auto !important;
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: transparent !important;
}

/* One drawer surface for every Rävenager-managed tablet / phone-landscape mode. */
body.rmm-tablet-master-active .rmm-mobile-site-menu {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483000 !important;
  display: block !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
body.rmm-tablet-master-active .rmm-mobile-site-menu.rmm-mobile-open {
  visibility: visible !important;
  pointer-events: auto !important;
}
body.rmm-tablet-master-active .rmm-mobile-site-backdrop {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  background: rgba(15,18,21,.38) !important;
  opacity: 0 !important;
  transition: opacity .20s ease !important;
  backdrop-filter: blur(1.5px) !important;
  -webkit-backdrop-filter: blur(1.5px) !important;
}
body.rmm-tablet-master-active .rmm-mobile-open .rmm-mobile-site-backdrop {
  opacity: 1 !important;
}
body.rmm-tablet-master-active .rmm-mobile-site-drawer {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  bottom: 10px !important;
  left: auto !important;
  display: block !important;
  width: min(460px, calc(100vw - 20px)) !important;
  max-width: calc(100vw - 20px) !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  border: 1px solid rgba(0,0,0,.075) !important;
  border-radius: 18px !important;
  background: #fff !important;
  color: #25282b !important;
  box-shadow: -12px 12px 38px rgba(0,0,0,.20) !important;
  opacity: 0 !important;
  transform: translate3d(22px,0,0) scale(.992) !important;
  transition: transform .22s cubic-bezier(.22,.61,.36,1), opacity .18s ease !important;
}
body.rmm-tablet-master-active .rmm-mobile-open .rmm-mobile-site-drawer {
  opacity: 1 !important;
  transform: translate3d(0,0,0) scale(1) !important;
}
body.rmm-tablet-master-active.rmm-mobile-menu-open {
  overflow: hidden !important;
}

/* Native Rävenager search panel. It no longer delegates to Divi's hidden search
   module, so the keyboard and the visible input always appear together. */
.rmm-master-search-overlay {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483600 !important;
  display: block !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
.rmm-master-search-overlay.rmm-search-open {
  visibility: visible !important;
  pointer-events: auto !important;
}
.rmm-master-search-backdrop {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  background: rgba(15,18,21,.42) !important;
  opacity: 0 !important;
  transition: opacity .20s ease !important;
}
.rmm-search-open .rmm-master-search-backdrop { opacity: 1 !important; }
.rmm-master-search-panel {
  position: absolute !important;
  top: max(18px, env(safe-area-inset-top)) !important;
  left: 50% !important;
  width: min(720px, calc(100vw - 32px)) !important;
  padding: 12px !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 18px 54px rgba(0,0,0,.24) !important;
  opacity: 0 !important;
  transform: translate3d(-50%,-10px,0) scale(.99) !important;
  transition: opacity .20s ease, transform .24s cubic-bezier(.22,.61,.36,1) !important;
}
.rmm-search-open .rmm-master-search-panel {
  opacity: 1 !important;
  transform: translate3d(-50%,0,0) scale(1) !important;
}
.rmm-master-search-form {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 48px 48px !important;
  gap: 8px !important;
  align-items: center !important;
}
.rmm-master-search-input {
  display: block !important;
  width: 100% !important;
  height: 52px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  border: 1px solid rgba(0,0,0,.14) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #202124 !important;
  font: inherit !important;
  font-size: 16px !important;
  outline: none !important;
}
.rmm-master-search-input:focus {
  border-color: rgba(0,0,0,.34) !important;
  box-shadow: 0 0 0 3px rgba(0,0,0,.06) !important;
}
.rmm-master-search-submit,
.rmm-master-search-close {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: rgba(0,0,0,.045) !important;
  color: #202124 !important;
  cursor: pointer !important;
}
.rmm-master-search-submit .rmm-tablet-search-icon,
.rmm-master-search-submit .rmm-tablet-search-icon svg {
  width: 27px !important;
  height: 27px !important;
}
.rmm-master-search-close {
  font-size: 30px !important;
  line-height: 1 !important;
}
body.rmm-master-search-open { overflow: hidden !important; }

/* Phone portrait design remains unchanged; only make its existing normal/sticky
   interpolation less abrupt. */
@media (max-width: 767px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .headerlogo img,
  body.rmm-mobile-bridge-active .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .rmm-action-row,
  body.rmm-mobile-bridge-active .rmm-action-column,
  body.rmm-mobile-bridge-active .menyikoner {
    transition-duration: .42s !important;
    transition-timing-function: cubic-bezier(.22,.61,.36,1) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone,
  body.rmm-tablet-master-active .rmm-mobile-site-backdrop,
  body.rmm-tablet-master-active .rmm-mobile-site-drawer,
  .rmm-master-search-backdrop,
  .rmm-master-search-panel {
    transition: none !important;
  }
}

/* ===== v0.12.39: stable infinite sticky cycle + calmer motion ===== */

/* Every phone in landscape now uses the same Rävenager-owned bar. This prevents
   Divi text navigation from resurfacing on 568–767px landscape phones. */
@media (orientation: landscape) and (min-width: 560px) and (max-width: 1100px) and (max-height: 599px) {
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-nav,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-account,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .menykolumn,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .menyikoner,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .et_mobile_nav_menu,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .mobile_nav,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .mobile_menu_bar {
    display: none !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header {
    display: flex !important;
  }
}

/* Slow the entrance slightly and reduce travel so normal → sticky feels as calm
   as sticky → normal. Pointer events are deterministic in either state. */
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  transform: translate3d(0,-5px,0) !important;
  transition: opacity .48s cubic-bezier(.22,.61,.36,1),
              transform .58s cubic-bezier(.22,.61,.36,1),
              visibility 0s linear .58s !important;
}
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  transform: translate3d(0,0,0) !important;
  transition: opacity .48s cubic-bezier(.22,.61,.36,1),
              transform .58s cubic-bezier(.22,.61,.36,1),
              visibility 0s linear 0s !important;
}

/* Portrait phone visuals remain exactly the same; only the existing transition
   is made asymmetric so entering sticky is softer without slowing the return. */
@media (max-width: 767px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .headerlogo img,
  body.rmm-mobile-bridge-active .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .rmm-action-row,
  body.rmm-mobile-bridge-active .rmm-action-column,
  body.rmm-mobile-bridge-active .menyikoner {
    transition-property: width, max-width, height, max-height, padding, margin, transform, opacity !important;
    transition-duration: .46s !important;
    transition-timing-function: cubic-bezier(.22,.61,.36,1) !important;
  }
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .headerlogo img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-row,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-column,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .menyikoner {
    transition-duration: .62s !important;
  }
}

/* Keep controls immediately clickable throughout every sticky transition. */
body.rmm-tablet-master-active .rmm-tablet-master-cart,
body.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-tablet-master-active .rmm-tablet-master-burger {
  pointer-events: auto !important;
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: transparent !important;
}

/* ===== v0.12.40: sticky state lockstep + no duplicate landscape bar ===== */

/* Managed phone-landscape/tablet modes use a single visible bar per state.
   When the fixed sticky surface is active, hide the in-flow copy visually so a
   second normal bar can never appear immediately underneath it. The row keeps
   its layout height, preventing content jumps. */
body.rmm-tablet-master-active.rmm-master-stuck .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity .28s cubic-bezier(.22,.61,.36,1), visibility 0s linear .28s !important;
}
body.rmm-tablet-master-active:not(.rmm-master-stuck) .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity .34s cubic-bezier(.22,.61,.36,1), visibility 0s linear 0s !important;
}

/* Sticky clone uses the same horizontal anchor as the normal responsive bar.
   This stops the logo shifting left when landscape phones enter sticky mode. */
body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  padding-left: 18px !important;
  padding-right: 18px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  padding-left: clamp(22px, 3vw, 42px) !important;
  padding-right: clamp(22px, 3vw, 42px) !important;
}

/* Slightly calmer cross-fade for the responsive fixed surface. */
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  transform: translate3d(0,-3px,0) !important;
  transition: opacity .58s cubic-bezier(.22,.61,.36,1),
              transform .64s cubic-bezier(.22,.61,.36,1),
              visibility 0s linear .64s !important;
}
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  transform: translate3d(0,0,0) !important;
  transition: opacity .58s cubic-bezier(.22,.61,.36,1),
              transform .64s cubic-bezier(.22,.61,.36,1),
              visibility 0s linear 0s !important;
}

/* Portrait phone layout stays unchanged; only normal -> sticky becomes slower
   and smoother. Sticky -> normal remains responsive. */
@media (max-width: 767px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .headerlogo img,
  body.rmm-mobile-bridge-active .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .rmm-action-row,
  body.rmm-mobile-bridge-active .rmm-action-column,
  body.rmm-mobile-bridge-active .menyikoner {
    transition-property: width, max-width, height, max-height, padding, margin, transform, opacity !important;
    transition-duration: .50s !important;
    transition-timing-function: cubic-bezier(.22,.61,.36,1) !important;
  }
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .headerlogo img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-row,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-column,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .menyikoner {
    transition-duration: .68s !important;
  }
}

/* ===== v0.12.41: one stable host + deterministic sticky handoff =====
   The responsive header now keeps one permanent normal host row. Divi's sticky
   clones remain hidden data sources only; they never receive another master bar. */
body.rmm-tablet-master-active .rmm-tablet-suppressed-row,
body.rmm-tablet-master-active .rmm-tablet-suppressed-row .rmm-tablet-master-header,
body.rmm-tablet-master-active .rmm-tablet-suppressed-row .headerlogo,
body.rmm-tablet-master-active .rmm-tablet-suppressed-row .menykolumn,
body.rmm-tablet-master-active .rmm-tablet-suppressed-row .menyikoner {
  display: none !important;
}

/* Normal and sticky use the same horizontal anchor, so the logo/actions never
   jump sideways when the fixed bar takes over. */
body.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  box-sizing: border-box !important;
  padding-left: clamp(18px, 3vw, 42px) !important;
  padding-right: clamp(18px, 3vw, 42px) !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal,
body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  padding-left: 18px !important;
  padding-right: 18px !important;
}

/* Slower, symmetric cross-fade. The normal bar remains in document flow only as
   a spacer once sticky is active; it cannot become a second visible navigation. */
body.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal {
  transition: opacity .46s cubic-bezier(.22,.61,.36,1),
              visibility 0s linear 0s !important;
}
body.rmm-tablet-master-active.rmm-master-stuck .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity .46s cubic-bezier(.22,.61,.36,1),
              visibility 0s linear .46s !important;
}
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate3d(0,-4px,0) !important;
  transition: opacity .52s cubic-bezier(.22,.61,.36,1),
              transform .58s cubic-bezier(.22,.61,.36,1),
              visibility 0s linear .58s !important;
}
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate3d(0,0,0) !important;
  transition: opacity .52s cubic-bezier(.22,.61,.36,1),
              transform .58s cubic-bezier(.22,.61,.36,1),
              visibility 0s linear 0s !important;
}

/* Controls must stay interactive during the whole handoff. */
body.rmm-tablet-master-active .rmm-tablet-master-cart,
body.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-tablet-master-active .rmm-tablet-master-burger {
  pointer-events: auto !important;
  touch-action: manipulation !important;
}

/* ===== v0.12.42: single sticky layer + guaranteed smooth handoff ===== */

/* Divi's dynamically-created fixed/sticky wrappers are data sources only while
   Rävenager owns responsive navigation. Hide the entire wrapper so its white
   background can never appear as a second sticky menu further down the page. */
body.rmm-tablet-master-active .rmm-divi-sticky-suppressed {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Keep normal and fixed surfaces geometrically identical at the START of the
   handoff. The fixed clone then shrinks smoothly to sticky dimensions. This
   avoids the visual jump caused by cross-fading between two pre-sized logos. */
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  height: 120px !important;
  min-height: 120px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate3d(0,-2px,0) !important;
  transition:
    height .72s cubic-bezier(.16,1,.3,1),
    min-height .72s cubic-bezier(.16,1,.3,1),
    opacity .54s cubic-bezier(.16,1,.3,1),
    transform .72s cubic-bezier(.16,1,.3,1),
    visibility 0s linear .72s !important;
}
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-logo-img {
  height: 84px !important;
  max-height: 84px !important;
  transition:
    height .72s cubic-bezier(.16,1,.3,1),
    max-height .72s cubic-bezier(.16,1,.3,1) !important;
}
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  height: 82px !important;
  min-height: 82px !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate3d(0,0,0) !important;
  transition:
    height .72s cubic-bezier(.16,1,.3,1),
    min-height .72s cubic-bezier(.16,1,.3,1),
    opacity .54s cubic-bezier(.16,1,.3,1),
    transform .72s cubic-bezier(.16,1,.3,1),
    visibility 0s linear 0s !important;
}
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-logo-img {
  height: 58px !important;
  max-height: 58px !important;
}

/* Fade the in-flow surface on the same curve. It remains a layout spacer but
   cannot become a second interactive layer. */
body.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal {
  transition: opacity .54s cubic-bezier(.16,1,.3,1), visibility 0s linear 0s !important;
}
body.rmm-tablet-master-active.rmm-master-stuck .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity .54s cubic-bezier(.16,1,.3,1), visibility 0s linear .54s !important;
}

/* Portrait phones keep their design but use the same calmer motion curve in
   both directions. */
@media (max-width: 767px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .headerlogo img,
  body.rmm-mobile-bridge-active .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .rmm-action-row,
  body.rmm-mobile-bridge-active .rmm-action-column,
  body.rmm-mobile-bridge-active .menyikoner,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .headerlogo img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-row,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-column,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .menyikoner {
    transition-duration: .64s !important;
    transition-timing-function: cubic-bezier(.16,1,.3,1) !important;
  }
}

/* Contact is intentionally visible as a normal top-level drawer item. */
.rmm-mobile-contact-item {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* ===== v0.12.43: one sticky owner + slower continuous handoff ===== */

/* Divi must never create a second responsive sticky state behind Rävenager.
   If Divi marks an ancestor of the real host as sticky/fixed, keep that
   ancestor in normal document flow. Any separate Divi sticky clone stays
   completely suppressed. The only fixed responsive header is therefore the
   Rävenager sticky clone attached directly to <body>. */
body.rmm-tablet-master-active .rmm-divi-native-sticky-host {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  inset: auto !important;
  transform: none !important;
  translate: none !important;
  z-index: auto !important;
  box-shadow: none !important;
}
body.rmm-tablet-master-active .rmm-divi-sticky-suppressed {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Keep both responsive surfaces on the exact same horizontal anchors. Browser
   chrome appearing/disappearing must not produce a second logo/action position. */
body.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  box-sizing: border-box !important;
  align-items: center !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal,
body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  padding-left: 18px !important;
  padding-right: 18px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal,
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  padding-left: clamp(22px, 3vw, 42px) !important;
  padding-right: clamp(22px, 3vw, 42px) !important;
}

/* Much slower geometry interpolation in both directions. The sticky surface
   begins with normal dimensions and eases continuously to its compact size. */
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  height: 120px !important;
  min-height: 120px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate3d(0,-2px,0) !important;
  transition:
    height 1.08s cubic-bezier(.2,.72,.2,1),
    min-height 1.08s cubic-bezier(.2,.72,.2,1),
    opacity .42s ease,
    transform .82s cubic-bezier(.2,.72,.2,1),
    box-shadow .82s ease,
    visibility 0s linear 1.08s !important;
}
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-logo-img {
  height: 84px !important;
  max-height: 84px !important;
  transition:
    height 1.08s cubic-bezier(.2,.72,.2,1),
    max-height 1.08s cubic-bezier(.2,.72,.2,1) !important;
}
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  height: 82px !important;
  min-height: 82px !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate3d(0,0,0) !important;
  transition:
    height 1.08s cubic-bezier(.2,.72,.2,1),
    min-height 1.08s cubic-bezier(.2,.72,.2,1),
    opacity .42s ease,
    transform .82s cubic-bezier(.2,.72,.2,1),
    box-shadow .82s ease,
    visibility 0s linear 0s !important;
}
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-logo-img {
  height: 58px !important;
  max-height: 58px !important;
}

/* The normal copy is only the in-flow surface/spacer during sticky. It fades on
   the same calm curve and can never become an interactive second layer. */
body.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal {
  opacity: 1 !important;
  visibility: visible !important;
  transition: opacity .58s ease, visibility 0s linear 0s !important;
}
body.rmm-tablet-master-active.rmm-master-stuck .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity .58s ease, visibility 0s linear .58s !important;
}

/* Logo and controls always stay vertically centered while dimensions animate. */
body.rmm-tablet-master-active .rmm-tablet-master-logo,
body.rmm-tablet-master-active .rmm-tablet-master-actions,
body.rmm-tablet-master-active .rmm-tablet-master-cart,
body.rmm-tablet-master-active .rmm-tablet-master-search,
body.rmm-tablet-master-active .rmm-tablet-master-burger {
  align-self: center !important;
}

/* Portrait phones retain their existing layout, only the sticky interpolation
   is slowed down so normal <-> sticky has the same calm character. */
@media (max-width: 767px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .headerlogo img,
  body.rmm-mobile-bridge-active .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .rmm-action-row,
  body.rmm-mobile-bridge-active .rmm-action-column,
  body.rmm-mobile-bridge-active .menyikoner,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .headerlogo img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-row,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-column,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .menyikoner {
    transition-duration: .82s !important;
    transition-timing-function: cubic-bezier(.2,.72,.2,1) !important;
  }
}

/* ===== v0.12.44: one persistent responsive surface + immediate touch =====
   Managed phone-landscape/tablet modes now render only one visible Rävenager
   header surface. The body-level surface is present from page load and simply
   interpolates between normal and sticky geometry. This removes the cross-fade
   between two bars and prevents Chrome's collapsing address bar from exposing a
   second Divi/Rävenager state. */

body.rmm-tablet-master-active .rmm-tablet-master-row > .rmm-tablet-master-header.rmm-master-normal {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: none !important;
}

body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  height: 120px !important;
  min-height: 120px !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate3d(0,0,0) !important;
  background: #fff !important;
  box-shadow: none !important;
  z-index: 2147482001 !important;
  will-change: height, min-height, box-shadow !important;
  transition:
    height 1.05s cubic-bezier(.22,.72,.18,1),
    min-height 1.05s cubic-bezier(.22,.72,.18,1),
    box-shadow .72s ease !important;
}

body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-logo-img {
  height: 84px !important;
  max-height: 84px !important;
  width: auto !important;
  max-width: none !important;
  transition:
    height 1.05s cubic-bezier(.22,.72,.18,1),
    max-height 1.05s cubic-bezier(.22,.72,.18,1) !important;
}

body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  height: 82px !important;
  min-height: 82px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.12) !important;
}
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-logo-img {
  height: 58px !important;
  max-height: 58px !important;
}

/* Keep the same horizontal anchors through the complete transition. */
body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  padding-left: 18px !important;
  padding-right: 18px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone {
  padding-left: clamp(22px, 3vw, 42px) !important;
  padding-right: clamp(22px, 3vw, 42px) !important;
}
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-actions {
  align-self: center !important;
  height: 100% !important;
  margin-left: auto !important;
}
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-logo,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-cart,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-search,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-tablet-sticky-clone .rmm-tablet-master-burger {
  align-self: center !important;
}

/* The source row is now only the 120px layout spacer in managed modes. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row,
body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row {
  min-height: 120px !important;
}

/* Drawer header contains only the close control. */
.rmm-mobile-site-title {
  display: none !important;
}
body.rmm-mobile-bridge-active .rmm-mobile-site-head,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-head,
body.rmm-tablet-portrait-drawer .rmm-mobile-site-head {
  justify-content: flex-end !important;
  min-height: 54px !important;
  padding: 7px 12px !important;
}
.rmm-mobile-site-close {
  margin-left: auto !important;
  touch-action: manipulation !important;
}

/* First touch must reach the controls even while momentum scrolling is active. */
.rmm-mobile-launcher,
body.rmm-tablet-master-active .rmm-tablet-master-burger,
body.rmm-tablet-master-active .rmm-tablet-master-search {
  touch-action: manipulation !important;
  pointer-events: auto !important;
  -webkit-tap-highlight-color: transparent !important;
}

/* Phone portrait keeps its existing geometry, but state changes are deliberately
   slower and reversible so normal <-> sticky does not snap. */
@media (max-width: 767px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .headerlogo img,
  body.rmm-mobile-bridge-active .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .rmm-action-row,
  body.rmm-mobile-bridge-active .rmm-action-column,
  body.rmm-mobile-bridge-active .menyikoner,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .headerlogo img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-row,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-column,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .menyikoner {
    transition-duration: 1.05s !important;
    transition-timing-function: cubic-bezier(.22,.72,.18,1) !important;
  }
}

/* ===== v0.12.45: one physical responsive header + clean drawer ===== */

/* The original Divi row is only a layout spacer in managed tablet and phone
   landscape modes. Hide every child, not just known module classes, so an
   unclassified logo/menu clone can never leak through as a second white row. */
body.rmm-tablet-master-active .rmm-tablet-master-row {
  display: block !important;
  position: relative !important;
  height: 120px !important;
  min-height: 120px !important;
  max-height: 120px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: none !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-row > * {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
body.rmm-tablet-master-active .rmm-tablet-suppressed-row {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Exactly one body-level Rävenager surface is visible. All geometry is defined
   here so older rmm-runtime-sticky and Divi rules cannot introduce a second
   size, padding or horizontal anchor later in the same scroll. */
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
  position: fixed !important;
  inset: 0 0 auto 0 !important;
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 120px !important;
  min-height: 120px !important;
  max-height: 120px !important;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate3d(0,0,0) !important;
  background: #fff !important;
  box-shadow: none !important;
  z-index: 2147482001 !important;
  contain: layout paint style !important;
  will-change: height, min-height, max-height, box-shadow !important;
  transition:
    height 1.40s cubic-bezier(.25,.10,.25,1),
    min-height 1.40s cubic-bezier(.25,.10,.25,1),
    max-height 1.40s cubic-bezier(.25,.10,.25,1),
    box-shadow 1.10s ease !important;
}
body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
  padding-left: 18px !important;
  padding-right: 18px !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
  padding-left: clamp(22px, 3vw, 42px) !important;
  padding-right: clamp(22px, 3vw, 42px) !important;
}
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
  height: 82px !important;
  min-height: 82px !important;
  max-height: 82px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.12) !important;
}

body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-actions,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-cart,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-search,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-burger {
  align-self: center !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  transform: none !important;
}
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  display: block !important;
  width: auto !important;
  max-width: none !important;
  height: 84px !important;
  min-height: 0 !important;
  max-height: 84px !important;
  margin: 0 !important;
  transform: none !important;
  transition:
    height 1.40s cubic-bezier(.25,.10,.25,1),
    max-height 1.40s cubic-bezier(.25,.10,.25,1) !important;
}
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  height: 58px !important;
  max-height: 58px !important;
}
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-actions {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  height: 100% !important;
  margin-left: auto !important;
  gap: 24px !important;
  position: relative !important;
  z-index: 3 !important;
}
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-cart,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-search,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-burger {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 48px !important;
  width: 48px !important;
  min-width: 48px !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: auto !important;
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: transparent !important;
}
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-nav,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-account {
  display: none !important;
}

/* Divi sticky wrappers remain data only. The wrapper containing the spacer is
   forced back into ordinary flow; separate Divi sticky clones are invisible. */
body.rmm-tablet-master-active .rmm-divi-native-sticky-host {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  translate: none !important;
  z-index: auto !important;
  box-shadow: none !important;
}
body.rmm-tablet-master-active .rmm-divi-sticky-suppressed {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* The close control floats over the first menu row instead of consuming a
   separate white header row. */
.rmm-mobile-site-head,
.rmm-mobile-site-title {
  display: none !important;
}
.rmm-mobile-site-drawer {
  touch-action: pan-y !important;
}
.rmm-mobile-site-close,
body.rmm-mobile-bridge-active .rmm-mobile-site-close,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-close,
body.rmm-tablet-portrait-drawer .rmm-mobile-site-close {
  position: sticky !important;
  top: max(8px, env(safe-area-inset-top)) !important;
  right: auto !important;
  z-index: 9 !important;
  display: grid !important;
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  place-items: center !important;
  margin: 8px 8px -48px auto !important;
  padding: 0 !important;
  border: 1px solid rgba(0,0,0,.09) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.97) !important;
  color: inherit !important;
  font-size: 28px !important;
  line-height: 1 !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.04) !important;
  pointer-events: auto !important;
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: transparent !important;
}
.rmm-mobile-site-list,
body.rmm-mobile-bridge-active .rmm-mobile-site-list,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-list,
body.rmm-tablet-portrait-drawer .rmm-mobile-site-list {
  padding-top: 0 !important;
}
.rmm-mobile-site-list > .rmm-mobile-top-item:first-child > .rmm-mobile-row {
  padding-right: 52px !important;
}

/* Phone portrait keeps the existing dimensions and placement. Only the motion
   timing is changed so both directions feel calm and continuous. */
@media (max-width: 767px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .headerlogo img,
  body.rmm-mobile-bridge-active .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .rmm-action-row,
  body.rmm-mobile-bridge-active .rmm-action-column,
  body.rmm-mobile-bridge-active .menyikoner,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .headerlogo img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-row,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-column,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .menyikoner {
    transition-property: width, max-width, height, max-height, padding, margin, transform, opacity !important;
    transition-duration: 1.35s !important;
    transition-timing-function: cubic-bezier(.25,.10,.25,1) !important;
  }
}


/* ===== v0.12.46: responsive card drawer + reliable landscape sticky ===== */

/* The menu is a content-sized card on every phone/tablet. The card grows only
   as far as its content needs; long branches scroll inside the card while all
   outer edges remain visible. */
body.rmm-mobile-bridge-active .rmm-mobile-site-drawer,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-drawer,
body.rmm-tablet-portrait-drawer .rmm-mobile-site-drawer,
body.rmm-tablet-master-active .rmm-mobile-site-drawer {
  position: absolute !important;
  top: max(10px, env(safe-area-inset-top)) !important;
  right: max(10px, env(safe-area-inset-right)) !important;
  bottom: auto !important;
  left: auto !important;
  width: min(430px, calc(100vw - 20px)) !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: calc(100vh - 20px) !important;
  max-height: calc(100dvh - 20px) !important;
  max-height: calc(100svh - 20px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 12px 40px rgba(0,0,0,.20) !important;
  -webkit-overflow-scrolling: touch !important;
}
body.rmm-mobile-bridge-active .rmm-mobile-open .rmm-mobile-site-drawer,
body.rmm-tablet-landscape-drawer .rmm-mobile-open .rmm-mobile-site-drawer,
body.rmm-tablet-portrait-drawer .rmm-mobile-open .rmm-mobile-site-drawer,
body.rmm-tablet-master-active .rmm-mobile-open .rmm-mobile-site-drawer {
  opacity: 1 !important;
  transform: translate3d(0,0,0) scale(1) !important;
}
body.rmm-mobile-bridge-active .rmm-mobile-site-list,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-list,
body.rmm-tablet-portrait-drawer .rmm-mobile-site-list,
body.rmm-tablet-master-active .rmm-mobile-site-list {
  padding: 6px 12px 10px !important;
}

/* Landscape phones have little vertical room. Compact rows let the complete
   top level fit whenever possible; expanded categories still scroll internally. */
@media (orientation: landscape) and (max-height: 599px) {
  body.rmm-mobile-bridge-active .rmm-mobile-row {
    min-height: 40px !important;
    gap: 7px !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-row > a,
  body.rmm-mobile-bridge-active .rmm-mobile-row > span {
    padding: 9px 4px !important;
    font-size: 13px !important;
    line-height: 1.18 !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-toggle {
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-site-close {
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 6px 6px -42px auto !important;
    font-size: 24px !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-site-list > .rmm-mobile-top-item:first-child > .rmm-mobile-row {
    padding-right: 44px !important;
  }
}

/* Phone portrait keeps the established layout. On A54-sized and similarly wide
   phones the normal logo can use the free vertical space, while the sticky logo
   remains compact. The left edge stays anchored during the interpolation. */
@media (min-width: 390px) and (max-width: 767px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active:not(.rmm-runtime-sticky) .headerlogo img,
  body.rmm-mobile-bridge-active:not(.rmm-runtime-sticky) .rmm-home-logo-link img {
    width: clamp(158px, 40vw, 176px) !important;
    max-width: none !important;
    height: auto !important;
    transform-origin: left center !important;
  }
}

/* Faster than 0.12.45, but still smooth. Both normal -> sticky and sticky ->
   normal use the same reversible curve on phone portrait. */
@media (max-width: 767px) and (orientation: portrait) {
  body.rmm-mobile-bridge-active .headerlogo img,
  body.rmm-mobile-bridge-active .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active .rmm-action-row,
  body.rmm-mobile-bridge-active .rmm-action-column,
  body.rmm-mobile-bridge-active .menyikoner,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .headerlogo img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-home-logo-link img,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-row,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .rmm-action-column,
  body.rmm-mobile-bridge-active.rmm-runtime-sticky .menyikoner {
    transition-duration: .74s !important;
    transition-timing-function: cubic-bezier(.22,.61,.36,1) !important;
  }
}

/* Phone landscape gets its own proportions. Normal and sticky are deliberately
   different, but both keep the logo and actions on the exact same left/right
   anchors. The logo remains about 70 percent of the white bar height. */
@media (orientation: landscape) and (max-height: 599px) and (max-width: 1100px) {
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row {
    height: 96px !important;
    min-height: 96px !important;
    max-height: 96px !important;
    background: transparent !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
    height: 96px !important;
    min-height: 96px !important;
    max-height: 96px !important;
    padding-left: clamp(28px, 4vw, 40px) !important;
    padding-right: clamp(28px, 4vw, 40px) !important;
    transition:
      height .78s cubic-bezier(.22,.61,.36,1),
      min-height .78s cubic-bezier(.22,.61,.36,1),
      max-height .78s cubic-bezier(.22,.61,.36,1),
      box-shadow .58s ease !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: 67px !important;
    max-height: 67px !important;
    transform-origin: left center !important;
    transition: height .78s cubic-bezier(.22,.61,.36,1), max-height .78s cubic-bezier(.22,.61,.36,1) !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    height: 68px !important;
    min-height: 68px !important;
    max-height: 68px !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: 47px !important;
    max-height: 47px !important;
  }
}

/* Tablets retain the larger proportions requested earlier, but use the same
   smoother reversible timing as phone landscape. */
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
  transition:
    height .82s cubic-bezier(.22,.61,.36,1),
    min-height .82s cubic-bezier(.22,.61,.36,1),
    max-height .82s cubic-bezier(.22,.61,.36,1),
    box-shadow .60s ease !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  transition: height .82s cubic-bezier(.22,.61,.36,1), max-height .82s cubic-bezier(.22,.61,.36,1) !important;
}

/* ===== v0.12.47: stable wide-phone header + fully visible adaptive menu card ===== */

/* Menu backdrop: keep the page visible but subdued behind the adaptive card. */
body.rmm-mobile-bridge-active .rmm-mobile-site-backdrop,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-backdrop,
body.rmm-tablet-portrait-drawer .rmm-mobile-site-backdrop,
body.rmm-tablet-master-active .rmm-mobile-site-backdrop {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(20, 22, 24, .28) !important;
  -webkit-backdrop-filter: blur(8px) saturate(.92) !important;
  backdrop-filter: blur(8px) saturate(.92) !important;
}

/* One adaptive card. Its four edges stay inside the visible browser viewport.
   Content determines the height until the viewport limit is reached; after that
   the menu itself scrolls instead of the card disappearing below the screen. */
body.rmm-mobile-bridge-active .rmm-mobile-site-drawer,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-drawer,
body.rmm-tablet-portrait-drawer .rmm-mobile-site-drawer,
body.rmm-tablet-master-active .rmm-mobile-site-drawer {
  position: fixed !important;
  top: 12px !important;
  right: 12px !important;
  bottom: auto !important;
  left: auto !important;
  box-sizing: border-box !important;
  width: min(430px, calc(var(--rmm-drawer-vw, 100vw) - 24px)) !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: calc(var(--rmm-drawer-vh, 100dvh) - 24px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 16px 46px rgba(0,0,0,.24) !important;
  opacity: 0 !important;
  transform: translate3d(8px, 0, 0) scale(.985) !important;
  transform-origin: top right !important;
  transition: opacity .20s ease, transform .24s cubic-bezier(.22,.61,.36,1) !important;
  -webkit-overflow-scrolling: touch !important;
}
body.rmm-mobile-bridge-active .rmm-mobile-open .rmm-mobile-site-drawer,
body.rmm-tablet-landscape-drawer .rmm-mobile-open .rmm-mobile-site-drawer,
body.rmm-tablet-portrait-drawer .rmm-mobile-open .rmm-mobile-site-drawer,
body.rmm-tablet-master-active .rmm-mobile-open .rmm-mobile-site-drawer {
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) scale(1) !important;
}
body.rmm-mobile-bridge-active .rmm-mobile-site-list,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-list,
body.rmm-tablet-portrait-drawer .rmm-mobile-site-list,
body.rmm-tablet-master-active .rmm-mobile-site-list {
  padding-bottom: 10px !important;
}

/* A54-size and wider portrait phones get a single stable Rävenager-owned row.
   Narrow phones remain on the existing portrait implementation. */
@media (orientation: portrait) and (min-width: 380px) and (max-width: 599px) {
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-row {
    height: 92px !important;
    min-height: 92px !important;
    max-height: 92px !important;
    background: #fff !important;
    box-shadow: none !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
    height: 92px !important;
    min-height: 92px !important;
    max-height: 92px !important;
    padding: 0 18px !important;
    box-shadow: none !important;
    transition:
      height .58s cubic-bezier(.22,.61,.36,1),
      min-height .58s cubic-bezier(.22,.61,.36,1),
      max-height .58s cubic-bezier(.22,.61,.36,1),
      box-shadow .42s ease !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex: 0 0 auto !important;
    height: 100% !important;
    margin: 0 !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    height: 66px !important;
    max-height: 66px !important;
    margin: 0 !important;
    object-fit: contain !important;
    transform-origin: left center !important;
    transition: height .58s cubic-bezier(.22,.61,.36,1), max-height .58s cubic-bezier(.22,.61,.36,1) !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-actions {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    height: 100% !important;
    margin-left: auto !important;
    gap: 8px !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-cart,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-search,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-burger {
    flex: 0 0 44px !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-search::before,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-search::after {
    content: none !important;
    display: none !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-search-icon,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-search-icon svg {
    display: block !important;
    width: 28px !important;
    height: 28px !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-bars,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-bars::before,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-bars::after {
    display: block !important;
    width: 28px !important;
    height: 3px !important;
    border-radius: 99px !important;
    background: currentColor !important;
    content: '' !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-bars { position: relative !important; }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-bars::before { position: absolute !important; left: 0 !important; top: -9px !important; }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-bars::after { position: absolute !important; left: 0 !important; top: 9px !important; }

  body.rmm-wide-phone-portrait.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    height: 68px !important;
    min-height: 68px !important;
    max-height: 68px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    box-shadow: 0 7px 20px rgba(0,0,0,.10) !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: 48px !important;
    max-height: 48px !important;
  }
}

/* Phone landscape: the same left/right anchor is used in both states. Normal is
   deliberately taller with a larger logo; sticky only changes height and logo. */
@media (orientation: landscape) and (max-height: 599px) and (max-width: 1100px) {
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row {
    height: 96px !important;
    min-height: 96px !important;
    max-height: 96px !important;
    background: #fff !important;
    box-shadow: none !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
    height: 96px !important;
    min-height: 96px !important;
    max-height: 96px !important;
    padding-left: 36px !important;
    padding-right: 36px !important;
    box-shadow: none !important;
    transition:
      height .60s cubic-bezier(.22,.61,.36,1),
      min-height .60s cubic-bezier(.22,.61,.36,1),
      max-height .60s cubic-bezier(.22,.61,.36,1),
      box-shadow .42s ease !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    width: auto !important;
    max-width: none !important;
    height: 67px !important;
    max-height: 67px !important;
    transform-origin: left center !important;
    transition: height .60s cubic-bezier(.22,.61,.36,1), max-height .60s cubic-bezier(.22,.61,.36,1) !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-actions {
    margin-left: auto !important;
    gap: 12px !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    height: 68px !important;
    min-height: 68px !important;
    max-height: 68px !important;
    padding-left: 36px !important;
    padding-right: 36px !important;
    box-shadow: 0 7px 20px rgba(0,0,0,.10) !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: 47px !important;
    max-height: 47px !important;
  }
}

/* Tablets use the same reversible motion without changing horizontal anchors. */
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
  transition:
    height .62s cubic-bezier(.22,.61,.36,1),
    min-height .62s cubic-bezier(.22,.61,.36,1),
    max-height .62s cubic-bezier(.22,.61,.36,1),
    box-shadow .44s ease !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  transform-origin: left center !important;
  transition: height .62s cubic-bezier(.22,.61,.36,1), max-height .62s cubic-bezier(.22,.61,.36,1) !important;
}

/* ===== v0.12.48: continuous sticky interpolation + larger normal phone header ===== */

/* Managed responsive headers now interpolate from one scroll progress value.
   Geometry is identical whether the user scrolls down or back up, so there is
   no binary size jump and no second transition that can get stuck. */
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
  transition: box-shadow .16s linear !important;
}
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  transition: none !important;
  transform-origin: left center !important;
}

/* A54-size and comparable/larger portrait phones: about 25% larger normal logo
   and a taller normal row. Sticky dimensions stay compact. Both dimensions are
   interpolated continuously from the same progress value. */
@media (orientation: portrait) and (min-width: 380px) and (max-width: 599px) {
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-row {
    height: 115px !important;
    min-height: 115px !important;
    max-height: 115px !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    height: calc(115px - (47px * var(--rmm-stick-progress, 0))) !important;
    min-height: calc(115px - (47px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(115px - (47px * var(--rmm-stick-progress, 0))) !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    box-shadow: 0 calc(7px * var(--rmm-stick-progress, 0)) calc(20px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.10) !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: calc(82px - (34px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(82px - (34px * var(--rmm-stick-progress, 0))) !important;
  }
}

/* Landscape phones: larger normal state, unchanged compact sticky state, and
   exactly the same left/right anchor throughout the motion. */
@media (orientation: landscape) and (max-height: 599px) and (max-width: 1100px) {
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row {
    height: 120px !important;
    min-height: 120px !important;
    max-height: 120px !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    height: calc(120px - (52px * var(--rmm-stick-progress, 0))) !important;
    min-height: calc(120px - (52px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(120px - (52px * var(--rmm-stick-progress, 0))) !important;
    padding-left: 36px !important;
    padding-right: 36px !important;
    box-shadow: 0 calc(7px * var(--rmm-stick-progress, 0)) calc(20px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.10) !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: calc(84px - (37px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(84px - (37px * var(--rmm-stick-progress, 0))) !important;
  }

  /* The first menu level gets a larger touch target in landscape. Expanded
     submenu rows keep their existing roomier design. */
  body.rmm-mobile-bridge-active .rmm-mobile-site-list > .rmm-mobile-top-item > .rmm-mobile-row {
    min-height: 46px !important;
    gap: 8px !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-site-list > .rmm-mobile-top-item > .rmm-mobile-row > a,
  body.rmm-mobile-bridge-active .rmm-mobile-site-list > .rmm-mobile-top-item > .rmm-mobile-row > span {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    line-height: 1.22 !important;
  }
  body.rmm-mobile-bridge-active .rmm-mobile-site-list > .rmm-mobile-top-item > .rmm-mobile-row > .rmm-mobile-toggle {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
  }
}

/* Tablets keep their current requested dimensions, but receive the same
   continuous reversible interpolation instead of a class-triggered jump. */
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
  height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
  min-height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
  max-height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
  box-shadow: 0 calc(8px * var(--rmm-stick-progress, 0)) calc(24px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.12) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  height: calc(84px - (26px * var(--rmm-stick-progress, 0))) !important;
  max-height: calc(84px - (26px * var(--rmm-stick-progress, 0))) !important;
}

/* ===== v0.12.50: synchronized responsive geometry + quicker smooth sticky motion ===== */

/* JavaScript supplies one smoothed 0..1 progress value. Do not add another CSS
   geometry transition: two interpolation layers create the delayed final step. */
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  transition: none !important;
}

/* The hidden Divi row is only the page-flow spacer. It must track the visible
   fixed header pixel-for-pixel or a short white strip becomes visible underneath. */
body.rmm-tablet-master-active .rmm-tablet-master-row {
  box-shadow: none !important;
  transition: none !important;
}

/* A54-size and comparable portrait phones. Normal logo is about 30 percent
   larger than v0.12.48, while sticky keeps the proven compact size. */
@media (orientation: portrait) and (min-width: 380px) and (max-width: 599px) {
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-row,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    height: calc(148px - (80px * var(--rmm-stick-progress, 0))) !important;
    min-height: calc(148px - (80px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(148px - (80px * var(--rmm-stick-progress, 0))) !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    padding-left: 18px !important;
    padding-right: 18px !important;
    box-shadow: 0 calc(7px * var(--rmm-stick-progress, 0)) calc(20px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.10) !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: calc(107px - (59px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(107px - (59px * var(--rmm-stick-progress, 0))) !important;
    transform-origin: left center !important;
  }
}

/* Landscape phones. Normal logo is about 25 percent larger than v0.12.48.
   The spacer and fixed surface use exactly the same formula. */
@media (orientation: landscape) and (max-height: 599px) and (max-width: 1100px) {
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    height: calc(145px - (77px * var(--rmm-stick-progress, 0))) !important;
    min-height: calc(145px - (77px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(145px - (77px * var(--rmm-stick-progress, 0))) !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    padding-left: 36px !important;
    padding-right: 36px !important;
    box-shadow: 0 calc(7px * var(--rmm-stick-progress, 0)) calc(20px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.10) !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: calc(105px - (58px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(105px - (58px * var(--rmm-stick-progress, 0))) !important;
    transform-origin: left center !important;
  }
}

/* Tablets retain their current requested sizes, but the hidden spacer follows
   the same continuous geometry so the transition is clean in both orientations. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row,
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
  height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
  min-height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
  max-height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
  box-shadow: 0 calc(8px * var(--rmm-stick-progress, 0)) calc(24px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.12) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  height: calc(84px - (26px * var(--rmm-stick-progress, 0))) !important;
  max-height: calc(84px - (26px * var(--rmm-stick-progress, 0))) !important;
  transform-origin: left center !important;
}

/* ===== v0.12.52: unified spacer geometry, clean reverse transition, refined phone proportions ===== */

/* The spacer and the fixed surface now change height together again. Browser
   scroll anchoring is disabled only while Rävenager owns the responsive header,
   preventing the feedback loop that previously made the reverse transition
   shake or reveal a full-height white strip before the bar had expanded. */
html.rmm-master-scroll-controlled {
  overflow-anchor: none !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-row,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
body.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  transition: none !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-row {
  overflow-anchor: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* A54-size and similar portrait phones.
   Normal logo remains at the accepted size. Normal vertical whitespace is now
   exactly the same 18px as the left logo inset. Sticky logo is about 20% larger
   than the previous 48px state. Everything is centred by the same flex row. */
@media (orientation: portrait) and (min-width: 380px) and (max-width: 599px) {
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-row,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    height: calc(143px - (65px * var(--rmm-stick-progress, 0))) !important;
    min-height: calc(143px - (65px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(143px - (65px * var(--rmm-stick-progress, 0))) !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active .rmm-tablet-master-row {
    background: #fff !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    padding: 0 18px !important;
    overflow: hidden !important;
    box-shadow: 0 calc(6px * var(--rmm-stick-progress, 0)) calc(18px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.09) !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: calc(107px - (49px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(107px - (49px * var(--rmm-stick-progress, 0))) !important;
    width: auto !important;
    max-width: none !important;
    transform-origin: left center !important;
  }
}

/* Landscape phones. Keep the accepted compact sticky state, but make the normal
   logo approximately 20% larger. The left/right anchors never move while the
   row and logo interpolate through the same progress value. */
@media (orientation: landscape) and (max-height: 599px) and (max-width: 1100px) {
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    height: calc(150px - (82px * var(--rmm-stick-progress, 0))) !important;
    min-height: calc(150px - (82px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(150px - (82px * var(--rmm-stick-progress, 0))) !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active .rmm-tablet-master-row {
    background: #fff !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
    padding: 0 36px !important;
    overflow: hidden !important;
    box-shadow: 0 calc(6px * var(--rmm-stick-progress, 0)) calc(18px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.09) !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: calc(126px - (79px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(126px - (79px * var(--rmm-stick-progress, 0))) !important;
    width: auto !important;
    max-width: none !important;
    transform-origin: left center !important;
  }
}

/* Tablets retain the established dimensions, but now use the same synchronized
   spacer/surface geometry. This keeps the normal-to-sticky and sticky-to-normal
   motion identical in both portrait and landscape. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-row,
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
  height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
  min-height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
  max-height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
  overflow: hidden !important;
  box-shadow: 0 calc(7px * var(--rmm-stick-progress, 0)) calc(22px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.11) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  height: calc(84px - (26px * var(--rmm-stick-progress, 0))) !important;
  max-height: calc(84px - (26px * var(--rmm-stick-progress, 0))) !important;
  transform-origin: left center !important;
}

/* ===== v0.12.53: independent flow spacer + one smooth responsive header ===== */

/*
 * The original Divi menu row is no longer used as the animated spacer. It is a
 * data source only. A transparent top-level spacer follows exactly the same
 * progress as the one fixed Rävenager surface. This removes the white strip that
 * could appear before the visible bar had finished expanding back to normal.
 */
html.rmm-master-scroll-controlled,
html.rmm-master-scroll-controlled body {
  overflow-anchor: none !important;
}
body.rmm-tablet-master-active .rmm-tablet-master-row {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.rmm-tablet-master-active .rmm-master-host-section {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  min-height: 0 !important;
  box-shadow: none !important;
}
body.rmm-tablet-master-active > .rmm-master-flow-spacer {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
  pointer-events: none !important;
  overflow-anchor: none !important;
  transition: none !important;
}

/* Geometry is driven only by --rmm-stick-progress. No late binary sticky class
   is allowed to change size, padding, opacity or transform after the motion has
   already settled. */
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
body.rmm-tablet-master-active > .rmm-master-flow-spacer {
  transition: none !important;
}
body.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
  transform: translate3d(0,0,0) !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: #fff !important;
  overflow: hidden !important;
}

/* A54-size and comparable portrait phones. Keep the accepted logo size but use
   only 12px of vertical breathing room in normal state. */
@media (orientation: portrait) and (min-width: 380px) and (max-width: 599px) {
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-master-flow-spacer,
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
    height: calc(131px - (53px * var(--rmm-stick-progress, 0))) !important;
    min-height: calc(131px - (53px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(131px - (53px * var(--rmm-stick-progress, 0))) !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
    padding: 0 18px !important;
    box-shadow: 0 calc(6px * var(--rmm-stick-progress, 0)) calc(18px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.09) !important;
  }
  body.rmm-wide-phone-portrait.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: calc(107px - (49px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(107px - (49px * var(--rmm-stick-progress, 0))) !important;
    width: auto !important;
    max-width: none !important;
    transform-origin: left center !important;
  }
}

/* Landscape phones now use the same logo proportions as portrait. The earlier
   tablet class accidentally overrode landscape phone sizing; phone landscape is
   now its own mode, so normal and sticky remain anchored and predictable. */
@media (orientation: landscape) and (max-height: 599px) and (max-width: 1100px) {
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-master-flow-spacer,
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
    height: calc(131px - (53px * var(--rmm-stick-progress, 0))) !important;
    min-height: calc(131px - (53px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(131px - (53px * var(--rmm-stick-progress, 0))) !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
    padding: 0 36px !important;
    box-shadow: 0 calc(6px * var(--rmm-stick-progress, 0)) calc(18px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.09) !important;
  }
  body.rmm-wide-phone-landscape.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
    height: calc(107px - (49px * var(--rmm-stick-progress, 0))) !important;
    max-height: calc(107px - (49px * var(--rmm-stick-progress, 0))) !important;
    width: auto !important;
    max-width: none !important;
    transform-origin: left center !important;
  }
}

/* Tablets keep their established proportions but use the same independent
   transparent spacer and the same single interpolation path. */
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-master-flow-spacer,
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
  height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
  min-height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
  max-height: calc(120px - (38px * var(--rmm-stick-progress, 0))) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
  box-shadow: 0 calc(7px * var(--rmm-stick-progress, 0)) calc(22px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.11) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  height: calc(84px - (26px * var(--rmm-stick-progress, 0))) !important;
  max-height: calc(84px - (26px * var(--rmm-stick-progress, 0))) !important;
  transform-origin: left center !important;
}
\n\n/* ===== v0.12.54: A54 sticky logic extended to every managed tablet ===== */
/*
 * Tablets now use the same single-surface, single-progress engine as the
 * accepted A54 phone header. Screen-size classes are derived from the stable
 * physical screen dimensions in JS, so browser chrome cannot switch geometry
 * while scrolling. Portrait and landscape therefore share identical behaviour.
 */
body.rmm-managed-tablet.rmm-tablet-master-active {
  --rmm-tablet-normal-h: 154px;
  --rmm-tablet-height-delta: 62px;
  --rmm-tablet-normal-logo: 120px;
  --rmm-tablet-logo-delta: 52px;
  --rmm-tablet-side-pad: 32px;
  --rmm-tablet-action-gap: 28px;
}
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-tablet-size-small {
  --rmm-tablet-normal-h: 142px;
  --rmm-tablet-height-delta: 56px;
  --rmm-tablet-normal-logo: 110px;
  --rmm-tablet-logo-delta: 46px;
  --rmm-tablet-side-pad: 26px;
  --rmm-tablet-action-gap: 24px;
}
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-tablet-size-medium {
  --rmm-tablet-normal-h: 154px;
  --rmm-tablet-height-delta: 62px;
  --rmm-tablet-normal-logo: 120px;
  --rmm-tablet-logo-delta: 52px;
  --rmm-tablet-side-pad: 32px;
  --rmm-tablet-action-gap: 28px;
}
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-tablet-size-large {
  --rmm-tablet-normal-h: 166px;
  --rmm-tablet-height-delta: 66px;
  --rmm-tablet-normal-logo: 130px;
  --rmm-tablet-logo-delta: 56px;
  --rmm-tablet-side-pad: 40px;
  --rmm-tablet-action-gap: 32px;
}

/* One geometry equation drives both the transparent page spacer and the fixed
   surface. No tablet-specific normal/sticky class is allowed to resize either
   one after the progress animation has already moved. */
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-master-flow-spacer,
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
  height: calc(var(--rmm-tablet-normal-h) - (var(--rmm-tablet-height-delta) * var(--rmm-stick-progress, 0))) !important;
  min-height: calc(var(--rmm-tablet-normal-h) - (var(--rmm-tablet-height-delta) * var(--rmm-stick-progress, 0))) !important;
  max-height: calc(var(--rmm-tablet-normal-h) - (var(--rmm-tablet-height-delta) * var(--rmm-stick-progress, 0))) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface {
  padding: 0 var(--rmm-tablet-side-pad) !important;
  align-items: center !important;
  overflow: hidden !important;
  transform: translate3d(0,0,0) !important;
  box-shadow: 0 calc(6px * var(--rmm-stick-progress, 0)) calc(18px * var(--rmm-stick-progress, 0)) rgba(0,0,0,.09) !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo {
  align-self: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  transform: none !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img,
body.rmm-managed-tablet.rmm-tablet-master-active.rmm-master-stuck > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  display: block !important;
  height: calc(var(--rmm-tablet-normal-logo) - (var(--rmm-tablet-logo-delta) * var(--rmm-stick-progress, 0))) !important;
  max-height: calc(var(--rmm-tablet-normal-logo) - (var(--rmm-tablet-logo-delta) * var(--rmm-stick-progress, 0))) !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  transform: none !important;
  transform-origin: left center !important;
  transition: none !important;
}

/* Actions follow the same A54 rule: one right-anchored group, vertically centred
   for every intermediate progress value. Larger tablets only receive larger tap
   spacing; the ordering and behaviour stay identical. */
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-actions {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  align-self: stretch !important;
  gap: var(--rmm-tablet-action-gap) !important;
  height: auto !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-cart,
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-search,
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-burger {
  align-self: center !important;
  flex: 0 0 52px !important;
  width: 52px !important;
  min-width: 52px !important;
  height: 52px !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Tablet portrait and landscape intentionally expose only the same three direct
   actions as the phone header. All navigation remains in the one burger drawer. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-nav,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-tablet-master-account {
  display: none !important;
}

/* ===== v0.12.55: tablet first-paint sync + single transition surface + wider card ===== */

/* During the short DOM bootstrap window Divi remains the data source, but its
   logo/menu modules are not allowed to paint one-by-one. Rävenager reveals its
   complete tablet surface only after all actions have been populated. */
html.rmm-tablet-boot:not(.rmm-tablet-ready) .et-l--header .headerlogo,
html.rmm-tablet-boot:not(.rmm-tablet-ready) .et-l--header .rmm-home-logo-link,
html.rmm-tablet-boot:not(.rmm-tablet-ready) .et-l--header .menykolumn,
html.rmm-tablet-boot:not(.rmm-tablet-ready) .et-l--header .menyikoner,
html.rmm-tablet-boot:not(.rmm-tablet-ready) header .headerlogo,
html.rmm-tablet-boot:not(.rmm-tablet-ready) header .rmm-home-logo-link,
html.rmm-tablet-boot:not(.rmm-tablet-ready) header .menykolumn,
html.rmm-tablet-boot:not(.rmm-tablet-ready) header .menyikoner {
  visibility: hidden !important;
  opacity: 0 !important;
}

/* On managed tablets the original Divi header is now strictly a hidden data
   source. The body-level Rävenager surface plus its transparent spacer are the
   only two layout actors. This removes the second white background that could
   show through during normal/sticky interpolation. */
body.rmm-managed-tablet.rmm-tablet-master-active .et-l--header,
body.rmm-managed-tablet.rmm-tablet-master-active header#main-header {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-master-flow-spacer {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  contain: layout size !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
  isolation: isolate !important;
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
  will-change: height, box-shadow !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
  will-change: height !important;
}

/* Tablet drawer: one generous minimum width in portrait and landscape. The
   card may grow further when an expanded branch needs it, but never beyond the
   visible viewport, so all outer margins remain visible. */
body.rmm-tablet-portrait-drawer .rmm-mobile-site-drawer,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-drawer,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-mobile-site-drawer {
  width: max-content !important;
  min-width: min(560px, calc(var(--rmm-drawer-vw, 100vw) - 24px)) !important;
  max-width: calc(var(--rmm-drawer-vw, 100vw) - 24px) !important;
}
body.rmm-tablet-portrait-drawer .rmm-mobile-site-list,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-list,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-mobile-site-list {
  min-width: 100% !important;
}
\n\n/* ===== v0.12.56: frame-locked tablet geometry + atomic paint + stable wide drawer ===== */

/* A newly created tablet surface is never allowed to paint before all controls
   have been populated. Existing ready surfaces stay visible through rotation. */
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface.rmm-master-content-pending:not(.rmm-master-content-ready) {
  visibility: hidden !important;
  opacity: 0 !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface.rmm-master-content-ready {
  visibility: visible !important;
  opacity: 1 !important;
}

/* JS writes header, spacer and logo pixel geometry together on every animation
   frame. These rules neutralize all old transition layers so CSS cannot run a
   second animation after the synchronized frame has already been painted. */
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-master-flow-spacer,
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  transition: none !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  transform: translate3d(0,0,0) !important;
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
  background: #fff !important;
  overflow: hidden !important;
  contain: layout paint !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo,
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-actions {
  align-self: stretch !important;
  display: flex !important;
  align-items: center !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  display: block !important;
  object-fit: contain !important;
  object-position: left center !important;
  transform-origin: left center !important;
  flex: 0 0 auto !important;
}

/* Tablet card starts at the same generous width as the expanded Shop branch.
   JS may increase this variable for a genuinely wider visible branch, while the
   viewport cap keeps the four outer margins visible. */
body.rmm-tablet-portrait-drawer .rmm-mobile-site-drawer,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-drawer,
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-mobile-site-drawer {
  width: var(--rmm-tablet-drawer-width, min(680px, calc(var(--rmm-drawer-vw, 100vw) - 24px))) !important;
  min-width: var(--rmm-tablet-drawer-width, min(680px, calc(var(--rmm-drawer-vw, 100vw) - 24px))) !important;
  max-width: calc(var(--rmm-drawer-vw, 100vw) - 24px) !important;
}


/* ===== v0.12.57: reflow-free tablet motion + guaranteed wide tablet card ===== */

/* The tablet flow spacer is a static normal-height reservation. Only the fixed
   visible surface collapses. This keeps scroll geometry immutable while the
   header animates and removes the last feedback shake in both orientations. */
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-master-flow-spacer {
  transition: none !important;
  background: transparent !important;
  box-shadow: none !important;
  contain: layout size !important;
}
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface,
body.rmm-managed-tablet.rmm-tablet-master-active > .rmm-tablet-master-header.rmm-master-surface .rmm-tablet-master-logo-img {
  transition: none !important;
  animation: none !important;
}

/* JS also writes these dimensions inline with !important. The CSS fallback uses
   the same 720px baseline so the first menu frame can never flash narrow before
   the viewport synchronizer runs. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-mobile-site-drawer,
body.rmm-tablet-portrait-drawer .rmm-mobile-site-drawer,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-drawer {
  width: min(720px, calc(var(--rmm-drawer-vw, 100vw) - 24px)) !important;
  min-width: min(720px, calc(var(--rmm-drawer-vw, 100vw) - 24px)) !important;
  max-width: calc(var(--rmm-drawer-vw, 100vw) - 24px) !important;
  box-sizing: border-box !important;
}


/* ===== v0.12.58: half-width tablet card + quicker unified motion ===== */
/* Closed tablet drawers now start at half of the previous 720px footprint.
   JavaScript may enlarge the card only when a currently expanded branch needs
   more room. Portrait and landscape intentionally share the same baseline. */
body.rmm-managed-tablet.rmm-tablet-master-active .rmm-mobile-site-drawer,
body.rmm-tablet-portrait-drawer .rmm-mobile-site-drawer,
body.rmm-tablet-landscape-drawer .rmm-mobile-site-drawer {
  width: var(--rmm-tablet-drawer-width, min(360px, calc(var(--rmm-drawer-vw, 100vw) - 24px))) !important;
  min-width: var(--rmm-tablet-drawer-width, min(360px, calc(var(--rmm-drawer-vw, 100vw) - 24px))) !important;
  max-width: calc(var(--rmm-drawer-vw, 100vw) - 24px) !important;
  box-sizing: border-box !important;
}

/* ===== v0.12.60: tablet search mirrors the proven mobile search behaviour ===== */
/* The previous 0.12.59 override was written with escaped newline characters and
   therefore never became valid CSS in the browser. Keep the search surface
   owned by Rävenager, but paint it atomically above Divi and below the current
   visible header edge in both tablet orientations and in normal/sticky state. */
body.rmm-managed-tablet .rmm-master-search-overlay {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  z-index: 2147483647 !important;
  isolation: isolate !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
body.rmm-managed-tablet .rmm-master-search-overlay.rmm-search-open {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
body.rmm-managed-tablet .rmm-master-search-backdrop {
  position: fixed !important;
  inset: 0 !important;
  display: block !important;
  width: 100vw !important;
  height: 100dvh !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: rgba(15,18,21,.34) !important;
  -webkit-backdrop-filter: blur(3px) !important;
  backdrop-filter: blur(3px) !important;
  opacity: 0 !important;
  transition: opacity .16s ease !important;
}
body.rmm-managed-tablet .rmm-master-search-overlay.rmm-search-open .rmm-master-search-backdrop {
  opacity: 1 !important;
}
body.rmm-managed-tablet .rmm-master-search-panel {
  position: fixed !important;
  top: var(--rmm-search-panel-top, max(16px, env(safe-area-inset-top))) !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  visibility: visible !important;
  width: min(680px, calc(100vw - 32px)) !important;
  max-width: calc(100vw - 32px) !important;
  min-width: 0 !important;
  min-height: 76px !important;
  margin: 0 !important;
  padding: 12px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  background: #fff !important;
  color: #202124 !important;
  box-shadow: 0 18px 54px rgba(0,0,0,.24) !important;
  opacity: 0 !important;
  transform: translate3d(-50%,-8px,0) scale(.99) !important;
  transform-origin: 50% 0 !important;
  transition: opacity .16s ease, transform .20s cubic-bezier(.22,.61,.36,1) !important;
  overflow: visible !important;
  z-index: 2 !important;
}
body.rmm-managed-tablet .rmm-master-search-overlay.rmm-search-open .rmm-master-search-panel {
  opacity: 1 !important;
  transform: translate3d(-50%,0,0) scale(1) !important;
}
body.rmm-managed-tablet .rmm-master-search-form {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 52px 52px !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  align-items: center !important;
}
body.rmm-managed-tablet .rmm-master-search-input {
  position: relative !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 52px !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(0,0,0,.18) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #202124 !important;
  -webkit-text-fill-color: #202124 !important;
  caret-color: #202124 !important;
  font-family: inherit !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  outline: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  z-index: 1 !important;
}
body.rmm-managed-tablet .rmm-master-search-input:focus {
  border-color: rgba(0,0,0,.34) !important;
  box-shadow: 0 0 0 3px rgba(0,0,0,.06) !important;
}
body.rmm-managed-tablet .rmm-master-search-input::placeholder {
  color: rgba(32,33,36,.58) !important;
  -webkit-text-fill-color: rgba(32,33,36,.58) !important;
  opacity: 1 !important;
}
body.rmm-managed-tablet .rmm-master-search-submit,
body.rmm-managed-tablet .rmm-master-search-close {
  position: relative !important;
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  align-items: center !important;
  justify-content: center !important;
  width: 52px !important;
  min-width: 52px !important;
  height: 52px !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: rgba(0,0,0,.045) !important;
  color: #202124 !important;
  z-index: 2 !important;
}
body.rmm-managed-tablet .rmm-master-search-submit .rmm-tablet-search-icon,
body.rmm-managed-tablet .rmm-master-search-submit .rmm-tablet-search-icon svg {
  display: block !important;
  width: 27px !important;
  height: 27px !important;
}
body.rmm-managed-tablet .rmm-master-search-close {
  font-size: 30px !important;
  line-height: 1 !important;
}

/* Keep the full field visible when the tablet is short in landscape. */
@media (orientation: landscape) and (max-height: 620px) {
  body.rmm-managed-tablet .rmm-master-search-panel {
    width: min(620px, calc(100vw - 28px)) !important;
    max-width: calc(100vw - 28px) !important;
    min-height: 68px !important;
    padding: 8px !important;
  }
  body.rmm-managed-tablet .rmm-master-search-form {
    grid-template-columns: minmax(0,1fr) 48px 48px !important;
    gap: 6px !important;
  }
  body.rmm-managed-tablet .rmm-master-search-input,
  body.rmm-managed-tablet .rmm-master-search-submit,
  body.rmm-managed-tablet .rmm-master-search-close {
    height: 48px !important;
    min-height: 48px !important;
  }
  body.rmm-managed-tablet .rmm-master-search-submit,
  body.rmm-managed-tablet .rmm-master-search-close {
    width: 48px !important;
    min-width: 48px !important;
  }
}

/* ===== v0.12.61: legacy Android / WebView search compatibility ===== */
/* Capability fallback only. Modern phones/tablets keep the existing search
   presentation; older engines receive simple fixed geometry with no dependency
   on inset, dvh, CSS variables, min()/max() or CSS Grid. */
body.rmm-legacy-search-layout .rmm-master-search-overlay {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100vh !important;
}
body.rmm-legacy-search-layout .rmm-master-search-backdrop {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100vh !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
body.rmm-legacy-search-layout .rmm-master-search-panel {
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  transform-origin: 50% 0 !important;
}
body.rmm-legacy-search-layout .rmm-master-search-form {
  display: block !important;
}
body.rmm-legacy-search-layout .rmm-master-search-input,
body.rmm-legacy-search-layout .rmm-master-search-submit,
body.rmm-legacy-search-layout .rmm-master-search-close {
  display: block !important;
  box-sizing: border-box !important;
}


/* ===== v0.12.62: self-contained Fritidslivet / Divi header integration =====
   Mega Menu now owns the remaining site-header geometry that previously lived
   in Divi Custom CSS. External CSS is no longer required for the classes below.
   Desktop geometry is intentionally scoped to >=1025px; tablet/mobile remain
   exclusively owned by the responsive Rävenager header systems. */

/* Utility Divi menu modules. These rules intentionally carry higher
   specificity than Divi Theme Builder output because plugin CSS is now the
   single source of truth after external Custom CSS has been removed. */
html body .et-l--header .huvudheader .endastkundvagn .et_pb_menu__menu,
html body .et-l--header .huvudheader .endastkundvagn .et_mobile_nav_menu,
html body .huvudheader .endastkundvagn .et_pb_menu__menu,
html body .huvudheader .endastkundvagn .et_mobile_nav_menu,
html body .endastkundvagn .et_pb_menu__menu,
html body .endastkundvagn .et_mobile_nav_menu {
  display: none !important;
}

/* Icon-only Divi menu module used by the live header. Its native text menu and
   burger must never become a second navigation surface. */
html body .et-l--header .huvudheader .menyikoner .et_pb_menu__menu,
html body .et-l--header .huvudheader .menyikoner .et_mobile_nav_menu,
html body .huvudheader .menyikoner .et_pb_menu__menu,
html body .huvudheader .menyikoner .et_mobile_nav_menu,
html body .menyikoner .et_pb_menu__menu,
html body .menyikoner .et_mobile_nav_menu {
  display: none !important;
}

html body .huvudheader .menyikoner .et_pb_menu__search-button,
html body .menyikoner .et_pb_menu__search-button {
  -webkit-text-stroke: 1px currentColor;
}

/* ===== v0.12.67: desktop Divi search opens right =====
   The icon-only Divi module is intentionally narrow. The search surface gets
   its own usable width and expands to the right from the search icon so it no
   longer covers the primary desktop navigation on the left. Tablet/mobile
   keep the Rävenager search systems unchanged. */
@media (min-width: 1025px) {
  html body .huvudheader .menyikoner,
  html body .huvudheader .menyikoner .et_pb_menu_inner_container,
  html body .huvudheader .menyikoner .et_pb_menu__wrap {
    position: relative !important;
    overflow: visible !important;
  }

  html body .huvudheader .menyikoner .et_pb_menu__search-container {
    left: 44px !important;
    right: auto !important;
    width: clamp(300px, 26vw, 400px) !important;
    min-width: 300px !important;
    max-width: min(400px, calc(100vw - 96px)) !important;
    box-sizing: border-box !important;
    z-index: 10020 !important;
  }

  html body .huvudheader .menyikoner .et_pb_menu__search-form,
  html body .huvudheader .menyikoner .et_pb_menu__search-input {
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}

@media (min-width: 1025px) {
  .huvudheader {
    height: 180px !important;
    min-height: 180px !important;
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
    z-index: 9999 !important;
    transition:
      height .45s cubic-bezier(.22,1,.36,1),
      min-height .45s cubic-bezier(.22,1,.36,1) !important;
    will-change: height;
  }

  .huvudheader .headerrow {
    height: 100% !important;
    min-height: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    display: flex !important;
    align-items: center !important;
    overflow: visible !important;
  }

  .huvudheader .headerrow > .et_pb_column {
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
  }

  .huvudheader .headerrow > .et_pb_column > .et_pb_module {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    align-self: center !important;
  }

  .huvudheader .logokolumn {
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .huvudheader .menykolumn,
  .huvudheader .kundvagnkolumn {
    transition: transform .45s cubic-bezier(.22,1,.36,1) !important;
    will-change: transform;
  }

  .huvudheader:not(.et_pb_sticky) .menykolumn,
  .huvudheader:not(.et_pb_sticky) .kundvagnkolumn {
    transform: translate3d(0,0,0) !important;
  }

  .huvudheader .headerlogo {
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transform: translate3d(0,0,0) !important;
    overflow: visible !important;
    transition: transform .45s cubic-bezier(.22,1,.36,1) !important;
    will-change: transform;
  }

  .huvudheader .headerlogo .et_pb_image_wrap {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    overflow: visible !important;
  }

  .huvudheader .headerlogo img {
    display: block !important;
    height: 150px !important;
    max-height: 150px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    transition:
      height .45s cubic-bezier(.22,1,.36,1),
      max-height .45s cubic-bezier(.22,1,.36,1) !important;
    will-change: height;
    backface-visibility: hidden;
  }

  .huvudheader.et_pb_sticky {
    height: 108px !important;
    min-height: 108px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .huvudheader.et_pb_sticky .headerrow {
    height: 100% !important;
    min-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .huvudheader.et_pb_sticky .headerlogo {
    transform: translate3d(0,0,0) !important;
  }

  .huvudheader.et_pb_sticky .headerlogo img {
    height: 88px !important;
    max-height: 88px !important;
  }

  .huvudheader.et_pb_sticky .headerrow > .et_pb_column {
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
  }

  .huvudheader.et_pb_sticky .headerrow > .et_pb_column > .et_pb_module {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    align-self: center !important;
  }
}


/* ===== v0.12.64: desktop normal-state vertical balance =====
   Staging verification showed that the self-contained 0.12.62 geometry kept
   the previous Custom-CSS downward offsets. The logo size and 180px header
   height are preserved, but normal desktop content is raised into the header:
   the navigation/cart offset is removed and the logo offset is reduced from
   25px to 7px. Sticky, tablet and phone geometry remain unchanged. */


/* ===== v0.12.66: optical desktop-logo centering =====
   Normal desktop logo box is now 150px inside the 180px header and uses no
   vertical translation. That produces a deterministic 15px CSS margin above
   and below the image box. Sticky, tablet and phone geometry are unchanged. */


/* ===== v0.12.68: keep desktop cart + search control visible while search is open =====
   Divi normally lets its search surface take over the complete utility module.
   On Fritidslivet desktop we keep the existing cart and search controls visible
   and let only the input surface extend to the right of the search control.
   Tablet and phone search remain owned by the Rävenager responsive systems. */
@media (min-width: 1025px) {
  html body .huvudheader .endastkundvagn,
  html body .huvudheader .menyikoner,
  html body .huvudheader .menyikoner .et_pb_menu_inner_container,
  html body .huvudheader .menyikoner .et_pb_menu__wrap {
    overflow: visible !important;
  }

  html body .huvudheader .endastkundvagn,
  html body .huvudheader .endastkundvagn .et_pb_menu__cart-button,
  html body .huvudheader .menyikoner .et_pb_menu__cart-button,
  html body .huvudheader .menyikoner .et_pb_menu__search-button {
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 10040 !important;
    pointer-events: auto !important;
  }

  html body .huvudheader .endastkundvagn .et_pb_menu__cart-button,
  html body .huvudheader .menyikoner .et_pb_menu__cart-button,
  html body .huvudheader .menyikoner .et_pb_menu__search-button {
    display: inline-flex !important;
  }

  html body .huvudheader .menyikoner .et_pb_menu__search-container {
    left: 48px !important;
    right: auto !important;
    width: clamp(300px, 26vw, 400px) !important;
    min-width: 300px !important;
    max-width: min(400px, calc(100vw - 112px)) !important;
    background: transparent !important;
    box-shadow: none !important;
    pointer-events: none !important;
    z-index: 10020 !important;
  }

  html body .huvudheader .menyikoner .et_pb_menu__search-container .et_pb_menu__search-form,
  html body .huvudheader .menyikoner .et_pb_menu__search-container .et_pb_menu__search-input {
    pointer-events: auto !important;
  }

  html body .huvudheader .menyikoner .et_pb_menu__search-container .et_pb_menu__search-form {
    width: 100% !important;
    box-sizing: border-box !important;
    background: #fff !important;
  }

  html body .huvudheader .menyikoner .et_pb_menu__search-container .et_pb_menu__search-input {
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    background: #fff !important;
  }
}

/* ===== v0.12.69: stable desktop utility order and search expansion =====
   Keep the cart and search control as permanent siblings. The native Divi
   search surface is positioned after the search module instead of taking over
   the utility area. Tablet and phone layouts are intentionally untouched. */
@media (min-width: 1025px) {
  html body .huvudheader .kundvagnkolumn {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 10060 !important;
  }

  html body .huvudheader .kundvagnkolumn .endastkundvagn {
    order: 1 !important;
    flex: 0 0 auto !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 10090 !important;
    margin: 0 !important;
  }

  html body .huvudheader .kundvagnkolumn .menyikoner {
    order: 2 !important;
    flex: 0 0 auto !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    overflow: visible !important;
    z-index: 10080 !important;
    margin: 0 !important;
  }

  html body .huvudheader .endastkundvagn .et_pb_menu_inner_container,
  html body .huvudheader .endastkundvagn .et_pb_menu__wrap,
  html body .huvudheader .menyikoner .et_pb_menu_inner_container,
  html body .huvudheader .menyikoner .et_pb_menu__wrap {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    overflow: visible !important;
    position: relative !important;
  }

  html body .huvudheader .endastkundvagn .et_pb_menu__cart-button,
  html body .huvudheader .menyikoner .et_pb_menu__search-button {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex: 0 0 auto !important;
    position: relative !important;
    z-index: 10100 !important;
    pointer-events: auto !important;
  }

  html body .huvudheader .menyikoner .et_pb_menu__search-container,
  html body .huvudheader .menyikoner .et_pb_menu__search-container--visible {
    position: absolute !important;
    left: calc(100% + 12px) !important;
    right: auto !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: clamp(260px, 24vw, 380px) !important;
    min-width: 260px !important;
    max-width: min(380px, calc(100vw - 24px)) !important;
    height: auto !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    z-index: 10070 !important;
  }

  html body .huvudheader .menyikoner .et_pb_menu__search-form {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    box-sizing: border-box !important;
    background: #fff !important;
  }

  html body .huvudheader .menyikoner .et_pb_menu__search-input {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    background: #fff !important;
  }
}

/* ===== v0.12.70: owned desktop inline search =====
   Divi's native open-search state hides/replaces neighboring utility controls.
   On desktop Rävenager now intercepts the search click and uses its own inline
   form to the right. Cart and search icon therefore remain permanently visible.
   Tablet and phone search are unchanged. */
@media (min-width: 1025px) {
  html body .huvudheader .menyikoner .et_pb_menu__search-container,
  html body .huvudheader .menyikoner .et_pb_menu__search-container--visible {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  html body .huvudheader .kundvagnkolumn,
  html body .huvudheader .kundvagnkolumn .endastkundvagn,
  html body .huvudheader .kundvagnkolumn .menyikoner,
  html body .huvudheader .endastkundvagn .et_pb_menu__cart-button,
  html body .huvudheader .menyikoner .et_pb_menu__search-button {
    visibility: visible !important;
    opacity: 1 !important;
  }

  html body .huvudheader .menyikoner .et_pb_menu__search-button {
    display: inline-flex !important;
    position: relative !important;
    z-index: 10220 !important;
    flex: 0 0 auto !important;
    pointer-events: auto !important;
  }

  html body .huvudheader .menyikoner .et_pb_menu__wrap {
    position: relative !important;
    overflow: visible !important;
  }

  html body .huvudheader .menyikoner .rmm-desktop-search-form {
    display: none;
    position: absolute !important;
    left: calc(100% + 12px) !important;
    right: auto !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    height: 42px !important;
    min-height: 42px !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(0,0,0,.16) !important;
    border-radius: 6px !important;
    background: #fff !important;
    box-shadow: 0 3px 12px rgba(0,0,0,.08) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    z-index: 10210 !important;
  }

  html body .huvudheader .menyikoner.rmm-desktop-search-open .rmm-desktop-search-form {
    display: flex !important;
  }

  html body .huvudheader .menyikoner .rmm-desktop-search-input {
    display: block !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    border: 0 !important;
    outline: 0 !important;
    background: #fff !important;
    color: inherit !important;
    font: inherit !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
  }

  html body .huvudheader .menyikoner .rmm-desktop-search-close {
    display: inline-flex !important;
    flex: 0 0 40px !important;
    width: 40px !important;
    height: 40px !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: inherit !important;
    font: inherit !important;
    font-size: 22px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    box-shadow: none !important;
  }
}
