/* assets/styles.css */

:root {
  --bleu: #51758D;
  --gris: #F0EFEF;
}

/* Prevent Multiple Contact Form 7 Submissions */

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

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: var(--bleu);
}

#content {
  background-color: #fff;
}

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

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

.hero_title_gris {
  transition: background-color 0s ease !important;
}

.hero_title_blanc {
  transition: background-color 0s ease !important;
}


span.small {
  font-size: 75%;
  font-weight: 400;
}

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

  .hero_title_gris {
    background-color: var(--gris);
  }

  .hero_title_blanc {
    background-color: #fff;
  }
}

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

    .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;
    }
}


@media only screen and (min-width : 768px) {
  .home_box_under_image_droite {
    right: -28px !important;
    left: auto !important;
  }
}


/* produits */


.background_triangle_droite {
  background-position: top 0 right 275% !important;
  background-size: 110% !important;
}

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

  .background_triangle_droite {
    background-position: top 0 right 137% !important;
    background-size: 131% !important;
  }
}

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

  .background_triangle_droite {
    background-position: top 0 right 87% !important;
    background-size: 201% !important;
  }
}

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

  .background_triangle_droite {
    background-position: top 0 right 87% !important;
    background-size: 201% !important;
  }
}

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

  .a_propos_image_equipe {
    background-position: center left 13% !important;
  }
}

@media only screen and (max-width : 1023px) {
  .a_propos_image_equipe {
    background-position: center center !important;
  }

}


.elementor-form .elementor-button {
  border: 1px solid #51758D !important;
}

/* nous joindre */

.nous_joindre_formulaire {

}



/* politique_text */

.politique_text h2 {
    font-size: 24px !important;
    line-height: 1.3 !important;
}

.politique_text p,
.politique_text blockquote,
.politique_text li,
.politique_text a {
    font-size: 18px !important;
    line-height: 1.3 !important;
    margin-bottom: 1em !important;
}

.politique_text ul,
.politique_text ol {
	margin-bottom: 1em;
	margin-left: 36px;
	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: 1em;
}

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

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

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

    .politique_text h2 {
        font-size: 22px !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 p,
    .politique_text blockquote,
    .politique_text li,
    .politique_text a {
        font-size: 16px !important;
    }
}

.policy_table {
  overflow-x:auto;
  border-collapse: collapse;
}

.policy_table table {
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  border-right: none;
  border-bottom: none;
}

.policy_table th {
  font-weight: 700;
  text-align: left;
  vertical-align: top;
  padding: 6px;
  border-top: none;
  border-left: none;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  background-color: #eee;
}

.policy_table th:first-child {
  border-top: 0;
  border-left: 1px solid #000;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
}

.policy_table td {
  font-weight: 400;
  text-align: left;
  vertical-align: top;
  padding: 6px;
  border-top: none;
  border-left: none;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
}

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

  .policy_table th {
    white-space: nowrap;
  }

  .policy_table td {
    white-space: nowrap;
  }
}


/* contact_form */
.contact_form .elementor-field-type-acceptance .elementor-field-option {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    margin-left: 0;
}
.contact_form .elementor-field-type-acceptance .elementor-field-option input {
    margin-right: 12px;
    margin-top: 6px;
}

.contact_form .elementor-field-type-acceptance .elementor-field-option label {
    line-height: 1.3;
}