.elementor-463 .elementor-element.elementor-element-f071da0{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-463 .elementor-element.elementor-element-1653f80{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.woocommerce .elementor-463 .elementor-element.elementor-element-70eb9dc .flex-viewport:not(:last-child){margin-bottom:0px;}.woocommerce .elementor-463 .elementor-element.elementor-element-70eb9dc .flex-control-thumbs li{padding-right:calc(0px / 2);padding-left:calc(0px / 2);padding-bottom:0px;}.woocommerce .elementor-463 .elementor-element.elementor-element-70eb9dc .flex-control-thumbs{margin-right:calc(-0px / 2);margin-left:calc(-0px / 2);}.elementor-463 .elementor-element.elementor-element-23a7ef4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-widget-woocommerce-product-title .elementor-heading-title{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 );color:var( --e-global-color-primary );}.elementor-463 .elementor-element.elementor-element-2ad238a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 18px) 0px;}.elementor-463 .elementor-element.elementor-element-2ad238a .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:38px;font-weight:600;line-height:1.08em;letter-spacing:0.6px;color:#2B3990;}.elementor-463 .elementor-element.elementor-element-18b1e7e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-463 .elementor-element.elementor-element-07c8c42{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:10px 10px 10px 10px;}.elementor-463 .elementor-element.elementor-element-07c8c42.elementor-element{--align-self:flex-start;}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-463 .elementor-element.elementor-element-fe5e28a .cart button, .elementor-463 .elementor-element.elementor-element-fe5e28a .cart .button{color:var( --e-global-color-secondary );background-color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );transition:all 0.2s;}.elementor-463 .elementor-element.elementor-element-fe5e28a{--view-cart-spacing:0px;--button-spacing:13px;}.elementor-463 .elementor-element.elementor-element-fe5e28a .quantity .qty{font-size:22px;color:var( --e-global-color-primary );background-color:var( --e-global-color-secondary );border-color:var( --e-global-color-primary );transition:all 0.2s;}.woocommerce .elementor-463 .elementor-element.elementor-element-fe5e28a form.cart .variations{width:100%;margin-bottom:0px;}.woocommerce .elementor-463 .elementor-element.elementor-element-fe5e28a form.cart table.variations tr th, .woocommerce .elementor-463 .elementor-element.elementor-element-fe5e28a form.cart table.variations tr td{padding-top:calc( 0px/2 );padding-bottom:calc( 0px/2 );}.woocommerce .elementor-463 .elementor-element.elementor-element-fe5e28a form.cart table.variations label{color:var( --e-global-color-text );}.woocommerce .elementor-463 .elementor-element.elementor-element-fe5e28a form.cart table.variations td.value select{color:var( --e-global-color-primary );}.woocommerce .elementor-463 .elementor-element.elementor-element-fe5e28a form.cart table.variations td.value select, .woocommerce .elementor-463 .elementor-element.elementor-element-fe5e28a form.cart table.variations td.value:before{background-color:var( --e-global-color-primary );border:var( --e-global-color-secondary );}.elementor-463 .elementor-element.elementor-element-6071041{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(min-width:768px){.elementor-463 .elementor-element.elementor-element-f071da0{--content-width:1400px;}.elementor-463 .elementor-element.elementor-element-1653f80{--width:50%;}.elementor-463 .elementor-element.elementor-element-23a7ef4{--width:50%;}.elementor-463 .elementor-element.elementor-element-6071041{--content-width:1400px;}}@media(max-width:1024px){.elementor-widget-woocommerce-product-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:767px){.elementor-widget-woocommerce-product-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-size:var( --e-global-typography-accent-font-size );}}/* Start custom CSS for woocommerce-product-images, class: .elementor-element-70eb9dc *//* ================================
   PRODUCT GALLERY - DESKTOP
================================ */

/* Gallery wrapper */
.lf-gallery-left .woocommerce-product-gallery {
  display: flex !important;
  flex-direction: row-reverse;
  align-items: flex-start;
  gap: 16px;
}

/* Main image viewport */
.lf-gallery-left .flex-viewport {
  flex: 1 1 auto !important;
  width: calc(100% - 94px) !important;
  min-height: 560px !important;
  margin: 0 !important;
  overflow: hidden !important;
}

/* Gallery wrapper reset */
.lf-gallery-left .woocommerce-product-gallery__wrapper {
  margin: 0 !important;
  padding: 0 !important;
}

/* Main image desktop */
.lf-gallery-left .woocommerce-product-gallery__image img {
  width: 100% !important;
  height: 700px !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  border-radius: 10px !important;
}

/* Thumbnails column */
.lf-gallery-left .flex-control-thumbs {
  flex: 0 0 78px !important;
  width: 78px !important;
  display: flex !important;
  flex-direction: column;
  gap: 10px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
  max-height: 560px;
  overflow-y: auto;
  overflow-x: hidden;
}

/* Thumbnail item */
.lf-gallery-left .flex-control-thumbs li {
  width: 78px !important;
  height: 78px !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Thumbnail image */
.lf-gallery-left .flex-control-thumbs img {
  width: 78px !important;
  height: 78px !important;
  object-fit: cover !important;
  display: block !important;
  opacity: 1 !important;
  border-radius: 8px !important;
  border: 2px solid transparent !important;
  cursor: pointer;
  transition: border-color .2s ease, box-shadow .2s ease;
}

/* Active thumbnail */
.lf-gallery-left .flex-control-thumbs img.flex-active {
  border-color: #2B3990 !important;
  box-shadow: 0 0 0 2px rgba(43,57,144,.12) !important;
}

/* Hover */
.lf-gallery-left .flex-control-thumbs img:hover {
  border-color: #2DA8E3 !important;
}


/* ================================
   PRODUCT GALLERY - MOBILE FIX
================================ */

@media (max-width: 767px) {

  .lf-gallery-left .woocommerce-product-gallery {
    flex-direction: column !important;
    gap: 10px !important;
  }

  .lf-gallery-left .flex-viewport {
    width: 100% !important;
    min-height: auto !important;
    height: auto !important;
  }

  .lf-gallery-left .woocommerce-product-gallery__image img {
    width: 100% !important;
    height: 360px !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 10px !important;
  }

  .lf-gallery-left .flex-control-thumbs {
    width: 100% !important;
    flex: none !important;
    max-height: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 8px !important;
    margin-top: 8px !important;
    padding-bottom: 4px !important;
  }

  .lf-gallery-left .flex-control-thumbs li {
    width: 64px !important;
    min-width: 64px !important;
    height: 64px !important;
  }

  .lf-gallery-left .flex-control-thumbs img {
    width: 64px !important;
    height: 64px !important;
    object-fit: cover !important;
    border-radius: 7px !important;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-07c8c42 */.priceperm2 {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  background: #6DB45C;
  color: #fff;
  padding: 11px 18px;
  border-radius: 0 16px 16px 0;
  font-weight: 800;
  font-size: 26px;
  line-height: 1;
  margin: 18px 0 20px;
  box-shadow: 0 8px 18px rgba(0,0,0,0.12);
}

.priceperm2 small,
.priceperm2 .unit {
  font-size: 15px;
  font-weight: 700;
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-fe5e28a *//* =========================================================
   TOPDEALVLOEREN - SINGLE PRODUCT CSS CLEAN VERSION
   PVC = calculator + hidden Woo qty
   Accessoires = normal qty + styled button
========================================================= */


/* ===== Variation swatches clean layout ===== */

.single-product table.variations {
  width: auto !important;
  margin: 18px 0 14px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-spacing: 0 !important;
}

.single-product table.variations tbody,
.single-product table.variations tr {
  display: flex !important;
  align-items: center !important;
  width: auto !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}

.single-product table.variations th.label,
.single-product table.variations td.value {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  line-height: 1 !important;
}

.single-product table.variations th.label {
  height: 46px !important;
}

.single-product table.variations th.label label {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 46px !important;
  color: #111 !important;
}

.single-product table.variations td.value {
  gap: 12px !important;
}

.single-product .tawcvs-swatches {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.single-product .swatch-item-wrapper {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

.single-product .swatch {
  width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
  border-radius: 50% !important;
  border: 2px solid #e5e7eb !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.10) !important;
}

.single-product .swatch.selected {
  border-color: #2B3990 !important;
  box-shadow: 0 0 0 2px rgba(43,57,144,.18) !important;
}

.single-product table.variations .reset_variations {
  display: none !important;
}


/* ===== Hide WooCommerce default variation pack price ===== */
/* This removes the golden €50 / €50,44 selected variation price */

.single-product .single_variation_wrap .woocommerce-variation-price,
.single-product .single_variation .woocommerce-variation-price,
.single-product .woocommerce-variation-price,
.single-product .woocommerce-variation-price .price,
.single-product .woocommerce-variation-price .woocommerce-Price-amount {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}


/* ===== Reduce space below swatches before stock/calculator ===== */

.single-product .single_variation_wrap {
  margin-top: 4px !important;
}

.single-product .woocommerce-variation {
  margin: 0 !important;
  padding: 0 !important;
}


/* ===== Stock pill - Direct leverbaar ===== */

.single-product .elementor-add-to-cart p.stock.in-stock.tdv-direct-stock,
.single-product p.stock.in-stock.tdv-direct-stock,
.single-product .stock {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  background: #EAF8F0 !important;
  color: #1B7F43 !important;
  padding: 8px 14px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  margin: 10px 0 16px !important;
  box-shadow: none !important;
}

.single-product .elementor-add-to-cart p.stock.in-stock.tdv-direct-stock::before,
.single-product p.stock.in-stock.tdv-direct-stock::before,
.single-product .stock::before {
  content: "✓" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-right: 7px !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  color: #1B7F43 !important;
  line-height: 1 !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  background: transparent !important;
}


/* ===== PVC Quantity Logic ===== */
/* Hide WooCommerce quantity only for PVC products because calculator controls packs */

body.single-product.product_cat-pvc-vloeren form.cart .quantity:not(.tdv-normal-accessory-qty),
body.single-product.product_cat-klik-pvc form.cart .quantity:not(.tdv-normal-accessory-qty),
body.single-product.product_cat-plak-pvc form.cart .quantity:not(.tdv-normal-accessory-qty),
body.single-product.product_cat-rigid-pvc-spc form.cart .quantity:not(.tdv-normal-accessory-qty),
body.single-product.product_cat-visgraat-pvc form.cart .quantity:not(.tdv-normal-accessory-qty),
body.single-product.product_cat-hongaarse-punt-pvc form.cart .quantity:not(.tdv-normal-accessory-qty),
body.single-product.product_cat-tegellook-pvc form.cart .quantity:not(.tdv-normal-accessory-qty) {
  display: none !important;
}


/* ===== Accessoires Quantity + Button Style ===== */

body.single-product.product_cat-accessoires .e-atc-qty-button-holder,
body.single-product.product_cat-plinten .e-atc-qty-button-holder,
body.single-product.product_cat-ondervloeren .e-atc-qty-button-holder,
body.single-product.product_cat-vloerlijm .e-atc-qty-button-holder,
body.single-product.product_cat-onderhoud .e-atc-qty-button-holder {
  display: flex !important;
  align-items: flex-end !important;
  gap: 14px !important;
  flex-wrap: nowrap !important;
}

/* Accessory quantity wrapper */
body.single-product.product_cat-accessoires .tdv-normal-accessory-qty,
body.single-product.product_cat-plinten .tdv-normal-accessory-qty,
body.single-product.product_cat-ondervloeren .tdv-normal-accessory-qty,
body.single-product.product_cat-vloerlijm .tdv-normal-accessory-qty,
body.single-product.product_cat-onderhoud .tdv-normal-accessory-qty {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 7px !important;
  margin: 0 !important;
}

/* Aantal label */
body.single-product.product_cat-accessoires .tdv-normal-accessory-label,
body.single-product.product_cat-plinten .tdv-normal-accessory-label,
body.single-product.product_cat-ondervloeren .tdv-normal-accessory-label,
body.single-product.product_cat-vloerlijm .tdv-normal-accessory-label,
body.single-product.product_cat-onderhoud .tdv-normal-accessory-label {
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #111827 !important;
  line-height: 1 !important;
  margin: 0 !important;
}

/* Quantity input */
body.single-product.product_cat-accessoires .tdv-normal-accessory-qty input.qty,
body.single-product.product_cat-plinten .tdv-normal-accessory-qty input.qty,
body.single-product.product_cat-ondervloeren .tdv-normal-accessory-qty input.qty,
body.single-product.product_cat-vloerlijm .tdv-normal-accessory-qty input.qty,
body.single-product.product_cat-onderhoud .tdv-normal-accessory-qty input.qty {
  width: 86px !important;
  height: 54px !important;
  border: 1px solid #d6dee8 !important;
  border-radius: 9px !important;
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  background: #ffffff !important;
  margin: 0 !important;
}

/* Accessory Add to Cart button */
body.single-product.product_cat-accessoires .e-atc-qty-button-holder .single_add_to_cart_button,
body.single-product.product_cat-plinten .e-atc-qty-button-holder .single_add_to_cart_button,
body.single-product.product_cat-ondervloeren .e-atc-qty-button-holder .single_add_to_cart_button,
body.single-product.product_cat-vloerlijm .e-atc-qty-button-holder .single_add_to_cart_button,
body.single-product.product_cat-onderhoud .e-atc-qty-button-holder .single_add_to_cart_button {
  width: 430px !important;
  max-width: 100% !important;
  height: 54px !important;
  min-height: 54px !important;
  border-radius: 8px !important;
  background: #2B3990 !important;
  color: #ffffff !important;
  border: none !important;
  padding: 0 34px !important;
  font-family: "Inter", sans-serif !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 54px !important;
  text-align: center !important;
  box-shadow: none !important;
  margin: 0 !important;
  transition: 0.2s ease !important;
}

body.single-product.product_cat-accessoires .e-atc-qty-button-holder .single_add_to_cart_button:hover,
body.single-product.product_cat-plinten .e-atc-qty-button-holder .single_add_to_cart_button:hover,
body.single-product.product_cat-ondervloeren .e-atc-qty-button-holder .single_add_to_cart_button:hover,
body.single-product.product_cat-vloerlijm .e-atc-qty-button-holder .single_add_to_cart_button:hover,
body.single-product.product_cat-onderhoud .e-atc-qty-button-holder .single_add_to_cart_button:hover {
  background: #2DA8E3 !important;
  color: #ffffff !important;
}


/* ===== Mobile ===== */

@media (max-width: 767px) {
  .single-product table.variations tbody,
  .single-product table.variations tr {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }

  .single-product table.variations th.label {
    height: auto !important;
  }

  .single-product table.variations th.label label {
    line-height: 1.2 !important;
  }

  .single-product .tawcvs-swatches {
    flex-wrap: wrap !important;
  }

  body.single-product.product_cat-accessoires .e-atc-qty-button-holder,
  body.single-product.product_cat-plinten .e-atc-qty-button-holder,
  body.single-product.product_cat-ondervloeren .e-atc-qty-button-holder,
  body.single-product.product_cat-vloerlijm .e-atc-qty-button-holder,
  body.single-product.product_cat-onderhoud .e-atc-qty-button-holder {
    flex-wrap: wrap !important;
  }

  body.single-product.product_cat-accessoires .e-atc-qty-button-holder .single_add_to_cart_button,
  body.single-product.product_cat-plinten .e-atc-qty-button-holder .single_add_to_cart_button,
  body.single-product.product_cat-ondervloeren .e-atc-qty-button-holder .single_add_to_cart_button,
  body.single-product.product_cat-vloerlijm .e-atc-qty-button-holder .single_add_to_cart_button,
  body.single-product.product_cat-onderhoud .e-atc-qty-button-holder .single_add_to_cart_button {
    width: 100% !important;
  }
}
/* ================================
   MOBILE VARIATION SWATCHES FIX
================================ */

@media (max-width: 767px) {

  /* Variation table spacing */
  .single-product table.variations {
    margin: 18px 0 18px !important;
    width: 100% !important;
  }

  .single-product table.variations tbody,
  .single-product table.variations tr {
    display: block !important;
    width: 100% !important;
  }

  .single-product table.variations th.label,
  .single-product table.variations td.value {
    display: block !important;
    width: 100% !important;
  }

  .single-product table.variations th.label {
    margin-bottom: 12px !important;
  }

  .single-product table.variations th.label label {
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

  /* Swatches wrapper */
  .single-product .tawcvs-swatches {
    display: grid !important;
    grid-template-columns: repeat(5, 48px) !important;
    gap: 14px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin-top: 8px !important;
  }

  .single-product .swatch-item-wrapper {
    width: 48px !important;
    height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Color swatch */
  .single-product .swatch {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    border-radius: 50% !important;
    border: 2px solid #e5e7eb !important;
    box-shadow: 0 2px 8px rgba(0,0,0,.10) !important;
  }

  .single-product .swatch.selected {
    border-color: #2B3990 !important;
    box-shadow: 0 0 0 3px rgba(43,57,144,.18) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23a7ef4 */.single-product .priceperm2 {
  margin-top: 22px;
  margin-bottom: 22px;
}

.single-product table.variations {
  margin-top: 10px !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-f071da0 *//* ================================
   SELECTED COLOR NAME BELOW SWATCHES
================================ */

/* Force only color swatch area into column */
.single-product table.variations td.value.tdv-color-value-wrap {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 8px !important;
}

/* Keep swatches row clean */
.single-product td.value.tdv-color-value-wrap .tawcvs-swatches {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 14px !important;
  width: 100% !important;
  margin: 0 !important;
}

/* Hide empty label before selecting */
.single-product .tdv-selected-color-name {
  display: none !important;
}

/* Show selected color below swatches */
.single-product .tdv-selected-color-name.tdv-color-active {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;

  margin-top: 2px !important;
  margin-left: 0 !important;
  margin-bottom: 8px !important;

  font-family: "Inter", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;

  color: #2B3990 !important;
  background: #f4f8ff !important;
  border: 1px solid #dbe4ee !important;
  border-radius: 999px !important;
  padding: 7px 12px !important;
  width: fit-content !important;
  max-width: fit-content !important;
  line-height: 1.2 !important;
}

.single-product .tdv-selected-color-name span {
  color: #111827 !important;
  font-weight: 800 !important;
}

/* Mobile */
@media (max-width: 767px) {
  .single-product table.variations td.value.tdv-color-value-wrap {
    gap: 9px !important;
  }

  .single-product .tdv-selected-color-name.tdv-color-active {
    font-size: 13px !important;
    padding: 7px 11px !important;
    margin-bottom: 10px !important;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3370c8f *//* Product tabs wrapper */
.tdv-product-tabs {
    width: 100%;
    margin: 40px 0 60px;
    font-family: "Inter", sans-serif;
}

/* Tab navigation */
.tdv-tabs-nav {
    display: flex;
    gap: 8px;
    border-bottom: 1px solid #dbe4ee;
    margin-bottom: 22px;
}

/* Tab button */
.tdv-tab-btn {
    background: #f3f6fb !important;
    color: #2B3990 !important;
    border: 1px solid #dbe4ee !important;
    border-bottom: none !important;
    border-radius: 10px 10px 0 0 !important;
    padding: 14px 24px !important;
    font-family: "Inter", sans-serif !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    cursor: pointer;
    transition: 0.2s ease;
    box-shadow: none !important;
}

/* Hover */
.tdv-tab-btn:hover {
    background: #eaf1fb !important;
    color: #2B3990 !important;
}

/* Active tab */
.tdv-tab-btn.active {
    background: #2B3990 !important;
    color: #ffffff !important;
    border-color: #2B3990 !important;
}

/* Remove old underline if exists */
.tdv-tab-btn.active::after {
    display: none !important;
}

/* Panels */
.tdv-tab-panel {
    display: none;
}

.tdv-tab-panel.active {
    display: block;
}

/* Remove extra margin from specs table inside tab */
.tdv-product-tabs .tdv-specifications-wrap {
    margin: 0 !important;
}

/* Mobile */
@media (max-width: 767px) {
    .tdv-product-tabs {
        margin: 30px 0 45px;
    }

    .tdv-tabs-nav {
        gap: 6px;
    }

    .tdv-tab-btn {
        font-size: 14px !important;
        padding: 11px 16px !important;
    }
}

/* Reviews tab styling */
.tdv-product-tabs #reviews,
.tdv-product-tabs .woocommerce-Reviews {
    font-family: "Inter", sans-serif;
    color: #111827;
}

/* Main reviews heading */
.tdv-product-tabs .woocommerce-Reviews-title,
.tdv-product-tabs #reviews h2 {
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #0b2a57 !important;
    margin-bottom: 12px !important;
}

/* No reviews text */
.tdv-product-tabs .woocommerce-noreviews {
    background: #f8fbff;
    border: 1px solid #dbe4ee;
    border-radius: 10px;
    padding: 14px 16px;
    color: #475569;
    font-size: 15px;
    margin-bottom: 22px;
}

/* Review form box */
.tdv-product-tabs #review_form_wrapper {
    background: #f8fbff;
    border: 1px solid #dbe4ee;
    border-radius: 14px;
    padding: 24px;
    margin-top: 18px;
}

/* Review form title */
.tdv-product-tabs #reply-title,
.tdv-product-tabs .comment-reply-title {
    display: block;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #2B3990 !important;
    margin-bottom: 18px !important;
}

/* Labels */
.tdv-product-tabs #review_form label {
    font-size: 15px;
    font-weight: 700;
    color: #111827;
    margin-bottom: 8px;
    display: block;
}

/* Star rating */
.tdv-product-tabs .comment-form-rating .stars {
    margin: 8px 0 18px !important;
}

.tdv-product-tabs .comment-form-rating .stars a {
    color: #2B3990 !important;
    font-size: 24px;
    margin-right: 4px;
}

/* Textarea */
.tdv-product-tabs #review_form textarea {
    width: 100% !important;
    min-height: 150px;
    border: 1px solid #d6dee8 !important;
    border-radius: 10px !important;
    padding: 14px 16px !important;
    font-size: 15px !important;
    font-family: "Inter", sans-serif !important;
    background: #ffffff !important;
    color: #111827 !important;
    outline: none !important;
}

/* Focus */
.tdv-product-tabs #review_form textarea:focus {
    border-color: #2B3990 !important;
    box-shadow: 0 0 0 3px rgba(43,57,144,0.10) !important;
}

/* Submit button */
.tdv-product-tabs #review_form input[type="submit"],
.tdv-product-tabs #submit {
    background: #2B3990 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 10px !important;
    padding: 13px 28px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    font-family: "Inter", sans-serif !important;
    cursor: pointer;
    transition: 0.2s ease;
}

.tdv-product-tabs #review_form input[type="submit"]:hover,
.tdv-product-tabs #submit:hover {
    background: #2DA8E3 !important;
    color: #ffffff !important;
}

/* Existing review list */
.tdv-product-tabs .commentlist {
    list-style: none !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}

.tdv-product-tabs .comment_container {
    background: #ffffff;
    border: 1px solid #dbe4ee;
    border-radius: 12px;
    padding: 18px;
    margin-bottom: 14px;
}

/* Mobile */
@media (max-width: 767px) {
    .tdv-product-tabs .woocommerce-Reviews-title,
    .tdv-product-tabs #reviews h2 {
        font-size: 24px !important;
    }

    .tdv-product-tabs #review_form_wrapper {
        padding: 18px;
    }

    .tdv-product-tabs #reply-title,
    .tdv-product-tabs .comment-reply-title {
        font-size: 19px !important;
    }
}
/* Modern icon circles for Ja / Nee */
.tdv-spec-check,
.tdv-spec-cross {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    border-radius: 50% !important;
    vertical-align: middle !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 14px 14px !important;
}

/* Ja = brand blue circle with modern white check */
.tdv-spec-check {
    background-color: #2B3990 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='20' viewBox='0 -960 960 960' width='20' fill='%23ffffff'%3E%3Cpath d='M382-240 154-468l57-57 171 171 367-367 57 57-424 424Z'/%3E%3C/svg%3E") !important;
}

/* Nee = red circle with modern white close */
.tdv-spec-cross {
    background-color: #dc2626 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='20' viewBox='0 -960 960 960' width='20' fill='%23ffffff'%3E%3Cpath d='m256-200-56-56 224-224-224-224 56-56 224 224 224-224 56 56-224 224 224 224-56 56-224-224-224 224Z'/%3E%3C/svg%3E") !important;
}

/* Remove old pseudo icon if still active */
.tdv-spec-check::before,
.tdv-spec-cross::before {
    content: none !important;
}

/* Mobile */
@media (max-width: 767px) {
    .tdv-spec-check,
    .tdv-spec-cross {
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
        background-size: 13px 13px !important;
    }
}/* End custom CSS */
/* Start custom CSS *//* Keep variation swatches above calculator */
.single-product form.cart {
  display: flex;
  flex-direction: column;
}

/* Variations first */
.single-product form.cart table.variations {
  order: 1;
}

/* Variation wrap contains calculator + button */
.single-product form.cart .single_variation_wrap {
  order: 2;
}

/* Calculator before button */
.single-product form.cart .tdv-calculator {
  order: 1;
  margin-top: 18px;
}

/* Elementor button wrapper after calculator */
.single-product form.cart .e-atc-qty-button-holder {
  order: 2;
}

/* Hide qty input but keep it working */
.single-product form.cart .quantity {
  position: absolute !important;
  left: -9999px !important;
  opacity: 0 !important;
}

/* Button full width */
.single-product form.cart .single_add_to_cart_button {
  width: 100%;
  max-width: 430px;
  min-height: 58px;
  border-radius: 10px;
  font-size: 17px;
  font-weight: 700;
  margin-top: 18px;
}/* End custom CSS */