/* ─── Sidebar Filter Borders ────────────────────────────────────────── */
.vdv-sidebar > div {
  border: 1px solid oklch(0.24 0.018 55 / 0.12) !important;
  padding: 1.25rem !important;
  background-color: oklch(0.98 0.005 55 / 0.45) !important;
  border-radius: 4px !important;
  margin-bottom: 1.5rem !important;
}

.vdv-sidebar > div label.vdv-sidebar-title {
  margin-top: 0 !important;
  display: block !important;
  font-weight: 600 !important;
}

/* ─── Mobile Navigation Menu Background ────────────────────────────── */
.mobile-menu-bg,
#mobile-menu {
  background-color: oklch(0.24 0.018 55 / 0.99) !important;
}

header #mobile-menu:not(.hidden),
header .mobile-menu-bg:not(.hidden) {
  background-color: oklch(0.24 0.018 55 / 0.99) !important;
  backdrop-filter: none !important;
}

/* ─── Mobile Responsiveness Polish ──────────────────────────────────── */
@media (max-width: 768px) {
  /* Hide diamond / GPU glow glitches */
  .ember,
  [class*="ember"],
  .pointer-events-none.blur-3xl,
  .pointer-events-none.blur-2xl {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
  }

  .slow-pan {
    animation: none !important;
    transform: none !important;
  }

  /* Homepage / hero images */
  .vdv-hero-slideshow img,
  .vdv-section img.slow-pan,
  section.relative img.object-cover {
    max-width: 100% !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  /* Spacing / overflow */
  .vdv-section {
    overflow-x: hidden !important;
  }

  body {
    overflow-x: hidden !important;
  }

  /* Buttons / CTAs more tappable */
  .vdv-btn,
  .eyebrow.inline-flex,
  .add-to-cart-btn {
    min-height: 44px !important;
  }

  /* Product cards */
  .vdv-card img,
  .vdv-card-img,
  .vdv-shop-img,
  .vdv-product-image {
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }

  /* Map: prevent horizontal bleed */
  svg[aria-label*="Wijnregio"],
  .map-region-group {
    max-width: 100% !important;
  }
}

@media (max-width: 480px) {
  .font-serif.text-\[clamp\(2\.75rem\,7vw\,6\.5rem\)\],
  h1.font-serif {
    word-break: break-word;
  }
}

/* ─── Age + newsletter popup ────────────────────────────────────────── */
#vdv-addons-popup-overlay {
  font-family: "Figtree", system-ui, sans-serif;
}

/* ─── WooCommerce My Account Custom Premium Styles ────────────────────── */
.woocommerce-MyAccount-navigation {
  margin-bottom: 2rem !important;
  width: 100% !important;
  float: none !important;
}
.woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.5rem !important;
  border-bottom: 1px solid oklch(0.24 0.018 55 / 0.1) !important;
  padding-bottom: 1rem !important;
}
.woocommerce-MyAccount-navigation li {
  margin: 0 !important;
}
.woocommerce-MyAccount-navigation li a {
  font-family: ui-sans-serif, system-ui, sans-serif !important;
  text-transform: uppercase !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.12em !important;
  font-weight: 600 !important;
  color: oklch(0.24 0.018 55 / 0.7) !important;
  border: 1px solid oklch(0.24 0.018 55 / 0.1) !important;
  padding: 0.5rem 0.9rem !important;
  border-radius: 2px !important;
  transition: all 0.3s ease !important;
  display: inline-block !important;
}
.woocommerce-MyAccount-navigation li a:hover,
.woocommerce-MyAccount-navigation li.is-active a {
  color: oklch(1 0 0) !important;
  background-color: var(--clay) !important;
  border-color: var(--clay) !important;
}
.woocommerce-MyAccount-content {
  background: oklch(1 0 0) !important;
  border: 1px solid oklch(0.24 0.018 55 / 0.08) !important;
  padding: 2rem !important;
  border-radius: 4px !important;
  color: var(--ink) !important;
  width: 100% !important;
  float: none !important;
}

.woocommerce-page .u-columns.col2-set {
  display: grid !important;
  grid-template-cols: 1fr !important;
  gap: 2.5rem !important;
}
@media (min-width: 768px) {
  .woocommerce-page .u-columns.col2-set {
    grid-template-cols: 1fr 1fr !important;
  }
}
.woocommerce-page .col-1, .woocommerce-page .col-2 {
  max-width: 100% !important;
  float: none !important;
  width: auto !important;
}
