/*! HTML5 Boilerplate v6.0.1 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
  color: #3a3a3a;
  font-size: 16px;
  line-height: 1.2;
}

/*** Loader ***/
html.loader body {
  position:relative;
  animation-name: fondu;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
  animation-duration: 2s;
  background-color: rgba(0,0,0,0.05);
}
html.loader::before {
  content:"";
  position:absolute;
  margin:0 auto;
  top: calc(50% - 123px);
  left: calc(50% - 74px);
  width: 148px;
  height: 246px;
/*
  background-color: #D7DD8C;
  border-radius: 100% 0 0 0;
*/
  background-size: cover;
  background-position: top left;
  transition: background .1s ease-in;
  animation: loader 2s linear;
}

@keyframes loader {
  0% { background-image: none; }
  15% { background-image: url(../img/loader/loader1.png); }
  30% { background-image: url(../img/loader/loader2.png); }
  45% { background-image: url(../img/loader/loader3.png); }
  60% { background-image: url(../img/loader/loader4.png); }
  80% { background-image: none; }
}

@keyframes fondu
{
  0%, 70%
  {
    opacity:0;
  }
  100%
  {
    opacity:1;
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -50px, 0)
  }
  to {
    opacity: 1;
    transform: none
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 50px, 0)
  }
  to {
    opacity: 1;
    transform: none
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-50px, 0px, 0)
  }
  to {
    opacity: 1;
    transform: none
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translate3d(50px, 0px, 0)
  }
  to {
    opacity: 1;
    transform: none
  }
}
@keyframes fadeInDownRight {
  from {
    opacity: 0;
    transform: translate3d(50px, -50px, 0)
  }
  to {
    opacity: 1;
    transform: none
  }
}


/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
  background: #CE1743;
  text-shadow: none;
  color: #fff;
}

::selection {
  background: #CE1743;
  text-shadow: none;
  color: #fff;
}
footer ::-moz-selection,
footer ::selection,
.bg-pink ::-moz-selection,
.bg-pink ::selection {
  background: #fff;
  text-shadow: none;
  color: #CE1743;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* =========================================================================
   Author's custom styles
   ========================================================================= */
@keyframes slideFade {
 0% {
  opacity:0
 }
 30% {
  opacity:0
 }
 100% {
  opacity:1
 }
}

body {
  font-family: 'Poppins', sans-serif;
  background-color:#fff;
}

* {
  -webkit-tap-highlight-color: transparent;
  word-break: keep-all !important;
  -webkit-hyphens: manual !important;
  -moz-hyphens: manual !important;
  -ms-hyphens: manual !important;
  -o-hyphens: manual !important;
  hyphens: manual !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (min-width:1500px) {
  .container {
    max-width:1420px;
  }
}
section {
  display:block;
}
a {
  transition:all 0.35s ease-in;
  position:relative;
  color:#3a3a3a;
}
a:visited,
a:focus,
a:link {
  color:#3a3a3a;
}
a:hover {
  text-decoration: none;
  color:#CE1743;
}

.no-outline,
.no-outline:focus,
.no-outline:hover,
.no-outline:active {
  outline:0;
}

.hidden {
  visibility: hidden;
}
.align-left {
  text-align:left;
}
.align-right {
  text-align:right;
}
.align-center {
  text-align:center;
}
.margin-top {
  margin-top:20px;
}
.margin-bottom {
  margin-bottom:20px;
}
.no-padding-left {
  padding-left:0px;
}
.no-padding-right {
  padding-right:0px;
}

img,
svg {
  max-width:100%;
  height:auto;
}
.wp-caption {
  max-width:100%;
  font-style: italic;
}
@media (max-width:767px) {
  .wp-caption {
    width:100%!important;
  }
}

/*
.message {
  position:fixed;
  top:20%;
  left:10%;
  width:80%;
  background-color:#FFF;
  color:#000;
  padding:1em;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
*/
.vertical-middle {
  position:absolute;
  left:0;
  top:50%;
  transform: translateY(-50%);
}
.vertical-align-center {
  height: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;  
}

/*** medias ***/
.video-responsive,
.wp-block-embed__wrapper {
  width:100%;
  height:0;
  padding-bottom:56.25%;
/*  overflow:hidden;*/
  position:relative;
  max-width: 800px;
  margin: auto;
}
.video-responsive iframe, .video-responsive embed, .video-responsive object,
.wp-block-embed__wrapper iframe, .wp-block-embed__wrapper embed, .wp-block-embed__wrapper object {
  width:100%!important;
  height:100%!important;
  position:absolute!important;
  top:0;
  left:0;
}

/*** MAGNIFIC POPUP ***/
.mfp-bg {
  opacity:0.9;
}
.grecaptcha-badge { 
  visibility: hidden;
}
body .page {
  color:#3a3a3a;
}
body .page h1,
body .page h2,
body .page h3,
body .page h4,
body .page h5,
body .page h6,
body .page .h1,
body .page .h2,
body .page .h3,
body .page .h4,
body .page .h5,
body .page .h6 {
 line-height:1em;
 font-family:"Poppins",sans-serif;
 font-weight:800
}
body .page h1,
body .page .h1 {
 font-size:3.75em;
 letter-spacing: 0.02em;
 margin-bottom: 50px;
}
body .page h2,
body .page .h2 {
 font-size:2.5em;
 margin-bottom: 30px;
}
body .page h3,
body .page .h3 {
 font-size:1.5em;
 font-weight: 800;
 margin-bottom:20px
}
body .page h4,
body .page .h4 {
 font-size:1.15em;
 font-weight: 700;
}
body .page h5,
body .page .h5 {
 font-size:1.15em
 font-weight: 700;
}
body .page h6,
body .page .h6 {
 font-size:1.15em
 font-weight: 700;
}
.page .texte {
  font-size: 16px;
  line-height: 24px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  letter-spacing: normal;
  text-align: left;
}
.page strong {
  font-weight: 800;
}
.page ul {
  padding-left:0px;
  list-style:none;
  list-style-position: outside;
}
/*
.page ul li::before {
  content: "\f111";
  font-family: "FontAwesome"; 
  color: #CE1743;
  display:inline-block;
  width:1em;
  font-size: 8px;
  line-height: 26px;
  vertical-align: top;
  margin-right: 6px;  
}
*/
.page ul li:not(.col-12) {
  position: relative;
  padding-left: 30px;
}
.page ul.pagination li,
.page ul.slick-slider li,
.page ul.slick-dots li,
.page ul.liste-logo li,
.page ul.liste-descriptifs li,
.page footer ul li {
  padding-left: 0!important;
}
.page ul li::before {
  position: absolute;
  left: 0;
  line-height: 26px;
  vertical-align: top;
  content: "";
  width: 8.75px;
  height: 8.75px;
  margin-right: 15px;
  background: #CE1743;
  transform: matrix(0.71, 0.71, -0.7, 0.71, 0, 0); 
  top: 8.75px;
  border-radius: 2px;
}
.page ul.blocks-gallery-grid li::before,
.page .liste-services ul li::before,
.page footer ul li::before {
  display:none;
}
.page ul.liste-services li li {
  margin-top: 5px;
  line-height: 1.2em;
}
.page ul.liste-services li li::before {
  display: block;
}
.page ol {
  list-style: none; 
  counter-reset: li;
  padding-left:20px;
}
.page ol li::before {
  content: counter(li); 
  color: #CE1743;
  font-family: 'Poppins',sans-serif;
  display: inline-block; 
  width: 1em;
  margin-left: -1.5em;
  margin-right: 0.5em; 
  text-align: right; 
  direction: rtl
}
.page ol li {
  counter-increment: li;
}
.page blockquote {
  border-left: solid 5px #CE1743;
  font-style: italic;
  font-size: 24px;
  padding: 15px 15px 15px 30px;
  margin: 2rem auto;
  border-radius: 5px;
}
.page blockquote cite {
  font-size: 16px;
}
.page figure {
  margin: 40px auto;
}
.page figure figcaption {
  font-size:12px;
}
.page figure.wp-block-image {
  text-align: center;
}
.page figure.is-type-video {
  max-width: 1000px;
}
.pagination {
  justify-content:center;
  margin-top: 60px;
  padding-left: 0px!important;
}
.pagination li::before {
  display:none!important;
}
.pagination li a,
.pagination li span {
  display:block;
  position: relative;
  z-index: 1;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-size:28px;
  color:#3a3a3a;
  text-align:center;
  width:80px;
  height:60px;
  line-height:60px;
  transition:all .2s ease-in;
  border-bottom: none!important;
}
.pagination li.active span,
.pagination li a:hover {
  color:#CE1743;
  font-weight:700;
}
.pagination li.active span {
  color:#fff;
}
.pagination li.active span::before {
  content: "";
  background-color: #ce1743;
  width: 58px;
  height: 58px;
  border-radius: 10px;
  transform: rotate(45deg);
  position: absolute;
  z-index: -1;
  left: 10px;
}
.pagination .prev a,
.pagination .next a {
  width: 40px;
}
.pagination .prev a {
  margin-right: 30px;
}
.pagination .next a {
  margin-left: 30px;
}
.pagination .prev a::before {
  content:"\f104";
  display:block;
  font-family: "FontAwesome";
  font-weight: lighter;
  color:#CE1743;
  width: 40px;
  height: 60px;
  text-align: center;
  transition: all .2s ease-in;
  line-height: 60px;
}
.pagination .next a::before {
  content:"\f105";
  display:block;
  font-family: "FontAwesome";
  font-weight: lighter;
  color:#CE1743;
  width: 40px;
  height: 60px;
  text-align: center;
  line-height: 60px;
  transition: all .2s ease-in;
}
.pagination .prev a:hover::before,
.pagination .next a:hover::before {
  color: #CE1743;
}
.page ul.no-disc li::before {
  display: none;
}
.page ul.no-disc li {
  padding-left: 0;
}
.section-interne {
  padding: 80px 0;
  text-align: left;
  position: relative;
  z-index: 1;
}
.container-padding-left {
  padding-left: 45px;
}
.container-padding-right {
  padding-right: 45px;
}
.bg-white {
  background-color: #fff;
  color: #3a3a3a;
}
.bg-pink {
  background-color: #CE1743;
  color: #fff; 
}
.bg-grey {
  background-color: #eee;
  color: #3a3a3a; 
}
.color-white {
  color: #fff;
}
.color-pink {
  color: #ce1743;
}

.back-to-top {
  position: fixed;
  z-index: 1000;
  right: 15px;
  bottom: 15px;
  color: #fff;
  width: 40px;
  height: 40px;
  text-align: center;
  opacity: 0;
  transition: all 0.2s ease-in; 
}
.back-to-top::before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:-1;
  background: linear-gradient(43.35deg, #C94450 18.51%, #E7B036 76.14%, #F8DD37 100%);
  border-radius:40px;
  box-shadow:0px 0px 0px 7px rgba(250, 123, 38, .35);
}
.back-to-top:hover {
  transform:translateY(-3px);
}
.back-to-top.visible {
  opacity:0.8;
}
.back-to-top a {
  height: 40px;
  position: relative;
  width: 40px;
  display: block;  
  -webkit-transition: all .2s ease-in;
  transition: all .2s ease-in;
  transform: scale(1)
}
.back-to-top a::before {
  position:absolute;
  text-align:center;
  content:"\f077";
  font-family:"FontAwesome";
  color:#fff;
  font-size:15px;
  line-height:30px;
  left:0;
  top:0;
  width:40px;
}
.back-to-top.visible:hover {
  opacity:1;
}
@media (min-width:992px) {
  .back-to-top {
    width:60px;
    height:60px;
  }
  .back-to-top a {
    height: 60px;
    width: 60px;
  }
  .back-to-top a::before {
    font-size:20px;
    line-height:50px;
    width:60px;
  }
}
a.link-1,
a.link-2 {
  font-family: Poppins;
  font-style: normal;
  font-weight: bold;
  font-size: 16px;
  line-height: 24px;
  color: #fff;  
}
a.link-2.pink {
  color: #CE1743;
}
a.underline {
  padding-bottom: 6px;
}
a.underline::before {
  content: "";
  position: absolute;
  left: 10%;
  bottom: 0;
  width: 0%;
  height: 3px;
  background:#CE1743;
  transition: all 0.2s linear;
}
a.underline:hover::before {
  width:80%;
}
a.with-arrow::after {
  content: "\f054";
  font-family: "FontAwesome";
  position: absolute;
  top: -1px;
  margin-left: 10px;
}
a.with-arrow:hover::after {
  -webkit-animation: rightleft 2s infinite;
  animation: rightleft 2s infinite;
}
@keyframes rightleft {
  0% {
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  5% {
    -webkit-transform: translate(10px, 0px);
    -ms-transform: translate(10px, 0px);
    transform: translate(10px, 0px);
  }
  30%,
  100% {
    -webkit-transform: translate(0px,0px);
    -ms-transform: translate(0px,0px);
    transform: translate(0px,0px);
  }
}
a.button {
  position:relative;
  z-index:2;
  display:inline-block;
  text-align:center;
  cursor:pointer;
  padding: 0px 30px 0px 30px;
  border-radius: 5px;
  font-size: 16px;
  font-weight: 700;
  font-stretch: normal;
  font-style: normal;
  line-height: 50px;
  height: 50px;
  width:auto;
  cursor: pointer;  
}
a.button-1 {
  background-color: #CE1743;
  border: solid 1px #CE1743;
  color: #ffffff;
}
a.button-2 {
  background-color: transparent;
  border: solid 1px #ce1743;
  color: #ce1743;
}
a.button-3 {
  background-color: transparent;
  border: solid 1px #3a3a3a;
  color: #ce1743;
}
a.button-4 {
  background-color: rgba(206, 23, 67, .1);
  border: solid 1px rgba(206, 23, 67, 0);
  color: #ce1743;
}
a.button-1.invert {
  background-color: #fff;
  border: solid 1px #fff;
  color: #ce1743;  
}
a.button img {
  max-height:40px;
  width:auto;
}
a.button.ico-link::after {
  content:"\f105";
  font-family:"FontAwesome";
  color:#fff;
  margin-left:6px;
}
a.button.ico-back::before {
  content:"\f104";
  font-family:"FontAwesome";
  color:#fff;
  margin-right:6px;
}
a.button:hover {
  background-color: transparent;
  color: #ce1743;
}
a.button-2:hover,
a.button-3:hover,
a.button-4:hover {
  background-color: #ce1743;
  border: solid 1px #ce1743;
  color: #fff;
}

a.button-1.invert:hover {
  background-color: transparent;
  color: #ffffff;
  text-decoration: none;
}

.bt-contact::before {
  content: "\f879";
  margin-right: 15px;
  font-family: "FontAwesome";
}

.hover-effect-right {
  transition:transform 0.2s ease-in;
}
.hover-effect-right:hover {
  transform:translateX(10px);
}
.cadre-photo {
  overflow: hidden;
  background: #eeeeee;
  border-radius: 25px;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}
.cadre-photo img {
  mix-blend-mode: normal;
  object-fit: cover;
  object-position: center center;
  height: 100%;
  width: 100%;
}


.logo-container .sitename {
  display:none;
}

.introduction {
  padding: 100px 0;
}
.introduction h1 {
  text-align: center;
}
.introduction .texte {
  text-align: center;
  padding: 0 25%;
  font-size: 20px;
  line-height: 26px;
}
.title-with-button {
  display: flex;
  justify-content: space-between;
}
.soustitre1 {
  font-weight: 700;
  font-size: 16px;
  color: #ce1743;
  line-height: 24px;
  letter-spacing: 0.6em;
  text-transform: uppercase; 
  display: inline-block;
  margin-bottom: 15px; 
}
.soustitre2,
body .page h3.soustitre2 {
  font-weight: 800;
  font-size: 25px;
  line-height: 37px;  
  margin-bottom: 30px;
}
.motifs {
  position: absolute;
  z-index: 0;
  top: -500px;
  right: -100px;
}
.motifs2 {
  position: absolute;
  z-index: 0;
  top: -500px;
  left: 0px;
  right: auto;
}
.motifs3 {
  top: -800px;
  left: 0px;
  right: auto;
}
.motifs3 {
  top: -800px;
  left: 0px;
  right: auto;
}
.motifs-bottom {
  top: auto;
  bottom: -500px;
}
.section-liste-services {
  padding: 200px 0;
  overflow: hidden;
  position: relative;
}
.section-liste-services ul {
  list-style: none;
  padding: 0;
  margin: 70px auto 30px;
}
.page .section-liste-services ul li::before {
  display: none;
}
.page .section-liste-services ul li:nth-child(3n+1) {
  padding-left: 0;
}
.page .section-liste-services ul li:nth-child(3n) {
  padding-right: 0;
}
.bloc-service {
  position: relative;
  background: #eeeeee;
  border-radius: 25px;
  margin-bottom: 40px;
}
.bloc-service .cadre-photo {
  border-radius: 25px;
  height: 230px;
  overflow: hidden;
}
.bloc-service .description {
  padding: 40px 30px;
}
.bloc-service .numero {
  font-weight: 500;
  font-size: 38px;
  line-height: 57px;
  color: #CE1743;
  margin-right: 15px;  
}
.bloc-service .titre-container a {
  font-weight: 800;
  font-size: 25px;
  line-height: 37px;
  color: #3A3A3A;  
}
.bloc-service .titre-container {
  margin-bottom: 30px;
}
.section-liste-services .bloc-en-savoir-plus {
  padding: 60px;
  background-color: #f2f2f2;
  display: flex;
  flex-direction: row;
  border-radius: 25px;
}
.section-liste-services .col-left {
  display: flex;
  flex-direction: column;
  width: 50%;
}
.section-liste-services .col-right {
  display: flex;
  width: 50%;
  flex-direction: column;
  justify-content: center;  
}
.section-liste-services .col-right .call-to-action {
  width: 100%;
  text-align: center;
}
.section-liste-services .col-right .button {
  margin: 0 15px;
}
.section-header .cadre-photo {
  border-radius: 0;
  height: 50vh;
  min-height: 300px;
}
.section-header .container-intro {
  position: relative;
}
.section-header .icone,
.bloc-service .icone {
  position: absolute;
  top: 0;
  left:0;
  width: 100%;
  z-index: 2;
  transform: translateY(-50%);
}
.icone span {
  display: inline-block;
  background-color: #CE1743;
  width: 90px;
  height: 90px;
  text-align: center;
  line-height: 90px;
  border-radius: 20px;
  transform: rotate(-45deg);
}
.icone span img,
.icone span svg {
  transform: rotate(45deg);
  display: inline-block;
}
.icone span svg {
  max-height: 45px;
  max-width: 48px;
  width: auto;
}
.single-service .section-header h1 {
  margin-top: 75px;
}
.section-header .resume {
  max-width: 60%;
  margin-left: auto;
  margin-right: auto;
}
.section-interne {
  padding: 80px 0;
}
.section-principale {
  padding-bottom: 0;
}
.section-principale-container,
.section-valeurs-container {
  display: flex;
}
.section-principale-container .cadre-photo,
.section-valeurs-container .cadre-photo {
  border-radius: 0;
}
.section-principale-container .texte-container,
.section-valeurs-container .texte-container {
  padding: 0px 0 0px 80px;
  padding-right: calc( (100% - 1390px) / 2);
}
.section-prestations {
  position: relative;
  overflow: hidden;
  padding-top: 160px;
}
.liste-prestations li::before {
  display: none;
}
.bloc-prestation {
  text-align: center;
}
.bloc-prestation .icone span {
  width: 66px;
  height: 66px;
  line-height: 66px;
  margin-bottom: 30px;
}
.bloc-prestation .icone span svg {
  max-height: 40px;
}
.bloc-prestation .texte {
  text-align: center;
}
blockquote {
  font-size: 30px;
  font-weight: 800;
  padding-left: 30px;
  margin-top: 40px;
}
.page ul.slick-slider li {
  padding-left: 0!important;
}
.en-voir-plus {
  padding: 80px 0;
  text-align: center;
}
.en-voir-plus h2 {
  margin-bottom: 80px!important;
}
.en-voir-plus .slick-list {
  padding-top: 70px;
}
.en-voir-plus li::before {
  display: none;
}
.en-voir-plus .bloc-service,
.en-voir-plus .bloc-reference {
  width: calc( (1390px / 2) - 30px);
  margin: 0 15px 0 15px;
}
.bloc-service .link-en-savoir-plus {
  display: inline-block;
  font-weight: 700;
  font-size: 16px;
  margin-top: 50px;
}
.slider-navigation {
  width: 100%;
  display: flex;
  text-align: center;
  justify-content: center;
  margin-top: 60px;
}
.slider-navigation a {
  font-size: 0;
  width: 135px;
  height: 55px;
  background-color: #CE1743;
  text-align: center;
  margin: 0 15px;
  line-height: 55px;
  color: #fff;
  border-radius: 10px;
}
.slider-navigation a.previous-slide:before {
  content: "\f177";
  font-family: "FontAwesome";
  font-size: 18px;
}
.slider-navigation a.next-slide:before {
  content: "\f178";
  font-family: "FontAwesome";
  font-size: 18px;
}
.section-header .intro-container {
  padding: 50px 0 80px;
}
.section-header .intro-container {
  padding: 50px 0 80px;
}
.page-nos-services .section-intro {
  background-color: #ce1743;
  color: #fff!important;
}
.page-nos-services .section-intro .color-pink{
  color: #fff!important;
}
.section-nos-services {
  text-align: center;
  padding-top: 160px;
  overflow: hidden;
}
.section-nos-services .bloc-service {
  background: transparent;
  margin-bottom: 100px;
}
.section-nos-services .bloc-service .cadre-photo {
  width: 300px;
  height: 190px;
  margin: 0 auto;
}
body.page-nos-services,
body.page-contact,
body.page-references,
body.sc-reference {
  overflow-x: hidden;
}
.page.page-nos-services,
.page.page-contact,
.page.page-references,
.page.single-reference {
  position: relative;
}
.section-valeurs ul.liste-valeurs li::before {
  display: none;
}
ul.liste-valeurs {
  display: flex;
  flex-wrap: wrap;
  margin: 20px auto;
}
ul.liste-valeurs li {
  width: 33.3333%;
  padding: 0!important;
  margin: 20px auto;
}
.liste-valeurs .valeur {
  display: flex;
}
.liste-valeurs .icone span {
  width: 36px;
  height: 36px;
  line-height: 36px;
  border-radius: 10px;
}
.liste-valeurs .icone span svg {
  max-height: 17px;
  max-width: 17px;
}
.liste-valeurs .valeur .h3 {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 0;
  display: flex;
  justify-content: center;
  flex-direction: column;
  padding: 0 15px;
}
.section-valeurs .call-to-action {
  margin-top: 40px;
}
.section-valeurs .call-to-action a {
  margin-right: 15px;
}
.section-valeurs .call-to-action a:last-child {
  margin-left: 15px;
}
.section-valeurs .call-to-action a:last-child::before {
  content: "\f879";
  margin-right: 15px;
  font-family: "FontAwesome";
}
.section-equipe .color-pink {
  font-weight: 600;
}
.section-equipe ul li {
  margin-bottom: 7px;
}
.section-equipe .photos-container {
  display: flex;
  margin: 180px auto 80px;
}
.section-equipe .photos-container .case {
  position: relative;
  width: calc(1390px / 11);
}
.section-equipe .cadre-photo {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  transform: rotate(-45deg) scale(0.76);
}
/*
.section-equipe .cadre-photo::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 10%;
  left: 10%;
  width: 80%;
  height: 80%;
  border-radius: 20px;
  box-shadow: 0px 0px 0px 200px #fff;
  transform: rotate(-45deg);
}
*/
.section-equipe .cadre-photo img {
  transform: rotate(45deg) scale(1.3);
}
.section-equipe .case:nth-child(odd) {
  transform: translateY(50%) scale(1.5);
}
.section-equipe .case:nth-child(even) {
  transform: translateY(-50%) scale(1.5);
}
.formulaire-container {
  background: #F2F2F2;
  padding: 50px 60px;
  border-radius: 25px;
}
.formulaire-container .informations-container {
  background-color: #fff;
  border-radius: 25px;  
  padding: 50px 40px;
  height: 100%;
}
.formulaire-container h2 {
  font-size: 30px!important;
}
.infos-contact {
  margin: 60px 0 0;
  text-align: left;
}
.infos-contact .address {
  display: flex;
  margin-bottom: 40px;
}
.infos-contact .address::before {
  content: "\f279";
  font-family: "FontAwesome";
  font-size: 16px;
  font-weight: lighter;
  margin-right: 20px;
  color: #CE1743;
}
.infos-contact .phone,
.infos-contact .fax {
  font-size: 18px;
  font-weight: 700;
}
.infos-contact .phone::before {
  content: "\f086";
  font-family: "FontAwesome";
  font-size: 16px;
  font-weight: lighter;
  margin-right: 20px;
  color: #CE1743;
}
.infos-contact .fax::before {
  content: "\f02f";
  font-family: "FontAwesome";
  font-size: 16px;
  font-weight: lighter;
  margin-right: 20px;
  color: #CE1743;
}
.infos-contact .mail {
  margin-top: 40px;
  font-size: 16px;
  display: inline-block;
}
.infos-contact .mail::before {
  content: "\f0e0";
  font-family: "FontAwesome";
  font-size: 16px;
  margin-right: 20px;
  color: #CE1743;
}
.contact-formulaire form {
  display: flex;
  flex-wrap: wrap;
}
.wpcf7-form .w-50:nth-child(2n+2) {
  padding: 0 15px 0 0;
}
.wpcf7-form .w-50:nth-child(2n+1) {
  padding: 0 0px 0 15px;
}
.wpcf7-form .wpcf7-form-control-wrap,
.wpcf7-form .w-100 label {
  width: 100%;
}
.wpcf7-form input, 
.wpcf7-form textarea {
  border: none;
  border-bottom: 3px solid #B2B2B2;
  background-color: transparent;
  color:#3a3a3a;
  padding: 0px 0 10px;
  margin-bottom: 4px;
  width: 100%;
  font-weight: 700;
  font-size: 16px;
  outline: none;
  transition: all 0.2s ease-in;
}
.wpcf7-form label {
  margin-bottom: 60px;
}
.wpcf7-form label.no-margin-bottom {
  margin-bottom: 20px;
}
.wpcf7-form input:focus, .wpcf7-form textarea:focus {
  border-bottom: 3px solid #CE1743;
}
.wpcf7-form textarea {
  height: 100px;
}
.wpcf7-form label span:not(.wpcf7-form-control-wrap):not(.wpcf7-not-valid-tip):not(.file-custom) {
  color: #3a3a3a;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.6em;
  text-transform: uppercase;
  margin-bottom: 20px;
  display: inline-block;
}
.wpcf7-form label.on-data span:not(.wpcf7-form-control-wrap):not(.wpcf7-not-valid-tip) {
  color: #CE1743;
}
.wpcf7-form label span.wpcf7-not-valid-tip {
  color: #ff3434;
  font-style: italic;
}
.wpcf7-list-item {
  margin: 0 0 20px 0!important;
}
.wpcf7-form input[type=checkbox] {
  height:20px;
  width:20px;
  position: absolute;
  left: 0px;
  opacity: 0;
  cursor:pointer;
}
.wpcf7-form input[type="checkbox"] + span::before {
  content: "";
  display: inline-block;
  vertical-align: top;
  width:20px;
  height:20px;
  box-sizing: border-box;
  border-radius: 5px;
  background-color: #B2B2B2;
  margin-top:3px;
  margin-right: 6px;
  cursor:pointer;
}
.wpcf7-form input[type="checkbox"]:checked + span::before {
  font-family: "FontAwesome";
  content:"\f00c";
  line-height: 18px;
  font-size: 10px;
  text-align: center;
  color:#fff;
  background-color:#CE1743;
}
.wpcf7-form .button-submit {
  position: relative;
  margin: 0 auto;
  float: right;
}
.wpcf7-form .button-submit input[type="submit"] {
  position:relative;
  text-align:center;
  cursor:pointer;
  padding: 0px 30px 0px 30px;
  border-radius: 5px;
  font-size: 16px;
  font-weight: 700;
  font-stretch: normal;
  font-style: normal;
  line-height: 50px;
  height: 50px;
  width:auto;
  cursor: pointer;  
  background-color: #CE1743;
  border: solid 1px #CE1743;
  color: #ffffff;
  transition: all .2s ease-in;
}
.wpcf7-form .button-submit input[type="submit"]:hover {
  background-color: transparent;
  color: #CE1743;
}
.wpcf7-form .button-submit span.ajax-loader{
  display: block;
}
/*
.wpcf7-form .button-submit span:not(.ajax-loader)::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 3px;
  background:linear-gradient(43.35deg, #C94450 18.51%, #E7B036 76.14%, #F8DD37 100%);
  transition: all 0.2s linear;
}
.wpcf7-form .button-submit span:not(.ajax-loader):hover::before {
  width:100%;
  transform: translateY(4px)
}
*/
.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output {
  border:none!important;
}
.wpcf7-not-valid-tip,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
  color:#ff1a1a!important;
}
.wpcf7 form.sent .wpcf7-response-output {
  border:none!important;
  color:rgba(62, 63, 77, 1);
}
.wpcf7 .wpcf7-response-output {
  margin:0!important;
}
.wpcf7 i.recaptcha {
  width: 56px;
  height: 56px;
  background-image: url(../img/main/recaptcha.jpg);
  background-repeat: no-repeat;
  display: inline-block;
  vertical-align: top;
}
.container-map {
  position: relative;
}
.map-standard {
  min-height: 600px;
  height:600px;
  background-color: #f7f7f7;
}
.map-info {
  color: #3a3a3a;
  font-family: "Popins", sans-serif;
}
.map-info span.titre {
  font-size: 16px;
  font-family: "Poppins",sans-serif;
  font-weight: 700;
}
.map-info .texte {
  font-size: 14px;
}
.map-info strong {
  font-weight: 700;
}
.map-info a {
  color: #ce1743!important;
}
.map-info .phone::before {
  content: "\f095";
  font-family: "FontAwesome";
  font-size: 12px;
  margin-right: 8px;
  color: #3a3a3a;
}
.map-info .mail::before {
  content: "\f0e0";
  font-family: "FontAwesome";
  font-size: 12px;
  margin-right: 8px;
  color: #3a3a3a;
}
.map-info .fax::before {
  content: "\f02f";
  font-family: "FontAwesome";
  font-size: 12px;
  margin-right: 8px;
  color: #3a3a3a;
}
.page-references {
  background-color: #e5e5e5;
}
.liste-references ul:not(.pagination):not(.slider-similaires) {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.liste-references ul li::before {
  display: none;
}
.liste-references ul:not(.pagination):not(.slider-similaires) li:first-child {
  grid-row-start: 1;
  grid-row-end: 3;
}
.liste-references ul:not(.pagination):not(.slider-similaires) li {
  padding: 0 15px!important;
}
.liste-references ul:not(.pagination):not(.slider-similaires) li:first-child,
.liste-references ul:not(.pagination):not(.slider-similaires) li:nth-child(4n+2),
.liste-references ul:not(.pagination):not(.slider-similaires) li:nth-child(4) {
  padding-left: 0!important;
}
.liste-references ul:not(.pagination):not(.slider-similaires) li:nth-child(2),
.liste-references ul:not(.pagination):not(.slider-similaires) li:nth-child(2n+1) {
  padding-right: 0!important;
}
.liste-references ul:not(.pagination):not(.slider-similaires) li:first-child {
  padding-right: 15px!important;
}
.liste-references ul:not(.pagination):not(.slider-similaires) li:nth-child(2) {
  padding-left: 15px!important;
}
.page-home .slider-references {
  margin: 0!important;
  position: relative;
}
.page-home .slider-references li::before {
  display: none;
}
.page-home .slider-references li {
  padding: 0!important;
  border: 0!important;
}
.bloc-reference {
  position: relative;
  height: 530px;
  background-color: #fff;
  border-radius: 25px;
  padding: 50px;
  overflow: hidden;
  margin-bottom: 30px;
}
.page-home .bloc-reference {
  padding: 0;
  border-radius: 0;
  background-color: rgba(0,0,0,0.05);
  margin: 0;
  height: 800px;
  width: 100%;
}
.bloc-reference .resume {
  display: none;
}
.page-home .bloc-reference .resume {
  display: block;
}
.liste-references ul li.first .bloc-reference {
  height: 1090px;
}
.liste-references ul li.first .bloc-reference .resume {
  display: block;
  margin-top: 40px;
}
.liste-references ul li.first .bloc-reference .description {
  padding: 40px 40px 0;
}
.bloc-reference .cadre-photo {
  height: 150px;
  margin-bottom: 30px;
}
.liste-references ul li.first .bloc-reference .cadre-photo {
  height: 400px;
}
.page-home .bloc-reference .cadre-photo {
  height: 800px;
  margin: 0;
  border-radius: 0;
}
.bloc-reference .description {
  text-align: left;
}
.page-home .bloc-reference .description {
  height: 100%;
  padding: 0 15% 0 calc(100% - 695px);
}
.page-home .bloc-reference .col-12 {
  padding: 0;
}
.bloc-reference .titre-container a {
  display: block;
  width: 100%;
  font-weight: 800;
  font-size: 40px;
  line-height: 1em;
}
.page-home .bloc-reference .titre-container a {
  display: block;
  margin-bottom: 20px;
}
.caracteristiques {
  margin-top: 40px;
  font-weight: 700;
  font-size: 16px;
}
.caracteristiques span {
  margin-right: 50px;
}
.caracteristiques span:last-child {
  margin-right: 0px;
}
/*
.caracteristiques span.lots::before,
.caracteristiques span i::before {
  font-family: "FontAwesome";
  margin-right: 8px;
  font-weight: 300;
}
*/
.caracteristiques span.surface svg {
  height: 24px;
  margin-right:8px;
  margin-top: -6px;
}
.caracteristiques span.lieu svg {
  height: 22px;
  margin-right: 8px;
  margin-top: -4px;
}
/*
.caracteristiques span.lots::before {
  content: "\f1ad";
}
*/
.caracteristiques span.lots svg {
  height: 24px;
  margin-right: 8px;
  margin-top: -6px;
}
.bloc-reference .button {
  position: absolute;
  bottom: 50px;
  left: 50px;
}
.page-home .bloc-reference .call-to-action {
  position: relative;
  margin-top: 50px;
}
.page-home .bloc-reference .button {
  position: relative;
  left: 0;
  bottom: 0;
  margin-right: 30px;
  margin-bottom: 30px;
}
.page-home .bloc-reference .button::last-child {
  margin-right: 0px;
}
.liste-references ul li.first .bloc-reference .button {
  left: 90px;
}
.page-home .section-references .call-to-action.top-action {
  position: absolute;
  width: 100%;
  text-align: center;
  transform: translateY(-50%);
  z-index: 2;
}
.page-home .section-references .call-to-action.top-action .button-black {
  background-color: #000;
  font-weight: 400;
  height: 60px;
  line-height: 60px;
  border-radius: 0;
  padding: 0 60px;
  font-size: 18px;
  color: #fff;
}
.page-home .section-references .call-to-action.top-action .button-black:hover {
  background-color: #fff;
  color: #000;
}
.page-home .container-liste-references {
  position: relative;
}
.page-home .slider-navigation {
  position: absolute;
  width: 250px;
  height: 100px;
  background-color: #fff;
  overflow: hidden;
  z-index: 10;
  bottom: 0;
  left: 50%;
  margin: 0;
}
.page-home .slider-navigation a {
  background-color: transparent;
  width: 70px;
  height: 100px;
  text-align: center;
  line-height: 100px;
  color: #000;
  margin: 0;
}
.page-home .slider-navigation a.previous-slide::before {
  content: "\f104";
}
.page-home .slider-navigation a.next-slide::before {
  content: "\f105";
}
.page-home #score-dots {
  width: 110px;
  text-align: center;
  color: #3a3a3a;
  line-height: 100px;
}
.single-reference .section-header {
  background-color: #fff;
  padding-bottom: 100px;
}
.single-reference .intro {
  padding-top: 80px;
}
.sc-reference {
  background-color: #e5e5e5;
}
.single-reference .photos .cadre-photo {
  border-radius: 20px;
  margin-bottom: 30px;
}
.single-reference .photos {
  padding-top: 100px;
}
footer {
  padding: 50px;
}
footer.bg-white {
  background-color: #fff;
}
footer .bg-pink {
  text-align:left;
  padding: 100px 15px 100px;
  border-radius: 50px;
  position:relative;
  color:#fff;
  font-family: "Poppins", sans-serif;
}
footer .column-1 {
  text-align: left;
}
footer .sitename {
  font-size:0;
  display:none;
}
footer .column {
  display:flex;
  flex-direction:column;
  justify-content: center;
  font-size: 16px;
  line-height: 21px;
}
footer .logo-footer {
  display:inline-block;
  vertical-align:bottom;
  width:100%;
  max-width: 260px;
}
footer .link-footer {
  display: block;
  margin-bottom: 20px;
  font-weight: 400;
}
footer .address {
  margin-top: 15px;
  margin-bottom: 40px;
  font-weight: 400;
  font-size: 16px;
}
footer .mail,
footer .telephone-container,
footer .fax-container {
  display: inline-block;
  width: 100%;
  font-weight: 700;
  margin-top: 15px;
  color: #fff;
  font-size: 16px;
}
footer .mail {
  margin-bottom: 40px;
}
footer .telephone-container,
footer .fax-container {
  margin-top: 20px;
}
footer .menu-footer ul {
  list-style: none;
  padding: 0;
  margin: 25px 0 0;
}
footer .menu-footer ul li {
  font-weight: 300;
  margin-top: 15px;
}
footer .menu-footer ul li:first-child {
  margin-top: 0;
}
footer  a:not(.button) {
  color: #fff!important;
}
footer .menu-footer ul li a {
  font-weight: 300;
}
footer a:hover {
  text-decoration: underline;
}
footer .call-to-action {
  margin: 15px 0 62px;
}
footer .button-1 {
  font-size: 18px;
  height: 60px;
  line-height: 60px;
  font-weight: 700;
}
footer .copyrights{
  margin-top: 00px;
  font-size:13px;
  color: rgba(255,255,255,.5);
  font-weight: 200;
  width:100%;
  padding-top: 25px;
}
footer .copyrights a {
  color: rgba(255,255,255,.5);
}

.dialog {
  display:none;
}
/* Overlays */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index:2000;
}
.ui-widget-overlay {
  background-color: #fff;
  opacity: .95;
  filter: Alpha(Opacity=95);
}
.mfp-bg {
  background:#fff!important;
  opacity: .95!important;
  filter: Alpha(Opacity=95)!important;
}
.mfp-title,
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
  color: rgb(62, 63, 77)!important;
}
.mfp-counter {
  color: #CE1743!important;
}
.ui-widget-shadow {
  margin: -8px 0 0 -8px;
  padding: 8px;
  background-color: #aaaaaa;
  opacity: .3;
  filter: Alpha(Opacity=30);
  border-radius: 8px;
}
.ui-dialog {
  position: absolute;
  top: 0;
  left: 0;
  padding: 30px 50px;
  outline: 0;
  z-index:3000;
  width:calc(100% - 30px)!important;
  height:auto!important;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.35);
}
.ui-widget-content:not(.ui-dialog-content) {
  background:#fff!important;
  border:none!important;
  padding:30px 50px;
  text-align:left;
  border-radius: 10px;
}
.ui-widget-header {
  border: none!important;
  background: transparent!important;
}
.ui-dialog .ui-dialog-titlebar {
  padding: .4em 0em;
  position: relative;
}
.ui-dialog .ui-dialog-title {
  display: inline-block;
  white-space: nowrap;
  width: 90%;
  text-overflow: ellipsis;
  color:rgb(62, 64, 77);
  font-size: 2.5em;
  line-height: 1em;
  font-weight: 800;
  font-family: "Poppins", sans-serif;
  margin:0 0 0px;
  text-align: left;
}
.ui-dialog .ui-dialog-titlebar-close:before {
  content:"\f00d";
  font-family: "FontAwesome";
  font-size:30px;
  font-weight: normal;
  line-height: 60px;
}
.ui-dialog .ui-dialog-titlebar-close:focus {
  border:none!important;
  outline: none!important;
}
.ui-dialog .ui-dialog-titlebar-close {
  position: absolute;
  right: -20px;
  top: 30px;
  width: 30px;
  margin: -45px 0 0 0;
  height: 40px;
  padding: 0px;
  opacity: 0.35;
  filter: alpha(opacity=35);
  color: rgb(62, 64, 77);
  cursor:pointer;
  text-transform:uppercase;
  border:none;
  background:transparent;
  font-style: normal;
  font-size: 0px;
  font-weight:normal!important;
}
.ui-dialog .ui-dialog-titlebar-close:hover {
  opacity: 1;
  filter: alpha(opacity=100); 
  border:none!important;
  outline: none!important;
}
.no-close .ui-dialog-titlebar-close {
  display:none;
}
.ui-dialog .form-title > span {
  font-size: 18px !important;
}
.ui-dialog .ui-dialog-content {
  position: relative;
  border: 0;
  overflow: auto;
  color: rgb(62, 64, 77);
}
.ui-dialog .ui-dialog-content .form-se-connecter {
  width:60%;
  margin:0 auto;
  text-align:left;
  padding-bottom:60px;
}
.ui-dialog #dialog-erreurs {
  background-color: #474543;
  border: 1px solid #282726;
  color: rgb(62, 64, 77);
}
.ui-dialog-content {
  width:auto;
}
.ui-dialog .ui-button-text {
    display: none;
}
.ui-dialog-content .content {
  background-color: transparent;
  color: rgb(62, 64, 77);
  margin-top: 0;
  min-height: auto;
  padding-top: 40px;
}
.ui-dialog-content .message span {
  color:#4D5D22!important;
}
.ui-dialog-content .message strong {
  font-weight: 800;
}
.ui-dialog-content .content .ajax-loading {
  font-size: 40px;
  font-weight: lighter;
}
.ui-dialog-content .login-submit,
.ui-dialog-content .forget-password {
  text-align:right;
}
.ui-dialog-content .forget-password {
  margin-top:-100px;
  font-size:0.8em;
}
.ui-dialog-content .forget-password a {
  text-decoration: underline;
}
.ui-dialog-content .erreur {
  color: #b21212;
  display: none;
  font-size: 0.8em;
  font-weight: bold;
  height: 16px;
  margin: 13px 0 0 7px;
  position: absolute;
  z-index: 10;
}
.ui-dialog-content .message-error,
.formulaire .message-error {
  color:#ff1a1a;
  font-size:14px;
  font-style:italic;
  width: 100%;
  display: block;
  text-align: left;
  margin-bottom: 10px;
}
.formulaire input.error,
.formulaire textarea.error,
.formulaire .chosen-container.error,
.formulaire select.chosen.error {
  box-shadow: 0px 0px 2px 2px rgba(77, 93, 34,0.40);
}
.formulaire .site-message {
  margin-bottom:20px;
}
.ui-dialog-content iframe,
.ui-dialog-content .video-responsive {
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.9);
  background: #000;
}
.ui-dialog-content .caption {
  text-align: left;
  line-height: 18px;
  color: #EFEDE9;
  word-wrap: break-word;
  padding-right: 36px;  
  margin-top:5px;
}
.ui-dialog-content .caption small {
  color: #C4BCB0;
  display: block;
  font-size: 12px;
  line-height: 14px; 
}
.ui-dialog .ui-dialog-buttonpane {
  text-align: left;
  background-image: none;
  margin-top: .5em;
  padding: .3em 1em .5em .4em;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
  float: right;
}
.ui-dialog .ui-resizable-se {
  width: 12px;
  height: 12px;
  right: -5px;
  bottom: -5px;
  background-position: 16px 16px;
}
.ui-dialog-content .form-container {
  margin:5px 0px 5px 0px;
}
.ui-dialog-content .form-container .form-buttons-footer {
  margin-bottom:0px;
  height:10px;
}
.ui-dialog .content,
.ui-dialog .dialog-content {
  padding:0;
  overflow:visible;
}
.ui-dialog #societe-label {
  display: none;
  font-weight: bold;
  letter-spacing: 4.56471px;
  text-transform: uppercase;
  color: #CE1743;
  margin-bottom: 0px;  
}
.ui-dialog #offre-label {
  display: block;
  font-family: "Poppins",sans-serif;
  font-weight: 700;
  color: rgb(62, 64, 77);
  margin-top: 20px;
  margin-bottom: 50px;
  font-size: 1.25em;  
  line-height: 1.25em;
}
@media only screen and (min-width: 768px) {
  .ui-dialog {
    width:80%!important;
    height:auto!important;
  }
}

@media only screen and (min-width: 992px) {
  .ui-dialog {
    width:70%!important;
    height:auto!important;
    max-width:700px;
  }
}

@media only screen and (min-width: 1200px) {
  .ui-dialog {
    width:60%!important;
    height:auto!important;
  }
}

/*** RESPONSIVE A l'ENVERS ***/
@media only screen and (max-width:1499px) {
  body .page h1,
  body .page .h1 {
    font-size: 50px;
  }
  .page-home .bloc-reference .description {
    padding: 0 10% 0 calc(100% - 555px);
  }
  .page-home .bloc-reference {
    height: 600px;
  }
  .page-home .bloc-reference .description {
    height: 600px;
  }
  .bloc-service .numero {
    font-size: 30px;
  }
  .bloc-service .titre-container a {
    font-size: 22px;
  }
  .section-principale-container .w-50,
  .section-valeurs-container .w-50 {
    height: 600px;
  }
  .section-principale-container .texte-container, 
  .section-valeurs-container .texte-container {
    padding: 0px 0 0px 60px;
    padding-right: calc( (100% - 1110px) / 2);
  }
  .liste-valeurs .valeur .h3 {
    font-size: 14px;
    padding: 0 0px 0 10px;
  }
  .section-valeurs-container .texte-container {
    padding-left:40px;
  }
  .en-voir-plus .bloc-service, 
  .en-voir-plus .bloc-reference {
    width:  calc( (1110px / 2) - 30px);
  }
  .bloc-reference {
    padding: 40px;
  }
  .caracteristiques {
    font-size: 15px;
  }
  .caracteristiques span {
    margin-right: 30px;
  }
  .liste-references ul li.first .bloc-reference .description {
    padding: 40px 20px 0;
  }
  .bloc-reference .button {
    left: 40px;
    bottom: 40px;
  }
  .liste-references ul li.first .bloc-reference .button {
    left: 40px;
  }
  .formulaire-container {
    padding: 40px;
  }
  footer .logo-footer {
    max-width: 200px;
  }
  footer .button-1 {
    font-size: 16px;
    height: 50px;
    line-height: 50px;
  }
}

@media only screen and (max-width:1199px) {
  body {
    font-size: 14px;
  }
  body .page h1, body .page .h1 {
    font-size: 40px;
  }
  body .page h2,
  body .page .h2,
  .ui-dialog .ui-dialog-title,
  body .page .contact-formulaire h2 {
   font-size:2em;
  }
  body .page h3,
  .ui-dialog #offre-label {
   font-size:1.25em;
  }
  .page .texte {
    font-size: 14px;
    line-height: 1.5em;
  }
  a.link-1, a.link-2 {
    font-size: 14px;
  }
  a.button,
  .wpcf7-form .button-submit input[type="submit"] {
    padding: 0 20px;
    height: 40px;
    line-height: 40px;
    font-size: 14px;
  }
  .page blockquote {
    font-size: 1.25em;
  }
  .page blockquote cite {
    font-size: 0.875em;
  }
  .page-home .section-references .call-to-action.top-action .button-black {
    font-size: 16px;
    line-height: 50px;
    height: 50px;
    padding: 0 50px;
  }
  .page-home .bloc-reference .description {
    padding: 0 5% 0 calc(100% - 465px);
  }
  .soustitre1 {
    font-size: 14px;
  }
  .bloc-reference .titre-container a {
    font-size: 32px;
  }
  .page-home .slider-navigation {
    width: 200px;
    height: 75px;
  }
  .page-home .slider-navigation a {
    height: 75px;
    width: 60px;
    line-height: 75px;
  }
  .page-home #score-dots {
    width: 80px;
    line-height: 75px;
  }
  .page .section-liste-services ul li:nth-child(3n) {
    padding-right: 15px;
  }
  .page .section-liste-services ul li:nth-child(3n+1) {
    padding-left: 15px;
  }
  .page .section-liste-services ul li:nth-child(2n) {
    padding-right: 0;
  }
  .page .section-liste-services ul li:nth-child(2n+1) {
    padding-left: 0;
  }
  .soustitre2, 
  body .page h3.soustitre2 {
    font-size: 22px;
    line-height: 30px;
  }
  .icone span {
    width: 70px;
    height: 70px;
    line-height: 70px;
  }
  .icone span img, 
  .icone span svg {
    width: 35px;
    height: 35px;
  }
  .section-principale-container .texte-container, 
  .section-valeurs-container .texte-container {
    padding: 0px 0 0px 40px;
    padding-right: calc( (100% - 930px) / 2);
  }
  .section-principale-container .w-50, 
  .section-valeurs-container .w-50 {
    height: 500px;
  }  
  .en-voir-plus .bloc-service, 
  .en-voir-plus .bloc-reference {
    width:  calc( (930px / 2) - 30px);
  }
  .bloc-reference {
    padding: 30px;
  }
  .caracteristiques {
    font-size: 14px;
    margin-top: 20px;
  }
  .caracteristiques span {
    margin-right: 20px;
  }
  .liste-references ul li.first .bloc-reference {
    height: 890px;
  }
  .liste-references ul li.first .bloc-reference .caracteristiques {
    height: 890px;
    margin-top: 40px;
  }
  .bloc-reference {
    height: 430px;
  }
  .liste-references ul li.first .bloc-reference .description {
    padding: 30px 0 0;
  }
  .bloc-reference .button,
  .liste-references ul li.first .bloc-reference .button {
    left: 30px;
    bottom: 30px;
  }
  .section-valeurs-container .texte-container {
    padding-left: 30px;
  }
  .liste-valeurs .icone span {
    width: 28px;
    height: 28px;
    line-height: 28px;    
  }
  .liste-valeurs .icone span svg {
    max-height: 14px;
    max-width: 14px;
  } 
  .liste-valeurs .valeur .h3 {
    font-size: 13px;
    padding: 0 0px 0 5px;
    font-weight: 600;
  }  
  .section-equipe .cadre-photo {
    border-radius: 15px;
  }
  .formulaire-container {
    padding: 30px;
  }   
  .formulaire-container .informations-container {
    padding: 30px 20px;
  }
  .wpcf7-form label span:not(.wpcf7-form-control-wrap):not(.wpcf7-not-valid-tip):not(.file-custom),
  .wpcf7-form input, .wpcf7-form textarea {
    font-size: 14px;
  }
  footer {
    padding: 30px;
  }  
  footer .logo-footer {
    max-width: 180px;
  }
  footer .column,
  footer .address,
  footer .mail,
  footer .telephone-container,
  footer .fax-container {
    font-size: 14px;
  }
  footer .call-to-action {
    margin: 15px 0 82px;
  }
}

@media only screen and  (max-width:991px) {
  body .page h1, body .page .h1 {
    font-size: 2.5em;
  }
  body .page h2,
  body .page .h2,
  .ui-dialog .ui-dialog-title {
   font-size:1.75em;
  }
  .page blockquote {
    margin: 0.75rem auto;
  }
  .page .section-liste-services ul li {
    padding: 0!important;
  }
  .section-liste-services .col-right .button {
    margin: 0 auto 20px;
  }
  .liste-references ul:not(.pagination):not(.slider-similaires) {
    grid-template-columns: repeat(1, 1fr);
  }
  .liste-references ul:not(.pagination):not(.slider-similaires) li:first-child {
    grid-row-start: 1;
    grid-row-end: 1;
  }
  .liste-references ul:not(.pagination):not(.slider-similaires) li:nth-child(2),
  .liste-references ul:not(.pagination):not(.slider-similaires) li:nth-child(2n+1),
  .liste-references ul:not(.pagination):not(.slider-similaires) li:nth-child(4),
  .liste-references ul:not(.pagination):not(.slider-similaires) li:nth-child(4n+2) {
    padding: 0!important;
  }
  .bloc-reference,
  .liste-references ul li.first .bloc-reference .caracteristiques {
    height: auto!important;
  }
  .page-home .bloc-reference {
    height: 800px!important;
  }
  .bloc-reference .button {
    position: relative;
    display: inline-block;
    left: 0!important;
    bottom: 0!important;
    margin-top: 40px;
  }
  .single-reference .photos .col-md-6 .cadre-photo {
    height: 300px;
  }
  .section-principale-container .texte-container, 
  .section-valeurs-container .texte-container {
    padding: 0px 0 0px 40px;
    padding-right: calc( (100% - 720px) / 2);
  }
  .section-principale-container .w-50, 
  .section-valeurs-container .w-50 {
    height: 540px;
  }  
  .en-voir-plus .bloc-service, 
  .en-voir-plus .bloc-reference {
    width:  calc( (690px / 2) - 30px);
  }
  .en-voir-plus .bloc-reference {
    padding: 20px;
    min-height: 450px;
  }
  .en-voir-plus .bloc-reference .soustitre1 {
    letter-spacing:0.4em;
  }
  .en-voir-plus .bloc-reference .titre-container a {
    font-size: 24px;
  }
  .liste-prestations ul.row {
    justify-content: center;
  }
  .liste-prestations .bloc-prestation {
    margin-bottom: 40px;
  }
  .bloc-service .cadre-photo {
    height: 200px;
  }
  .bloc-service .description {
    padding: 30px 20px;
  }
  .bloc-service .titre-container {
    margin-bottom: 20px;
  }
  .bloc-service .link-en-savoir-plus {
    margin-top: 30px;
  }
  .section-valeurs-container .texte-container {
    padding-left: 30px;
  }
  ul.liste-valeurs {
    margin: 10px auto 20px;
  }
  ul.liste-valeurs li {
    width: 50%;
    margin: 10px auto;
  }
  .section-valeurs .call-to-action {
    margin-top: 20px;
  }
  .section-valeurs .call-to-action .button {
    padding: 0 15px;
  }
  .section-valeurs .call-to-action a:last-child {
    margin-right: 0;
  }
  .section-equipe .cadre-photo {
    border-radius: 12px;
  }
  .contact-formulaire .container-padding-left {
    padding-left: 0;
    padding-top: 40px;
  }
  .introduction {
    padding: 60px 0;
  }
  .page-home .bloc-reference .description {
    padding: 30px;
    height: auto;
  }
  .page-home .slider-navigation {
    left: auto;
    right: 0;
  }
  .page-home .bloc-reference .cadre-photo {
    height: 400px;
  }
  footer .bg-pink {
    padding: 50px 15px 50px;
  }
  footer .copyrights {
    margin-top: 0px;
  }
}

@media only screen and (max-width: 767px) {
  body .page h1, body .page .h1 {
    font-size: 1.875em;
    margin-bottom: 30px;
  }
  body .page h2,
  body .page .h2,
  .ui-dialog .ui-dialog-title {
   font-size:1.5em;
  }
  .introduction .texte {
    padding: 0 15px;
  }
  a.button, .wpcf7-form .button-submit input[type="submit"] {
    padding: 0 15px;
  }
  .bt-contact::before {
    margin-right: 10px;
  }
  .section-liste-services .col-left {
    width: 60%;
  }
  .section-liste-services .col-right {
    width: 40%;
  }
  .section-liste-services .bloc-en-savoir-plus {
    padding: 30px;
  }
  .section-header .resume {
    max-width: 80%;
  }
  .section-principale-container, 
  .section-valeurs-container {
    flex-direction: column;
  }
  .section-principale-container .w-50, 
  .section-valeurs-container .w-50 {
    width: 100%!important;
    height: auto;
  }
  .section-principale-container .cadre-photo {
    height: 300px;
  }
  .section-principale-container .texte-container, 
  .section-valeurs-container .texte-container {
    padding: 40px;
  }
  .en-voir-plus {
    text-align: left;
  }
  .en-voir-plus .slider-similaires {
    margin: 0 -15px;
  }
  .en-voir-plus .bloc-service,
  .en-voir-plus .bloc-reference {
    width: 510px;
  }
  .en-voir-plus .bloc-service {
    text-align: center;
  }
  .section-equipe .cadre-photo {
    border-radius: 8px;
  }  
  footer .logo-footer {
    margin-bottom: 0;
  }
  footer .column-2 {
    margin-top: 20px;
  }
  footer .address {
    margin-bottom: 20px;
  }
  footer .link-footer {
    margin-bottom: 10px;
  }
  footer .mail {
    margin-bottom: 10px;
    margin-top: 0;
  }  
  footer .telephone-container, footer .fax-container {
    margin-top: 10px;
  }
  footer .call-to-action {
    margin-bottom: 40px;
  }
}

@media only screen and (max-width: 575px) {
  .page.page-nos-services, .page.page-contact, .page.page-references, .page.single-reference {
    overflow: hidden;
  }
  .section-header .cadre-photo {
    height: 300px;
  }
  .section-liste-services .col-left {
    width: 100%;
    margin-bottom: 20px;
  }
  .section-liste-services .col-right {
    width: 100%;
  }
  .page-home .bloc-reference .button:last-child {
    margin-right: 0;
  }
  .en-voir-plus .bloc-service, 
  .en-voir-plus .bloc-reference {
    width: calc(100vw - 30px);
  }  
}
@media only screen and (max-width: 499px) {
  .page-home .bloc-reference .call-to-action {
    margin-top: 20px;
  }
  .page-home .bloc-reference .button {
    margin-top: 0;
    margin-bottom: 100px;
  }
  .page-home .bloc-reference .description {
    padding: 30px 15px;
  }
  .caracteristiques span {
    display: inline-block;
    margin-bottom: 20px;
  }
  .page-home .bloc-reference .cadre-photo {
    height: 300px;
  }
  .section-liste-services .bloc-en-savoir-plus {
    flex-direction: column;
  }
  .wpcf7-form .w-50:nth-child(2n+2),
  .wpcf7-form .w-50:nth-child(2n+1) {
    padding: 0;
    width: 100%!important;
  }
  .liste-valeurs .valeur {
    padding-right: 15px;
  }
  footer {
    padding: 15px;
  }
}
@media only screen and (max-width: 410px) {
  .section-header .cadre-photo {
    height: 200px;
    min-height: 200px;
  }
  .section-principale-container .texte-container, 
  .section-valeurs-container .texte-container {
    padding: 40px 15px;
  }
}
@media only screen and (max-width: 399px) {
}
@media only screen and (max-width: 391px) {
}

@media only print {
  h1 {
    font-size: 2.5em;
  }
  header,
  .container-actions,
  .actus-similaires,
  footer {
    display: none;
  }
}