@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&family=PT+Serif:wght@400;700&display=swap");
.container {
  margin: 0 auto;
  max-width: 1280px;
  width: 90%;
}

@media only screen and (min-width: 768px) {
  .container {
    width: 85%;
  }
}

@media only screen and (min-width: 993px) {
  .container {
    width: 70%;
  }
}

.container .row {
  margin-left: -0.75rem;
  margin-right: -0.75rem;
}

.section {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.section.no-pad {
  padding: 0;
}

.section.no-pad-bot {
  padding-bottom: 0;
}

.section.no-pad-top {
  padding-top: 0;
}

.row {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
}

.row:after {
  content: "";
  display: table;
  clear: both;
}

.row .col {
  float: left;
  box-sizing: border-box;
  padding: 0 0.75rem;
  width: 100%;
}

.row .col.s1 {
  width: 8.33333%;
  margin-left: 0;
}

.row .col.s2 {
  width: 16.66667%;
  margin-left: 0;
}

.row .col.s3 {
  width: 25%;
  margin-left: 0;
}

.row .col.s4 {
  width: 33.33333%;
  margin-left: 0;
}

.row .col.s5 {
  width: 41.66667%;
  margin-left: 0;
}

.row .col.s6 {
  width: 50%;
  margin-left: 0;
}

.row .col.s7 {
  width: 58.33333%;
  margin-left: 0;
}

.row .col.s8 {
  width: 66.66667%;
  margin-left: 0;
}

.row .col.s9 {
  width: 75%;
  margin-left: 0;
}

.row .col.s10 {
  width: 83.33333%;
  margin-left: 0;
}

.row .col.s11 {
  width: 91.66667%;
  margin-left: 0;
}

.row .col.s12 {
  width: 100%;
  margin-left: 0;
}

.row .col.offset-s1 {
  margin-left: 8.33333%;
}

.row .col.offset-s2 {
  margin-left: 16.66667%;
}

.row .col.offset-s3 {
  margin-left: 25%;
}

.row .col.offset-s4 {
  margin-left: 33.33333%;
}

.row .col.offset-s5 {
  margin-left: 41.66667%;
}

.row .col.offset-s6 {
  margin-left: 50%;
}

.row .col.offset-s7 {
  margin-left: 58.33333%;
}

.row .col.offset-s8 {
  margin-left: 66.66667%;
}

.row .col.offset-s9 {
  margin-left: 75%;
}

.row .col.offset-s10 {
  margin-left: 83.33333%;
}

.row .col.offset-s11 {
  margin-left: 91.66667%;
}

.row .col.offset-s12 {
  margin-left: 100%;
}

@media only screen and (min-width: 768px) {
  .row .col.m1 {
    width: 8.33333%;
    margin-left: 0;
  }
  .row .col.m2 {
    width: 16.66667%;
    margin-left: 0;
  }
  .row .col.m3 {
    width: 25%;
    margin-left: 0;
  }
  .row .col.m4 {
    width: 33.33333%;
    margin-left: 0;
  }
  .row .col.m5 {
    width: 41.66667%;
    margin-left: 0;
  }
  .row .col.m6 {
    width: 50%;
    margin-left: 0;
  }
  .row .col.m7 {
    width: 58.33333%;
    margin-left: 0;
  }
  .row .col.m8 {
    width: 66.66667%;
    margin-left: 0;
  }
  .row .col.m9 {
    width: 75%;
    margin-left: 0;
  }
  .row .col.m10 {
    width: 83.33333%;
    margin-left: 0;
  }
  .row .col.m11 {
    width: 91.66667%;
    margin-left: 0;
  }
  .row .col.m12 {
    width: 100%;
    margin-left: 0;
  }
  .row .col.offset-m1 {
    margin-left: 8.33333%;
  }
  .row .col.offset-m2 {
    margin-left: 16.66667%;
  }
  .row .col.offset-m3 {
    margin-left: 25%;
  }
  .row .col.offset-m4 {
    margin-left: 33.33333%;
  }
  .row .col.offset-m5 {
    margin-left: 41.66667%;
  }
  .row .col.offset-m6 {
    margin-left: 50%;
  }
  .row .col.offset-m7 {
    margin-left: 58.33333%;
  }
  .row .col.offset-m8 {
    margin-left: 66.66667%;
  }
  .row .col.offset-m9 {
    margin-left: 75%;
  }
  .row .col.offset-m10 {
    margin-left: 83.33333%;
  }
  .row .col.offset-m11 {
    margin-left: 91.66667%;
  }
  .row .col.offset-m12 {
    margin-left: 100%;
  }
}

@media only screen and (min-width: 993px) {
  .row .col.l1 {
    width: 8.33333%;
    margin-left: 0;
  }
  .row .col.l2 {
    width: 16.66667%;
    margin-left: 0;
  }
  .row .col.l3 {
    width: 25%;
    margin-left: 0;
  }
  .row .col.l4 {
    width: 33.33333%;
    margin-left: 0;
  }
  .row .col.l5 {
    width: 41.66667%;
    margin-left: 0;
  }
  .row .col.l6 {
    width: 50%;
    margin-left: 0;
  }
  .row .col.l7 {
    width: 58.33333%;
    margin-left: 0;
  }
  .row .col.l8 {
    width: 66.66667%;
    margin-left: 0;
  }
  .row .col.l9 {
    width: 75%;
    margin-left: 0;
  }
  .row .col.l10 {
    width: 83.33333%;
    margin-left: 0;
  }
  .row .col.l11 {
    width: 91.66667%;
    margin-left: 0;
  }
  .row .col.l12 {
    width: 100%;
    margin-left: 0;
  }
  .row .col.offset-l1 {
    margin-left: 8.33333%;
  }
  .row .col.offset-l2 {
    margin-left: 16.66667%;
  }
  .row .col.offset-l3 {
    margin-left: 25%;
  }
  .row .col.offset-l4 {
    margin-left: 33.33333%;
  }
  .row .col.offset-l5 {
    margin-left: 41.66667%;
  }
  .row .col.offset-l6 {
    margin-left: 50%;
  }
  .row .col.offset-l7 {
    margin-left: 58.33333%;
  }
  .row .col.offset-l8 {
    margin-left: 66.66667%;
  }
  .row .col.offset-l9 {
    margin-left: 75%;
  }
  .row .col.offset-l10 {
    margin-left: 83.33333%;
  }
  .row .col.offset-l11 {
    margin-left: 91.66667%;
  }
  .row .col.offset-l12 {
    margin-left: 100%;
  }
}

.menu-btn {
  z-index: 999;
  height: 35px;
  width: 35px;
  overflow: hidden;
  display: none;
  position: absolute;
  top: 70px;
  right: 20px;
}

.menu-btn .bar {
  display: block;
  position: absolute;
  width: 35px;
  height: 4px;
  background-color: #fff;
  transition: all 0.5s ease;
  left: 0;
  border-radius: 2px;
}

.menu-btn .bar.bar-1 {
  top: 5px;
}

.menu-btn .bar.bar-2 {
  top: 15px;
}

.menu-btn .bar.bar-3 {
  top: 25px;
}

body.open {
  overflow: hidden;
}

body.open .site-menu {
  transform: translateY(0%);
}

body.open .menu-btn .bar-2 {
  opacity: 0;
  left: -50px;
}

body.open .menu-btn .bar-1 {
  top: 15px;
  left: 0px;
  transform: rotate(45deg);
}

body.open .menu-btn .bar-3 {
  top: 15px;
  left: 0px;
  transform: rotate(-45deg);
}

@media (max-width: 576px) {
  .menu-btn {
    display: block;
  }
}

.animatable {
  /* initially hide animatable objects */
  visibility: hidden;
  /* initially pause animatable objects their animations */
  -webkit-animation-play-state: paused;
  -moz-animation-play-state: paused;
  -ms-animation-play-state: paused;
  -o-animation-play-state: paused;
  animation-play-state: paused;
}

/* show objects being animated */
.animated {
  visibility: visible;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1s;
  -moz-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-play-state: running;
  -moz-animation-play-state: running;
  -ms-animation-play-state: running;
  -o-animation-play-state: running;
  animation-play-state: running;
}

/* CSS Animations (extracted from http://glifo.uiparade.com/) */
@-webkit-keyframes scaleIn {
  0% {
    transform: scale(1.2);
    -webkit-transform: scale(1.2);
  }
  100% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}

@-moz-keyframes scaleIn {
  0% {
    transform: scale(1.2);
    -webkit-transform: scale(1.2);
  }
  100% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}

@-o-keyframes scaleIn {
  0% {
    transform: scale(1.2);
    -webkit-transform: scale(1.2);
  }
  100% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}

@keyframes scaleIn {
  0% {
    transform: scale(1.2);
    -webkit-transform: scale(1.2);
  }
  100% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}

@-webkit-keyframes bgUp {
  0% {
    background-position: center 45%;
  }
  100% {
    background-position: center 50%;
  }
}

@-moz-keyframes bgUp {
  0% {
    background-position: center 45%;
  }
  100% {
    background-position: center 50%;
  }
}

@-o-keyframes bgUp {
  0% {
    background-position: center 45%;
  }
  100% {
    background-position: center 50%;
  }
}

@keyframes bgUp {
  0% {
    background-position: center 45%;
  }
  100% {
    background-position: center 50%;
  }
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}

@-moz-keyframes fadeInDown {
  0% {
    opacity: 0;
    -moz-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
}

@-o-keyframes fadeInDown {
  0% {
    opacity: 0;
    -o-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-moz-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-o-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
  60% {
    -webkit-transform: translateX(20px);
  }
  80% {
    -webkit-transform: translateX(-5px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}

@-moz-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -moz-transform: translateX(-2000px);
  }
  60% {
    -moz-transform: translateX(20px);
  }
  80% {
    -moz-transform: translateX(-5px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
}

@-o-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateX(20px);
  }
  80% {
    -o-transform: translateX(-5px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}

@keyframes bounceInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  60% {
    transform: translateX(20px);
  }
  80% {
    transform: translateX(-5px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@-webkit-keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
  60% {
    -webkit-transform: translateX(-20px);
  }
  80% {
    -webkit-transform: translateX(5px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}

@-moz-keyframes bounceInRight {
  0% {
    opacity: 0;
    -moz-transform: translateX(2000px);
  }
  60% {
    -moz-transform: translateX(-20px);
  }
  80% {
    -moz-transform: translateX(5px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0);
  }
}

@-o-keyframes bounceInRight {
  0% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
  60% {
    -o-transform: translateX(-20px);
  }
  80% {
    -o-transform: translateX(5px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}

@keyframes bounceInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  60% {
    transform: translateX(-20px);
  }
  80% {
    transform: translateX(5px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}

@-moz-keyframes fadeInUp {
  0% {
    opacity: 0;
    -moz-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
}

@-o-keyframes fadeInUp {
  0% {
    opacity: 0;
    -o-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@-webkit-keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.3);
  }
  50% {
    -webkit-transform: scale(1.05);
  }
  70% {
    -webkit-transform: scale(0.9);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
  }
}

@-moz-keyframes bounceIn {
  0% {
    opacity: 0;
    -moz-transform: scale(0.3);
  }
  50% {
    -moz-transform: scale(1.05);
  }
  70% {
    -moz-transform: scale(0.9);
  }
  100% {
    opacity: 1;
    -moz-transform: scale(1);
  }
}

@-o-keyframes bounceIn {
  0% {
    opacity: 0;
    -o-transform: scale(0.3);
  }
  50% {
    -o-transform: scale(1.05);
  }
  70% {
    -o-transform: scale(0.9);
  }
  100% {
    opacity: 1;
    -o-transform: scale(1);
  }
}

@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    transform: scale(1.05);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@-webkit-keyframes moveUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}

@-moz-keyframes moveUp {
  0% {
    opacity: 1;
    -moz-transform: translateY(40px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
  }
}

@-o-keyframes moveUp {
  0% {
    opacity: 1;
    -o-transform: translateY(40px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}

@keyframes moveUp {
  0% {
    opacity: 1;
    transform: translateY(40px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@-webkit-keyframes fadeBgColor {
  0% {
    background: none;
  }
  70% {
    background: none;
  }
  100% {
    background: #464646;
  }
}

@-o-keyframes fadeBgColor {
  0% {
    background: none;
  }
  70% {
    background: none;
  }
  100% {
    background: #464646;
  }
}

@keyframes fadeBgColor {
  0% {
    background: none;
  }
  70% {
    background: none;
  }
  100% {
    background: #464646;
  }
}

.animated.animationDelay {
  animation-delay: .4s;
  -webkit-animation-delay: .4s;
}

.animated.animationDelayMed {
  animation-delay: 1.2s;
  -webkit-animation-delay: 1.2s;
}

.animated.animationDelayLong {
  animation-delay: 1.6s;
  -webkit-animation-delay: 1.6s;
}

.animated.bgUp {
  -webkit-animation-name: bgUp;
  -moz-animation-name: bgUp;
  -o-animation-name: bgUp;
  animation-name: bgUp;
}

.animated.scaleIn {
  -webkit-animation-name: scaleIn;
  -moz-animation-name: scaleIn;
  -o-animation-name: scaleIn;
  animation-name: scaleIn;
}

.animated.fadeBgColor {
  -webkit-animation-name: fadeBgColor;
  -moz-animation-name: fadeBgColor;
  -o-animation-name: fadeBgColor;
  animation-name: fadeBgColor;
}

.animated.bounceIn {
  -webkit-animation-name: bounceIn;
  -moz-animation-name: bounceIn;
  -o-animation-name: bounceIn;
  animation-name: bounceIn;
}

.animated.bounceInRight {
  -webkit-animation-name: bounceInRight;
  -moz-animation-name: bounceInRight;
  -o-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

.animated.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  -moz-animation-name: bounceInLeft;
  -o-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

.animated.fadeIn {
  -webkit-animation-name: fadeIn;
  -moz-animation-name: fadeIn;
  -o-animation-name: fadeIn;
  animation-name: fadeIn;
}

.animated.fadeInDown {
  -webkit-animation-name: fadeInDown;
  -moz-animation-name: fadeInDown;
  -o-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

.animated.fadeInUp {
  -webkit-animation-name: fadeInUp;
  -moz-animation-name: fadeInUp;
  -o-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

.animated.moveUp {
  -webkit-animation-name: moveUp;
  -moz-animation-name: moveUp;
  -o-animation-name: moveUp;
  animation-name: moveUp;
}

.font-sans {
  font-family: "Montserrat", sans-serif;
}

* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body, html {
  margin: 0;
  padding: 0;
  background: #fff;
  height: 100%;
  width: 100%;
}

body {
  font-family: "PT Serif", serif;
  font-size: 18px;
}

/*.site{
	padding-bottom:$hauteur_footer ;
}*/
h1, h2, h3 {
  font-family: "PT Serif", serif;
}

h1, h2, h3, h4 {
  margin: 0 0 1rem;
  padding: 0;
  font-weight: 700;
}

h1 {
  font-size: 3rem;
  line-height: 3.3rem;
}

h2 {
  font-size: 2.5rem;
  line-height: 2.8rem;
}

h3 {
  font-size: 2rem;
  line-height: 2.4rem;
}

h4 {
  font-size: 1.5rem;
  line-height: 2rem;
}

p {
  font-family: "PT Serif", serif;
  font-size: 1rem;
  line-height: 1.4em;
  margin-top: 0;
  font-weight: 400;
}

figure {
  margin: 0;
  padding: 0;
  display: block;
}

img {
  max-width: 100%;
  height: auto;
}

hr {
  display: block;
  border: none;
  margin: 3rem auto;
  width: 3rem;
  display: block;
  position: relative;
  height: 1px;
  background: #c7ab9d;
  z-index: 0;
}

iframe {
  border: none;
}

img {
  height: auto;
}

.text-right {
  text-align: right;
}

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

.padding-lr {
  padding: 0 1em 1em;
}

@media only screen and (min-width: 768px) {
  .padding-lr {
    padding: 0 2em 2em;
  }
}

.padding-tb {
  padding-top: 1em !important;
  padding-bottom: 1em !important;
}

@media only screen and (min-width: 768px) {
  .padding-tb {
    padding-top: 2em !important;
    padding-bottom: 2em !important;
  }
}

.margin-top-moins {
  margin-top: -200px;
  z-index: 99;
}

.s-hidden {
  display: none;
}

@media only screen and (min-width: 768px) {
  .s-hidden {
    display: block;
  }
}

.shadow {
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

.site-main {
  position: relative;
  z-index: 9;
}

.btn,
.wp-block-button__link {
  padding: 15px 20px;
  font-size: 1rem;
  font-weight: 700;
  border-radius: 10px;
  display: inline-block;
  vertical-align: middle;
  color: #333;
  text-decoration: none;
  margin: 0.5rem 0;
}

.btn.btn-big,
.wp-block-button__link.btn-big {
  font-size: 1rem;
  padding: 15px 20px;
  border-radius: 13px;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

.btn.btn-noir,
.wp-block-button__link.btn-noir {
  background: #333;
  color: #fff;
}

.btn.btn-blanc,
.wp-block-button__link.btn-blanc {
  background: #ffffff;
}

.btn.btn-marron,
.wp-block-button__link.btn-marron {
  background: #ca7c68;
  color: #fff;
}

.btn.btn-beige,
.wp-block-button__link.btn-beige {
  background: #c7ab9d;
  color: #fff;
}

.btn.btn-bleu,
.wp-block-button__link.btn-bleu {
  background: #21374F;
  color: #fff;
}

.btn.btn-bleu-clair,
.wp-block-button__link.btn-bleu-clair {
  background: #94a5af;
  color: #fff;
}

.noir, .has-noir-color {
  color: #333 !important;
}

.blanc, .has-blanc-color {
  color: #ffffff !important;
}

.marron, .has-marron-color {
  color: #ca7c68 !important;
}

.beige, .has-beige-color {
  color: #c7ab9d !important;
}

.bleu, .has-bleu-color {
  color: #21374F !important;
}

.bleu-clair, .has-bleu-clair-color {
  color: #94a5af !important;
}

.vert, .has-vert-color {
  color: #204929 !important;
}

.vert-clair, .has-vert-clair-color {
  color: #93ad95 !important;
}

.border-bleu {
  border: 1px solid #94a5af;
}

.bg-noir, .has-noir-background-color {
  background-color: #333 !important;
}

.bg-blanc, .has-blanc-background-color {
  background-color: #ffffff !important;
}

.bg-marron, .has-marron-background-color {
  background-color: #ca7c68 !important;
}

.bg-beige, .has-beige-background-color {
  background-color: #c7ab9d !important;
}

.bg-bleu, .has-bleu-background-color {
  background-color: #21374F !important;
}

.bg-bleu-clair, .has-bleu-clair-background-color {
  background-color: #94a5af !important;
}

.bg-vert, .has-vert-background-color {
  background-color: #204929 !important;
}

.bg-vert-clair, .has-vert-clair-background-color {
  background-color: #93ad95 !important;
}

.bg-motif-beige,
.bg-motif-blanc,
.bg-motif-marron,
.bg-motif-bleu {
  background-size: 25%;
}

.bg-motif-beige {
  background-image: url("../img/motif-point-beige.svg");
}

.bg-motif-blanc {
  background-image: url("../img/motif-point-blanc.svg");
}

.bg-motif-marron {
  background-image: url("../img/motif-point-marron.svg");
}

.bg-motif-bleu {
  background-image: url("../img/motif-point-bleu.svg");
}

.after-trait-beige,
.after-trait-marron,
.after-trait-blanc {
  margin-bottom: 30px;
}

.after-trait-beige:after,
.after-trait-marron:after,
.after-trait-blanc:after {
  content: '';
  display: block;
  width: 100%;
  height: 30px;
  position: absolute;
  background-color: transparent;
  bottom: -60px;
  left: 0;
  background-size: 900px;
  background-position: 0 30px;
}

.after-trait-blanc:after {
  background-image: url("../img/trait-blanc.svg");
}

.after-trait-beige:after {
  background-image: url("../img/trait-beige.svg");
}

.after-trait-marron:after {
  background-image: url("../img/trait-marron.svg");
}

.before-trait-blanc:before {
  content: '';
  display: block;
  width: 100%;
  height: 30px;
  position: absolute;
  background-color: transparent;
  top: 0;
  left: 0;
  background-image: url("../img/trait-blanc.svg");
  background-size: 900px;
  background-position: 0 30px;
}

.before-top-trait-blanc {
  position: relative;
  padding-top: 1em;
}

.before-top-trait-blanc:before {
  content: '';
  display: block;
  width: 100%;
  height: 30px;
  position: absolute;
  background-color: transparent;
  top: 0;
  left: 0;
  margin-top: -29px;
  background-image: url("../img/trait-blanc.svg");
  background-size: 900px;
  background-position: 0 -50px;
}

.img-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
}

.wp-block-separator {
  border: none;
}

.entry-content li {
  margin-bottom: 1em;
}

.site-header {
  background: #21374f;
  background: linear-gradient(0deg, rgba(33, 55, 79, 0) 0%, #21374f 100%);
  width: 100%;
  text-align: left;
  position: absolute;
  z-index: 888;
  padding: 1rem;
  display: flex;
}

.ico-instagram {
  width: 30px;
  height: 30px;
  padding: 0;
  background-image: url("../img/icone-instagram.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
  text-indent: 1000%;
  vertical-align: sub;
  position: relative;
  display: inline-block;
}

.ico-instagram a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

a.logo-colette {
  display: block;
  width: 120px;
  height: 120px;
  border: none;
  overflow: hidden;
  text-indent: 1000%;
  margin: 0;
  position: relative;
}

@media only screen and (min-width: 768px) {
  a.logo-colette {
    margin: 0 2rem 0 0;
  }
}

a.logo-colette .logo-colette-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/logo-maison-colette.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.site-header-content {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin: 1rem auto;
}

.open .main-navigation .menu {
  transform: translateX(0%);
}

.main-navigation ul, .main-navigation li {
  margin: 0;
  list-style: none;
  padding: 0;
}

.main-navigation li.current_page_item {
  border-bottom: 2px solid #fff;
}

.main-navigation .menu {
  display: flex;
  padding-top: 7rem;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #21374F;
  transition: .5s ease all;
  transform: translateX(-102%);
  background-image: url("../img/rond-point-bleu.svg");
  background-position: -90px 140%;
  background-repeat: no-repeat;
}

@media only screen and (min-width: 768px) {
  .main-navigation .menu {
    padding-top: 0rem;
    justify-content: flex-start;
    background-image: none;
    align-items: center;
    flex-direction: row;
    position: relative;
    top: 0;
    left: 0;
    height: auto;
    width: auto;
    background: transparent;
    transform: translateX(0);
  }
  .main-navigation .menu li {
    margin: 0 2vw;
    text-align: center;
  }
  .main-navigation .menu li a {
    font-size: 1rem;
  }
}

.main-navigation .instagram {
  width: 20px;
  height: 20px;
  padding: 0;
  background-image: url("../img/icone-instagram.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
  text-indent: 1000%;
  margin: 1rem;
  position: relative;
}

.main-navigation .instagram a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.main-navigation li {
  margin: 1rem;
}

.main-navigation li a {
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-size: 1.5rem;
  text-transform: uppercase;
  font-weight: 700;
  text-decoration: none;
  border: none;
}

.infoscontact {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 100%;
  transform: translateX(-50%);
  padding: 0.5rem;
  margin: 0 auto;
  background-color: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(5px);
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.infoscontact .infos-horaire {
  display: none;
}

.infoscontact .wp-block-image {
  margin: 0;
}

@media only screen and (min-width: 768px) {
  .infoscontact {
    bottom: 40px;
    border-radius: 10px;
    width: 730px;
  }
  .infoscontact .adresse {
    margin: 10px;
  }
  .infoscontact .adresse p {
    font-size: 0.9rem;
    line-height: 1.3rem;
  }
  .infoscontact .infos-horaire {
    display: block;
  }
}

.adresse {
  margin: 5px;
  font-size: 0.9rem;
}

.adresse img {
  height: 2rem;
  width: 2rem;
  margin: 0;
  padding: 0;
}

.adresse p {
  font-size: 0.7rem;
  color: #fff;
  line-height: 1rem;
  font-weight: 700;
  padding: 0;
  margin: 0;
  font-family: "Montserrat", sans-serif;
}

.adresse p a {
  text-decoration: none;
  color: #fff;
}

h1.entry-title {
  line-height: 1.2em;
  display: block;
  font-family: "PT Serif", serif;
  text-transform: uppercase;
  margin: 0 auto;
  position: relative;
  z-index: 5;
  color: #fff;
  font-size: 2em;
  position: relative;
}

@media only screen and (min-width: 768px) {
  h1.entry-title {
    font-size: 3em;
    max-width: 70%;
  }
}

h1.entry-title.titre-produit {
  font-family: "PT Serif", serif;
  color: #21374F;
  text-transform: initial;
  font-size: 2.5em;
}

h1.entry-title:before, h1.entry-title:after {
  content: '';
  display: block;
  height: 2px;
  width: 3rem;
  background-color: #fff;
  position: absolute;
}

h1.entry-title:before {
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
}

h1.entry-title:after {
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
}

.entry-title-parent {
  margin: 0;
}

.entry-title-parent a {
  color: #ca7c68;
  font-size: 0.8rem;
  font-family: "Montserrat", sans-serif;
  text-decoration: none;
}

a {
  text-decoration: none;
  color: initial;
}

ul.fil-ariane li {
  display: inline-block;
  font-size: 0.8em;
}

ul.fil-ariane li a {
  color: #94a5af;
}

ul.fil-ariane li::before {
  content: " › ";
}

ul.fil-ariane li:first-child::before {
  content: '';
}

.page-header {
  min-height: 300px;
  height: 100vh;
  max-height: 500px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 100px;
  position: relative;
  background-position: center;
  background-size: cover;
}

.diapo .slick-arrow {
  display: block;
}

.diapo ul.slick-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 90PX;
  left: 50%;
  transform: translateX(-50%);
  z-index: 99;
  background-color: rgba(255, 255, 255, 0.1);
  margin: 0 auto;
  padding: 10px;
  border-radius: 50px;
}

@media only screen and (min-width: 768px) {
  .diapo ul.slick-dots {
    bottom: 170px;
  }
}

.diapo ul.slick-dots li {
  list-style: none;
  text-indent: 0px;
  padding: 0;
}

.diapo ul.slick-dots li.slick-active button {
  background: #21374F;
  background: #fff;
  width: 20px;
  height: 20px;
  margin: 0px 2px;
}

.diapo ul.slick-dots button {
  display: block;
  transition: 0.3s ease-out all;
  padding: 0;
  height: 10px;
  width: 10px;
  border-radius: 50%;
  line-height: 0;
  text-indent: 999px;
  margin: 5px 8px;
  overflow: hidden;
  background: #94a5af;
  border: 0;
}

.diapo ul.slick-dots button:hover {
  background: #fff;
}

.header-home {
  min-height: 600px;
  position: relative;
}

.diapo-home {
  height: 100vh;
  min-height: 600px;
  background: #ccc;
  position: relative;
}

.diapo-home .slick-track {
  height: 100vh;
  min-height: 600px;
}

.diapo-home .diapo-item {
  background: #c7ab9d;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.diapo-home .diapo-item .diapo-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-size: cover;
  background-position: center;
}

.diapo-home .diapo-item .diapo-info {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 3rem;
  font-weight: 700;
  height: 80%;
  max-width: 60%;
  margin: 100px auto 0;
  text-align: center;
  z-index: 2;
  color: #fff;
  position: relative;
  font-size: 1em;
  opacity: 0;
  transition: 1s ease all;
  transform: translateY(20px) scale(1.1);
}

.diapo-home .diapo-item .diapo-info p {
  font-size: 0.8rem;
}

.diapo-home .diapo-item .diapo-info h3 {
  font-size: 1.1rem;
  line-height: 1.5rem;
}

.diapo-home .diapo-item .diapo-info h2 {
  font-size: 2.5rem;
  line-height: 1.1em;
}

@media only screen and (min-width: 768px) {
  .diapo-home .diapo-item .diapo-info p {
    font-size: 1.1rem;
  }
  .diapo-home .diapo-item .diapo-info h3 {
    font-size: 1.3rem;
  }
  .diapo-home .diapo-item .diapo-info h2 {
    font-size: 3rem;
    line-height: 1.2em;
  }
}

.diapo-home .slick-current .diapo-info {
  transform: translateY(0) scale(1);
  opacity: 1;
  letter-spacing: 0;
}

.fond-couleur {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  z-index: 2;
  opacity: 0.5;
}

.home-desc {
  position: relative;
  background: #c7ab9d;
  color: #fff;
  padding: 40px 10px 30px 10px;
  text-align: center;
  z-index: 2;
}

.home-desc h2 {
  font-size: 3.5rem;
  line-height: 1.1em;
}

.home-desc p {
  font-size: 1.2em;
  line-height: 1.7em;
}

.carte-france {
  position: absolute;
  width: 350px;
  z-index: 0;
  top: 13vh;
}

.home-intro {
  position: relative;
  margin-top: -30px;
  background: #fff;
  color: #ca7c68;
  padding: 15vh 0 10vh 0;
  background-image: url("../img/rond-point-marron.svg");
  background-repeat: no-repeat;
  background-position: 85vw 5%;
}

.home-intro h2 {
  font-size: 3.5rem;
  line-height: 1.1em;
  z-index: 2;
  position: relative;
}

.home-intro p {
  font-size: 1.2em;
  line-height: 1.7em;
  z-index: 2;
  position: relative;
}

.diapo-artisan {
  position: relative;
  height: 400px;
  width: 400px;
  overflow: hidden;
  border-radius: 50%;
}

.diapo-artisan .slick-track,
.diapo-artisan .diapo-artisans-item,
.diapo-artisan .slick-list {
  height: 400px;
}

.diapo-artisan .diapo-artisans-item {
  position: relative;
  width: 400px;
}

.diapo-artisans {
  background: red;
  width: 100%;
  position: relative;
}

.diapo-artisans .diapo-artisans-item {
  position: relative;
}

.home-artisans {
  position: relative;
  background: #ca7c68;
  padding: 10vh 0;
  color: #fff;
  background-image: url("../img/motif-point-beige.svg");
  background-size: 50%;
}

.home-artisans h2 {
  font-size: 3.5rem;
  line-height: 1.1em;
}

.home-artisans p {
  font-size: 1.2em;
  line-height: 1.7em;
}

.page-artisan-logo {
  position: relative;
  z-index: 9;
  background: #fff;
  overflow: hidden;
  padding: 1rem;
  border-radius: 1rem;
  width: 230px;
  margin-left: auto;
  margin-right: auto;
  margin: -230px auto 0 auto;
  display: block;
  box-shadow: 0 10px 20px rgba(51, 51, 51, 0.3);
}

.page-artisan-logo img {
  margin: 0 auto 1em auto;
  display: block;
}

.page-artisan-logo h1.nom {
  font-size: 1.2rem;
  color: #21374F;
  line-height: 1.2em;
  /*height:0; display: block; overflow: hidden;*/
}

.page-artisan-logo h3 {
  line-height: 1.2em;
  margin: 0;
}

.page-artisan-logo h3.metier {
  font-family: "Montserrat", sans-serif;
  color: #ca7c68;
  font-size: 1rem;
  margin-bottom: 1em;
}

.page-artisan-logo h3.location {
  color: #94a5af;
  font-weight: 400;
  font-size: 1rem;
}

@media only screen and (min-width: 768px) {
  .page-artisan-logo {
    width: 100%;
  }
}

.galerie .thumbnail {
  margin: 10px 0;
}

.galerie a {
  border: none;
}

.home-produit {
  margin-top: -30px;
  background: #fff;
  padding-top: 80px;
  padding-bottom: 20px;
}

.home-produit h2 {
  font-size: 3.5rem;
  line-height: 1.1em;
}

.home-produit p {
  font-size: 1.2em;
  line-height: 1.7em;
}

.case-home-produit-1-1,
.case-home-produit-2-1 {
  height: 25vw;
}

.case-home-produit-1-2 {
  height: 400px;
}

.case_produit_home {
  position: relative;
  height: 100%;
  background: red;
  width: 100%;
  display: block;
}

.case_produit_home .info {
  position: absolute;
  z-index: 2;
  bottom: 10px;
  left: 10px;
  max-width: 100%;
  font-size: 0.8rem;
  color: #21374F;
  display: flex;
  align-items: center;
  margin: 0;
}

.case_produit_home .info h3 {
  font-size: 1rem;
  margin: 0;
}

.case_produit_home .info h4 {
  font-size: 0.8rem;
  margin: 0;
}

.artisans-avatar-mini {
  display: inline-block;
  width: 40px;
  height: 40px;
  position: relative;
  overflow: hidden;
  border-radius: 50%;
  vertical-align: middle;
  margin-right: 10px;
}

.row.flex-center,
.row.flex-center .row {
  display: flex;
  height: 100%;
  justify-content: flex-start;
  align-items: center;
}

.site-footer {
  width: 100%;
  padding: 2rem;
  background: #21374F;
  color: #fff;
  z-index: -1;
  background-image: url("../img/rond-point-bleu.svg");
  background-size: 40%;
  background-position: -20% -30%;
  background-repeat: no-repeat;
}

.site-footer .infoscontact_footer {
  width: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  color: #fff;
}

.site-footer .infoscontact_footer p, .site-footer .infoscontact_footer a {
  color: #fff;
  text-decoration: none;
  border: none;
  font-size: 1.1rem;
}

@media only screen and (min-width: 768px) {
  .site-footer .infoscontact_footer {
    flex-direction: row;
  }
}

.site-footer .mention {
  text-align: center;
  color: #c7ab9d;
  font-family: "Montserrat", sans-serif;
  font-size: 0.8rem;
  padding: 3rem 1rem;
  margin-top: 2rem;
}

.site-footer .mention ul, .site-footer .mention li {
  margin: 0;
  padding: 0;
  text-indent: 0;
  list-style: none;
}

.site-footer .mention ul {
  display: flex;
  margin: 0 auto;
  justify-content: center;
  flex-direction: column;
}

@media only screen and (min-width: 768px) {
  .site-footer .mention ul {
    flex-direction: row;
  }
}

.site-footer .mention li {
  margin: 1rem;
}

.site-footer .mention a {
  color: #c7ab9d;
}

.instagram-flux {
  background: #c7ab9d;
  padding: 3rem 1rem;
  color: #fff;
}

.instagram-flux h3 {
  font-size: 1.5rem;
}

.liste-artisan {
  padding: 2em 0;
}

a.block-artisan {
  display: block;
  width: 100%;
  position: relative;
  margin: 15px auto 15px auto;
  height: 250px;
  overflow: hidden;
  border: none;
  padding: 0;
  border-radius: 10px;
}

a.block-artisan .block-artisan-content {
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
  text-decoration: none;
  color: #21374F;
  background: #fff;
  box-shadow: 0 10px 20px rgba(51, 51, 51, 0.5);
  z-index: 3;
  background-size: cover;
  background-position: center;
  position: relative;
}

a.block-artisan .artisan-info {
  position: absolute;
  top: 0;
  left: 0;
  width: 150px;
  height: 100%;
  padding: 1rem;
  background: #fff;
  z-index: 9;
}

a.block-artisan .artisan-info figure.artisan-img {
  height: 120px;
  width: 120px;
  position: relative;
  margin: 0 0 10px 0;
  padding: 0;
  overflow: hidden;
}

a.block-artisan .artisan-info figure.artisan-img img {
  object-fit: contain;
  object-position: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: 0.5s ease all;
}

a.block-artisan .artisan-info h2.nom {
  font-size: 0.9rem;
  line-height: 1.2em;
  margin-bottom: 0.5em;
}

a.block-artisan .artisan-info h3.metier {
  font-size: 0.7rem;
  line-height: 1.1em;
  margin-bottom: 0.5em;
  color: #ca7c68;
  font-family: "Montserrat", sans-serif;
}

a.block-artisan .artisan-info h3.location {
  font-size: 0.7rem;
  font-weight: 400;
  line-height: 1.1em;
  margin: 0;
  color: #94a5af;
  font-family: "Montserrat", sans-serif;
}

@media only screen and (min-width: 768px) {
  .block-artisan a:hover figure.artisan-img img {
    transform: scale(1.05);
  }
  .block-artisan figure.artisan-img {
    height: 200px;
  }
  .block-artisan .artisan-info .nom {
    font-size: 1.2rem;
  }
  .block-artisan .artisan-info figure.artisan-photo {
    display: block;
    height: 50px;
    width: 50px;
  }
}

ul.filtre-liste {
  display: flex;
  margin: 0 auto;
  padding: 10px 0;
  justify-content: center;
}

ul.filtre-liste li {
  list-style: none;
  padding: 0;
  margin: 0 10px;
}

ul.filtre-liste li a {
  border: 2px solid #ca7c68;
  background-color: #fff;
  border-radius: 10px;
  padding: 8px 10px;
  font-weight: 700;
  font-size: 0.8em;
  color: #ca7c68;
  font-family: "Montserrat", sans-serif;
}

ul.filtre-liste .current {
  opacity: 0.5;
  background-color: none;
}

.couverture {
  height: 500px;
  margin-top: -300px;
  background-color: #94a5af;
  background-size: cover;
  background-position: center;
}

.break {
  display: block;
  height: 200px;
  background-color: #94a5af;
  background-size: cover;
  background-position: center;
}

.artisan-selection {
  background: #fff;
}

.block-produit a {
  color: #21374F;
  text-decoration: none;
}

.block-produit .produit-info {
  padding: 1rem 0;
}

.block-produit .produit-info h2.nom {
  font-size: 1rem;
  line-height: 1.2em;
  margin-bottom: 0.3em;
}

.block-produit .produit-info h3.technique {
  font-size: 0.7rem;
  line-height: 1.1em;
  margin-bottom: 0.5em;
  color: #ca7c68;
  font-family: "Montserrat", sans-serif;
}

.block-produit .produit-info h3.artisan {
  font-size: 0.7rem;
  line-height: 1.1em;
  margin-bottom: 0.5em;
  color: #94a5af;
}

.block-produit figure.produit-img {
  height: 45vw;
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.block-produit figure.produit-img img {
  object-fit: cover;
  object-position: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: 0.5s ease all;
}

@media only screen and (min-width: 768px) {
  .block-produit a:hover figure.produit-img img {
    transform: scale(1.05);
  }
  .block-produit figure.produit-img {
    height: 22vw;
  }
  .block-produit .produit-info .nom {
    font-size: 1.2rem;
  }
  .block-produit .produit-info figure.produit-photo {
    display: block;
    height: 50px;
    width: 50px;
  }
}

.block-artisan.mini {
  max-width: 100%;
}

.block-artisan.mini figure.artisan-img {
  display: none;
}

.block-artisan.mini .artisan-info figure.artisan-photo {
  display: block;
  height: 50px;
  width: 50px;
}

.produit-contact {
  padding: 1rem;
  border-radius: 10px;
}

.produit-contact .btn {
  margin-bottom: 0;
}

.menu-liste {
  padding: 0 2em;
  font-size: 1.2em;
}

.menu-liste ul, .menu-liste li {
  margin-left: 0;
  padding-left: 0;
  list-style: none;
}

.menu-liste ul li a {
  font-family: "Montserrat", sans-serif;
  color: #ca7c68;
  font-size: 0.8rem;
  font-weight: 700;
  text-decoration: none;
  border: none;
}

.menu-liste ul.children {
  margin-bottom: 2em;
}

.menu-liste ul.children li {
  line-height: 1.6em;
}

.menu-liste ul.children li a {
  color: #21374F;
  text-decoration: none;
  font-family: "PT Serif", serif;
  font-size: 1.2rem;
}

.menu-liste .current-cat a {
  border-bottom: 1px solid #21374F;
}

.menu-liste .current-cat .children a {
  border: none;
}
