/*
* Theme Name: Inodia
* Description:
* Author: Vincent Michelet - Inodia
* Version: 1.0.0
*/

/*---------- Imports ----------*/
/* Fonts */
@font-face {
    font-family: 'Manrope';
    src: local('Manrope Bold'), local('Manrope-Bold'),
    url('./static/fonts/Manrope-Bold.woff2') format('woff2');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: local('Manrope Medium'), local('Manrope-Medium'),
    url('./static/fonts/Manrope-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: local('Manrope Light'), local('Manrope-Light'),
    url('./static/fonts/Manrope-Light.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}



/* Icons */
@font-face {
	font-family: 'inodia-icons';
	src: url('./static/fonts/inodia-icons.woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}


/*
 * 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(--title-color);
    font: var(--text-weight-normal) var(--text-size-normal)/1 var(--font-text);
}

h1, .h1:not(.elementor-widget-heading),
div.elementor-widget-heading.h1 .elementor-heading-title { 
	color: var(--title-color) !important;
    font: var(--text-weight-bold) var(--h1-font-size)/1.1 var(--font-title) !important;
    letter-spacing: -0.09rem;
	position: relative;
}

h1:not(.h2, .h3, .h4, .elementor-heading-title), 
.h1:not(.elementor-widget-heading) {
	margin-block-end: var(--spacing-xl);
}

h2, .h2:not(.elementor-widget-heading),
div.elementor-widget-heading.h2 .elementor-heading-title { 
	color: var(--title-color) !important;
	display: flex;
	flex-flow: column !important;
	align-items: flex-start;
    font: var(--text-weight-medium) var(--h2-font-size)/1.2 var(--font-title) !important;
	letter-spacing: -0.07rem;
	position: relative;
}

h2:not(.h1, .h3, .h4, .elementor-heading-title), 
.h2:not(.elementor-widget-heading) {
	margin-block-end: var(--spacing-lg);
}

h3, .h3:not(.elementor-widget-heading), 
div.elementor-widget-heading.h3 .elementor-heading-title { 
	color: var(--title-color) !important;
    font: var(--text-weight-medium) var(--h3-font-size)/1.1 var(--font-text) !important;
    letter-spacing: -0.025rem;
}

h3:not(.h1, .h2, .h4, .elementor-heading-title), 
.h3:not(.elementor-widget-heading) {
	margin-block-end: var(--spacing-md);
}

h4, .h4:not(.elementor-widget-heading), 
div.elementor-widget-heading.h4 .elementor-heading-title { 
	color: var(--secondary-color) !important;
    font: var(--text-weight-normal) var(--h4-font-size)/1.1 var(--font-text) !important;
    letter-spacing: 0;
}

h4:not(.h1, .h2, .h3, .elementor-heading-title), 
.h4:not(.elementor-widget-heading) {
	margin-block-end: var(--spacing-sm);
}

.elementor-heading-title:is(h2, h3, h4),
.elementor-widget-heading:is(.h2, .h3, .h4),
:is(.h2, .h3, .h4) .elementor-heading-title {
	margin-block-end: 0 !important;
}

p, 
li,
span,
small {
	font-weight: var(--text-weight-normal);
	letter-spacing: var(--letter-spacing);
}

p {
    font: var(--text-weight-normal) var(--text-size-normal)/1.618 var(--font-text) !important;
    letter-spacing: 0.04rem;
}

p,
li,  
span,
small,
strong {
	color: var(--text-color);
	font-family: var(--font-text);
}

p.elementor-blockquote__content {
    font-weight: var(--text-weight-normal);
    font-style: italic;
    margin-block-start: 0 !important;
}


/* LOCK WIDGET STYLE */
.elementor :is(.elementor-tab-content, .elementor-widget-text-editor, .elementor-testimonial__text):not(:has(small)),
.elementor :is(.elementor-tab-content, .elementor-widget-text-editor) :is(p, li, span, strong) {
    background: transparent !important;
	color: var(--text-color) !important;
    font: var(--text-weight-normal) var(--text-size-normal)/1.618 var(--font-text) !important;
    letter-spacing: var(--letter-spacing) !important;
}

.elementor :is(.elementor-tab-content, .elementor-widget-text-editor) strong {
	color: var(--strong-color) !important;
    font-weight: var(--text-weight-bold) !important;
}

.elementor :is(.elementor-tab-content, .elementor-widget-text-editor) a * {
	color: inherit !important;
}

/* .elementor :is(.elementor-tab-content, .elementor-widget-text-editor) :is(br, *:empty) {
	display: none !important;
} */
 
a {
	color: var(--primary-color);
}

:is(a, button).link-dark,
.owl-carousel .owl-nav button,
:is(.moove-gdpr-modal-close, .moove-gdpr-infobar-reject-btn),
#wrapper_body .widget_nav_menu a {
	color: var(--title-color);
}

#wrapper_body #breadcrumb a {
	color: var(--text-color);
}

:is(a, button).link-dark:focus:focus-visible,
.owl-carousel .owl-nav button:focus:focus-visible,
#wrapper_body :is(.widget_nav_menu, #breadcrumb) a:focus:focus-visible,
:is(.moove-gdpr-modal-close, .moove-gdpr-infobar-reject-btn):focus:focus-visible,
.mgbutton:not(.moove-gdpr-infobar-allow-all, .moove-gdpr-modal-allow-all):focus:focus-visible {
    outline-color: var(--title-color) !important;
}
    
a:hover {
    color: var(--primary-hover-color);
}

a:active {
    color: var(--primary-active-color);
}

:is(a, button).link-dark:hover,
.owl-carousel .owl-nav button:hover,
:is(.moove-gdpr-modal-close, .moove-gdpr-infobar-reject-btn):hover,
#wrapper_body :is(.widget_nav_menu, #breadcrumb) a:hover {
    color: var(--primary-color);
}

:is(a, button).link-dark:active,
.owl-carousel .owl-nav button:active,
:is(.moove-gdpr-modal-close, .moove-gdpr-infobar-reject-btn):active,
#wrapper_body :is(.widget_nav_menu, #breadcrumb) a:active {
    color: var(--primary-hover-color);
}


#footer-content .container .column .widget.widget_block.widget_text p,
#wrapper_body .elementor-widget-accordion .elementor-accordion .elementor-accordion-item .elementor-tab-content p,
.ino-carousel .owl-stage-outer .owl-stage .owl-item .item .content-container .card-content p,
p.rgpd.small,
small {
    color: var(--muted-color);
    font-style: normal;
    letter-spacing: 0.03rem;
    font: var(--text-weight-normal) var(--text-size-small)/1.5 var(--font-text) !important;
}

label, .label,
input[type="file" i] {
    color: var(--title-color);
}

input:is([type="text"],[type="email"],[type="number"],[type="tel"]), 
select, 
textarea, 
textarea.elementor-field-textual,
.elementor-field-group .elementor-select-wrapper select {
	background: transparent !important;
    border: var(--border-width) solid var(--border-color) !important;
    border-radius: calc(var(--border-radius) / 2) !important;
    color: var(--text-color) !important;
    font: var(--text-weight-normal) var(--text-size-normal)/1 var(--font-text);
	letter-spacing: var(--letter-spacing);
    text-overflow: ellipsis;
    min-height: initial;
}

input:is([type="text"],[type="email"],[type="number"],[type="tel"]), 
textarea, 
textarea.elementor-field-textual {
    padding: var(--spacing-2xs) calc(var(--spacing-2xs) * 2) !important;
}

textarea,
textarea.elementor-field-textual {
	border-radius: clamp(0, var(--border-radius) / 2, clamp(1rem, .875rem + .625vw, 1.5rem)) !important;
    line-height: 1.3;
}

select,
.elementor-field-group .elementor-select-wrapper select {
    padding: var(--spacing-2xs) calc(var(--spacing-2xs) * 4) var(--spacing-2xs) calc(var(--spacing-2xs) * 2) !important;
}

input:is([type="text"],[type="email"],[type="number"],[type="tel"]):hover,
select:hover,
textarea:hover,
.elementor-field-group .elementor-select-wrapper select:hover {
    border: var(--border-width) solid var(--border-hover-color) !important;
	color: var(--strong-color) !important;
}

input:is([type="text"],[type="email"],[type="number"],[type="tel"]):focus,
select:focus,
textarea:focus,
.elementor-field-group .elementor-select-wrapper select:focus {
    border-color: var(--border-focus-color) !important;
    box-shadow: 0 0 0 2px hsl(from var(--border-focus-color) h s l / .1) !important;
	color: var(--title-color) !important;
	outline: none !important;
}

#wrapper_body .elementor-select-wrapper.remove-before::before {
    content: "\e900" !important;
    font: var(--font-icon) !important;
    font-size: var(--text-size-small) !important;
    letter-spacing: 0 !important;
    text-transform: lowercase !important;
    text-shadow: none !important;
    translate: 0 -50% 0;
    inset: 50% var(--spacing-sm) auto auto;
}

#wrapper_body .elementor-select-wrapper .select-caret-down-wrapper {
    display: none !important;
}

input[type="file"]:focus {
	border: none !important;
}

input ~ span em {
    color: var(--muted-color);
}

blockquote {
    position: relative;
    padding: var(--spacing-sm) var(--spacing-md);
    margin: var(--spacing-xs) 0;
}

blockquote > * {
    font-style: italic;
    position: relative;
    z-index: 1;
}

p.rgpd {
	font-size: var(--text-size-small);
    text-align: left;
    margin: 0 0 var(--spacing-md) 0;
}

.fond:is(.noir, .blanc):not(.block),
.fond.block:is(.noir, .blanc) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
	background: var(--background-color);
}

.fond.gris:not(.block),
.fond.block.gris > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
	background: var(--background-grey);
}

.light-scheme-color :is(.fond.noir:not(.block), .fond.block.noir > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
.dark-scheme-color :is(.fond.blanc:not(.block), .fond.block.blanc > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)) {
    color-scheme: dark;
}

.dark-scheme-color :is(.fond.noir:not(.block), .fond.block.noir > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
.light-scheme-color :is(.fond.blanc:not(.block), .fond.block.blanc > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)) {
    color-scheme: light;
}

.fond.light:not(.block),
.fond.block.light > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
    background: var(--background-light);
    color-scheme: light;
}

/* Dropdown */
select {
	color: var(--text-color) !important;
}


/* Upload */
#wrapper_body .elementor-widget-form .elementor-field-type-upload > label {
    background: var(--primary-color);
    border-radius: var(--border-radius);
    color: var(--light-color);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;    
    height: 100%;
    font-size: var(--text-size-small);
    font-weight: var(--text-weight-medium);
    padding: var(--spacing-2xs) var(--spacing-sm);
    margin: 0;
    transition: var(--transition-default);
}

#wrapper_body .elementor-widget-form .elementor-field-type-upload > label.file-loaded {
    font-weight: var(--text-weight-bold);
}

#wrapper_body .elementor-widget-form .elementor-field-type-upload > label.file-loaded::after {
    display: none;
}
    
#wrapper_body .elementor-widget-form .elementor-field-type-upload > label:hover {
    background: var(--primary-hover-color);
}

#wrapper_body .elementor-widget-form .elementor-field-type-upload > label:active {
    background: var(--primary-active-color);
}

#wrapper_body .elementor-widget-form .elementor-field-type-upload > label:has(+ input:focus:focus-visible) {    
    outline-color: var(--primary-color) !important;
}

#wrapper_body .elementor-widget-form .elementor-field-type-upload > label::before {
    content: "\e904";
    color: inherit;
    font: var(--font-icon) !important;
    font-size: var(--text-size-normal) !important;
    letter-spacing: 0 !important;
    text-transform: lowercase !important;
    margin-inline-end: var(--spacing-3xs);
}

#wrapper_body .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;
}


/* STRUCTURE */
#wrapper_body .elementor-top-section:not(.no_margin, :first-child) {
	margin-block: var(--spacing-3xl);
}

body:not(.elementor-page) #wrapper,
body:not(.error404) #wrapper_body .elementor-top-section:not(.no_margin, .fond:not(.block), .supp):last-child {
	margin-block-end: var(--spacing-4xl);
}

#wrapper_body .elementor-top-section.fond:not(.hero-section, .block, .elementor-section-full_width) {
	padding-block: var(--spacing-2xl);
}

#wrapper_body .elementor-top-section.fond:not(.block):last-child {
	margin-block-end: 0;
}

#wrapper_body :is(.elementor-top-section.fond.block:not(.full)) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
    position: relative;
    padding: var(--spacing-2xl);
}

#wrapper_body .elementor-top-section .elementor-inner-section:first-child,
#wrapper_body .elementor-top-section .elementor-inner-section.titre + .elementor-inner-section,
#wrapper_body .elementor-top-section:is(.fond:not(.block), .supp) + :is(.elementor-top-section:is(.fond:not(.block), .supp)) {
	margin-block-start: 0;
}

#wrapper_body .elementor-top-section.fond.noir:not(.block) + .elementor-top-section.fond.noir:not(.block),
#wrapper_body .elementor-top-section.fond.gris:not(.block) + .elementor-top-section.fond.gris:not(.block),
#wrapper_body .elementor-top-section.fond.blanc:not(.block) + .elementor-top-section.fond.blanc:not(.block),
#wrapper_body .elementor-top-section.fond.light:not(.block) + .elementor-top-section.fond.light:not(.block) {
	padding-block-start: 0;
}

#wrapper_body .elementor-top-section :is(.elementor-inner-section, .elementor-widget-text-editor) + .elementor-inner-section:not(.boutons) {
	margin-block-start: var(--spacing-lg);
}

#wrapper_body .center .elementor-widget-wrap {
	display: flex;
	flex-flow: column;
	align-items: center;
}

#wrapper_body .elementor-widget + :is(.boutons, .elementor-widget-form, .elementor-widget-text-editor),
#wrapper_body :is(.elementor-widget-text-editor, .elementor-widget-accordion) + .elementor-widget,
#wrapper_body .elementor-widget-shortcode + .elementor-widget-button {
	margin-block-start: calc(var(--spacing-4xl) / 3);
}

#wrapper_body :is(.elementor-widget-button, .elementor-widget-text-editor) + .elementor-widget-image,
#wrapper_body .elementor-widget-text-editor + .elementor-widget-hotspot {
	margin-block-start: calc(var(--spacing-4xl) / 1.5);
}

#wrapper_body .elementor-widget-image + .elementor-widget-text-editor {
	margin-block-start: calc(var(--spacing-4xl) / 4);
}

#wrapper_body .elementor-widget-heading + .elementor-widget-heading {
	margin-block-start: var(--spacing-xs) !important;
}

#wrapper_body .section_titre + .elementor-top-section {
	margin-block-start: var(--spacing-lg) !important;
}

#wrapper_body .elementor-widget + .elementor-widget-heading.no_margin {
	margin-block-start: 0 !important;
}

#wrapper_body :is(.elementor-widget-image, .elementor-widget-image-carousel) figure figcaption {
    background: hsl(from var(--dark-color) h s l / .25);
	border-radius: var(--border-radius);
    color: var(--light-color);
	font: var(--text-weight-medium) var(--text-size-small)/1.3 var(--font-text);
    letter-spacing: var(--letter-spacing);
	text-shadow: 0 2px 20px var(--dark-color);
    width: var(--wrapper-size-mobile);
    padding: var(--spacing-3xs);
    position: absolute;
    inset: auto auto 0 50%;
    translate: -50%;
}

#wrapper_body .elementor-widget-blockquote .elementor-blockquote::before,
#wrapper_body .elementor-widget-testimonial-carousel .elementor-swiper-button {
    display: none;
}

#wrapper_body .elementor-widget-testimonial-carousel .elementor-main-swiper {
    width: 100%;
}

#wrapper_body .elementor-widget-testimonial-carousel .swiper-slide {
    padding: 0;
}

#wrapper_body .elementor-widget-testimonial-carousel :is(.elementor-testimonial__text, .elementor-testimonial__name, .elementor-testimonial__title) {
    font-size: var(--text-size-big) !important;
}

#wrapper_body .elementor-widget-testimonial-carousel .elementor-testimonial__title {
    line-height: 1.3;
    margin-block-start: var(--spacing-4xs);
    font-weight: var(--text-weight-bold);
}

#wrapper_body .elementor-widget-testimonial-carousel {
    padding-left: var(--spacing-lg);
    margin-block: var(--spacing-sm) !important;
    position: relative;
}

#wrapper_body .elementor-widget-testimonial-carousel::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: calc(var(--border-width) * 2);
    height: 100%;
    background: var(--shadow-color);
}

#wrapper_body .elementor-widget-testimonial-carousel .elementor-testimonial__cite {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: baseline;
    gap: var(--spacing-2xs);
}

#wrapper_body .elementor-widget-testimonial-carousel .elementor-testimonial__cite {
    margin-top: unset;
}

#wrapper_body .elementor-widget-testimonial-carousel .elementor-main-swiper {
    position: relative;
}

#wrapper_body .elementor-widget-testimonial-carousel .elementor-main-swiper::before {
    content: "";
    display: block;
    margin-bottom: var(--spacing-2xs);
    width: 30px;
    height: 32px;
    background: var(--comma);
}



/* MARGES TITRES */
#wrapper_body .elementor-widget-heading:not(.h3, .h4, .center, .right, .inodia-icons):has(h2) {    
    display: flex;
    flex-flow: column;
    align-items: flex-start;
}

#wrapper_body .center .elementor-widget-heading:not(.h3, .h4, .center, .right, .inodia-icons):has(h2) {
    align-items: center;
}

#wrapper_body .elementor-widget + .quote,
#wrapper_body :is(.elementor-widget-heading.h2, .elementor-widget-heading:not(.h3, .h4):has(h2)) + :is(.elementor-widget, .elementor-inner-section) {
	margin-block-start: var(--spacing-lg);
}

#wrapper_body :is(.elementor-widget-heading.h3, .elementor-widget-heading:not(.h2, .h4):has(h3)) + :is(.elementor-widget, .elementor-inner-section) {
	margin-block-start: var(--spacing-sm);
}

#wrapper_body :is(.elementor-widget-heading.h4, .elementor-widget-heading:not(.h2, .h3):has(h4)) + :is(.elementor-widget, .elementor-inner-section) {
	margin-block-start: var(--spacing-sm);
}

#wrapper_body .elementor-inner-section + .elementor-widget,
#wrapper_body .elementor-widget:not(.elementor-widget-menu-anchor, .elementor-widget-heading) + :is(.elementor-widget-heading.h2, .elementor-widget-heading:not(.h3, .h4):has(h2)) {
	margin-block-start: calc(var(--spacing-lg) * 2) !important;
}

#wrapper_body .elementor-widget:not(.elementor-widget-menu-anchor, .elementor-widget-heading) + :is(.elementor-widget-heading.h3, .elementor-widget-heading:not(.h2, .h4):has(h3)) {
	margin-block-start: calc(var(--spacing-md) * 2) !important;
}

#wrapper_body .elementor-widget:not(.elementor-widget-menu-anchor, .elementor-widget-heading) + :is(.elementor-widget-heading.h4, .elementor-widget-heading:not(.h2, .h3):has(h4)) {
	margin-block-start: calc(var(--spacing-sm) * 2) !important;
}

#wrapper_body .elementor-widget-image + .elementor-widget-heading {
	margin-block-start: var(--spacing-3xl);
}


/* FORMULAIRES */
#wrapper_body .section_contact .elementor-column.block_form {
    max-width: 50rem;
    margin-inline: auto;
}

#wrapper_body .elementor-widget-form .e-form__buttons:has(:is(.elementor-field-type-previous, .elementor-field-type-next)) {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

#wrapper_body .elementor-widget-form .e-form__buttons :is(.elementor-field-type-next, .elementor-field-type-previous) button {
    background: transparent;
    border-radius: 0;
    color: var(--primary-color);
    display: flex;
    align-items: center;
    font-size: var(--text-size-small);
    font-weight: var(--text-weight-medium);
    letter-spacing: var(--letter-spacing);
    padding: 0;
}

#wrapper_body .elementor-widget-form .e-form__buttons .elementor-field-type-next button::after,
#wrapper_body .elementor-widget-form .e-form__buttons .elementor-field-type-previous button::before {
    color: inherit;
    font: var(--font-icon) !important;
    font-size: .5rem !important;
    letter-spacing: 0 !important;
    text-transform: lowercase !important;
}

#wrapper_body .elementor-widget-form .e-form__buttons .elementor-field-type-previous button::before {
    content: "\e903";
    margin-inline-end: var(--spacing-2xs);
}

#wrapper_body .elementor-widget-form .e-form__buttons .elementor-field-type-next button::after {
    content: "\e902";
    margin-inline-start: var(--spacing-2xs);
}
    
#wrapper_body .elementor-widget-form .e-form__buttons :is(.elementor-field-type-next, .elementor-field-type-previous) button:hover {
    color: var(--primary-hover-color);
}

#wrapper_body .elementor-widget-form .e-form__buttons :is(.elementor-field-type-next, .elementor-field-type-previous) button:active {
    color: var(--primary-active-color);
}

#wrapper_body .elementor-widget-form .e-form__indicators__indicator__number {
    background: transparent;
}

#wrapper_body .elementor-widget-form .e-form__indicators__indicator--state-inactive {
    border-color: var(--outline-color);
    color: var(--outline-color);
}

#wrapper_body .elementor-widget-form .e-form__indicators__indicator__separator {
    background: var(--outline-color);
    height: var(--border-width);
    width: calc(100% - 100px);
}

#wrapper_body .elementor-widget-form .e-form__indicators__indicator--state-active {
    border-color: var(--primary-color);
    color: var(--primary-color);
}

#wrapper_body .elementor-widget-form .e-form__indicators__indicator--state-completed .e-form__indicators__indicator__number {
    background: var(--primary-color);
    border-color: transparent;
    color: var(--light-color);
}

#wrapper_body .elementor-widget-form .e-form__indicators__indicator--state-completed + .e-form__indicators__indicator__separator {
    background: var(--primary-color);
}

#wrapper_body .elementor-blockquote--skin-border .elementor-blockquote {
    border: none;
    padding: 0;
    margin: 0;
}


/* BREADCRUMB */
#wrapper_body #breadcrumb {
	margin-block-end: var(--spacing-md);
}

#wrapper_body #breadcrumb p {
    display: flex;
    gap: var(--spacing-4xs) 1ch;
	font-size: var(--text-size-small);
}

#wrapper_body #breadcrumb p :is(a, span.last) {
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

#wrapper_body #breadcrumb p a {
    max-width: 12ch;
    transition: color .3s ease-in-out, outline .1s ease-in-out !important;
}

#wrapper_body #breadcrumb p span.separator {
	color: var(--primary-color);
}

#wrapper_body #breadcrumb p span.last {
	font-weight: var(--text-weight-bold);
    max-width: 24ch;
}


/* BLOCK BOUTONS */
#wrapper_body .boutons .elementor-widget-wrap {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
    gap: var(--spacing-2xs);
}

#wrapper_body .center .boutons .elementor-widget-wrap {
	justify-content: center;
}

#wrapper_body .boutons .bouton {
	width: auto;
	margin: 0;
}


/* BOUTONS */
.bouton {
	border: none;
}

#btn_form span,
.bouton:not(.icon),
.bouton:not(.icon) span,
.mgbutton:not(.moove-gdpr-infobar-reject-btn) {
	font: var(--text-weight-bold) var(--text-size-normal)/1.1 var(--font-text);
}

#btn_form span,
.bouton span {
    color: inherit !important;    
    display: inline-flex;
    gap: var(--spacing-2xs);
	text-align: center;
}

#btn_form,
.bouton a,
.bouton:is(a, button),
.mgbutton:not(.moove-gdpr-infobar-reject-btn) {
	border: var(--border-width) solid transparent;
	border-radius: var(--border-radius);
	display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--spacing-xs);
    min-width: fit-content;
    min-height: initial;
	padding: var(--spacing-xs) calc(var(--spacing-xs) * 2);
    text-align: center;
}

.center #btn_form {
    margin-inline: auto;
}

:is(.elementor-widget-button, .elementor-widget-lightbox).inodia-icons a {
	background: transparent;
	border-radius: 0;
	padding: 0;
}

.bouton.download a > span::before,
.bouton.download:is(a, button)::before {
    font: var(--font-icon) !important;
}

.center .bouton,
.bouton.center {
	display: flex;
    justify-content: center;
}


/* BOUTON PRIMARY */
#btn_form,
.bouton.primary a,
:is(a, button).bouton.primary,
#moove_gdpr_cookie_modal .moove-gdpr-modal-allow-all,
#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-allow-all {
	background: var(--primary-color);
    color: var(--dark-color) !important;
}

#btn_form:focus:focus-visible,
.bouton.primary a:focus:focus-visible,
:is(a, button).bouton.primary:focus:focus-visible,
#moove_gdpr_cookie_modal .moove-gdpr-modal-allow-all:focus:focus-visible,
#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-allow-all:focus:focus-visible {
    outline-color: var(--primary-color) !important;
}

#btn_form:hover,
.bouton.primary a:hover,
:is(a, button).bouton.primary:hover,
#moove_gdpr_cookie_modal .moove-gdpr-modal-allow-all:hover,
#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-allow-all:hover {
    background: var(--primary-hover-color);
    color: var(--background-color) !important;
}

#btn_form:active,
.bouton.primary a:active,
:is(a, button).bouton.primary:active,
#moove_gdpr_cookie_modal .moove-gdpr-modal-allow-all:active,
#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-allow-all:active {
    background: var(--primary-active-color);
    color: var(--background-color) !important;
}


/* BOUTON SECONDARY */
a.bouton.secondary,
.bouton.secondary a {
	background: var(--secondary-color);
    color: var(--light-color) !important;
}

a.bouton.secondary:focus:focus-visible,
.bouton.secondary a:focus:focus-visible {
    outline-color: var(--secondary-color) !important;
}
    
a.bouton.secondary:hover,
.bouton.secondary a:hover {
    background: var(--secondary-hover-color);
    color: var(--background-color) !important;
}

a.bouton.secondary:active,
.bouton.secondary a:active {
    background: var(--secondary-active-color);
    color: var(--background-color) !important;
}


/* BOUTON DARK */
a.bouton.dark,
.bouton.dark a {
	background: var(--background-dark);
    color: var(--background-color) !important;
}

a.bouton.dark:focus:focus-visible,
.bouton.dark a:focus:focus-visible {
    outline-color: var(--title-color) !important;
}

a.bouton.dark:hover,
.bouton.dark a:hover {
    background: var(--strong-color);
}

a.bouton.dark:active,
.bouton.dark a:active {
    background: var(--text-color);
}

a.bouton.light,
.bouton.light a {
    color-scheme: light;
    border: var(--border-width) solid var(--shadow-color);
    background: var(--background-color)
}

a.bouton.light:focus:focus-visible,
.bouton.light a:focus:focus-visible {
    outline-color: var(--background-color) !important;
}

a.bouton.light:hover,
.bouton.light a:hover {
    color: var(--background-light);
    background: hsl(from var(--background-color) h s l / .8);    ;
}

a.bouton.light:active,
.bouton.light a:active {
    color: var(--background-light);
    background: hsl(from var(--background-color) h s l / .5);    ;
}



/* BOUTON CONTOUR PRIMAIRE */
a.bouton.contour.primary,
.bouton.contour.primary a {
	background: transparent !important;
	border: var(--border-width) solid var(--primary-color) !important;
	color: var(--primary-color) !important;
}
    
a.bouton.contour.primary:hover,
.bouton.contour.primary a:hover {
    background: var(--primary-color) !important;
    border-color: transparent !important;
    color: var(--light-color) !important;
}

a.bouton.contour.primary:active,
.bouton.contour.primary a:active {
    background: var(--primary-hover-color) !important;
    border-color: transparent !important;
    color: var(--background-color) !important;
}


/* BOUTON CONTOUR SECONDAIRE */
a.bouton.contour.secondary,
.bouton.contour.secondary a {
	background: transparent !important;
	border: var(--border-width) solid var(--secondary-color) !important;
	color: var(--secondary-color) !important;
}

a.bouton.contour.secondary:hover,
.bouton.contour.secondary a:hover {
    background: var(--secondary-color) !important;
    border-color: transparent !important;
    color: var(--light-color) !important;
}

a.bouton.contour.secondary:active,
.bouton.contour.secondary a:active {
    background: var(--secondary-hover-color) !important;
    border-color: transparent !important;
    color: var(--background-color) !important;
}


/* BOUTON CONTOUR NOIR */
a.bouton.contour.dark,
.bouton.contour.dark a,
#moove_gdpr_cookie_modal .moove-gdpr-modal-save-settings,
#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-settings-btn {
	background: transparent;
	border: var(--border-width) solid var(--background-dark) !important;
	color: var(--background-dark) !important;
}
    
a.bouton.contour.dark:hover,
.bouton.contour.dark a:hover,
#moove_gdpr_cookie_modal .moove-gdpr-modal-save-settings:hover,
#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-settings-btn:hover {
    background: var(--background-dark);
    border-color: transparent !important;
    color: var(--background-color) !important;
}

a.bouton.contour.dark:active,
.bouton.contour.dark a:active,
#moove_gdpr_cookie_modal .moove-gdpr-modal-save-settings:active,
#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-settings-btn:active {
    background: var(--strong-color);
    border-color: transparent !important;
    color: var(--background-color) !important;
    border-radius: var(--border-radius);
}

/* BOUTON LIEN */
.bouton.link {
    text-align: initial;
}

.bouton.link a,
.bouton.link:is(a, button) {
    background: transparent !important;
    border: none !important;
	border-radius: 0 !important;
    text-align: right;
    padding: 0 !important;
    align-items: baseline;
}


/* PRIMAIRE */
.bouton.link.primary a,
.bouton.link.primary:is(a, button) {
    color: var(--primary-color) !important;
}
    
.bouton.link.primary a:hover,
.bouton.link.primary:is(a, button):hover {
    color: var(--primary-hover-color) !important;
}

.bouton.link.primary a:active,
.bouton.link.primary:is(a, button):active {
    color: var(--primary-active-color) !important;
}

.bouton.link.primary a::after,
.bouton.link.primary:is(a, button)::after {
    background: var(--primary-color-10);
}

.bouton.link.primary a:hover::after,
.bouton.link.primary:is(a, button):hover::after {
    color: var(--dark-color);
    background: var(--primary-hover-color);
}

.bouton.link.primary a:active::after,
.bouton.link.primary:is(a, button):active::after {
    color: var(--dark-color);
    background: var(--primary-active-color);
}

/* SECONDAIRE */
.bouton.link.secondary a,
.bouton.link.secondary:is(a, button) {
    color: var(--secondary-color) !important;
}
    
.bouton.link.secondary a:hover,
.bouton.link.secondary:is(a, button):hover {
    color: var(--secondary-hover-color) !important;
}

.bouton.link.secondary a:active,
.bouton.link.secondary:is(a, button):active {
    color: var(--secondary-active-color) !important;
}

.bouton.link.secondary a::after,
.bouton.link.secondary:is(a, button)::after {
    background: var(--secondary-color-5);
}

.bouton.link.secondary a:hover::after,
.bouton.link.secondary:is(a, button):hover::after {
    color: var(--background-color);
    background: var(--secondary-hover-color);
}

.bouton.link.secondary a:active::after,
.bouton.link.secondary:is(a, button):active::after {
    color: var(--background-color);
    background: var(--secondary-active-color);
}



/* NOIR */
.bouton.link.dark a,
.bouton.link.dark:is(a, button) {
    color: var(--title-color) !important;
}
    
.bouton.link.dark a:hover,
.bouton.link.dark:is(a, button):hover {
    color: var(--strong-color) !important;
}

.bouton.link.dark a:active,
.bouton.link.dark:is(a, button):active {
    color: var(--text-color) !important;
}

.bouton.link a::after,
.bouton.link:is(a, button)::after {
    content: "\e910";
    font: var(--font-icon) !important;
    font-size: 12px !important;
    letter-spacing: 0 !important;
    text-transform: lowercase !important;
    transition: all .3s ease-in-out, outline .1s ease-in-out !important;
    padding: var(--spacing-3xs);
    border-radius: var(--border-radius-small);
}

/* ICON */
.bouton.icon .elementor-button-wrapper {
    display: table;
}

.bouton.icon a {
    color: var(--title-color);
    aspect-ratio: 1 / 1;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    filter: initial;
    padding: var(--spacing-sm) !important;
}

.bouton.icon a > span {
    font-size: var(--h4-font-size);
    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 ---------*/
#wrapper_body .posts-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--items-min-size)), 1fr));
	gap: var(--items-gap);
}


/* Pagination */
#wrapper_body .pagination-block {
	margin-block-start: var(--spacing-2xl);
}

#wrapper_body .pagination-block,
#wrapper_body .pagination-block .pagination {
	display: flex;
	align-items: center;
	justify-content:center;
	flex-wrap: wrap;
    gap: var(--spacing-sm);
}

#wrapper_body .pagination-block .pagination :is(li, span) {
	line-height: 1;
}

#wrapper_body .pagination-block .pagination li.disabled {
	display: none;
}

#wrapper_body .pagination-block .pagination li.current span {
	color: var(--primary-color);
}

#wrapper_body .pagination-block .pagination li a {
    display: inline-flex;
	font-weight: var(--text-weight-medium);
}

#wrapper_body .pagination-block .pagination li a:has(i) {
    align-items: center;
    gap: 1.5ch;
}

#wrapper_body .pagination-block .pagination li a i {
    font-size: var(--text-size-small);
}


/*--------- TEASES ---------*/
#wrapper_body .tease,
#wrapper_body .tease .description {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    width: 100%;
}

#wrapper_body .tease {
    gap: var(--spacing-sm);
}

#wrapper_body .tease a.thumbnail {
    border-radius: clamp(0, var(--border-radius), clamp(1.5rem, 1.125rem + 1.875vw, 3rem));
    display: flex;
    aspect-ratio: 16 / 9;
    width: 100%;
    height: auto;
    overflow: hidden;
}

#wrapper_body .tease a.thumbnail :is(picture, img, svg) {
    width: 100%;
    height: 100%;
}

#wrapper_body .tease a.thumbnail :is(img, svg) {
    object-fit: cover;
}

#wrapper_body .tease a.thumbnail :is(img, svg) {
    transition: scale .75s linear(0, 0.402 7.4%, 0.711 15.3%, 0.929 23.7%, 1.008 28.2%, 1.067 33%, 1.099 36.9%, 1.12 41%, 1.13 45.4%, 1.13 50.1%, 1.111 58.5%, 1.019 83.2%, 1.004 91.3%, 1) !important;
}

#wrapper_body .tease a.thumbnail:hover :is(img, svg) {
    scale: 1.025;
}

#wrapper_body .tease a.thumbnail:active :is(img, svg) {
    scale: 1.05;
}

#wrapper_body .tease .description {
    flex-grow: 1;
}

#wrapper_body .tease .description time {
    background: var(--primary-color);
    color: var(--light-color);
    font: var(--text-weight-bold) var(--text-size-small)/1.3 var(--font-text);
    padding: var(--spacing-4xs) var(--spacing-3xs);
    margin-block-end: var(--spacing-2xs);
}

#wrapper_body .tease .description a.title {
    font: var(--text-weight-bold) var(--text-size-big)/1.2 var(--font-text);
}

#wrapper_body .tease .description .title + p {
    font-size: var(--text-size-small);
    line-height: 1.4;
    margin-block: var(--spacing-xs) 0;
}

#wrapper_body .tease .description .bouton {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    flex-grow: 1;
    margin-block-start: var(--spacing-sm);
}


/* BACK TO TOP */
#back-to-top {
	background: transparent;
	border: var(--border-width) solid var(--primary-color);
	border-radius: var(--border-radius);
	color: var(--primary-color);
	cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	position: fixed;
	inset: auto var(--spacing-md) var(--spacing-md) auto;
    transition: var(--transition-default), opacity .15s ease-in-out !important;
    z-index: 50;
}
    
#back-to-top:hover {
    background: var(--primary-color);
    border-color: transparent;
    color: var(--light-color);
}

#back-to-top:active {
    background: var(--primary-hover-color);
    border-color: transparent;
    color: var(--background-color);
}

#back-to-top i {
    font-size: .5rem !important;
}

#back-to-top.hide {
	opacity: 0;
    pointer-events: none;
}





/**
 * ----------------------------------------
 * ------------- ANIMATIONS ---------------
 * ----------------------------------------
 */





/*-----------------------------------------*/
/*
/*---------- SITE ************** ----------*/
/*
/*-----------------------------------------*/

/*--------- VECTORS ---------*/

#wrapper_body .elementor-section .elementor-column .elementor-widget-heading[class*="shape-"].left,
#wrapper_body .elementor-section .elementor-column.left .elementor-widget-heading[class*="shape-"],
#wrapper_body .elementor-section.left .elementor-column .elementor-widget-heading[class*="shape-"] {
    align-items: flex-start !important;
}
#wrapper_body .elementor-section .elementor-column .elementor-widget-heading[class*="shape-"].center,
#wrapper_body .elementor-section .elementor-column.center .elementor-widget-heading[class*="shape-"],
#wrapper_body .elementor-section.center .elementor-column .elementor-widget-heading[class*="shape-"] {
    align-items: center !important;
}
#wrapper_body .elementor-section .elementor-column .elementor-widget-heading[class*="shape-"].right,
#wrapper_body .elementor-section .elementor-column.right .elementor-widget-heading[class*="shape-"],
#wrapper_body .elementor-section.right .elementor-column .elementor-widget-heading[class*="shape-"] {
    align-items: flex-end !important;
}

#wrapper_body .elementor-widget-heading[class*="shape-"] {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
}


.elementor-widget-heading[class*="shape-"]::before{
    display: block;
    content: "";
    background-size: contain !important;
    background-repeat: no-repeat !important;
    pointer-events: none;
}

.elementor-widget-heading[class*="shape-"] {
    gap: var(--spacing-xs);
}

.elementor-widget-heading[class*="shape-"].next {
    display: flex;
    flex-direction: row !important;
    flex-flow: row !important;
    align-items: anchor-center !important;
}

.elementor-widget-heading.shape-1::before {
    background: var(--shape-1);
    width: 15.5%;
    max-width: 64px;
    aspect-ratio: 1
}
.elementor-widget-heading.shape-2::before {
    background: var(--shape-2);
    width: 23.3%;
    aspect-ratio: 96/64;
    max-width: 96px;
}
.elementor-widget-heading.shape-3::before {
    background: var(--shape-3);
    width: 21.6%;
    max-width: 96px;
    aspect-ratio: 96/48;
}
.elementor-widget-heading.shape-4::before {
    background: var(--shape-4);
    max-width: 64px;
    width: 13.8%;
    aspect-ratio: 1;
}
.elementor-widget-heading.shape-5::before {
    background: var(--shape-5);
    width: 48px;
    height: 48px;
}
.elementor-widget-heading.shape-6::before {
    background: var(--shape-6);
    width: 48px;
    height: 48px;
}
.elementor-widget-heading.shape-7::before {
    background: var(--shape-7);
    width: 64px;
    height: 64px;
}
.elementor-widget-heading.shape-8::before {
    background: var(--shape-8);
    width: 48px;
    height: 48px;
}
.elementor-widget-heading.shape-9::before {
    background: var(--shape-9);
    width: 64px;
    height: 64px;
}
.elementor-widget-heading.shape-10::before {
    background: var(--shape-10);
    width: 48px;
    height: 48px;
}

.elementor-top-section[class*="mosaic"] {
    position: relative;
}

.elementor-top-section[class*="mosaic"]::before {
    content: "";
    position: absolute;
    z-index: 0;
    opacity: 0.15;
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
}

.elementor-top-section.mosaic-1::before {
    background-image: var(--mosaic-1);
    width: 100%;
    height: 94%;
    bottom: 0;
    left: 0;
}
.elementor-top-section.mosaic-2::before {
    background-image: var(--mosaic-2);
    width: 39%;
    height: 100%;
    top: 0;
    right: 0;
}

.elementor-top-section.mosaic-3::before {
    background-image: var(--mosaic-3);
    width: 33%;
    height: 100%;
    top: 0;
    left: 0;
}

/*--------- HEADER ---------*/
/* PRE-HEADER */
#pre-header {
	background: var(--primary-color);
	overflow: auto;
}

#pre-header .container {
	padding-block: var(--spacing-3xs);
}

#pre-header p {
	color: var(--light-color);
	font-size: var(--text-size-small);
	font-weight: var(--text-weight-bold);
    line-height: 1.3;
	text-align: center;
}


/* HEADER */
#header {
    background: var(--dark-color);
    color-scheme: dark;
	position: relative;
    z-index: 5;
}

#header .header-nav > .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
    gap: min(5rem, 10%);
    padding-block: var(--padding-header);
    position: relative;
}

#header .header-nav > .container::after {
    content: "";
    position: absolute;
    bottom: 12px;
    left: 0;
    width: 100%;
    height: var(--border-width);
    background: var(--secondary-color);
    z-index: -2;
}

#header .header-nav .container .logo a {
    display: flex;
}

#header .header-nav .container .logo a:focus:focus-visible {
	outline-color: var(--title-color) !important;
}

#header .header-nav .container .logo img {
    aspect-ratio: var(--logo-ratio);
    width: auto;
    height: var(--logo-height);
}

#header .header-nav .container > a {
    pointer-events: initial;
}



.side-socials .list-socials .item-social a {
    width: 40px;
    height: 40px;
    min-width: 0;
    aspect-ratio: 1/1;
    padding: var(--spacing-2xs);
    border-radius: var(--border-radius-small);
}

/* Navigation */
#header .header-nav .nav-main ul {
	display: flex;
	align-items: center;
	list-style: none;
}

#header .header-nav #nav-main-desktop > ul {
    gap: var(--spacing-lg);
}

#header .header-nav .nav-main ul li a {
    display: flex;
	font: var(--text-weight-bold) var(--text-size-normal)/1 var(--font-text);
    white-space: nowrap;
}

#header .header-nav .nav-main ul li a[href="#"] {
    cursor: default;
}

#header .header-nav #nav-main-desktop > ul > li.menu-item-has-children {
    outline: none !important;
    position: relative;
}

#header .header-nav #nav-main-desktop > ul > li.menu-item-has-children > a,
#header .header-nav #nav-main-desktop > ul > li.menu-item-has-children > div > a {
    align-items: center;
    gap: var(--spacing-3xs);
}

#header .header-nav #nav-main-desktop > ul > li.menu-item-has-children > a::after,
#header .header-nav #nav-main-desktop > ul > li.menu-item-has-children > div > a::after {
    content: "\e900";
    color: inherit !important;
    font: var(--font-icon) !important;
	font-size: var(--text-size-small) !important;
    letter-spacing: 0 !important;
    text-transform: lowercase !important;
}

#header .header-nav #nav-main-desktop > ul > li.menu-item-has-children > ul {
    border-radius: 0 0 clamp(0, var(--border-radius), clamp(1.5rem, 1.375rem + .625vw, 2rem)) clamp(0, var(--border-radius), clamp(1.5rem, 1.375rem + .625vw, 2rem));
    box-shadow: var(--box-shadow);
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    gap: var(--spacing-xs);
    min-width: calc(100% + var(--spacing-lg));
    padding: calc(((var(--logo-height) / 2) + var(--padding-header)) + var(--spacing-sm)) var(--spacing-sm) var(--spacing-sm);
    opacity: 0;
    position: absolute;
    inset: auto auto 50% calc(var(--spacing-sm) * -1);
    translate: 0 100%;
    z-index: -1;
    pointer-events: none;
    transition: var(--transition-default);
}

#header .header-nav #nav-main-desktop > ul > li.menu-item-has-children > ul {
    background: var(--background-color);
    box-shadow: 0 16px 24px -16px var(--shadow-color);
    padding: calc(((var(--logo-height) / 2) + var(--padding-header)) + var(--spacing-sm)) var(--spacing-sm) var(--spacing-sm);
}

#header .header-nav #nav-main-desktop > ul > li.menu-item-has-children > ul {
    padding: calc(var(--spacing-sm) * 2) var(--spacing-sm) var(--spacing-sm);
}

#header .header-nav #nav-main-desktop > ul > li.menu-item-has-children:is(:hover, :focus-within) > ul {
    opacity: 1;
    pointer-events: initial;
}

#header .header-nav #nav-main-desktop > ul > li.menu-item-has-children > ul li a {
    font-size: var(--text-size-normal);
    font-weight: var(--text-weight-medium);
}


/* Mobile navigation */
#header #ino-nav-mobile-btn-open i {
    font-size: var(--h4-font-size) !important;
}



/*--------- FOOTER ---------*/
#footer {
    color-scheme: dark;
}


/* PRE-FOOTER */
#pre-footer {
	color: var(--title-color);
	padding-block: var(--spacing-3xl) 0;
}

:is(#pre-footer, #footer-content) .container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
}

:is(#pre-footer, #footer-content) ul {
	list-style: none;
	padding: 0;
}

#pre-footer .container {
    position: relative;
    gap: calc(var(--spacing-4xl) * .66) var(--columns-gap);
}

#pre-footer .container::before {
    content: "";
    position: absolute;
    top: calc(var(--spacing-xl) * -1);
    left: 0;
    background: var(--secondary-color);
    height: var(--border-width);
    width: 100%
}

#pre-footer .container .contact-container {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-sm);
}

#pre-footer .container .contact-container .first-container > * {
    margin-bottom: 0;
}

#pre-footer .container .contact-container .second-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: var(--spacing-sm) var(--spacing-3xl);
}

#pre-footer .container .contact-container .second-container a {
    margin-left: auto;
}

.title-color {
    color: var(--title-color);
}


/* FOOTER CONTENT */
#footer-content {
    gap: var(--spacing-3xl) 6%;
	padding-block: var(--spacing-xl) var(--spacing-sm);
}

#footer-content .container {
    padding: var(--spacing-xl);
    border-radius: var(--border-radius);
    row-gap: var(--spacing-lg);
}

#footer-content .column {
    display: flex;
    flex-flow: column;
    gap: var(--spacing-lg);
}

#footer-content a {
    display: table;
}

#footer-content p a {
    display: inline;
}

#footer-content .widget_media_image a:focus:focus-visible {
    outline-color: var(--title-color) !important;
}

#footer-content a img {
    aspect-ratio: var(--logo-ratio);
    width: 204px;
    height: 80px;
}

#footer-content ul {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
    gap: var(--spacing-sm) 1ch;
}

#footer-content .container .column .widget-title {
    color: var(--title-color);
    font: var(--text-weight-bold) var(--text-size-big)/1.6 var(--font-text);
}

#footer-content .container .column .menu .menu-item:first-child {
    margin-top: var(--spacing-sm);
}

#footer-content .container .column .menu .menu-item {
    font: var(--text-weight-medium) var(--text-size-normal)/1.6 var(--font-text);
    color: var(--strong-color);
}

#footer-content .container .column:has(.widget_media_image + .widget_text) {
    gap: var(--spacing-sm);
}

:is(#pre-footer, #footer-content) ul li a {
    line-height: 1.3;
}

/* POST FOOTER */
#post-footer .container {
	padding-block: var(--spacing-xs);
}

#post-footer :is(p, a) {
    font-size: var(--text-size-small);
	font-weight: var(--text-weight-normal);
    line-height: 2.5;
    letter-spacing: var(--letter-spacing);
    text-align: center;
}

#post-footer :is(p, a:not(:is(:hover, :active))) {
    color: var(--muted-color);
}



/*--------- HOMEPAGE ---------*/

body.home #header .header-nav {
    justify-items: center;
}

body.home #header .header-nav > .container {
    position: absolute;
}

#wrapper_body .elementor-top-section.hero-section {
    background: var(--background-color);
    position: relative;
    padding-bottom: calc(var(--spacing-4xl) * 2);
    padding-top: calc(var(--spacing-3xl) * 2);
}

#wrapper_body .elementor-top-section.hero-section::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background: var(--hero-mosaic);
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0.15;
    pointer-events: none;
}

#wrapper_body .hero-section .elementor-widget-text-editor {
    max-width: 45rem;
}

#wrapper_body .hero-section .elementor-inner-section .elementor-widget-wrap {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: var(--spacing-xs);
}

#wrapper_body .hero-section .elementor-inner-section .elementor-widget-wrap .elementor-widget-button {
    width: auto;
}



#wrapper_body .section-projet {
    margin-top: -7% !important;
    padding-top: 0;
    background: transparent;
}

#wrapper_body .section-projet .elementor-container {
    gap: var(--spacing-xs);
}

#wrapper_body .section-projet .elementor-container .elementor-column {
    background: #F3F7FC;
    padding: var(--spacing-lg);
    border-radius: var(--border-radius);
    backdrop-filter: blur(12px);
    box-shadow: 2px 2px 2px 0 rgba(255, 255, 255, 0.25) inset, 16px 11px 6px 0 rgba(40, 81, 129, 0.00), 11px 7px 5px 0 rgba(40, 81, 129, 0.01), 6px 4px 4px 0 rgba(40, 81, 129, 0.02), 3px 2px 3px 0 rgba(40, 81, 129, 0.03), 1px 0 2px 0 rgba(40, 81, 129, 0.04);
}

#wrapper_body .section-projet .elementor-container .elementor-column:hover {
    color-scheme: dark;
    background: linear-gradient(0deg, var(--background-grey) 0%, var(--background-grey) 100%), var(--background-color);
}

#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button a,
#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button span,
#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button a::after {
    color: var(--secondary-color) !important;
}

#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button a::after {
    background: var(--secondary-color-5) !important;
}

#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button a:hover::after,
#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button a:active::after {
    color: var(--dark-color) !important;
}


#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button a:hover,
#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button a:hover span {
    color: var(--secondary-hover-color) !important;
}

#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button a:hover::after {
    background: var(--secondary-hover-color) !important;
}

#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button a:active,
#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button a:active span {
    color: var(--secondary-active-color) !important;
}

#wrapper_body .section-projet .elementor-container .elementor-column:hover > .elementor-widget-wrap .elementor-widget-button a:active::after {
    background: var(--secondary-active-color) !important;
}

#wrapper_body .section-projet .elementor-container .elementor-column > .elementor-widget-wrap {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

#wrapper_body .section-projet .elementor-container .elementor-column > .elementor-widget-wrap .elementor-widget-button {
    padding-top: var(--spacing-lg);
    margin-top: auto;
}

#wrapper_body .section-faq .faq {
    margin-left: auto;
}

#wrapper_body .elementor-widget-accordion .elementor-accordion .elementor-tab-title {
    display: flex;
    flex-direction: row-reverse;
}

#wrapper_body .elementor-widget-accordion .elementor-accordion .elementor-tab-title:after {
    background: transparent;
    content: "\e900";
    right: var(--spacing-sm);
    font: var(--font-icon);
    color: var(--title-color);
    border: 1px solid var(--shadow-color);
    border-radius: var(--border-radius);
    padding: var(--spacing-3xs);
}

#wrapper_body .elementor-widget-accordion .elementor-accordion .elementor-tab-title.elementor-active:after {
    content: "\e901";
}

#wrapper_body .elementor-widget-accordion .elementor-accordion {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-4xs);
}

#wrapper_body .elementor-widget-accordion .elementor-accordion .elementor-accordion-item {
    background: linear-gradient(0deg, var(--background-grey) 0%, var(--background-grey) 100%), var(--background-color);
}

#wrapper_body .elementor-widget-accordion .elementor-accordion .elementor-accordion-item .elementor-tab-title {
    padding: var(--spacing-xs) var(--spacing-sm);
    border-radius: var(--border-radius);
}

#wrapper_body .vignette,
#wrapper_body .boxed {
    border-radius: var(--border-radius);
    background: linear-gradient(0deg, var(--background-grey) 0%, var(--background-grey) 100%), var(--background-color);
    padding: var(--spacing-xl) var(--spacing-lg);
    margin-inline: auto;
}

#wrapper_body .vignette .elementor-widget-wrap {
    padding-block: unset;
}

#wrapper_body .section-faq .boxed {
    margin-right: auto;
    max-height: 30rem;
}

#wrapper_body .vignette .elementor-widget-wrap .elementor-widget-heading + .elementor-widget-text-editor,
#wrapper_body .boxed .elementor-widget-wrap .elementor-widget-heading + .elementor-widget-text-editor {
    margin-top: var(--spacing-sm);
}

#wrapper_body .vignette .elementor-widget-wrap .elementor-widget-text-editor + .elementor-widget-button,
#wrapper_body .boxed .elementor-widget-wrap .elementor-widget-text-editor + .elementor-widget-button {
    margin-top: var(--spacing-md);
}

#wrapper_body .boxed .elementor-widget-wrap .elementor-widget-text-editor {
    text-align: center;
}

/*--------- CAROUSELS CUSTOM ---------*/

.elementor-section:has(.ino-carousel) .elementor-container {
    position: relative;
}

.ino-carousel.owl-rtl .owl-stage-outer {
    direction: rtl;
}

.ino-carousel.owl-rtl .owl-stage-outer .owl-stage {
    direction: ltr;
}

.ino-carousel .owl-stage-outer .owl-stage .owl-item .item {
    display: flex;
    flex-direction: column;
    background: var(--background-light);
    border-radius: var(--border-radius);
    max-width: 320px;
    min-height: 410px;
    margin: auto;
    border: var(--border-width) solid var(--shadow-color);
}

.ino-carousel .owl-stage-outer .owl-stage .owl-item .item .img-container {
    height: 180px;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
}

.ino-carousel .owl-stage-outer .owl-stage .owl-item .item .img-container img {
    width: 100%;
    height: inherit;
    object-fit: cover;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
}

.ino-carousel .owl-stage-outer .owl-stage .owl-item .item .content-container {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: var(--spacing-md);
    border-radius: var(--border-radius) var(--border-radius) 0 0;
}

.ino-carousel .owl-stage-outer .owl-stage .owl-item .item .content-container a.bouton {
    margin-block-start: auto;
}

.ino-carousel .owl-stage-outer .owl-stage .owl-item .item .content-container .card-title > * {
    color: var(--title-color);
    font: var(--text-weight-medium) var(--text-size-big)/1.1 var(--font-text) !important;
    margin-bottom: var(--spacing-xs);
}

.ino-carousel .owl-nav .owl-prev::before,
.ino-carousel .owl-nav .owl-next::before {
    background: var(--background-light);
    border: var(--border-width) solid var(--shadow-color);
    padding: var(--spacing-2xs);
    border-radius: var(--border-radius-small);
    transition: all .3s ease-in-out, outline .1s ease-in-out !important;
}

.ino-carousel .owl-nav .owl-prev:not(.disabled):hover::before,
.ino-carousel .owl-nav .owl-next:not(.disabled):hover::before {
    background: var(--title-color);
    color: var(--background-light);
}

.ino-carousel .owl-nav .owl-prev:not(.disabled):active::before,
.ino-carousel .owl-nav .owl-next:not(.disabled):active::before {
    background: var(--primary-color);
    color: var(--background-light);
}

/*--------- ACTUALITÉS ---------*/




/*--------- SINGLE ACTUALITÉ ---------*/
.single #wrapper_body #content {
    display: flex;
    flex-flow: column;
    gap: var(--spacing-4xl);
}



/*--------- CONTACT ---------*/

.section_contact input:is([type="text"],[type="email"],[type="number"],[type="tel"]),
.section_contact select,
.section_contact textarea,
.section_contact textarea.elementor-field-textual,
.section_contact .elementor-field-group .elementor-select-wrapper select {
    background: var(--background-color) !important;
}

.section_contact .elementor-column:not(.block_form) .elementor-widget-google_maps,
.section_contact .elementor-column:not(.block_form) .elementor-widget-google_maps .elementor-custom-embed,
.section_contact .elementor-column:not(.block_form) .elementor-widget-google_maps .elementor-custom-embed iframe {
    height: 100%;
}

#wrapper_body .elementor-message {
	border-radius: var(--border-radius);
    display: flex;
	font-size: var(--text-size-small);
    font-weight: var(--text-weight-medium);
    line-height: 1.2;
    letter-spacing: var(--letter-spacing);
    padding: var(--spacing-2xs) calc(var(--spacing-2xs) * 2);
	width: 100%;
    margin: var(--spacing-sm) 0 0 0;
}

#wrapper_body .elementor-message.elementor-message-success {
	background: var(--alert-success-bg);
	border: var(--border-width) solid var(--alert-success-border);
	color: var(--alert-success-color);
}

#wrapper_body .elementor-message.elementor-message-danger {
	background: var(--alert-danger-bg);
	border: var(--border-width) solid var(--alert-danger-border);
	color: var(--alert-danger-color);
}

#wrapper_body .elementor-field-group {
	position: relative;
}

#wrapper_body .elementor-field-group .elementor-message {
    font-size: var(--text-size-small);
	margin: 0;
    padding: var(--spacing-4xs);
}


/* FORMULAIRE */
#wrapper_body .elementor-widget-form .elementor-form-fields-wrapper {
	margin: 0 calc(var(--spacing-3xs) * -1);
}

#wrapper_body .elementor-widget-form .elementor-field-group {
	padding: 0 var(--spacing-3xs) !important;
}

#wrapper_body .elementor-widget-form .elementor-field-label {
    font-size: var(--text-size-small);
	font-weight: var(--text-weight-medium);
    margin-block-end: var(--spacing-2xs);
}

#wrapper_body .elementor-widget-form .elementor-field-group-rgpd {
	margin-block-end: 0 !important;
}


#wrapper_body .section-equipe > .elementor-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--items-min-size)), 1fr));
    gap: var(--items-gap);
}

#wrapper_body .section-equipe > .elementor-container > .elementor-column {
    width: 100% ;
}



/* ----------------------------------- */
/*
/* ----------- RESPONSIVE ------------ */
/*
/* ----------------------------------- */

/* 1281px */
@media screen and (min-width: calc(80rem + 1px)) {
	
    .show-inodia-menu {
		display: none !important;
	}

    .side-socials {
        position: fixed;
        right: var(--spacing-2xs);
        top: 150px;
        z-index: 100;
    }

    .side-socials .list-socials {
        display: flex;
        flex-flow: column;
        gap: var(--spacing-2xs);
    }

    /*----- HEADER -----*/	
    /* HEADER MOBILE */    
    #header > .header-nav {
        pointer-events: none;
    }
    
    #header .container .logo,
    #header #nav-main-desktop > ul > li {
        line-height: 1;
        pointer-events: initial;
    }
}



/* 1280px */
@media screen and (max-width: 80rem) {

    #header .header-nav > .container > a,
    #wrapper .side-socials,
	.hide-inodia-menu {
		display: none !important;
	}

    #wrapper_body .ino-modal .ino-modal-container {
        display: flex;
        flex-direction: column !important;
        gap: var(--spacing-xl);
    }

    .side-socials {
        position: relative;
        z-index: 100;
    }

    .side-socials .list-socials {
        display: flex;
        flex-flow: row;
        flex-wrap: nowrap;
        gap: var(--spacing-2xs);
    }



    #wrapper_body .ino-modal .ino-nav-mobile-menu ul,
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul li {
        display: flex;
        flex-flow: column;
        line-height: 1;
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul li > :is(a[aria-expanded="false"], .ino-nav-wrapper-link:has(button[aria-expanded="false"])) ~ .ino-nav-menu-list {
        display: none;
    }

    #wrapper_body .ino-modal .ino-nav-mobile-menu.center,
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul > :is(li.menu-item-has-children > a[href="#"], li.menu-item-has-children:has(> a:not([href="#"])) > .ino-nav-wrapper-link) {
        justify-content: center;
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu.center ul,
    #wrapper_body .ino-modal .ino-nav-mobile-menu.center ul li {
        align-items: center;
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu.center ul li a {
        text-align: center;
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul.level-1 {
        gap: var(--spacing-xl);
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul.level-2 {
        gap: var(--spacing-md);
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul.level-3 {
        gap: var(--spacing-sm);
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul.level-1 > li {
        gap: var(--spacing-md) var(--spacing-2xs);
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul.level-2 > li {
        gap: var(--spacing-sm) var(--spacing-2xs);
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul.level-3 > li {
        gap: var(--spacing-xs) var(--spacing-2xs);
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul.level-1 > li:not(:last-child) > :is(a[href="#"], .ino-nav-menu-list) > ul.ino-nav-sub-menu {
        margin-block-end: var(--spacing-sm);
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul.level-2 > li:not(:last-child) > :is(a[href="#"], .ino-nav-menu-list) > ul.ino-nav-sub-menu {
        margin-block-end: var(--spacing-2xs);
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu :is(ul > li.menu-item-has-children > a[href="#"], ul > li > .ino-nav-wrapper-link) {
        display: flex;
        align-items: center;
        gap: var(--spacing-2xs);
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul > li.menu-item-has-children > a[href="#"]::after {
        content: "\e900";
        font: var(--font-icon) !important;
        letter-spacing: 0 !important;
        text-transform: lowercase !important;
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul.level-2 > li > a::after,
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul.level-2 > li > .ino-nav-wrapper-link > button i {
        font-size: var(--text-size-small) !important;
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul > li > a[aria-expanded="true"]::after,
    #wrapper_body .ino-modal .ino-nav-mobile-menu ul > li > .ino-nav-wrapper-link > button[aria-expanded="true"] i {
        display: block;
        rotate: 180deg;
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu :is(ul.level-1 > li > a, ul.level-1 > li > div > a) {
        font: var(--text-weight-bold) var(--h4-font-size)/1.1 var(--font-text);
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu :is(ul.level-2 > li > a, ul.level-2 > li > div > a) {
        color: var(--strong-color);
        font: var(--text-weight-medium) var(--text-size-big)/1.1 var(--font-text);
    }
    
    #wrapper_body .ino-modal .ino-nav-mobile-menu :is(ul.level-3 > li > a, ul.level-3 > li > div > a) {
        color: var(--text-color);
        font: var(--text-weight-normal) var(--text-size-normal)/1.1 var(--font-text);
    }
}

@media screen and (min-width: 70rem) {

    #wrapper_body .section-carousel .elementor-container {
        --grid-cols : 24;
        display: grid;
        grid-template-columns: minmax(0, 1fr) repeat(var(--grid-cols), calc(min(var(--wrapper-size-mobile), var(--wrapper-size)) / var(--grid-cols))) minmax(0, 1fr);
        inline-size: 100%;
        gap: 0;
        max-width: unset;
    }

    #wrapper_body .section-carousel .elementor-container .elementor-column:not(.block_carousel) {
        grid-column: 2 / 9;
        width: unset;
    }

    #wrapper_body .section-carousel .elementor-container:has(.elementor-column:not(.block_carousel) + .elementor-column.block_carousel) .elementor-column:not(.block_carousel) {
        grid-column: 2 / 9;
    }
    #wrapper_body .section-carousel .elementor-container:has(.elementor-column.block_carousel + .elementor-column:not(.block_carousel)) .elementor-column:not(.block_carousel) {
        grid-column: 19 / -2;
    }

    #wrapper_body .section-carousel .elementor-container .elementor-column.block_carousel {
        overflow: hidden;
        width: unset;
        display: grid;
        grid-template-columns: subgrid;
        align-items: flex-start;
    }

    #wrapper_body .section-carousel .elementor-container:has(.elementor-column:not(.block_carousel) + .elementor-column.block_carousel) .elementor-column.block_carousel {
        grid-column: 9 / -1;
    }

    #wrapper_body .section-carousel .elementor-container:has(.elementor-column.block_carousel + .elementor-column:not(.block_carousel)) .elementor-column.block_carousel {
        grid-column: 1 / -9;
    }

    #wrapper_body .section-carousel .elementor-container .elementor-column.block_carousel .elementor-widget-wrap {
        grid-column: 2 / -2;
    }

    #wrapper_body .section-carousel .elementor-container .ino-carousel .owl-nav {
        width: calc(100% + 100px) !important;
    }

    #wrapper_body .section-carousel .elementor-container:has(.elementor-column:not(.block_carousel) + .elementor-column.block_carousel) .elementor-column.block_carousel .ino-carousel .owl-nav {
        width: calc(100% + 100px) !important;
        transform: rotate(180deg);
    }

    #wrapper_body .section-faq .faq {
        max-width: 35rem;
    }

    #wrapper_body .boxed {
        max-width: 35rem;
    }

    #wrapper_body .boxed .elementor-widget-wrap .elementor-widget-text-editor {
        max-width: 30rem;
    }
}

@media screen and (max-width: 70rem) {
    #pre-footer .container {
        grid-template-columns: auto;
        justify-content: center;
    }

    #wrapper_body .section-equipe > .elementor-container {
        grid-template-columns: repeat(2, 1fr);
    }

    #wrapper_body .section-carousel .elementor-container:has(.elementor-column.block_carousel + .elementor-column:not(.block_carousel)) .elementor-column.block_carousel {
        order: 2;
    }
    #wrapper_body .section-carousel .elementor-container:has(.elementor-column.block_carousel + .elementor-column:not(.block_carousel)) .elementor-column:not(.block_carousel) {
        order: 1;
    }
    #wrapper_body .section-carousel .elementor-container:has(.elementor-column.block_carousel + .elementor-column:not(.block_carousel)) .elementor-column:not(.block_carousel) .elementor-widget-heading {
        align-items: flex-start !important;
    }

    #wrapper_body .section-carousel .elementor-container:has(.elementor-column.block_carousel + .elementor-column:not(.block_carousel)) .elementor-column.block_carousel .ino-carousel .owl-nav {
        transform: rotate(180deg);
    }


    #pre-footer .container .widget_media_image {
        margin-inline: auto;
    }

    #wrapper_body .section_contact .elementor-column.block_form {
        order: 1;
    }
    #wrapper_body .section_contact .elementor-column:not(.block_form) {
        order: 2;
    }


}



    /* 720px */
@media screen and (max-width: 45rem) {    
	
    /*----- HEADER -----*/
    #header {
		position: relative;
		z-index: 1000;
	}


    
    @media (prefers-reduced-motion: no-preference) {
        
        #header {
		    transition: all .75s cubic-bezier(0.85, 0.09, 0.15, 0.91);
        }
    }
    
	#header.show {
    	width: 100%;	    
		position: sticky;
		inset: var(--header-height) auto auto 0;
		z-index: 1000;
	}
	
	#header.sticky.show {
		inset: var(--banner-height) auto auto 0;
	}
	
	#header.hide {
		translate: initial !important;
	}
    
    #wrapper_body:has(#header.sticky.show) .ino-modal .ino-modal-close {
        inset: calc(var(--padding-header) + (var(--logo-height) / 2)) 0 auto auto;
    }
}



/* 576px */
@media screen and (max-width: 36rem) {
    
    #wrapper_body .elementor-message::before {
        display: none;
    }
    
    
    /*----- HEADER -----*/
    #header #nav-wrapper .nav-main > ul > li > a {
        font-size: var(--text-size-normal);
    }
    
    #header .nav-main ul li.menu-item-has-children > a > span {
        font-size: .25rem;
	}
}



/* 481px */
@media screen and (min-width: calc(30rem + 1px)) {
    
    #btn_form,
    .bouton:not(.link, .icon, .menu-item) a,
    .bouton:not(.link, .icon, .menu-item):is(a, button) {
        min-width: 9rem;
    }
}



/* 480px */
@media screen and (max-width: 30rem) {
        
    input:is([type="text"],[type="email"],[type="number"],[type="tel"]), 
    textarea, 
    textarea.elementor-field-textual {
        padding: var(--spacing-2xs) var(--spacing-xs) !important;
    }

    select,
    .elementor-field-group .elementor-select-wrapper select {
        padding: var(--spacing-2xs) calc(var(--spacing-xs) * 3) var(--spacing-2xs) var(--spacing-xs) !important;
    }
    
    #btn_form,
    .boutons .bouton:not(.link, .icon),
    .bouton:not(.link, .icon),
    .bouton:not(.link, .icon) a,
    .mgbutton:not(.moove-gdpr-infobar-reject-btn) {
        width: 100% !important;
    }
    
    #btn_form, 
    .bouton:not(.link, .icon, .download, :has(i)) a, 
    .bouton:not(.link, .icon, .download, :has(i)):is(a, button),
    .mgbutton:not(.moove-gdpr-infobar-reject-btn) {
        padding: var(--spacing-xs);
    }
    
    .bouton:is(.download, :has(i)) a, 
    .bouton:is(.download, :has(i)):is(a, button) {
        padding: var(--spacing-xs) calc(var(--spacing-xs) * 2);
    }
    
    #wrapper_body .boutons .bouton.contour {
        order: 1;
    }
    
    #wrapper_body .boutons .bouton:not(.contour) {
        order: 2;
    }
    
    #wrapper_body .elementor-top-section.fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
        padding-inline: 0;
    }
    
    #wrapper_body .elementor-top-section.fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) > div {
        width: min(var(--wrapper-size-mobile), var(--wrapper-size));
        margin-inline: auto;
    }
    
    #wrapper_body .elementor-top-section:is(.fond, .supp) + .elementor-top-section:is(.fond, .supp) {
        margin-block-start: 0 !important;
    }
    
    #wrapper_body .elementor-top-section:is(.fond, .supp) {
        margin-block-end: 0 !important;
    }
    
    #wrapper_body .elementor-top-section.fond.block:not(.elementor-section-full_width) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
        border-radius: 0;
    }
    
    
    /*----- FOOTER -----*/
    #footer-content .container .column .widget_media_image {
        display: flex;
        justify-content: center;
    }

    #footer-content .container .column .widget-title {
        text-align: center;
    }

    #footer-content .container .column ul {
        align-items: center;
    }

    #footer-content .container .column .widget_text {
        display: flex;
        flex-flow: column;
        align-items: center;
    }
    
    #footer-content .container .column .widget_text * {
        text-align: center;
    }
	
	
	/*----- CONTACT -----*/
	/* FORMULAIRE */
	#wrapper_body .elementor-widget-form .elementor-field-group {
		margin-block-end: var(--spacing-sm);
	}
}



/* 384px */
@media screen and (max-width: 24rem) {
	    
	#wrapper_body .pagination-block .pagination li:is(.prev, .next) a span {
		display: none;
	}
}


