/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/
/* Basis container grid */
/* Formulier als 2-koloms grid */
/* 2-koloms grid: links is formulier velden, rechts is bericht */
/* Maak de wrapper grid met 2 kolommen */

/* Add your custom styles here */
.builder-block {
  background-color: var(--bg-color);
}

.bg-image {
    background-image: var(--bg-image);
	background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.footer-row > .e-con-inner > div.elementor-element {
    width: unset !important;
}

.header-search input {
	padding: 10px 18px !important;
}

.header-search .e-search-submit {
	position: absolute;
    top: 50%;
    right: 18px;
    transform: translate(0, -50%);
}

.header-contact .elementor-button {
	height: 52px !important;
}

.elementor-widget-text-editor ul {
    list-style: none;     /* standaard bullets uit */
    margin: 0;            /* marge weghalen */
    padding: 0;           /* standaard inspringing weghalen */
	margin-top: 20px;
	margin-bottom: 25px;
	
	br {
		display: none;
	}
}

.elementor-widget-text-editor ul li {
    position: relative;
    padding-left: 26px;   /* ruimte voor je icoon */
    margin-bottom: 0;  /* wat ruimte tussen de regels */
	margin-bottom: 15px !important;
}

.elementor-widget-text-editor ul li::before {
    content: "";
    background: url('/wp-content/uploads/2025/11/Check-rond.svg') no-repeat center center;
    background-size: 16px 16px; /* formaat icoon aanpassen */
    width: 16px;
    height: 16px;
    position: absolute;
    left: 0;
    top: 3px; /* uitlijning met de tekst */
}

/*.header-menu-desktop .sub-menu {
	min-width: 200px !important;
	margin-left: -40% !important;
}*/

.header-menu-desktop .sub-menu .elementor-sub-item {
	border-left: 0;
}

/* header cart button */
.header-cart .elementor-menu-cart__toggle .elementor-button, .header-account .elementor-button {
	background: var(--e-global-color-primary);
	padding: 15px;
	width: 52px;
	height: 52px;
}
.header-cart .elementor-menu-cart__toggle .elementor-button svg, .header-account .elementor-button svg, .cart-btn .elementor-button svg {
	stroke: var(--e-global-color-4a542cd);
	transition: all .3s;
}

.header-cart .elementor-menu-cart__toggle .elementor-button:hover {
	background: var(--e-global-color-secondary);
}
.header-cart .elementor-menu-cart__toggle .elementor-button:hover svg, .header-account .elementor-button:hover svg, .cart-btn .elementor-button:hover svg {
	stroke: var(--e-global-color-primary);
}

.elementor-nav-menu .sub-arrow {
	padding-left: 5px !important;
}

/* header mobiel menu */
.header-mobile-menu .elementor-nav-menu--dropdown .elementor-nav-menu  {
	margin-left: 15px;
	margin-right: 15px;
	background: var(--e-global-color-96eb793);
	border-radius: 10px;
	overflow: hidden;
	
	.sub-menu {
		background: var(--e-global-color-96eb793) !important;
	}
	
	a {
		margin-left: 33px;
		border-left: 0;
	}
	
	.has-submenu {
		justify-content: space-between;
		padding: 20px;
		font-weight: 700 !important;
		
		&.highlighted {
			padding-bottom: 10px;
		}
		
		&:before {
			content: '';
			width: 22px;
			height: 20px;
			margin-left: -33px;
			opacity: 1 !important;
			background-repeat: no-repeat;
			background-size: contain;
			background-position: center;
		}
	}
	
	.menu-item-602 a:before {
		background-image: url('/wp-content/uploads/2026/02/Sector.svg');
	}
	
	.menu-item-611 a:before {
		background-image: url('/wp-content/uploads/2026/02/Over-ons.svg');
	}
	
	.menu-item-1774 a:before {
		background-image: url('/wp-content/uploads/2026/02/Overig.svg');
	}
}

/* home link hover effect */
.home-link-cont:hover .home-link {
    transform: translateX(10px);
}

.home-link-cont:hover .link-red .elementor-icon-box-title {
    color: #E02A27;
}

.home-link-cont:hover .link-blue .elementor-icon-box-title {
    color: #2E8CCB;
}

.home-link-cont:hover .link-green .elementor-icon-box-title {
    color: #057A54;
}

.home-hero {
    position: relative;
	overflow: hidden;
}

.home-hero .bewise-hero-hover-images {
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
}

.home-hero .bewise-hero-hover-images img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	transition: opacity .4s ease;
}

.home-hero .bewise-hero-hover-images img.is-active {
	opacity: 1;
}

.home-hero > div.elementor-widget-image {
	height: 10px;
}

/* banner builder */
.elementor-widget-breadcrumbs a {
	text-decoration: none !important;
}

.elementor-widget-breadcrumbs a::after {
	content: '';
    display: inline-block;
    width: 6px;
    height: 8px;
    margin: 1px 7px;
    background-image: url(/wp-content/uploads/2026/02/buts-breadcrumb-arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.breadcrumb_last {
	font-weight: 700;
}

/* product loop title */
.product-loop-title a {
	text-decoration: inherit;
	font-weight: inherit;
}

/* product loop price */
.product-loop-price del {
	font-size: 14px;
	color: var(--e-global-color-393319c);
}

.product-loop-price ins {
	text-decoration: none;
}

/* background image loop */
.loop-bg-image {
	height: 100%;
}

/* footer nieuwsbrief form */
.mailpoet_text {
	color: var(--e-global-color-4a542cd) !important;
    border: 1px solid #FFF !important;
    padding: 17px 12px !important;
    height: unset !important;
    font-size: 15px !important;
	line-height: 20px !important;
	background: unset !important;
	
	&::placeholder {
		color: var(--e-global-color-4a542cd) !important;
	}
}

.footer-submit .mailpoet_submit {
	background: var(--e-global-color-4a542cd) !important;
    border-radius: 10px !important;
    padding: 17px 20px !important;
    color: var(--e-global-color-primary) !important;
	font-weight: 700 !important;
	font-size: 15px;
	border: 1px solid var(--e-global-color-4a542cd) !important;
	
	&:hover {
		color: var(--e-global-color-4a542cd) !important;
		background: var(--e-global-color-primary) !important;
	}
}

@media (max-width: 768px) {
	.footer-submit .mailpoet_submit {
		margin-top: 15px !important;
	}
}

/* mobiel footer dropdown icons */
#footer-mail .e-n-accordion-item-title-header::before, #footer-phone .e-n-accordion-item-title-header::before, #footer-office .e-n-accordion-item-title-header::before, #footer-whatsapp .e-n-accordion-item-title-header::before {
	content: '';
    display: flex;
    width: 19px;
	margin-right: 10px;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

#footer-mail .e-n-accordion-item-title-header::before {
	background-image: url("/wp-content/uploads/2025/11/buts-mail.svg");
}
#footer-phone .e-n-accordion-item-title-header::before {
	background-image: url("/wp-content/uploads/2025/11/buts-mobiel-1.svg");
}
#footer-office .e-n-accordion-item-title-header::before {
	background-image: url("/wp-content/uploads/2025/11/buts-shop.svg");
}
#footer-whatsapp .e-n-accordion-item-title-header::before {
	background-image: url("/wp-content/uploads/2025/11/buts-whatsapp.svg");
}

.mobiel-slider .elementor-icon-list-items {
  display: flex !important;
  flex-wrap: nowrap !important;    /* niet laten afbreken */
  overflow-x: auto !important;     /* horizontaal scrollen indien nodig */
  gap: 5px !important;            /* ruimte tussen de items */
  -ms-overflow-style: none !important;  /* IE en Edge */
  scrollbar-width: none !important;  
}

.mobiel-slider  .elementor-icon-list-item {
  white-space: nowrap !important;  /* tekst mag niet breken */
}

.mobiel-slider .elementor-icon-list-items::-webkit-scrollbar {
	display: none !important; 
}

/* category switcher style */
.category-links {
	display: flex;
	flex-flow: row wrap;
    gap: 30px 105px;
}

.category-links .category-link {	
    text-decoration: none;
    color: var(--e-global-color-primary);
	flex-basis: 41%;
}

.category-link .category-icon, .category-link .link-title, .icon-list-item .lijst-icoon {
	display: inline-block;
	transition: all 0.3s;
	border-radius: 0;
}

.category-link .category-icon {
	margin-bottom: 2px;
}

.category-link .link-title {
	margin-left: 10px;
	margin-bottom: 8px;
	width: 80%;
}

.category-link:hover .category-icon {
	margin-left: 15px;
}

.category-link:hover .link-title {
	color: var(--hover-color);
}

/* category switcher images */
.switcher-image-container { 
	position: relative; 
}
.switcher-images-hover {
	position: absolute;
	inset: 0;
	z-index: 5;
	pointer-events: none;
}
.switcher-image-container .bewise-hover-images img.bewise-hover-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	transition: opacity .3s;
	will-change: opacity;
	border-radius: 30px;
}
.switcher-image-container .bewise-hover-images img.bewise-hover-image.is-active {
	opacity: 1;
}

/* page switcher style */
.page-links {
	display: flex;
	flex-flow: column nowrap;
	gap: 40px;
}

.page-links .link-link {
	display: block;
	margin-top: 20px;
}

/* merken builder sectie */
.e-gallery-item {
	height: 81px;
	max-width: 220px;
	background-color: #FFF;
}

.e-gallery-image {
	background-size: contain !important;
    background-repeat: no-repeat;
    background-position: center !important;
    background-color: #FFF;
	padding-bottom: unset !important;
	height: 100%;
}

/* merken gallerij pagina */
.brand-page-gallery .e-gallery-item {
	max-width: unset !important;
	display: block !important;
}

/* icoon lijst */
.icoon-lijst {
	display: flex;
	gap: 40px;
}

.icon-list-item {
	flex-basis: 33%;
}

.icoon-lijst span {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
	gap: 12px;
}

.lijst-icoon {
	width: 26px !important;
	height: 26px !important;
}

.icon-list-title {
	font-size: 15px;
	font-weight: 700;
	margin: 0;
}

/* contact page background */
.contact-bg {
	height: 345%;
}

/* inkoopformulier */
.gform_fields {
	column-gap: 10px !important;
	row-gap: 10px !important;
}

.gform-body input, .gform-body select, .gform-body textarea {
	border-color: #D7D7D7 !important;
	padding: 16px 12px !important;
	height: unset !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	line-height: 20px !important;
	font-size: 15px !important;
	background: #FFFFFF !important;
}

.gform-body .gfield_label, .gform-body .gform-field-label {	
	line-height: 20px !important;
	font-size: 15px !important;
}

.gform-body input[type=checkbox], .gform-body input[type=radio] {
	padding: 0 !important;
	width: 13px !important;
	height: 13px !important;
}

.gform-body input[type=radio] {
	border-radius: 20px !important;
}

.gform-body input[type=checkbox] {
	border-radius: 3px !important;
}

.gform-body .gchoice, .gform-body .ginput_container_consent {
	display: inline-flex;
	align-items: center;
}

.gform-body .gform-field-label--type-inline {
	margin-left: 0px !important;
}

.gform-body .gfield_required {
	display: none !important;
}

#gform_3 .gform-footer {
	justify-content: center;
}

.gform-footer input[type=submit] {
	color: var(--e-global-color-text) !important;
    background: var(--e-global-color-secondary) !important;
    border: 0 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 20px !important;
    padding: 17px 20px !important;
	box-shadow: none !important;
	border-radius: 10px !important;
	
	&:hover {
		color: #FFFFFF !important;
		background: var(--e-global-color-primary) !important;
	}
}

#input_4_4, #input_5_11 {
	height: 150px !important;
}

.gform-body input[type=file] {
	padding: 0 !important;
}

input[type=file]::file-selector-button {
	padding: 8px 14px !important;
	background: var(--e-global-color-accent) !important;
	color: var(--e-global-color-primary) !important;
	font-weight: 700 !important;
	margin-top: 1px;
	margin-bottom: -1px;
	border-radius: 0 !important;
	border: 0 !important;
}

#input_6_11 {
	height: 100px !important;
}

/* product image slider */
.product-image-slider img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.product-image-slider .elementor-swiper-button-prev {
	right: 32px;
    left: unset !important;
    bottom: -50px;
    top: unset !important;
}

.product-image-slider .elementor-swiper-button-next {
	bottom: -50px;
    top: unset !important;
    right: 0px !important;
}

/* product page table */
.product-extra-attributes tr {
	border-radius: 10px;
	
	&:nth-child(odd) {
		background: #F7F7F7;
	}
}

.product-extra-attributes tr td {
	border: 0;
	background: unset !important;
	padding: 15px 30px;
	
	&.attr-label {
		font-size: 16px;
		font-weight: 700;
		border-radius: 10px 0 0 10px;
	}
	
	&.attr-value {
		border-radius: 0 10px 10px 0;
		font-size: 15px;
	}
}

/* product loop item */
.stock-status-container {
	display: flex; 
	gap: 5px;
	font-size: 13px;
	font-weight: 500;
	
	svg {
		width: 10px;
		flex-shrink: 0;
        height: 12px;
        margin-top: 4px;
	}
}

.status-instock {
	color: var( --e-global-color-8a9e312 );
	fill:var( --e-global-color-8a9e312 ); 
}
.status-backorder {
	color: var( --e-global-color-secondary );
	fill: var( --e-global-color-secondary );
}
.status-outofstock {
	color: var( --e-global-color-secondary );
	fill: var( --e-global-color-secondary );
}

/* Desktop ≥1024px */
@media (min-width: 1024px) {
	.product-loop:has(.swiper-wrapper > .e-loop-item:nth-child(-n+6):last-child) .elementor-swiper-button-prev,
	.product-loop:has(.swiper-wrapper > .e-loop-item:nth-child(-n+6):last-child) .elementor-swiper-button-next,
	.review-loop:has(.swiper-wrapper > .e-loop-item:nth-child(-n+4):last-child) .elementor-swiper-button-prev,
	.review-loop:has(.swiper-wrapper > .e-loop-item:nth-child(-n+4):last-child) .elementor-swiper-button-next {
		display: none;
	}
}

/* Product loop: tablet + mobile ≤1023px */
@media (max-width: 1023px) {
	.product-loop:has(.swiper-wrapper > .e-loop-item:nth-child(-n+3):last-child) .elementor-swiper-button-prev,
	.product-loop:has(.swiper-wrapper > .e-loop-item:nth-child(-n+3):last-child) .elementor-swiper-button-next {
		display: none;
	}
}

/* Review loop: tablet only 767px–1023px */
@media (min-width: 767px) and (max-width: 1023px) {
	.review-loop:has(.swiper-wrapper > .e-loop-item:nth-child(-n+3):last-child) .elementor-swiper-button-prev,
	.review-loop:has(.swiper-wrapper > .e-loop-item:nth-child(-n+3):last-child) .elementor-swiper-button-next {
		display: none;
	}
}

/* Review loop: mobile ≤766px */
@media (max-width: 766px) {
	.review-loop:has(.swiper-wrapper > .e-loop-item:nth-child(-n+2):last-child) .elementor-swiper-button-prev,
	.review-loop:has(.swiper-wrapper > .e-loop-item:nth-child(-n+2):last-child) .elementor-swiper-button-next {
		display: none;
	}
}

/* cookiemelding */
.cn-close-icon {
	display: none
}

.cookie-notice-container {
	background-color: #FFFFFF;
    color: var(--e-global-color-text) !important;
    font-size: 15px !important;
    padding: 14px 25px !important;
    position: absolute;
    z-index: 9999 !important;
    box-shadow: 0 -1px 10px 0 rgb(172 171 171 / 30%);
    width: 30% !important;
    left: 15px;
    bottom: 15px !important;
    border-radius: 10px !important;
	text-align: left !important;
}

#cookie-notice .cn-button {
	background-color: var(--e-global-color-secondary) !important;
	font-family: "Open sans", Sans-serif !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	line-height: 20px !important;
	color: var(--e-global-color-text) !important;
	border-radius: 10px !important;
	padding: 10px 16px !important;
	font-size: 15px !important;
	margin-top: 10px !important;
	
	&:hover {
		color: #FFFFFF !important;
		background-color: var(--e-global-color-text) !important;
	}
}

#cn-accept-cookie {
	margin-left: 0 !important
}
#cn-notice-text, #cn-notice-buttons a {
	font-size: 15px !important;
    font-family:"Open Sans", Sans-serif !important;
}
#cn-notice-text a {
	 color: var(--e-global-color-text) !important;
	 text-decoration: underline;
}

@media (max-width: 768px) {
	.space-between .elementor-inline-items {
    	justify-content: space-between;
	}
	
	.product-loop-price h3 {	
		display: flex;
		flex-flow: column nowrap;
	}
	
	.builder-section .category-links .category-link {
		flex-basis: 100%;
	}
	
	.icoon-lijst {
		flex-direction: column;
		gap: 20px;
	}
	
	.category-links .category-link {
		flex-basis: 50%;
		flex-grow: 1;
	}
	
	.category-links {
		gap: 15px;
	}
	
	.gallery-brands .e-gallery-item:last-of-type {
		display: none;
	}
}