/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

@media (min-width: 1536px) {
  .home section {
    margin-bottom: 7.5rem;
  }
}

/* entete home */

.home h1 {
  font-size: 1.2rem;
  text-transform: uppercase;
  line-height: normal;
  color: var(--blanc);
  letter-spacing: 0;
  font-weight: var(--normal);
  margin: var(--gap-125) 0;
}

.home .entete_container {
  position: relative;
  min-height: calc(100vh - var(--header-height));
  z-index: 1;
  gap: 5vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  width: var(--container-width);
  margin: 0 auto;
  padding: 10vh 3vw 10vh 3vw;
}

.home .text {
  width: 100%;
}

.home .text span {
  font-size: 2em;
  font-weight: var(--normal);
  line-height: 85%;
  color: var(--blanc);
  display: block;
  margin-bottom: var(--gap-188);
  text-transform: none;
}

.home .entete_container img {
  max-width: 200px;
}

@media (min-width: 1024px) {
  .home .entete_container img {
    margin-top: 10vh;
  }
}
@media (min-width: 1280px) {
  .home .entete_container img {
    margin-top: 5vh;
  }
}

@media (max-width: 1023px) {
  .home .entete_container img {
    width: 200px;
  }
}
.home .entete_home {
  border: 3px solid var(--blanc);
  position: relative;
  border-left: 0;
}

.video_entete {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  -o-object-fit: cover;
  object-fit: cover;
}

.video_entete_overlay {
  display: block;
  content: "";
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    color-stop(6.57%, var(--primary)),
    to(var(--tertiary))
  );
  background: -o-linear-gradient(
    left,
    var(--primary) 6.57%,
    var(--tertiary) 100%
  );
  background: linear-gradient(
    90deg,
    var(--primary) 6.57%,
    var(--tertiary) 100%
  );
  background-blend-mode: overlay;
  pointer-events: none;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: -1;
  opacity: 0.5;
}

@media (min-width: 1024px) {
  .home .entete_container img {
    max-width: 230px;
  }
}
@media (min-width: 1280px) and (min-height: 600px) {
  .home .entete_container img {
    max-width: 260px;
  }
}
@media (min-width: 1536px) and (min-height: 700px) {
  .home .entete_container img {
    max-width: 315px;
  }
}
@media (min-width: 1024px) {
  /* .home .diapo_home {
        border: 3px solid var(--blanc);
        border-left: 0;
    } */
  .home .entete_home {
    margin-top: 0;
  }
  .home .entete_container {
    min-height: 100vh;
  }
  /* .home .diapo_home .slick-dots li {
        flex: 0 1 23%;
    } */
}
@media (min-width: 640px) {
  .home h1 {
    font-size: 1.3rem;
  }
  .home .text span {
    font-size: 2.9em;
  }
}
@media (min-width: 1024px) {
  .home h1 {
    font-size: 1.4rem;
  }
  .home .text span {
    font-size: 3em;
  }
}
@media (min-width: 1280px) and (min-height: 600px) {
  .home h1 {
    font-size: 1.5rem;
  }
  .home .text span {
    font-size: 3.8em;
  }
}
@media (min-width: 1536px) and (min-height: 700px) {
  .home h1 {
    font-size: 1.6rem;
  }
  .home .text span {
    font-size: 4.6em;
  }
}

/* qui sommes nous */

section.qui .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 2.5rem;
}

section.qui .texte_button {
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: 0;
  flex: 0;
  padding-bottom: 2.5rem;
}

section.qui .texte_button:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 3px;
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(var(--primary)),
    to(var(--tertiary))
  );
  background: -o-linear-gradient(left, var(--primary) 0%, var(--tertiary) 100%);
  background: linear-gradient(90deg, var(--primary) 0%, var(--tertiary) 100%);
}

section.qui .partie_texte h2 {
  color: var(--secondary);
}

section.qui .partie_texte h2:has(+ .sous_titre) {
  margin-bottom: var(--gap-062);
}

section.qui .partie_texte p:not(.sous_titre) {
  color: var(--secondary);
}

section.qui .button_container {
  margin-top: var(--gap-125);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--gap-125);
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

section.qui .expertise_container img {
  border-radius: 0rem 5rem 5rem 0rem;
}

section.qui .expertise_container h3,
section.qui .expertise_container img + h3 {
  margin-top: var(--gap-125);
}

section.qui .expertise_container h3 {
  margin-bottom: var(--gap-125);
  color: var(--primary);
}

section.qui .expertise_container .sous_titre {
  color: var(--secondary);
  margin-bottom: var(--gap-062);
}

section.qui .expertise_carousel {
  width: 100%;
  position: relative;
  padding-bottom: calc(var(--gap-125) + 19px);
}

section.qui .slick-prev,
section.qui .slick-next {
  position: absolute;
  width: 32px;
  height: 19px;
  display: block;
  top: unset;
  bottom: 0;
  left: 0;
  right: unset;
  -webkit-transform: unset;
  -ms-transform: unset;
  transform: unset;
  margin-top: var(--gap-125);
  background-color: transparent;
  padding: 0;
  border: unset;
}

section.qui .slick-next {
  left: calc(32px + var(--gap-125));
}

section.qui .slick-prev:before,
section.qui .slick-next:before {
  top: 0;
  right: 0;
  content: "";
  background: url("../images/custom/arrow-tertiary.svg") no-repeat center center /
    contain;
  width: 32px;
  height: 19px;
  -webkit-transform: unset;
  -ms-transform: unset;
  transform: unset;
  left: unset;
  bottom: unset;
}

section.qui .slick-prev:before {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
}

@media (min-width: 1024px) {
  section.qui .container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    gap: 3.75rem;
  }
  section.qui .texte_button {
    padding-bottom: 0;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding-right: 3.75rem;
    border-bottom: unset;
    position: relative;
    /* border-right: 3px solid var(--primary); */
  }

  section.qui .texte_button:after {
    width: 3px;
    height: 100%;
    background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(var(--primary)),
      to(var(--tertiary))
    );
    background: -o-linear-gradient(
      top,
      var(--primary) 0%,
      var(--tertiary) 100%
    );
    background: linear-gradient(
      180deg,
      var(--primary) 0%,
      var(--tertiary) 100%
    );
  }
  section.qui .expertise_carousel {
    width: 48.44%;
  }
}

/* engagements responsabilites */

section.promesses {
  background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    from(rgba(149, 193, 32, 0.7)),
    to(rgba(31, 158, 217, 0.7))
  );
  background: -o-linear-gradient(
    bottom,
    rgba(149, 193, 32, 0.7) 0%,
    rgba(31, 158, 217, 0.7) 100%
  );
  background: linear-gradient(
    0deg,
    rgba(149, 193, 32, 0.7) 0%,
    rgba(31, 158, 217, 0.7) 100%
  );
}

#page section.promesses .texte *:not(.bouton),
#page section.promesses .partie_texte * {
  color: var(--blanc);
}

section.promesses .partie_texte {
  padding-right: var(--gap-125);
}

#page section.promesses .partie_texte h2 {
  color: var(--secondary);
}

section.promesses .container {
  row-gap: var(--gap-125);
}

section.promesses_container {
  row-gap: var(--gap-125);
}

section.promesses .texte {
  padding-right: var(--gap-125);
}

section.promesses .texte p:not(.mot-cle) {
  font-size: 1.875rem;
  letter-spacing: -0.09375rem;
}

section.promesses .mot-cle {
  font-size: var(--fs-xl);
}

section.promesses .texte .bouton {
  margin-top: var(--gap-188);
}

@media (max-width: 1023px) {
  section.promesses .partie_texte + .promesses_container {
    margin-top: var(--gap-188);
  }
  section.promesses .texte p:not(.mot-cle) {
    font-size: 1.5rem;
  }
  section.promesses .texte .bouton {
    margin-top: var(--gap-062);
  }

  section.promesses .texte + .texte {
    margin-top: var(--gap-312);
  }
}
@media (min-width: 1024px) {
  section.promesses .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: var(--gap-125);
    -moz-column-gap: var(--gap-125);
    column-gap: var(--gap-125);
  }

  section.promesses .promesses_container {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 71.49%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: var(--gap-125);
  }

  section.promesses .texte {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
}

/* actu home */

section.actu_home h2 {
  color: var(--secondary);
}
#page .actu_home .texte .date,
#page .actu_home .texte p,
#page .actu_home .texte .title a {
  color: #3d3d3c;
}
#page section.actu_home .teaser {
  height: unset;
}

#page section.actu_home .teaser {
  height: unset;
  padding: 0;
  border: 0;
}

section.actu_home .txt_container {
  padding-bottom: var(--gap-312);
}

section.actu_home .txt_container .bouton {
  margin-right: var(--gap-125);
}

section.actu_home .txt_container h2 {
  padding-right: var(--gap-125);
}

#page section.actu_home .teaser {
  margin-left: 2.5rem;
  border: 0;
  width: 300px;
}

section.actu_home .actu_carousel {
  width: 100%;
  position: relative;
}

section.actu_home .actu_carousel .slick-track {
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

section.actu_home .actu_carousel .slick-list {
  overflow: visible;
}

section.actu_home #arrow_placeholder {
  display: none;
  /* display: flex; */
  gap: var(--gap-125);
  position: relative;
  margin-bottom: var(--gap-188);
}

section.actu_home .slick-prev,
section.actu_home .slick-next {
  position: relative;
  width: 31px;
  height: 20px;
  display: block;
  top: unset;
  bottom: 0;
  left: 0;
  right: unset;
  -webkit-transform: unset;
  -ms-transform: unset;
  transform: unset;
  background-color: transparent;
  padding: 0;
  border: unset;
}

section.actu_home .slick-prev:before,
section.actu_home .slick-next:before {
  position: relative;
  top: 0;
  right: 0;
  content: "";
  background: url("../images/custom/arrow-primary-alt.svg") no-repeat center
    center / contain;
  width: 31px;
  height: 20px;
  -webkit-transform: unset;
  -ms-transform: unset;
  transform: unset;
  left: unset;
  bottom: unset;
}

section.actu_home .slick-prev:before {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
}

@media (min-width: 1024px) {
  section.actu_home .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin-left: auto;
    margin-right: 0;
    width: calc(100% - (100% - var(--container-width)) / 2);
    /* overflow: hidden; */
  }
  section.actu_home .txt_container {
    max-width: 390px;
    z-index: 2;
    background-color: var(--blanc);
    padding-right: var(--gap-125);
    width: 360px;
    border-right: 3px solid var(--primary);
    height: unset;
  }
  section.actu_home .actu_carousel {
    /* width: 100%; */
    position: relative;
    overflow: hidden;
    padding-left: var(--gap-312);
  }
}

@media (min-width: 980px) and (max-width: 1279px) {
  section.promesses .container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

/* nous rejoindre */

.rejoindre .container {
  padding: var(--gap-625);
  border-radius: var(--rounded-xl) var(--rounded-xl) 0 0;
  position: relative;
  z-index: 1;
}

.rejoindre .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: -1;
  border-radius: var(--rounded-xl) var(--rounded-xl) 0 0;
  overflow: hidden;
}

.rejoindre .image:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--degrade);
  opacity: 0.5;
  z-index: -1;
}

.rejoindre .image img {
  opacity: 20%;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.rejoindre .partie_texte {
  text-align: center;
}

.rejoindre .partie_texte h2 {
  color: var(--secondary);
}

.rejoindre .partie_texte .subtitle {
  line-height: 120%;
  font-size: calc(var(--fs-xl) / 2);
  font-weight: var(--bold);
}

#page .rejoindre .partie_texte *:not(:last-child) {
  margin-bottom: 0.62rem;
}

.rejoindre .partie_texte + .liste_container {
  margin-top: var(--gap-188);
}

.rejoindre .liste_container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 2.5rem;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.rejoindre .element {
  background-color: var(--blanc);
  border-radius: var(--rounded);
  padding: var(--gap-125);
  width: 100%;
}

.rejoindre .element .texte p {
  color: var(--primary);
  font-size: var(--fs-base);
  line-height: normal;
  text-align: center;
}

.rejoindre .element p.mot-cle {
  font-size: var(--fs-m);
  text-transform: uppercase;
  color: var(--secondary);
  font-weight: var(--bold);
}

.rejoindre .container > .bouton {
  margin: var(--gap-188) auto 0 auto;
}

@media (min-width: 1024px) {
  .rejoindre .element {
    width: calc(50% - 2.5rem / 2);
  }
  .rejoindre .partie_texte {
    width: 80%;
    margin: 0 auto;
  }
}

@media (min-width: 1280px) {
  .rejoindre .container {
    padding: var(--gap-625);
  }
}

@media (min-width: 1536px) {
  .rejoindre .element {
    width: 280px;
  }
}

/* */

.certification .certif_container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /*flex-direction: column;
    justify-content: space-between;*/
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  gap: var(--gap-188);
}
.certification .certif_container .certif {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 220px;
}
.certification .certif_container .certif img {
  max-height: 76px;
  -o-object-fit: contain;
  object-fit: contain;
  max-width: 80%;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .certification .certif_container .vertical_line {
    height: 110px;
    width: 3px;
    background-color: var(--primary);
  }
  .certification .certif_container .certif {
    width: 15%;
  }
  .certification .certif_container .vertical_line:nth-child(10n) {
    display: none;
  }
}
