/* assets/styles.css */

:root {

    --jaune: #FCD600;
    --mauve: #5856D6;
    --vert: #22B573;
    --violet: #BD99FF;
    --orange: #F05A23;
    --rose: #FF7BAC;
    --noir: #333333;
    --blanc: #FFFFFF;
}

/* Prevent Multiple Contact Form 7 Submissions */

.wpcf7-form.submitting .wpcf7-submit {
    pointer-events: none;
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html, body {
    background-color: #000;
}

main {
    background-color: #fff;
}


/* utilities */

/*  Boxed Element In Fullwidth Section (with container) */

:root {
    --padding: 20px;
    --container: 1590px;
    --scroll-bar-width-windows: 17px;
    --scroll-bar-width-mac: 15px;
}


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

    .boxed_left {
        padding-left: calc( ( ( ( 100vw - var(--scroll-bar-width-windows) ) - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    .boxed_left_no_padding {
        padding-left: calc( ( ( ( 100vw - var(--scroll-bar-width-windows) ) - var(--container) ) / 2 ) ) !important;
    }

    .boxed_right {
        padding-right: calc( ( ( ( 100vw - var(--scroll-bar-width-windows)) - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    .boxed_right_no_padding {
        padding-right: calc( ( ( ( 100vw - var(--scroll-bar-width-windows)) - var(--container) ) / 2 ) ) !important;
    }

    body.mac .boxed_left {
        padding-left: calc( ( (  100vw - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    body.mac .boxed_left_no_padding {
        padding-left: calc( ( (  100vw - var(--container) ) / 2 ) ) !important;
    }

    body.mac .boxed_right {
        padding-right: calc( ( ( 100vw - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    body.mac .boxed_right_no_padding {
        padding-right: calc( ( ( 100vw - var(--container) ) / 2 ) ) !important;
    }

    body.mac.scrollbars-visible .boxed_left {
        padding-left: calc( ( ( ( 100vw - var(--scroll-bar-width-mac)  ) - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    body.mac.scrollbars-visible .boxed_left_no_padding {
        padding-left: calc( ( ( ( 100vw - var(--scroll-bar-width-mac)  ) - var(--container) ) / 2 ) ) !important;
    }

    body.mac.scrollbars-visible .boxed_right {
        padding-right: calc( ( ( ( 100vw - var(--scroll-bar-width-mac) ) - var(--container) ) / 2 ) - var(--padding) ) !important;
    }

    body.mac.scrollbars-visible .boxed_right_no_padding {
        padding-right: calc( ( ( ( 100vw - var(--scroll-bar-width-mac) ) - var(--container) ) / 2 ) ) !important;
    }
}

p {
    text-wrap: pretty !important;
}

h2[id] {
    scroll-margin-top: 160px;
}

.lien_noir_mauve a {
    transition: all .3s ease;
}

.lien_noir_mauve a:hover {
    color: var(--mauve) !important;
}

.lien_noir_orange a {
    transition: all .3s ease;
}

.lien_noir_orange a:hover {
    color: var(--orange) !important;
}

.lien_mauve_orange a {
    transition: all .3s ease;
    color: var(--orange) !important;
}

.lien_mauve_orange a:hover {
    color: var(--mauve) !important;
}

.elementor-swiper-button {
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin-top: 0 !important;
}

.elementor-swiper-button circle {
    transition: all .3s ease;
}

.remove_br_767 br {
    display: none !important;
}

/* header */

header.elementor-location-header {
    position: fixed;
    z-index: 1000;
    width: 100%;
}

#header_menu_btn {
    display: block;
}

#header_menu_btn circle {
    transition: all .3 ease;
}

#header_menu_btn circle:hover {
    fill: var(--orange);
    cursor: pointer;
}

#header_menu_btn path {
    pointer-events: none !important;
}

@media only screen and (max-width : 767px) {

    #header_menu_btn {
        width: 36px;
        height: 36px;
    }
}

.wpml_switcher_menu .sub-arrow {
    background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"%3E%3Cpath d="M9.99 0C4.47 0 0 4.48 0 10C0 15.52 4.47 20 9.99 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 9.99 0ZM16.92 6H13.97C13.65 4.75 13.19 3.55 12.59 2.44C14.43 3.07 15.96 4.35 16.92 6ZM10 2.04C10.83 3.24 11.48 4.57 11.91 6H8.09C8.52 4.57 9.17 3.24 10 2.04ZM2.26 12C2.1 11.36 2 10.69 2 10C2 9.31 2.1 8.64 2.26 8H5.64C5.56 8.66 5.5 9.32 5.5 10C5.5 10.68 5.56 11.34 5.64 12H2.26ZM3.08 14H6.03C6.35 15.25 6.81 16.45 7.41 17.56C5.57 16.93 4.04 15.66 3.08 14ZM6.03 6H3.08C4.04 4.34 5.57 3.07 7.41 2.44C6.81 3.55 6.35 4.75 6.03 6ZM10 17.96C9.17 16.76 8.52 15.43 8.09 14H11.91C11.48 15.43 10.83 16.76 10 17.96ZM12.34 12H7.66C7.57 11.34 7.5 10.68 7.5 10C7.5 9.32 7.57 8.65 7.66 8H12.34C12.43 8.65 12.5 9.32 12.5 10C12.5 10.68 12.43 11.34 12.34 12ZM12.59 17.56C13.19 16.45 13.65 15.25 13.97 14H16.92C15.96 15.65 14.43 16.93 12.59 17.56ZM14.36 12C14.44 11.34 14.5 10.68 14.5 10C14.5 9.32 14.44 8.66 14.36 8H17.74C17.9 8.64 18 9.31 18 10C18 10.69 17.9 11.36 17.74 12H14.36Z" fill="%23333333"/%3E%3C/svg%3E');
    background-position: right center;
    background-size: 20px 20px;
    width: 20px;
    margin-left: 10px;
}

.wpml_switcher_menu .sub-arrow svg {
    display: none;
}

.header_top .elementor-nav-menu--main .elementor-nav-menu--dropdown {
    /* display: block !important; */
    width: 44px !important;
    min-width: 44px !important;
    background-color: #fff;
    border-radius: 6px;
    border: 1px solid var(--noir);
}

.header_top .elementor-nav-menu--main .elementor-nav-menu--dropdown li {
    width: 44px !important;
}

.header_top .elementor-nav-menu--main .prendre_rendez_vous {
    display: none !important;
}

@media only screen and (max-width : 767px) {

    .header_btn {
        display: none !important;
    }

    .header_rendez_vous_btn {

    }

    .header_rendez_vous_btn .elementor-button {
        background-color: var(--mauve) !important;
        color: var(--blanc) !important;
    }

    .header_rendez_vous_btn .elementor-button:hover {
        background-color: var(--orange) !important;
        color: var(--blanc) !important;
    }
}

#elementor-popup-modal-525 {
    background-color: rgba(0, 0, 0, 0);
    transition: background-color 1s ease-in-out !important;
}

/* menu buttons */

.btn_close_group {
    width: 51px;
    height: 51px;
    display: block;
    overflow: hidden;
}

.btn_close {
    display: block;
    width: 51px;
    height: 51px;
    line-height: 0;
}

@media only screen and (max-width : 1023px) {

    .btn_close_group {
        width: 28px;
        height: 28px;
    }

    .btn_close {
        width: 28px;
        height: 28px;
    }
}

.btn_close circle {
    fill: var(--mauve) !important;
    transition: all .3s ease !important;
}

.btn_close:hover circle {
    fill: var(--orange) !important;
    cursor: pointer;
}

.btn_close path {
    pointer-events: none !important;
}

.popup_menu .sub-menu {
    position: static !important;
    display: block !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.5s ease-in-out !important;
    opacity: 1 !important;
    visibility: visible !important;
    left: auto !important;
    top: auto !important;
}

/* Show when open */
.popup_menu .menu-item-has-children.open > .sub-menu {
    max-height: 1000px !important;
}

.popup_menu .menu-item {
    display: flex;
    flex-wrap: wrap;
}

.popup_menu .menu-item .has-submenu {
    flex: 1 0 auto
}

.popup_menu .menu-item .has-submenu .sub-arrow {
    display: none;
}

.popup_menu .menu-item .submenu-toggle {
    flex: 0 0 30px;
    background-color: transparent;
    /* background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52'%3E%3Ccircle cx='26' cy='26' r='25.5' fill='%235856D6'/%3E%3Cpath d='M7.2768,26.0369c-.0727-.7535.1554-1.4223.6843-2.0061.5289-.5838,1.1718-.8767,1.9289-.8786l32.2106-.059c.757-.0009,1.4011.2897,1.9321.8716.531.5819.7616,1.2498.6916,2.0036-.0699.7539-.4244,1.4224-1.0634,2.0056-.6391.5832-1.3371.8752-2.0942.876l-31.1216.057c-.7571.002-1.4562-.2875-2.0974-.8683-.6412-.5808-.9981-1.248-1.0708-2.0016Z' fill='%23fff'/%3E%3Cpath d='M25.9631,7.2768c.7535-.0727,1.4223.1554,2.0061.6843.5838.5289.8767,1.1718.8786,1.9289l.059,32.2106c.0009.757-.2897,1.4011-.8716,1.9321-.5819.531-1.2498.7616-2.0036.6916-.7539-.0699-1.4224-.4244-2.0056-1.0634-.5832-.6391-.8752-1.3371-.876-2.0942l-.057-31.1216c-.002-.7571.2875-1.4562.8683-2.0974.5808-.6412,1.248-.9981,2.0016-1.0708Z' fill='%23fff'/%3E%3C/svg%3E"); */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52'%3E%3Ccircle cx='26' cy='26' r='25.5' fill='%23FCD600'/%3E%3Cpath d='M7.2768,26.0369c-.0727-.7535.1554-1.4223.6843-2.0061.5289-.5838,1.1718-.8767,1.9289-.8786l32.2106-.059c.757-.0009,1.4011.2897,1.9321.8716.531.5819.7616,1.2498.6916,2.0036-.0699.7539-.4244,1.4224-1.0634,2.0056-.6391.5832-1.3371.8752-2.0942.876l-31.1216.057c-.7571.002-1.4562-.2875-2.0974-.8683-.6412-.5808-.9981-1.248-1.0708-2.0016Z' fill='%235856D6'/%3E%3Cpath d='M25.9631,7.2768c.7535-.0727,1.4223.1554,2.0061.6843.5838.5289.8767,1.1718.8786,1.9289l.059,32.2106c.0009.757-.2897,1.4011-.8716,1.9321-.5819.531-1.2498.7616-2.0036.6916-.7539-.0699-1.4224-.4244-2.0056-1.0634-.5832-.6391-.8752-1.3371-.876-2.0942l-.057-31.1216c-.002-.7571.2875-1.4562.8683-2.0974.5808-.6412,1.248-.9981,2.0016-1.0708Z' fill='%235856D6'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    width: 30px;
    height: 30px;
    cursor: pointer;
    transition: all 0.3s ease;
    user-select: none;
}

/* .popup_menu .menu-item .submenu-toggle:hover {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52'%3E%3Ccircle cx='26' cy='26' r='25.5' fill='%23FCD600'/%3E%3Cpath d='M7.2768,26.0369c-.0727-.7535.1554-1.4223.6843-2.0061.5289-.5838,1.1718-.8767,1.9289-.8786l32.2106-.059c.757-.0009,1.4011.2897,1.9321.8716.531.5819.7616,1.2498.6916,2.0036-.0699.7539-.4244,1.4224-1.0634,2.0056-.6391.5832-1.3371.8752-2.0942.876l-31.1216.057c-.7571.002-1.4562-.2875-2.0974-.8683-.6412-.5808-.9981-1.248-1.0708-2.0016Z' fill='%23fff'/%3E%3Cpath d='M25.9631,7.2768c.7535-.0727,1.4223.1554,2.0061.6843.5838.5289.8767,1.1718.8786,1.9289l.059,32.2106c.0009.757-.2897,1.4011-.8716,1.9321-.5819.531-1.2498.7616-2.0036.6916-.7539-.0699-1.4224-.4244-2.0056-1.0634-.5832-.6391-.8752-1.3371-.876-2.0942l-.057-31.1216c-.002-.7571.2875-1.4562.8683-2.0974.5808-.6412,1.248-.9981,2.0016-1.0708Z' fill='%235856D6'/%3E%3C/svg%3E");
} */

.popup_menu .menu-item.open .submenu-toggle {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52'%3E%3Ccircle cx='26' cy='26' r='25.5' fill='%23FCD600'/%3E%3Cpath d='M7.2768,26.0369c-.0727-.7535.1554-1.4223.6843-2.0061.5289-.5838,1.1718-.8767,1.9289-.8786l32.2106-.059c.757-.0009,1.4011.2897,1.9321.8716.531.5819.7616,1.2498.6916,2.0036-.0699.7539-.4244,1.4224-1.0634,2.0056-.6391.5832-1.3371.8752-2.0942.876l-31.1216.057c-.7571.002-1.4562-.2875-2.0974-.8683-.6412-.5808-.9981-1.248-1.0708-2.0016Z' fill='%235856D6'/%3E%3C/svg%3E");
}

/* .popup_menu .menu-item.open .submenu-toggle:hover {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52'%3E%3Ccircle cx='26' cy='26' r='25.5' fill='%23f05a23'/%3E%3Cpath d='M7.2768,26.0369c-.0727-.7535.1554-1.4223.6843-2.0061.5289-.5838,1.1718-.8767,1.9289-.8786l32.2106-.059c.757-.0009,1.4011.2897,1.9321.8716.531.5819.7616,1.2498.6916,2.0036-.0699.7539-.4244,1.4224-1.0634,2.0056-.6391.5832-1.3371.8752-2.0942.876l-31.1216.057c-.7571.002-1.4562-.2875-2.0974-.8683-.6412-.5808-.9981-1.248-1.0708-2.0016Z' fill='%23fff'/%3E%3C/svg%3E");
} */

.popup_menu .menu-item ul {
    flex: 0 0 100%;
}

.elementor-popup-modal {
    transition: background-color 0.4s ease-in-out !important;
}

@media (max-width: 1024px) {
    body.admin-bar .dialog-type-lightbox {
        position: fixed !important;
    }
}

/* footer */

@media only screen and (max-width : 424px) {

    footer .footer_formulaire input {
        text-align: center;
    }
}

footer .footer_social a svg {
    transition: all .3s ease;
}

footer .footer_social a:hover svg {
    fill: var(--orange) !important;
}

.footer_formulaire .elementor-button {
    transition: all .3s ease;
    height: 53px;
}

@media only screen and (max-width : 1023px) {
    .footer_formulaire .elementor-button {
        height: 40px;
    }
}

.footer_formulaire .elementor-button:hover {
    background-color: var(--orange) !important;
}

/* home */

.participe_rotate img {
    animation: participe_rotate 10s linear infinite;
}

@keyframes participe_rotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.rotate_jaune {
    transform: rotate(-3.642deg);
}

.rotate_jaune:hover {
    transform: rotate(3.642deg);
}

.rotate_vert {
    transform: rotate(3.676deg);
}

.rotate_vert:hover {
    transform: rotate(-3.676deg);
}

.rotate_violet {
    transform: rotate(-5.683deg);
}

.rotate_violet:hover {
    transform: rotate(5.683deg);
}

.fleche_rouge {
    width: 52px;
    height: 52px;
    transform: translate(-50%, 50%);
}

.fleche_rouge a {
    width: 52px;
    height: 52px;
    display: block;
}

.btn_fleche_rouge {
    width: 52px;
    height: 52px;
    display: block;
}

.fleche_rouge a svg circle {
    transition: all .3s ease;
}

.fleche_rouge a:hover svg circle {
    fill: var(--noir) !important;
}

.rotate_phrase {
    transform: rotate(-5.41deg);
}

.marquee {
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
}

.marquee .elementor-heading-title {
  display: inline-block;
  animation: marquee 30s linear infinite;
}

.marquee .elementor-heading-title span {
  display: inline-block;
}

@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.star-rating {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.star-rating .star {
    display: inline-block;
    width: 24px;
    height: 24px;
    line-height: 0;
}

.star-rating .star svg {
    width: 100%;
    height: 100%;
    display: block;
}

.star-rating .star.filled svg path {
    fill: var(--jaune);
}

.star-rating .star.empty svg path {
    fill: #D3D3D3; /* Light Grey */
}

@keyframes dance {
  0%, 100% { transform: scale(1) rotate(-5deg); }
  50% { transform: scale(0.9) rotate(5deg); }
}

.dance {
  animation: dance 7s ease-in-out infinite;
  z-index: 1;
}

@keyframes dance_reverse {
  0%, 100% { transform: rotate(5deg); }
  50% { transform: rotate(-5deg); }
}

.dance_reverse {
  animation: dance_reverse 7s ease-in-out infinite;
  z-index: 1;
}

.scale_img_point_nine img {
    transform: scale(0.9);
}

.home_accordeon details:first-child summary {
    border-top: 0px solid #000;
}

/* page qui nous sommes */

.rotate_7_350 {
    transform: rotate(7.350deg);
}

.rotate_7_350:hover {
    transform: rotate(0deg);
}

.rotate_negative_5_284 {
    transform: rotate(-5.284deg);
}

.rotate_negative_5_284:hover {
    transform: rotate(0deg);
}

.rotate_3_200 {
    transform: rotate(3.2deg);
}

.rotate_3_200:hover {
    transform: rotate(0deg);
}

.rotate_6_187 {
    transform: rotate(6.187deg);
}

.rotate_6_187:hover {
    transform: rotate(0deg);
}

.rotate_negative_4_892 {
    transform: rotate(-4.892deg);
}

.rotate_negative_4_892:hover {
    transform: rotate(0deg);
    z-index: 2;
}

.rotate_1_219 {
    transform: rotate(1.219deg);
}

.rotate_1_219:hover {
    transform: rotate(0deg);
    z-index: 2;
}

.rotate_negative_8_549 {
    transform: rotate(-8.549deg);
}

.rotate_negative_8_549:hover {
    transform: rotate(0deg);
}

.rotate_2_713 {
    transform: rotate(2.713deg);
}

.rotate_2_713:hover {
    transform: rotate(0deg);
}

.rotate_negative_2_004 {
    transform: rotate(-2.004deg);
}

.rotate_negative_2_004:hover {
    transform: rotate(0deg);
}

.rotate_negative_5_509 {
    transform: rotate(5.509deg);
}

.rotate_negative_5_509:hover {
    transform: rotate(0deg);
}



.translate_x_minus_50_percent {
    transform: translateX(-50%);
}

/* formulaires */

.wpcf7 form .wpcf7-response-output {
    margin: 0.5em 0em;
    padding: 1em;
    border: 0px solid var(--orange);
    background-color: var(--orange);
    color: var(--blanc);
    font-size: 18px !important;
    line-height: 1.3 !important;
    font-weight: 500 !important;
    border-radius: 9px !important;
    text-align: center !important;
}

@media only screen and (max-width : 767px) {

    .wpcf7 form .wpcf7-response-output {
        font-size: 16px !important;
    }
}

/* formulaire_infolettre */

.formulaire_infolettre {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
}

.formulaire_infolettre p {
    margin: 0 !important;
}

.formulaire_infolettre label,
.formulaire_infolettre br {
    display: none;
}

.formulaire_infolettre .courriel {
    flex: 0 0 calc( 67% - 5px );
}

.formulaire_infolettre .courriel input {
    background-color: var(--blanc);
    border: 0px solid var(--blanc);
    border-radius: 23px;
    box-sizing: border-box;
    color: var(--noir);
    cursor: text;
    display: block;
    font-family: "Clash Display", sans-serif;
    font-size: 24px;
    font-weight: 400;
    height: 53px;
    line-height: 1;
    margin: 0px;
    min-height: 53px;
    padding: 12px 30px;
    transition: all .3s ease;
    width: 100%;
}

.formulaire_infolettre .bouton {
    flex: 0 0 calc( 33% - 5px );
}

.formulaire_infolettre .bouton input {
    background-color: var(--mauve);
    border: 0px solid var(--mauve);
    border-radius: 23px;
    box-sizing: border-box;
    color: var(--blanc);
    cursor: pointer;
    display: block;
    fill: var(--blanc);
    font-family: "Clash Display", sans-serif;
    font-size: 24px;
    font-weight: 400;
    height: 53px;
    line-height: 1;
    margin: 0;
    min-height: 53px;
    padding: 10px;
    text-align: center;
    transition: all .3s ease;
    user-select: none;
    width: 100%;
}

.formulaire_infolettre .wpcf7-spinner {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    border-radius: 0;
    z-index: 1000;
    margin: 0;
    transition: all .3s ease;
}

.formulaire_infolettre .wpcf7-spinner::before {
    position: initial;
    width: 24px;
    height: 24px;
    transform-origin: 24px 24px;
}

form.submitting .formulaire_infolettre .wpcf7-spinner {
    visibility: visible;
}

.formulaire_infolettre .wpcf7-not-valid-tip {
    color: var(--orange);
    font-size: 18px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    margin-top: .25em !important;
    padding-left: 30px;
}

@media only screen and (max-width : 1023px) {

    .formulaire_infolettre .courriel input {
        font-size: 20px;
        height: 40px;
        min-height: 40px;
    }

    .formulaire_infolettre .bouton input {
        font-size: 20px;
        height: 40px;
        min-height: 40px;
    }
}

@media only screen and (max-width : 767px) {

    .formulaire_infolettre .courriel input {
        font-size: 18px;
    }

    .formulaire_infolettre .bouton input {
        font-size: 18px;
    }

    .formulaire_infolettre .wpcf7-not-valid-tip {
        font-size: 16px !important;
    }

    .wpcf7 form .wpcf7-response-output {
        font-size: 16px !important;
    }
}

@media only screen and (max-width : 424px) {

    .formulaire_infolettre {
        flex-direction: column;
        row-gap: 10px;
    }

    .formulaire_infolettre .courriel {
        flex: 0 0 100%;
    }

    .formulaire_infolettre .courriel input {
        flex: 0 0 100%;
        text-align: center;
        padding: 12px !important;
    }

    .formulaire_infolettre .bouton {
        flex: 0 0 100%;
    }

    .formulaire_infolettre .wpcf7-not-valid-tip {
        padding-left: 0px !important;
        text-align: center !important;
    }
}

/* white language switcher */

/* page nous joindre fr=109 */

.page-id-109 .elementor-location-header .wpml-ls-current-language > a {
    color: var(--blanc) !important;
    fill: var(--blanc) !important;
}

.page-id-109 .wpml_switcher_menu .sub-arrow {
    background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"%3E%3Cpath d="M9.99 0C4.47 0 0 4.48 0 10C0 15.52 4.47 20 9.99 20C15.52 20 20 15.52 20 10C20 4.48 15.52 0 9.99 0ZM16.92 6H13.97C13.65 4.75 13.19 3.55 12.59 2.44C14.43 3.07 15.96 4.35 16.92 6ZM10 2.04C10.83 3.24 11.48 4.57 11.91 6H8.09C8.52 4.57 9.17 3.24 10 2.04ZM2.26 12C2.1 11.36 2 10.69 2 10C2 9.31 2.1 8.64 2.26 8H5.64C5.56 8.66 5.5 9.32 5.5 10C5.5 10.68 5.56 11.34 5.64 12H2.26ZM3.08 14H6.03C6.35 15.25 6.81 16.45 7.41 17.56C5.57 16.93 4.04 15.66 3.08 14ZM6.03 6H3.08C4.04 4.34 5.57 3.07 7.41 2.44C6.81 3.55 6.35 4.75 6.03 6ZM10 17.96C9.17 16.76 8.52 15.43 8.09 14H11.91C11.48 15.43 10.83 16.76 10 17.96ZM12.34 12H7.66C7.57 11.34 7.5 10.68 7.5 10C7.5 9.32 7.57 8.65 7.66 8H12.34C12.43 8.65 12.5 9.32 12.5 10C12.5 10.68 12.43 11.34 12.34 12ZM12.59 17.56C13.19 16.45 13.65 15.25 13.97 14H16.92C15.96 15.65 14.43 16.93 12.59 17.56ZM14.36 12C14.44 11.34 14.5 10.68 14.5 10C14.5 9.32 14.44 8.66 14.36 8H17.74C17.9 8.64 18 9.31 18 10C18 10.69 17.9 11.36 17.74 12H14.36Z" fill="%23ffffff"/%3E%3C/svg%3E');
}

/* formulaire_nous_joindre */

.formulaire_nous_joindre {
    gap: 16px;
    height: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 53px 53px 53px 1fr 53px;
}

.formulaire_nous_joindre .wpcf7-not-valid-tip {
    display: none !important;
}

.formulaire_nous_joindre > div:nth-child(1) { grid-column: 1; }
.formulaire_nous_joindre > div:nth-child(2) { grid-column: 2; }
.formulaire_nous_joindre > div:nth-child(3) { grid-column: 1 / -1; }
.formulaire_nous_joindre > div:nth-child(4) { grid-column: 1 / -1; }
.formulaire_nous_joindre > div:nth-child(5) { grid-column: 1 / -1; }  /* commentaires - 1fr */
.formulaire_nous_joindre > div:nth-child(6) { grid-column: 1 / -1; }

.formulaire_nous_joindre .commentaires p {
    height: 100%;
}

.formulaire_nous_joindre p {
    margin: 0 !important;
}

.formulaire_nous_joindre label,
.formulaire_nous_joindre br {
    display: none;
}

.formulaire_nous_joindre input,
.formulaire_nous_joindre textarea {
    background-color: var(--blanc);
    border: 4px solid var(--blanc);
    border-radius: 8px;
    box-sizing: border-box;
    color: var(--noir);
    cursor: text;
    display: block;
    font-family: "Clash Display", sans-serif;
    font-size: 24px;
    font-weight: 400;
    height: 53px;
    line-height: 1;
    margin: 0px;
    min-height: 53px;
    padding: 12px 30px;
    transition: all .3s ease;
    width: 100%;
}

.formulaire_nous_joindre textarea {
    height: 100%;
}

.formulaire_nous_joindre input.wpcf7-not-valid,
.formulaire_nous_joindre textarea.wpcf7-not-valid {
    border: 4px solid var(--orange);
}

.formulaire_nous_joindre .bouton input {
    background-color: var(--jaune);
    border: 0px solid var(--jaune);
    border-radius: 23px;
    box-sizing: border-box;
    color: var(--noir);
    cursor: pointer;
    display: block;
    fill: var(--noir);
    font-family: "Clash Display", sans-serif;
    font-size: 24px;
    font-weight: 400;
    height: 53px;
    line-height: 1;
    margin: 0 0 0 auto;
    min-height: 53px;
    padding: 10px 40px;
    text-align: center;
    transition: all .3s ease;
    user-select: none;
    width: auto;
}

.formulaire_nous_joindre .bouton input:hover {
    background-color: var(--violet);
    border: 0px solid var(--violet);
    color: var(--blanc);
    fill: var(--blanc);
}

.formulaire_nous_joindre .wpcf7-spinner {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    border-radius: 0;
    z-index: 1000;
    margin: 0;
    transition: all .3s ease;
}

.formulaire_nous_joindre .wpcf7-spinner::before {
    position: initial;
    width: 24px;
    height: 24px;
    transform-origin: 24px 24px;
}

form.submitting .formulaire_nous_joindre .wpcf7-spinner {
    visibility: visible;
}

.formulaire_nous_joindre .wpcf7-not-valid-tip {
    color: var(--orange);
    font-size: 18px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    margin-top: .25em !important;
    padding-left: 30px;
}

.formulaire_nous_joindre .acceptance label {
    display: flex !important;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    font-size: 18px;
    line-height: 1.5;
    color: var(--blanc);
}

.formulaire_nous_joindre .acceptance .wpcf7-list-item {
    margin: 0 !important;
}

.formulaire_nous_joindre .acceptance label > input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    flex: 0 0 20px;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px;
    min-height: 20px;
    border-radius: 0px !important;
    border: 1.5px solid rgba(255,255,255,0.5) !important;
    background: #ffffff !important;
    cursor: pointer;
    position: relative;
    flex-shrink: 0;
    margin: 3px 0 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s, background 0.15s;
}

.formulaire_nous_joindre .acceptance label > input[type="checkbox"]:hover {
    border-color: var(--blanc) !important;
}

.formulaire_nous_joindre .acceptance label > input[type="checkbox"]:checked {
    border-color: var(--vert) !important;
    background: var(--vert) !important;
}

.formulaire_nous_joindre .acceptance label > input[type="checkbox"]:checked::after {
    content: '';
    position: absolute;
    left: 5px;
    top: 1px;
    width: 6px;
    height: 11px;
    border: 4px solid #ffffff;
    border-top: none;
    border-left: none;
    transform: rotate(45deg);
}

.formulaire_nous_joindre .acceptance label > span {
    flex: 0 0 calc( 100% - 40px);
}

.formulaire_nous_joindre .wpcf7-acceptance a {
    color: var(--blanc);
    text-decoration: underline;
}

@media only screen and (max-width : 1023px) {

    .formulaire_nous_joindre {
        grid-template-rows: 40px 40px 40px 200px 40px;
    }

    .formulaire_nous_joindre input {
        font-size: 20px;
        height: 40px;
        min-height: 40px;
    }

    .formulaire_nous_joindre textarea {
        font-size: 20px;
    }

    .formulaire_nous_joindre .bouton input {
        font-size: 20px;
        height: 40px;
        min-height: 40px;
    }
}

@media only screen and (max-width : 767px) {

    .formulaire_nous_joindre {
        gap: 16px;
        height: 100%;
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }

    .formulaire_nous_joindre > div:nth-child(1),
    .formulaire_nous_joindre > div:nth-child(2) {
        grid-column: 1;
    }

    .formulaire_nous_joindre input,
    .formulaire_nous_joindre textarea {
        font-size: 18px;
    }

    .formulaire_nous_joindre .bouton input {
        font-size: 18px;
    }

    .formulaire_nous_joindre .wpcf7-not-valid-tip {
        font-size: 16px !important;
    }

    .formulaire_nous_joindre input,
    .formulaire_nous_joindre textarea {
        padding: 12px !important;
    }
}

@media only screen and (max-width : 424px) {

    .formulaire_nous_joindre {
        flex-direction: column;
        row-gap: 10px;
        column-gap: 10px;
    }

    .formulaire_nous_joindre .wpcf7-not-valid-tip {
        padding-left: 0px !important;
        text-align: center !important;
    }
}

.formulaire_nous_joindre_sc,
.formulaire_nous_joindre_sc .elementor-shortcode,
.formulaire_nous_joindre_sc .elementor-shortcode .wpcf7,
.formulaire_nous_joindre_sc .elementor-shortcode form {
    height: 100%;
}

form.invalid {
    height: auto !important;
}

/* actualites */

.actualites_grid_top .elementor-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(3, auto);
}

.actualites_grid_top .elementor-grid div.e-loop-item:nth-child(2) {
    grid-row: 1 / 4;
}

.actualites_grid_top .elementor-grid div.e-loop-item:nth-child(2) > div > .e-con-inner {
    flex-direction: column;
    justify-content: flex-start;
    gap: 30px;
}

.actualites_grid_top .elementor-grid div.e-loop-item:nth-child(2) > div > .e-con-inner .actualites_loop_image {
    width: 100%;
}

.actualites_grid_top .elementor-grid div.e-loop-item:nth-child(2) > div > .e-con-inner .actualites_loop_image img {
    width: 100%;
    max-width: 500px;
}

.actualites_grid_top .elementor-grid div.e-loop-item:nth-child(2) > div > .e-con-inner .actualites_loop_info {
    width: 100%;
}

@media only screen and (max-width : 1023px) {

    .actualites_grid_top .elementor-grid {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(4, auto);
    }
}

.actualites_grid_bottom.elementor-widget-loop-grid:not(:has(>.elementor-widget-container)) .e-load-more-spinner svg,
.actualites_grid_bottom.elementor-widget-loop-grid>.elementor-widget-container .e-load-more-spinner svg {
    fill: var(--load-more-spinner-color);
    height: 2em;
    width: 2em;
}

.actualites_grid_bottom .actualites_loop:hover {
    background-color: rgb(0,0,0,.05) !important;
}

.retour_btn .elementor-button-icon {
    width: .8em !important;
}


.vert_before_after {
    position: relative;
}

.vert_before_after::before {
    position: absolute;
    content: '';
    display: block;
    top: 0;
    left: -100vw;
    width: 100vw;
    height: 100%;
    background-color: var(--vert);
}

.vert_before_after::after {
    position: absolute;
    content: '';
    display: block;
    top: 0;
    right: -100vw;
    width: 100vw;
    height: 100%;
    background-color: var(--vert);
}


.bg_vert_blanc {
      background: linear-gradient(to bottom, var(--vert) 50%, var(--blanc) 50%) no-repeat;
}

.actualites_content h2 {
    font-size: 48px !important;
}

@media only screen and (max-width : 1439px) {

    .actualites_content h2 {
        font-size: 36px !important;
    }
}

@media only screen and (max-width : 1199px) {

    .actualites_content h2 {
        font-size: 30px !important;
    }
}

@media only screen and (max-width : 1023px) {

    .actualites_content h2 {
        /* font-size: 24px !important; */
    }
}

@media only screen and (max-width : 767px) {

    .actualites_content h2 {
        font-size: 27px !important;
    }
}

@media only screen and (max-width : 424px) {

    .actualites_content h2 {
        font-size: 24px !important;
    }
}

.actualites_content p {
    margin-bottom: 1em !important;
}

.actualites_content p:last-child {
    margin-bottom: 0 !important;
}

.actualites_content ul,
.actualites_content ol {
    margin-bottom: 1em;
}

.actualites_content ul ul,
.actualites_content ul ol,
.actualites_content ol ol,
.actualites_content ol ul {
    margin-bottom: 0.25em;
}

.actualites_content ul ul:first-child,
.actualites_content ul ol:first-child,
.actualites_content ol ol:first-child,
.actualites_content ol ul:first-child {
    margin-top: 0.25em;
}

.actualites_content li {
    margin-bottom: .25em;
}

.actualites_content li:last-child {
    margin-bottom: 0;
}


/* accordeon_faq */

.accordeon_faq h3 {
    color: var(--mauve) !important;
}

.accordeon_faq h3:hover,
.accordeon_faq h3:focus,
.accordeon_faq h3:active {
    color: var(--orange) !important;
}

.accordeon_faq summary[aria-expanded="true"] h3 {
    color: var(--vert) !important;
}

/* formulaire_devenir_membre */

.formulaire_devenir_membre {
    gap: 16px;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: space-between;
}

.formulaire_devenir_membre .half {
    flex: 0 0 calc( 50% - 10px );
}

.formulaire_devenir_membre .third {
    flex: 0 0 calc( 33.333% - 12px );
}

.formulaire_devenir_membre .full {
    flex: 100%;
}

.formulaire_devenir_membre .wpcf7-not-valid-tip {
    display: inline-block !important;
    background-color: var(--orange);
    color: var(--blanc);
    padding: 6px;
    border-radius: 20px;
}

.formulaire_devenir_membre .commentaires p {
    height: 100%;
}

.formulaire_devenir_membre p {
    margin: 0 !important;
}

.formulaire_devenir_membre label,
.formulaire_devenir_membre br {
    display: none;
}

.formulaire_devenir_membre input[type="text"],
.formulaire_devenir_membre input[type="email"],
.formulaire_devenir_membre textarea {
    background-color: var(--blanc);
    border: 4px solid var(--blanc);
    border-radius: 8px;
    box-sizing: border-box;
    color: var(--noir);
    cursor: text;
    display: block;
    font-family: "Clash Display", sans-serif;
    font-size: 24px;
    font-weight: 400;
    height: 53px;
    line-height: 1;
    margin: 0px;
    min-height: 53px;
    padding: 12px 30px;
    transition: all .3s ease;
    width: 100%;
}

.formulaire_devenir_membre textarea {
    height: 100%;
}

.formulaire_devenir_membre .bouton input {
    background-color: var(--jaune);
    border: 0px solid var(--jaune);
    border-radius: 23px;
    box-sizing: border-box;
    color: var(--noir);
    cursor: pointer;
    display: block;
    fill: var(--noir);
    font-family: "Clash Display", sans-serif;
    font-size: 24px;
    font-weight: 400;
    height: 53px;
    line-height: 1;
    margin: 0 0 0 auto;
    min-height: 53px;
    padding: 10px 40px;
    text-align: center;
    transition: all .3s ease;
    user-select: none;
    width: auto;
}

.formulaire_devenir_membre .bouton input:hover {
    background-color: var(--violet);
    border: 0px solid var(--violet);
    color: var(--blanc);
    fill: var(--blanc);
}

.formulaire_devenir_membre legend,
.formulaire_devenir_membre .show_label label {
    color: var(--blanc);
    font-size: 24px;
    line-height: 1.5;
    font-weight: 500;
    margin-top: 25px;
}

.formulaire_devenir_membre .show_label textarea {
    margin-top: 20px;
}

.formulaire_devenir_membre .wpcf7-radio {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 20px;
}

.formulaire_devenir_membre .wpcf7-radio label,
.formulaire_devenir_membre .wpcf7-checkbox label {
    color: var(--blanc);
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start;
    gap: 12px;
    margin-top: 0px;
    font-size: 20px;
    line-height: 1.5;
}

/* Radio cercle — toutes les règles en un seul bloc pour éviter les conflits */
.formulaire_devenir_membre .wpcf7-radio label input[type="radio"],
.formulaire_devenir_membre .wpcf7-checkbox label input[type="radio"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px;
    min-height: 20px;
    border-radius: 50% !important;
    border: 1.5px solid rgba(255,255,255,0.5) !important;
    background: #ffffff !important;
    cursor: pointer;
    position: relative;
    flex-shrink: 0;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s, background 0.15s;
}

.formulaire_devenir_membre .wpcf7-radio label input[type="radio"]:hover,
.formulaire_devenir_membre .wpcf7-radio label input[type="radio"]:hover {
    border-color: var(--blanc) !important;
}

.formulaire_devenir_membre .wpcf7-radio label input[type="radio"]:checked,
.formulaire_devenir_membre .wpcf7-radio label input[type="radio"]:checked {
    border-color: var(--vert) !important;
    background: var(--vert) !important;
}

.formulaire_devenir_membre .wpcf7-radio label input[type="radio"]:checked::after,
.formulaire_devenir_membre .wpcf7-radio label input[type="radio"]:checked::after {
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--vert);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.formulaire_devenir_membre .wpcf7-spinner {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    border-radius: 0;
    z-index: 1000;
    margin: 0;
    transition: all .3s ease;
}

.formulaire_devenir_membre .wpcf7-spinner::before {
    position: initial;
    width: 24px;
    height: 24px;
    transform-origin: 24px 24px;
}

form.submitting .formulaire_devenir_membre .wpcf7-spinner {
    visibility: visible;
}

.formulaire_devenir_membre .wpcf7-not-valid-tip {
    font-size: 18px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    margin-top: 20px !important;
    padding-left: 30px;
    padding-right: 30px;
}

.formulaire_devenir_membre .wpcf7-acceptance label,
.formulaire_devenir_membre .wpcf7-checkbox label {
    display: flex;
    gap: 20px;
    color: var(--blanc);
    font-size: 20px;
    line-height: 1.5;
    font-weight: 400;
    margin-top: 25px;
    align-items: flex-start;
}

.formulaire_devenir_membre .wpcf7-acceptance input[type="checkbox"],
.formulaire_devenir_membre .wpcf7-checkbox input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px;
    min-height: 20px;
    border-radius: 0px !important;
    border: 1.5px solid rgba(255,255,255,0.5) !important;
    background: #ffffff !important;
    cursor: pointer;
    position: relative;
    flex-shrink: 0;
    margin: 3px 0 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s, background 0.15s;
}

.formulaire_devenir_membre .wpcf7-acceptance input[type="checkbox"]:hover,
.formulaire_devenir_membre .wpcf7-checkbox input[type="checkbox"]:hover {
    border-color: var(--blanc) !important;
}

.formulaire_devenir_membre .wpcf7-acceptance input[type="checkbox"]:checked,
.formulaire_devenir_membre .wpcf7-checkbox input[type="checkbox"]:checked {
    border-color: var(--vert) !important;
    background: var(--vert) !important;
}

.formulaire_devenir_membre .wpcf7-acceptance input[type="checkbox"]:checked::after,
.formulaire_devenir_membre .wpcf7-checkbox input[type="checkbox"]:checked::after {
    content: '';
    position: absolute;
    left: 6px;
    top: 2px;
    width: 6px;
    height: 11px;
    border: 4px solid #ffffff;
    border-top: none;
    border-left: none;
    transform: rotate(45deg);
}

.formulaire_devenir_membre .wpcf7-acceptance a {
    color: var(--blanc);
    text-decoration: underline;
}

.formulaire_devenir_membre hr {
    border-color: var(--blanc);
    width: 100%;
    margin-top: 20px;
}

.formulaire_devenir_membre .consommation_oui .wpcf7-checkbox {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.formulaire_devenir_membre .consommation_oui .wpcf7-list-item:not(:first-child) label {
    margin-top: 0;
}

.formulaire_devenir_membre .show_label label {
    display: block !important;
}


@media only screen and (max-width : 1199px) {

    .formulaire_devenir_membre legend,
    .formulaire_devenir_membre .show_label label {
        font-size: 20px;
    }

    .formulaire_devenir_membre .wpcf7-radio label,
    .formulaire_devenir_membre .wpcf7-checkbox label {
        font-size: 18px;
    }

    .formulaire_devenir_membre input[type="text"],
    .formulaire_devenir_membre input[type="email"],
    .formulaire_devenir_membre textarea {
        font-size: 20px;
    }

    .formulaire_devenir_membre .bouton input {
        font-size: 20px;
    }

    .formulaire_devenir_membre .wpcf7-acceptance label,
    .formulaire_devenir_membre .wpcf7-checkbox label {
        font-size: 18px;
    }
}

@media only screen and (max-width : 1023px) {

    .formulaire_devenir_membre {
        grid-template-rows: 40px 40px 40px 200px 40px;
    }

    .formulaire_devenir_membre input {
        font-size: 20px;
        height: 40px;
        min-height: 40px;
    }

    .formulaire_devenir_membre textarea {
        font-size: 20px;
    }

    .formulaire_devenir_membre .bouton input {
        font-size: 20px;
        height: 40px;
        min-height: 40px;
    }
}

@media only screen and (max-width : 767px) {

    .formulaire_devenir_membre .half {
        flex: 100%;
    }

    .formulaire_devenir_membre .third {
        flex: 100%;
    }

    .formulaire_devenir_membre input,
    .formulaire_devenir_membre textarea {
        font-size: 18px;
    }

    .formulaire_devenir_membre .bouton input {
        font-size: 18px;
    }

    .formulaire_devenir_membre .wpcf7-not-valid-tip {
        font-size: 16px !important;
    }

    .formulaire_devenir_membre input,
    .formulaire_devenir_membre textarea {
        padding: 12px !important;
    }

    .formulaire_devenir_membre legend,
    .formulaire_devenir_membre .show_label label {
        font-size: 18px;
    }

    .formulaire_devenir_membre .wpcf7-radio label,
    .formulaire_devenir_membre .wpcf7-checkbox label {
        font-size: 16px;
    }

    .formulaire_devenir_membre input[type="text"],
    .formulaire_devenir_membre input[type="email"],
    .formulaire_devenir_membre textarea {
        font-size: 18px;
    }

    .formulaire_devenir_membre .bouton input {
        font-size: 18px;
    }

    .formulaire_devenir_membre .wpcf7-acceptance label,
    .formulaire_devenir_membre .wpcf7-checkbox label {
        font-size: 16px;
    }
}

@media only screen and (max-width : 424px) {

    .formulaire_devenir_membre {
        flex-direction: column;
        row-gap: 10px;
        column-gap: 10px;
    }

    .formulaire_devenir_membre .wpcf7-not-valid-tip {
        padding-left: 0px !important;
        text-align: center !important;
    }
}

.formulaire_devenir_membre_requis {
    font-size: 18px !important;
    margin: 0 0 1em 0 !important;
    color: var(--blanc) !important;
}

@media only screen and (max-width : 424px) {

    .formulaire_devenir_membre_requis {
        font-size: 16px !important;
    }
}

/* formulaire_infolettre_acceptance */

.formulaire_infolettre_acceptance .wpcf7-acceptance label {
    display: flex;
    gap: 20px;
    color: var(--noir);
    font-size: 20px;
    line-height: 1.5;
    font-weight: 400;
    margin-top: 10px;
    margin-bottom: 15px;
    align-items: flex-start;
}

.formulaire_infolettre_acceptance .wpcf7-acceptance input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px;
    min-height: 20px;
    border-radius: 0px !important;
    border: 1.5px solid rgba(255,255,255,0.5) !important;
    background: #ffffff !important;
    cursor: pointer;
    position: relative;
    flex-shrink: 0;
    margin: 3px 0 0 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s, background 0.15s;
}

.formulaire_infolettre_acceptance .wpcf7-acceptance input[type="checkbox"]:hover {
    border-color: var(--blanc) !important;
}

.formulaire_infolettre_acceptance .wpcf7-acceptance input[type="checkbox"]:checked {
    border-color: var(--vert) !important;
    background: var(--vert) !important;
}

.formulaire_infolettre_acceptance .wpcf7-acceptance input[type="checkbox"]:checked::after {
    content: '';
    position: absolute;
    left: 6px;
    top: 2px;
    width: 6px;
    height: 11px;
    border: 4px solid #ffffff;
    border-top: none;
    border-left: none;
    transform: rotate(45deg);
}

.formulaire_infolettre_acceptance .wpcf7-acceptance .wpcf7-list-item-label {
    color: var(--noir);
    font-size: 16px;
    line-height: 1.3;
}

.formulaire_infolettre_acceptance .wpcf7-acceptance .wpcf7-list-item-label a {
    color: var(--noir);
    text-decoration: underline;
    font-size: 16px;
}

@media only screen and (max-width : 767px) {

    .formulaire_infolettre_acceptance .wpcf7-acceptance .wpcf7-list-item-label {
        font-size: 14px;
    }

    .formulaire_infolettre_acceptance .wpcf7-acceptance .wpcf7-list-item-label a {
        font-size: 14px;
    }
}


/* politique_text */

.politique_text h2 {
    font-size: 24px !important;
    line-height: 1.5 !important;
    margin-top: 1em;
}

.politique_text h3 {
    font-size: 20px !important;
    line-height: 1.5 !important;
}

.politique_text p,
.politique_text blockquote,
.politique_text li,
.politique_text a {
    font-size: 18px !important;
    line-height: 1.5 !important;
    letter-spacing: 1px;
}

.politique_text p {
    margin-bottom: 1em !important;
}

.politique_text p:last-child {
    margin-bottom: 0 !important;
}

.politique_text a {
    color: var(--mauve);
}

.politique_text a:hover {
    color: var(--mauve);
    text-decoration: underline;
}

.politique_text ul,
.politique_text ol {
	margin-bottom: 1em;
	margin-left: 0;
	list-style-position: outside;
}

.politique_text ul ul,
.politique_text ul ol,
.politique_text ol ul,
.politique_text ol ol {
	margin-top: .5em;
}

.politique_text li {
	margin-bottom: .5em;
}

.politique_text li p {
	margin-bottom: 0.5em;
}

.politique_text li:last-child {
	margin-bottom: 0;
}

.politique_text dt {
    font-weight: 600;
    margin-bottom: .5em;
}

.politique_text dd {
    margin-left: 0 !important;
    margin-bottom: 1em !important;
}

.politique_text hr {
    margin: 1em 0;
}

.politique_text p.note {
    font-size: 16px !important;
}


@media only screen and (max-width : 1439px) {

    .politique_text h2 {
        font-size: 22px !important;
    }

    .politique_text h3 {
        font-size: 18px !important;
    }

    .politique_text p,
    .politique_text blockquote,
    .politique_text li,
    .politique_text a {
        font-size: 17px !important;
    }
}

@media only screen and (max-width : 767px) {

    .politique_text h2 {
        font-size: 18px !important;
    }

    .politique_text h3 {
        font-size: 17px !important;
    }

    .politique_text p,
    .politique_text blockquote,
    .politique_text li,
    .politique_text a {
        font-size: 16px !important;
    }

    .politique_text p.note {
        font-size: 14px !important;
    }

}

