:root {

	--header-padding-mobile        : 0;
	--header-padding-tablet        : 0;
	--header-padding-laptop        : 0;
	--header-padding-desktop       : 0;
	--header-padding-sm-laptop     : 0;

	--header-row-padding-mobile    : 0.4em 5%;
	--header-row-padding-tablet    : 0.4em 5%;
	--header-row-padding-laptop    : 0.4em 5%;
	--header-row-padding-desktop   : 0.6em 5%;
	--header-row-padding-sm-laptop : 0.4em 5%;

}

/*Widget parents rules*/
div.elementor:has(.site-header) > div.elementor-element {
	padding : 0 !important;
}

div.elementor:has(.site-header) > div.elementor-element > div {
	padding   : 0 !important;
	max-width : 100% !important;
}

div.elementor-location-header > div.elementor-element,
div.elementor-location-header > div.elementor-element > div {
	padding   : 0 !important;
	max-width : 100% !important;
}

/*Widget parents rules*/


body.menu-opened {
	height   : 100%;
	overflow : hidden;
	margin   : 0 !important;
}

.site-header {
	top              : 0;
	left             : 0;
	right            : 0;
	z-index          : 999;
	display          : flex;
	/*position         : sticky;*/
	align-items      : center;
	flex-direction   : column;
	justify-content  : space-between;
	transition       : background-color 0.35s ease-in-out;
	background-color : white;
}

.site-header.scrolled {
	backdrop-filter         : blur(10px);
	/*box-shadow: 0 0 15px rgb(0 0 0 / 10%);*/
	background-color        : rgba(255, 255, 255);
	-webkit-backdrop-filter : blur(10px); /* Safari support */
	/*position                : fixed;*/
}

.site-header::after {
	top        : 0;
	left       : 0;
	right      : 0;
	content    : "";
	opacity    : 0;
	height     : 100vh;
	z-index    : -100;
	position   : fixed;
	visibility : hidden;
	transform  : translateX(-100%);
	background : rgba(56, 75, 99, .3);
	transition : all 0.3s ease-in-out;
}

body.menu-opened .site-header::after {
	opacity    : 1;
	z-index    : -1;
	visibility : visible;
	transform  : translateX(0);
}

.site-header__row.gap {
	gap             : 2em;
	width           : 100%;
	display         : flex;
	flex-direction  : row;
	justify-content : space-between;
	padding-bottom  : 10px;
	padding-top     : 10px;
	align-items     : center;
}

.site-header__row {
	width           : 100%;
	display         : flex;
	flex-direction  : row;
	justify-content : space-between;
}

.header-row__column {
	display     : flex;
	align-items : center;
}

.header-row__column--rows {
	justify-content : center;
	flex-direction  : column;
	align-items     : flex-start;
}

.header-row__column-row {
	width           : 100%;
	display         : flex;
	align-items     : center;
	justify-content : space-between;
}

.header-row__column.column-logo .header-logo {
	width       : 100px;
	height      : 43px;
	display     : flex;
	position    : relative;
	align-items : center;
	transition  : all 0.5s ease-in-out;
}

.header-row__column.column-logo .header-logo img {
	height     : auto;
	max-width  : 100%;
	position   : absolute;
	transition : all 0.5s ease-in-out;
}

/*.header-row__column.column-logo .header-logo .header-logo--c {*/
/*	opacity : 0;*/
/*}*/

.site-header.scrolled .header-row__column.column-logo .header-logo .header-logo--c {
	opacity : 1;
}

.site-header.scrolled .header-row__column.column-logo .header-logo .header-logo--w {
	opacity : 0;
}


/*	burger */
.header-burger {
	height      : 24px;
	width       : 36px;
	cursor      : pointer;
	position    : relative;
	transform   : scale(1);
	display     : flex;
	align-items : center;
}

.header-burger__line {
	width                     : 100%;
	height                    : 2px;
	animation                 : none;
	position                  : absolute;
	transform                 : rotate(0deg);
	animation-duration        : 0.65s;
	background-color          : var(--e-global-color-primary);
	animation-timing-function : cubic-bezier(0.77, 0, 0.175, 1);
}

body.menu-opened .header-burger__line {
	background-color : var(--e-global-color-primary) !important;
}

.header-burger__line:nth-child(1) {
	top                 : 0;
	animation-name      : topreverse;
	animation-fill-mode : forwards;
}

.header-burger__line:nth-child(2) {
	bottom         : 10px;
	width          : 80%;
	animation-name : bottomreverse;
}

.header-burger__line:nth-child(3) {
	bottom         : 0;
	animation-name : bottomreverse;
}

.header-burger.is-active > .header-burger__line {
	animation-duration        : 0.65s;
	animation-fill-mode       : forwards;
	animation-timing-function : cubic-bezier(0.77, 0, 0.175, 1);
}

.header-burger.is-active .header-burger__line:nth-child(1) {
	top            : 45.8333333333%;
	animation-name : top;
}

.header-burger.is-active .header-burger__line:nth-child(2) {
	visibility : hidden;
}

.header-burger.is-active .header-burger__line:nth-child(3) {
	bottom         : 45.8333333333%;
	animation-name : bottom;
}


@keyframes top {
	0% {
		top : 0;
	}
	60% {
		top       : 45.8333333333%;
		transform : rotate(0deg);
	}
	100% {
		transform : rotate(45deg);
	}
}

@keyframes bottom {
	0% {
		bottom : 0;
	}
	60% {
		bottom    : 45.8333333333%;
		transform : rotate(0deg);
	}
	100% {
		transform : rotate(-45deg);
	}
}

@keyframes topreverse {
	0% {
		transform : rotate(45deg);
		top       : 45.8333333333%;
	}
	60% {
		transform : rotate(0deg);
		top       : 45.8333333333%;
	}
	100% {
		top : 0;
	}
}

@keyframes bottomreverse {
	0% {
		transform : rotate(-45deg);
		bottom    : 45.8333333333%;
	}
	60% {
		transform : rotate(0deg);
		bottom    : 45.8333333333%;
	}
	100% {
		bottom : 0;
	}
}

/*	burger */

.padding-hide {
	justify-content : center;
}

.header-row__column.column-menu {
	flex-basis : unset !important;
}


/*RESPONSIVE*/

/*phone*/

@media (max-width : 767px) {

	.hide-mobile {
		display : none !important;
	}

	.site-header {
		padding : var(--header-padding-mobile);
	}

	.site-menu__primary li a,
	.site-header__row {
		padding : var(--header-row-padding-mobile);
		gap     : 0;
	}

	.header-row__column.column-logo {
		min-width : 180px;
	}

	.header-row__column.column-logo .header-logo {
		width : 100%;
	}

	.padding-hide {
		padding : 0;
	}

	.product-content__row--categories {
		margin-top    : 86px;
		margin-bottom : 12px;
	}
}

@media (max-width : 360px) {
	.header-row__column.column-logo {
		min-width : 140px;
	}
}

/*tablet*/
@media (min-width : 768px) and (max-width : 1024px) {

	.hide-tablet {
		display : none !important;
	}

	.site-header {
		padding : var(--header-padding-tablet);
	}

	.site-menu__primary li a,
	.site-header__row {
		padding : var(--header-row-padding-tablet);
		gap     : 0;
	}

	.header-row__column.column-logo .header-logo {
		height     : unset;
		min-height : 58px;
	}

	.padding-hide {
		padding : 0;
	}

	.product-content__row--categories {
		margin-top    : 104px;
		margin-bottom : 32px;
	}

}

/*mobile and tablet*/
@media (max-width : 1024px) {

	.site-header::before {
		z-index : 9999;
	}

	.site-header {
		position         : fixed;
	}

	.header-row__column {
		/*flex : 1 1 0;*/
	}

	.header-row__column.column-search-bar {
		flex : none;
	}

	.header-row__column.column-shop,
	.header-row__column.column-logo,
	.header-row__column.column-burger {
		z-index : 999;
	}

	.header-row__column.column-logo {
		justify-content : center;
		min-width       : 80px;
	}

	.header-row__column--rows {
		justify-content : flex-start;
	}

	.header-row__column.column-menu {
		top              : 0;
		left             : -5px;
		gap              : 1em;
		opacity          : 0;
		z-index          : -1;
		width            : 105vw;
		height           : 100vh;
		display          : flex;
		position         : fixed;
		visibility       : hidden;
		flex-direction   : column;
		align-items      : flex-start;
		align-content    : flex-start;
		transition       : 0.5s ease all;
		background-color : #ffffff;
		backdrop-filter  : blur(10px);
		clip-path        : circle(0px at 0 0px);
	}

	.header-row__column.column-menu.is-opened {
		opacity    : 1;
		z-index    : 100;
		visibility : visible;
		clip-path  : circle(100%);
	}

	.header-row__column.column-menu .column-menu_content > * {
		width : fit-content;
	}

	.header-row__column.column-menu > .column-menu_content {
		margin-left  : auto;
		margin-right : auto;
		position     : relative;
	}

	.column-logo img {
		height    : auto;
		max-width : 100%;
	}

	.header-row__column-row {
		gap            : 1em;
		align-items    : flex-start;
		flex-direction : column;
	}

	.site-menu__primary {
		width : 100%;
	}


	.site-header .header-burger__line,
	body.menu-opened .header-burger__line {
		background-color : #ffffff;
	}

	body.menu-opened .header-logo .header-logo--c {
		opacity : 1 !important;
	}

	body.menu-opened .header-logo .header-logo--w {
		opacity : 0 !important;
	}

	.site-header.scrolled .header-burger__line {
		background-color : var(--e-global-color-primary);
	}

	.livraison-bandeau {
		/*width : 100% !important;*/
		display: none;
	}

	.header-row__column.column-logo .header-logo {
		justify-content : center;
	}

	.site-header__row.gap {
		padding-bottom : 20px;
		padding-top    : 20px;
	}
}


/*desktop*/
@media (min-width : 1025px) {

	.product-content__row--categories {
		/*margin-top    : 164px;*/
		margin-bottom : 64px;
	}

	.hide-desktop {
		display : none !important;
	}

	.site-header {
		padding : var(--header-padding-desktop);
	}

	.site-header__row {
		padding : var(--header-row-padding-desktop);
	}

	.padding-hide {
		/*padding-top : 0 !important;*/
	}

	.padding-hide {
		padding : 0;
	}

	.header-row__column {
		/*flex : 1 1 0;*/
	}

	.header-row__column-row {
		gap            : 4em;
		padding-left   : 2%;
		padding-right  : 2%;
		flex-direction : row;
	}

	.header-row__column.column-menu {
		flex-basis : 75%;
	}

	.line-menu_header.scrolled {
		position         : fixed !important;
		background-color : white;
		z-index          : 10;
		top: 0
	}

	.line-menu_header {
		position         : relative !important;
		background-color : white;
		z-index          : 10;
		top: 0 !important;
	}

	.livraison-bandeau {
		width : 100%;
	}
	.site-header__row.gap.scrolled {
		margin-bottom:80px;
	}
}

/*laptop 1*/
@media (min-width : 1025px) and (max-width : 1439px) {

	.site-header {
		padding : var(--header-padding-sm-laptop);
	}

	.site-header__row {
		padding : var(--header-row-padding-sm-laptop);
	}

	.header-row__column.column-logo .header-logo {
		max-width : 200px;
	}
}

/*laptop 2*/
@media (min-width : 1440px) and (max-width : 1700px) {

	.site-header {
		padding : var(--header-padding-laptop);
	}

	.site-header__row {
		padding : var(--header-row-padding-laptop);
	}

}

/*RESPONSIVE*/
