/*
* Theme Name: Inodia
* Description:
* Author: Vincent Michelet - Inodia
* Version: 1.0.0
*/

/*---------- Imports ----------*/
/* Fonts */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap');

@font-face {
    font-family: 'Impact';
    src: url('./static/fonts/Impact.woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


/* Icons */
@font-face {
	font-family: 'icomoon';
	src: url('./static/fonts/icomoon.woff2');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
	font-family: 'icomoon' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}



/*
 * CONFIGURATION
 */

/*
 For change main variables : static/css/variables.css
 For change mobile breakpoint : static/css/theme.css - line ~ 340
 */


/*---------- Réglages généraux ----------*/
body {
	background: var(--background-color);
	color: var(--dark-title-color);
	font-family: var(--font-text);
	font-size: var(--text-font-size);
	font-weight: 300;
}

.wrapper_body {
	background: var(--background-color);
}

h1, .h1 { 
	color: var(--primary-color); 
	display: flex;
	flex-flow: column !important;
	align-items: flex-start;
    font-family: var(--font-title);
	font-size: var(--h1-font-size); 
    font-weight: 400;
    line-height: 1 !important;
    letter-spacing: 0;
    text-transform: uppercase;
	position: relative;
}

.sur_titre_h1 .elementor-heading-title { 
	color: var(--primary-color);
    font-family: var(--font-text);
	font-size: var(--h1-surtitre-font-size); 
    font-weight: 300;
    line-height: 1 !important;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-block-end: .625rem;
}

.sur_titre .elementor-heading-title {
	color: var(--dark-title-color);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: .1em;
    text-transform: uppercase;
}

h2, .h2,
.h2 .elementor-heading-title { 
	color: var(--secondary-color) !important;
	display: flex;
	flex-flow: column !important;
	align-items: flex-start;
	font-family: var(--font-title) !important;
	font-size: var(--h2-font-size) !important; 
	font-weight: 400 !important;
	line-height: 1.1 !important;
	letter-spacing: 0 !important;
	text-transform: uppercase !important;
	position: relative;
}

h2 span, .h2 span,
.h2 .elementor-heading-title span {
	color: inherit !important;
	font-size: var(--h2-surtitre-font-size) !important;
    line-height: inherit !important;
	letter-spacing: 0 !important;
	text-transform: initial !important;
    margin-inline: 20px;
}

.noir h2,
.noir h2 span,
.noir.h2,
.noir.h2 span,
.noir.h2 .elementor-heading-title,
.noir.h2 .elementor-heading-title span {
	color: var(--dark-title-color) !important;
}

.fond.fonce h2,
.fond.fonce h2 span,
.fond.fonce .h2,
.fond.fonce .h2 span,
.fond.fonce .h2 .elementor-heading-title,
.fond.fonce .h2 .elementor-heading-title span {
	color: var(--light-title-color) !important;
}

.fond.texture h2,
.fond.texture h2 span,
.fond.texture .h2,
.fond.texture .h2 span,
.fond.texture .h2 .elementor-heading-title,
.fond.texture .h2 .elementor-heading-title span {
	color: var(--dark-title-color) !important;
}

h2, .h2 {
	margin-block-end: var(--margin-h2);
}

h3, .h3,
.h3 .elementor-heading-title { 
	color: var(--dark-title-color) !important;
	font-family: var(--font-text) !important;
	font-size: var(--h3-font-size) !important;
	font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
    text-transform: initial !important;
}

.fond.fonce h3,
.fond.fonce .h3,
.fond.fonce .h2 .elementor-heading-title {
	color: var(--light-title-color) !important;
}

h3, .h3 {
	margin-block-end: var(--margin-h3);
}

h4, .h4,
.h4 .elementor-heading-title,
.h4 .elementor-heading-title a { 
	color: var(--dark-title-color) !important;
	font-family: var(--font-title) !important;
	font-size: var(--h4-font-size) !important; 
	font-weight: 400 !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
}

.fond.fonce h4,
.fond.fonce .h4,
.fond.fonce .h4 .elementor-heading-title {
	color: var(--light-title-color) !important;
}

.h4 .elementor-heading-title a:hover {
    color: var(--primary-color) !important;
}

.h4 .elementor-heading-title a:active {
    color: var(--primary-hover-color) !important;
}

h4, .h4 {
	margin-block-end: var(--margin-h4);
}

.h2.elementor-widget-heading,
.h3.elementor-widget-heading,
.h4.elementor-widget-heading {
	margin-block-end: 0 !important;
}

h2.elementor-heading-title, 
.h2 .elementor-heading-title,
.h2.elementor-widget-heading {
	margin-block-end: 0 !important;
}

h3.elementor-heading-title, 
.h3 .elementor-heading-title,
.h3.elementor-widget-heading {
	margin-block-end: 0 !important;
}

h4.elementor-heading-title, 
.h4 .elementor-heading-title,
.h4.elementor-widget-heading {
	margin-block-end: 0 !important;
}

.center:not(.owl-item) h1, 
.center:not(.owl-item) h3, 
.center:not(.owl-item).h3, 
.center:not(.owl-item) .h3,
.center:not(.owl-item).h3 .elementor-heading-title, 
.center:not(.owl-item) h4, 
.center:not(.owl-item).h4, 
.center:not(.owl-item) .h4,
.center:not(.owl-item).h4 .elementor-heading-title {
    align-items: center;
	text-align: center;
}

.center:not(.owl-item) h2, 
.center:not(.owl-item).h2, 
.center:not(.owl-item) .h2,
.center:not(.owl-item).h2 .elementor-heading-title, {
    align-items: flex-start;
	text-align: center;
}

.center:not(.owl-item).h2 .elementor-heading-title,
.right.h2 .elementor-heading-title {
	position: relative;
}

.center:not(.owl-item) .elementor-widget-container,
.right .elementor-widget-container {
	display: flex;
    flex-flow: column;
}

.center:not(.owl-item) .elementor-widget-container {
    align-items: center;
}

p, 
li,
span {
	font-weight: 300;
	letter-spacing: var(--letter-spacing);
}

p,
li,  
span, 
strong {
	color: rgba(var(--dark-text-color), .75);
	font-family: var(--font-text);
}

p.elementor-blockquote__content {
    font-weight: 300;
    font-style: italic;
    margin-block-start: 0 !important;
}


/* LOCK WIDGET STYLE */
.elementor .elementor-tab-content,
.elementor .elementor-tab-content p,
.elementor .elementor-tab-content li,
.elementor .elementor-tab-content span,
.elementor .elementor-tab-content strong,
.elementor .elementor-widget-text-editor,
.elementor .elementor-widget-text-editor p,
.elementor .elementor-widget-text-editor li,
.elementor .elementor-widget-text-editor span,
.elementor .elementor-widget-text-editor strong,
.elementor .elementor-testimonial__text {
    background: transparent !important;
	color: rgba(var(--dark-text-color), .75) !important;
    font-family: var(--font-text) !important;
    font-size: var(--text-font-size) !important;
    line-height: 1.618 !important;
    letter-spacing: var(--letter-spacing) !important;
}

.elementor .elementor-tab-content,
.elementor .elementor-tab-content p,
.elementor .elementor-tab-content li,
.elementor .elementor-tab-content span,
.elementor .elementor-widget-text-editor,
.elementor .elementor-widget-text-editor p,
.elementor .elementor-widget-text-editor li,
.elementor .elementor-widget-text-editor span,
.elementor .elementor-testimonial__text {
    font-weight: 300 !important;
}

.elementor .elementor-tab-content a *,
.elementor .elementor-widget-text-editor a * {
	color: inherit !important;
}

.elementor .elementor-tab-content strong,
.elementor .elementor-widget-text-editor strong {
    font-weight: 600 !important;
}

.fond.fonce p,  
.fond.fonce li, 
.fond.fonce span,
.fond.fonce cite,
.fond.fonce strong,
.elementor .fond.fonce .elementor-counter-title,
.elementor .fond.fonce .elementor-tab-content,
.elementor .fond.fonce .elementor-tab-content p,
.elementor .fond.fonce .elementor-tab-content li,
.elementor .fond.fonce .elementor-tab-content span,
.elementor .fond.fonce .elementor-tab-content strong,
.elementor .fond.fonce .elementor-widget-text-editor,
.elementor .fond.fonce .elementor-widget-text-editor p,
.elementor .fond.fonce .elementor-widget-text-editor li,
.elementor .fond.fonce .elementor-widget-text-editor span,
.elementor .fond.fonce .elementor-widget-text-editor strong,
.elementor .fond.fonce .elementor-testimonial__text {
	color: rgba(var(--light-text-color), .75) !important; 
}

.fond.texture p:not(.elementor-heading-title),  
.fond.texture li, 
.fond.texture span,
.fond.texture cite,
.fond.texture strong,
.elementor .fond.texture .elementor-counter-title,
.elementor .fond.texture .elementor-tab-content,
.elementor .fond.texture .elementor-tab-content p,
.elementor .fond.texture .elementor-tab-content li,
.elementor .fond.texture .elementor-tab-content span,
.elementor .fond.texture .elementor-tab-content strong,
.elementor .fond.texture .elementor-widget-text-editor,
.elementor .fond.texture .elementor-widget-text-editor p,
.elementor .fond.texture .elementor-widget-text-editor li,
.elementor .fond.texture .elementor-widget-text-editor span,
.elementor .fond.texture .elementor-widget-text-editor strong,
.elementor .fond.texture .elementor-testimonial__text {
	color: var(--dark-title-color) !important; 
}

.fond.texture p:not(.elementor-heading-title),  
.fond.texture li, 
.fond.texture span,
.fond.texture cite,
.elementor .fond.texture .elementor-counter-title,
.elementor .fond.texture .elementor-tab-content,
.elementor .fond.texture .elementor-tab-content p,
.elementor .fond.texture .elementor-tab-content li,
.elementor .fond.texture .elementor-tab-content span,
.elementor .fond.texture .elementor-widget-text-editor,
.elementor .fond.texture .elementor-widget-text-editor p,
.elementor .fond.texture .elementor-widget-text-editor li,
.elementor .fond.texture .elementor-widget-text-editor span,
.elementor .fond.texture .elementor-testimonial__text {
    font-weight: 400 !important;
}
 
a {
	color: var(--primary-color);
}

a:hover {
	color: var(--primary-hover-color);
}

a:active {
	color: var(--primary-focus-color);
}

label, .label,
input[type="file" i] {
    color: var(--dark-title-color);
} 

.fond.fonce label, 
.fond.fonce .label,
.fond.fonce input[type="file" i] {
    color: var(--light-title-color);
} 

input:not([type="radio"]):not([type="file"]):not([type="search"]):not([type="submit"]):not([type="button"]), 
select, 
textarea, 
textarea.elementor-field-textual,
.elementor-field-group .elementor-select-wrapper select {
	background: transparent !important;
    border: var(--border-width) solid rgba(var(--dark-text-color), .6) !important;
    border-radius: var(--border-radius) !important;
    color: rgba(var(--dark-text-color), .7) !important;    
    font-family: var(--font-text);
    font-size: var(--text-font-size);
    font-weight: 300 !important;
	letter-spacing: var(--letter-spacing);
    text-overflow: ellipsis;
    min-height: initial;
}

input:not([type="radio"]):not([type="file"]):not([type="search"]):not([type="submit"]):not([type="button"]), 
textarea, 
textarea.elementor-field-textual {
    padding: 12px 20px !important;
}

select,
.elementor-field-group .elementor-select-wrapper select {
    padding: 12px 48px 12px 20px !important;
}

input:not([type="radio"]):not([type="file"]):not([type="search"]):not([type="submit"]):not([type="button"]):hover,
select:hover,
textarea:hover,
.elementor-field-group .elementor-select-wrapper select:hover {
    border-color: rgba(var(--dark-text-color), .75) !important;
	color: rgba(var(--dark-text-color), .85);
}

input:not([type="radio"]):not([type="file"]):not([type="search"]):not([type="submit"]):not([type="button"]):focus,
select:focus,
textarea:focus,
.elementor-field-group .elementor-select-wrapper select:focus {
    border-color: var(--primary-color) !important;
    box-shadow: 0 0 0 2px rgba(var(--primary-rgb), .1) !important;
	color: var(--dark-title-color) !important;
	outline: none !important;
}

.fond.fonce input:not([type="radio"]):not([type="file"]):not([type="search"]):not([type="submit"]):not([type="button"]), 
.fond.fonce select, 
.fond.fonce textarea,
.fond.fonce .elementor-field-group .elementor-select-wrapper select {
    border-color: rgba(var(--light-text-color), .25) !important;
	color: rgba(var(--light-text-color), .65) !important;
}

.fond.fonce input:not([type="radio"]):not([type="file"]):not([type="search"]):not([type="submit"]):not([type="button"]):hover,
.fond.fonce select:hover,
.fond.fonce textarea:hover,
.fond.fonce .elementor-field-group .elementor-select-wrapper select:hover {
    border-color: rgba(var(--light-text-color), .5) !important;
	color: rgba(var(--light-text-color), .8) !important;
}

.fond.fonce input:not([type="radio"]):not([type="file"]):not([type="search"]):not([type="submit"]):not([type="button"]):focus,
.fond.fonce select:focus,
.fond.fonce textarea:focus,
.fond.fonce .elementor-field-group .elementor-select-wrapper select:focus {
    border-color: var(--secondary-color) !important;
    box-shadow: 0 0 0 2px rgba(var(--secondary-rgb), .1) !important;
	color: var(--light-title-color) !important;
}

#content .elementor-select-wrapper.remove-before::before {
    content: "\61" !important;
    font-family: "icomoon" !important;
    font-size: .875rem;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-transform: lowercase !important;
    text-shadow: none !important;
    transform: translate3d(-100%,-50%,0);
    inset: auto 3px auto auto;
}

#content .elementor-select-wrapper .select-caret-down-wrapper {
    display: none !important;
}

input[type="file"]:focus {
	border: none !important;
}

input ~ span em {
    color: rgba(var(--light-text-color), .5);
	font-size: .75rem;
}

.fond.fonce input ~ span em {
    color: rgba(var(--dark-text-color), .5);
}

blockquote {
    position: relative;
    padding: 25px 35px;
    margin: .9375rem 0;
}

blockquote > * {
    font-style: italic;
    position: relative;
    z-index: 1;
}

p.rgpd {
	font-size: .75rem;
    text-align: left;
    margin: 0 0 1.875rem 0;
}

.fond.gris:not(.block) {
	background: var(--background-grey);
}

.fond.vert:not(.block) {
	background: var(--secondary-color);
}

.fond.blanc:not(.block) {
	background: var(--background-light);
}

.fond.texture:not(.block) {
	background: var(--background-texture);
    background-size: cover !important;
}


/* Dropdown */
select {
	color: rgba(var(--dark-title-color), .65) !important;
}

.fonce select {
	color: rgba(var(--light-title-color), .65) !important;
}

#content .elementor-widget-testimonial-carousel .swiper-pagination-bullets,
#content .elementor-widget-image-carousel:not(.elementor-pagination-position-inside) .swiper-pagination-bullets {
    position: static;
    margin-block-start: var(--margin-h3);
}

#content .elementor-widget-image-carousel.elementor-pagination-position-inside .swiper-pagination-bullets {
    bottom: 15px;
    z-index: 1;
}

#content .swiper-pagination-bullet {
    background: var(--dark-title-color);
}

#content .fond.fonce .swiper-pagination-bullet {
    background: var(--light-title-color);
}


/* Upload */
#content .elementor-widget-form .elementor-field-type-upload > label {
    background: var(--primary-color);
    border-radius: var(--border-radius);
    color: var(--light-title-color);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;    
    height: 100%;
    font-size: .75rem;
    font-weight: 400;
    padding: 12px 24px;
    margin: 0;
    transition: all .3s ease-in-out;
}

#content .elementor-widget-form .elementor-field-type-upload > label.file-loaded {
    font-weight: 700;
}

#content .elementor-widget-form .elementor-field-type-upload > label.file-loaded::after {
    display: none;
}

#content .elementor-widget-form .elementor-field-type-upload > label:hover {
    background: var(--primary-hover-color);
}

#content .elementor-widget-form .elementor-field-type-upload > label:has(+ input:focus:focus-visible) {    
    outline: var(--outline-width) solid rgba(var(--primary-rgb), .3) !important;
    outline-offset: 1px !important;
    box-shadow: 0 0 5px var(--primary-color) !important;
}

#content .elementor-widget-form .elementor-field-type-upload > label:active {
    background: var(--primary-focus-color);
}

#content .fond.fonce .elementor-widget-form .elementor-field-type-upload > label {
    color: var(--secondary-color);
}

#content .fond.fonce .elementor-widget-form .elementor-field-type-upload > label:hover {
    background: var(--secondary-hover-color);
}

#content .fond.fonce .elementor-widget-form .elementor-field-type-upload > label:has(+ input:focus:focus-visible) {    
    outline: var(--outline-width) solid rgba(var(--secondary-rgb), .3) !important;
    outline-offset: 1px !important;
    box-shadow: 0 0 5px var(--secondary-color) !important;
}

#content .fond.fonce .elementor-widget-form .elementor-field-type-upload > label:active {
    background: var(--secondary-focus-color);
}

#content .elementor-widget-form .elementor-field-type-upload > label::before {
    content: "\68";
    color: var(--light-title-color);
    font-family: "icomoon" !important;
    font-size: .9375rem;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-transform: lowercase !important;
    margin-inline-end: 10px;
}

#content .elementor-widget-form .elementor-field-type-upload > input {
    position: absolute;
    top: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

#content .leaflet-top, 
#content .leaflet-bottom {
    z-index: 999;
}


/* STRUCTURE */
body:not(.home) #content > .wrapper {
    padding-top: 3rem;
}

#content .elementor-top-section:not(.no_margin):not(:first-child) {
	margin-block-start: var(--margin-section);
}

body:not(.elementor-page) #content,
#content .elementor-top-section:not(.no_margin):not(.fond):last-child {
	margin-block-end: var(--margin-section);
}

#content #breadcrumb {
	margin-block-end: 1.5625rem;
}

#content #breadcrumb p {
	font-size: .8125rem;
}

#content #breadcrumb p a,
#content #breadcrumb p span.separator {
	font-weight: 300;
}

#content #breadcrumb p a {
	color: var(--dark-title-color);
}

#content #breadcrumb p span.separator,
#content #breadcrumb p a:hover {
	color: var(--primary-color);
}

#content #breadcrumb p a:active {
	color: var(--primary-hover-color);
}

#content #breadcrumb p span.separator {
	margin: 0 5px;
}

#content #breadcrumb p span.last {
	font-weight: 700;
}

#footer .elementor-top-section.fond:not(.block),
#content .elementor-top-section.fond:not(.block) {
	padding-block: var(--padding-section);
}

#footer .elementor-top-section.fond:not(.block):last-child,
#content .elementor-top-section.fond:not(.block):last-child {
	margin-block-end: 0;
}

.blog #content + #footer::before,
.single #content + #footer::before,
.archive #content + #footer::before,
.single-store #content .elementor-top-section.fond.gris:last-of-type::after,
#content:has(.elementor-top-section:not(.block):last-child) + #footer::before,
#content .elementor-top-section:not(.fond) + .elementor-top-section.fond:not(.block)::before,
#content .elementor-top-section.fond:not(.block):has(+ .elementor-top-section:not(.fond))::after {
    content: "";
    display: flex;
    aspect-ratio: 1920 / 85;
    width: 100%;
    height: auto;
    mask: var(--border) no-repeat;
    mask-size: 100% 100%;
    pointer-events: none;
    position: absolute;
    z-index: 1;
}

.blog #content + #footer::before,
.single #content + #footer::before,
.archive #content + #footer::before,
#content:has(.elementor-top-section:not(.block):last-child) + #footer::before,
#content .elementor-top-section:not(.fond) + .elementor-top-section.fond:not(.block)::before {
    inset: 0 auto auto 0;
    transform: translateY(-50%);
}

.single-store #content .elementor-top-section.fond.gris:last-of-type::after,
#content .elementor-top-section.fond:not(.block):has(+ .elementor-top-section:not(.fond))::after {
    inset: auto auto 0 0;
    transform: translateY(60%);
}

.blog #content + #footer::before,
.single #content + #footer::before,
.archive #content + #footer::before,
.single-store #content .elementor-top-section.fond.gris:last-of-type::after,
#content:has(.elementor-top-section:not(.block):not(.fond):last-child) + #footer::before,
#content .elementor-top-section:not(.fond) + .elementor-top-section.fond:not(.block)::before,
#content .elementor-top-section.fond:not(.block):has(+ .elementor-top-section:not(.fond))::after {
    background: var(--background-color);
}

#content:has(.elementor-top-section.fond.gris:not(.block):last-child) + #footer::before {
    background: var(--background-grey);
}

#content .elementor-top-section.fond.block > div {
    border-radius: var(--border-radius);
    overflow: hidden;
    position: relative;
}

#content .elementor-top-section.fond:not(.block) + .elementor-top-section.fond:not(.block) {
	margin-block-start: 0;
}

#content .elementor-top-section.fond.orange + .elementor-top-section.fond.orange,
#content .elementor-top-section.fond.vert + .elementor-top-section.fond.vert,
#content .elementor-top-section.fond.blanc + .elementor-top-section.fond.blanc {
	padding-block-start: 0;
}

#footer .elementor-top-section .elementor-inner-section + .elementor-inner-section:not(.block_boutons),
#footer .elementor-top-section .elementor-widget-text-editor + .elementor-inner-section:not(.block_boutons),
#content .elementor-top-section .elementor-inner-section + .elementor-inner-section:not(.block_boutons),
#content .elementor-top-section .elementor-widget-text-editor + .elementor-inner-section:not(.block_boutons) {
	margin-block-start: var(--margin-block);
}

#footer .elementor-top-section .elementor-inner-section:first-child,
#footer .elementor-top-section .elementor-inner-section.titre + .elementor-inner-section,
#content .elementor-top-section .elementor-inner-section:first-child,
#content .elementor-top-section .elementor-inner-section.titre + .elementor-inner-section {
	margin-block-start: 0;
}

#footer .center .elementor-widget-wrap,
#content .center .elementor-widget-wrap {
	display: flex;
	flex-flow: column;
	align-items: center;
}

#footer .elementor-widget + .block_boutons,
#footer .elementor-widget + .elementor-widget-button,
#footer .elementor-widget + .elementor-widget-form,
#footer .elementor-widget + .elementor-widget-text-editor,
#footer .elementor-widget-text-editor + .elementor-widget,
#footer .elementor-widget-accordion + .elementor-widget,
#footer .elementor-widget-shortcode + .elementor-widget-button,
#content .elementor-widget + .block_boutons,
#content .elementor-widget + .elementor-widget-button,
#content .elementor-widget + .elementor-widget-form,
#content .elementor-widget + .elementor-widget-text-editor,
#content .elementor-widget-text-editor + .elementor-widget,
#content .elementor-widget-accordion + .elementor-widget,
#content .elementor-widget-shortcode + .elementor-widget-button {
	margin-block-start: calc(var(--margin-section) / 2.5);
}

#footer .elementor-widget-button + .elementor-widget-image,
#footer .elementor-widget-text-editor + .elementor-widget-image,
#footer .elementor-widget-text-editor + .elementor-widget-hotspot,
#content .elementor-widget-button + .elementor-widget-image,
#content .elementor-widget-text-editor + .elementor-widget-image,
#content .elementor-widget-text-editor + .elementor-widget-hotspot {
	margin-block-start: calc(var(--margin-section) / 1.75);
}

#footer .elementor-widget-image + .elementor-widget-text-editor,
#content .elementor-widget-image + .elementor-widget-text-editor {
	margin-block-start: calc(var(--margin-section) / 3.5);
}

#footer .elementor-inner-section + .elementor-widget,
#content .elementor-inner-section + .elementor-widget {
	margin-block-start: calc(var(--margin-h2) + (var(--margin-h2) / 2));
}

#footer .elementor-widget-heading:has(h3) + .elementor-inner-section,
#content .elementor-widget-heading:has(h3) + .elementor-inner-section {
	margin-block-start: calc(var(--margin-h3) + (var(--margin-h3) / 2));
}

#footer .elementor-widget + .elementor-widget-heading.no_margin,
#content .elementor-widget + .elementor-widget-heading.no_margin {
	margin-block-start: 0 !important;
}

#content .section_titre + .elementor-top-section {
	margin-block-start: calc(var(--margin-h2) + (var(--margin-h2) / 2)) !important;
}

#footer .elementor-widget-image .elementor-image figure figcaption,
#footer .elementor-widget-image-carousel .swiper-slide figure figcaption, 
#content .elementor-widget-image .elementor-image figure figcaption,
#content .elementor-widget-image-carousel .swiper-slide figure figcaption {
    background: rgba(var(--dark-text-color), .25);
	border-radius: var(--border-radius);
    color: var(--dark-title-color);
	font-family: var(--font-text);
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: var(--letter-spacing);
	text-shadow: 0 2px 20px var(--light-title-color);
    padding: 10px;
}

#content .quote p {
    font-size: 2rem;
    line-height: 1.3;
}

#content .elementor-widget-blockquote .elementor-blockquote::before,
#content .elementor-widget-testimonial-carousel .elementor-swiper-button {
    display: none;
}

#content .elementor-widget-testimonial-carousel .elementor-main-swiper {
    width: 100%;
}

#content .elementor-widget-testimonial-carousel .swiper-slide {
    padding: 0;
}

#content .elementor-widget-testimonial-carousel .elementor-testimonial__text,
#content .elementor-widget-testimonial-carousel .elementor-testimonial__name {
    font-size: 1.125rem !important;
}

#content .elementor-widget-testimonial-carousel .elementor-testimonial__title {
    line-height: 1.3;
    margin-block-start: .3125rem;
}

#content .section_img_full img {
    border-radius: 0;
    width: 100%;
}


/*---------- IMAGES SUPERPOSÉES ----------*/
#content .block_txt_img .block_img.piece::before,
#content .block_txt_img .block_img.piece::after,
#content .block_txt_img .block_img.tirelire::before,
#content .block_txt_img .block_img.tirelire::after,
#content .block_txt_img .block_img.petits_prix::before,
#content .block_txt_img .block_img.petits_prix::after,
#content .block_txt_img .block_img.destockage::before,
#content .block_txt_img .block_img.destockage::after,
#content .block_txt_img .block_img.destockage .elementor-widget-wrap::after {
    content: "";
    background-size: 100% 100% !important;
    display: flex;
    height: auto;
    pointer-events: none;
    position: absolute;
    z-index: 2;
}


/* DESTOCKAGE */
#content .block_txt_img .block_img.destockage::before {
    background: var(--calculatrice);
    aspect-ratio: 140 / 122;
}

#content .block_txt_img .block_img.destockage::after {
    background: var(--destockage);
    aspect-ratio: 246 / 127;
}

#content .block_txt_img .block_img.destockage:first-child::before {
    width: 20.5%;
    inset: 40% auto auto 0;
    transform: translate(14%, -84%);
}

#content .block_txt_img .block_img.destockage:first-child::after {
    width: 38%;
    inset: auto 0 0 auto;
    transform: translate(-35%, 20%);  
}

#content .block_txt_img .block_img.destockage:last-child::before {
    width: 24.5%;
    inset: 50% auto auto 0;
    transform: translate(23%, -90%);
}

#content .block_txt_img .block_img.destockage:last-child::after {
    width: 43%;
    inset: auto 0 0 auto;
    transform: translate(-25%, 40%);  
}

#content .block_txt_img .block_img.destockage .elementor-widget-wrap::before,
#content .block_txt_img .block_img.petits_prix .elementor-widget-wrap::before,
#content .block_txt_img .block_img.tirelire .elementor-widget-wrap::before {
    content: "";
    border-radius: var(--border-radius);
    display: flex;
    position: absolute;
    inset: 0 0 auto auto;
    z-index: 0;
}

#content .block_txt_img .block_img.destockage .elementor-widget-wrap::after {
    background: var(--pourcentage);
    aspect-ratio: 36 / 32;
}

#content .block_txt_img .block_img.destockage:first-child .elementor-widget-wrap::before {
    background: var(--primary-color);
    width: 46%;
    height: 65%;
    transform: translateY(calc(11% + 10px));
}

#content .block_txt_img .block_img.destockage:first-child .elementor-widget-wrap::after {
    width: 10.9%;
    inset: 0 0 auto auto; 
    transform: translate(68%, 150%);  
}

#content .block_txt_img .block_img.destockage:first-child .elementor-widget-image:first-child {
    width: 78%;
    height: 72%;
    margin-inline-start: auto;
    transform: translateX(-10px);    
    z-index: 1;
}

#content .block_txt_img .block_img.destockage:first-child .elementor-widget-image:last-child {
    width: 35%;
    height: 45%;
    transform: translateY(-38%);
    z-index: 0;
}

#content .block_txt_img .block_img.destockage:last-child .elementor-widget-wrap::before {
    background: var(--secondary-color);
    width: 68%;
    height: 58%;
    transform: translate(calc(-10% + 10px), calc(24% + 10px));
}

#content .block_txt_img .block_img.destockage:last-child .elementor-widget-wrap::after {
    width: 6.5%;
    inset: 50% 0 auto auto; 
    transform: translate(40%, 100%);  
}

#content .block_txt_img .block_img.destockage:last-child .elementor-widget-image:first-child {
    width: 68%;
    height: 72%;
    margin-inline-start: auto;
    transform: translateX(-10%);    
    z-index: 1;
}

#content .block_txt_img .block_img.destockage:last-child .elementor-widget-image:last-child {
    width: 41%;
    height: 45%;
    transform: translateY(-37%);
    z-index: 0;
}


/* PETITS PRIX */
#content .block_txt_img .block_img.petits_prix::before {
    background: var(--petits-prix);
    aspect-ratio: 194 / 214;
    transform-origin: bottom right;
}

#content .block_txt_img .block_img.petits_prix::after {
    background: var(--piggy-bank);
    aspect-ratio: 203 / 176;
}

#content .block_txt_img .block_img.petits_prix:first-child::before {
    width: 33.75%;
    inset: 0 auto auto 0;
    transform: translate(-25%,16%);
}

#content .block_txt_img .block_img.petits_prix:first-child::after {
    width: 35.75%;
    inset: auto 0 0 auto;
    transform: translate(30%,12%);
}

#content .block_txt_img .block_img.petits_prix:first-child .elementor-widget-image:first-child {
    width: 71%;
    height: 81%;
    margin-inline-start: auto;
    transform: translate(-10px, 10px);    
    z-index: 1;
}

#content .block_txt_img .block_img.petits_prix:first-child .elementor-widget-image:last-child {
    width: 41%;
    height: 55%;
    transform: translateY(-65%);
    z-index: 0;
}

#content .block_txt_img .block_img.petits_prix:first-child .elementor-widget-wrap::before {
    background: var(--secondary-color);
    width: 54%;
    height: 54%;
}

#content .block_txt_img .block_img.petits_prix:last-child::before {
    width: 26.75%;
    inset: 0 auto auto 0;
    transform: translate(-20%, 34%);
}

#content .block_txt_img .block_img.petits_prix:last-child::after {
    width: 28%;
    inset: auto 0 0 auto;
    transform: translate(35%, 21%);
}

#content .block_txt_img .block_img.petits_prix:last-child .elementor-widget-image:first-child {
    width: 74%;
    height: 83%;
    margin-inline-start: auto;
    transform: translateX(-10px);    
    z-index: 1;
}

#content .block_txt_img .block_img.petits_prix:last-child .elementor-widget-image:last-child {
    width: 41%;
    height: 55%;
    transform: translateY(-69%);
    z-index: 0;
}

#content .block_txt_img .block_img.petits_prix:last-child .elementor-widget-wrap::before {
    background: var(--primary-color);
    width: 68%;
    height: 67%;
    transform: translateY(calc(24% + 10px));
}


/* TIRELIRE */
#content .block_txt_img .block_img.tirelire::before {
    aspect-ratio: 152 / 201;
    background: var(--coin);
    width: 21%;
    inset: 0 auto auto 0;
    transform: translate(-37%, -17%);
}

#content .block_txt_img .block_img.tirelire::after {
    aspect-ratio: 179 / 241;
    background: var(--piggy-bank-2);
    width: 24.5%;
    inset: auto 0 0 auto;
    transform: translateY(-15%);
}

#content .block_txt_img .block_img.tirelire .elementor-widget-wrap {
    width: 76.25%;
}

#content .block_txt_img .block_img.tirelire .elementor-widget-wrap::before {
    background: var(--primary-color);
    width: 71%;
    height: 84%;
    transform: translate(15px, 15px);
    inset: auto 0 0 auto;
}

#content .block_txt_img .block_img:not(.destockage):not(.petits_prix):not(.tirelire):not(.piece):not(.contain) .elementor-widget-wrap::before {
    content: "";
    background: var(--primary-color);
    border-radius: var(--border-radius);
    display: flex;
    width: 71%;
    height: 84%;
    position: absolute;
    pointer-events: none;
    transform: translate(15px, 15px);
    inset: auto 0 0 auto;
}


/* PIECE */
#content .block_txt_img .block_img.piece::before {
    background: var(--calculatrice-2);
    aspect-ratio: 163 / 157;
    width: 22.5%;
    inset: auto auto 0 0;
    transform: translate(-73%, -45%);
}

#content .block_txt_img .block_img.piece::after {
    background: var(--coin-2);
    aspect-ratio: 149 / 316;
    width: 20.5%;
    inset: 0 0 auto auto;
    transform: translate(71%, -9%);
}

#content .block_txt_img .block_img.piece .elementor-widget-wrap::before {
    content: "";
    background: var(--secondary-color);
    border-radius: var(--border-radius);
    display: flex;
    width: 87%;
    height: 78%;
    position: absolute;
    pointer-events: none;
    transform: translate(15px, 15px);
    inset: auto 0 0 auto;
}


/* BOUTON PLAYER */
#content .block_txt_img .block_img .bouton.icon {
    display: flex;
    justify-content: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%,-50%,0);
    z-index: 1;
}

#content .block_txt_img .block_img .bouton.icon a {
    background: var(--primary-color);
    color: var(--light-title-color);
    height: 80px;
    padding: 20px !important;
}

#content .block_txt_img .block_img .bouton.icon a:hover {
    background: var(--primary-hover-color);
}

#content .block_txt_img .block_img .bouton.icon a:active {
    background: var(--primary-focus-color);
}

#content .block_txt_img .block_img .bouton.icon a > span {
    font-size: 1.875rem;
}


/* MARGES TITRES */
#footer .elementor-widget-heading:not(.h3):not(.h4):not(.center):not(.right):not(.inodia-icons):has(h2),    
#content .elementor-widget-heading:not(.h3):not(.h4):not(.center):not(.right):not(.inodia-icons):has(h2) {    
    display: flex;
    flex-flow: column;
    align-items: flex-start;
}

#footer .center .elementor-widget-heading:not(.h3):not(.h4):not(.center):not(.right):not(.inodia-icons):has(h2),
#content .center .elementor-widget-heading:not(.h3):not(.h4):not(.center):not(.right):not(.inodia-icons):has(h2) {
    align-items: center;
}

#footer .elementor-widget + .quote,
#footer .elementor-widget-heading:has(h1) + .elementor-widget,
#footer .elementor-widget-heading:has(h1) + .elementor-inner-section,
#footer .elementor-widget-heading.h2 + .elementor-widget,
#footer .elementor-widget-heading.h2 + .elementor-inner-section,
#content .elementor-widget + .quote,
#content .elementor-widget-heading:has(h1) + .elementor-widget,
#content .elementor-widget-heading:has(h1) + .elementor-inner-section,
#content .elementor-widget-heading.h2 + .elementor-widget,
#content .elementor-widget-heading.h2 + .elementor-inner-section,
body:not(.single-post) #content .elementor-widget-heading:not(.h3):not(.h4):has(h2) + .elementor-widget {
	margin-block-start: var(--margin-h2);
}

#footer .elementor-widget-heading:not(.h3):not(.h4):has(h2) + .elementor-inner-section,
#content .elementor-widget-heading:not(.h3):not(.h4):has(h2) + .elementor-inner-section {
	margin-block-start: calc(var(--margin-h2) + (var(--margin-h2) / 2));
}

#footer .elementor-widget-heading.h3 + .elementor-widget,
#content .elementor-widget-heading.h3 + .elementor-widget,
body:not(.single-post) #content .elementor-widget-heading:not(.h2):not(.h4):has(h3) + .elementor-widget,
body.single-post #content .elementor-widget-heading:not(.h3):not(.h4):has(h2) + .elementor-widget {
	margin-block-start: var(--margin-h3);
}

#footer .elementor-widget-heading.h4 + .elementor-widget,
#content .elementor-widget-heading.h4 + .elementor-widget,
body:not(.single-post) #content .elementor-widget-heading:not(.h2):not(.h3):has(h4) + .elementor-widget,
body.single-post #content .elementor-widget-heading:not(.h2):not(.h4):has(h3) + .elementor-widget {
	margin-block-start: var(--margin-h4);
}

#footer .elementor-widget-heading.sur_titre + .elementor-widget-heading,
#content .elementor-widget-heading.sur_titre + .elementor-widget-heading {
	margin-block-start: calc(var(--margin-h2) / 2) !important;
}

#footer .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading.h2,
#footer .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading:has(h2),
#content .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading.h2,
#content .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading:has(h2) {
	margin-block-start: calc(var(--margin-h2) + (var(--margin-h2) / .75)) !important;
}

#footer .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading.h3,
#footer .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading:has(h3),
#content .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading.h3,
#content .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading:has(h3) {
	margin-block-start: calc(var(--margin-h3) + (var(--margin-h3) / .75)) !important;
}

#footer .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading.h4,
#footer .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading:has(h4),
#content .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading.h4,
#content .elementor-widget:not(.elementor-widget-menu-anchor):not(.elementor-widget-heading) + .elementor-widget-heading:has(h4) {
	margin-block-start: calc(var(--margin-h4) + (var(--margin-h4) / .75)) !important;
}

#footer .elementor-widget-image + .elementor-widget-heading,
#content .elementor-widget-image + .elementor-widget-heading {
	margin-block-start: var(--padding-section);
}


/* FORMULAIRES */
#content .section_contact .elementor-inner-section {
    max-width: 800px;
    margin-inline: auto;
}

#content .elementor-widget-form .elementor-field-type-checkbox .elementor-field-subgroup {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    margin: -.625rem -15px 0;
}

#content .elementor-widget-form .elementor-field-type-checkbox .elementor-field-subgroup > .elementor-field-option {
    margin: .625rem 15px 0;
}

#content .elementor-widget-form .e-form__buttons:has(.elementor-field-type-previous),
#content .elementor-widget-form .e-form__buttons:has(.elementor-field-type-next) {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

#content .elementor-widget-form .e-form__buttons .elementor-field-type-next button,
#content .elementor-widget-form .e-form__buttons .elementor-field-type-previous button {
    background: transparent;
    border-radius: 0;
    color: var(--secondary-color);
    display: flex;
    align-items: center;
    font-size: .75rem;
    font-weight: 500;
    letter-spacing: .2em;
    text-transform: uppercase;
    padding: 0;
}

#content .elementor-widget-form .e-form__buttons .elementor-field-type-next button::after,
#content .elementor-widget-form .e-form__buttons .elementor-field-type-previous button::before {
    color: inherit;
    font-family: "icomoon" !important;
    font-size: .5rem;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: 0;
    text-transform: lowercase !important;
}

#content .elementor-widget-form .e-form__buttons .elementor-field-type-previous button::before {
    content: "\6b";
    margin-inline-end: 10px;
}

#content .elementor-widget-form .e-form__buttons .elementor-field-type-next button::after {
    content: "\6a";
    margin-inline-start: 10px;
}

#content .elementor-widget-form .e-form__buttons .elementor-field-type-next button:hover,
#content .elementor-widget-form .e-form__buttons .elementor-field-type-previous button:hover {
    color: var(--secondary-hover-color);
}

#content .elementor-widget-form .e-form__buttons .elementor-field-type-next button:active,
#content .elementor-widget-form .e-form__buttons .elementor-field-type-previous button:active {
    color: var(--secondary-focus-color);
}

#content .elementor-widget-form .e-form__buttons .elementor-field-type-next button:focus:focus-visible,
#content .elementor-widget-form .e-form__buttons .elementor-field-type-previous button:focus:focus-visible {
    outline: var(--outline-width) solid rgba(var(--secondary-rgb), .3) !important;
    outline-offset: 1px !important;
    box-shadow: 0 0 5px var(--secondary-color) !important;
}

#content .elementor-widget-form .e-form__indicators__indicator__number {
    background: transparent;
}

#content .elementor-widget-form .e-form__indicators__indicator--state-inactive {
    border-color: rgba(var(--light-text-color), .25);
    color: rgba(var(--light-text-color), .25);
}

#content .elementor-widget-form .e-form__indicators__indicator__separator {
    background: rgba(var(--light-text-color), .25);
    height: var(--border-width);
    width: calc(100% - 100px);
}

#content .elementor-widget-form .e-form__indicators__indicator--state-active {
    border-color: var(--secondary-color);
    color: var(--secondary-color);
}

#content .elementor-widget-form .e-form__indicators__indicator--state-completed .e-form__indicators__indicator__number {
    background: var(--secondary-color);
    border-color: transparent;
    color: var(--light-title-color);
}

#content .elementor-widget-form .e-form__indicators__indicator--state-completed + .e-form__indicators__indicator__separator {
    background: var(--secondary-color);
}

#content .elementor-blockquote--skin-border .elementor-blockquote {
    border: none;
    padding: 0;
    margin: 0;
}


/* BLOCK BOUTONS */
#content .block_boutons .elementor-widget-wrap {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
    gap: 12px;
}

#content .center .block_boutons .elementor-widget-wrap {
	justify-content: center;
}

#content .block_boutons .bouton {
	width: auto;
	margin: 0;
}


/* BOUTONS */
.bouton {
	border: none;
}

.block_boutons .bouton {
	display: table;
	margin-block-end: 0 !important;
}

.block_boutons .bouton:not(:last-child) {
	margin-inline-end: 20px;
}

.bouton,
.bouton span,
#btn_form span,
#btn_form_message span,
.post-type-archive-realisations #content .facetwp-facet-realisations_pager button,
#content .elementor-post.type-post .elementor-post__read-more,
body #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.mgbutton.moove-gdpr-infobar-allow-all,
body #moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn, 
body #moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton {
    font-family: var(--font-title);
	font-size: .875rem;
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: .03em;
	text-transform: uppercase;
}

.bouton span,
.fond.fonce .bouton span,
#btn_form span,
#btn_form_message span,
body #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.mgbutton.moove-gdpr-infobar-allow-all,
body #moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn,
body #moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton {
    color: inherit !important;
	text-align: center;
}

.bouton:not(.link):not(.icon) span span {
    position: relative;
    inset: 1px auto auto auto;
}

.bouton a,
a.bouton,
button.bouton,
#btn_form,
#content .elementor-post.type-post .elementor-post__read-more,
.post-type-archive-realisations #content .facetwp-facet-realisations_pager button,
body #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.mgbutton.moove-gdpr-infobar-allow-all,
body #moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn, 
body #moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton {
	border: var(--border-width) solid transparent;
	border-radius: calc(var(--border-radius) / 2);
    box-sizing: border-box;
	display: inline-block;
    min-height: initial;
	padding: 12px 24px;
    text-align: center;
}

#btn_form,
.bouton:not(.link):not(.icon):not(.menu-item) a,
a.bouton:not(.link):not(.icon):not(.menu-item),
button.bouton:not(.link):not(.icon):not(.menu-item) {
    min-width: 120px;
}

body #moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn {
    background: transparent;
    border: var(--border-width) solid var(--light-title-color) !important;
	color: var(--light-title-color) !important;
}

body #moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn:hover {
    background: var(--light-title-color);
	border: var(--border-width) solid transparent !important;
	color: var(--primary-color) !important;
}

body #moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn:active {
    background: rgba(var(--light-text-color), .85);
	color: var(--primary-color) !important;
}

.elementor-widget-button.icomoon a,
.elementor-widget-button.inodia-icons a,
.elementor-widget-lightbox.icomoon a,
.elementor-widget-lightbox.inodia-icons a {
	background: transparent;
	border-radius: 0;
	padding: 0;
}

.center .bouton,
.bouton.center {
	display: flex;
    justify-content: center;
}


/* BOUTON ORANGE */
#btn_form,
#btn_form_message,
a.bouton.primary,
a.bouton.orange,
.bouton.primary a,
.bouton.orange a,
button.bouton.primary,
button.bouton.orange,
.fond.fonce a.bouton.primary,
.fond.fonce a.bouton.orange,
.fond.fonce .bouton.primary a,
.fond.fonce .bouton.orange a,
.fond.fonce button.bouton.primary,
.fond.fonce button.bouton.orange {
	background: var(--primary-color);
    color: var(--light-title-color) !important;
}

#btn_form:hover,
#btn_form_message:hover,
a.bouton.primary:hover,
a.bouton.orange:hover,
.bouton.primary a:hover,
.bouton.orange a:hover,
button.bouton.primary:hover,
button.bouton.orange:hover,
.fond.fonce a.bouton.primary:hover,
.fond.fonce a.bouton.orange:hover,
.fond.fonce .bouton.primary a:hover,
.fond.fonce .bouton.orange a:hover,
.fond.fonce button.bouton.primary:hover,
.fond.fonce button.bouton.orange:hover {
    background: var(--primary-hover-color);
}

#btn_form:active,
#btn_form_message:active,
a.bouton.primary:active,
a.bouton.orange:active,
.bouton.primary a:active,
.bouton.orange a:active,
button.bouton.primary:active,
button.bouton.orange:active,
.fond.fonce a.bouton.primary:active,
.fond.fonce a.bouton.orange:active,
.fond.fonce .bouton.primary a:active,
.fond.fonce .bouton.orange a:active,
.fond.fonce button.bouton.primary:active,
.fond.fonce button.bouton.orange:active {
	background: var(--primary-focus-color);
}

#btn_form:focus:focus-visible,
#btn_form_message:focus:focus-visible,
a.bouton.primary:focus:focus-visible,
.bouton.primary a:focus:focus-visible,
button.bouton.primary:focus:focus-visible,
.fond.fonce a.bouton.primary:focus:focus-visible,
.fond.fonce a.bouton.orange:focus:focus-visible,
.fond.fonce .bouton.primary a:focus:focus-visible,
.fond.fonce .bouton.orange a:focus:focus-visible,
.fond.fonce button.bouton.primary:focus:focus-visible,
.fond.fonce button.bouton.orange:focus:focus-visible {
    outline: var(--outline-width) solid rgba(var(--primary-rgb), .3) !important;
    box-shadow: 0 0 5px var(--primary-color) !important;
}


/* BOUTON VERT */
a.bouton.secondary,
a.bouton.vert,
.bouton.secondary a,
.bouton.vert a,
button.bouton.secondary,
button.bouton.vert,
body #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.mgbutton.moove-gdpr-infobar-allow-all,
body #moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.moove-gdpr-modal-allow-all {
	background: var(--secondary-color);
    color: var(--light-title-color) !important;
}

.fond.vert a.bouton.secondary,
.fond.vert a.bouton.vert,
.fond.vert .bouton.secondary a,
.fond.vert .bouton.vert a,
.fond.vert button.bouton.secondary,
.fond.vert button.bouton.vert {
	background: var(--primary-color);
}

a.bouton.secondary:hover,
a.bouton.vert:hover,
.bouton.secondary a:hover,
.bouton.vert a:hover,
button.bouton.secondary:hover,
button.bouton.vert:hover,
body #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.mgbutton.moove-gdpr-infobar-allow-all:hover,
body #moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.moove-gdpr-modal-allow-all:hover {
	background: var(--secondary-hover-color);
}

.fond.vert a.bouton.secondary:hover,
.fond.vert a.bouton.vert:hover,
.fond.vert .bouton.secondary a:hover,
.fond.vert .bouton.vert a:hover,
.fond.vert button.bouton.secondary:hover,
.fond.vert button.bouton.vert:hover {
	background: var(--primary-hover-color);
}

a.bouton.secondary:active,
a.bouton.vert:active,
.bouton.secondary a:active,
.bouton.vert a:active,
button.bouton.secondary:active,
button.bouton.vert:active,
body #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.mgbutton.moove-gdpr-infobar-allow-all:active,
body #moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.moove-gdpr-modal-allow-all:active {
	background: var(--secondary-focus-color);
}

.fond.vert a.bouton.secondary:active,
.fond.vert a.bouton.vert:active,
.fond.vert .bouton.secondary a:active,
.fond.vert .bouton.vert a:active,
.fond.vert button.bouton.secondary:active,
.fond.vert button.bouton.vert:active {
	background: var(--primary-focus-color);
}

a.bouton.secondary:focus:focus-visible,
a.bouton.vert:focus:focus-visible,
.bouton.secondary a:focus:focus-visible,
.bouton.vert a:focus:focus-visible,
button.bouton.secondary:focus:focus-visible,
button.bouton.vert:focus:focus-visible,
body #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.mgbutton.moove-gdpr-infobar-allow-all:focus:focus-visible,
body #moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.moove-gdpr-modal-allow-all:focus:focus-visible {
    outline: var(--outline-width) solid rgba(var(--secondary-rgb), .3) !important;
    box-shadow: 0 0 5px var(--secondary-color) !important;
}

.fond.vert a.bouton.secondary:focus:focus-visible,
.fond.vert a.bouton.vert:focus:focus-visible,
.fond.vert .bouton.secondary a:focus:focus-visible,
.fond.vert .bouton.vert a:focus:focus-visible,
.fond.vert button.bouton.secondary:focus:focus-visible,
.fond.vert button.bouton.vert:focus:focus-visible {
    outline: var(--outline-width) solid rgba(var(--primary-rgb), .3) !important;
    box-shadow: 0 0 5px var(--primary-color) !important;
}


/* BOUTON CONTOUR ORANGE */
a.bouton.contour.orange,
a.bouton.contour.primary,
.bouton.contour.orange a,
.bouton.contour.primary a,
button.bouton.contour.orange,
button.bouton.contour.primary,
.fond.fonce a.bouton.contour.orange,
.fond.fonce a.bouton.contour.primary,
.fond.fonce .bouton.contour.primary a,
.fond.fonce .bouton.contour.orange a,
.fond.fonce button.bouton.contour.orange,
.fond.fonce button.bouton.contour.primary,
body #moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.moove-gdpr-modal-save-settings {
	background: transparent !important;
	border: var(--border-width) solid var(--primary-color) !important;
	color: var(--primary-color) !important;
}

a.bouton.contour.orange:hover,
a.bouton.contour.primary:hover,
.bouton.contour.orange a:hover,
.bouton.contour.primary a:hover,
button.bouton.contour.orange:hover,
button.bouton.contour.primary:hover,
.fond.fonce a.bouton.contour.orange:hover,
.fond.fonce a.bouton.contour.primary:hover,
.fond.fonce .bouton.contour.orange a:hover,
.fond.fonce .bouton.contour.primary a:hover,
.fond.fonce button.bouton.contour.orange:hover,
.fond.fonce button.bouton.contour.primary:hover,
body #moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.moove-gdpr-modal-save-settings:hover {
	background: var(--primary-color) !important;
	border: var(--border-width) solid transparent !important;
	color: var(--light-title-color) !important;
}

a.bouton.contour.orange:active,
a.bouton.contour.primary:active,
.bouton.contour.orange a:active,
.bouton.contour.primary a:active,
button.bouton.contour.orange:active,
button.bouton.contour.primary:active,
.fond.fonce a.bouton.contour.orange:active,
.fond.fonce a.bouton.contour.primary:active,
.fond.fonce .bouton.contour.orange a:active,
.fond.fonce .bouton.contour.primary a:active,
.fond.fonce button.bouton.contour.orange:active,
.fond.fonce button.bouton.contour.primary:active,
body #moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.moove-gdpr-modal-save-settings:active  {
	background: var(--primary-hover-color) !important;
	border: var(--border-width) solid transparent !important;
	color: var(--light-title-color) !important;
}


/* BOUTON CONTOUR VERT */
a.bouton.contour.vert,
a.bouton.contour.secondary,
.bouton.contour.vert a,
.bouton.contour.secondary a,
button.bouton.contour.vert,
button.bouton.contour.secondary {
	background: transparent !important;
	border: var(--border-width) solid var(--secondary-color) !important;
	color: var(--secondary-color) !important;
}

.fond.vert a.bouton.contour.vert,
.fond.vert a.bouton.contour.secondary,
.fond.vert .bouton.contour.vert a,
.fond.vert .bouton.contour.secondary a,
.fond.vert button.bouton.contour.vert,
.fond.vert button.bouton.contour.secondary {
	border: var(--border-width) solid var(--primary-color) !important;
	color: var(--primary-color) !important;
}

a.bouton.contour.vert:hover,
a.bouton.contour.secondary:hover,
.bouton.contour.vert a:hover,
.bouton.contour.secondary a:hover,
button.bouton.contour.vert:hover,
button.bouton.contour.secondary:hover {
	background: var(--secondary-color) !important;
	border: var(--border-width) solid transparent !important;
	color: var(--dark-title-color) !important;
}

.fond.vert a.bouton.contour.vert a:hover,
.fond.vert a.bouton.contour.secondary a:hover,
.fond.vert .bouton.contour.vert:hover,
.fond.vert .bouton.contour.secondary:hover,
.fond.vert button.bouton.contour.vert:hover,
.fond.vert button.bouton.contour.secondary:hover {
	background: var(--primary-color) !important;
	border: var(--border-width) solid transparent !important;
	color: var(--light-title-color) !important;
}

a.bouton.contour.vert:active,
a.bouton.contour.secondary:active,
.bouton.contour.vert a:active,
.bouton.contour.secondary a:active,
button.bouton.contour.vert:active,
button.bouton.contour.secondary:active {
	background: var(--secondary-hover-color) !important;
	border: var(--border-width) solid transparent !important;
	color: var(--dark-title-color) !important;
}

.fond.vert a.bouton.contour.vert:active,
.fond.vert a.bouton.contour.secondary:active,
.fond.vert .bouton.contour.vert a:active,
.fond.vert .bouton.contour.secondary a:active,
.fond.vert button.bouton.contour.vert a:active,
.fond.vert button.bouton.contour.secondary a:active {
	background: var(--primary-hover-color) !important;
	border: var(--border-width) solid transparent !important;
	color: var(--light-title-color) !important;
}


/* BOUTON LIEN */
.bouton.link {
    text-align: initial;
}

a.bouton.link,
.bouton.link a,
button.bouton.link,
.fond.fonce a.bouton.link,
.fond.fonce .bouton.link a,
.fond.fonce button.bouton.link,
#content .elementor-post.type-post .elementor-post__read-more {
    background: transparent !important;
    border: none !important;
	border-radius: 0 !important;
    display: inline-block;
    line-height: 1;
    padding: 0 !important;
}

a.bouton.link span,
.bouton.link a span,
button.bouton.link span,
#content .elementor-post.type-post .elementor-post__read-more {    
    line-height: 1;
}

a.bouton.link span span,
.bouton.link a span span,
button.bouton.link span,
#content .elementor-post.type-post .elementor-post__read-more {
    color: inherit !important;
    display: flex;
    align-items: center;
    font-size: .9375rem;
    text-align: right;
}

a.bouton.link span span::after,
.bouton.link a span span::after,
button.bouton.link span::after,
#content .elementor-post.type-post .elementor-post__read-more::after {
    content: "\65";
    color: inherit !important;
    font-family: "icomoon" !important;
    font-size: 1.25rem;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-transform: lowercase !important;
    margin-inline-start: 15px;
    position: relative;
    inset: -1px auto auto auto;
	transition: transform .3s ease-out;
}

a.bouton.link:hover span span::after,
.bouton.link a:hover span span::after,
button.bouton.link:hover span::after,
#content .elementor-post.type-post .elementor-post__read-more:hover::after {
    transform: translateX(4px);
}


/* BOUTON LINK ORANGE */
a.bouton.primary.link,
a.bouton.orange.link,
.bouton.primary.link a,
.bouton.orange.link a,
button.bouton.primary.link,
button.bouton.orange.link,
#content .elementor-post.type-post .elementor-post__read-more {
    color: var(--primary-color) !important;
}

a.bouton.primary.link:hover,
a.bouton.orange.link:hover,
.bouton.primary.link a:hover,
.bouton.orange.link a:hover,
button.bouton.primary.link:hover,
button.bouton.orange.link:hover,
#content .elementor-post.type-post .elementor-post__read-more:hover {
    color: var(--primary-hover-color) !important;
}

a.bouton.primary.link:active,
a.bouton.orange.link:active,
.bouton.primary.link a:active,
.bouton.orange.link a:active,
button.bouton.primary.link:active,
button.bouton.orange.link:active,
#content .elementor-post.type-post .elementor-post__read-more:active {
    color: var(--primary-focus-color) !important;
}


/* BOUTON LINK VERT */
a.bouton.secondary.link:hover,
a.bouton.vert.link:hover,
.bouton.secondary.link a:hover,
.bouton.vert.link a:hover,
button.bouton.secondary.link:hover,
button.bouton.vert.link:hover {
    color: var(--primary-hover-color) !important;
}

a.bouton.secondary.link:active,
a.bouton.vert.link:active,
.bouton.secondary.link a:active,
.bouton.vert.link a:active,
button.bouton.secondary.link:active,
button.bouton.vert.link:active {
    color: var(--primary-focus-color) !important;
}


/* ICON */
.bouton.icon .elementor-button-wrapper {
    display: table;
}

.bouton.icon a {
    color: var(--dark-title-color);
    aspect-ratio: 1 / 1;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    filter: initial;
    padding: 16px !important;
}

.bouton.icon a > span {
    font-size: 1.5rem;
    letter-spacing: 0 !important;
}

.bouton.icon a span span {
    clip: rect(0,0,0,0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}



/*--------- ARCHIVES ---------*/
body:not(.single-post):not(.post-type-archive-recrutement):not(.single-recrutement) #content > .wrapper {
    overflow: hidden;
}

#content .posts-list {
	display: grid;
	grid-template-columns: repeat(var(--items-by-row), minmax(0,1fr));
	gap: calc(var(--items-margin) * 2.5) var(--items-margin);
}

#content .posts-list article .thumbnail {
    border-radius: var(--border-radius);
	aspect-ratio: 16 / 9;
    width: 100%;
    height: auto;
	position: relative;
    overflow: hidden;
}

#content .posts-list article .thumbnail a,
#content .posts-list article .thumbnail a picture,
#content .posts-list article .thumbnail a img {
    display: flex;
    width: 100%;
    height: 100%;
}

#content .posts-list article .thumbnail a {
    position: absolute;
    inset: 0 auto auto 0;
}

#content .posts-list article .thumbnail a img {
    object-fit: cover;
    transition: all .3s ease-in-out;
}

#content .posts-list article .thumbnail a:hover img,
#content .posts-list article .thumbnail a:focus:focus-visible img {
    transform: scale(1.025);
}

#content .posts-list article .thumbnail a:active img {
    transform: scale(1.05);
}

#content .posts-list article .thumbnail + p.title {
    margin: 1.875rem 0 0 0;
}

#content .posts-list article p.title + p {
    margin-block-start: .625rem;
}

#content .posts-list article p.title,
#content .posts-list article p.title a {
    line-height: 1.3;
}

#content .posts-list article p.title a {
	color: var(--dark-title-color);
    font-family: var(--font-text);
	font-size: 1.25rem;
    font-weight: 600;
}

#content .posts-list article p.title a:hover {
	color: var(--primary-color);
}

#content .posts-list article p.title a:active {
	color: var(--primary-hover-color);
}

#content .posts-list article .title + .bouton {
    margin: 1rem 0 0 0;
}


/* Pagination */
.pagination-block{
	margin: 3.75rem 0 0 0;
}

.pagination-block,
.pagination-block .pagination {
	display: flex;
	align-items: center;
	justify-content:center;
	flex-wrap: wrap;
	list-style: none;
	padding: 0;
}

#content .pagination-block .pagination,
#content .pagination-block .pagination li {
	padding: 0;
	margin: 0;
}

#content .pagination-block .pagination li {
	margin-inline-start: 20px;
}

#content .pagination-block .pagination li:first-child {
	margin-inline-start: 0;
}

#content .pagination-block .pagination li.disabled,
#content .pagination-block .pagination li::before {
	display: none;
}

#content .pagination-block .pagination li a,
#content .pagination-block .pagination li button,
#content .pagination-block .pagination li span {
	background: transparent;
	color: var(--light-title-color);
	display: flex;	
	padding: 0;
	margin: 0;
}

#content .pagination-block .pagination li a:hover {
	color: var(--primary-color);
}

#content .pagination-block .pagination li a:active {
	color: var(--primary-hover-color);
}

#content .pagination-block .pagination li a,
#content .pagination-block .pagination li a i,
#content .pagination-block .pagination li a span {
	line-height: 1;
	padding: 0;
}

#content .pagination-block .pagination li a {
	display: flex;
	align-items: center;
}

#content .pagination-block .pagination li.current span {
	color: var(--primary-color);
}

#content .pagination-block .pagination li a span {
	font-weight: 500;
}

#content .pagination-block .pagination li.prev a span {
	margin-inline-start: 10px;
}

#content .pagination-block .pagination li.next a span {
	margin-inline-end: 10px;
}


/*--------- TEASES ---------*/
#content .tease a.thumbnail {
    border-radius: var(--border-radius);
    display: flex;
    overflow: hidden;
}

#content .tease a.thumbnail picture,
#content .tease a.thumbnail img,
#content .tease a.thumbnail svg {
    display: flex;
    width: 100%;
    height: 100%;
}

#content .slider_products .tease-produits {
    position: relative;
}

#content .slider_products .tease-produits::before {
    content: "";
    background: var(--essentiels-petits-prix) center center no-repeat;
    background-size: contain;
    display: flex;
    aspect-ratio: 301 / 42;
    width: 75.5%;
    height: auto;
    pointer-events: none;
    position: absolute;
    inset: 0 auto auto 0;
    transform: rotate(-7deg) translate(-6%,60%);
    transform-origin: top right;
    z-index: 1;
}

#content .tease a.thumbnail img,
#content .tease a.thumbnail svg {
    object-fit: cover;
    transition: all .3s ease-in-out, outline .1s ease-in-out !important;
}

#content .tease a.thumbnail:hover img,
#content .tease a.thumbnail:hover svg {
    transform: scale(1.025);
}

#content .tease a.thumbnail:active img,
#content .tease a.thumbnail:active svg {
    transform: scale(1.05);
}

#content .tease .description time {
    color: var(--secondary-color);
    font-size: .625rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0;
    text-transform: uppercase;
}

#content .tease .description a.title {    
    color: var(--dark-title-color);
    display: table;
}

#content .tease .description a.title:hover {
    color: var(--primary-color);
}

#content .tease .description a.title:active {
    color: var(--primary-hover-color);
}

#content .fond.fonce .tease .description a.title {    
    color: var(--light-title-color);
}

#content .fond.fonce .tease .description a.title:hover {
    color: var(--secondary-color);
}

#content .fond.fonce .tease .description a.title:active {
    color: var(--secondary-hover-color);
}

#content .tease .description a.title p {
    color: inherit !important;
}

#content .tease .description time + a.title,    
#content .tease .description .title + p {    
    margin-block: .9375rem 0;
}


/* ACTUS */
#content .tease-post,
#content .tease-post .description,
#content .elementor-post.type-post,
#content .elementor-post.type-post .elementor-post__text {
    display: flex;
    flex-flow: column;
}

#content .tease-post {
    border-radius: var(--border-radius);
    overflow: hidden;
    height: 100%;
}

#content .tease-post .description {
    background: var(--background-grey);
}

#content .fond.gris .tease-post .description {
    background: var(--background-color);
}

#content .tease-post a.thumbnail,
#content .elementor-post.type-post a.elementor-post__thumbnail__link {
    border-radius: 0;
    aspect-ratio: 280 / 196;
    margin: 0;
}

#content .elementor-post.type-post a.elementor-post__thumbnail__link {
    width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
}

#content .elementor-post.type-post a.elementor-post__thumbnail__link .elementor-post__thumbnail {
    position: absolute;
    padding: 0;
}

#content .elementor-post.type-post a.elementor-post__thumbnail__link .elementor-post__thumbnail,
#content .elementor-post.type-post a.elementor-post__thumbnail__link picture,
#content .elementor-post.type-post a.elementor-post__thumbnail__link img {
    width: 100%;
    height: 100%;
}

#content .tease-post a.thumbnail img,
#content .elementor-post.type-post a.elementor-post__thumbnail__link img {
    border-radius: 0;
    position: static;
    transform: initial;
}

#content .tease-post .description,
#content .elementor-post.type-post .elementor-post__text {
    flex-grow: 1;
    padding: 20px;
}

#content .tease-post .description .title + p {
    line-height: 1.4;
}

#content .tease-post .description p + .bouton {
    margin-block-start: 1.5rem;
}

#content .tease-post .description .bouton,
#content .elementor-post.type-post .elementor-post__read-more {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    flex-grow: 1;
}

#content .elementor-post.type-post .elementor-post__read-more {
    align-items: center;
}


/* PRODUITS */
#content .tease-produits {
    box-shadow: 0 2px 7px 0 rgba(var(--dark-text-color), .25);
    width: 100%;
    height: 100%;
    padding: 24px;
}

#content .tease-produits .description,
#content .tease-produits .description .price {
    margin-block-start: 1rem;
}

#content .tease-produits .description .title,
#content .tease-produits .description .title span {
    color: var(--dark-title-color);
    font-family: var(--font-title);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: 0;
    text-transform: uppercase;
}

#content .tease-produits .description .title {
    display: flex;
    flex-flow: column;
    align-items: center;
    font-size: var(--h2-font-size);
    margin-block-end: .625rem;
}

#content .tease-produits .description .title span {
    font-size: var(--h4-font-size);
}

#content .tease-produits .description .excerpt {
    line-height: 1.3;
    margin: 0 !important;
}

#content .tease-produits .description .price > p:not(:last-child) {
    margin-block-end: .625rem;
}

#content .tease-produits .description .price > p:not(.price_weight) {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 12px;
}

#content .tease-produits .description .price span,
#content .tease-produits .description .price .price_weight {
    color: var(--dark-title-color);
    display: table;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: 0;
}

#content .tease-produits .description .price span {
    white-space: nowrap;
}

#content .tease-produits .description .price .amount {
    font-size: var(--h2-font-size);
}

#content .tease-produits .description .price .format {
    font-size: var(--h4-font-size);
}

#content .tease-produits .description .price .price_weight {
    font-size: var(--text-font-size);
    margin-inline: auto;
}


/* BACK TO TOP */
#back-to-top {
	background: transparent;
	border: var(--border-width) solid var(--primary-color);
	border-radius: calc(var(--border-radius) / 2);
	color: var(--primary-color);
	cursor: pointer;
    font-size: .625rem;
	width: 40px;
	height: 40px;
	padding: 0;
	position: fixed;
	inset: auto 30px 30px auto;
    z-index: 50;
}

#back-to-top:hover {
	background: var(--primary-color);
	border: var(--border-width) solid transparent;
	color: var(--light-title-color);
}

#back-to-top:active {
	background: var(--primary-hover-color);
	border: var(--border-width) solid transparent;
	color: var(--light-title-color);
}

#back-to-top:focus:focus-visible {
    outline: var(--outline-width) solid rgba(var(--primary-rgb), .3) !important;
    box-shadow: 0 0 5px var(--primary-color) !important;
}

#back-to-top.hide {
	display: none;
}

#back-to-top.hide i {
    color: inherit;
}





/**
 * ----------------------------------------
 * ------------- ANIMATIONS ---------------
 * ----------------------------------------
 */





/*--------------------------------------------*/
/*
/*-------------- SITE PRIX'MIAM --------------*/
/*
/*--------------------------------------------*/

/*--------- HEADER ---------*/
#pre-header {
    background: var(--primary-color);
	overflow: auto;
}

#pre-header .container {
	padding-block: 16px;
}

#pre-header p {
	color: var(--light-title-color);
	font-size: .75rem;
	font-weight: 800;
    line-height: 1.3;
	text-align: center;
    text-transform: uppercase;
}


/* HEADER */
.sr-only, 
.screen-reader-text, 
.screen-reader-text span {
	position: absolute;
	inset: -10000em auto auto auto;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0,0,0,0);
	border: 0;
}

header{
	background: transparent;
	position: relative;
    z-index: 5;
}

header .wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
    padding-block: 32px;
}

header .nav-main ul {
	display: flex;
	align-items: center;
	list-style: none;
}

header .nav-main ul li a {
	color: var(--dark-title-color);
    display: flex;
	font-family: var(--font-title);
	font-size: .9375rem;
	font-weight: 400;
    line-height: 1;
	letter-spacing: .03em;
	text-transform: uppercase;
    white-space: nowrap;
}

header .nav-main ul li a:hover {
	color: var(--primary-color);
}

header .nav-main ul li a:active {
	color: var(--primary-hover-color);
}

header nav ul > li.menu-item > a[href="#"] {
    cursor: default;
}

header .toggle-nav {
	background: none;
	border: 0;
	cursor: pointer;
	height: 20px;
	width: 30px;
	flex-direction: column;
	justify-content: space-between;
	padding: 0;
}

header #nav-wrapper .toggle-nav {
	position: absolute;
    inset: 102px 7.5% auto auto;
}

header .toggle-nav .line {
	background: var(--primary-color);
	border-radius: 10px;
	display: block;
	height: 2px;
	width: 100%;
    letter-spacing: 0 !important;
    transform-origin: center center;
    position: relative;
}

header .toggle-nav .line1 {
	transition: transform .4s ease-in-out;
}

header .toggle-nav .line2 {
	transition: transform .2s ease-in-out;
}

header .toggle-nav .line3 {
	transition: transform .4s ease-in-out;
}

header #nav-wrapper.active .toggle-nav .line1 { 
    top: 50%; 
    transform: translateY(-50%) rotate(45deg);
}

header #nav-wrapper.active .toggle-nav .line2 {
	transform: scaleY(0);
}

header #nav-wrapper.active .toggle-nav .line3 {
    bottom: 50%; 
    transform: translateY(50%) rotate(-45deg);
}

header .wrapper .logo img {
    aspect-ratio: var(--logo-ratio);
    height: 65px;
}

header .menu_wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
    position: relative;
}

header .menu_wrapper a.logo-link {
    display: flex;
}

header .menu_wrapper a.logo-link img {
    aspect-ratio: var(--logo-ratio);
    width: auto;
    transition: all .3s ease-in-out;
}

header .menu_wrapper a.logo-link:focus:not(:focus-visible) img {
    opacity: .85;
}

header #nav-main-desktop > ul > li:not(:first-child):not(.bouton) {
    display: flex;
    align-items: center;
}

header #nav-main-desktop > ul > li.menu-item-has-children {
    outline: none !important;
    position: relative;
    z-index: 111;
}

header #nav-main-desktop > ul > li.menu-item-has-children > a {
    align-items: center;
}

header #nav-main-desktop > ul > li.menu-item-has-children > a span.icon-dropdown-arrow {
    color: inherit;
    font-size: .625rem;
    margin-inline-start: 12px;
}

header #nav-main-desktop > ul > li.menu-item-has-children > ul {
    background: var(--background-color);
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    min-width: calc(100% + 40px);
    padding-block: 20px;
    opacity: 0;
    position: absolute;
    inset: auto auto 0 -20px;
    transform: translateY(100%);
    z-index: 111;
    pointer-events: none;
    transition: all .3s ease-in-out;
}

header #nav-main-desktop > ul > li.menu-item-has-children:hover > ul,
header #nav-main-desktop > ul > li.menu-item-has-children:focus-within > ul {
    opacity: 1;
    pointer-events: initial;
}

header #nav-main-desktop > ul > li.menu-item-has-children > ul li {
    display: flex;
    margin-block: 8px;
    padding-inline: 20px;
}

header #nav-main-desktop > ul > li.menu-item-has-children > ul li:first-child {
    margin-block-start: 0;
}

header #nav-main-desktop > ul > li.menu-item-has-children > ul li:last-child {
    margin-block-end: 0;
}

header #nav-main-desktop > ul > li.menu-item-has-children > ul li a {
    font-size: 1rem;
    font-weight: 500;
    white-space: nowrap;
}



/*--------- FOOTER ---------*/
#footer {
    position: relative;
}

#footer .section_app .logos .elementor-widget-wrap {
    margin: -12px 0 0 -12px;
}

#footer .section_app .logos .elementor-widget-image {
    width: auto;
    margin: 12px 0 0 12px;
}

#footer .section_app .logos .elementor-widget-image a img {
    width: auto;
}


/* PRE-FOOTER */
#pre-footer {
	color: var(--dark-title-color);
	padding-block: 40px;
}

#footer-content .wrapper {
    display: flex;
    flex-flow: column;
    align-items: center;
}

#pre-footer .wrapper .column ul,
#footer-content .wrapper .column ul {
	list-style: none;
	padding: 0;
}


/* FOOTER CONTENT */
#footer-content {
	padding-block: var(--padding-block);
    position: relative;
}

#footer-content::before {
	content: "";
    background: var(--secondary-color);
    display: flex;
    width: 100%;
    height: 36px;
    mask: var(--border) no-repeat;
    mask-size: 100% 100%;
    pointer-events: none;
    position: absolute;
    inset: 0 auto auto 0;
    transform: translateY(-50%);
    z-index: 1;
}

#footer-content .wrapper .column:not(:first-child) {
    margin-block-start: var(--margin-block);
}

#footer-content .wrapper .column:first-child p {
    color: var(--light-title-color) !important;
    font-size: 1.125rem;
    font-weight: 400;
    text-align: center;
    text-transform: uppercase;
}

#footer-content .wrapper .column a {
    display: table;
}

#footer-content .wrapper .column a img {
    aspect-ratio: var(--logo-ratio);
    width: 130px;
    max-width: 100%;
    height: auto;
}

#footer-content .wrapper .column,
#footer-content .wrapper .column ul {
    display: flex;
    align-items: center;
}

#footer-content .wrapper .column ul {
    margin: -24px 0 0 -24px;
}

#footer-content .wrapper .column ul li {
    margin: 24px 0 0 24px;
}

#footer-content .wrapper .column ul li a {
    color: var(--light-title-color);
    font-family: var(--font-title);
    font-size: .9375rem;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: .03em;
    text-transform: uppercase;
}

#footer-content .wrapper .column ul li a:hover {
    color: rgba(var(--light-text-color), .85);
}

#footer-content .wrapper .column ul li a:active {
    color: rgba(var(--light-text-color), .75);
}


/* POST FOOTER */
#post-footer > .container {
	padding-block-end: 1.875rem;
}

#post-footer .column {
    display: flex;
    justify-content: center;
    width: 100%;
}

#post-footer p,
#post-footer a {
    color: var(--light-title-color);
    font-size: .875rem;
	font-weight: 400;
    line-height: 2.5;
    letter-spacing: var(--letter-spacing);
    text-align: center;
}

#post-footer a:hover {
    color: rgba(var(--light-text-color), .85);
}

#post-footer a:active {
    color: rgba(var(--light-text-color), .75);
}



/*--------- HOMEPAGE ---------*/
#content .section_mea .elementor-widget-wrap {
    justify-content: center;
    min-height: 650px;
    padding-block: var(--padding-block) !important;
}

#content .section_mea .elementor-widget-wrap > div {
    max-width: 85%;
}

#content .section_mea .elementor-widget-wrap::before {
    content: "";
    background: rgba(var(--dark-text-color), .4);
    display: flex;
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
}

#content .section_mea .elementor-widget-wrap h1 {
    color: var(--secondary-color);
    display: flex;
    flex-flow: column;
    align-items: center;
}

#content .section_mea .elementor-widget-wrap h1 span,
#content .section_mea .elementor-widget-wrap .elementor-widget-heading p {
    color: var(--light-title-color) !important;
    font-family: var(--font-title);
    font-weight: 400;
    letter-spacing: 0;
}

#content .section_mea .elementor-widget-wrap h1 span {
    font-size: 4.6875rem;
    line-height: 1;
    margin-block-end: .9375rem;
}

#content .section_mea .elementor-widget-wrap .elementor-widget-heading p {
    font-size: 1.875rem;
    text-transform: uppercase;
}

#content .section_mea .elementor-widget-html {
    display: table;
    height: auto;
    position: absolute;
}

#content .section_mea .elementor-widget-html:first-child {
    aspect-ratio: 342 / 254;
    width: 19.5%;
    inset: 0 0 auto auto;
    transform: translate(-20%, 24%);
    transform-origin: top right;
}

#content .section_mea .elementor-widget-html:last-child {
    aspect-ratio: 199 / 180;
    width: 12.5%;
    inset: auto auto 0 0;
    transform: translate(30%, -30%);
    transform-origin: bottom left;
}

#content .section_mea .elementor-widget-html svg {
    width: 100%;
    height: 100%;
}


/* PRODUITS */
#content .section_produits_cat .elementor-widget-image {
    border-radius: var(--border-radius);
    aspect-ratio: 10 / 7;
    width: 100%;
    height: auto;
    overflow: hidden;
}

#content .section_produits_cat .elementor-widget-image .elementor-widget-container,
#content .section_produits_cat .elementor-widget-image a,
#content .section_produits_cat .elementor-widget-image img {
    width: 100%;
    height: 100%;
}

#content .section_produits_cat .elementor-widget-image img {
    object-fit: cover;
    transition: all .3s ease-in-out, outline .1s ease-in-out !important;
}

#content .section_produits_cat .elementor-widget-image a:hover img,
#content .section_produits_cat .elementor-widget-image a:focus:focus-visible img {
    transform: scale(1.025);
}

#content .section_produits_cat .elementor-widget-image a:active img {
    transform: scale(1.05);
}

#content #content-details .section_produits_cat .elementor-widget-image + .elementor-widget-heading {
    margin-block-start: var(--margin-h4) !important;
}


/* ACTUALITÉS */
#content .section_actus .elementor-widget-heading.center + .elementor-widget-shortcode .elementor-widget-container > p {
    text-align: center;
}

#content .section_actus .elementor-widget-heading.center + .elementor-widget-shortcode .elementor-widget-container > p:has(+ .elementor-shortcode) {    
    margin: 0;
}



/*--------- NOTRE MARQUE ---------*/
#content .section_reassurances > .elementor-container:has(.elementor-col-33) {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 3.5rem 0;
}

#content .section_reassurances > .elementor-container > .elementor-col-33 {
    width: 100% !important;
    margin: 0 !important;
    padding-inline: 16px;
}

#content .section_reassurances > .elementor-container >  .reassurance .elementor-widget-icon + .elementor-widget-heading {
    margin-block-start: 1.5rem !important;
}



/*--------- ACTUALITÉS ---------*/
.blog #content .archive-news,
.post-type-archive-store #content .archive-stores {
    margin-block-start: var(--margin-h2);
}



/*--------- MAGASINS ---------*/
.post-type-archive-store #content #stores-map {
    border-radius: var(--border-radius);
    aspect-ratio: 3 / 1;
    width: 100%;
    height: auto;
    overflow: hidden;
}

.post-type-archive-store #content #stores-map .leaflet-popup {
    background: var(--background-color);
}



/*--------- SINGLE MAGASIN ---------*/
.single-store #content .section_partenaire {
    margin-block-start: var(--margin-section)
}

.single-store #content .section_magasin .block_txt .elementor-widget-text-editor {
    margin: 0 !important;
}

.single-store #content .section_magasin .block_txt .titre {
    color: var(--secondary-color);
    display: flex;
    align-items: baseline;
    font-family: var(--font-title);
    font-size: var(--h4-font-size);
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 0;
    text-transform: uppercase;
    margin-block-end: .625rem;
}

.single-store #content .section_magasin .block_txt .titre::before {
    color: inherit;
    font-family: "icomoon" !important;
    font-size: var(--h4-font-size);
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: 0;
    text-transform: lowercase !important;
    margin-inline-end: 8px;
    
}

.single-store #content .section_magasin .block_txt .titre.adresse::before {
    content: "\69";
}

.single-store #content .section_magasin .block_txt .titre.contact::before {
    content: "\6a";
}

.single-store #content .section_magasin .block_txt .titre.horaires::before {
    content: "\6b";
}

.single-store #content .section_magasin .block_txt p:not(.titre) + .titre {
    margin-block-start: 2rem;
}

.single-store #content .section_magasin .block_txt p:not(.titre),
.single-store #content .section_magasin .block_txt ul.hours li span {
    color: var(--dark-title-color);
    font-weight: 700;
}

.single-store #content .section_magasin .block_txt ul.hours li span {
    text-transform: capitalize;
}

.single-store #content .section_avis .store-reviews {
    margin-block-end: var(--margin-block);
}

.single-store #content .section_avis .store-reviews-average {
    display: flex;
    flex-flow: column;
    align-items: center;
    width: 100% !important;
    max-width: initial !important;
    text-align: center;
}

.single-store #content .section_avis .store-reviews-average::before {
    content: "";
    background: var(--logo-google);
    background-size: contain !important;
    display: flex;
    aspect-ratio: 122 / 40;
    width: 66%;
    height: auto;
    max-width: 122px;
    margin-block-end: .3125rem;
} 

.single-store #content .section_avis .store-reviews-average p {
    margin-block-start: var(--margin-h3);
}

.single-store #content .section_avis .store-reviews .store-review .store-review-header {
    display: flex;
    align-items: center;
    line-height: 1;
}

.single-store #content .section_avis .store-reviews .store-review .store-review-header .store-review-initials {
    background: var(--dark-title-color);
    border-radius: 100%;
    color: var(--light-title-color);
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    width: 50px;
    height: auto;
    font-size: 2rem;
    letter-spacing: 0;
    text-align: center;
    margin-inline-end: 16px;
}

.single-store #content .section_avis .store-reviews .store-review .store-review-header .store-review-author {
    font-family: var(--font-text);
    font-size: var(--text-font-size);
    font-weight: 800 !important;
    margin-block-end: .3125rem;
    text-align: left;
    text-transform: initial;
}

.single-store #content .section_avis .store-reviews .store-review .store-review-header .store-review-author br {
    display: none;
}

.single-store #content .section_avis .store-reviews .store-review .store-review-header time {
    color: rgba(var(--dark-text-color), .4);
    font-size: .8125rem;
    letter-spacing: 0;
}

.single-store #content .section_avis .store-reviews .store-review .store-review-stars {
    margin: 1rem 0;
}

.single-store #content .section_avis .store-reviews .store-review p:not(.h4) {
    font-size: .75rem;
}

/*--------- PRODUITS ---------*/
#content .owl-carousel.slider_products .owl-stage-outer .owl-stage {
    padding-block: 8px;
}

#content .slider_products:not(.owl-loaded) {
    display: flex;
    align-items: stretch;
    overflow: hidden;
}

#content .slider_products .owl-stage-outer .owl-stage {
    display: flex;
    align-items: stretch;
}

#content .slider_products .owl-stage-outer .owl-stage, 
#content .slider_products .item {
    height: 100%;
}

#content .slider_products > .item {
    width: 33.333%;
    flex-shrink: 0;
    padding: 0 16px;
}



/*--------- CONTACT ---------*/
#content .elementor-message {
	border-radius: var(--border-radius);
    display: flex;
	font-size: .875rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: var(--letter-spacing);
    padding: 12px 24px;
	width: 100%;
    margin: 1.25rem 0 0 0;
}

#content .elementor-message.elementor-message-success {
	background: rgba(var(--alert-success-rgb), .15);
	color: var(--alert-success-color);
}

#content .elementor-message.elementor-message-danger {
	background: rgba(var(--alert-danger-rgb), .15);
	color: var(--alert-danger-color);
}

.elementor-field-group {
	position: relative;
}

.elementor-field-group .elementor-message {
    font-size: .75rem;
	margin: 0;
    padding: 5px;
}


/* FORMULAIRE */
#content .elementor-widget-form .elementor-form-fields-wrapper {
	margin: 0 -5px;
}

#content .elementor-widget-form .elementor-field-group {
	padding: 0 5px !important;
}

#content .elementor-widget-form .elementor-field-label {
    font-size: var(--text-small-size);
	font-weight: 500;
    margin-block-end: .625rem;
	padding: 0;
}

#content .elementor-widget-form .elementor-field-group-rgpd {
	margin-block-end: 0 !important;
}




 
/* ----------------------------------- */
/*
/* ----------- RESPONSIVE ------------ */
/*
/* ----------------------------------- */

@media screen and (min-width: 1401px) {

	/*----- HEADER -----*/
    header #nav-main-desktop > ul > li.bouton {
        margin-inline-start: 16px;
    }
    
    header #nav-main-desktop > ul > li:not(:first-child):not(.bouton)::before {
        content: "";
        background: var(--secondary-color);
        display: flex;
        aspect-ratio: 2 / 23;
        width: 2px;
        height: auto;
        mask: var(--trait) no-repeat;
        mask-size: 100% 100%;
        margin-inline: 16px;
    }

    header #nav-main-desktop > ul > li:not(:first-child):not(.bouton):nth-child(2n - 1)::before {
        transform: scaleX(-1);
    }
    

    /*----- SINGLE MAGASIN -----*/
    .single-store #content .section_magasin .block_txt > .elementor-widget-wrap {
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 0 12%;
    }

    .single-store #content .section_magasin .block_txt .elementor-widget-html {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        grid-column: 1 / 2;
        grid-row: 1 / 3;
        width: auto;
    }
}



@media screen and (min-width: 1401px) and (max-width: 1700px) {
    
    /*----- SINGLE MAGASIN -----*/
    .single-store #content .section_magasin .block_txt svg {
        width: 225px;
    }
}



@media screen and (min-width: 1251px) {

	/*----- HEADER -----*/
	header #nav-wrapper.menu_mobile {
		display: none;
	}
}



@media screen and (min-width: 1251px) and (max-width: 1400px) {
    
	/*----- HEADER -----*/
    header .nav-main ul {
        gap: 20px;
    }
}



@media screen and (min-width: 1251px) and (max-width: 1500px) {
        
    /*----- ACTUALITÉS -----*/
    #content .posts-list article .thumbnail + p.title {
        margin-block-start: 1.25rem;
    }

    #content .posts-list article p.title a {
        font-size: 1.125rem;
    }

    #content .posts-list article .title + .bouton {
        margin-block-start: .625rem;
    }

    #content .posts-list article .bouton span {
        font-size: .9375rem;
    }

    #content .posts-list article .bouton span::after {
        font-size: .75rem;
        margin-inline-start: 12px;
    }
}



@media screen and (max-width: 1250px) {

	/*----- HEADER -----*/
	.toggle-nav {
		display: flex;
	}

	header #nav-wrapper #nav-main {
		position: fixed;
		width: 100%;
		height: 100vh;
		height: fill-available;
        height: -webkit-fill-available;
		inset: 0 0 auto 0;
		z-index: -1;
		background-color: var(--background-dark);
		visibility: hidden;
		opacity: 0;
		transform: translateX(100%);
		transition: all .3s ease-out;
		overflow: auto;
		scrollbar-color: rgba(var(--dark-text-color), 0) rgba(var(--dark-text-color), 0);
		scrollbar-width: thin;
	}

	header #nav-wrapper #nav-main::-webkit-scrollbar {
    	background: rgba(var(--dark-text-color), 0);
	}

	header #nav-wrapper #nav-main::-webkit-scrollbar-thumb {
		background: rgba(var(--dark-text-color), 0);
	}

	header #nav-wrapper.active #nav-main{
    	background: var(--background-color);
		opacity: 1;
		transform: translateX(0);
		visibility: visible;
		z-index: 999999;
	}

	header #nav-wrapper.active .toggle-nav {
		z-index: 1000;
	}
	
	header #nav-wrapper-desktop {
		display: flex;
        align-items: center;
        margin-inline-start: 30px;
	}
	
	header #nav-main-desktop {
		display: none;
	}
	
	header #nav-wrapper-desktop .widget_block {
		margin-inline-end: 30px;
	}

	header #nav-wrapper .nav-main {
		display: flex;
		justify-content: center;
		align-items: center;
	}
    
    header #nav-wrapper .nav-main .wrapper_menu_mobile {
        width: 100%;
        height: 100%;
    }
    
    header #nav-wrapper.menu_mobile .nav-main .wrapper_menu_mobile > .menu_mobile {
        box-sizing: border-box;
        display: flex;
        flex-flow: column;
        align-items: center;
        min-height: 100%;
        padding-block: 96px;
    }
    
    header #nav-wrapper.menu_mobile .nav-main .wrapper_menu_mobile > .menu_mobile > ul {
        display: flex;
        flex-flow: column;
        width: auto;
        margin: auto;
    }

	header #nav-wrapper .nav-main ul {
		display: block;
		padding: 0;
	}

	header #nav-wrapper .nav-main ul > li {
        display: flex;
        flex-flow: column;
        align-items: center;
        line-height: 1;
	}

	header #nav-wrapper .nav-main ul > li.bouton,
	header #nav-wrapper .nav-main ul > li.bouton a {
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        width: 100%;
	}

	header #nav-wrapper .nav-main ul > li:not(:first-child):not(:last-child) {
        margin-block-start: var(--margin-block);
	}

	header #nav-wrapper .nav-main ul > li:last-child {
        margin-block-start: var(--margin-h4);
	}
    
    header #nav-wrapper .nav-main ul > li > a {
        text-align: center;
    }
    
    header #nav-wrapper .nav-main > .wrapper_menu_mobile > .menu_mobile > ul > li:not(.bouton) > a {
        font-size: 1.25rem;
    }
    
    header #nav-wrapper .nav-main > .wrapper_menu_mobile > .menu_mobile > ul > li:not(.bouton) > a .arrow_down {
        font-size: 1rem;
        margin-inline-start: 16px;
    }
    
    header #nav-wrapper li.bouton.orange:last-child::after,    
    header #nav-wrapper .nav-main ul li.menu-item-has-children > ul {
        display: none;
    }    
    
    header #nav-wrapper .nav-main ul li.menu-item-has-children.open > ul {
        display: flex;
        flex-flow: column;
        align-items: center;
        margin-top: .75rem;
    }

	header #nav-wrapper .nav-main ul li.menu-item-has-children ul > li {
        margin-block-start: 1.5rem;
	}

	header #nav-wrapper .nav-main ul li.menu-item-has-children ul li a {
        font-size: 1.125rem;
        font-weight: 400;
	}
}



@media screen and (min-width: 1141px) {
    
    .show-tablet {
        display: none !important;
    }
        
    html.open-menu {
        padding-right: 8px;
    }
    
    #content .owl-carousel {
        cursor: grab;
    }

    #content .owl-carousel:active {
        cursor: grabbing;
    }
    
    #content .slider_actus .owl-dots,
    #content .owl-carousel.slider_products .owl-dots {
        display: none;
    }
    
    #content .owl-carousel.slider_products .owl-nav:not(.disabled) {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        pointer-events: none;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    
    #content .owl-carousel.slider_products .owl-nav button {
        appearance: none;
        background: transparent;
        border: none;
        border-radius: 0;
        cursor: pointer;
        pointer-events: initial;
        position: relative;
        padding: 0;
    }
    
    #content .owl-carousel.slider_products .owl-nav button.owl-prev {
        transform: translateX(calc(-100% - 25px));
    }
    
    #content .owl-carousel.slider_products .owl-nav button.owl-next {
        transform: translateX(calc(100% + 25px));
    }
    
    #content .owl-carousel.slider_products .owl-nav button span::before {
        color: var(--dark-title-color);
        font-family: "icomoon" !important;
        font-size: 3.5rem;
        font-weight: 400 !important;
        line-height: 1 !important;
        text-transform: lowercase !important;
        transition: all .3s ease-in-out;
    }
    
    #content .owl-carousel.slider_products .owl-nav button.owl-prev span::before {
        content: "\64";
        left: 50px;
        transform: translateX(-100%);
    }
    
    #content .owl-carousel.slider_products .owl-nav button.owl-next span::before {
        content: "\63";
        right: 50px;
        transform: translateX(100%);
    }

    #content .quote {
        max-width: 375px;
    }

    .right .elementor-widget-container {
        align-items: flex-end;
    }

    .right h1, 
    .right h2, 
    .right.h2, 
    .right .h2,
    .right.h2 .elementor-heading-title, 
    .right h3, 
    .right.h3, 
    .right .h3,
    .right.h3 .elementor-heading-title, 
    .right h4, 
    .right.h4, 
    .right .h4,
    .right.h4 .elementor-heading-title, 
    .right h5, 
    .right.h5, 
    .right .h5,
    .right.h5 .elementor-heading-title {
        align-items: flex-end;
        text-align: right;
    }

    .right .bouton,
    .bouton.right {
        display: flex;
        justify-content: flex-end;
    }

    #content .right .elementor-widget-heading:not(.h3):not(.h4):not(.center):not(.right):not(.inodia-icons):has(h2) {
        align-items: flex-end;
    }
    
    
    /*----- FOOTER -----*/
    #footer-content .wrapper .column .widget + .widget {
        margin-inline-start: 50px;
    }
    
    
    /*----- SINGLE MAGASIN -----*/
    .single-store #content .section_avis .store-reviews {
        display: grid;
        grid-template-columns: minmax(0,1fr) minmax(0,3fr);
        align-items: center;
        column-gap: 32px;
        margin-block-end: var(--margin-block);
    }
}



@media screen and (min-width: 1141px) and (max-width: 1500px) {    
    
    /*----- ACTUALITÉS -----*/
    #content .elementor-widget-posts .elementor-posts-container {
        grid-template-columns: repeat(3, minmax(0,1fr));
    }
}



@media screen and (min-width: 1141px) and (max-width: 1400px) {    
    
    /*----- SINGLE MAGASIN -----*/
    .single-store #content .section_magasin .block_txt svg {
        display: none;
    }
}



@media screen and (min-width: 1141px) and (max-width: 1250px) {
    
    /* TEASE PRODUITS */
    #content .tease-produits .description .title,
    #content .tease-produits .description .price .amount {
        font-size: 2rem;
    }
    
    #content .tease-produits .description .title span,
    #content .tease-produits .description .price .format {
        font-size: 1rem;
    }
    
    #content .tease-produits .description .price .price_weight {
        font-size: .875rem;
    }
}



@media screen and (max-width: 1140px) {
    
    .hidden-tablet {
        display: none !important;
    }

    #content .quote p {
        font-size: var(--h3-font-size);
    }
    
    #content .elementor-widget-testimonial-carousel .elementor-main-swiper {
        padding: 0;
    }
    
    #content .owl-carousel .owl-nav,
    #content .owl-carousel.slider_products .owl-nav {
        display: none;
    }
    
    
    /*----- FOOTER -----*/    
    #footer-content .wrapper .column {
        flex-flow: column;
        align-items: center;
    }
    
    #footer-content .wrapper .column .widget + .widget {
        margin-block-start: var(--margin-h2);
    }
    
    #footer-content .wrapper .column ul {
        flex-flow: row wrap;
        justify-content: center;
    }
    
    
    /*----- HOMEPAGE -----*/
    #content .section_mea .elementor-widget-html {
        display: none;
    }
    
    
    /*----- SINGLE MAGASIN -----*/
    .single-store #content .section_avis .store-reviews-average {
        margin-block-end: var(--margin-h2)
    }
}



@media screen and (max-width: 989px) {
	
	#back-to-top,
    #content .elementor-widget-testimonial-carousel .elementor-swiper-button {
        display: none;
    }
    
    
    /*----- HOMEPAGE -----*/
    #content .section_mea .elementor-widget-wrap {
        min-height: 500px;
    }
    
    #content .section_mea .elementor-widget-wrap h1 span {
        font-size: 3.5rem;
    }
}



@media screen and (min-width: 768px) {
    
    .show-mobile {
        display: none !important;
    }
}



@media screen and (min-width: 768px) and (max-width: 1140px) {
    
    /*----- SINGLE MAGASIN -----*/
    .single-store #content .section_magasin .block_txt > .elementor-widget-wrap {
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 0 12%;
    }

    .single-store #content .section_magasin .block_txt .elementor-widget-html {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        grid-column: 2 / 3;
        grid-row: 1 / 3;
        width: auto;
    }
}



@media screen and (min-width: 768px) and (max-width: 989px) {
    
    /* TEASE PRODUITS */
    #content .tease-produits .description .title,
    #content .tease-produits .description .price .amount {
        font-size: 2rem;
    }
    
    #content .tease-produits .description .title span,
    #content .tease-produits .description .price .format {
        font-size: 1rem;
    }
    
    #content .tease-produits .description .price .price_weight {
        font-size: .875rem;
    }
    
    
    
    /*----- SINGLE MAGASIN -----*/    
    .single-store #content .section_magasin .block_txt svg {
        width: 300px;
    }
}



@media screen and (max-width: 767px) {	
    
    .hidden-mobile {
        display: none !important;
    }
	
    input:not([type="file"]):not([type="search"]):not([type="submit"]):not([type="button"]), 
    select, 
    textarea,
    textarea.elementor-field-textual, 
    .elementor-field-group .elementor-select-wrapper select {
        padding: 12px 24px !important;
    }
    
    a.bouton.link span span, 
    .bouton.link a span span, 
    button.bouton.link span, 
    #content .elementor-post.type-post .elementor-post__read-more {
        font-size: 1rem;
    }
    
    #content .elementor-widget-heading.inodia-icons::before {
        font-size: 3rem;
            margin-inline-end: 24px;
    }
    
    
    /*----- HEADER -----*/
    .wrapper_header {
		position: relative;
		z-index: 1000;
		transition: all .6s cubic-bezier(0.42, 0, 0.58, 1);
	}
	
	.wrapper_header.show {
    	width: 100%;	    
		position: sticky;
		inset: var(--header-height) auto auto 0;
		z-index: 1000;
	}
	
	.wrapper_header.sticky.show {
		inset: var(--banner-height) auto auto 0;
	}
	
	body.open-menu .wrapper_header,
	.wrapper_header.sticky.hide {
		transition: none;
	}
	
	body.open-menu .wrapper_header,
	.wrapper_header.hide {
		transform: initial !important;
	}
    
	.wrapper_header:not(.sticky.show) header {
        background: rgba(var(--dark-text-color), 0);
	}
    
	.wrapper_header.sticky.show header {
        background: var(--background-color);
	}
    
    header {        
		transition: background .4s cubic-bezier(0.42, 0, 0.58, 1);
    }
    
    header .wrapper {
        padding-block: 16px;
    }
    
    header .wrapper .logo img {
        height: 48px;
    }
    
    header #nav-wrapper .toggle-nav {
        inset: 24px 7.5% auto auto;
    }
    
    header #nav-wrapper.menu_mobile .nav-main .wrapper_menu_mobile > ul {
        width: var(--wrapper-size);
        max-width: var(--wrapper-size);
    }
    
    
    /*----- PRODUITS -----*/    
    #content .section_produits > .elementor-container {
        width: 100% !important;
        max-width: initial !important;
    }
    
    
    /*----- CONTACT -----*/    
    #content .section_forms .boutons_forms > .elementor-container {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 16px; 
    }
    
    #content .section_forms .boutons_forms .elementor-widget-button a {
        padding: 16px 32px;
    }
    
    #content .section_forms .boutons_forms .elementor-widget-button a > span {
        flex-flow: row;
    }
    
    #content .section_forms .boutons_forms .elementor-widget-button a > span::before {
        font-size: 1.875rem;
        margin-inline-end: 16px;
        margin-block-end: 0;
    }
    
    #content .section_forms .boutons_forms .elementor-widget-button a span {
        flex-grow: initial;
    }
    
    
    /*----- SINGLE MAGASIN -----*/
    .single-store #content .section_magasin .block_txt svg {
        display: none;
    }
}



@media screen and (min-width: 576px) {    
            
    #content .slider_cas_clients .owl-dots,
    #content .slider_realisations .owl-dots {
        display: none;
    }
    
    
    /*----- NOTRE MARQUE -----*/
    #content .section_reassurances > .elementor-container > .elementor-col-33:not(:first-child) {
        border-inline-start: var(--border-width) solid rgba(var(--dark-text-color), .3);
    }
}



@media screen and (max-width: 575px) {

    input:not([type="radio"]):not([type="file"]):not([type="search"]):not([type="submit"]):not([type="button"]), 
    textarea, 
    textarea.elementor-field-textual {
        padding: 12px 16px !important;
    }

    select,
    .elementor-field-group .elementor-select-wrapper select {
        padding: 12px 48px 12px 16px !important;
    }
    
    #content .elementor-message::before,
    #content .elementor-widget-heading.inodia-icons::before {
        display: none;
    }
    
    /* TEASE PRODUITS */
    #content .tease-produits .description .title,
    #content .tease-produits .description .price .amount {
        font-size: 2rem;
    }
    
    #content .tease-produits .description .title span,
    #content .tease-produits .description .price .format {
        font-size: 1rem;
    }
    
    #content .tease-produits .description .price .price_weight {
        font-size: .875rem;
    }
    
    
    /*----- HEADER -----*/
    #pre-header .container {
        padding-block: 10px;
    }
    
    #pre-header p {
        font-size: .6875rem;
    }
    
    header #nav-wrapper .nav-main .wrapper_menu_mobile > .menu_mobile > ul > li > a {
        font-size: var(--text-font-size);
    }
    
    header .nav-main ul li.menu-item-has-children > a > span {
        font-size: .25rem;
	}
    
    
    /*----- FOOTER -----*/
    #footer-content .wrapper .column:first-child p {
        font-size: var(--text-font-size);
    }
    
    
    /*----- HOMEPAGE -----*/
    #content .section_mea .elementor-widget-wrap {
        min-height: 400px;
    }
    
    #content .section_mea .elementor-widget-wrap h1 span {
        font-size: var(--h2-font-size);
    }
    
    #content .section_mea .elementor-widget-wrap .elementor-widget-heading p {
        font-size: var(--h4-font-size);
    }
    
    
    /*----- NOTRE MARQUE -----*/
    #content .section_reassurances > .elementor-container:has(.elementor-col-33) {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    
    #content .section_reassurances > .elementor-container > .elementor-col-33:nth-child(2n) {
        border-inline-start: var(--border-width) solid rgba(var(--dark-text-color), .3);
    }
    
    #content .section_reassurances > .elementor-container > .reassurance .elementor-widget-icon + .elementor-widget-heading {
        margin-block-start: 1rem !important;
    }
    
    
    /*----- ACTUALITÉS -----*/
    #content .tease-post .description > p {
        font-size: .8125rem;
    }
}



@media screen and (min-width: 481px) {
    
    /* FORMULAIRES */    
    #content .elementor-widget-form .e-form__buttons .elementor-field-type-previous {
        margin-inline-end: auto; 
        margin-block: 0;
    }
}



@media screen and (max-width: 480px) {
    
    /*#btn_form, 
    #btn_form_message,
    .block_boutons .bouton:not(.link):not(.icon),
    .bouton:not(.link):not(.icon) > .elementor-widget-container,
    .bouton:not(.link):not(.icon) .elementor-button-wrapper,
    .bouton:not(.link):not(.icon) .elementor-button-wrapper a,
    #content .elementor-widget-form .e-form__buttons__wrapper {
        width: 100% !important;
    }*/
    
    body #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.mgbutton.moove-gdpr-infobar-allow-all, 
    body #moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn, 
    body #moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton {
        width: 100% !important;
    }
    
    #content .block_boutons .bouton.contour {
        order: 1;
    }
    
    #content .block_boutons .bouton:not(.contour) {
        order: 2;
    }
    
    /* TEASE PRODUITS */
    #content .tease-produits {
        padding: 16px;
    }
    
    #content .tease-produits .description .title {
        font-size: 1.5rem;
    }
    
    #content .tease-produits .description .price .amount {
        font-size: 1.125rem;
    }
    
    #content .tease-produits .description .title span {
        font-size: .8125rem;
    }
    
    #content .tease-produits .description .excerpt,
    #content .tease-produits .description .price .format,
    #content .tease-produits .description .price .price_weight {
        font-size: .75rem;
    }
    
    #content .tease-produits .description .price > p:not(.price_weight) {
        gap: 8px;
    }
    
    /* FORMULAIRES */    
    #content .elementor-widget-form .e-form__buttons__wrapper {
        display: flex;
        justify-content: center;
    }
    
    #content .elementor-widget-form .e-form__buttons__wrapper {
        margin-block-end: 0 !important;
    }
    
    #content .elementor-widget-form .e-form__buttons__wrapper + .e-form__buttons__wrapper {
        margin-block-start: .9375rem !important;
    }
    
    
    /*----- HEADER -----*/
    header .toggle-nav {
        width: 24px;
        height: 16px;
    }
    
    header .wrapper .logo img {
        height: 40px;
    }
    
    header #nav-wrapper .nav-main ul li.menu-item-has-children ul li a {
        font-size: 1rem;
    }
    
    header #nav-wrapper .nav-main > .wrapper_menu_mobile > .menu_mobile > ul > li:not(.bouton) > a .arrow_down {
        font-size: .75rem;
        margin-inline-start: 8px;
    }
    
    
    /*----- SINGLE MAGASIN -----*/
    .single-store #content .section_avis .store-reviews .store-review .store-review-header .store-review-initials {
        font-size: 1.25rem;
        width: 32px;
        margin-inline-end: 8px;
    }
    
    .single-store #content .section_avis .store-reviews .store-review .store-review-stars svg {
        width: 16px;
        height: 16px;
    }
    
    .single-store #content .section_avis .store-reviews-average .note svg {
        width: 24px;
        height: 24px;
    }
}



@media screen and (min-width: 376px) {
    
    .elementor-field-type-submit:has(#btn_form),
    header li.bouton.orange:last-child,
    .bouton:not(.link):not(.icon) .elementor-widget-container {
        display: flex;
        flex-flow: row;
        align-items: flex-start;
        position: relative;
    }

    .elementor-field-type-submit:has(#btn_form)::after,
    header li.bouton.orange:last-child::after,
    .bouton:not(.link):not(.icon) .elementor-widget-container::after {
        content: "";
        display: flex;
        aspect-ratio: 14 / 23;
        width: 14px;
        height: auto;
        mask: var(--splash);
        mask-size: 100% 100%;
        margin-inline-start: 8px;
    }

    .elementor-field-type-submit:has(#btn_form)::after,
    header li.bouton.orange:last-child::after,
    .bouton.primary:not(.link):not(.icon) .elementor-widget-container::after,
    .bouton.orange:not(.link):not(.icon) .elementor-widget-container::after {
        background: var(--primary-color);
    }

    .bouton.secondary:not(.link):not(.icon) .elementor-widget-container::after,
    .bouton.vert:not(.link):not(.icon) .elementor-widget-container::after {
        background: var(--secondary-color);
    }

    .center .elementor-field-type-submit:has(#btn_form)::after,
    .center.bouton:not(.link):not(.icon) .elementor-widget-container::after,
    .center .bouton:not(.link):not(.icon) .elementor-widget-container::after {
        position: absolute;
        inset: 0 -8px auto auto;
        transform: translateX(100%);
    }
}



@media screen and (min-width: 376px) and (max-width: 767px) {
    
    /*----- SINGLE MAGASIN -----*/    
    .single-store #content .section_avis > .elementor-container {
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .single-store #content .section_avis .bouton {
        width: var(--wrapper-size) !important;
        max-width: var(--wrapper-size) !important;
        margin-inline: auto;
    }
}



@media screen and (max-width: 375px) {
        
	#content .pagination-block .pagination li.prev a span,
	#content .pagination-block .pagination li.next a span {
		display: none;
	}
    
    #content .elementor-widget-form .elementor-field-type-upload > label {
        font-size: .6875rem;
        padding: 8px 20px;
    }

    #content .elementor-widget-testimonial-carousel .elementor-testimonial__text {
        font-size: 1rem !important;
    }
    
    
	/*----- HEADER -----*/    
    header .wrapper .logo img {
        height: 32px;
    }
    
    
	/*----- NOTRE MARQUE -----*/
    #content .section_reassurances .reassurance .elementor-icon svg {
        width: 2.5rem;
        height: 2.5rem;
    }
    
    
	/*----- CONTACT -----*/
	/* FORMULAIRE */
	#content .elementor-widget-form .elementor-field-group {
		margin-block-end: 1.25rem;
	}
}


