/* ============================
   Sticky Header
============================ */
.site-header {
    position: sticky;
    top: 0;
    z-index: 999;
    background: rgba(245, 244, 242, 0.8);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    height: 60px;
    display: flex;
    justify-content: center;

}

/* Inner container */
.header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 0 36px;
    box-sizing: border-box;
}

/* ============================
   Left: Logo + Menu
============================ */
.header-left {
    display: flex;
    align-items: center;
    gap: 121px;
    width: fit-content;
    height: 100%;
}

/* Site logo */
.site-logo img {
    max-height: 40px;
}

/* Primary Menu */
.primary-menu {
    height: 100%;

}

.primary-menu .menu {
    display: flex;
    gap: 30px;
    list-style: none;
    margin: 0;
    padding: 0;
    height: 100%;

}

.primary-menu .menu-item {
    height: 100%;
}

/* Menu links styling */
.primary-menu .menu-item > a {
    height: 100%;
    color: #000;
    text-decoration: none;
    font-family: 'Roobert', sans-serif;
    font-weight: 600 !important;
    font-size: 14px;
    transition: color 0.3s;

    display: flex;
    align-items: center;
}

.primary-menu .menu-item > a:hover {
    color: #333;
}

/* Menu item with children: chevron */
.primary-menu .menu-item-has-children > a::after {
    content: '▾';
    margin-left: 6px;
    font-size: 10px;
    vertical-align: middle;
}

/* ============================
   Submenu items styling
============================ */
.primary-menu .menu-item-has-children {
    position: relative;
}

/* Submenu container */
.primary-menu .sub-menu {
    /*display: none;*/
    position: absolute;
    top: 100%;
    z-index: 999;
    /*padding: 8px 0;*/
    min-width: 250px;
    width: 100%;

    max-height: 0;
    /*overflow: hidden;*/
    opacity: 0;
    transform: translateY(-10px);
    transition: max-height 0.3s ease,
    opacity 0.3s ease,
    transform 0.3s ease;
    will-change: max-height, opacity, transform;
}

/* Full-width background overlay */
.primary-menu .menu-item-has-children > .sub-menu::before {
    content: "";
    position: absolute;
    left: -1000%;
    width: 3000%;
    height: 115%;
    background-color: rgba(245, 244, 242, 0.8);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(30px);
    z-index: -1;
    pointer-events: none;

}

/* Toon submenu bij hover */
.primary-menu .menu-item-has-children:hover > .sub-menu {
    /*display: block;*/

    max-height: 500px; /* large enough to fit all items */
    opacity: 1;
    transform: translateY(0);
}

/* Submenu items individueel */
.primary-menu .sub-menu .menu-item {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 250px;
    border-radius: 18px;
    background: var(--white, #FFF);
    color: var(--black, #151515);
    font-family: "Roobert", sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 650;
    line-height: 14px;
    letter-spacing: 0.28px;
    padding: 8px 16px;
    margin-bottom: 4px;
}

/* Submenu links */
.primary-menu .sub-menu .menu-item > a {
    color: var(--black, #151515);
    text-decoration: none;
    display: flex;
    width: 100%;
}

/*!* Hover effect submenu item *!*/
/*.primary-menu .sub-menu .menu-item:hover {*/
/*    background-color: rgba(245, 244, 242, 0.5);*/
/*}*/


/* ============================
   Right: Header buttons
============================ */
.header-right {
    display: flex;
    gap: 12px;
    align-items: center;
    width: fit-content;
    flex-shrink: 0;
}

/* Buttons styling */
.header-right .btn,
.header-right a.btn {
    font-weight: 600 !important;
    font-size: 12px;
    line-height: 12px;
    padding: 8px 20px;
    border-radius: 30px;
    white-space: nowrap;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

#mobile-menu-toggle {
    display: none;
    border: none;
    align-items: center;
}

/* ============================
   Mobile Responsive
============================ */
@media screen and (max-width: 600px) {
    .header-inner {
        flex-direction: row;
        align-items: stretch;
        padding: 16px 24px;
    }

    .primary-menu .sub-menu {
        display: none !important;
    }


    .site-header .primary-menu, .site-header .btn-secondary {
        display: none;
    }

    .header-left {
        gap: 20px;
    }

    .primary-menu .menu {
        flex-direction: column;
        gap: 12px;
    }

    .primary-menu .menu-item-has-children > a::after {
        float: right;
        margin-left: 0;
    }

    .header-right .btn {
        padding: 8px 12px;
        font-size: 11px;
        width: 106px;
        height: 32px;
    }

    #mobile-menu-toggle {
        display: flex;
        height: 30px;
    }
}



/* ============================
    HEADER LANDING
============================ */


	@media(max-width:767px){
				/* 	header shop button for mobile view  */
	.ast-builder-html-element {
    width: 100px!important;
}

	}
@media(max-width:600px){
    .minimal-header .back-link {
		left: 7px !important;
		font-size: 12px;
	}
	.minimal-header .logo img {
		max-height: 20px !important;
	}
	.minimal-header {
    flex-direction: column;
    column-gap: 10px;
    row-gap: 10px;
}

}
.minimal-header {
    background: #EFF2EB;
    border-bottom: 0px solid #C7CEBB;
    padding: 30px 22px;
    display: flex
;
    align-items: center;
    position: relative;
}
.minimal-header.product-header {
	background-color: #EFF2EB;
}
	.minimal-header .back-link {
		position: absolute;
		left: 32px;
		display: flex;
		align-items: center;
		color: #888976;
		font-size: 14px;
		text-decoration: underline;
		line-height: 1;
		gap: 6px;
	}

	.minimal-header .back-link svg {
		width: 14px;
		height: 14px;
		stroke: #888976;
	}

	.minimal-header .logo img {
		max-height: 23px;
		width: auto;
		display: block;
	}
	
	.logo-lext {
    font-size: 16px;
    font-family: 'Roobert', TRIAL;
    line-height: 24px;
    color: #151515;
    width: 100%;
    text-align: center;
		padding:0px 20px;
}


/* ============================
    HEADER MINIMAL
============================ */



	@media(max-width:767px){
				/* 	header shop button for mobile view  */
	.ast-builder-html-element {
    width: 100px!important;
}

	}
@media(max-width:600px){
    .minimal-header .back-link {
		left: 7px !important;
		font-size: 12px;
	}
	.minimal-header .logo img {
		max-height: 20px !important;
	}

}

	.minimal-header {
		background: #EFF2EB;
		border-bottom: 1px solid #C7CEBB;
		padding: 30px 22px;
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
	}
.minimal-header.product-header {
	background-color: #EFF2EB;
}
	.minimal-header .back-link {
		position: absolute;
		left: 32px;
		display: flex;
		align-items: center;
		color: #888976;
		font-size: 14px;
		text-decoration: underline;
		line-height: 1;
		gap: 6px;
	}

	.minimal-header .back-link svg {
		width: 14px;
		height: 14px;
		stroke: #888976;
	}

	.minimal-header .logo img {
		max-height: 28px;
		width: auto;
		display: block;
	}
