/**
 * Author: Redactie
 */
.umdk-image-actions {
  position: absolute;
  left: 16px;
  bottom: 16px;
  z-index: 7;
  display: flex;
  align-items: center;
  gap: 8px;
}

.umdk-outing-image-frame .umdk-image-actions {
  bottom: 20px;
  left: 20px;
}

.umdk-whatsapp-btn,
.umdk-favorite-btn,
.umdk-fav-counter {
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: #fff;
  color: #1e3a52;
  display: inline-grid;
  place-items: center;
  cursor: pointer;
  font-size: 18px;
  font-weight: 950;
  box-shadow: 0 10px 24px rgba(30,58,82,.16);
  text-decoration: none !important;
}

.umdk-whatsapp-btn svg {
  width: 19px;
  height: 19px;
  display: block;
}

.umdk-favorite-btn {
  color: #d92c2c;
}

.umdk-favorite-btn.active {
  background: #fff0f0;
  color: #d92c2c;
}

.umdk-image-actions .umdk-price-alert-button {
  position: static !important;
  min-height: 36px !important;
  height: 36px !important;
  left: auto !important;
  bottom: auto !important;
  box-shadow: 0 10px 24px rgba(255,144,0,.20);
}

.umdk-fav-counter {
  position: fixed;
  top: 14px;
  right: 64px;
  z-index: 1000;
  width: auto;
  min-width: 44px;
  padding: 0 10px;
  border-radius: 999px;
  gap: 4px;
  color: #d92c2c;
}

.umdk-fav-count {
  color: #1e3a52;
  font-size: 13px;
}

.umdk-favorites-modal {
  width: min(640px, calc(100vw - 28px));
}

.umdk-favorites-modal .umdk-modal-content {
  max-width: 640px !important;
}

.umdk-favorites-modal h2 {
  color: #1e3a52;
}

.umdk-favorites-intro {
  color: #333;
  margin-top: 0;
}

.umdk-favorites-list {
  display: grid;
  gap: 12px;
  max-height: 52vh;
  overflow: auto;
  padding-right: 4px;
}

.umdk-favorite-item {
  position: relative;
  display: grid;
  grid-template-columns: 96px minmax(0,1fr) 32px;
  gap: 12px;
  align-items: center;
  border: 1px solid #e9e4d8;
  border-radius: 18px;
  padding: 10px;
  background: #fffaf0;
}

.umdk-favorite-item img {
  width: 96px;
  height: 76px;
  object-fit: cover;
  border-radius: 14px;
}

.umdk-favorite-item h3 {
  margin: 0 0 4px;
  color: #1e3a52;
  font-size: 16px;
  line-height: 1.15;
}

.umdk-favorite-item p {
  margin: 0 0 4px;
  color: #7d6b46;
  font-weight: 800;
  font-size: 13px;
}

.umdk-favorite-item strong {
  display: block;
  color: #1e3a52;
  font-size: 17px;
  margin-bottom: 6px;
}

.umdk-favorite-item a {
  color: #998457;
  font-weight: 950;
  text-decoration: none !important;
}

.umdk-favorite-remove {
  width: 30px;
  height: 30px;
  border: 1px solid #e9e4d8;
  border-radius: 50%;
  background: #fff;
  color: #1e3a52;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.umdk-favorites-mail-form {
  display: grid;
  gap: 12px;
  margin-top: 16px;
  background: #fdf4df;
  border: 1px solid #eadcc2;
  border-radius: 18px;
  padding: 16px;
}

.umdk-favorites-mail-form label {
  display: grid;
  gap: 6px;
  color: #7d6b46;
  font-weight: 900;
}

.umdk-favorites-mail-form input {
  min-height: 44px;
  border: 1px solid #e9e4d8;
  border-radius: 12px;
  padding: 0 12px;
  font: inherit;
}

.umdk-favorites-mail-form button {
  min-height: 44px;
  border: 0;
  border-radius: 12px;
  background: #998457;
  color: #fff;
  font-weight: 950;
  cursor: pointer;
}

.umdk-favorites-message,
.umdk-favorites-empty {
  color: #1e3a52;
  font-weight: 850;
}

@media(max-width:760px) {
  .umdk-favorite-item {
    grid-template-columns: 76px minmax(0,1fr) 30px;
  }

  .umdk-favorite-item img {
    width: 76px;
    height: 64px;
  }

  .umdk-fav-counter {
    right: 62px;
    top: 12px;
  }
}


/* v15.1 favorite/share UI polish */
.umdk-image-actions {
  align-items: center !important;
  gap: 9px !important;
}

.umdk-whatsapp-btn,
.umdk-favorite-btn {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  background: #ffffff !important;
  box-shadow: 0 10px 24px rgba(30,58,82,.18) !important;
}

.umdk-whatsapp-btn svg {
  width: 24px !important;
  height: 24px !important;
  display: block !important;
  flex: 0 0 auto !important;
}

.umdk-favorite-btn {
  font-size: 25px !important;
  color: #d92c2c !important;
  text-align: center !important;
}

.umdk-image-actions .umdk-price-alert-button {
  min-height: 38px !important;
  height: 38px !important;
  border-radius: 999px !important;
  padding: 0 13px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.umdk-fav-counter {
  right: 78px !important;
  top: 14px !important;
  height: 42px !important;
  min-width: 58px !important;
  padding: 0 13px !important;
  border: 1px solid #eadcc2 !important;
  background: #fffaf0 !important;
  box-shadow: 0 12px 28px rgba(30,58,82,.18) !important;
  font-size: 19px !important;
}

.umdk-favorites-modal {
  overflow: visible !important;
}

.umdk-favorites-modal .umdk-modal-content {
  overflow: visible !important;
  max-height: none !important;
}

.umdk-favorites-list {
  max-height: none !important;
  overflow: visible !important;
  padding-right: 0 !important;
}

.umdk-favorite-remove {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  font-size: 22px !important;
  font-weight: 800 !important;
}

@media(max-width: 760px) {
  .umdk-fav-counter {
    right: 74px !important;
    top: 12px !important;
  }

  .umdk-whatsapp-btn,
  .umdk-favorite-btn {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
  }

  .umdk-whatsapp-btn svg {
    width: 22px !important;
    height: 22px !important;
  }

  .umdk-favorite-btn {
    font-size: 23px !important;
  }
}


/* v15.2 homepage popup/favorite button fixes */
.umdk-image-actions .umdk-price-alert-button {
  gap: 5px !important;
  color: #7d4a00 !important;
  background: linear-gradient(135deg, #fff3df 0%, #ffcf7a 100%) !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.umdk-price-alert-flame {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  font-size: 15px !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

.umdk-image-actions .umdk-price-alert-button::before,
.umdk-image-actions .umdk-price-alert-button::after {
  display: none !important;
  content: none !important;
}

.umdk-outing-image,
.umdk-image-slot,
.umdk-all-image-slot,
.umdk-outing figure {
  position: relative;
}


/* v15.2.4 price alert flame hard reset */
.umdk-image-actions .umdk-price-alert-button,
.umdk-outing-image-frame .umdk-price-alert-button {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow: hidden !important;
}

.umdk-image-actions .umdk-price-alert-button > span,
.umdk-outing-image-frame .umdk-price-alert-button > span {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  transform: none !important;
  line-height: 1 !important;
}

.umdk-image-actions .umdk-price-alert-button .umdk-price-alert-flame,
.umdk-outing-image-frame .umdk-price-alert-button .umdk-price-alert-flame {
  font-size: 15px !important;
  inline-size: auto !important;
  block-size: auto !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  background: transparent !important;
}

/* Some themes/plugins stretch first child spans inside buttons; this prevents the orange bar effect */
.umdk-image-actions .umdk-price-alert-button span:first-child,
.umdk-outing-image-frame .umdk-price-alert-button span:first-child {
  min-width: auto !important;
  width: auto !important;
}


/* v15.2.6 force clean pricealert flame emoji */
.umdk-image-actions .umdk-price-alert-button {
  position: relative !important;
}

.umdk-image-actions .umdk-price-alert-button .umdk-price-alert-flame {
  font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif !important;
  font-size: 16px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 16px !important;
  min-width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
  overflow: visible !important;
  color: initial !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

.umdk-image-actions .umdk-price-alert-button .umdk-price-alert-flame::before,
.umdk-image-actions .umdk-price-alert-button .umdk-price-alert-flame::after {
  display: none !important;
  content: none !important;
}

.umdk-image-actions .umdk-price-alert-button > span:first-child {
  background: none !important;
  border-left: 0 !important;
  box-shadow: none !important;
}


/* v15.3 fixed top action positioning */
.umdk-menu-open,
.umdk-all-menu-open {
  position: fixed !important;
  top: 20px !important;
  right: 20px !important;
  z-index: 1001 !important;
}

.umdk-fav-counter {
  position: fixed !important;
  top: 20px !important;
  right: 78px !important;
  z-index: 1000 !important;
}

@media(max-width: 760px) {
  .umdk-menu-open,
  .umdk-all-menu-open {
    top: 20px !important;
    right: 20px !important;
  }

  .umdk-fav-counter {
    top: 20px !important;
    right: 76px !important;
  }
}


/* v16.8 menu color + clickable footer */
.umdk-menu-modal .umdk-modal-content,
.umdk-all-menu-modal .umdk-modal-content {
  background:
    radial-gradient(circle at 100% 0%, rgba(253,244,223,.95) 0 92px, transparent 93px),
    linear-gradient(135deg, #ffffff 0%, #fffaf0 100%) !important;
}

.umdk-popup-menu .umdk-menu-item::before {
  background: #fdf4df !important;
  color: #998457 !important;
}

.umdk-menu-modal .umdk-modal-content::after,
.umdk-all-menu-modal .umdk-modal-content::after {
  display: none !important;
  content: none !important;
}

.umdk-menu-footer-links {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  color: #8b7a55;
  text-align: center;
  font-size: 12px;
  font-weight: 800;
  padding-top: 16px;
}

.umdk-menu-footer-links a {
  color: #8b7a55 !important;
  text-decoration: none !important;
}

.umdk-menu-footer-links a:hover {
  color: #1e3a52 !important;
  text-decoration: underline !important;
}

.umdk-popup-menu {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}


/* v17.1 search menu item */
.umdk-popup-menu .umdk-menu-item[href*="uitjes-zoeken"] {
  --umdk-menu-icon: "🔎";
}


/* v18.1 free outings menu item */
.umdk-popup-menu .umdk-menu-item[href*="gratis-uitjes"] {
  --umdk-menu-icon: "💚";
}


/* v19 budget outings menu item */
.umdk-popup-menu .umdk-menu-item[href*="uitjes-onder-10-euro"] {
  --umdk-menu-icon: "💸";
}


/* v19.1 complete menu items */
.umdk-popup-menu .umdk-menu-item[href*="uitjes-zoeken"] {
  --umdk-menu-icon: "🔎";
}
.umdk-popup-menu .umdk-menu-item[href*="gratis-uitjes"] {
  --umdk-menu-icon: "💚";
}
.umdk-popup-menu .umdk-menu-item[href*="uitjes-onder-10-euro"] {
  --umdk-menu-icon: "💸";
}


/* v20 map menu item */
.umdk-popup-menu .umdk-menu-item[href*="uitjes-op-de-kaart"] {
  --umdk-menu-icon: "🗺️";
}


/* v24.6 distinct menu icons */
.umdk-popup-menu .umdk-menu-item[href="/"],
.umdk-popup-menu .umdk-menu-item[href$="/"] {
  --umdk-menu-icon: "🏠";
}

.umdk-popup-menu .umdk-menu-add {
  --umdk-menu-icon: "✨";
}

.umdk-popup-menu .umdk-menu-item[href*="toon-alle-uitjes"] {
  --umdk-menu-icon: "🎟️";
}

.umdk-popup-menu .umdk-menu-item[href*="uitjes-zoeken"] {
  --umdk-menu-icon: "🔎";
}

.umdk-popup-menu .umdk-menu-item[href*="gratis-uitjes"] {
  --umdk-menu-icon: "💚";
}

.umdk-popup-menu .umdk-menu-item[href*="uitjes-onder-10-euro"] {
  --umdk-menu-icon: "💸";
}

.umdk-popup-menu .umdk-menu-item[href*="uitjes-op-de-kaart"] {
  --umdk-menu-icon: "🗺️";
}

.umdk-popup-menu .umdk-menu-item[href*="privacyverklaring"] {
  --umdk-menu-icon: "🔐";
}

.umdk-popup-menu .umdk-menu-item[href*="disclaimer"] {
  --umdk-menu-icon: "⚠️";
}

.umdk-popup-menu .umdk-menu-item[href*="voorwaarden"] {
  --umdk-menu-icon: "📄";
}

.umdk-popup-menu .umdk-menu-item[href*="sitemap"] {
  --umdk-menu-icon: "🧭";
}

.umdk-popup-menu .umdk-menu-item[href*="contact"] {
  --umdk-menu-icon: "✉️";
}

.umdk-popup-menu .umdk-menu-item[href*="vakantie"] {
  --umdk-menu-icon: "🏡";
}


/* v24.7 menu icons without background boxes */
.umdk-popup-menu .umdk-menu-item::before {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin-right: 10px !important;
  font-size: 22px !important;
}


/* v24.7 active selected day styling */
.umdk-map-day-slicer button.is-active,
.umdk-map-day-slicer button.active,
.umdk-map-day-slicer button[aria-pressed="true"] {
  background: #1e3a52 !important;
  color: #fff !important;
  border-color: #1e3a52 !important;
  box-shadow: 0 14px 30px rgba(30,58,82,.24) !important;
  transform: translateY(-1px);
}

.umdk-map-day-slicer button.is-active strong,
.umdk-map-day-slicer button.active strong,
.umdk-map-day-slicer button[aria-pressed="true"] strong,
.umdk-map-day-slicer button.is-active span,
.umdk-map-day-slicer button.active span,
.umdk-map-day-slicer button[aria-pressed="true"] span {
  color: #fff !important;
}

.umdk-map-day-slicer button.is-active small,
.umdk-map-day-slicer button.active small,
.umdk-map-day-slicer button[aria-pressed="true"] small {
  color: rgba(255,255,255,.82) !important;
}


/* v24.9 mobile links no underline */
@media(max-width: 760px) {
  .umdk-all a,
  .umdk-all a:hover,
  .umdk-all a:focus,
  .umdk-all a:active,
  .umdk-modal a,
  .umdk-modal a:hover,
  .umdk-modal a:focus,
  .umdk-modal a:active,
  .umdk-popup-menu a,
  .umdk-popup-menu a:hover,
  .umdk-popup-menu a:focus,
  .umdk-popup-menu a:active,
  .umdk-map-page a,
  .umdk-map-page a:hover,
  .umdk-map-page a:focus,
  .umdk-map-page a:active,
  .umdk-menu-item,
  .umdk-menu-item:hover,
  .umdk-menu-item:focus,
  .umdk-menu-item:active {
    text-decoration: none !important;
    text-underline-offset: 0 !important;
    -webkit-text-decoration-line: none !important;
    text-decoration-line: none !important;
  }
}




  .umdk-outing-image-frame,
  .umdk-card-image,
  .umdk-search-card-image,
  .umdk-all-card-image {
    padding: 6px !important;
    border-radius: 20px !important;
  }
}


/* v25.1 remove all unwanted underlines */
.umdk-all a,
.umdk-all a:hover,
.umdk-all a:focus,
.umdk-all a:active,
.umdk-popup-menu a,
.umdk-popup-menu a:hover,
.umdk-popup-menu a:focus,
.umdk-popup-menu a:active,
.umdk-popup-menu .umdk-menu-item,
.umdk-popup-menu .umdk-menu-item:hover,
.umdk-popup-menu .umdk-menu-item:focus,
.umdk-popup-menu .umdk-menu-item:active,
.umdk-modal a,
.umdk-modal a:hover,
.umdk-modal a:focus,
.umdk-modal a:active,
.umdk-all * {
  text-decoration: none !important;
  -webkit-text-decoration-line: none !important;
  text-decoration-line: none !important;
  text-underline-offset: 0 !important;
}

.umdk-popup-menu .umdk-menu-item {
  border-bottom: 0 !important;
}

.umdk-popup-menu .umdk-menu-item span,
.umdk-popup-menu .umdk-menu-item strong,
.umdk-popup-menu .umdk-menu-item b {
  text-decoration: none !important;
}


/* v25.2 unified premium menu styling */
.umdk-menu-modal .umdk-modal-content,
.umdk-all-menu-modal .umdk-modal-content {
  width: min(620px, calc(100vw - 34px)) !important;
  max-width: 620px !important;
  border-radius: 28px !important;
  padding: 34px 34px 24px !important;
  background: #fffdf8 !important;
  border: 1px solid #eadcc2 !important;
  box-shadow: 0 24px 70px rgba(30,58,82,.24) !important;
  overflow: hidden !important;
}

.umdk-menu-modal .umdk-modal-content::after,
.umdk-all-menu-modal .umdk-modal-content::after {
  content: "";
  position: absolute;
  right: -34px;
  top: -48px;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: #f8edd2;
  opacity: .9;
  pointer-events: none;
}

.umdk-menu-modal h2,
.umdk-all-menu-modal h2 {
  position: relative;
  z-index: 1;
  font-family: 'Caveat', cursive !important;
  color: #1e3a52 !important;
  font-size: 44px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  margin: 0 0 20px !important;
}

.umdk-menu-modal .umdk-close,
.umdk-all-menu-modal .umdk-close {
  position: absolute !important;
  z-index: 3 !important;
  top: 18px !important;
  right: 18px !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 16px !important;
  display: grid !important;
  place-items: center !important;
  background: #fff !important;
  color: #1e3a52 !important;
  border: 1px solid #e7dac4 !important;
  box-shadow: 0 10px 24px rgba(30,58,82,.10) !important;
  font-size: 26px !important;
  line-height: 1 !important;
}

.umdk-popup-menu {
  position: relative;
  z-index: 1;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin: 0 0 22px !important;
}

.umdk-popup-menu .umdk-menu-item {
  min-height: 66px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px 16px !important;
  border-radius: 18px !important;
  background: #fff !important;
  border: 1px solid #eadcc2 !important;
  color: #1e3a52 !important;
  box-shadow: 0 10px 22px rgba(30,58,82,.045) !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1.18 !important;
  white-space: normal !important;
  word-break: normal !important;
  text-decoration: none !important;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease !important;
}

.umdk-popup-menu .umdk-menu-item:hover {
  transform: translateY(-1px) !important;
  border-color: #d8c28e !important;
  box-shadow: 0 14px 28px rgba(30,58,82,.08) !important;
}

.umdk-popup-menu .umdk-menu-item::before {
  content: var(--umdk-menu-icon, "✨") !important;
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 auto !important;
  width: 28px !important;
  height: 28px !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 24px !important;
  line-height: 1 !important;
}

.umdk-menu-modal .umdk-menu-footer,
.umdk-all-menu-modal .umdk-menu-footer,
.umdk-menu-footer {
  position: relative;
  z-index: 1;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  padding-top: 16px !important;
  border-top: 1px solid #eadcc2 !important;
  color: #7d6b46 !important;
  font-size: 13px !important;
  font-weight: 850 !important;
}

.umdk-menu-footer a,
.umdk-menu-footer a:hover,
.umdk-menu-footer a:focus,
.umdk-menu-footer a:active {
  color: #7d6b46 !important;
  text-decoration: none !important;
  line-height: 1.2 !important;
}

@media(max-width: 640px) {
  .umdk-menu-modal .umdk-modal-content,
  .umdk-all-menu-modal .umdk-modal-content {
    width: min(430px, calc(100vw - 28px)) !important;
    padding: 30px 24px 22px !important;
    border-radius: 24px !important;
  }

  .umdk-menu-modal h2,
  .umdk-all-menu-modal h2 {
    font-size: 40px !important;
    margin-bottom: 18px !important;
  }

  .umdk-popup-menu {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .umdk-popup-menu .umdk-menu-item {
    min-height: 64px !important;
    padding: 10px 12px !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
  }

  .umdk-popup-menu .umdk-menu-item::before {
    width: 24px !important;
    height: 24px !important;
    font-size: 22px !important;
  }
}

@media(max-width: 390px) {
  .umdk-popup-menu .umdk-menu-item {
    font-size: 14px !important;
    padding: 10px !important;
    gap: 9px !important;
  }
}


/* v25.3 final unified menu: no scrollbars, same layout everywhere */
.umdk-modal.umdk-menu-modal,
.umdk-modal.umdk-all-menu-modal,
dialog.umdk-menu-modal,
dialog.umdk-all-menu-modal {
  padding: 0 !important;
  overflow: visible !important;
  max-width: none !important;
  width: auto !important;
  background: transparent !important;
  border: 0 !important;
}

.umdk-menu-modal .umdk-modal-content,
.umdk-all-menu-modal .umdk-modal-content {
  box-sizing: border-box !important;
  width: min(620px, calc(100vw - 32px)) !important;
  max-width: calc(100vw - 32px) !important;
  max-height: calc(100dvh - 32px) !important;
  margin: auto !important;
  overflow: hidden !important;
  border-radius: 28px !important;
  padding: 34px 34px 24px !important;
  background: #fffdf8 !important;
  border: 1px solid #eadcc2 !important;
  box-shadow: 0 24px 70px rgba(30,58,82,.24) !important;
}

.umdk-menu-modal .umdk-modal-content *,
.umdk-all-menu-modal .umdk-modal-content * {
  box-sizing: border-box !important;
}

.umdk-popup-menu {
  width: 100% !important;
  max-width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  overflow: visible !important;
}

.umdk-popup-menu .umdk-menu-item {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 66px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px 16px !important;
  border-radius: 18px !important;
  background: #fff !important;
  border: 1px solid #eadcc2 !important;
  color: #1e3a52 !important;
  box-shadow: 0 10px 22px rgba(30,58,82,.045) !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1.18 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  text-decoration: none !important;
}

.umdk-popup-menu .umdk-menu-item::before {
  content: var(--umdk-menu-icon, "✨") !important;
  flex: 0 0 28px !important;
  width: 28px !important;
  height: 28px !important;
  display: inline-grid !important;
  place-items: center !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  font-size: 24px !important;
  line-height: 1 !important;
}

.umdk-menu-modal h2,
.umdk-all-menu-modal h2 {
  font-family: 'Caveat', cursive !important;
  font-size: 44px !important;
  line-height: 1 !important;
  margin: 0 0 20px !important;
  color: #1e3a52 !important;
  font-weight: 700 !important;
}

.umdk-menu-modal .umdk-close,
.umdk-all-menu-modal .umdk-close {
  top: 18px !important;
  right: 18px !important;
}

.umdk-menu-footer,
.umdk-menu-modal .umdk-menu-footer,
.umdk-all-menu-modal .umdk-menu-footer {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 8px !important;
  line-height: 1.2 !important;
}

@media(max-width: 640px) {
  .umdk-menu-modal .umdk-modal-content,
  .umdk-all-menu-modal .umdk-modal-content {
    width: min(430px, calc(100vw - 28px)) !important;
    max-width: calc(100vw - 28px) !important;
    padding: 30px 24px 22px !important;
    border-radius: 24px !important;
  }

  .umdk-popup-menu {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .umdk-popup-menu .umdk-menu-item {
    min-height: 64px !important;
    padding: 10px 12px !important;
    font-size: 15px !important;
    line-height: 1.16 !important;
  }

  .umdk-popup-menu .umdk-menu-item::before {
    flex-basis: 24px !important;
    width: 24px !important;
    height: 24px !important;
    font-size: 22px !important;
  }
}

@media(max-width: 390px) {
  .umdk-menu-modal .umdk-modal-content,
  .umdk-all-menu-modal .umdk-modal-content {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    padding: 28px 20px 20px !important;
  }

  .umdk-popup-menu .umdk-menu-item {
    font-size: 14px !important;
    padding: 10px !important;
    gap: 8px !important;
  }
}


/* v25.4 unified logo styling everywhere */
.umdk-all-logo,
.umdk-all .umdk-all-logo,
.umdk-search-page .umdk-all-logo,
.umdk-map-page .umdk-all-logo,
.umdk-free-page .umdk-all-logo,
.umdk-budget-page .umdk-all-logo,
.umdk-weather-page .umdk-all-logo,
.umdk-legal-page .umdk-all-logo,
.umdk-all-hero .umdk-all-logo,
.umdk-search-hero .umdk-all-logo,
.umdk-map-hero .umdk-all-logo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: 100% !important;
  padding: 10px !important;
  margin: 0 auto 18px !important;
  border: 2px dashed #dfd2bd !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 10px 22px rgba(30,58,82,.05) !important;
  text-decoration: none !important;
  overflow: hidden !important;
}

.umdk-all-logo::before,
.umdk-all-logo::after {
  display: none !important;
  content: none !important;
}

.umdk-all-logo img {
  display: block !important;
  width: auto !important;
  max-width: 180px !important;
  height: auto !important;
  border-radius: 14px !important;
  margin: 0 auto !important;
}

.umdk-all-header .umdk-all-logo,
.umdk-all-hero .umdk-all-logo {
  width: fit-content !important;
  min-width: 0 !important;
}

@media(max-width: 760px) {
  .umdk-all-logo {
    padding: 8px !important;
    border-radius: 18px !important;
    margin-bottom: 16px !important;
  }

  .umdk-all-logo img {
    max-width: 150px !important;
  }
}


/* v25.5 unified logo size everywhere */
.umdk-all-logo,
.umdk-all .umdk-all-logo,
.umdk-search-page .umdk-all-logo,
.umdk-map-page .umdk-all-logo,
.umdk-free-page .umdk-all-logo,
.umdk-budget-page .umdk-all-logo,
.umdk-weather-page .umdk-all-logo,
.umdk-legal-page .umdk-all-logo,
.umdk-all-hero .umdk-all-logo,
.umdk-search-hero .umdk-all-logo,
.umdk-map-hero .umdk-all-logo {
  width: fit-content !important;
  min-width: 0 !important;
  max-width: none !important;
  padding: 10px !important;
  margin: 0 auto 20px !important;
}

.umdk-all-logo img,
.umdk-all .umdk-all-logo img,
.umdk-search-page .umdk-all-logo img,
.umdk-map-page .umdk-all-logo img,
.umdk-free-page .umdk-all-logo img,
.umdk-budget-page .umdk-all-logo img,
.umdk-weather-page .umdk-all-logo img,
.umdk-legal-page .umdk-all-logo img,
.umdk-all-hero .umdk-all-logo img,
.umdk-search-hero .umdk-all-logo img,
.umdk-map-hero .umdk-all-logo img {
  width: 120px !important;
  max-width: 120px !important;
  min-width: 120px !important;
  height: auto !important;
  object-fit: contain !important;
}

@media(max-width: 760px) {
  .umdk-all-logo img,
  .umdk-all .umdk-all-logo img,
  .umdk-search-page .umdk-all-logo img,
  .umdk-map-page .umdk-all-logo img,
  .umdk-free-page .umdk-all-logo img,
  .umdk-budget-page .umdk-all-logo img,
  .umdk-weather-page .umdk-all-logo img,
  .umdk-legal-page .umdk-all-logo img,
  .umdk-all-hero .umdk-all-logo img,
  .umdk-search-hero .umdk-all-logo img,
  .umdk-map-hero .umdk-all-logo img {
    width: 120px !important;
    max-width: 120px !important;
    min-width: 120px !important;
  }
}


/* v25.6 fixed vakantiepark block + duplicate add-block prevention */
.umdk-holidaypark-block {
  position: relative !important;
  overflow: hidden !important;
  display: block !important;
  margin: 24px 0 !important;
  padding: 24px !important;
  border-radius: 26px !important;
  border: 1px solid #dce7cf !important;
  background: #eaf4dc !important;
  box-shadow: 0 16px 38px rgba(30,58,82,.07) !important;
}

.umdk-holidaypark-block::after {
  content: "🏡" !important;
  position: absolute !important;
  right: 22px !important;
  top: 16px !important;
  font-size: 54px !important;
  opacity: .18 !important;
  pointer-events: none !important;
}

.umdk-holidaypark-content {
  position: relative !important;
  z-index: 1 !important;
  max-width: 920px !important;
}

.umdk-holidaypark-kicker {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 30px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #7d6b46 !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  box-shadow: 0 8px 18px rgba(30,58,82,.06) !important;
  margin-bottom: 10px !important;
}

.umdk-holidaypark-block h2 {
  margin: 0 0 10px !important;
  color: #1e3a52 !important;
  font-size: 30px !important;
  line-height: 1.12 !important;
  font-weight: 950 !important;
}

.umdk-holidaypark-block p {
  margin: 0 0 16px !important;
  color: #333 !important;
  line-height: 1.7 !important;
  font-size: 16px !important;
  max-width: 850px !important;
}

.umdk-holidaypark-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  background: #1e3a52 !important;
  color: #fff !important;
  text-decoration: none !important;
  font-weight: 950 !important;
  box-shadow: 0 12px 28px rgba(30,58,82,.16) !important;
}

@media(max-width: 760px) {
  .umdk-holidaypark-block {
    padding: 20px !important;
    border-radius: 22px !important;
  }

  .umdk-holidaypark-block h2 {
    font-size: 25px !important;
  }

  .umdk-holidaypark-button {
    width: 100% !important;
    text-align: center !important;
  }
}


/* v11.2 homepage popup description clamp */
.umdk-popup-description,
.umdk-outing-popup-description,
.umdk-map-popup-description,
.umdk-home-popup-description,
.umdk-popup-card p,
.umdk-popup-content p,
.umdk-outing-popup p {
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}


/* v18.7 Regenproof pill */
.umdk-rainproof-pill{
    position:absolute;
    top:14px;
    right:14px;
    z-index:5;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 14px;
    border-radius:999px;
    background:#6f88a0;
    color:#fff;
    font-size:13px;
    font-weight:600;
    line-height:1;
    box-shadow:0 4px 12px rgba(0,0,0,.12);
    white-space:nowrap;
}

.umdk-card-image-wrap,
.umdk-uitje-image-wrap,
.umdk-image-wrap{
    position:relative;
}


.umdk-about-section,
.umdk-outing-description-section {
    margin-top:20px !important;
}


.umdk-tlo {
    color:#1e3a52 !important;
}


/* v18.84 review/tip popup: hide ugly side scrollbar without changing page behavior */
.umdk-review-modal,
.umdk-review-popup,
.umdk-tip-modal,
.umdk-tip-popup,
.umdk-parent-review-modal,
.umdk-parent-tip-modal {
    overflow: visible !important;
}

.umdk-review-modal .umdk-modal-content,
.umdk-review-popup .umdk-modal-content,
.umdk-tip-modal .umdk-modal-content,
.umdk-tip-popup .umdk-modal-content,
.umdk-parent-review-modal .umdk-modal-content,
.umdk-parent-tip-modal .umdk-modal-content {
    overflow: visible !important;
    max-height: none !important;
    scrollbar-width: none !important;
}

.umdk-review-modal .umdk-modal-content::-webkit-scrollbar,
.umdk-review-popup .umdk-modal-content::-webkit-scrollbar,
.umdk-tip-modal .umdk-modal-content::-webkit-scrollbar,
.umdk-tip-popup .umdk-modal-content::-webkit-scrollbar,
.umdk-parent-review-modal .umdk-modal-content::-webkit-scrollbar,
.umdk-parent-tip-modal .umdk-modal-content::-webkit-scrollbar {
    display: none !important;
}


/* UMDK definitive menu icons 5.9.5 - voorkomt dubbele huisjes door tekst/class te gebruiken */
.umdk-popup-menu {
  display: grid;
}
.umdk-popup-menu .umdk-menu-item.umdk-menu-home { order: -1000 !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-budgetplanner { order: -999 !important; }
.umdk-popup-menu .umdk-menu-item::before {
  content: attr(data-umdk-icon) !important;
  display: inline-block !important;
  width: 24px !important;
  min-width: 24px !important;
  margin-right: 10px !important;
  text-align: center !important;
  font-size: 22px !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}
.umdk-popup-menu .umdk-menu-item:not([data-umdk-icon])::before { content: "🎈" !important; }


/* UMDK menu icons definitive fix 5.9.9
   Eén icon-bron: --umdk-menu-icon / data-umdk-icon op het menu-item.
   De brede href$="/" huisjes-regels blijven hierdoor niet meer leidend. */
.umdk-popup-menu .umdk-menu-item::before,
.umdk-popup-menu a.umdk-menu-item::before,
.umdk-popup-menu li.umdk-menu-item::before {
  content: var(--umdk-menu-icon, attr(data-umdk-icon)) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  margin: 0 12px 0 0 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  border-radius: 0 !important;
}
.umdk-popup-menu .umdk-menu-item.umdk-menu-home { --umdk-menu-icon: "🏠" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-budgetplanner { --umdk-menu-icon: "💰" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-add { --umdk-menu-icon: "➕" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-all-outings { --umdk-menu-icon: "🎟️" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-search { --umdk-menu-icon: "🔎" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-free { --umdk-menu-icon: "💚" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-under-ten { --umdk-menu-icon: "💸" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-map { --umdk-menu-icon: "🗺️" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-tips { --umdk-menu-icon: "💡" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-restaurants { --umdk-menu-icon: "🍽️" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-privacy { --umdk-menu-icon: "🔒" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-disclaimer { --umdk-menu-icon: "⚖️" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-terms { --umdk-menu-icon: "📄" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-sitemap { --umdk-menu-icon: "🧭" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-contact { --umdk-menu-icon: "✉️" !important; }
.umdk-popup-menu .umdk-menu-item[href*="budgetplanner"] { --umdk-menu-icon: "💰" !important; }
.umdk-popup-menu .umdk-menu-item[href*="uitje-toevoegen"] { --umdk-menu-icon: "➕" !important; }
.umdk-popup-menu .umdk-menu-item[href*="toon-alle-uitjes"] { --umdk-menu-icon: "🎟️" !important; }
.umdk-popup-menu .umdk-menu-item[href*="uitjes-zoeken"] { --umdk-menu-icon: "🔎" !important; }
.umdk-popup-menu .umdk-menu-item[href*="gratis-uitjes"] { --umdk-menu-icon: "💚" !important; }
.umdk-popup-menu .umdk-menu-item[href*="uitjes-onder-10"] { --umdk-menu-icon: "💸" !important; }
.umdk-popup-menu .umdk-menu-item[href*="uitjes-op-de-kaart"] { --umdk-menu-icon: "🗺️" !important; }
.umdk-popup-menu .umdk-menu-item[href*="tips-voor-ouders"] { --umdk-menu-icon: "💡" !important; }
.umdk-popup-menu .umdk-menu-item[href*="restaurants"] { --umdk-menu-icon: "🍽️" !important; }
.umdk-popup-menu .umdk-menu-item[href*="privacy"] { --umdk-menu-icon: "🔒" !important; }
.umdk-popup-menu .umdk-menu-item[href*="disclaimer"] { --umdk-menu-icon: "⚖️" !important; }
.umdk-popup-menu .umdk-menu-item[href*="voorwaarden"] { --umdk-menu-icon: "📄" !important; }
.umdk-popup-menu .umdk-menu-item[href*="sitemap"] { --umdk-menu-icon: "🧭" !important; }
.umdk-popup-menu .umdk-menu-item[href*="contact"] { --umdk-menu-icon: "✉️" !important; }
.umdk-popup-menu .umdk-menu-item.umdk-menu-home[href$="/"] { --umdk-menu-icon: "🏠" !important; }
