/* =========================================================
   RN MEGAMENU
   Eigen megamenu-controller voor alle hoofdmenu-items.
   Scope bewust beperkt tot .rn-megamenu-panel.
   ========================================================= */

:root {
  --rn-mega-bg-rgb: 255, 228, 203;
  --rn-mega-opacity: 0.82;
  --rn-mega-blur: 10px;

  --rn-mega-height: 500px;
  --rn-mega-left-width: 400px;
  --rn-mega-right-width: 400px;
  --rn-mega-middle-padding: 30px;

  --rn-mega-left-image-box: 300px;
  --rn-mega-image-size: 300px;
  --rn-mega-menu-content-width: 370px;

  --rn-mega-text: #262626;
  --rn-mega-heading: #ee7202;
  --rn-mega-link: #ee7202;
  --rn-mega-link-hover: #262626;
  --rn-mega-link-active: #ee7202;

  --rn-mega-cta-bg: #ee7202;
  --rn-mega-cta-bg-hover: #262626;
  --rn-mega-cta-text: #ffffff;
  --rn-mega-cta-text-hover: #ee7202;
}

.rn-megamenu-panel {
  position: fixed !important;
  z-index: 2147482000 !important;

  left: 42px !important;
  right: 42px !important;
  top: 100px;
  transform: none !important;

  width: auto !important;
  max-width: none !important;
  height: var(--rn-mega-height) !important;

  display: block !important;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;

  padding: 0 !important;
  margin: 4px 0 0 0 !important;

  overflow: hidden !important;

  background: rgba(var(--rn-mega-bg-rgb), var(--rn-mega-opacity)) !important;
  background-color: rgba(var(--rn-mega-bg-rgb), var(--rn-mega-opacity)) !important;

  backdrop-filter: blur(var(--rn-mega-blur)) !important;
  -webkit-backdrop-filter: blur(var(--rn-mega-blur)) !important;

  border: 1px solid #262626 !important;
  border-radius: 12px !important;

  box-shadow:
    0 10px 28px rgba(38, 38, 38, 0.14),
    0 3px 8px rgba(38, 38, 38, 0.08) !important;

  box-sizing: border-box !important;

  transition:
    opacity 120ms ease,
    visibility 120ms ease !important;
}

.rn-megamenu-panel.rn-megamenu-is-open {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.rn-megamenu-panel .rn-megamenu-inner {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;

  display: block !important;
  position: relative !important;

  background: transparent !important;
  background-color: transparent !important;

  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* Themify-inhoud binnen deze plugin-container normaliseren */
.rn-megamenu-panel .tb_layout_part_wrap,
.rn-megamenu-panel .themify_builder_content,
.rn-megamenu-panel .module_row,
.rn-megamenu-panel .mega-menu-row,
.rn-megamenu-panel .row_inner,
.rn-megamenu-panel .module_column,
.rn-megamenu-panel .module_subrow,
.rn-megamenu-panel .sub_column,
.rn-megamenu-panel .module,
.rn-megamenu-panel .tb_text_wrap {
  background: transparent !important;
  background-color: transparent !important;

  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;

  opacity: 1 !important;
  box-sizing: border-box !important;
}

.rn-megamenu-panel .tb_layout_part_wrap,
.rn-megamenu-panel .themify_builder_content,
.rn-megamenu-panel .module_row,
.rn-megamenu-panel .mega-menu-row,
.rn-megamenu-panel .row_inner {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;

  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  overflow: visible !important;
}

/* Hoofdgrid: 400px / flexibel / 400px */
.rn-megamenu-panel .mega-menu-row {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;

  overflow: hidden !important;
  color: var(--rn-mega-text) !important;
}

.rn-megamenu-panel .mega-menu-row > .row_inner {
  display: grid !important;
  grid-template-columns:
    var(--rn-mega-left-width)
    minmax(0, 1fr)
    var(--rn-mega-right-width) !important;

  width: 100% !important;
  height: 100% !important;

  column-gap: 0 !important;
  align-items: stretch !important;
}

.rn-megamenu-panel .mega-menu-row > .row_inner > .module_column {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;

  height: var(--rn-mega-height) !important;
  min-height: var(--rn-mega-height) !important;
  max-height: var(--rn-mega-height) !important;

  float: none !important;
  clear: none !important;
  margin: 0 !important;

  overflow: visible !important;
  box-sizing: border-box !important;
}

.rn-megamenu-panel .mega-col-left { grid-column: 1 !important; }
.rn-megamenu-panel .mega-col-middle { grid-column: 2 !important; }
.rn-megamenu-panel .mega-col-right { grid-column: 3 !important; }

/* Hover-panels */
.rn-megamenu-panel .hover-panel:not(.active) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}

.rn-megamenu-panel .hover-panel.active {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: visible !important;
}

/* Linkerkolom */
.rn-megamenu-panel .mega-col-left {
  width: var(--rn-mega-left-width) !important;
  max-width: var(--rn-mega-left-width) !important;
  min-width: var(--rn-mega-left-width) !important;

  display: grid !important;
  place-items: center !important;

  padding: 0 !important;
  margin: 0 !important;

  text-align: center !important;
  overflow: visible !important;
}

.rn-megamenu-panel .mega-col-left .hover-panel.active,
.rn-megamenu-panel .mega-col-left .hover-panel.active .sub_column,
.rn-megamenu-panel .mega-col-left .hover-panel.active .module_column {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  height: 100% !important;

  display: grid !important;
  place-items: center !important;

  padding: 0 !important;
  margin: 0 !important;

  overflow: visible !important;
}

.rn-megamenu-panel .mega-col-left .hover-panel.active .module-image,
.rn-megamenu-panel .mega-col-left .hover-panel.active .image-wrap,
.rn-megamenu-panel .mega-col-left .hover-panel.active .image-wrap a {
  width: var(--rn-mega-left-image-box) !important;
  max-width: var(--rn-mega-left-image-box) !important;
  min-width: 0 !important;

  height: var(--rn-mega-left-image-box) !important;
  max-height: var(--rn-mega-left-image-box) !important;

  display: grid !important;
  place-items: center !important;

  padding: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;

  float: none !important;
  clear: none !important;

  position: static !important;
  transform: none !important;

  overflow: visible !important;
}

.rn-megamenu-panel .mega-col-left .hover-panel.active img {
  width: var(--rn-mega-image-size) !important;
  max-width: var(--rn-mega-image-size) !important;

  height: var(--rn-mega-image-size) !important;
  max-height: var(--rn-mega-image-size) !important;

  display: block !important;

  margin: 0 auto !important;
  padding: 0 !important;

  object-fit: contain !important;
  object-position: center center !important;

  float: none !important;
  clear: none !important;

  position: static !important;
  transform: none !important;
}

/* Middenkolom */
.rn-megamenu-panel .mega-col-middle {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;

  height: var(--rn-mega-height) !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding-left: var(--rn-mega-middle-padding) !important;
  padding-right: var(--rn-mega-middle-padding) !important;

  margin: 0 !important;
  text-align: left !important;
  overflow: visible !important;
}

.rn-megamenu-panel .mega-col-middle .hover-panel.active {
  display: flex !important;
  flex-direction: column !important;

  align-items: stretch !important;
  justify-content: center !important;

  width: 100% !important;
  max-width: none !important;

  height: 100% !important;
  min-height: 100% !important;

  margin: 0 !important;
  padding: 0 !important;

  overflow: visible !important;
}

.rn-megamenu-panel .mega-col-middle .module-text,
.rn-megamenu-panel .mega-col-middle .tb_text_wrap,
.rn-megamenu-panel .mega-col-middle .tb_text_wrap * {
  width: 100% !important;
  max-width: none !important;

  margin: 0 !important;
  padding: 0 !important;

  color: var(--rn-mega-text) !important;
  text-align: left !important;

  word-break: normal !important;
  overflow-wrap: normal !important;
}

.rn-megamenu-panel .mega-col-middle h2,
.rn-megamenu-panel .mega-col-middle .tb_text_wrap h2,
.rn-megamenu-panel .mega-col-middle .tb_text_wrap h2 * {
  color: var(--rn-mega-heading) !important;
}

/* CTA-button middenkolom */
.rn-megamenu-panel .mega-col-middle .module-buttons {
  width: 100% !important;

  display: flex !important;
  justify-content: flex-end !important;

  margin-top: 22px !important;
  text-align: right !important;
}

.rn-megamenu-panel .mega-col-middle .module-buttons-item {
  width: auto !important;

  display: flex !important;
  justify-content: flex-end !important;

  margin-left: auto !important;
  text-align: right !important;
}

.rn-megamenu-panel .mega-col-middle .module-buttons a.ui.builder_button {
  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;

  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;

  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;

  padding: 8px 24px !important;

  border-radius: 999px !important;
  border: 0 !important;

  background: var(--rn-mega-cta-bg) !important;
  background-color: var(--rn-mega-cta-bg) !important;

  color: var(--rn-mega-cta-text) !important;

  font-family: "cabin-bold", Cabin-Bold, sans-serif !important;
  font-size: 1.1em !important;
  font-weight: 100 !important;
  line-height: 1 !important;

  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;

  box-shadow: none !important;
}

.rn-megamenu-panel .mega-col-middle .module-buttons a.ui.builder_button:hover,
.rn-megamenu-panel .mega-col-middle .module-buttons a.ui.builder_button:focus {
  background: var(--rn-mega-cta-bg-hover) !important;
  background-color: var(--rn-mega-cta-bg-hover) !important;
  color: var(--rn-mega-cta-text-hover) !important;
}

.rn-megamenu-panel .mega-col-middle .module-buttons a.ui.builder_button i,
.rn-megamenu-panel .mega-col-middle .module-buttons a.ui.builder_button em,
.rn-megamenu-panel .mega-col-middle .module-buttons a.ui.builder_button svg {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  order: -1 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: currentColor !important;
  fill: currentColor !important;
}

.rn-megamenu-panel .mega-col-middle .module-buttons a.ui.builder_button span,
.rn-megamenu-panel .mega-col-middle .module-buttons a.ui.builder_button .button-text {
  display: inline-block !important;
  white-space: nowrap !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

/* Rechterkolom */
.rn-megamenu-panel .mega-col-right {
  grid-column: 3 !important;

  width: var(--rn-mega-right-width) !important;
  max-width: var(--rn-mega-right-width) !important;
  min-width: var(--rn-mega-right-width) !important;

  height: var(--rn-mega-height) !important;

  display: flex !important;
  flex-direction: column !important;

  align-items: center !important;
  justify-content: center !important;

  padding: 0 !important;
  margin: 0 !important;

  text-align: left !important;
  overflow: visible !important;
}

.rn-megamenu-panel .mega-col-right .mega-right-menu-wrap,
.rn-megamenu-panel .mega-col-right > .module,
.rn-megamenu-panel .mega-col-right > .module_subrow {
  width: var(--rn-mega-menu-content-width) !important;
  max-width: var(--rn-mega-menu-content-width) !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;

  margin-left: auto !important;
  margin-right: auto !important;

  padding: 0 !important;

  text-align: left !important;
  overflow: visible !important;
}

.rn-megamenu-panel .mega-col-right .module,
.rn-megamenu-panel .mega-col-right .module-buttons,
.rn-megamenu-panel .mega-col-right .module-buttons-item {
  width: 100% !important;
  max-width: 100% !important;

  margin-left: 0 !important;
  margin-right: 0 !important;

  text-align: left !important;
}

.rn-megamenu-panel .mega-col-right a.ui.builder_button {
  width: 100% !important;
  max-width: 100% !important;

  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;

  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;

  padding-top: 3px !important;
  padding-bottom: 3px !important;

  margin: 0 !important;

  color: var(--rn-mega-link) !important;
  background: transparent !important;
  background-color: transparent !important;

  border-color: transparent !important;
  box-shadow: none !important;

  line-height: 1.1 !important;

  text-align: left !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

.rn-megamenu-panel .mega-col-right a.ui.builder_button:hover,
.rn-megamenu-panel .mega-col-right a.ui.builder_button:focus,
.rn-megamenu-panel .mega-col-right a.ui.builder_button:hover *,
.rn-megamenu-panel .mega-col-right a.ui.builder_button:focus * {
  color: var(--rn-mega-link-hover) !important;
  fill: var(--rn-mega-link-hover) !important;
}

.rn-megamenu-panel .mega-col-right .is-hover-active,
.rn-megamenu-panel .mega-col-right .is-hover-active * {
  color: var(--rn-mega-link-active) !important;
  fill: var(--rn-mega-link-active) !important;
}

.rn-megamenu-panel .mega-col-right a.ui.builder_button *,
.rn-megamenu-panel .mega-col-right a.ui.builder_button span,
.rn-megamenu-panel .mega-col-right a.ui.builder_button .button-text {
  white-space: nowrap !important;
  flex-wrap: nowrap !important;
}

.rn-megamenu-panel .mega-col-right a.ui.builder_button i,
.rn-megamenu-panel .mega-col-right a.ui.builder_button em,
.rn-megamenu-panel .mega-col-right a.ui.builder_button svg {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  color: currentColor !important;
  fill: currentColor !important;
}



/* =========================================================
   v1e – Layout Part exact in 500px container forceren + 300px afbeeldingen
   ========================================================= */

.rn-megamenu-panel,
.rn-megamenu-panel * {
  box-sizing: border-box !important;
}

.rn-megamenu-panel .rn-megamenu-inner,
.rn-megamenu-panel .tb_layout_part_wrap,
.rn-megamenu-panel .themify_builder_content,
.rn-megamenu-panel .module_row,
.rn-megamenu-panel .mega-menu-row,
.rn-megamenu-panel .mega-menu-row > .row_inner {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.rn-megamenu-panel .mega-menu-row > .row_inner {
  display: grid !important;
  grid-template-columns: 400px minmax(0, 1fr) 400px !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  column-gap: 0 !important;
}

.rn-megamenu-panel .mega-menu-row > .row_inner > .mega-col-left,
.rn-megamenu-panel .mega-menu-row > .row_inner > .mega-col-middle,
.rn-megamenu-panel .mega-menu-row > .row_inner > .mega-col-right,
.rn-megamenu-panel .mega-col-left,
.rn-megamenu-panel .mega-col-middle,
.rn-megamenu-panel .mega-col-right {
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  float: none !important;
  clear: none !important;
  overflow: visible !important;
}

.rn-megamenu-panel .mega-col-left {
  width: 400px !important;
  min-width: 400px !important;
  max-width: 400px !important;
  display: grid !important;
  place-items: center !important;
}

.rn-megamenu-panel .mega-col-middle {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.rn-megamenu-panel .mega-col-right {
  width: 400px !important;
  min-width: 400px !important;
  max-width: 400px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.rn-megamenu-panel .mega-col-left .hover-panel.active,
.rn-megamenu-panel .mega-col-left .hover-panel.active > .subrow_inner,
.rn-megamenu-panel .mega-col-left .hover-panel.active .sub_column,
.rn-megamenu-panel .mega-col-left .hover-panel.active .module_column,
.rn-megamenu-panel .mega-col-left .hover-panel.active .module,
.rn-megamenu-panel .mega-col-left .hover-panel.active .module-image,
.rn-megamenu-panel .mega-col-left .hover-panel.active .image-wrap,
.rn-megamenu-panel .mega-col-left .hover-panel.active .image-wrap a {
  display: grid !important;
  place-items: center !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.rn-megamenu-panel .mega-col-left .hover-panel.active .module-image,
.rn-megamenu-panel .mega-col-left .hover-panel.active .image-wrap,
.rn-megamenu-panel .mega-col-left .hover-panel.active .image-wrap a {
  width: 300px !important;
  max-width: 300px !important;
  height: 300px !important;
  max-height: 300px !important;
}

.rn-megamenu-panel .mega-col-left .hover-panel.active img {
  width: 300px !important;
  max-width: 300px !important;
  height: 300px !important;
  max-height: 300px !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.rn-megamenu-panel .mega-col-right .mega-right-menu-wrap {
  width: var(--rn-mega-menu-content-width) !important;
  max-width: var(--rn-mega-menu-content-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}


/* =========================================================
   v1i – Themify/SVG lazyload-placeholder in megamenu verbergen
   ========================================================= */

.rn-megamenu-panel .mega-col-left svg.tf_svg_lazy,
.rn-megamenu-panel .mega-col-left .tf_svg_lazy:not(img),
.rn-megamenu-panel .mega-col-left .rn-megamenu-lazy-placeholder-hidden {
  opacity: 0 !important;
  visibility: hidden !important;
  filter: none !important;
  -webkit-filter: none !important;
  animation: none !important;
  transition: none !important;
}

.rn-megamenu-panel .mega-col-left img.rn-megamenu-preloaded-image,
.rn-megamenu-panel .mega-col-left img.rn-megamenu-img-loading,
.rn-megamenu-panel .mega-col-left img[data-tf-src],
.rn-megamenu-panel .mega-col-left img[data-lazy-src],
.rn-megamenu-panel .mega-col-left img[data-src] {
  filter: none !important;
  -webkit-filter: none !important;

  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 180ms ease !important;
  animation: none !important;
}

.rn-megamenu-panel .mega-col-left img.rn-megamenu-img-ready {
  opacity: 1 !important;
  visibility: visible !important;
}

.rn-megamenu-panel .mega-col-left img.rn-megamenu-img-error {
  opacity: 0 !important;
  visibility: hidden !important;
}


/* v1i – Themify gebruikt vaak een <img> als SVG-placeholder. Verberg die ook. */
.rn-megamenu-panel .mega-col-left img.tf_svg_lazy,
.rn-megamenu-panel .mega-col-left img.rn-megamenu-tf-placeholder-img,
.rn-megamenu-panel .mega-col-left img[src^="data:image/svg+xml"] {
  opacity: 0 !important;
  visibility: hidden !important;
  filter: none !important;
  -webkit-filter: none !important;
  animation: none !important;
  transition: none !important;
}

.rn-megamenu-panel .mega-col-left img.rn-megamenu-img-ready,
.rn-megamenu-panel .mega-col-left img.rn-megamenu-tf-placeholder-img.rn-megamenu-img-ready {
  opacity: 1 !important;
  visibility: visible !important;
  transition: opacity 180ms ease !important;
}

@media (max-width: 1159px) {
  .rn-megamenu-panel {
    display: none !important;
  }
}


/* =========================================================
   v1j – Themify lazyload-placeholder achtergrond verwijderen
   =========================================================

   Themify zet soms een inline background/gradient op het <img>-element zelf.
   Bij transparante PNG's blijft die placeholder dan zichtbaar achter de echte afbeelding.
   Binnen dit megamenu verwijderen we die achtergrond volledig.
*/

.rn-megamenu-panel .mega-col-left img,
.rn-megamenu-panel .mega-col-left img.wp-post-image,
.rn-megamenu-panel .mega-col-left img.tf_svg_lazy,
.rn-megamenu-panel .mega-col-left img.rn-megamenu-preloaded-image,
.rn-megamenu-panel .mega-col-left img.rn-megamenu-img-ready {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  filter: none !important;
  -webkit-filter: none !important;
}

.rn-megamenu-panel .mega-col-left .image-wrap,
.rn-megamenu-panel .mega-col-left .image-wrap a,
.rn-megamenu-panel .mega-col-left .module-image {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* =========================================================
   v1b – rechterkolom: inhoud exact horizontaal centreren
   ========================================================= */

.rn-megamenu-panel .mega-col-right {
  display: grid !important;
  place-items: center !important;
  justify-items: center !important;
  align-items: center !important;
  text-align: left !important;
}

/* Directe Themify-wrappers mogen de inhoud niet naar links/rechts duwen */
.rn-megamenu-panel .mega-col-right > .module,
.rn-megamenu-panel .mega-col-right > .module_subrow,
.rn-megamenu-panel .mega-col-right > .subrow_inner,
.rn-megamenu-panel .mega-col-right > .tb_holder,
.rn-megamenu-panel .mega-col-right > .themify_builder_sub_row {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;

  display: grid !important;
  place-items: center !important;

  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;

  text-align: left !important;
  box-sizing: border-box !important;
}

/* Het echte rechter menu-blok: vaste breedte en exact midden in de 400px kolom */
.rn-megamenu-panel .mega-col-right .mega-right-menu-wrap {
  width: var(--rn-mega-menu-content-width) !important;
  max-width: var(--rn-mega-menu-content-width) !important;
  min-width: var(--rn-mega-menu-content-width) !important;

  justify-self: center !important;
  align-self: center !important;

  margin-left: auto !important;
  margin-right: auto !important;

  text-align: left !important;
  box-sizing: border-box !important;
}

/* Links blijven binnen dat gecentreerde blok links uitgelijnd */
.rn-megamenu-panel .mega-col-right .mega-right-menu-wrap .module,
.rn-megamenu-panel .mega-col-right .mega-right-menu-wrap .module-buttons,
.rn-megamenu-panel .mega-col-right .mega-right-menu-wrap .module-buttons-item,
.rn-megamenu-panel .mega-col-right .mega-right-menu-wrap a.ui.builder_button {
  width: 100% !important;
  max-width: 100% !important;
  text-align: left !important;
}


/* =========================================================
   v1c – Hoverbrug tussen hoofdmenu-link en megamenu-paneel
   ========================================================= */

.rn-megamenu-hover-bridge {
  position: fixed !important;
  z-index: 2147481999 !important;
  display: none !important;
  pointer-events: none !important;
  background: transparent !important;
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.rn-megamenu-hover-bridge.rn-megamenu-bridge-active {
  display: block !important;
  pointer-events: auto !important;
}

/* =========================================================
   v1d – Open/sluitanimatie + cross-fade tussen menu-items
   ========================================================= */

.rn-megamenu-panel {
  transform-origin: top center !important;
  transform: scaleY(0) !important;

  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;

  transition: none !important;
  will-change: transform !important;
}

.rn-megamenu-panel .rn-megamenu-inner {
  opacity: 0 !important;
  transition: opacity 500ms ease !important;
  will-change: opacity !important;
}

/* Openen: container schaalt in 500ms van 0% naar 100%. */
.rn-megamenu-panel.rn-megamenu-is-opening,
.rn-megamenu-panel.rn-megamenu-is-open {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: scaleY(1) !important;
}

.rn-megamenu-panel.rn-megamenu-is-opening {
  transition: transform 500ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

/* Inhoud verschijnt pas nadat de container volledig geopend is. */
.rn-megamenu-panel.rn-megamenu-content-visible .rn-megamenu-inner {
  opacity: 1 !important;
}

/* Sluiten: eerst inhoud uitfaden in 150ms, daarna container in 200ms naar boven inklappen. */
.rn-megamenu-panel.rn-megamenu-is-closing {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: none !important;
  transform: scaleY(0) !important;
  transition: transform 200ms cubic-bezier(0.55, 0, 1, 0.45) 150ms !important;
}

.rn-megamenu-panel.rn-megamenu-is-closing .rn-megamenu-inner {
  opacity: 0 !important;
  transition: opacity 150ms ease !important;
}

/* Wisselen tussen hoofdmenu-items: container blijft open; alleen inhoud cross-fadet. */
.rn-megamenu-panel.rn-megamenu-is-switching-in,
.rn-megamenu-panel.rn-megamenu-is-switching-out {
  visibility: visible !important;
  opacity: 1 !important;
  transform: scaleY(1) !important;
  transition: none !important;
}

.rn-megamenu-panel.rn-megamenu-is-switching-in {
  pointer-events: auto !important;
}

.rn-megamenu-panel.rn-megamenu-is-switching-in .rn-megamenu-inner {
  opacity: 0 !important;
  transition: opacity 500ms ease !important;
}

.rn-megamenu-panel.rn-megamenu-is-switching-in.rn-megamenu-content-visible .rn-megamenu-inner {
  opacity: 1 !important;
}

.rn-megamenu-panel.rn-megamenu-is-switching-out {
  pointer-events: none !important;
  background: transparent !important;
  background-color: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.rn-megamenu-panel.rn-megamenu-is-switching-out .rn-megamenu-inner {
  opacity: 0 !important;
  transition: opacity 500ms ease !important;
}
