/*
 Theme Name: Champagne Lenoble
 Theme URI: https://www.elegantthemes.com/gallery/divi/
 Description: Divi Child Theme
 Author: Elegant Themes
 Author URI: https://www.elegantthemes.com
 Template: Divi
 Version: 1.2.0
*/


/* =Theme customization starts here
------------------------------------------------------- */


/*
 Light : 300
medium : 400
semi-bold: 600
*/
@font-face { font-family: "silk-serif"; font-display: swap;  src: url("https://champagne-lenoble.com/wp-content/uploads/et-fonts/SilkSerif-Medium.ttf") format("truetype"); }
:root {
	--darkBrown: #452E2B;
	--brown: #5B3731;
	--lightBrown: #755653;
	--placeholder: #9B817F;
	--lightCream: #FAF8F2;
	--cream: #F5F2E6;
	--yellow: #F9F4DF;
	--gap: 10px;
	--gridColCount: 16;
	--gridGapWidth: 2.6315789474%; /* 40px */
	--total-gap: calc(var(--gap) * (var(--gridColCount) - 1));
	--column-width: calc((100% - var(--total-gap)) / var(--gridColCount));
	--gridColWidth:calc((100% - var(--total-gap)) / var(--gridColCount));  /*calc(calc(100% - calc(15 * var(--gridGapWidth)) / var(--gridColCount))); /* 3.7828947368% */
}
footer p {
	font-size: inherit;
}
.grecaptcha-badge {
	display: none !important;
	opacity: 0 !important;
	visibility: hidden !important;
}
img {
	pointer-events:none;
}
body {
	font-family: "p22-underground", sans-serif;
	font-size: 12px;
	color: var(--lightBrown);
	font-weight: 300;
}
.checkbox {
    appearance: none !important;
    -webkit-appearance: none !important;
}
.checkbox::after {
    content: '✓';
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 1px solid var(--lightBrown);
    pointer-events: none;
    color: transparent;
    text-align: center;
}
.checkbox:checked::after {
    background: var(--lightBrown);
    color: var(--cream);
}
.checkbox.--light:checked::after {
	background: transparent;
	color: var(--lightBrown);
}
.caption {
	font-size: 14px;
	line-height: 1.4 !important;
	font-weight: 600
	;
}
.custom-button,
.button {
    font-size: 12px !important;
    padding: 16px 30px !important;
    text-transform: uppercase !important;
    border: none !important;
    transition: all ease-out 0.15s !important;
	line-height:1;
	text-align: center;
	font-weight: 600 !important;
	background: radial-gradient(135.27% 135.27% at 117.56% -17.52%, #9E7E77 0%, #684945 100%) !important;
	color: var(--lightCream) !important;
}
.--overlapping-text p,
.--overlapping-container {
	padding: calc(2 * var(--gap)) calc(2 * var(--gap));
	transform: translate3d(calc(var(--gap) * -2), calc(var(--gap) * -2), 0);
	background: rgba(255,255,255,0.5);
	backdrop-filter: blur(10px);
}
.--overlapping-text p {
	width: fit-content;
}
.--primary {
	background: radial-gradient(135.27% 135.27% at 117.56% -17.52%, #9E7E77 0%, #684945 100%) !important;
	color: var(--lightCream) !important;
}
.custom-button:hover,
.--primary:hover {
	background: radial-gradient(135.27% 135.27% at 117.56% -17.52%, var(--brown) 0%, var(--brown) 100%) !important;
}
.--secondary:hover {
	background: var(--brown) !important;
	color: var(--lightCream);
}
.--secondary {
	background: var(--placeholder) !important;
	color: var(--lightCream) !important;
}
.--third {
	background: var(--lightCream) !important;
	color: var(--lightBrown) !important;
}
.--third:hover {
	background: var(--cream) !important;
}

.custom-button.--with-icon {
	position: relative;
	line-height: 1.5;
}
.custom-button.--with-icon:hover {
	cursor: pointer;
}

.custom-button.--with-icon span {
	position: relative;
    transition: all 0.2s;
    margin: 0 auto;
	display: block;
    width: fit-content;
	line-height: 1;
	transition: all ease-out 0.15s;
}

.custom-button.--with-icon span::before {
	content: '' !important;
	width: 13px;
	height: 9px;
	display: inline-block;
	border: 1px solid var(--lightCream);
	border-bottom: none;
	display: inline-block;
	position: absolute;
	top: 50%;
	transform: translate3d(-100%, calc(-50% - 1px), 0);
	z-index: 1;
	left: 0;
	opacity: 0;
	transition: all 0.2s;
}

.custom-button.--with-icon:hover span {
	transform: translate3d(11px, 0 ,0);
}

.custom-button.--with-icon:hover span::before {
	opacity: 1;
	transform: translate3d(-150%, calc(-50% - 1px), 0);
}

.custom-button:hover,
.button:hover {
	cursor: pointer;
}
.custom-button[disabled],
.button[disabled] {
	pointer-events: none;
	opacity: .5;
}
.custom-button[disabled]:hover,
.button[disabled]:hover {
	cursor: not-allowed;
}
.et-menu-nav {
	float: none !important;
}
#et-main-area {
	padding-top: 90px;
	transition: all ease-in-out 0.3s;
}
#et-main-area:has(.--hero-section) {
	padding-top: 0 !important;
}
h1, h2, h3, h4, h5, h6 {
	padding-bottom: 0;
	color: var(--lightBrown);
}
h1, .h1 {
	font-size: 30px;
	font-size: clamp(30px, calc(100vw / 12), 50px);
	line-height: 1.1;
	font-family: "silk-serif", serif;
	text-transform: uppercase;
	letter-spacing: 2px;
}
h2, .h2 {
	font-size: 20px;
	font-size: clamp(20px, calc(100vw / 18), 40px);
	line-height: 1.1;
	font-family: "silk-serif", serif;
	text-transform: uppercase;
	letter-spacing: 2px;
}
h3, .h3, .animated-section__subtitle p {
	font-size: clamp(16px, calc(100vw / 22.5), 25px);
	line-height: 1.2;
	font-family: "p22-underground", sans-serif !important;
	text-transform: uppercase;
	font-weight: 600;
	letter-spacing: 0.8px;
}
.animated-section__subtitle p {
	font-weight: 400;
}
p, body, .p {
	font-size: clamp(12px, calc(100vw / 30), 18px);
	line-height: 1.5;
}
footer .et_pb_menu__wrap {
	display: block !important;
}
footer .wpcf7 form.invalid .wpcf7-response-output {
	display: none;
}
footer .wpcf7 form.sent .wpcf7-response-output {
	position: absolute;
    top: 64px;
    background: var(--lightCream);
    border: none;
    font-size: 10px;
    height: 43px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 99%;
	max-width: 200px;
    margin: 0;
    padding: 0;
}
footer .wpcf7 .wpcf7-not-valid-tip + .wpcf7-not-valid-tip {
	display: none !important;
}
@media screen and (min-width: 768px) {
	footer .--layout-grid {
		display: grid !important;
		grid-template-columns: repeat(var(--gridColCount), 1fr);
		row-gap: 40px; /* 40px */
		column-gap: var(--gridGapWidth); /* 40px */
		height: 100%;
	}
}
@media screen and (max-width: 767px) {
	.footer-menu-toggle {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 50%;
		min-width: 200px;
		margin: 0 auto;
	}
	.footer-menu-toggle .et_pb_text_inner {
		margin: 0 auto;
	}
	.footer-menu-toggle::after {
		content: '';
		width: 10px;
		height: 10px;
		border-bottom: 1px solid var(--cream);
		border-left: 1px solid var(--cream);
		transform: rotate(-45deg) translate3d(0,-5px,0);
	}
	.footer-menu {
		max-height: 0;
		opacity: 0;
		margin: 0;
		overflow: hidden;
		transition: all ease-in-out 0.3s;
	}
	.footer-menu.--opened {
		max-height: 600px;
		opacity: 1;
	}
	.footer-menu .et-menu-nav {
		display: block !important;
		width: 100%;
	}
	.footer-menu .menu-item,
	.footer-menu .et_pb_text_inner {
		display: block !important;
		text-align: center;
	}
	.footer-menu .et_pb_text_inner {
		margin-bottom: calc(var(--gap) * 2);
	}
}
footer .et_pb_column:has(.footer-menu) {
	width: 100% !important;
}

@media screen and (min-width: 768px) {
	#et-main-area {
		padding-top: 171px;
	}
	body:has(header.--scrolled) #et-main-area {
		padding-top: 90px;
	}
	header.--scrolled .et_pb_row_0_tb_header,
	.mobile-menu header {
		padding: calc(var(--gap) * 3) calc(var(--gap) * 4) !important;
	}
}

@media screen and (min-width: 998px) {
	.--copyright {
		position: absolute;
		right: 0;
		top: 0;
	}
}

.gradient-bg {
	background: radial-gradient(135.27% 135.27% at 117.56% -17.52%, #9E7E77 0%, #684945 100%);
}

.woocommerce #respond input#submit,
.woocommerce-page #respond input#submit,
.woocommerce #content input.button,
.woocommerce-page #content input.button,
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper  .woocommerce-info {
	background: radial-gradient(135.27% 135.27% at 117.56% -17.52%, #9E7E77 0%, #684945 100%) !important;
}

.woocommerce-notices-wrapper .woocommerce-message .button {
	background: var(--lightCream) !important;
	color: var(--lightBrown) !important;
}

.--layout-grid > .et_pb_column {
	width: 100%;
}
.--centered {
	align-items: center;
}
.footer-menu {
	background: transparent !important;
	text-transform: uppercase;
}
.footer-menu li {
	margin: 0 !important;
	padding: 0;
}
.footer-menu a {
	color: var(--cream);
	font-size: 11px;
	line-height: 2;
	margin: 0;
	padding: 0 !important;
	margin-bottom: 20px;
}
.footer-menu.et_pb_menu .et_pb_menu__menu,.lwp-hide-mobile-menu.et_pb_fullwidth_menu .et_pb_menu__menu {
    display: flex!important;
}

.footer-menu .et_mobile_nav_menu {
    display: none;
}

.footer-menu .et_pb_menu__menu > nav > ul > li {
    width:100%
}


/* PRODUCT PAGE  */

.product_title {
	color: var(--lightBrown);
}
.product_title .product_caption {
	display: block;
	margin-bottom: calc(2 * var(--gap));
}
.product_title .animated-section__title {
	display: block;
}
.product_title .product-detail {
	margin-top: var(--gap);
	display: block;
}
.woocommerce-product-gallery div {
	width: 100% !important;
}
.lenoble-product .price {
	font-weight: 600;
	font-size: clamp(16px, calc(100vw / 22.5), 25px);
}
.product-detail-section {
	max-width: 1600px;
	margin: 0 auto calc(var(--gap) * 4) auto;
}
.product-description {
	margin: calc(4 * var(--gap)) 0;
	color: var(--lightBrown);
}
.product-detail-section select,
.custom-select,
.product-details select,
.woocommerce div.product form.cart .variations .select,
.woocommerce form .form-row select.state_select
 {
    font-size: 12px;
    background: transparent;
    border: none;
    color: var(--lightBrown);
    border-bottom: 1px solid var(--lightBrown);
    text-transform: uppercase;
    min-width: 220px;
    padding-block: calc(var(--gap) * 2) ;
    width: 100% !important;
	 border-radius: 0;
	text-align: left !important;
	padding-left: 0;
	-webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 2em;
    background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hldnJvbi1kb3duIj48cG9seWxpbmUgcG9pbnRzPSI2IDkgMTIgMTUgMTggOSI+PC9wb2x5bGluZT48L3N2Zz4=) no-repeat;
    background-size: 16px;
    -webkit-background-size: 16px;
    background-position: calc(100% - 12px) 50%;
    -webkit-background-position: calc(100% - 12px) 50%;
}
.pll-switcher-select {
	border-radius: 0;
}
.pll-switcher-select option {
	background: var(--lightBrown);
}
.product-detail-section select,
.product-details select {
	font-size: 10px;
	 padding-left: var(--gap);
	font-weight: 400;
}
.woocommerce form .form-row {
	padding: 0;
}
.woocommerce div.product form.cart .variations,
.woocommerce div.product form.cart .variations .form-row  {
	margin-bottom: 0;
}
.woocommerce-page div.product .product-detail-section form.cart div.quantity {
	width: 100%;
	margin: 0 !important;
	float: none;
}
.woocommerce-page div.product .product-detail-section .single_add_to_cart_button {
	margin-top: calc(5 * var(--gap));
	width: 100%;
	line-height: 1 !important;
    padding-block: 16px !important;
}
.woocommerce-page div.product .product-detail-section .single_add_to_cart_button:hover {
	padding-block: 16px !important;
}
.product-detail-section .quantity input[type="number"] {
	display: none;
}
.product-detail-section form.cart {
	margin-bottom: 0 !important;
}
.single-product .woocommerce-notices-wrapper {
	margin-top: calc(2 * var(--gap));
}
@media screen and (min-width: 981px) {
	.product.type-product {
		display: flex;
		flex-direction: column;
	}
	.product_title .product_caption {
		margin-bottom: calc(4 * var(--gap));
	}
	.product_title .product-detail {
		margin-top: calc(2 * var(--gap));
	}
	.product-detail-section form.cart {
		max-width: 300px;
	}
	.product-detail-section .wcpay-express-checkout-wrapper {
		max-width: 308px;
		transform: translateX(-4px);
	}
	.product.type-product .lenoble-product-info {
		margin-top: clamp(100px, 13vw, 200px);
	}
}
@media screen and (min-width: 981px) and (max-width: 1600px) {
	.--product-section {
		padding-right: calc(2 * var(--gap));
	}
}
/* FORMULAIRES */

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"]{
	background: transparent;
	border: none;
	border-bottom: 1px solid var(--lightCream);
}
.wpcf7-submit {
    font-size: 12px !important;
    padding: 16px 24px !important;
    text-transform: uppercase !important;
    border: none !important;
    transition: all ease-out 0.15s !important;
}
footer .wpcf7-submit  {
	background: var(--lightCream);
	color: var(--lightBrown);
	width: 100%;
	margin-top: 30px;
}
footer .wpcf7-form label {
	text-align: center;
}
footer .wpcf7-form label,
footer .wpcf7-form .wpcf7-form-control-wrap,
footer .wpcf7-form .wpcf7-form-control-wrap input {
	width: 100%;
	display: block;
	color: var(--lightCream);
	text-transform: uppercase;
	font-size: 10px;
}

@media screen and (min-width: 768px) {
	footer .wpcf7-submit {
		max-width: 200px;
	}
	footer .wpcf7-form label {
		text-align: left;
	}
}

.newsletter-block {
	margin-top: calc(var(--gap) * 4);
  }
  .--layout-grid.registration-form {
	display: flex;
	flex-direction: column;
	row-gap: calc(var(--gap) * 4);
  }
  @media screen and (min-width: 981px) {
	.--layout-grid.registration-form {
	  display:grid;
	  row-gap: calc(var(--gap) * 5);
	}
	.--layout-grid.registration-form .form-row {
	  grid-column: 2 / span 4;
	}
	.--layout-grid.registration-form .form-row:not(.--space):nth-child(3n+2),
	.--layout-grid.registration-form div.form-row.--actions {
	  grid-column: 7 / span 4;
	}
	.--layout-grid.registration-form .form-row:nth-child(3n+3) {
	  grid-column: 12 / span 4;
	}
	.--layout-grid.registration-form .wpcf7-response-output {
		position: absolute;
    width: 100%;
    left: 0;
    margin: 0;
    top: 0;
    text-align: center;
	}
	.--align-end {
	  align-self: flex-end;
	}
	.form-row.--space {
	  margin-top: calc(var(--gap) * 3);
	}
	.form-row.--wide {
	  grid-column: 7 / span 9 !important;
	}
	.form-row.--full {
		grid-column: 2 / span 14 !important;
	  }
  }

/* WOOCOMMERCE ACCOUNT PAGE */

.woocommerce-account #main-content,
.woocommerce-cart #main-content {
	background: var(--lightCream);
}

.woocommerce-account .container {
	width: 100%;
	padding: calc(var(--gap) * 4) calc(var(--gap) * 1.5);
}

.account-section-title {
	margin-bottom: calc(var(--gap) * 2);
	margin-top: calc(var(--gap) * 4);
}

@media screen and (min-width: 768px) {
	.account-section-title {
		margin-top: 0;
	}
	.woocommerce-account .container {
		padding: calc(var(--gap) * 6.5) calc(var(--gap) * 4) calc(var(--gap) * 18) calc(var(--gap) * 4);
	}
}

/* CART */
.uppercase {
	text-transform: uppercase;
}
.--serif {
	font-family: "silk-serif", serif;
}
.--italic {
	font-style: italic;
}

@media screen and (min-width: 768px) {
	.cart-left-column {
		grid-column: 1 / 17;
		width: 100% !important;
		margin: 0 !important;
  }

  .cart-right-column  {
    grid-column: 1 / 17; /* In a 12-column grid */
		width: 100% !important;
		margin: 0 !important;
  }
	.--title-container {
    margin-bottom: calc(var(--gap) * 4);
  }
  .--title-container > * {
    grid-column: 2/16;
  }
}

@media screen and (min-width: 976px) {
	.cart-left-column {
		grid-column: 2 / 12;
		width: 98% !important;
		transform: translate3d(-4%, 0, 0);
		margin: 0 !important;
  }

  .cart-right-column  {
    grid-column: 12 / 16; /* In a 12-column grid */
		width: 123% !important;
		transform: translate3d(-9%, 0, 0);
		margin: 0 !important;
		position: sticky;
		top: calc(var(--gap) * 4);
		height: fit-content;
  }
}

.wc_payment_methods .theme--stripe {
	margin: calc(var(--gap) * 4) 0 !important;
	display: block;
	background: var(--yellow);
	padding: var(--gap);
	line-height: 1;
}
.wc_payment_methods .theme--stripe .form-row {
	margin-bottom: 0 !important;
}
.shipping-method .yellow-block {
	margin: calc(var(--gap) * 4) 0;
	display: flex;
	background: var(--yellow);
	padding: var(--gap);
	line-height: 1;
	align-items: center;
}
.yellow-block .form-row {
	margin-bottom: 0 !important;
}

.woocommerce-checkout #payment div.payment_box {
	margin: 0;
}
.form-row.woocommerce-SavedPaymentMethods-saveNew {
	flex-direction: row;
	align-items: baseline;
}
.cart-total-row {
  display: flex;
  justify-content: space-between;
  font-weight: 600;
  margin: var(--gap) 0;
}
.cart-total-row.total {
  margin-top: calc(var(--gap) * 3);
  padding-top: calc(var(--gap) * 3);
  border-top: 1px solid var(--lightBrown);
}

.cart-total-row .total-value {
  font-variant-numeric: tabular-nums;
}

/* FORMS */

.form-row {
	display: flex;
	flex-direction: column;
	position: relative;
}

.form-row input:not([type="checkbox"], [type="submit"]),
.form-row select,
.form-row textarea,
.woocommerce form .form-row input.input {
	width: 100%;
	color: var(--lightBrown);
	padding: calc(var(--gap) * .5) calc(var(--gap) * .5)  calc(var(--gap) * 2)  calc(var(--gap) * .5) ;
	border:none;
	border-bottom: 1px solid var(--lightBrown);
	margin: 0;
	font-size: 18px;
	background: transparent;
}
.form-row select {
	padding-left: 0;
}
.form-row select option {
	padding-inline: 0;
}

.form-row .wpcf7-list-item {
	margin: 0
	;
}
.form-row .custom-button {
	width: 100%;
}
.form-row .checkbox-label,
.form-row .wpcf7-acceptance label {
	display: flex !important;;
}

.form-row .checkbox-label input,
.form-row .wpcf7-acceptance label input {
	margin-right: calc(var(--gap) * 2);
	margin-left: 0;
}

.form-row input::placeholder {
	color: var(----placeholder) !important;
}

.form-row .mention,
.form-row .wpcf7-acceptance label {
	font-size: 14px;
}

.lenoble-checkout-wrapper .address-form .form-row {
margin-bottom: calc(var(--gap) * 4) !important;
}

.select2.select2-container {
	display: none !important;
}
.woocommerce form .form-row .woocommerce-input-wrapper .description {
	background: transparent;
	font-size: 10px;
	font-weight: 400;
	padding: 0;
	color: var(--lightBrown);
	text-transform: uppercase;
	margin-top: var(--gap);
}
.woocommerce form .form-row .woocommerce-input-wrapper .description::before {
	display: none;
}
#shipping_phone-description {
	display: block !important;
}

/* BReadcrumb */

.lenoble-account-breadcrumb {
  font-size: 10px;
  text-transform: uppercase;
  color: var(--lightBrown);
  margin-bottom: calc(var(--gap) * 2);
  display: flex;
  white-space: nowrap;
  overflow: auto;
}

.lenoble-account-breadcrumb__separator {
  margin: 0 calc(var(--gap) * 0.5);
}

.lenoble-account-breadcrumb__return {
  margin-left: auto;
  cursor: pointer;
}

.lenoble-account-breadcrumb__current {
  margin-right: calc(var(--gap) * 4);
}

@media screen and (min-width: 768px) {
	.lenoble-account-breadcrumb {
		overflow: unset;
	}
}

.title-container .lenoble-account-breadcrumb{
	margin-top: calc(var(--gap) * 2);
}

#main-content .wpcf7 form.sent .wpcf7-response-output {
	background: radial-gradient(135.27% 135.27% at 117.56% -17.52%, #9E7E77 0%, #684945 100%);
	border: none;
	color: var(--lightCream);
}
/********** ANIMATIONS *+*********/


.animated-section {
  height: 100dvh;
  position: relative;
  overflow: hidden;
  min-height: fit-content;
}

@-moz-document url-prefix() {
	/* Firefox-specific CSS here */
	.animated-section:not(.--hero-section) {
	  height: max-content;
	  min-height: 100dvh;
		display: flex;
		flex-direction: column;
	}
	.animated-section:not(.--hero-section) > div:not(.lenoble-products-track) {
		flex-grow: 1;
	}
}

.animated-section:has(.lenoble-products-slider) {
	display: flex;
}

.lenoble-slider-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	z-index: 1;
	cursor: pointer;
	webkit-appearance: none;
	appearance: none;
	background: none;
	border: none;
  }
  .lenoble-slider-arrow::after {
	content: '';
	display: block;
	width: calc(var(--gap) * 2);
	height: calc(var(--gap) * 2);
	border-style: solid;
	border-width: 2px 2px 0 0;
	border-color: var(--brown);
  }
  .lenoble-slider-arrow--left {
	left: var(--gap);
  }
  .lenoble-slider-arrow--right {
	right: var(--gap);
  }
  .lenoble-slider-arrow--left::after {
	transform: rotate(-135deg);
  }
  .lenoble-slider-arrow--right::after {
	transform: rotate(45deg);
  }

html.js .animated-section__image,
html.js .animated-section .lenoble-product-slide .lenoble-product-image
 {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 981px) {
	html.js .animated-section .lenoble-product-slide .lenoble-product-image
	 {
	 	max-height: 574px;
	}	
}


html.js .animated-section__image img,
html.js .animated-section .lenoble-product-slide .lenoble-product-image img {
	opacity: 0;
	transform: scale(1.2);
	transform-origin: center;
	transition: opacity 0.6s ease-out, transform 1.2s ease-out;
}
html.js .--hero-section h1 {
	color: transparent;
}

html.js .--hero-section h1 .line-content {
	color: var(--lightCream);
}

html.js .animated-section__image::before,
html.js .--hero-section::before,
html.js .animated-section .lenoble-product-slide .lenoble-product-image::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  transform: scaleY(1);
  transform-origin: top;
  transition: transform 0.6s ease-out;
	z-index: 1;
}

html.js .animated-section__image.reveal img,
html.js .animated-section .lenoble-product-slide.reveal .lenoble-product-image img {
  opacity: 1;
  transform: scale(1);
}

html.js .animated-section__image.reveal::before,
html.js .--hero-section.reveal::before,
html.js .animated-section .lenoble-product-slide.reveal .lenoble-product-image::before  {
  transform: scaleY(0);
}

html.js .line-mask {
  overflow: hidden;
  display: block;
}

html.js .line-content,
html.js .product_title .product_caption,
html.js .product_title  .product-detail {
  transform: translateY(100%);
  opacity: 0;
  transition: opacity 0.3s ease-out 0.05s, transform 0.3s ease-out;
  display: block;
}

html.js .line-content.reveal,
html.js .product_title .product_caption.reveal,
html.js .product_title  .product-detail.reveal {
  transform: translateY(0);
	opacity: 1;
}

html.js .animated-section__text,
html.js .lenoble-product .price,
html.js .lenoble-product form > .variations,
html.js .lenoble-product form > .quantity  {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}

html.js .animated-section__text.reveal,
html.js .lenoble-product .price.reveal,
html.js .lenoble-product form > .variations.reveal,
html.js .lenoble-product form > .quantity.reveal {
  opacity: 1;
  transform: translateY(0);
}

.--hero-section {
	--frame-width: calc(var(--gap) * 1.5);
	height: calc(100dvh - var(--frame-width));
	margin: 0 var(--frame-width) var(--frame-width) var(--frame-width) !important;
	position: relative;
}
.--hero-section:not(.--no-padding) {
	background-position: top 90px center;
}
@media screen and (min-width: 768px) {
	.--hero-section:not(.--no-padding) {
	background-position: top 170px center;
	}
}

html.js .animated-section__subtitle {
	transform: translateY(calc(var(--gap) * -2));
	opacity: 0;
	transition: opacity 0.3s ease-out, transform 0.3s ease-out;
}

html.js .animated-section__subtitle.reveal {
	transform: translateY(0);
	opacity: 1;
}

html.js .animated-section .lenoble-product-slide .lenoble-product-title,
html.js .animated-section .lenoble-product-slide .lenoble-product-observation,
html.js .animated-section .lenoble-product-slide .custom-button,
html.js .animated-section .animated-section__button,
html.js .lenoble-product .single_add_to_cart_button {
	opacity: 0;
	transform: translate3d(0, calc(var(--gap) * 2), 0);
	transition: opacity 0.3s ease-out, transform 0.3s ease-out;
}

html.js .animated-section .lenoble-product-slide.reveal .lenoble-product-title,
html.js .animated-section .lenoble-product-slide.reveal .lenoble-product-observation,
html.js .animated-section .lenoble-product-slide.reveal .custom-button,
html.js .animated-section .animated-section__button.reveal,
html.js .lenoble-product .single_add_to_cart_button.reveal {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

html.js .animated-section .lenoble-product-slide .lenoble-product-title {
	transition-delay: 0.15s, 0.15s;
}

html.js .animated-section .lenoble-product-slide .lenoble-product-observation {
	transition-delay: 0.3s, 0.3s;

}
html.js .animated-section .lenoble-product-slide .custom-button {
	transition-delay: 0.45s, 0.45s;
}

@media (max-width: 980px) {
  .animated-section:not(.--hero-section) {
    height: auto;
  }
}

@media (min-width: 981px) {
	.--hero-section {
		--frame-width: calc(var(--gap) * 4) !important;
		transition: all ease-in-out 0.3s;
	}

	.animated-section:has(.products-grid) {
		min-height: fit-content;
	}
}

/*
*
¨LAYOUT GRID */



@media screen and (max-width: 980px) {
	#main-content .et_pb_section .et_pb_row {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	.--mobile-grid {
		display: grid;
		grid-template-columns: repeat(6, 1fr);
		gap: var(--gap);
		overflow: visible;
	}
	.--mobile-grid .et_pb_image_wrap,
	.--mobile-grid .et_pb_image_wrap img,
	.--full-width .et_pb_image_wrap img,
	.--full-width .et_pb_image_wrap {
		width: 100% !important;
	}
}
@media screen and (min-width: 981px) {
	#main-content .et_pb_section .et_pb_row {
		padding-left: 40px !important;
		padding-right: 40px !important;
	}
	.--layout-grid {
		display: grid !important;
		grid-template-columns: repeat(var(--gridColCount), 1fr);
		row-gap: 40px; /* 40px */
		column-gap: var(--gridGapWidth); /* 40px */
		height: 100%;
	}
	.--layout-grid > .et_pb_column {
		width: auto;
		margin: 0;
	}
	.--layout-grid .et_pb_image_wrap,
	.--layout-grid .et_pb_image_wrap img {
		width: 100% !important;
	}
	.--layout-grid .--first-half {
		grid-column: 1 / span 8;
	}
	.--layout-grid .--second-half {
		grid-column: 9 / span 8;
	}
}

	/* HOMEPAGE LAYOUT */

	.animated-section__subtitle {
		font-weight: 600;
	}
	.home-sec-2 .--layout-grid {
		grid-template-rows: 1fr;
    row-gap: 0;
	}


	.home-sec-4 .--mobile-grid {
		row-gap: calc(calc(1000vw / 414 * 10));
	}
	.home-sec-4 .--mobile-grid .animated-section__image:first-of-type {
		grid-column: 3 / 7;
		grid-row: 1/2;
		width: calc(100% + var(--gap) * 1.5);
	}
	.home-sec-4 .--mobile-grid .animated-section__image:nth-of-type(2) {
		grid-column: 1  / 4;
		grid-row: 1/ 2;
		width: 100%;
		align-self: flex-end;
		transform: translate3d(0, 50%, 0);
	}

	.home-sec-4 .--mobile-grid .animated-section__image:nth-of-type(3) {
		grid-column: 1  / 7;
		width: 100%;
	}

	.home-sec-5 .--mobile-grid .animated-section__image {
		grid-column: 1  / 7;
		width: 100%;
		margin-bottom: calc(var(--gap) * 1.5) !important;
	}

	.home-sec-2 .--layout-grid {
		grid-template-rows: 1fr;
    row-gap: 0;
	}
	.home-sec-2 .--second-half {
		display: grid;
	}

	.home-sec-2 .--big-image {
		grid-column: 3 / 7;
		margin-right: 0;
		width: calc(100% + 15px);
		grid-row: 1 / 2;
	}

	.home-sec-2 .--small-image {
		grid-column: 1 / 3;
		margin-right: 0;
		width: calc(100% + 40px);
		z-index: 1;
		grid-row: 1 / 2;
	}

	.home-sec-3 .--layout-grid{
    grid-template-rows: 1fr;
    row-gap: 0;
	}


	@media screen and (min-width: 981px) {
		:root {
			--marginUnit: calc(1000dvh / 1080); /* 10px margin on a 1080px height screen */
		}
			.home-sec-2 .animated-section__title {
		max-width: 85%;
	}
		.home-sec-2 .--first-column {
			grid-column: 2 / 9;
			position: relative;
			z-index: 1;
		}
		.home-sec-2 .--second-half {
			display: grid;
			grid-template-columns: subgrid;
			position: relative;
			z-index: 0;
			gap: inherit; /* try to inherit parent gap */
		}
		.home-sec-2 .--big-image {
			height: calc(100dvh - 100px);
			grid-column: 1 / 9;
			width: calc(100% + 40px);
			grid-row: 1 / 2;
		}
		.home-sec-2 .--small-image {
			grid-column: 1 / 4;
			align-self: end;
			transform: translate3d(-50%, 0, 0);
		}
		.home-sec-3 .--first-half {
			align-self: flex-end;
			grid-column: 1 / 9;
			margin-top: calc(17 * var(--marginUnit));
			position: relative;
			z-index: 1;
			align-self: flex-end;
		}
		.home-sec-3 .--second-half {
			display: grid;
			grid-template-columns: subgrid;
			height: fit-content;
			align-self: flex-start;
			gap: inherit; /* try to inherit parent gap */
		}
		.home-sec-3 .--second-half > * {
			grid-column: 1 / 9;
			margin: 0;
		}
		.home-sec-4 .--mobile-grid,
		.home-sec-4 .--content-grid {
			grid-row: 1/2;
			grid-column: 1/17;
			display: grid;
			grid-template-columns: subgrid;
			gap: inherit; /* try to inherit parent gap */
		}
		.home-sec-4 .--content-grid {
			height: fit-content;
		}
		.home-sec-4 .--content-grid > * {
			grid-column: 2 / 9;
		}
		.home-sec-4 .--mobile-grid {
			row-gap: 0;
			pointer-events: none;
		}
		.home-sec-4 .--mobile-grid .animated-section__image {
			grid-row: 1/2 !important;
		}
		.home-sec-4 .--mobile-grid .animated-section__image:first-of-type {
			grid-column: 10 / 17;
			width: calc(100% + var(--gap) * 4);
			margin-top: 0 !important;
		}
		.home-sec-4 .--mobile-grid .animated-section__image:nth-of-type(2) {
			grid-column: 8 / 12;
			transform: none;
		}
		.home-sec-4 .--content-grid .animated-section__image {
			grid-column: 2 / 7;
			height: auto;
			grid-row: unset;
		}
		.home-sec-5 .--layout-grid {
			align-items: center;
		}
		.home-sec-5 .--mobile-grid  {
			grid-column: 1 / 8;
			height: calc(100% - var(--gap) * 8);
			grid-row: 1/2;
		}
		.home-sec-5 .--content-grid  {
			grid-column: 8 / 17;;
		}

		.home-sec-5 .--mobile-grid::before {
				content: '';
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background: white;
				transform: scaleY(1);
				transform-origin: top;
				transition: transform 0.6s ease-out;
				z-index: 1;
		}
		.home-sec-5 .--mobile-grid:has(.reveal)::before {
			transform: scaleY(0);
		}
		.savoir-faire-section-3 {
			padding-top: calc(10 * var(--gap)) !important;
			height: auto;
		}
	}

	@media screen and (min-width: 981px) {
		.home-sec-3 .--second-half > * {
			grid-column: 3 / 9;
		}
		.home-sec-3 .animated-section__subtitle {
			margin-top: calc(10 * var(--marginUnit));
			margin-bottom: calc(4 * var(--marginUnit)) !important;
		}
		.home-sec-3 .animated-section__title {
			margin-bottom: calc(4 * var(--marginUnit)) !important;
		}
		.home-sec-3 .animated-section__text {
			margin-bottom: calc(6.5 * var(--marginUnit)) !important;
		}
		.home-sec-3 .--first-half {
			grid-column: 2 / 9;
		}
		.home-sec-5 .--mobile-grid  {
			grid-column: 1 / 9;
		}
		.home-sec-5 .--content-grid  {
			grid-column: 10 / 17;;
		}
	}

	/* MAISON LAYOUT */
	.maison-section-1 .--small-image {
		grid-column: 1 / 4;
        margin-right: 0;
        width: 100%;
        grid-row: 1 / 2;
        z-index: 1;
        align-self: flex-end;
        transform: translate3d(0, 50%, 0);
	}
	.maison-section-1 .--big-image {
		grid-column: 3 / 7;
		margin-right: 0;
		width: 100%;
	height: fit-content;
		grid-row: 1 / 2;
	}

	.maison-section-1 .--mobile-grid {
		display: grid;
	}
	.maison-section-1 .--second-half {
		margin-bottom: 20vw !important;
	}
	.maison-section-3 .--second-half {
		row-gap: calc(var(--gap) * 2);
	}
	.maison-section-3 .--second-half .animated-section__image:first-of-type {
		grid-column: 1 / 4;
		grid-row: 2/3;
		width: 100%;
		margin: 0;
	}
	.maison-section-3 .--second-half .animated-section__image:nth-of-type(2) {
		grid-column: 3 / 7;
		grid-row: 1/2;
		width: 100%;
		margin: 0;
	}

	.maison-section-3 .--second-half .animated-section__text,
	.savoir-faire-section-3 .--second-half .animated-section__text:first-of-type {
		grid-column: 1 / 7;
		grid-row: 3 / 4;
	}

	.savoir-faire-section-3 .--second-half .animated-section__text:last-of-type {
		grid-column: 1 / 7;
		grid-row: 4 / 5;
	}
	.maison-section-4 .--second-half {
		align-items: center;
	}
	.maison-section-4 .animated-section__image .et_pb_image_wrap,
	.maison-section-4 .animated-section__image img {
		width: 100% !important;
	}
	.maison-section-4 .--second-half .animated-section__image:first-of-type {
		grid-column: 1 / 5;
		grid-row: 1/2;
		margin: 0;
	}
	.maison-section-4 .--second-half .animated-section__image:nth-of-type(2) {
		grid-column: 4 / 7;
		grid-row: 1/2;
		margin: 0;
	}

	@media screen and (min-width: 981px) {

		.maison-section-1 .--small-image {
			grid-column: 1 / 6;
			align-self: end;
			width: 100%;
			z-index: 1;
			transform: translate3d(calc(-50% - 15%),0,0)
		}
		.maison-section-1 .--big-image {
			height: calc(100dvh - 100px);
			grid-column: 1 / 9;
					width: calc(100% + 40px);
					grid-row: 1 / 2;
		}
		.maison-section-1 .--second-half {
			margin-bottom: 0 !important;
		}
		.maison-section-1 .--content-grid,
		.maison-section-3 .--content-grid  {
			grid-column: 1 / 9;
			position: relative;
			z-index: 1;
		}
		.maison-section-3 .--content-grid .animated-section__image {
			grid-column: 1 / 6;
		}
		.maison-section-1 .--mobile-grid {
			grid-template-columns: subgrid;
			position: relative;
			z-index: 0;
			gap: inherit; /* try to inherit parent gap */
		}
		.maison-section-2 {
			display: flex;
			flex-direction: column;
		}
		.maison-section-2 .--layout-grid {
			align-items: flex-start;
			margin: auto;
			height: auto;
			flex-grow: 0 !important;
		}

		.maison-section-2 .--content-grid {
			grid-column: 1 / 9;
		}
		.maison-section-3 .--layout-grid {
			min-height: fit-content;
		}
		.maison-section-3 .--layout-grid .--second-half {
			display: grid;
			grid-template-columns: subgrid;
			grid-template-rows: max-content;
			gap: inherit; /* try to inherit parent gap */
		}
		.maison-section-3 .--layout-grid .--second-half  .animated-section__image {
			grid-column: 1 / 10;
		}
		.maison-section-3 .--layout-grid .--second-half  .animated-section__text {
			grid-column: 2 / 9;
			grid-row: 2 / 3;
		}
		.maison-section-4 .--second-half {
			grid-column: 1 / 9;
		}
		.maison-section-4 .--content-grid {
			grid-column: 9 / 17;
		}
		.maison-section-4 .--second-half,
		.maison-section-4 .--content-grid {
			grid-row: 1 / 2;
			display: grid;
			grid-template-columns: subgrid;
			gap: inherit; /* try to inherit parent gap */
		}
		.maison-section-4 .--second-half {
			align-items: flex-end;
		}
		.maison-section-4 .--second-half .animated-section__image:first-of-type {
			grid-column: 1 / 8;
			width: calc(100% + calc(var(--gap) * 4));
			margin-left: calc(var(--gap) * -4);
			margin-bottom: calc(14 * var(--marginUnit));
		}
		.maison-section-4 .--second-half .animated-section__image:nth-of-type(2) {
			margin-bottom: 0 !important;
    	align-self: flex-end;
    	grid-column: 6 / 9;
		}
		.maison-section-4 .--content-grid {
			height: fit-content;
		}
		.maison-section-4 .--content-grid .animated-section__text {
			grid-column: 2 / 7;
		}
		.maison-section-4 .--content-grid .animated-section__image {
			grid-column: 3 / 8;
			width: 100%;
		}
		.maison-section-5 .--layout-grid .--content-grid {
			grid-column: 1 /9;
		}
		.maison-section-6 .--layout-grid,
		.maison-section-7 .--layout-grid   {
			align-items: center;
		}
		.maison-section-6 .--second-half {
			grid-column: 1 / 9;
			grid-row: 1/2;
		}
		.maison-section-6 .--content-grid {
			grid-column: 9 / 17;
			grid-row: 1/2;
		}
		.maison-section-7 .--content-grid {
			grid-column: 1 / 9;
			grid-row: 1/2;
		}
		.maison-section-7 .--second-half {
			grid-column: 9 / 17;
			grid-row: 1/2;
		}
	}

	@media screen and (min-width: 981px) {
		.maison-section-1 .--content-grid {
			grid-column: 2 / 9;
		}
		.maison-section-1 .--layout-grid .--second-half {
			grid-column: 11 / 17;
		}
		.maison-section-2 .--content-grid,
		.maison-section-3 .--content-grid  {
			grid-column: 2 / 8;
		}
		.maison-section-2 .--layout-grid .--second-half {
			grid-column: 10 / 16;
		}
		.maison-section-3 .--content-grid {
			display: grid;
			grid-template-columns: subgrid;
			height: fit-content;
			gap: inherit; /* try to inherit parent gap */
		}
		.maison-section-3 .--layout-grid .--second-half  {
			grid-column: 8 / 17;
		}
		.maison-section-3 .--content-grid > * {
			grid-column: 1 / 7;
		}
		.maison-section-4 .--content-grid .animated-section__image {
			grid-column: 4 / 8;
		}
		.maison-section-5 .--layout-grid .--content-grid {
			grid-column: 2 /8;
		}
		.maison-section-6 .--content-grid {
			grid-column: 10 / 16;
		}
		.maison-section-7 .--content-grid {
			grid-column: 2 / 8;
			grid-row: 1/2;
		}
	}

	/* PAGE SAVOIR FAIRE */

	.savoir-faire-section-1 .--mobile-grid {
		grid-area: 1/1;
	}
	.savoir-faire-section-1 .--mobile-grid .animated-section__image {
		grid-row: 1 / 2;
    margin: 0;
	}
	.savoir-faire-section-1 .--mobile-grid .animated-section__image:first-of-type {
		grid-column: 3 / 7;
	}
	.savoir-faire-section-1 .--mobile-grid .animated-section__image:nth-of-type(2) {
    grid-column: 1 / 4;
	}

	@media screen and (min-width: 981px) {

		.savoir-faire-section-1 .--content-grid {
			grid-column: 9 / 17;
			display: grid;
			grid-template-columns: subgrid;
			height: fit-content;
			gap: inherit; /* try to inherit parent gap */
		}
		.savoir-faire-section-1  .--second-half {
			grid-column: 1 / 9;
			display: grid;
			grid-template-columns: subgrid;
			gap: inherit; /* try to inherit parent gap */
		}
		.savoir-faire-section-1 .--content-grid > * {
			grid-column: 1 / 9;
		}
		.savoir-faire-section-1 .--second-half .animated-section__image:first-of-type {
			grid-column: 1 / 9;
		}
		.savoir-faire-section-1 .--second-half .animated-section__image:nth-of-type(2) {
			grid-column: 4 / 9;
			align-self: flex-end;
			transform: translate3d(calc(50% - 6%), 0, 0);
		}
	}

	@media screen and (min-width: 981px) {
		.savoir-faire-section-1  .--second-half {
			grid-column: 1 / 8;
		}
		.savoir-faire-section-1 .--content-grid {
			grid-column: 10 / 16;
		}
	}

	.legal-page p,
	.legal-page h1 {
		margin-bottom: calc(var(--gap) * 2);
	}

	.legal-page .h3 {
		margin-top: calc(var(--gap) * 4);
		margin-bottom: calc(var(--gap) * 2);
	}

/* specific fixes */

@media screen and (min-width: 981px) and (max-height: 918px) {
	h1, .h1 {
	font-size: 30px;
	}
	h2, .h2 {
		font-size: 20px;
	}
	h3, .h3, .animated-section__subtitle p {
		font-size: 16px;
	}
	.animated-section__subtitle p {
		font-weight: 400;
	}
	p, body, .p {
		font-size: 14px;
	}
}

.woocommerce-error li a {
	color: white;
}

/* NEW STYLES */
.--scrolled .header-bottom-container.hidden-on-scroll {
	display: none;
}
.hidden-intl-shop .wcpay-express-checkout-wrapper {
	display: none !important;
}
.woocommerce-product-gallery__image img {
	width: 100% !important;
	display: block;
}

.--be-message,
.--es-message,
.--shop-be .--whole-message {
	display: none;
}

html[lang="es-ES"] .--es-message {
	display: block;
}

html[lang="es-ES"] .--whole-message,
html[lang="es-ES"] .--be-message,
html[lang="es-ES"] .--en-message,
html[lang="fr-FR"] .--en-message,
html[lang="es-ES"] .--es-hide{
	display: none !important;
}

.--shop-be .--be-message {
	display: block;
}
html[lang="fr-FR"] .animated-section.error-es,
html[lang="fr-FR"] .animated-section.error-en,
html[lang="en-GB"] .animated-section.error-fr,
html[lang="en-GB"] .animated-section.error-es,
html[lang="es-ES"] .animated-section.error-fr,
html[lang="es-ES"] .animated-section.error-en {
	display: none !important;
}


#et-boc > .pll-switcher-select {
	display: none;
}
