@media (min-width: 768px) {
  :root {
    --vs-head-h: 42px;
    --vs-head-r: 12px;
    --vs-head-b: #d8dee7;
    --vs-head-c: #334155;
    --vs-head-gap: 14px;
    --vs-head-icon: 22px;
  }

  /* Desktop header row */
  #main_header .logo-section > .rh-flex-center-align.rh-flex-right-align {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    column-gap: var(--vs-head-gap) !important;
  }

  /* VERBERG de fout geïnjecteerde cart in de zoekbalk op desktop */
  #main_header .head_search .vs-cart-mobile,
  #main_header .head_search form.search-form > .vs-cart-btn,
  #main_header .head_search form.search-form > a.vs-cart-btn {
    display: none !important;
  }

  /* Volgorde desktop */
  #main_header .logo-section .head_search {
    order: 1;
    margin: 0 !important;
    flex: 0 0 auto !important;
    max-width: 360px !important;
  }

  #main_header .logo-section .user-dropdown-intop,
  body:not(.logged-in) #main_header .act-rehub-login-popup.wpsm-button,
  body:not(.logged-in) #main_header .rh_login_icon_n_btn {
    order: 2;
  }

  #main_header .vs-wishlist-desktop,
  #main_header .vs-wishlist-btn.vs-wishlist-injected {
    order: 3;
  }

  #main_header .vs-cart-desktop,
  #main_header .vs-cart-btn.vs-cart-desktop {
    order: 4;
  }

  /* Reset marges */
  #main_header .logo-section .head_search,
  #main_header .logo-section .user-dropdown-intop,
  #main_header .logo-section .act-rehub-login-popup.wpsm-button,
  #main_header .logo-section .rh_login_icon_n_btn,
  #main_header .logo-section .vs-wishlist-btn,
  #main_header .logo-section .vs-cart-btn {
    margin: 0 !important;
    align-self: center !important;
  }

  /* Zoekbalk */
  #main_header .logo-section .head_search form.search-form {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    position: relative !important;
  }

  #main_header .logo-section .head_search form.search-form input[type="text"] {
    height: var(--vs-head-h) !important;
    min-height: var(--vs-head-h) !important;
    padding: 0 52px 0 22px !important;
    border: 1px solid var(--vs-head-b) !important;
    border-radius: var(--vs-head-r) !important;
    box-shadow: none !important;
    color: var(--vs-head-c) !important;
  }

  #main_header .logo-section .head_search form.search-form [type="submit"] {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: 48px !important;
    height: var(--vs-head-h) !important;
    min-height: var(--vs-head-h) !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    line-height: 1 !important;
  }

  #main_header .logo-section .head_search form.search-form [type="submit"] i {
    font-size: 20px !important;
    line-height: 1 !important;
  }

  /* Account / login knop */
  body.logged-in #main_header .user-dropdown-intop .user-ava-intop,
  body:not(.logged-in) #main_header .act-rehub-login-popup.wpsm-button,
  body:not(.logged-in) #main_header .rh_login_icon_n_btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: var(--vs-head-h) !important;
    min-height: var(--vs-head-h) !important;
    padding: 0 22px !important;
    border: 1px solid var(--vs-head-b) !important;
    border-radius: var(--vs-head-r) !important;
    background: #fff !important;
    box-shadow: none !important;
    color: var(--vs-head-c) !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  body.logged-in #main_header .user-dropdown-intop .user-ava-intop img {
    display: none !important;
  }

  body.logged-in #main_header .user-dropdown-intop .user-ava-intop::before {
    content: "Mijn account" !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    color: var(--vs-head-c) !important;
  }

  body.logged-in #main_header .user-dropdown-intop .user-ava-intop::after {
    margin-left: 8px !important;
    font-size: 12px !important;
    color: var(--vs-head-c) !important;
  }

  body:not(.logged-in) #main_header .act-rehub-login-popup.wpsm-button > i,
  body:not(.logged-in) #main_header .act-rehub-login-popup.wpsm-button > span,
  body:not(.logged-in) #main_header .rh_login_icon_n_btn > i,
  body:not(.logged-in) #main_header .rh_login_icon_n_btn > span,
  body:not(.logged-in) #main_header .act-rehub-login-popup.wpsm-button::before,
  body:not(.logged-in) #main_header .rh_login_icon_n_btn::before {
    display: none !important;
    content: none !important;
  }

  body:not(.logged-in) #main_header .act-rehub-login-popup.wpsm-button::after,
  body:not(.logged-in) #main_header .rh_login_icon_n_btn::after {
    content: "Inloggen" !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  /* Wishlist knop */
  #main_header .vs-wishlist-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: var(--vs-head-h) !important;
    min-width: var(--vs-head-h) !important;
    height: var(--vs-head-h) !important;
    padding: 0 !important;
    border: 1px solid var(--vs-head-b) !important;
    border-radius: var(--vs-head-r) !important;
    background: #fff !important;
    box-shadow: none !important;
    color: var(--vs-head-c) !important;
    position: relative !important;
    line-height: 1 !important;
  }

  /* Cart knop */
  #main_header .vs-cart-desktop,
  #main_header .vs-cart-btn.vs-cart-desktop {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  #main_header .vs-cart-btn {
    height: var(--vs-head-h) !important;
    min-height: var(--vs-head-h) !important;
    padding: 0 18px !important;
    gap: 10px !important;
    border: 1px solid var(--vs-head-b) !important;
    border-radius: var(--vs-head-r) !important;
    background: #fff !important;
    box-shadow: none !important;
    color: var(--vs-head-c) !important;
    line-height: 1 !important;
    text-decoration: none !important;
  }

  /* Icoon maten gelijk */
  #main_header .vs-wishlist-icon,
  #main_header .vs-cart-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: var(--vs-head-icon) !important;
    height: var(--vs-head-icon) !important;
  }

  #main_header .vs-wishlist-icon svg,
  #main_header .vs-cart-icon svg {
    width: var(--vs-head-icon) !important;
    height: var(--vs-head-icon) !important;
    display: block !important;
    stroke-width: 2 !important;
  }

  /* Tekst / counters */
  #main_header .vs-cart-total {
    display: inline-flex !important;
    align-items: center !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    color: var(--vs-head-c) !important;
  }

  #main_header .vs-cart-total .woocommerce-Price-amount {
    font-weight: inherit !important;
    color: inherit !important;
  }

  #main_header .vs-cart-count,
  #main_header .vs-wishlist-count {
    min-width: 18px !important;
    height: 18px !important;
    padding: 0 5px !important;
    font-size: 11px !important;
    line-height: 18px !important;
    font-weight: 700 !important;
  }

  #main_header .vs-wishlist-count {
    top: -5px !important;
    right: -5px !important;
  }

  /* Hover rustig houden */
  body.logged-in #main_header .user-dropdown-intop .user-ava-intop:hover,
  body:not(.logged-in) #main_header .act-rehub-login-popup.wpsm-button:hover,
  body:not(.logged-in) #main_header .rh_login_icon_n_btn:hover,
  #main_header .vs-wishlist-btn:hover,
  #main_header .vs-cart-btn:hover {
    background: #fff !important;
    border-color: #cfd7e2 !important;
    color: var(--vs-head-c) !important;
  }
}

/* Alleen shop pagina mobiel */
@media (max-width: 767px) {
  .post-type-archive-product.woocommerce .woogridrev {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .post-type-archive-product.woocommerce .woogridrev > .product {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
    min-width: 0;
  }

  .post-type-archive-product.woocommerce .woogridrev .product .woo_loop_btn,
  .post-type-archive-product.woocommerce .woogridrev .product .vs-more-info-button {
    width: 100%;
    display: block;
    text-align: center;
    margin-top: 8px;
  }

  .post-type-archive-product.woocommerce .woogridrev .product .vs-loop-actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
}

/* Algemene coming soon badge */
.woocommerce .vs-coming-soon,
.woocommerce .stock.vs-coming-soon,
.woocommerce .stock.out-of-stock,
.woocommerce div.stock.out-of-stock,
.woocommerce p.stock.out-of-stock,
.woocommerce span.stock.out-of-stock,
.woocommerce .out-of-stock.vs-coming-soon,
.woocommerce .gspb-availabilitybox .out-of-stock,
.woocommerce .gspb-availabilitybox .vs-coming-soon,
.woocommerce .gspb_availability_value .out-of-stock,
.woocommerce .gspb_availability_value .vs-coming-soon,
.gspb-availabilitybox .out-of-stock,
.gspb-availabilitybox .vs-coming-soon,
.gspb_availability_value .out-of-stock,
.gspb_availability_value .vs-coming-soon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: 100% !important;
  padding: 8px 14px !important;
  border-radius: 999px !important;
  background: #eef4ff !important;
  color: #2f64d6 !important;
  border: 1px solid #c7d8ff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-transform: none !important;
  box-shadow: none !important;
  white-space: normal !important;
}

/* Theme rode tekst overrulen */
.woocommerce div.product .out-of-stock,
.woocommerce .products .out-of-stock,
.woocommerce .product .out-of-stock,
.woocommerce-page .out-of-stock {
  color: #2f64d6 !important;
  background: #eef4ff !important;
  border: 1px solid #c7d8ff !important;
  border-radius: 999px !important;
  padding: 8px 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
}

/* Greenshift availability wrapper */
.gspb-availabilitybox,
.gspb_availability_value {
  background: transparent !important;
}

/* Rare pseudo iconen weg */
.woocommerce .vs-coming-soon:before,
.woocommerce .vs-coming-soon:after,
.woocommerce .out-of-stock:before,
.woocommerce .out-of-stock:after,
.gspb-availabilitybox .out-of-stock:before,
.gspb-availabilitybox .out-of-stock:after,
.gspb_availability_value .out-of-stock:before,
.gspb_availability_value .out-of-stock:after {
  content: none !important;
  display: none !important;
}

/* Header account dropdown: Portaal subtiel blauw, alleen in dropdown */
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item:first-of-type > a,
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item > a[href$="/mijn-account/"],
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item > a[href$="/mijn-account"] {
  background: #eef6ff !important;
  color: #0e4e92 !important;
  border-radius: 12px !important;
}

body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item:first-of-type > a .vsap-header-menu__title,
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item > a[href$="/mijn-account/"] .vsap-header-menu__title,
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item > a[href$="/mijn-account"] .vsap-header-menu__title {
  color: #0e4e92 !important;
  font-weight: 600 !important;
}

body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item:first-of-type > a .vsap-header-menu__meta,
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item > a[href$="/mijn-account/"] .vsap-header-menu__meta,
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item > a[href$="/mijn-account"] .vsap-header-menu__meta {
  color: #356a9f !important;
}

body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item:first-of-type > a:hover,
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item:first-of-type > a:focus,
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item > a[href$="/mijn-account/"]:hover,
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item > a[href$="/mijn-account/"]:focus,
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item > a[href$="/mijn-account"]:hover,
body.logged-in #main_header .user-dropdown-intop .user-dropdown-intop-menu.vsap-header-menu .vsap-header-menu__item > a[href$="/mijn-account"]:focus {
  background: #e3f1ff !important;
  color: #0b3f77 !important;
}

/* Mobiel menu: utility-items grijs, Koopgids blijft de enige blauwe money-highlight */
@media (max-width: 767px) {
  #slide-menu-mobile li.mobile-only,
  #slide-menu-mobile li.mobile-only > a,
  #slide-menu-mobile a[href*="/mijn-account/"],
  #slide-menu-mobile a[href*="/wishlist/"],
  #slide-menu-mobile a[href*="/winkelwagen/"],
  .off-canvas li.mobile-only,
  .off-canvas li.mobile-only > a,
  .off-canvas a[href*="/mijn-account/"],
  .off-canvas a[href*="/wishlist/"],
  .off-canvas a[href*="/winkelwagen/"] {
    background: #f3f6fa !important;
    color: #526174 !important;
  }

  #slide-menu-mobile li.mobile-only > a,
  #slide-menu-mobile a[href*="/mijn-account/"],
  #slide-menu-mobile a[href*="/wishlist/"],
  #slide-menu-mobile a[href*="/winkelwagen/"],
  .off-canvas li.mobile-only > a,
  .off-canvas a[href*="/mijn-account/"],
  .off-canvas a[href*="/wishlist/"],
  .off-canvas a[href*="/winkelwagen/"] {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    border-top: 1px solid #e5eaf1 !important;
  }

  #slide-menu-mobile li.mobile-only > a:hover,
  #slide-menu-mobile li.mobile-only > a:focus,
  #slide-menu-mobile a[href*="/mijn-account/"]:hover,
  #slide-menu-mobile a[href*="/mijn-account/"]:focus,
  #slide-menu-mobile a[href*="/wishlist/"]:hover,
  #slide-menu-mobile a[href*="/wishlist/"]:focus,
  #slide-menu-mobile a[href*="/winkelwagen/"]:hover,
  #slide-menu-mobile a[href*="/winkelwagen/"]:focus,
  .off-canvas li.mobile-only > a:hover,
  .off-canvas li.mobile-only > a:focus,
  .off-canvas a[href*="/mijn-account/"]:hover,
  .off-canvas a[href*="/mijn-account/"]:focus,
  .off-canvas a[href*="/wishlist/"]:hover,
  .off-canvas a[href*="/wishlist/"]:focus,
  .off-canvas a[href*="/winkelwagen/"]:hover,
  .off-canvas a[href*="/winkelwagen/"]:focus {
    background: #e9eef5 !important;
    color: #334155 !important;
  }

  #slide-menu-mobile li.menu-koopgids-primary,
  #slide-menu-mobile li.menu-koopgids-primary > a,
  #slide-menu-mobile li:has(> a[href*="/beste-vacuummachine"]),
  #slide-menu-mobile a[href*="/beste-vacuummachine"],
  .off-canvas li.menu-koopgids-primary,
  .off-canvas li.menu-koopgids-primary > a,
  .off-canvas li:has(> a[href*="/beste-vacuummachine"]),
  .off-canvas a[href*="/beste-vacuummachine"] {
    background: #eef6ff !important;
    color: #0e4e92 !important;
  }

  #slide-menu-mobile li.menu-koopgids-primary > a,
  #slide-menu-mobile a[href*="/beste-vacuummachine"],
  .off-canvas li.menu-koopgids-primary > a,
  .off-canvas a[href*="/beste-vacuummachine"] {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    font-weight: 600 !important;
    box-shadow: inset 3px 0 0 #62b4ff !important;
  }
}
