/********************************************************
		Coderplace Custom Styles
********************************************************/

/* Menu knop in header - altijd zichtbaar (zowel desktop als mobile) */
.header-top-main.bg_main .container.text-xs-center.mobile {
	display: inline-block !important;
	vertical-align: middle;
	padding: 13px 0px;
}

/* Menu knop in left column - verberg op desktop */
@media (min-width: 992px) {
	#left-column .container.text-xs-center.mobile {
		display: none !important;
	}
}

/* Menu knop in left column - toon op mobile */
@media (max-width: 991px) {
	#left-column .container.text-xs-center.mobile {
		display: block !important;
	}
}

.header-top-main.bg_main .container.text-xs-center.mobile .menu-container {
	display: block !important;
}

.header-top-main.bg_main .container.text-xs-center.mobile .cat-title {
	font-size: 16px !important;
	line-height: normal !important;
	font-weight: 500 !important;
}

/* Fix menu positioning - menu knop links, dan menu, dan aanbiedingen rechts */
.header-top-main.bg_main .container {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
	position: relative;
}

/* Menu knop moet als eerste staan (links) */
.header-top-main.bg_main .container.text-xs-center.mobile {
	order: 1;
	margin-right: 15px;
}

/* Hoofdmenu moet na de menu knop komen */
.header-top-main.bg_main #_top_main_menu {
	order: 2;
	float: none !important;
	display: inline-block;
	vertical-align: middle;
	margin: 0;
	position: static !important;
	width: auto;
	flex: 1;
}

/* Aanbiedingen links rechts */
#header .header-top-main.bg_main #cpheadercms2 {
	order: 3;
	margin-left: auto;
	position: relative;
	right: auto;
	top: auto;
	transform: none;
}

/* Mobile: menu knop links van zoekbalk */
@media (max-width: 991px) {
	/* Verberg hoofdmenu op mobile */
	.header-top-main.bg_main #_top_main_menu {
		display: none !important;
	}
	
	/* Verberg aanbiedingen op mobile */
	#header .header-top-main.bg_main #cpheadercms2 {
		display: none !important;
	}
	
	/* Zorg dat header-top-main container flexbox is voor menu knop en zoekbalk */
	.header-top-main.bg_main .container {
		display: flex !important;
		align-items: center;
		justify-content: flex-start;
		gap: 10px;
		flex-wrap: nowrap;
		width: 100%;
	}
	
	/* Menu knop moet links staan, vóór de zoekbalk */
	.header-top-main.bg_main .container.text-xs-center.mobile {
		display: inline-block !important;
		order: 1 !important;
		margin-right: 10px;
		flex-shrink: 0;
		flex-grow: 0;
		width: auto;
	}
	
	/* Zoekbalk moet na menu knop komen (wordt door JavaScript verplaatst naar deze container) */
	.header-top-main.bg_main .container #search_block_top {
		order: 2 !important;
		flex: 1 1 auto;
		min-width: 0; /* Zorg dat flex item kan krimpen */
		max-width: 100%;
		width: auto;
	}
	
	/* Zorg dat header-center flexbox is voor als de zoekbalk daar nog staat */
	.header-top .header-center {
		display: flex !important;
		align-items: center;
		justify-content: flex-start;
		gap: 10px;
		flex-wrap: nowrap;
	}
	
	/* Zoekbalk in header-center (voor als deze nog niet verplaatst is) */
	.header-top .header-center #search_block_top {
		order: 2 !important;
		flex: 1 1 auto;
		min-width: 0;
		max-width: 100%;
	}
}

/* Wishlist en Compare knoppen op product detail pagina */
.product-add-to-cart .wish-comp-inline {
    display: flex !important;
    gap: 10px;
    margin-top: 15px;
    align-items: center;
    clear: both;
    width: 100%;
}

.product-add-to-cart .wish-comp-inline .compare,
.product-add-to-cart .wish-comp-inline .wishlist {
    display: inline-block !important;
    visibility: visible !important;
}

.product-add-to-cart .wish-comp-inline .st-compare-button,
.product-add-to-cart .wish-comp-inline .st-wishlist-button {
    display: inline-flex !important;
    align-items: center;
    padding: 8px 16px;
    background-color: #fad505 !important;
    color: #222222 !important;
    border: 1px solid #fad505 !important;
    border-radius: 4px;
    text-decoration: none !important;
    font-weight: 500;
    transition: all 0.3s ease;
    cursor: pointer;
    visibility: visible !important;
    opacity: 1 !important;
}

.product-add-to-cart .wish-comp-inline .st-compare-button:hover,
.product-add-to-cart .wish-comp-inline .st-wishlist-button:hover {
    background-color: #222222 !important;
    color: #fad505 !important;
    text-decoration: none !important;
}

.product-add-to-cart .wish-comp-inline .st-compare-button.added,
.product-add-to-cart .wish-comp-inline .st-wishlist-button.added {
    background-color: #222222 !important;
    color: #fad505 !important;
}

.product-add-to-cart .wish-comp-inline .st-compare-bt-content,
.product-add-to-cart .wish-comp-inline .st-wishlist-bt-content {
    display: flex !important;
    align-items: center;
    gap: 5px;
}

.product-add-to-cart .wish-comp-inline .st-compare-bt-content .fa,
.product-add-to-cart .wish-comp-inline .st-wishlist-bt-content .fa {
    display: inline-block !important;
    margin-right: 5px;
    visibility: visible !important;
}

.product-add-to-cart .wish-comp-inline .st-compare-title,
.product-add-to-cart .wish-comp-inline .st-wishlist-title {
    display: inline-block !important;
    visibility: visible !important;
}

/* Zorg dat de "add to cart" knop zichtbaar blijft, ook als disabled */
.product-add-to-cart .add .add-to-cart:disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
    display: inline-block !important;
    visibility: visible !important;
}

.product-add-to-cart .add .add-to-cart {
    display: inline-block !important;
    visibility: visible !important;
}

/* Layout fix voor product-quantity en wish-comp-inline */
.product-add-to-cart .product-quantity {
    display: flex !important;
    align-items: flex-end;
    gap: 15px;
    width: 100%;
    margin-bottom: 10px;
    flex-wrap: wrap;
}

.product-add-to-cart .product-quantity .product-double-quantity {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.product-add-to-cart .product-quantity .add {
    flex: 1 1 auto;
    display: flex !important;
    align-items: flex-end;
    min-width: 200px;
}

.product-add-to-cart .product-quantity .add .add-to-cart {
    width: 100%;
}

/* Styling voor product-actions-after-prices (na prijsoverzicht) */
.product-actions-after-prices {
    margin-top: 15px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border-top: none !important;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

.product-actions-after-prices::before,
.product-actions-after-prices::after {
    display: none !important;
    content: none !important;
    border: none !important;
}

.product-actions-after-prices .product-add-to-cart {
    margin-top: 0;
    border: none !important;
}

/* Verwijder eventuele borders van prijsoverzicht-wrapper die zichtbaar zijn */
.prijsoverzicht-wrapper {
    border-bottom: none !important;
    margin-bottom: 0 !important;
}

.prijsoverzicht-wrapper::after {
    display: none !important;
    content: none !important;
    border: none !important;
}

/* Product titel met wishlist/compare knoppen rechts */
.product-title-with-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 15px;
    width: 100%;
}

.product-title-with-actions .productpage_title {
    flex: 1;
    margin: 0;
    padding: 0;
}

.product-title-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
    margin-left: auto;
}

.product-title-actions .compare,
.product-title-actions .wishlist {
    display: inline-block;
}

.product-title-actions .st-compare-button,
.product-title-actions .st-wishlist-button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 8px 10px;
    background-color: #fad505 !important;
    color: #222222 !important;
    border: 1px solid #fad505 !important;
    border-radius: 4px;
    text-decoration: none !important;
    font-weight: 500;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    cursor: pointer;
    visibility: visible !important;
    opacity: 1 !important;
    width: 36px;
    height: 36px;
    min-width: 36px;
}

.product-title-actions .st-compare-button:hover,
.product-title-actions .st-wishlist-button:hover {
    background-color: #222222 !important;
    color: #fad505 !important;
    text-decoration: none !important;
}

.product-title-actions .st-compare-button:hover .fa,
.product-title-actions .st-wishlist-button:hover .fa {
    color: #fad505 !important;
}

.product-title-actions .st-compare-button.added,
.product-title-actions .st-wishlist-button.added {
    background-color: #222222 !important;
    color: #fad505 !important;
}

.product-title-actions .st-compare-bt-content,
.product-title-actions .st-wishlist-bt-content {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 0;
    width: 100%;
    height: 100%;
}

.product-title-actions .st-compare-bt-content .fa,
.product-title-actions .st-wishlist-bt-content .fa {
    display: inline-block !important;
    margin: 0 !important;
    visibility: visible !important;
    font-size: 1rem;
    color: #222222 !important;
    transition: color 0.3s ease;
}

.product-title-actions .st-compare-title,
.product-title-actions .st-wishlist-title {
    display: none !important;
    visibility: hidden !important;
}

/* WhatsApp share knop */
.product-title-actions .whatsapp-share-button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0;
    background-color: #25D366 !important;
    color: #ffffff !important;
    border: 1px solid #25D366 !important;
    border-radius: 4px;
    text-decoration: none !important;
    font-weight: 500;
    transition: all 0.3s ease;
    cursor: pointer;
    visibility: visible !important;
    opacity: 1 !important;
    width: 36px;
    height: 36px;
    min-width: 36px;
}

.product-title-actions .whatsapp-share-button:hover {
    background-color: #128C7E !important;
    border-color: #128C7E !important;
    text-decoration: none !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.product-title-actions .whatsapp-share-button .whatsapp-icon {
    width: 20px;
    height: 20px;
    object-fit: contain;
    display: block;
}

/* Mobile responsive: stapel knoppen onder titel op kleine schermen */
@media (max-width: 767px) {
    .product-title-with-actions {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .product-title-actions {
        margin-left: 0;
        width: 100%;
        justify-content: flex-start;
    }
}
.tm-carousel {
  display: none;
  position: relative;
  float: left;
  width: 100%;
  margin: 0;
}
.cp-carousel {
  display: none;
  position: relative;
  float: left;
  width: 100%;
  margin: 0;
}
.owl-carousel .owl-wrapper {
  display: none;
  position: relative;
  -webkit-transform: translate3d(0px, 0px, 0px);
  -ms-transform: translate3d(0px, 0px, 0px);
  -o-transform: translate3d(0px, 0px, 0px);
  -moz-transform: translate3d(0px, 0px, 0px);
  display: flex!important;
  flex-wrap: wrap;
}
.owl-carousel .owl-wrapper:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
.owl-carousel .owl-wrapper-outer {
  overflow-x: clip;
  position: relative;
  float: left;
  width: 100%;
  padding: 0;
}
.owl-carousel .owl-wrapper-outer.autoHeight {
  -webkit-transition: height 500ms ease-in-out;
  -moz-transition: height 500ms ease-in-out;
  -ms-transition: height 500ms ease-in-out;
  -o-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out;
}
.owl-carousel .owl-item {
  float: left;
  display: flex;
  height: auto;
}
.owl-carousel .owl-item .manu_image a {
  display: inline-block;
}
.owl-carousel .owl-item .manu_image a img {
  max-width: 100%;
}

.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  /* fix */
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  text-align: center;
}

/* mouse grab icon */
.customNavigation {
	position: absolute;
	z-index: 9;
	width: 100%;
	top: 50%;
	direction: ltr !important;
	right: 0;
	left: auto;
  opacity: 0;
  -khtml-opacity: 0;
-webkit-opacity: 0;
-moz-opacity: 0;
}
.products .customNavigation {
	top: 48%;
}
.tmcategorylist .customNavigation, .testimonial-block-part .customNavigation {
	top: 54%;
}
.tmcategorylist:hover .customNavigation {
	opacity: 1;
	-khtml-opacity: 1;
	-webkit-opacity: 1;
	-moz-opacity: 1;
}
.customNavigation a.prev::before {
	content: "\E314";
	font-family: "Material Icons";
	position: absolute;
	font-size: 20px;
	right: 5px;
	top: -1px;
	color: #808080;
}
.customNavigation a.next::before {
	content: "\E315";
	font-family: "Material Icons";
	position: absolute;
	font-size: 20px;
	position: absolute;
	right: 3px;
	top: -1px;
	color: #808080;
}
#tmtestimonialcmsblock .customNavigation {
  top: -24px;
  z-index: 5;
  right: 15px;
}
#index #tmtestimonialcmsblock .customNavigation {
  top: -40px;
  right: 0;
}
.special-products .customNavigation {
	top: 52%;
}
.special-products:hover .customNavigation, 
.products:hover .customNavigation,
.testimonial-block-part:hover .customNavigation,
.tmblog-latest:hover .customNavigation, 
#tminstagramblock:hover .customNavigation,
.product-accessories:hover .customNavigation,
.productscategory-products:hover .customNavigation{
  opacity: 1;
  -khtml-opacity: 1;
  -webkit-opacity: 1;
  -moz-opacity: 1;
}
.lastest_block .customNavigation {
	top: 44%;
}
.customNavigation i {
	color: #222 !important;
	cursor: pointer;
	font-size: 0;
	font-weight: 500;
	height: 38px;
	line-height: 32px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	text-align: center;
	width: 38px;
	background: transparent;
	border-radius: 0;
	font-style: unset;
	box-shadow: 0px 0px 16px 0px rgba(0,0,0,0.11);
}

.customNavigation i.prev {
	background: transparent;
	right: auto;
	background: #fff;
	border-radius: 50%;
	left: -5px;
}
.customNavigation i.next {
	background: transparent;
	right: 0px;
	background: #fff;
	border-radius: 50%;
	right: -5px;
}
.tmcategorylist .customNavigation i.prev, 
.testimonial-block-part .customNavigation i.prev, 
#tminstagramblock .btn.prev.instagram_prev,
.special-products .customNavigation i.prev{
	left: -20px;
}
.tmcategorylist .customNavigation i.next, 
.testimonial-block-part .customNavigation i.next, 
#tminstagramblock .btn.next.instagram_next,
.special-products .customNavigation i.next  {
  right: -20px;
}
.customNavigation i.prev::before {
	content: '';
	-webkit-mask-image: url(../img/megnor/pro-left.svg);
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(../img/megnor/pro-left.svg);
	mask-position: center;
	mask-repeat: no-repeat;
	background-color: #000;
	mask-size: 14px;
	font-size: 14px;
	width: 38px;
	height: 38px;
	display: block;
  -webkit-mask-size: 14px;
}
#tmtestimonialcmsblock .customNavigation i.prev::before {
  right: 1px;
  font-weight: 500;
}
#tmtestimonialcmsblock .customNavigation i.next::before {
  right: 0;
  font-weight: 500;
}
.customNavigation i.next::before {
	content: '';
	-webkit-mask-image: url(../img/megnor/pro-right.svg);
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(../img/megnor/pro-right.svg);
	mask-position: center;
	mask-repeat: no-repeat;
	background-color: #000;
	mask-size: 14px;
	font-size: 14px;
	width: 38px;
	height: 38px;
	display: block;
  -webkit-mask-size: 14px;
}
.customNavigation i.next:hover::before,.customNavigation i.prev:hover::before  {
  color: #fff;
}
#cpleftbanner1 img,
#cpleftbanner2 img {
  max-width: 100%;
}
#cpleftbanner1 li,
#cpleftbanner2 li {
  overflow: hidden;
  position: relative;
  float: left;
  border-radius: 5px;
}
#cpleftbanner1 li a,
#cpleftbanner2 li a {
  display: inline-block;
  position: relative;
  overflow: hidden;
  vertical-align: top;
}
.footer-container .links.lastest_block .customNavigation i.prev:hover {
  color: #9bbab1 !important;
}
.footer-container .links.lastest_block .customNavigation i.next:hover {
  color: #9bbab1 !important;
}

@media (max-width: 1449px) {
  .tmcategorylist .customNavigation i.prev, 
  .testimonial-block-part .customNavigation i.prev, 
  #tminstagramblock .btn.prev.instagram_prev,
  .special-products .customNavigation i.prev {
    left: -15px;
  }
  .tmcategorylist .customNavigation i.next, 
  .testimonial-block-part .customNavigation i.next,
   #tminstagramblock .btn.next.instagram_next,
   .special-products .customNavigation i.next {
    right: -15px;
  }
  .customNavigation i.next {
    right: 0;
  }
  .customNavigation i.prev {
    left: 0;
  }
}
@media (max-width: 1199px) {
  #tmtestimonialcmsblock .customNavigation {
    top: -36px;
    z-index: 5;
    right: -18px;
  }
}

@media (max-width: 991px) {
  #cpleftbanner1 li img,
  #cpleftbanner2 li a {
    width: auto;
  }
  #tmtestimonialcmsblock .customNavigation {
    top: 0;
    right: 0;
  }
}
@media (max-width: 767px) {
  .customNavigation {
    opacity: 1;
    -khtml-opacity: 1;
    -webkit-opacity: 1;
    -moz-opacity: 1;
  }
  
  .tmcategorylist .customNavigation i.prev, 
  .testimonial-block-part .customNavigation i.prev, 
  #tminstagramblock .btn.prev.instagram_prev, 
  .special-products .customNavigation i.prev,
  .btn.prev.accessories_prev {
    left: 0;
  }
  .tmcategorylist .customNavigation i.next, 
  .testimonial-block-part .customNavigation i.next,
   #tminstagramblock .btn.next.instagram_next, 
   .special-products .customNavigation i.next,
   .btn.next.accessories_next {
    right: 0;
  }
  #main .images-container .js-qv-mask .customNavigation {
    top: 13px;
  }
  .quickview .mask.additional_slider .customNavigation i.prev {
    left: -10px !important;
  }
  .quickview .mask.additional_slider .customNavigation i.next {
    right: -10px !important;
  }
  .btn.next.brand_next {
    left: auto;
    right: 0;
    position: absolute;
  }
  .btn.prev.brand_prev {
    left: 0;
    right: auto;
  }
  .customNavigation i.next {
    left: auto;
    right: 0;
  }
}
@media (max-width: 480px) {
}

/* ========================================
   PRODUCT PAGE STYLING - NO TABS LAYOUT
   ======================================== */

/* Spacing tussen product secties */
.product-tabcontent-no-tabs .product-tab-content-item {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    margin-bottom: 40px;
    padding-bottom: 30px;
}

.product-tabcontent-no-tabs .product-tab-content-item:not(:last-child) {
    border-bottom: 1px solid #e5e5e5;
}

/* Product tab titels */
.product-tabcontent-no-tabs .product-tab-title {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 2px solid #fad505;
    color: #222222;
}

/* Product details content spacing */
.product-details-content {
    margin-top: 15px;
}

.product-details-content .data-sheet {
    margin-top: 0;
}

/* Reset standaard styling en zorg voor perfecte uitlijning */
.product-details-content .data-sheet dt.name {
    margin-top: 0 !important;
    margin-bottom: 0;
    font-weight: 600;
    display: inline-table !important;
    vertical-align: middle !important;
    line-height: 24px !important;
    padding: 0.625rem !important;
    min-height: 0 !important;
    height: auto !important;
    box-sizing: border-box;
}

/* Spacing tussen rijen via de dt (eerste element van elke rij) */
.product-details-content .data-sheet dt.name:not(:first-child) {
    margin-top: 15px;
}

.product-details-content .data-sheet dd.value {
    margin-bottom: 0;
    margin-top: 0 !important;
    display: inline-table !important;
    vertical-align: middle !important;
    line-height: 24px !important;
    padding: 0.625rem !important;
    min-height: 0 !important;
    height: auto !important;
    box-sizing: border-box;
}

/* Zorg dat beide elementen exact dezelfde padding hebben */
.product-details-content .data-sheet dt.name,
.product-details-content .data-sheet dd.value {
    padding-top: 0.625rem !important;
    padding-bottom: 0.625rem !important;
    padding-left: 0.625rem !important;
    padding-right: 0.625rem !important;
}

/* Description content spacing */
.product-tabcontent-no-tabs #description .product-description {
    margin-top: 15px;
    line-height: 1.6;
}

/* Attachments spacing */
.product-tabcontent-no-tabs #attachments .attachments-list {
    margin-top: 15px;
}

.product-tabcontent-no-tabs #attachments .attachment {
    margin-bottom: 20px;
    padding-bottom: 15px;
}

.product-tabcontent-no-tabs #attachments .attachment:not(:last-child) {
    border-bottom: 1px solid #e5e5e5;
}

/* Reviews section styling */
.product-tabcontent-no-tabs #product-comments-section {
    margin-top: 20px;
}

/* Empty comment message styling */
.empty-product-comment {
    margin-top: 20px;
    padding: 20px;
    background-color: #f8f9fa;
    border-radius: 5px;
    text-align: center;
}

.empty-product-comment p {
    margin-bottom: 20px;
    font-size: 16px;
    color: #555;
}

.empty-comment-actions {
    display: flex;
    gap: 15px;
    justify-content: center;
    flex-wrap: wrap;
}

.empty-comment-actions .btn {
    min-width: 150px;
    padding: 12px 24px;
    font-size: 14px;
    font-weight: 500;
}

/* Override btn-comment styling to use standard theme buttons */
.empty-comment-actions .btn-comment,
.empty-comment-actions .btn-comment-inverse {
    background-color: #fad505;
    color: #222222;
    border: none;
    border-radius: 5px;
    box-shadow: none;
    height: auto;
    padding: 12px 24px;
    font-size: 14px;
    font-weight: 500;
    text-transform: capitalize;
    transition: all 0.3s ease;
}

.empty-comment-actions .btn-comment:hover,
.empty-comment-actions .btn-comment-inverse:hover {
    background-color: #222222;
    color: #ffffff;
    opacity: 1;
}

.empty-comment-actions .btn-comment-inverse {
    background-color: #ffffff;
    color: #222222;
    border: 2px solid #fad505;
}

.empty-comment-actions .btn-comment-inverse:hover {
    background-color: #fad505;
    border-color: #fad505;
    color: #222222;
}

/* No reviews message */
.no-reviews-message {
    margin-top: 20px;
    padding: 20px;
    text-align: center;
    color: #555;
    font-size: 16px;
}

/* Responsive adjustments */
@media (max-width: 767px) {
    .product-tabcontent-no-tabs .product-tab-content-item {
        margin-bottom: 30px;
        padding-bottom: 20px;
    }
    
    .product-tabcontent-no-tabs .product-tab-title {
        font-size: 1.3rem;
        margin-bottom: 15px;
        padding-bottom: 10px;
    }
    
    .empty-comment-actions {
        flex-direction: column;
    }
    
    .empty-comment-actions .btn {
        width: 100%;
        min-width: auto;
    }
}

/* ========================================
   BEST DEAL LINK STYLING
   ======================================== */

/* Best deal link - gele knop met zwarte tekst (zelfde als btn-bekijken) */
.best-deal-link {
    display: inline-block;
    padding: 8px 16px;
    background-color: #fad505;
    color: #222222 !important;
    text-decoration: none !important;
    font-weight: 500;
    border-radius: 5px;
    border: none;
    transition: all 0.3s ease;
    font-size: 0.9rem;
    margin-right: 8px;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    white-space: nowrap;
}

.best-deal-link:hover {
    background-color: #222222;
    color: #fad505 !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-decoration: none !important;
}

.best-deal-label {
    color: #222222 !important;
    font-weight: 500;
}

/* Zorg dat best-deal-label binnen de link de juiste kleur behoudt bij hover */
.best-deal-link:hover .best-deal-label {
    color: #fad505 !important;
}

/* Prijs ernaast moet zwart zijn */
.current-price-value {
    color: #222222;
}

/* Zorg dat tekst na best-deal-link zwart is */
.current-price-value .best-deal-link ~ *,
.current-price-value {
    color: #222222 !important;
}

/* Zorg dat de prijs zelf zwart is */
.product-price,
.product-price .current-price,
.product-price .current-price-value {
    color: #222222;
}

/* ========================================
   SUBCATEGORIE LINKS STYLING
   ======================================== */

/* Subcategorie links - gele knoppen met zwarte tekst */
.subcategory-name {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 48px; /* Vaste minimale hoogte voor alle knoppen */
    padding: 10px 15px;
    background-color: #fad505;
    color: #222222 !important;
    text-decoration: none !important;
    font-weight: 500;
    border-radius: 5px;
    border: none;
    transition: all 0.3s ease;
    font-size: 1rem;
    margin-bottom: 10px;
    margin-top: 0 !important; /* Overschrijf margin-top uit theme.css */
    text-align: center;
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
    box-sizing: border-box;
    width: 100%;
    line-height: 1.4;
    float: none !important; /* Overschrijf float uit theme.css */
}

.subcategory-name:hover {
    background-color: #222222;
    color: #fad505 !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    text-decoration: none !important;
}

/* Zorg dat h5 geen extra margin heeft */
#subcategories ul li h5 {
    margin: 0;
    padding: 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#subcategories ul li {
    margin-bottom: 15px;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    float: none !important; /* Overschrijf float uit theme.css */
    width: auto !important; /* Laat flexbox de breedte bepalen */
}

/* Op mobiel: zorg dat knoppen niet uit de container groeien */
@media (max-width: 767px) {
    .subcategory-name {
        min-height: 44px;
        padding: 8px 12px;
        font-size: 0.9rem;
        max-width: 100%;
        word-break: break-word;
    }
    
    #subcategories ul li {
        width: 100% !important;
        max-width: 100%;
    }
    
    #subcategories ul {
        flex-direction: column;
        gap: 0px;
    }
}

/* ========================================
   PRODUCT PAGE FIXES
   ======================================== */

/* Verberg pipe teken na merknaam */
.product-page .productpage-attributes-items .brand-infos::after {
    display: none !important;
}

/* Verberg lege reviews sectie die onnodige ruimte inneemt */
.hook-reviews .product-list-reviews[style*="visibility:hidden"],
.hook-reviews .product-list-reviews[style*="visibility: hidden"] {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Verberg hook-reviews container als deze leeg is */
.hook-reviews:empty {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Verberg hook-reviews als deze alleen verborgen content bevat */
.hook-reviews:has(.product-list-reviews[style*="visibility:hidden"]:only-child),
.hook-reviews:has(.product-list-reviews[style*="visibility: hidden"]:only-child) {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Extra fallback: verberg hook-reviews als alle children verborgen zijn */
.hook-reviews > *[style*="visibility:hidden"] {
    display: none !important;
}

.hook-reviews > *[style*="visibility: hidden"] {
    display: none !important;
}

/* ========================================
   BREADCRUMB MOBILE OPTIMIZATION
   ======================================== */

/* Desktop: show all items */
@media (min-width: 768px) {
    .breadcrumb-item-mobile-hidden {
        display: inline-block !important;
    }
}

/* Mobile breadcrumb - show only last 2 items */
@media (max-width: 767px) {
    /* Reduce padding on breadcrumb wrapper and container */
    #breadcrumb_wrapper {
        padding-top: 0px !important;
        padding-bottom: 10px !important;
        margin: 0 !important;
    }
    
    .breadcrumb {
        padding: 5px 0 !important;
        margin: 0 !important;
    }
    
    .breadcrumb .container {
        padding-left: 10px !important;
        padding-right: 10px !important;
        max-width: 100% !important;
    }
    
    .breadcrumb-list {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        overflow: hidden;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    .breadcrumb-item {
        flex-shrink: 0;
        white-space: nowrap;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    .breadcrumb-item a {
        padding: 0 !important;
        margin: 0 !important;
        padding-inline: 5px !important;
    }
    
    .breadcrumb-item:first-child a {
        padding-inline-start: 0 !important;
    }
    
    .breadcrumb-item a span {
        max-width: 150px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        display: inline-block;
    }
    
    /* Hide all items except last 2 on mobile */
    .breadcrumb-item-mobile-hidden {
        display: none !important;
    }
    
    /* Smaller font size on mobile */
    .breadcrumb {
        font-size: 12px;
    }
    
    .breadcrumb-item a {
        font-size: 12px;
    }
    
    /* Reduce padding on mobile */
    .breadcrumb-item + .breadcrumb-item::before {
        padding-right: 0.25rem;
        padding-left: 0.25rem;
        font-size: 10px;
    }
}

/* ========================================
   CMS BANNER3 STYLING
   ======================================== */

/* Banner wrapper - flexbox for equal height */
#cpcmsbanner3_block1.banner-wrapper {
    display: flex;
    gap: 20px;
    width: 100%;
    align-items: stretch;
}

/* Both containers equal height - different widths */
#cpcmsbanner3_block1 .left-side.main-content {
    position: relative;
    overflow: hidden;
    flex: 0 0 calc(33.333% - 10px);
    display: flex;
    flex-direction: column;
    min-height: 280px;
    background-color: #ffffff;
    border: 1px solid #e5e5e5;
}

#cpcmsbanner3_block1 .right-side.main-content {
    position: relative;
    overflow: hidden;
    flex: 0 0 calc(66.666% - 10px);
    display: flex;
    flex-direction: column;
    min-height: 280px;
    background-color: #ffffff;
    border: 1px solid #e5e5e5;
}

/* CMS content takes full height */
#cpcmsbanner3_block1 .cms_content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    flex: 1;
    overflow: hidden;
}

/* Images fill container but maintain aspect ratio */
#cpcmsbanner3_block1 .cms_content img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: all 0.5s ease 0s;
    -webkit-transition: all 0.5s ease 0s;
    -moz-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
    -ms-transition: all 0.5s ease 0s;
}

#cpcmsbanner3_block1 .cms_content:hover img {
    transform: scale(1.06);
    -webkit-transform: scale(1.06);
    -ms-transform: scale(1.06);
    -o-transform: scale(1.06);
    -moz-transform: scale(1.06);
}

/* CMS block overlay */
#cpcmsbanner3_block1 .cms-block {
    position: absolute;
    top: 15%;
    left: 10%;
    bottom: auto;
    text-align: left;
    right: auto;
    width: auto;
    font-size: 20px;
    font-weight: 300;
    text-transform: uppercase;
    z-index: 2;
}

/* Text styling */
#cpcmsbanner3_block1 .cms-block .offer-text1 {
    font-size: 16px;
    font-weight: 400;
    text-transform: capitalize;
    margin-bottom: 5px;
    line-height: 1.4;
    color: #222222;
}

#cpcmsbanner3_block1 .cms-block .offer-text1 span {
    font-size: 16px;
    text-transform: capitalize;
    font-weight: 400;
}

#cpcmsbanner3_block1 .cms-block .offer-text2 {
    font-weight: 600;
    font-size: 30px;
    margin: 8px 0px;
    line-height: 36px;
    color: #222222;
}

#cpcmsbanner3_block1 .cms-block .offer-text2 span {
    font-size: 16px;
    text-transform: capitalize;
    font-weight: 400;
}

/* Button styling */
#cpcmsbanner3_block1 .cms-block .offer-button {
    margin-top: 10px;
}

#cpcmsbanner3_block1 .cms-block .offer-button a {
    font-size: 14px;
    font-weight: 500;
    text-transform: capitalize;
    color: #222222 !important;
    text-decoration: none;
    display: inline-block;
    padding: 8px 16px;
    background-color: #fad505;
    border-radius: 5px;
    transition: all 0.3s ease;
}

#cpcmsbanner3_block1 .cms-block .offer-button a:hover {
    background-color: #222222;
    color: #fad505 !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Button arrow icon */
#cpcmsbanner3_block1 .cms-block .offer-button a::after {
    content: "\f105";
    display: inline-block;
    background-color: #222222;
    font-family: 'FontAwesome';
    font-weight: 600;
    line-height: 15px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    color: #fad505;
    text-align: center;
    margin-inline-start: 6px;
    padding-left: 2px;
    transition: all 0.3s ease;
}

#cpcmsbanner3_block1 .cms-block .offer-button a:hover::after {
    background-color: #fad505;
    color: #222222;
}

/* Responsive adjustments */
@media (max-width: 1199px) {
    #cpcmsbanner3_block1.banner-wrapper {
        flex-direction: column;
        gap: 20px;
    }
    
    #cpcmsbanner3_block1 .left-side.main-content,
    #cpcmsbanner3_block1 .right-side.main-content {
        width: 100%;
        min-height: auto; /* Laat container schalen met content */
        height: auto; /* Laat hoogte bepalen door content */
    }
}

/* Mobile: border precies om banner content */
@media (max-width: 767px) {
    #cpcmsbanner3_block1.banner-wrapper {
        gap: 15px; /* Kleinere gap op mobile */
    }
    
    #cpcmsbanner3_block1 .left-side.main-content,
    #cpcmsbanner3_block1 .right-side.main-content {
        min-height: auto !important;
        height: auto !important;
        display: block; /* Verander van flex naar block voor betere content sizing */
        flex: none !important; /* Verwijder flex sizing */
        width: 100% !important;
        padding: 0; /* Verwijder eventuele padding */
    }
    
    #cpcmsbanner3_block1 .cms_content {
        height: auto !important;
        display: block; /* Laat content zijn natuurlijke hoogte bepalen */
        position: relative;
        width: 100%;
        padding: 0;
        margin: 0;
    }
    
    #cpcmsbanner3_block1 .cms_content img {
        width: 100% !important;
        height: auto !important; /* Laat afbeelding zijn aspect ratio behouden */
        object-fit: contain !important; /* Verander van cover naar contain zodat hele afbeelding zichtbaar is */
        max-width: 100%;
        display: block;
        margin: 0;
        padding: 0;
    }
    
    /* Zorg dat de link ook de juiste grootte heeft */
    #cpcmsbanner3_block1 .cms_content a {
        display: block;
        width: 100%;
        height: auto;
        line-height: 0; /* Verwijder extra ruimte onder afbeelding */
    }
    
    /* Zorg dat cms-block niet de container groter maakt */
    #cpcmsbanner3_block1 .cms-block {
        position: absolute;
        pointer-events: none; /* Zorg dat overlay niet interfereert */
    }
    
    #cpcmsbanner3_block1 .cms-block .offer-button {
        pointer-events: auto; /* Maar buttons moeten wel klikbaar zijn */
    }
}

/* ========================================
   CMS BANNER1 STYLING
   ======================================== */

/* Main banner container */
#cpcmsbanner1 {
    float: right;
    width: 36.875%;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    padding-inline-start: 10px;
}

/* Banner block containers */
#cpcmsbanner1_block1 {
    clear: both;
    width: 100%;
    position: relative;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}

#cpcmsbanner1_block2 {
    clear: both;
    width: 100%;
    position: relative;
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
}

/* Main content containers - fixed sizes */
#cpcmsbanner1_block1 .first-content.main-content,
#cpcmsbanner1_block1 .second-content.main-content {
    position: relative;
    overflow: hidden;
    width: calc(50% - 10px);
    height: 235px;
    background-color: #ffffff;
    border: 1px solid #e5e5e5;
}

#cpcmsbanner1_block2 .first-content.main-content {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 235px;
    background-color: #ffffff;
    border: 1px solid #e5e5e5;
}

/* CMS content with image */
#cpcmsbanner1 .cms_content {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* Product images positioned absolutely right-bottom */
/* Smaller images for top 2 containers */
#cpcmsbanner1_block1 .cms_content img {
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: auto;
    height: auto;
    max-width: 40%;
    max-height: 70%;
    object-fit: contain;
    object-position: right bottom;
    transition: all 0.5s ease 0s;
    -webkit-transition: all 0.5s ease 0s;
    -moz-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
    -ms-transition: all 0.5s ease 0s;
    z-index: 1;
}

/* Larger images for bottom container */
#cpcmsbanner1_block2 .cms_content img {
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: auto;
    height: auto;
    max-width: 60%;
    max-height: 100%;
    object-fit: contain;
    object-position: right bottom;
    transition: all 0.5s ease 0s;
    -webkit-transition: all 0.5s ease 0s;
    -moz-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
    -ms-transition: all 0.5s ease 0s;
    z-index: 1;
}

/* Mobile: smaller image */
@media (max-width: 767px) {
    #cpcmsbanner1_block2 .cms_content img {
        max-width: 40%;
    }
}

#cpcmsbanner1 .cms_content:hover img {
    transform: scale(1.06);
    -webkit-transform: scale(1.06);
    -ms-transform: scale(1.06);
    -o-transform: scale(1.06);
    -moz-transform: scale(1.06);
}

/* CMS block overlay */
#cpcmsbanner1 .first-content.main-content .cms_content .cms-block,
#cpcmsbanner1 .second-content.main-content .cms_content .cms-block {
    position: absolute;
    top: 10%;
    left: 30px;
    bottom: auto;
    text-align: left;
    right: auto;
    width: auto;
    font-size: 20px;
    font-weight: 300;
    text-transform: uppercase;
    z-index: 2;
}

#cpcmsbanner1_block2 .cms_content .cms-block {
    position: absolute;
    top: 10%;
    left: 30px;
    bottom: auto;
    text-align: left;
    right: auto;
    width: auto;
    font-size: 20px;
    font-weight: 300;
    text-transform: uppercase;
    z-index: 2;
}

/* Offer text styling - force black for all containers */
#cpcmsbanner1 .cms-block .offer-text1 {
    font-size: 14px;
    font-weight: 400;
    text-transform: uppercase;
    margin-bottom: 5px;
    line-height: 1.2;
    color: #222222 !important;
}

#cpcmsbanner1 .cms-block .offer-text1 a {
    color: #222222 !important;
    text-decoration: none;
    transition: color 0.3s ease;
}

#cpcmsbanner1 .cms-block .offer-text1 a:hover {
    color: #fad505 !important;
}

#cpcmsbanner1 .cms-block .offer-text2 {
    font-size: 18px;
    font-weight: 600;
    text-transform: none;
    margin-bottom: 5px;
    line-height: 1.3;
    color: #222222 !important;
}

#cpcmsbanner1 .cms-block .offer-text2 a {
    color: #222222 !important;
    text-decoration: none;
    transition: color 0.3s ease;
}

#cpcmsbanner1 .cms-block .offer-text2 a:hover {
    color: #fad505 !important;
}

#cpcmsbanner1 .cms-block .offer-text3 {
    font-size: 16px;
    text-transform: capitalize;
    margin-bottom: 5px;
    color: #222222 !important;
}

#cpcmsbanner1 .cms-block .offer-text3 a {
    color: #222222 !important;
}

#cpcmsbanner1 .cms-block .offer-text4 {
    font-weight: 600;
    font-size: 30px;
    margin: 7px 0px 10px 0px;
    line-height: 1.2;
    color: #222222 !important;
}

#cpcmsbanner1 .cms-block .offer-text4 a {
    color: #222222 !important;
    text-decoration: none;
}

/* Offer button styling */
#cpcmsbanner1 .cms-block .offer-button {
    margin-top: 10px;
}

#cpcmsbanner1 .cms-block .offer-button a {
    font-size: 14px;
    font-weight: 500;
    text-transform: capitalize;
    color: #222222 !important;
    text-decoration: none;
    display: inline-block;
    padding: 8px 16px;
    background-color: #fad505;
    border-radius: 5px;
    transition: all 0.3s ease;
}

#cpcmsbanner1_block2 .cms-block .offer-button a {
    color: #222222 !important;
    background-color: #fad505;
}

#cpcmsbanner1 .cms-block .offer-button a:hover {
    background-color: #222222;
    color: #fad505 !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

#cpcmsbanner1_block2 .cms-block .offer-button a:hover {
    background-color: #222222;
    color: #fad505 !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Button arrow icon */
#cpcmsbanner1 .cms-block .offer-button a::after {
    content: "\f105";
    display: inline-block;
    background-color: #222222;
    font-family: 'FontAwesome';
    font-weight: 600;
    line-height: 15px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    color: #fad505;
    text-align: center;
    margin-inline-start: 6px;
    padding-left: 2px;
    transition: all 0.3s ease;
}

#cpcmsbanner1 .cms-block .offer-button a:hover::after {
    background-color: #fad505;
    color: #222222;
}

#cpcmsbanner1_block2 .cms-block .offer-button a::after {
    background-color: #222222;
    color: #fad505;
}

#cpcmsbanner1_block2 .cms-block .offer-button a:hover::after {
    background-color: #fad505;
    color: #222222;
}

/* Responsive adjustments */
@media (max-width: 1199px) {
    #cpcmsbanner1 {
        width: 100%;
        float: none;
        padding-inline-start: 0;
        margin-top: 20px;
    }
    
    #cpcmsbanner1_block1 {
        flex-direction: column;
        gap: 20px;
    }
    
    #cpcmsbanner1_block1 .first-content.main-content,
    #cpcmsbanner1_block1 .second-content.main-content {
        width: 100%;
    }
}

@media (max-width: 767px) {
    #cpcmsbanner1 .cms-block .offer-text4 {
        font-size: 24px;
    }
    
    #cpcmsbanner1 .first-content.main-content .cms_content .cms-block,
    #cpcmsbanner1 .second-content.main-content .cms_content .cms-block,
    #cpcmsbanner1_block2 .cms_content .cms-block {
        left: 15px;
        font-size: 16px;
    }
    
    #cpcmsbanner1 .cms-block .offer-text2 {
        font-size: 16px;
    }
}

/* Styling voor "Aanbieding!" label - geel met zwarte tekst */
.product-flag.on-sale {
    background-color: #fad505 !important;
    color: #222222 !important;
}

/* Fix discount flag tekst - maak tekst kleiner zodat het binnen de cirkel past */
.special-products .product-flag.discount,
.product-carousel .product-flag.discount,
#special-carousel .product-flag.discount,
.product-miniature1 .product-flag.discount {
    font-size: 16px !important;
    line-height: 1.2 !important;
    padding: 0 !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    letter-spacing: -0.3px !important;
    max-width: 100%;
    box-sizing: border-box;
}

/* Mobile: nog kleiner */
@media (max-width: 767px) {
    .special-products .product-flag.discount,
    .product-carousel .product-flag.discount,
    #special-carousel .product-flag.discount,
    .product-miniature1 .product-flag.discount {
        font-size: 12px !important;
        line-height: 1.1 !important;
        letter-spacing: -0.3px !important;
    }
    
    /* Optioneel: maak de cirkel iets kleiner op mobile als nodig */
    .special-products .product-flag.discount {
        width: 55px !important;
        height: 55px !important;
        line-height: 50px !important;
    }
}

/* ========================================
   LEFT COLUMN MOBILE STYLING FIXES
   ======================================== */

/* Zorg dat left-column blocks witte achtergrond hebben op mobile (consistent met desktop) */
#left-column .block,
#left-column .sidebar-latest.block,
#left-column .block-categories.block {
    background-color: #ffffff !important;
    border: 1px solid #e5e5e5;
    padding: 20px;
    margin-bottom: 15px;
}

/* Verberg menu-container in left-column (wordt alleen in header getoond) */
#left-column .container.text-xs-center.mobile {
    display: none !important;
}

/* Nieuwe producten block - altijd zichtbaar, geen collapse op mobile */
#left-column .sidebar-latest.block .block_content {
    display: block !important;
}

#left-column .sidebar-latest.block .block_content.collapse {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
}

/* Verwijder collapse iconen uit sidebar-latest title op mobile */
#left-column .sidebar-latest.block .block_title.hidden-lg-up .navbar-toggler {
    display: none !important;
}

/* Zorg dat block titles consistent zijn */
#left-column .block .block_title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e5e5e5;
}

/* Mobile: zorg dat blocks niet geel zijn */
@media (max-width: 991px) {
    #left-column .block,
    #left-column .sidebar-latest.block,
    #left-column .block-categories.block {
        background-color: #ffffff !important;
        border: 1px solid #e5e5e5;
    }
    
    /* Zorg dat product items goed gestyled zijn */
    #left-column .sidebar-latest.block .product-item {
        border-bottom: 1px solid #e5e5e5;
        padding-bottom: 15px;
        margin-bottom: 15px;
    }
    
    #left-column .sidebar-latest.block .product-item:last-child {
        border-bottom: none;
        margin-bottom: 0;
        padding-bottom: 0;
    }
}

/* ========================================
   WRAPPER MOBILE WHITESPACE FIX
   ======================================== */

/* Verwijder min-height op mobiel om onnodige witruimte te voorkomen */
@media (max-width: 991px) {
    #wrapper {
        min-height: auto !important;
        padding-bottom: 0 !important;
    }
}

/* ========================================
   FACET FILTER - VERBERG DISCOUNTED
   ======================================== */

/* Verberg "Discounted" optie in Selections facet (alleen "Aanbieding" blijft zichtbaar) */
/* Selecteer via data-search-url attribuut van de input en verberg het parent li element */
.facet[data-type="extras"] ul li label[for*="facet_input"] input[data-search-url*="Selections-Discounted"] {
    display: none !important;
}

/* Verberg het volledige li element dat Discounted bevat - gebruik JavaScript-compatibele selector */
.facet[data-type="extras"] ul li:has(input[data-search-url*="Selections-Discounted"]) {
    display: none !important;
}

/* Fallback voor browsers zonder :has() support - verberg via link href */
.facet[data-type="extras"] ul li a[href*="Selections-Discounted"] {
    display: none !important;
}

.facet[data-type="extras"] ul li:has(a[href*="Selections-Discounted"]) {
    display: none !important;
}

/* Extra fallback: verberg label dat Discounted link bevat */
.facet[data-type="extras"] ul li label:has(a[href*="Selections-Discounted"]) {
    display: none !important;
}

/* ========================================
   CART MODAL CUSTOM STYLING
   ======================================== */

/* Delivery info alert in modal */
#blockcart-modal .delivery-info-modal {
    margin-bottom: 25px;
}

#blockcart-modal .delivery-info-modal .alert-info {
    background-color: #e8f4f8;
    border-left: 4px solid #17a2b8;
    padding: 15px;
    border-radius: 5px;
}

#blockcart-modal .delivery-info-modal p {
    margin-bottom: 10px;
    line-height: 1.6;
    font-size: 12px;
}

#blockcart-modal .delivery-info-modal p:last-child {
    margin-bottom: 0;
}

/* Price overview section in modal */
#blockcart-modal .price-overview-modal {
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 2px solid #e5e5e5;
}

/* Cart summary section in modal */
#blockcart-modal .cart-summary-modal {
    margin-top: 25px;
}

/* Fix prijs en button layout in modal - naast elkaar op desktop */
#blockcart-modal .price-overview-modal .price-and-button-wrapper {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
}

#blockcart-modal .price-overview-modal .price-value {
    flex-shrink: 0 !important;
    margin: 0 !important;
}

#blockcart-modal .price-overview-modal .view-button-container {
    flex-shrink: 0 !important;
    margin: 0 !important;
}

/* Make "Bekijken" buttons green in modal */
#blockcart-modal .price-overview-modal .btn-bekijken,
#blockcart-modal .price-overview-modal a[href*="bol.com"],
#blockcart-modal .price-overview-modal a[href*="nedgame"],
#blockcart-modal .price-overview-modal a[href*="gamemania"],
#blockcart-modal .price-overview-modal a[class*="bekijken"],
#blockcart-modal .price-overview-modal .view-button {
    background-color: #28a745 !important;
    color: #ffffff !important;
    border-color: #28a745 !important;
}

#blockcart-modal .price-overview-modal .btn-bekijken:hover,
#blockcart-modal .price-overview-modal a[href*="bol.com"]:hover,
#blockcart-modal .price-overview-modal a[href*="nedgame"]:hover,
#blockcart-modal .price-overview-modal a[href*="gamemania"]:hover,
#blockcart-modal .price-overview-modal a[class*="bekijken"]:hover,
#blockcart-modal .price-overview-modal .view-button:hover {
    background-color: #218838 !important;
    color: #ffffff !important;
    border-color: #1e7e34 !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* Zorg dat modal breed genoeg is voor de extra content */
#blockcart-modal .modal-dialog {
    max-width: 900px;
}

@media (max-width: 991px) {
    #blockcart-modal .modal-dialog {
        max-width: 100%;
        margin: 10px;
    }
}

/* ========================================
   CART MODAL MOBILE OPTIMIZATION
   ======================================== */

/* Mobile: kleinere modal title */
@media (max-width: 480px) {
    #blockcart-modal .modal-title {
        font-size: 11px;
        line-height: 1.3;
    }
}

/* Mobile: cart summary responsive maken */
@media (max-width: 767px) {
    /* Stack product info en cart totals */
    #blockcart-modal .cart-summary-modal .divide-right {
        border-right: none;
        border-bottom: 1px solid #e5e5e5;
        margin-bottom: 20px;
        padding-bottom: 20px;
    }
    
    /* Plaatje en info naast elkaar op mobiel */
    #blockcart-modal .cart-summary-modal .divide-right .row {
        display: flex;
        flex-wrap: nowrap;
        align-items: flex-start;
        gap: 15px;
    }
    
    /* Plaatje links - vaste breedte */
    #blockcart-modal .cart-summary-modal .divide-right .row .col-md-6:first-child {
        flex: 0 0 100px;
        width: 100px;
        max-width: 100px;
    }
    
    /* Info rechts - neemt resterende ruimte */
    #blockcart-modal .cart-summary-modal .divide-right .row .col-md-6:last-child {
        flex: 1;
        width: auto;
        max-width: none;
    }
    
    /* Kleinere product afbeelding */
    #blockcart-modal .cart-summary-modal .product-image {
        max-width: 100%;
        width: 100%;
        height: auto;
    }
    
    /* Product info compacter */
    #blockcart-modal .cart-summary-modal .product-name {
        font-size: 14px;
        margin-bottom: 5px;
        line-height: 1.3;
    }
    
    /* Cart content tekst kleiner */
    #blockcart-modal .cart-content p {
        font-size: 13px;
        margin-bottom: 8px;
    }
    
    #blockcart-modal .cart-content .product-total {
        font-size: 14px;
        font-weight: 600;
    }
    
    /* Knoppen kleiner en onder elkaar */
    #blockcart-modal .cart-content-btn {
        display: flex;
        flex-direction: column;
        gap: 10px;
        margin-top: 15px;
    }
    
    #blockcart-modal .cart-content-btn .btn {
        width: 100%;
        font-size: 13px;
        padding: 10px 15px;
    }
    
    /* Delivery info tekst nog kleiner op mobile */
    #blockcart-modal .delivery-info-modal p {
        font-size: 11px;
    }
    
    /* Price overview compacter op mobiel */
    #blockcart-modal .price-overview-modal {
        margin-bottom: 15px;
        padding-bottom: 15px;
    }
}

/* Verwijder float: left van col-md-12 op desktop */
@media (min-width: 768px) {
    .col-md-12 {
        float: none;
        width: 100%;
    }
}

/* Verwijder border van product image in modal */
#blockcart-modal .product-image {
    border: none !important;
}