@import url("https://fonts.googleapis.com/css2?family=Fustat:wght@200..800&display=swap");

:root {
  --wp--preset--font-size--12-px: 12px;
  --wp--preset--font-size--14-px: 14px;
  --wp--preset--font-size--16-px: 16px;
  --wp--preset--font-size--18-px: 18px;
  --wp--preset--font-size--20-px: clamp(18px, 1.5vw, 20px);
  --wp--preset--font-size--22-px: clamp(18px, 1.5vw, 22px);
  --wp--preset--font-size--24-px: clamp(19px, 1.5vw, 24px);
  --wp--preset--font-size--26-px: clamp(19px, 1.5vw, 26px);
  --wp--preset--font-size--28-px: clamp(19px, 1.6vw, 28px);
  --wp--preset--font-size--30-px: clamp(20px, 1.6vw, 30px);
  --wp--preset--font-size--32-px: clamp(20px, 1.7vw, 32px);
  --wp--preset--font-size--34-px: clamp(20px, 1.8vw, 34px);
  --wp--preset--font-size--36-px: clamp(24px, 1.9vw, 36px);
  --wp--preset--font-size--38-px: clamp(25px, 2vw, 38px);
  --wp--preset--font-size--40-px: clamp(26px, 2.1vw, 40px);
  --wp--preset--font-size--42-px: clamp(27px, 2.2vw, 42px);
  --wp--preset--font-size--44-px: clamp(28px, 2.3vw, 44px);
  --wp--preset--font-size--46-px: clamp(29px, 2.4vw, 46px);
  --wp--preset--font-size--48-px: clamp(30px, 2.5vw, 48px);
  --wp--preset--font-size--50-px: clamp(31px, 2.6vw, 50px);
  --wp--preset--font-size--52-px: clamp(32px, 2.7vw, 52px);
  --wp--preset--font-size--54-px: clamp(33px, 2.8vw, 54px);
  --wp--preset--font-size--56-px: clamp(34px, 2.9vw, 56px);
  --wp--preset--font-size--58-px: clamp(35px, 3vw, 58px);
  --wp--preset--font-size--60-px: clamp(36px, 3.1vw, 60px);
  --wp--preset--font-size--62-px: clamp(37px, 3.2vw, 62px);
  --wp--preset--font-size--64-px: clamp(38px, 3.3vw, 64px);
  --wp--preset--font-size--66-px: clamp(39px, 3.4vw, 66px);
  --wp--preset--font-size--68-px: clamp(40px, 3.5vw, 68px);
  --wp--preset--font-size--70-px: clamp(41px, 3.6vw, 70px);
  --wp--preset--font-size--72-px: clamp(42px, 3.7vw, 72px);
}

.is-root-container {
  font-family: "Fustat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  line-height: 1.4em;
  color: #3f5760;
}

h1.wp-block-post-title {
  font-family: "Fustat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
}

/* COULEURS DU THEME */
.has-noir-color {
  color: #000;
}

.has-noir-background-color {
  background-color: #000;
}

.has-blanc-color {
  color: #fff;
}

.has-blanc-background-color {
  background-color: #fff;
}

.has-principale-color {
  color: #d21216;
}

.has-principale-background-color {
  background-color: #d21216;
}

/* #3F5760 à remplacer par : #3F5760 */

.has-secondaire-color {
  color: #3f5760;
}

.has-secondaire-background-color {
  background-color: #3f5760;
}

.has-tertiaire-color {
  color: #7a7a7a;
}

.has-tertiaire-background-color {
  background-color: #7a7a7a;
}

.has-light-color {
  color: #f6f6f6;
}

.has-light-background-color {
  background-color: #f6f6f6;
}

.has-gris-moyen-color {
  color: #bebebe;
}

.has-gris-moyen-background-color {
  background-color: #bebebe;
}

/* FIN COULEURS DU THEME */

/* LARGEUR DE BLOCS */

/*
.wp-block-group:not(.alignwide):not(.alignfull), 
.wp-block-columns:not(.alignwide):not(.alignfull){
  width: 100%;
  max-width: 1260px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
}
*/

.wp-block-columns {
  /* width: 100%;*/
  max-width: 1260px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
}

.alignwide {
  width: 100%;
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
}

.alignfull {
  width: 100%;
  max-width: 100%;
  padding-left: 0px;
  padding-right: 0px;
}

.wp-block[data-align="full"] .wp-block-columns {
  width: 100%;
  max-width: 100%;
  padding-left: 0px;
  padding-right: 0px;
}

.wp-block[data-align="full"]
  .wp-block-group
  .wp-block-columns:not(.alignwide):not(.alignfull) {
  max-width: 1260px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
}

.wp-block-group.alignwide,
.wp-block-media-text.alignwide,
.wp-block-columns.alignwide,
.wp-block-heading.alignwide {
  width: 100%;
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
}

.wp-block-group.alignwide .wp-block-buttons.alignwide {
  padding-left: 0px;
  padding-right: 0px;
}

.wp-block-group.alignfull .wp-block-group.alignwide,
.wp-block-group.alignfull .wp-block-columns.alignwide {
  padding-left: 40px;
  padding-right: 40px;
}

.wp-block-group.alignfull
  .wp-block-group.alignwide
  .wp-block-columns.alignwide {
  padding-left: 0px;
  padding-right: 0px;
}

.wp-block-group.alignwide .alignfull .alignwide .alignwide,
.alignfull .alignwide .alignwide .alignwide {
  padding-left: 0px;
  padding-right: 0px;
}

.wp-block-cover[data-align="wide"],
.wp-block[data-align="wide"],
.wp-block[data-align="wide"] .wp-block-media-text,
.wp-block[data-align="wide"] .wp-block-columns {
  width: 100%;
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
}

.wp-block[data-align="full"] {
  width: 100%;
  max-width: 100%;
  padding-left: 0px;
  padding-right: 0px;
}

.wp-block-group.alignwide .wp-block-heading.alignwide {
  padding-right: 0px;
  padding-left: 0px;
}

/*
.wp-block .wp-block.wp-block-heading, .wp-block p{
  width: 100%;
}
*/

/* FIN LARGEUR DE BLOCS */

.wp-block-heading {
  font-weight: 500;
  box-sizing: border-box;
}

h1 {
  font-size: clamp(34px, 2.9vw, 56px);
  line-height: 1.04em;
}

h2 {
  font-size: clamp(20px, 1.6vw, 30px);
  line-height: calc(1.1em - 0.01em);
}

h3 {
  font-size: clamp(19px, 1.5vw, 26px);
  line-height: 1.1em;
}

h4 {
  font-size: clamp(19px, 1.5vw, 24px);
  line-height: 1.2em;
}

h5 {
  font-size: clamp(19px, 1.5vw, 26px);
  line-height: 1.1em;
}

/* BOUTONS */

.gutenberg,
.gutenberg a {
  color: #3f5760;
}

.gutenberg a:hover {
  color: #d21216;
}

.wp-block-button a.wp-element-button,
.wp-block-button .wp-element-button {
  background-color: #d21216;
  color: #fff;
  border-radius: 3px;
  transition: 0.25s;
  height: 40px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 600;
  padding-top: 13px;
  background-image: url(../images/puce-blanche-li.svg);
  background-repeat: no-repeat;
  background-position: 24px center;
  padding-left: 44px;
  padding-right: 30px;
  transition: 0.25s;
}

.wp-block-button a.wp-element-button:hover {
  background-color: #000;
}

.wp-block-button.is-style-bouton-sans-fond-noir .wp-element-button,
.wp-block-button.is-style-bouton-sans-fond-noir a.wp-element-button {
  background-color: transparent;
  background-image: none;
  padding-left: 0;
  padding-right: 0;
  text-decoration: underline;
}

.wp-block-button.is-style-bouton-sans-fond-noir a.wp-element-button:hover,
.wp-block-button.is-style-bouton-sans-fond-noir a.has-noir-color:hover {
  color: #d21216 !important;
}

.wp-block-button.is-style-bouton-sans-fond-rouge .wp-element-button,
.wp-block-button.is-style-bouton-sans-fond-rouge a.wp-element-button {
  background-color: transparent;
  background-image: none;
  padding-left: 0;
  padding-right: 0;
  text-decoration: underline;
  color: #d21216;
  background-image: url(../images/puce-rouge-li.svg);
  background-position: 0px center;
  padding-left: 20px;
}

.wp-block-button.is-style-bouton-contour-gris .wp-element-button,
.wp-block-button.is-style-bouton-contour-gris a.wp-element-button {
  background-color: #fff;
  color: #000;
  border: #bebebe 1px solid;
  background-image: url(../images/puce-rouge-li.svg);
}

.wp-block-button.is-style-bouton-contour-gris a.wp-element-button:hover,
.wp-block-button.is-style-bouton-video a.wp-element-button:hover,
.wp-block-button.is-style-bouton-download a.wp-element-button:hover {
  color: #d21216;
}

.wp-block-button.is-style-bouton-download .wp-element-button,
.wp-block-button.is-style-bouton-download a.wp-element-button {
  background-color: #fff;
  color: #000;
  border: #bebebe 1px solid;
  background-image: url(../images/picto-telecharger.svg);
  background-position: right center;
  background-size: auto 12px;
  padding-right: 50px;
  padding-left: 15px;
}

.wp-block-button.is-style-bouton-video .wp-element-button,
.wp-block-button.is-style-bouton-video a.wp-element-button {
  background-color: #fff;
  color: #000;
  border: #bebebe 1px solid;
  background-image: url(../images/picto-video.svg);
  background-position: right center;
  background-size: auto 16px;
  padding-right: 50px;
  padding-left: 15px;
}

/* FIN BOUTONS */

.wp-block-separator {
  margin-top: 40px;
  margin-bottom: 30px;
}

.wp-block-quote {
  border-left-style: none;
  background-color: #f3f3f3;
  border-radius: 3px;
  padding-left: 30px;
  padding-top: 25px;
  padding-bottom: 25px;
  padding-right: 25px;
  margin-left: 0;
  margin-right: 0;
}

.wp-block-quote p {
  border-left: #707070 1px solid;
  padding-left: 30px;
}

.wp-block-quote > * {
  padding-left: 30px;
}

/* Colonnes */
.is-style-col-gap-big {
  column-gap: 140px;
}

.is-style-col-gap-moyen {
  column-gap: 60px;
}

.is-style-col-filet-gris {
  gap: 40px;
}

.is-style-col-filet-gris .wp-block-column {
  border-left: #bebebe 1px solid;
  padding-left: 40px;
  padding-right: 40px;
}

.is-style-col-filet-blanc .wp-block-column {
  border-left: #fff 1px solid;
  padding-left: 40px;
  padding-right: 40px;
}

.is-style-col-filet-blanc .wp-block-column:first-child {
  border-left-style: none;
  padding-left: 0px;
}

.wp-block-column.is-style-col-fixed {
  overflow: hidden;
}

/* FIN Colonnes */

/* BLOC MEDIA ET TEXTE */

.wp-block-media-text:not(.has-media-on-the-right)
  .wp-block-media-text__content {
  padding-right: 0px;
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
  padding-left: 0px;
}

/* FIN BLOC MEDIA ET TEXTE */

/* Taille typo Gutenberg */

.gutenberg .wp-block-paragraph {
  font-size: 18px;
  line-height: 1.2em;
}

.has-12-px-font-size,
.wp-block-paragraph.has-12-px-font-size {
  font-size: 12px;
  line-height: 1.2em;
}
.has-14-px-font-size,
.wp-block-paragraph.has-14-px-font-size {
  font-size: 14px;
  line-height: 1.2em;
}
.has-16-px-font-size,
.wp-block-paragraph.has-16-px-font-size {
  font-size: 16px;
  line-height: 1.2em;
}
.has-18-px-font-size,
.wp-block-paragraph.has-18-px-font-size {
  font-size: 18px;
  line-height: 1.2em;
}
.has-20-px-font-size,
.wp-block-paragraph.has-20-px-font-size {
  font-size: clamp(18px, 1.5vw, 20px);
  line-height: 1.2em;
}
.has-22-px-font-size,
.wp-block-paragraph.has-22-px-font-size {
  font-size: clamp(18px, 1.5vw, 22px);
  line-height: 1.2em;
}
.has-24-px-font-size,
.wp-block-paragraph.has-24-px-font-size {
  font-size: clamp(19px, 1.5vw, 24px);
  line-height: 1.2em;
}

.has-26-px-font-size,
.wp-block-paragraph.has-26-px-font-size {
  font-size: clamp(19px, 1.5vw, 26px);
  line-height: 1.1em;
}

.has-28-px-font-size,
.wp-block-paragraph.has-28-px-font-size {
  font-size: clamp(19px, 1.6vw, 28px);
  line-height: 1.1em;
}

.has-30-px-font-size,
.wp-block-paragraph.has-30-px-font-size {
  font-size: clamp(20px, 1.6vw, 30px);
  line-height: calc(1.1em - 0.01em);
}

.has-32-px-font-size,
.wp-block-paragraph.has-32-px-font-size {
  font-size: clamp(20px, 1.7vw, 32px);
  line-height: 1.1em;
}

.has-34-px-font-size,
.wp-block-paragraph.has-34-px-font-size {
  font-size: clamp(20px, 1.8vw, 34px);
  line-height: 1.05em;
}

.has-36-px-font-size,
.wp-block-paragraph.has-36-px-font-size {
  font-size: clamp(24px, 1.9vw, 36px);
  line-height: 1.05em;
}

.has-38-px-font-size,
.wp-block-paragraph.has-38-px-font-size {
  font-size: clamp(25px, 2vw, 38px);
  line-height: 1.05em;
}

.has-40-px-font-size,
.wp-block-paragraph.has-40-px-font-size {
  font-size: clamp(26px, 2.1vw, 40px);
  line-height: 1.05em;
}

.has-42-px-font-size,
.wp-block-paragraph.has-42-px-font-size {
  font-size: clamp(27px, 2.2vw, 42px);
  line-height: 1.05em;
}

.has-44-px-font-size,
.wp-block-paragraph.has-44-px-font-size {
  font-size: clamp(28px, 2.3vw, 44px);
  line-height: 1.05em;
}

.has-46-px-font-size,
.wp-block-paragraph.has-46-px-font-size {
  font-size: clamp(29px, 2.4vw, 46px);
  line-height: 1.05em;
}

.has-48-px-font-size,
.wp-block-paragraph.has-48-px-font-size {
  font-size: clamp(30px, 2.5vw, 48px);
  line-height: 1.05em;
}

.has-50-px-font-size,
.wp-block-paragraph.has-50-px-font-size {
  font-size: clamp(31px, 2.6vw, 50px);
  line-height: 1.04em;
}

.has-52-px-font-size,
.wp-block-paragraph.has-52-px-font-size {
  font-size: clamp(32px, 2.7vw, 52px);
  line-height: 1.04em;
}

.has-54-px-font-size,
.wp-block-paragraph.has-54-px-font-size {
  font-size: clamp(33px, 2.8vw, 54px);
  line-height: 1.04em;
}

.has-56-px-font-size,
.wp-block-paragraph.has-56-px-font-size {
  font-size: clamp(34px, 2.9vw, 56px);
  line-height: 1.04em;
}

.has-58-px-font-size,
.wp-block-paragraph.has-58-px-font-size {
  font-size: clamp(35px, 3vw, 58px);
  line-height: 1.01em;
}

.has-60-px-font-size,
.wp-block-paragraph.has-60-px-font-size {
  font-size: clamp(36px, 3.1vw, 60px);
  line-height: 1.01em;
}

.has-62-px-font-size,
.wp-block-paragraph.has-62-px-font-size {
  font-size: clamp(37px, 3.2vw, 62px);
  line-height: 1em;
}

.has-64-px-font-size,
.wp-block-paragraph.has-64-px-font-size {
  font-size: clamp(38px, 3.3vw, 64px);
  line-height: 1em;
}

.has-66-px-font-size,
.wp-block-paragraph.has-66-px-font-size {
  font-size: clamp(39px, 3.4vw, 66px);
  line-height: 1em;
}

.has-68-px-font-size,
.wp-block-paragraph.has-68-px-font-size {
  font-size: clamp(40px, 3.5vw, 68px);
  line-height: 1em;
}

.has-70-px-font-size,
.wp-block-paragraph.has-70-px-font-size {
  font-size: clamp(41px, 3.6vw, 70px);
  line-height: 1em;
}

.has-72-px-font-size,
.wp-block-paragraph.has-72-px-font-size {
  font-size: clamp(42px, 3.7vw, 72px);
  line-height: 1em;
}

/* Fin Taille typo Gutenberg */

/* GROUP GUTENBERG */

.is-style-fond-carte {
  background-image: url(../images/carte-blanche.svg);
  background-position: -5% center;
  background-repeat: no-repeat;
}

.is-style-fond-carte-gris {
  background-image: url(../images/carte.svg);
  background-position: right center;
  background-repeat: no-repeat;
}

.is-style-bloc-50-pcx {
  width: 100%;
  max-width: 520px;
  margin-right: 0px;
  margin-left: auto;
}

/* FIN GROUP GUTENBERG */

.slider-home {
  height: calc(25vh + 40px);
}
.editor-styles-wrapper .slider-home {
height: auto;
}

.slider-home .swiper-wrapper{
  height: 25vh;
}

.editor-styles-wrapper .slider-home .swiper-wrapper{
display: flex;
flex-direction: row;
flex-wrap: wrap;
height: auto;
}

.editor-styles-wrapper .slider-home .image.swiper-slide {
width: 20%;
margin-bottom: 20px;
}



.slider-home .image.swiper-slide {
  height: 25vh;
  transform: skewX(-15deg) !important;
  overflow: hidden;
position: relative;
cursor: grab;
}

.slider-home .image.swiper-slide p {
  display: block;
  text-align: left;
  font-size: 16px;
  margin: 0px;

  background-color: #fff;
  position: absolute;
  color: #d21216;
  top: 0;
  left: 0;
  z-index: 2000;

}

.slider-home .image.swiper-slide p a span{
 display: block;
 transform: skewX(15deg) !important;
}

.slider-home .image.swiper-slide p a{
  
  text-decoration: none;
  display: block;
    color: #d21216;
      padding-left: 15px;
  padding-right: 15px;
    padding-top: 10px;
  padding-bottom: 10px;
}

.slider-home .image.swiper-slide p a:hover{
 background-color: #d21216;
 color: #fff;
}

.slider-home .image.swiper-slide img {
  position: absolute;
  left: -15%;
  top : center;
  width: auto;
  object-fit: cover;
  transform: skewX(15deg) !important;
  height: 100%;
}


.slider-home .pagination-slider-home{
height: 40px;
padding-top: 15px;
justify-content: flex-end;
display: flex;
flex-direction: row;
flex-wrap: wrap;
padding-right: 30px;
}

.slider-home .pagination-slider-home .swiper-pagination-bullet{
opacity: 1;
background-color: #fff;
width: 15px;
height: 15px;
box-sizing: border-box;
border: #d21216 2px solid;
}

.slider-home .pagination-slider-home .swiper-pagination-bullet.swiper-pagination-bullet-active{
  background-color: #d21216;
}

.mon-slider {
  width: 100%;
  padding-left: 40px;
  padding-right: 40px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1500px;
  box-sizing: border-box;
  background-color: #fff;
}

.editor-styles-wrapper .wp-block.mon-slider {
  max-width: 100% !important;
}
.editor-styles-wrapper .mon-slider {
  display: flex;
  flex-direction: row;
  width: 100%;
}

.editor-styles-wrapper
  .mon-slider
  .block-editor-inner-blocks
  .block-editor-block-list__layout {
  display: flex;
  flex-direction: row;
  width: 100%;
}

.editor-styles-wrapper .mon-slider .swiper-slide {
  width: 20%;
}

.mon-slider .nav-slider {
  position: absolute;
  width: 56px;
  height: 115px;
  top: 0px;
  left: 0px;
  display: block;
  z-index: 2500;
}

.mon-slider .nav-slider span {
  width: 56px;
  height: 56px;
  background-color: #d21216;
  background-position: center center;
  cursor: pointer;
  color: #fff;
  display: block;
  position: relative;
  margin-left: 0;
  margin-right: 0;
  margin-top: 0px;
  top: inherit;
  bottom: inherit;
  left: inherit;
  right: inherit;
}

.mon-slider .nav-slider span::after {
  display: none;
}

.mon-slider .nav-slider span.swiper-button-prev {
  background-image: url(../images/chevron-droite.svg);
  background-repeat: no-repeat;
  background-position: center center;
}

.mon-slider .nav-slider span.swiper-button-next {
  margin-bottom: 2px;
  background-image: url(../images/chevron-gauche.svg);
  background-repeat: no-repeat;
  background-position: center center;
}

.mon-slider .swiper-wrapper {
  align-items: stretch;
}

.mon-slider .swiper-slide {
  border-right: #bebebe 1px solid;
  border-bottom: #d21216 11px solid;
}

.mon-slider .swiper-slide img {
  width: 100%;
  height: auto;
}

.mon-slider .swiper-slide h2 {
  padding-left: 30px;
  padding-right: 30px;
  font-size: 37px;
  font-weight: 600;
  color: #d21216;
  margin-top: 10px;
  margin-bottom: 20px;
}

.mon-slider .swiper-slide p {
  padding-left: 30px;
  padding-right: 30px;
  font-size: 16px;
  line-height: 23px;
  color: #3f5760;
}

.mon-slider .swiper-slide ul {
  list-style: none;
  padding-left: 30px;
  padding-right: 30px;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  font-weight: 600;
  font-size: 15px;
  line-height: 15px;
  margin: 0px;
}

.mon-slider .swiper-slide ul li {
  margin-right: 15px;
  margin-bottom: 15px;
  height: 30px;
  box-sizing: border-box;
  border: #d9d9d9 1px solid;
  padding-top: 7.5px;
  padding-left: 25px;
  padding-right: 10px;
  background-image: url(../images/puce-rouge-li.svg);
  background-position: 10px center;
  background-repeat: no-repeat;
}

.mon-slider .swiper-slide .bouton {
  padding-left: 30px;
  padding-right: 30px;
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  padding-bottom: 30px;
  padding-top: 15px;
}

.mon-slider .swiper-slide .bouton a {
  color: #d21216;
  background-image: url(../images/puce-rouge-li.svg);
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 15px;
  font-size: 16px;
  font-weight: 600;
}

.testimonials-grid {
  width: 100%;
  max-width: 1500px;
  padding-left: 40px;
  padding-right: 40px;
  margin-left: auto;
  margin-right: auto;
}

.editor-styles-wrapper .wp-block[data-type="graffiti/testimonials"],
.testimonials-grid {
  width: 100%;
  max-width: 1500px;
  padding-left: 40px;
  padding-right: 40px;
}

.editor-styles-wrapper .testimonials-grid .swiper-wrapper {
  display: grid;
  width: 100%;
  flex-direction: row;
  flex-wrap: wrap;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}

.testimonials-grid .swiper-wrapper {
  align-items: stretch !important;
}

.testimonials-grid .swiper-wrapper .swiper-slide {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: stretch;
}

.testimonials-grid .swiper-slide .testimonial-item {
  width: 100%;
  overflow-x: hidden;
  background-color: #fff;
  border-radius: 3px;
  padding-top: 30px;
   padding-bottom:  60px;
  padding-left:  40px;
  padding-right:  40px;
  border: #dfdfdf 1px solid;
  position: relative;
}

.testimonials-grid .swiper-slide .testimonial-item .top-testimonial {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
}

.testimonials-grid
  .swiper-slide
  .testimonial-item
  .top-testimonial
  .testimonial-image {
  width: 48px;
  height: 48px;
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  border-radius: 24px;
  margin-right: 18px;
}

.testimonials-grid
  .swiper-slide
  .testimonial-item
  .top-testimonial
  .testimonial-date {
  font-size: 15px;
  line-height: 15px;
  font-weight: 600;
  border: #d9d9d9 1px solid;
  height: 30px;
  box-sizing: border-box;
  border-radius: 3px;
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 7.5px;
  margin-right: 18px;
}

.testimonials-grid
  .swiper-slide
  .testimonial-item
  .top-testimonial
  .testimonial-type {
  font-size: 15px;
  line-height: 15px;
  font-weight: 600;
  border: #d21216 1px solid;
  height: 30px;
  box-sizing: border-box;
  border-radius: 3px;
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 7.5px;
  color: #fff;
  background-color: #d21216;
  margin-right: 18px;
}

.testimonials-grid .swiper-slide .testimonial-item h3 {
  color: #d21216;
  font-size: 25px;
  line-height: 30px;
}

.testimonials-grid .swiper-slide .testimonial-item p {
  font-size: 16px;
  line-height: 24px;
}

.testimonials-grid .swiper-slide .testimonial-item a {
  color: #d21216;
  background-image: url(../images/puce-rouge-li.svg);
  background-position: left center;
  background-repeat: no-repeat;
  padding-left: 18px;
  position: absolute;
  left:40px;
  bottom: 30px;
}

.swiper-pagination-testimonial {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  margin-top: 50px;
}

.swiper-pagination-testimonial .swiper-pagination-bullet {
  width: 15px;
  height: 15px;
  margin-left: 10px;
  margin-right: 10px;
  border: #d21216 1px solid;
  opacity: 1;
  background-color: transparent;
}

.swiper-pagination-testimonial
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #d21216;
}

ul.wp-block-list {
  list-style: none;
  padding-left: 0;
}

ul.wp-block-list li {
  background-image: url(../images/puce-rouge-li.svg);
  background-position: left 6px;
  background-repeat: no-repeat;
  padding-left: 18px;
  margin-bottom: 5px;
}

ul.wp-block-list.is-style-list-bouton {
  padding-left: 0px;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}

ul.wp-block-list.is-style-list-bouton li {
  border: #fff 1px solid;
  border-radius: 3px;
  color: #fff;
  background-color: #3f5760;
  height: 30px;
  margin-right: 20px;
  box-sizing: border-box;
  font-size: 15px;
  line-height: 30px;
  padding-left: 25px;
  padding-right: 12px;
  background-position: 10px 10px;
  margin-bottom: 10px;
}

ul.wp-block-list.is-style-list-bouton-blanc {
  padding-left: 0px;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}

ul.wp-block-list.is-style-list-bouton-blanc li {
  border: #bebebe 1px solid;
  border-radius: 3px;
  color: #000;
  background-color: #fff;
  height: 30px;
  margin-right: 20px;
  box-sizing: border-box;
  font-size: 15px;
  line-height: 30px;
  padding-left: 25px;
  padding-right: 12px;
  background-position: 10px 10px;
  margin-bottom: 10px;
}

ul.wp-block-list.is-style-list-bouton-blanc li a {
  color: #000;
  text-decoration: none;
}


.is-style-contour-rouge{
  border: #d21216 1px solid;
display: inline-block;
padding-top: 8px;
padding-bottom: 5px;
padding-left: 10px;
padding-right: 10px;
font-weight: 800;
}

.is-style-surtitre-capitale,
.is-style-surtitre-capitale-paragraph{
text-transform: uppercase;
font-size: 20px;
font-weight: 800;
}


/* FORMIDABLE */
.frm_fields_container .form-field input[type="text"]::placeholder,
.frm_fields_container .form-field input[type="email"]::placeholder,
.frm_fields_container .form-field input[type="tel"]::placeholder,
.frm_fields_container .form-field textarea::placeholder {
  color: #fff;
}

.frm_fields_container .form-field input[type="text"],
.frm_fields_container .form-field input[type="email"],
.frm_fields_container .form-field input[type="tel"] {
  border-radius: 0;
  border-top-style: none;
  border-left-style: none;
  border-right-style: none;
  border-bottom: #fff 1px solid;
  height: 60px;
  box-sizing: border-box;
  padding-left: 0px;
  font-size: 18px;
  background-color: #3f5760;
  color: #fff;
}
.frm_fields_container .form-field label {
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  margin-top: 25px;
}

.frm_fields_container .form-field textarea {
  border-radius: 0;
  border-top-style: none;
  border-left-style: none;
  border-right-style: none;
  border-bottom: #fff 1px solid;
  height: 150px;
  box-sizing: border-box;
  padding-left: 0px;
  font-size: 18px;
  background-color: #3f5760;
  color: #fff;
}
.frm_fields_container .form-field input::placeholder,
.frm_fields_container .form-field textarea::placeholder {
  color: #7a7a7a;
  font-size: 18px;
}

.frm_fields_container .form-field textarea:focus,
.frm_fields_container .form-field input[type="text"]:focus,
.frm_fields_container .form-field input[type="email"]:focus,
.frm_fields_container .form-field input[type="tel"]:focus {
  background-color: #3f5760 !important;
  border-color: inherit !important;
  border-bottom: #fff 1px solid !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  color: #fff !important;
}

.frm_fields_container .frm_submit button.frm_button_submit {
  background-color: #d21216;
  color: #fff;
  border-radius: 3px;
  transition: 0.25s;
  height: 40px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 600;
  padding-top: 13px;
  background-image: url(../images/puce-blanche-li.svg);
  background-repeat: no-repeat;
  background-position: 24px 18px;
  padding-left: 44px;
  padding-right: 30px;
  border: #d21216 1px solid;
  box-sizing: border-box;
  cursor: pointer;
  box-shadow: none;
}

.frm_fields_container .frm_submit button.frm_button_submit:hover {
  color: #d21216;
  background-color: #fff;
  background-image: url(../images/puce-rouge-li.svg);
  border: #ffffff 1px solid;
  background-repeat: no-repeat;
  background-position: 24px 18px;
}

.frm_fields_container .frm_dropzone .dz-message {
  background-color: #3f5760;
  color: #7a7a7a;
}

.frm_style_style-formidable.with_frm_style .frm_error {
  margin-top: 2px;
  font-size: 15px;
}

.frm_style_style-formidable.with_frm_style .frm_error_style {
  background-color: #fff;
  font-size: 16px;
  border-radius: 3px;
  border-style: none;
}

/* FIN FORMIDABLE */

.bloc-offres {
  width: 100%;
  padding-right: 50px;
}

article.offre-item {
  background-color: #fff;
  border-radius: 3px;
  margin-top: 17px;
  margin-bottom: 17px;
  padding-top: 30px;
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 30px;
}

article.offre-item .content {
  background-image: url(../images/rond-offre.svg);
  background-position: left top;
  background-size: 9px auto;
  background-repeat: no-repeat;
  padding-left: 35px;
}

article.offre-item p {
  margin-top: 0;
  color: #7a7a7a;
  font-size: 18px;
  line-height: 18px;
  font-weight: 600;
  margin-bottom: 0;
}

article.offre-item h3 {
  font-size: 22px;
  line-height: 28px;
  font-weight: 600;
  margin-top: 0;
  padding-top: 30px;
}

article.offre-item a {
  background-color: #d21216;
  color: #fff;
  border-radius: 3px;
  transition: 0.25s;
  height: 40px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 600;
  padding-top: 13px;
  background-image: url(../images/puce-blanche-li.svg);
  background-repeat: no-repeat;
  background-position: 24px center;
  padding-left: 44px;
  padding-right: 30px;
  transition: 0.25s;
  display: inline-block;
  text-decoration: none;
  box-sizing: border-box;
}

article.offre-item a:hover {
  background-color: #3f5760;
}

figure.is-style-stripes thead {
  border-bottom: #d21216 2px solid;
  color: #d21216;
  text-align: left;
  font-weight: 500;
}
figure.is-style-stripes tbody {
  color: #5d5d5d;
  text-align: left;
}

figure.is-style-stripes tbody a {
  color: #5d5d5d;
}

figure.is-style-stripes tbody a:hover {
  color: #d21216;
}

figure.is-style-stripes thead th,
figure.is-style-stripes tbody td {
  padding: 4px;
}

.marches-wrapper {
  width: 100%;
}

.marches-wrapper .marches-content {
  width: 100%;
  max-width: 1500px;
  padding-left: 0px;
  padding-right: 0px;
  margin-left: auto;
  margin-right: auto;
}

.marches-wrapper .marches-content .marches-titres {
  display: grid;
  width: 100%;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 20px;
}

.marches-wrapper .marches-content .marches-titres .onglet {
  display: flex;
  align-items: center;
  flex-direction: row;
  align-content: center;
  padding-top: 10px;
  padding-bottom: 10px;
  border: #bfcfd5 1px solid;
  border-radius: 5px;
  padding-left: 10px;
  padding-right: 10px;
}

.marches-wrapper .marches-content .marches-titres .onglet .vignette {
  border-radius: 5px;
  width: 50px;
  height: 50px;
  margin: 0;
  padding: 0;
  background-color: #bebebe;
}

.marches-wrapper .marches-content .marches-titres .onglet .vignette img {
  border-radius: 5px;
  width: 50px;
  height: auto;
  margin: 0;
}

.marches-wrapper .marches-content .marches-titres .onglet.on {
  /* background-color: #E8F0F3;*/
}

.marches-wrapper .marches-content .marches-titres .onglet.on p {
  border-right-style: none;
  margin: 0px;
}

.marches-wrapper .marches-content .marches-titres p {
  font-size: 18px;
  font-weight: 600;
  line-height: 18px;
  background-image: url(../images/picto-marche-off.svg);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 24px auto;
  padding-left: 10px;
  cursor: pointer;
  min-height: 24px;
  box-sizing: border-box;
  margin: 0;
  display: block;
  width: 100%;
  display: flex;
  align-items: center;
  flex-direction: row;
  padding-right: 40px;
}

.marches-wrapper .marches-content .marches-titres .onglet.on p {
  background-image: url(../images/picto-marche-on.svg);
}

.marches-wrapper .marches-content .marche-content {
  background-color: #e8f0f3;
  padding-top: 30px;
  padding-bottom: 35px;
  padding-left: 25px;
  padding-right: 25px;
  margin-top: 20px;
  border-radius: 5px;
}

.marches-wrapper .marches-content .marche-content h3 {
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding-right: 50%;
  background-image: url(../images/puce-bleu-li.svg);
  background-position: left center;
  background-repeat: no-repeat;
  padding-left: 20px;
  font-size: clamp(24px, 1.9vw, 36px);
  font-weight: 600;
  margin: 0;
}

.marches-wrapper .marches-content .marche-content p {
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding-right: 50%;
  font-weight: 600;
  font-size: 16px;
  line-height: 20px;
}

.is-root-container .marches-images {
  align-items: flex-start;
  align-content: flex-start;
}

.marches-images {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  align-content: stretch;
}

.marches-images .swiper-wrapper {
  align-items: stretch;
  align-content: stretch;
}

.marches-images .mar-img {
  width: 25%;
  background-color: #fff;
  border: #bfcfd5 1px solid;
  border-radius: 3px;
  min-height: 100%;
}

.is-root-container .marches-images {
  align-items: flex-start;
  align-content: flex-start;
}

.is-root-container .swiper-wrapper {
  align-items: flex-start;
  align-content: flex-start;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}
.is-root-container .marches-images .mar-img {
  width: 16%;
  background-color: #fff;
  border: #bfcfd5 1px solid;
  border-radius: 3px;
  min-height: 100%;
}

.marches-images .mar-img .image {
  width: 100%;
  height: 250px;
  border-radius: 3px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.marches-images .mar-img .contenu {
  padding: 20px;
}

.marches-images .mar-img .contenu span {
  border: #bfcfd5 1px solid;
  border-radius: 3px;
  color: #3f5760;
  background-color: #fff;
  height: 30px;
  margin-right: 20px;
  box-sizing: border-box;
  font-size: 15px;
  font-weight: 600;
  line-height: 30px;
  padding-left: 25px;
  padding-right: 12px;
  background-position: 10px 10px;
  margin-bottom: 10px;
  display: inline-block;
  background-image: url(../images/puce-rouge-li.svg);
  background-position: 6px center;
  background-repeat: no-repeat;
  padding-left: 22px;
  margin-bottom: 5px;
}

.marches-images .mar-img .contenu h4 {
  font-size: 16px;
  line-height: 20px;
  font-weight: 500;
  display: block;
}

.marches-pagination {
  justify-content: center;
  margin-top: 20px;
  width: 100%;
  text-align: center;
}

.marches-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  border: #3f5760 2px solid;
  background-color: transparent;
  opacity: 1;
}

.marches-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 12px;
  height: 12px;
  border: #3f5760 2px solid;
  background-color: #3f5760;
  opacity: 1;
}

.swiper-bandeau {
  width: 100%;
  height: 40vh;
}

.swiper-bandeau .image-bandeau {
  width: 100%;
  height: 40vh;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}


figure.is-style-tableau-historique table{
  border-style: none;
}

figure.is-style-tableau-historique table td{
border-style: none;
width: auto;
}

figure.is-style-tableau-historique table tbody tr td{
  padding-bottom: 10px;
  padding-top: 10px;
  padding-left: 12px;
}


figure.is-style-tableau-historique table tbody tr td:first-child{
color: #d21216;
font-weight: 700;
background-image: url(../images/fond-historique.svg);
background-position: 80px center;
background-repeat: no-repeat;
padding-right: 10px;
font-size: 20px;
line-height: 24px;
}

.is-style-motif-gris, .wrap-ariane{
  background-image: url(../images/motif-points-gris.svg);
}