.elementor-kit-28873{--e-global-color-primary:#720202;--e-global-color-secondary:#BB8377;--e-global-color-text:#333333;--e-global-color-accent:#D2B48C;--e-global-color-1b45e4b:#000000;--e-global-typography-primary-font-family:"Bevan";--e-global-typography-primary-font-size:50px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-secondary-font-family:"Source Serif Pro";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Source Serif Pro";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:26px;--e-global-typography-accent-font-family:"Source Serif Pro";--e-global-typography-accent-font-weight:500;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-28873 e-page-transition{background-color:#FFBC7D;}.elementor-kit-28873 a{color:var( --e-global-color-primary );}.elementor-kit-28873 h1{color:var( --e-global-color-1b45e4b );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );}.elementor-kit-28873 h2{color:var( --e-global-color-1b45e4b );font-family:"Bevan", Sans-serif;font-size:25px;font-weight:400;text-transform:uppercase;}.elementor-kit-28873 h3{color:var( --e-global-color-1b45e4b );font-family:"Bevan", Sans-serif;font-size:16px;font-weight:400;text-transform:uppercase;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-28873{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-28873 h1{font-size:var( --e-global-typography-primary-font-size );}.elementor-kit-28873 h3{font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-28873{--e-global-typography-text-font-size:15px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-28873 h1{font-size:var( --e-global-typography-primary-font-size );}.elementor-kit-28873 h2{font-size:20px;}.elementor-kit-28873 h3{font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --vg-rood:#720202; --vg-rood-hover:#BB8377; --vg-wit:#ffffff; --vg-geel-steun:#FFF6F2; --col-width-normal:1352px; --H1:#D2B48C; --vg-header01:#D2B48C; --vg-zwart:#000000; --vg-tekst-donker:#333; --Paragraaf:Source Serif Pro; --vg-transparant:#ffffff00; --H3:Bevan; --col-width-small:895px; }
/* Start custom CSS *//* Tag-sectie als button-stijl tonen */
/* Tag-sectie op eigen regel onder de categorieën */
.product_meta .tagged_as {
  display: block;
  margin-top: 8px;
}

.product_meta .tagged_as .detail-content {
  display: inline-flex;
}

/* "Tag" label verbergen */
.product_meta .tagged_as .detail-label {
  display: none;
}

/* De tag-link(s) als button stylen */
.product_meta .tagged_as .detail-content a {
  display: inline-block;
  background-color: #D2B48C;
  color: #ffffff !important;
  font-family: 'Source Serif Pro', serif;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  padding: 10px 24px;
  border-radius: 6px;
}

.product_meta .tagged_as .detail-content a:hover {
  background-color: #BB8377; /* lichte hover-variant, vergelijkbaar met je image-box hover_title_color */
}

/* Indien meerdere tags: ruimte tussen de buttons */
.product_meta .tagged_as .detail-content a + a {
  margin-left: 8px;
}

.product_meta {
  display: flex;
  flex-wrap: wrap;
}

.product_meta .tagged_as {
  display: block;
  width: 100%;
  margin-top: 8px;
}

.product_meta .tagged_as .detail-content {
  display: inline-flex;
}

/*winkelmand*/

.elementor-menu-cart__main .widget_shopping_cart_content .woocommerce-mini-cart__empty-message {
font-size: 20px;
}

/*Cart elementor correctie*/

.elementor-menu-cart__product-name {
  font-size: 14px !important;
  font-family: inherit !important;
  text-transform: none !important;
  line-height: 1.4 !important;
}

.elementor-menu-cart__product-name a {
  font-size: 14px !important;
  font-weight: 400 !important;
  text-decoration: none;
  color: inherit;
}

/* Zelfde correctie voor prijs en subtotaal, voor de zekerheid */
.elementor-menu-cart__product-price,
.elementor-menu-cart__subtotal {
  font-size: 14px !important;
  text-transform: none !important;
}

.elementor-menu-cart__subtotal strong {
  font-size: 14px !important;
}
.elementor-menu-cart__footer-buttons .elementor-button {
  font-size: 14px !important;
  text-transform: none !important;
  padding: 10px 20px !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
}

.elementor-menu-cart__footer-buttons .elementor-button-text {
  font-size: 14px !important;
}

/* ==========================================================================
   WooCommerce Winkelmand — Van Gils stijl
   ========================================================================== */

/* --- Algemene tabel --- */
.woocommerce table.shop_table {
  border: none !important;
  border-collapse: collapse !important;
  background: #ffffff !important;
}

.woocommerce table.shop_table thead th {
  background-color: #720202 !important;
  color: #ffffff !important;
  font-family: 'Source Serif Pro', serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  letter-spacing: 0.5px;
  padding: 14px 12px !important;
  border: none !important;
}

.woocommerce table.shop_table tbody td {
  border: none !important;
  border-bottom: 1px solid #e8e0d8 !important;
  padding: 16px 12px !important;
  vertical-align: middle;
  font-family: 'Source Serif Pro', serif;
  font-size: 15px;
  color: #2b2b2b;
}

/* --- Productafbeelding --- */
.woocommerce table.shop_table td.product-thumbnail img {
  border-radius: 4px;
  max-width: 70px;
}

/* --- Productnaam --- */
.woocommerce table.shop_table td.product-name a {
  color: #720202 !important;
  font-weight: 700;
  text-decoration: none;
}

.woocommerce table.shop_table td.product-name a:hover {
  color: #BB8377 !important;
}

/* --- Prijs / subtotaal kolommen --- */
.woocommerce table.shop_table td.product-price,
.woocommerce table.shop_table td.product-subtotal {
  font-weight: 700;
  color: #2b2b2b;
}

.woocommerce table.shop_table .deposit_label {
  color: #888888;
  font-weight: 400;
  font-size: 12px;
}

/* --- Hoeveelheid input --- */
.woocommerce table.shop_table td.product-quantity .quantity {
  border: 1px solid #D2B48C;
  border-radius: 4px;
  overflow: hidden;
  display: inline-block;
}

.woocommerce table.shop_table td.product-quantity input.qty {
  border: none !important;
  font-family: 'Source Serif Pro', serif;
  font-size: 15px;
  text-align: center;
  padding: 8px;
  width: 60px;
}

/* --- Verwijder-knop (kruisje) --- */
.woocommerce table.shop_table td.product-remove a.remove {
  color: #720202 !important;
  background: transparent !important;
  font-size: 22px !important;
}

.woocommerce table.shop_table td.product-remove a.remove:hover {
  color: #BB8377 !important;
  background: transparent !important;
}

/* --- Actions-rij: coupon, update-knop, leeg-knop --- */
.woocommerce table.shop_table td.actions {
  border-top: 2px solid #D2B48C !important;
  padding-top: 20px !important;
}

.woocommerce .coupon input#coupon_code {
  border: 1px solid #D2B48C !important;
  border-radius: 4px;
  padding: 10px 14px;
  font-family: 'Source Serif Pro', serif;
}

/* --- Alle knoppen binnen de cart-form en collaterals --- */
.woocommerce .coupon button.button,
.woocommerce button[name="update_cart"],
.woocommerce .wc-proceed-to-checkout a.checkout-button {
  background-color: #720202 !important;
  color: #ffffff !important;
  font-family: 'Source Serif Pro', serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  font-size: 14px !important;
  letter-spacing: 0.5px;
  padding: 12px 28px !important;
  border-radius: 6px !important;
  border: none !important;
  text-decoration: none !important;
  transition: background-color 0.2s ease;
}

.woocommerce .coupon button.button:hover,
.woocommerce button[name="update_cart"]:hover,
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover {
  background-color: #BB8377 !important;
  color: #ffffff !important;
}

.woocommerce button[name="update_cart"]:disabled {
  opacity: 0.4 !important;
  cursor: not-allowed;
}

/* --- Eigen "Winkelmand legen" knop, outline-stijl --- */
.woocommerce .empty-cart-button {
  background-color: transparent !important;
  color: #720202 !important;
  border: 2px solid #720202 !important;
  font-family: 'Source Serif Pro', serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  font-size: 14px !important;
  padding: 10px 24px !important;
  border-radius: 6px !important;
  text-decoration: none !important;
}

.woocommerce .empty-cart-button:hover {
  background-color: #720202 !important;
  color: #ffffff !important;
}

/* --- Cart totals box (rechterkolom) --- */
.woocommerce .cart-collaterals .cart_totals {
  background-color: #faf6f0 !important;
  border: 1px solid #D2B48C !important;
  border-radius: 8px !important;
  padding: 24px !important;
}

.woocommerce .cart-collaterals .cart_totals h2 {
  font-family: 'Bevan', serif !important;
  text-transform: uppercase !important;
  color: #720202 !important;
  font-size: 22px !important;
  margin-bottom: 16px !important;
}

.woocommerce .cart-collaterals .cart_totals table {
  background: transparent !important;
}

.woocommerce .cart-collaterals .cart_totals table th,
.woocommerce .cart-collaterals .cart_totals table td {
  border: none !important;
  border-bottom: 1px solid #e8e0d8 !important;
  font-family: 'Source Serif Pro', serif;
  background: transparent !important;
  color: #2b2b2b;
  padding: 10px 0 !important;
}

.woocommerce .cart-collaterals .cart_totals tr.order-total th,
.woocommerce .cart-collaterals .cart_totals tr.order-total td {
  font-weight: 700 !important;
  font-size: 18px !important;
  color: #720202 !important;
  border-bottom: none !important;
}

/* --- Verzendmethode-opties --- */
.woocommerce .cart-collaterals .woocommerce-shipping-methods li {
  font-family: 'Source Serif Pro', serif;
  padding: 4px 0;
}

.woocommerce .cart-collaterals .woocommerce-shipping-methods input[type="radio"] {
  accent-color: #720202;
  margin-right: 6px;
}

/* --- Mobiel: tabel naar kaartweergave --- */
@media (max-width: 600px) {
  .woocommerce table.shop_table.shop_table_responsive thead {
    display: none !important;
  }

  .woocommerce table.shop_table.shop_table_responsive tbody tr {
    display: block !important;
    border-bottom: 2px solid #D2B48C;
    padding: 12px 0;
  }

  .woocommerce table.shop_table.shop_table_responsive tbody td {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    border-bottom: none !important;
    padding: 6px 4px !important;
  }

  .woocommerce table.shop_table.shop_table_responsive tbody td.product-thumbnail {
    justify-content: center;
  }

  .woocommerce table.shop_table.shop_table_responsive tbody td.actions {
    display: block !important;
  }
}

/* ==========================================================================
   Product loop-grid kaartjes — gelijke hoogte
   ========================================================================== */

/* De container van alle kaartjes: laat ze als grid/flex met stretch werken */
.elementor-loop-container.elementor-grid {
  align-items: stretch;
}

/* Elke hele kaart (afbeelding + content) - volledige hoogte innemen, kolom-layout */
.elementor-loop-container.elementor-grid > div[data-elementor-type="loop-item"] {
  height: 100%;
}

.elementor-element-872729f {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* Tekst+knop-blok: neemt resterende ruimte in, knop blijft onderin */
.elementor-element-1efae9f {
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
}

/* Prijs-blok: vaste minimale hoogte zodat het verschil tussen
   wel/geen 'plus deposit'-regel niet voor scheve kaarten zorgt */
.elementor-element-9891aed .price {
  min-height: 60px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

/* Duw de add-to-cart knoppen altijd naar de onderkant van de kaart */
.elementor-element-1efae9f > [class*="elementor-element-"][class*="add-to-cart"] {
  margin-top: auto !important;
}

/* Titel: max 2 regels, voorkomt dat een lange productnaam de kaart uitrekt
   t.o.v. kortere namen (optioneel, haal weg als je liever alles toont) */
.e-heading-base {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.6em;
}

/* ==========================================================================
   Product afbeeldingen — 1:1 kader, gecentreerd uitgelijnd
   ========================================================================== */

/* De afbeelding-wrapper: vast vierkant kader */
.elementor-element-1c24807 {
  aspect-ratio: 1 / 1;
  overflow: hidden;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

/* De link binnen de wrapper, volledige kader-grootte */
.elementor-element-1c24807 .e-image-link-base {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* De afbeelding zelf: vult het kader, gecentreerd uitgesneden, geen vervorming */
.elementor-element-1c24807 .e-image-base {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center center;
}

.deposit_label {
  font-size: 12px;
  color: #888888;
  font-weight: 400;
  display: block;
  margin-top: 2px;
}

.deposit_label .woocommerce-Price-amount {
  font-size: 12px;
  color: #888888;
  font-weight: 400;
}

/* ==========================================================================
   WooCommerce Mijn Account — Van Gils stijl
   ========================================================================== */

/* --- Navigatiemenu (sidebar/tabs) --- */
.woocommerce-MyAccount-navigation {
  background-color: #faf6f0;
  border: 1px solid #D2B48C;
  border-radius: 8px;
  padding: 12px 0;
  margin-bottom: 24px;
}

.woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-MyAccount-navigation-link {
  border-bottom: 1px solid #e8e0d8;
}

.woocommerce-MyAccount-navigation-link:last-child {
  border-bottom: none;
}

.woocommerce-MyAccount-navigation-link a {
  display: block;
  padding: 12px 20px;
  font-family: 'Source Serif Pro', serif;
  font-size: 15px;
  font-weight: 600;
  color: #2b2b2b;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.woocommerce-MyAccount-navigation-link a:hover {
  background-color: #D2B48C;
  color: #ffffff;
}

/* Actieve pagina in het menu */
.woocommerce-MyAccount-navigation-link.is-active a {
  background-color: #720202;
  color: #ffffff;
}

/* Uitloggen-link iets anders accentueren */
.woocommerce-MyAccount-navigation-link--customer-logout a {
  color: #720202;
}

/* --- Content-sectie (welkomsttekst, dashboard) --- */
.woocommerce-MyAccount-content {
  font-family: 'Source Serif Pro', serif;
  font-size: 15px;
  line-height: 1.7;
  color: #2b2b2b;
}

.woocommerce-MyAccount-content a {
  color: #720202;
  font-weight: 700;
  text-decoration: underline;
}

.woocommerce-MyAccount-content a:hover {
  color: #BB8377;
}

.woocommerce-MyAccount-content strong {
  color: #720202;
}

/* --- Tabellen op account-pagina's (bestellingen, adressen) --- */
.woocommerce-MyAccount-content table.shop_table th {
  background-color: #720202;
  color: #ffffff;
  font-family: 'Source Serif Pro', serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 0.5px;
  padding: 14px 12px;
  border: none;
}

.woocommerce-MyAccount-content table.shop_table td {
  border: none;
  border-bottom: 1px solid #e8e0d8;
  padding: 14px 12px;
  font-family: 'Source Serif Pro', serif;
  font-size: 14px;
}

/* --- Formuliervelden (adressen bewerken, account details) --- */
.woocommerce-MyAccount-content .woocommerce-form-row label {
  font-family: 'Source Serif Pro', serif;
  font-weight: 600;
  color: #2b2b2b;
  font-size: 14px;
}

.woocommerce-MyAccount-content input.input-text,
.woocommerce-MyAccount-content select {
  border: 1px solid #D2B48C;
  border-radius: 4px;
  padding: 10px 14px;
  font-family: 'Source Serif Pro', serif;
  font-size: 14px;
}

.woocommerce-MyAccount-content input.input-text:focus,
.woocommerce-MyAccount-content select:focus {
  border-color: #720202;
  outline: none;
}

/* --- Knoppen (opslaan, bewerken etc.) --- */
.woocommerce-MyAccount-content button.button,
.woocommerce-MyAccount-content .woocommerce-Button {
  background-color: #720202 !important;
  color: #ffffff !important;
  font-family: 'Source Serif Pro', serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  font-size: 14px !important;
  letter-spacing: 0.5px;
  padding: 12px 28px !important;
  border-radius: 6px !important;
  border: none !important;
  text-decoration: none !important;
  transition: background-color 0.2s ease;
}

.woocommerce-MyAccount-content button.button:hover,
.woocommerce-MyAccount-content .woocommerce-Button:hover {
  background-color: #BB8377 !important;
  color: #ffffff !important;
}

/* --- Bestelling-statussen kleurcoderen (optioneel, subtiel) --- */
.woocommerce-orders-table__cell-order-status mark.completed {
  color: #2e7d32;
  background: transparent;
  font-weight: 700;
}

.woocommerce-orders-table__cell-order-status mark.processing {
  color: #D2B48C;
  background: transparent;
  font-weight: 700;
}

/* --- Mobiel: navigatiemenu onder elkaar i.p.v. naast content --- */
@media (max-width: 767px) {
  .woocommerce-MyAccount-navigation {
    margin-bottom: 20px;
  }
}

/* ==========================================================================
   Mobiel hamburgermenu — robuustere full-width fix
   ========================================================================== */

.elementor-element-f19d8a0 {
  position: relative !important;
}

.elementor-menu-toggle {
  width: auto;
  height: auto;
  padding: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Edge-to-edge via 100vw + margin-left compensatie t.o.v. eigen positie,
   in plaats van translateX (die gevoelig is voor parent-offsets) */
.elementor-nav-menu--dropdown.elementor-nav-menu__container {
  position: fixed !important;
  top: auto !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  transform: none !important;
  background-color: #ffffff;
  box-shadow: 0 8px 16px rgba(0,0,0,0.15);
  z-index: 9999;
  box-sizing: border-box;
}

.elementor-nav-menu--dropdown .elementor-nav-menu {
  width: 100%;
  box-sizing: border-box;
}

.elementor-nav-menu--dropdown .elementor-nav-menu > li {
  width: 100%;
  box-sizing: border-box;
}

.elementor-nav-menu--dropdown .elementor-nav-menu > li > a {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 14px 20px;
  font-family: 'Source Serif Pro', serif;
  font-size: 18px;
  font-weight: 600;
  color: #2b2b2b;
  border-bottom: 1px solid #e8e0d8;
  white-space: normal;
  text-transform: none;
}

.elementor-nav-menu--dropdown .elementor-nav-menu > li > a:hover,
.elementor-nav-menu--dropdown .elementor-nav-menu > li > a.elementor-item-active {
  background-color: #D2B48C;
  color: #ffffff;
}

.elementor-nav-menu--dropdown .sub-menu.elementor-nav-menu--dropdown {
  position: static !important;
  width: 100% !important;
  box-shadow: none;
  background-color: #faf6f0;
}

.elementor-nav-menu--dropdown .sub-menu .elementor-sub-item {
  padding: 12px 32px;
  font-size: 15px;
  text-transform: none;
  white-space: normal;
}

/* Alleen op tablet en mobiel */
@media (max-width: 1024px){

    #category-scroll{
        display:-webkit-inline-box!important;
        flex-wrap:nowrap!important;
        overflow-x:auto!important;
        overflow-y:hidden!important;
        gap:16px!important;

        padding-bottom:12px;

        scroll-snap-type:x proximity;
        -webkit-overflow-scrolling:touch;

        scrollbar-width:none;
    }

    #category-scroll::-webkit-scrollbar{
        display:none;
    }

    /* Alle imageboxen */
    #category-scroll > .elementor-widget{
        flex:0 0 180px;   /* Breedte per kaart */
        scroll-snap-align:start;
    }

    /* Afbeelding */
    #category-scroll .elementor-image-box-img img{
        width:100%;
        aspect-ratio:3/4;
        object-fit:cover;
        border-radius:10px;
    }

    /* Titel centreren */
    #category-scroll .elementor-image-box-title{
        text-align:center;
        margin-top:10px;
    }
}

#category-scroll > .elementor-widget{
    flex:0 0 150px;
}

#category-scroll{
    padding-left:20px;
    padding-right:20px;
}

#category-scroll > .elementor-widget:first-child{
    margin-left:0;
}

#category-scroll > .elementor-widget:last-child{
    margin-right:0;
}

/*in winkelmand op pagina*/
.e-loop-item .added_to_cart.wc-forward {
  display: none !important;
}

.e-loop-item .single_add_to_cart_button.added::after {
  content: " ✓";
}

.e-loop-item form.cart {
  display: flex;
  gap: 10px;
  align-items: stretch;
}

.e-loop-item form.cart .quantity {
  flex: 0 0 58px;
}

.e-loop-item form.cart .quantity input.qty {
  width: 58px;
  height: 48px;
  text-align: center;
}

.e-loop-item form.cart .single_add_to_cart_button {
  flex: 1;
  min-width: 0;
  white-space: normal;
}

.e-loop-item form.cart{
    gap:0px!important;
}

.elementor-button-text {
    font-size: 14px !important;
}/* End custom CSS */