@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Georama:wght@300;400;700;800&display=swap");
/* COULEURS GLOBALES */
/* BACKGROUNDS */
/* PROVISOIRE */
.bot25 {
  margin-bottom: 25px;
}

.bot50 {
  margin-bottom: 50px;
}

.bot100 {
  margin-bottom: 100px;
}

.bot200 {
  margin-bottom: 200px;
}

.top25 {
  margin-top: 25px;
}

.top50 {
  margin-top: 50px;
}

.top100 {
  margin-top: 100px;
}

.top200 {
  margin-top: 200px;
}

.padtop25 {
  padding-top: 25px;
}

.padtop50 {
  padding-top: 50px;
}

.padtop100 {
  padding-top: 100px;
}

.padbot25 {
  padding-bottom: 25px;
}

.padbot50 {
  padding-bottom: 50px;
}

.padbot100 {
  padding-bottom: 100px;
}

.invisible {
  display: none;
}

.fontsize20 {
  font-size: 20px !important;
}

/**************EFFET DE MOUVEMENT**************/
/* Bouton battements */
@-webkit-keyframes btn_battements {
  to {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}

@keyframes btn_battements {
  to {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}

.btn_battements a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  background-color: #fff;
  padding: 5px 10px;
  margin: 10px;
}

.btn_battements a:hover, .btn_battements a:focus, .btn_battements a:active {
  -webkit-animation-name: btn_battements;
  animation-name: btn_battements;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
  background-color: #d70029;
}

/* Bouton push */
@-webkit-keyframes btn_push {
  50% {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes btn_push {
  50% {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.btn_push a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  background-color: #fff;
  padding: 5px 10px;
  margin: 10px;
}

.btn_push a:hover, .btn_push a:focus, .btn_push a:active {
  -webkit-animation-name: btn_push;
  animation-name: btn_push;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  background-color: #d70029;
}

/* Bouton pop */
@-webkit-keyframes btn_pop {
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}

@keyframes btn_pop {
  50% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}

.btn_pop a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  background-color: #fff;
  padding: 5px 10px;
  margin: 10px;
}

.btn_pop a:hover, .btn_pop a:focus, .btn_pop a:active {
  -webkit-animation-name: btn_pop;
  animation-name: btn_pop;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  background-color: #d70029;
}

/* Bouton rebond */
.btn_rebond a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  background-color: #fff;
  padding: 5px 10px;
  margin: 10px;
}

.btn_rebond a:hover, .btn_rebond a:focus, .btn_rebond a:active {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
  background-color: #d70029;
}

/* Bouton élévation */
.btn_elevation a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  background-color: #fff;
  padding: 5px 10px;
  margin: 10px;
}

.btn_elevation a:hover, .btn_elevation a:focus, .btn_elevation a:active {
  -webkit-transform: translateY(-8px);
  transform: translateY(-8px);
  background-color: #d70029;
}

/* Bouton flottement */
@-webkit-keyframes btn_flottement {
  0% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
  50% {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px);
  }
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}

@keyframes btn_flottement {
  0% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
  50% {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px);
  }
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}

@-webkit-keyframes btn_flottement-float {
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}

@keyframes btn_flottement-float {
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}

.btn_flottement a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  background-color: #fff;
  padding: 5px 10px;
  margin: 10px;
}

.btn_flottement a:hover, .btn_flottement a:focus, .btn_flottement a:active {
  -webkit-animation-name: btn_flottement-float, btn_flottement;
  animation-name: btn_flottement-float, btn_flottement;
  -webkit-animation-duration: .3s, 1.5s;
  animation-duration: .3s, 1.5s;
  -webkit-animation-delay: 0s, .3s;
  animation-delay: 0s, .3s;
  -webkit-animation-timing-function: ease-out, ease-in-out;
  animation-timing-function: ease-out, ease-in-out;
  -webkit-animation-iteration-count: 1, infinite;
  animation-iteration-count: 1, infinite;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-direction: normal, alternate;
  animation-direction: normal, alternate;
  background-color: #d70029;
}

/* Bouton wizz */
@-webkit-keyframes btn_wizz {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  60% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  90% {
    -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0);
  }
  100% {
    -webkit-transform: translateX(-1px) rotate(0);
    transform: translateX(-1px) rotate(0);
  }
}

@keyframes btn_wizz {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  60% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  90% {
    -webkit-transform: translateX(1px) rotate(0);
    transform: translateX(1px) rotate(0);
  }
  100% {
    -webkit-transform: translateX(-1px) rotate(0);
    transform: translateX(-1px) rotate(0);
  }
}

.btn_wizz a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  background-color: #fff;
  padding: 5px 10px;
  margin: 10px;
}

.btn_wizz a:hover, .btn_wizz a:focus, .btn_wizz a:active {
  -webkit-animation-name: btn_wizz;
  animation-name: btn_wizz;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  background-color: #d70029;
}

/**************EFFET DE REMPLISSAGE**************/
/* Bouton remplissage*/
.btn_rempli a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  background-color: #fff;
  padding: 5px 10px;
  margin: 10px;
}

.btn_rempli a:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: auto;
  background: #d70029;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: center;
  transform-origin: center;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.btn_rempli a:hover, .btn_rempli a:focus, .btn_rempli a:active {
  color: #fff;
}

.btn_rempli a:hover:before, .btn_rempli a:focus:before, .btn_rempli a:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

/**************EFFET DIVERS**************/
/* Ripple Out */
@-webkit-keyframes hvr-ripple-out {
  100% {
    top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0;
  }
}

@keyframes hvr-ripple-out {
  100% {
    top: -12px;
    right: -12px;
    bottom: -12px;
    left: -12px;
    opacity: 0;
  }
}

.hvr-ripple-out a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  background-color: #fff;
  padding: 5px 10px;
  margin: 10px;
}

.hvr-ripple-out a:before {
  content: '';
  position: absolute;
  border: #fff solid 6px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
}

.hvr-ripple-out a:hover:before, .hvr-ripple-out a:focus:before, .hvr-ripple-out a:active:before {
  -webkit-animation-name: hvr-ripple-out;
  animation-name: hvr-ripple-out;
}

/* Ripple In */
@-webkit-keyframes hvr-ripple-in {
  100% {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
  }
}

@keyframes hvr-ripple-in {
  100% {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1;
  }
}

.hvr-ripple-in a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  background-color: #fff;
  padding: 5px 10px;
  margin: 10px;
}

.hvr-ripple-in a:before {
  content: '';
  position: absolute;
  border: #fff solid 4px;
  top: -12px;
  right: -12px;
  bottom: -12px;
  left: -12px;
  opacity: 0;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
}

.hvr-ripple-in a:hover::before, .hvr-ripple-in a:focus::before, .hvr-ripple-in a:active::before {
  -webkit-animation-name: hvr-ripple-in;
  animation-name: hvr-ripple-in;
}

/* Bouton élévation ombré */
.btn_elevation_ombre a {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0);
          box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  background-color: #fff;
  padding: 5px 10px;
  margin: 10px;
}

.btn_elevation_ombre a:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  top: 100%;
  left: 5%;
  height: 10px;
  width: 90%;
  opacity: 0;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  /* W3C */
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform, opacity;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
}

.btn_elevation_ombre a:hover, .btn_elevation_ombre a:focus, .btn_elevation_ombre a:active {
  -webkit-transform: translateY(-5px);
  transform: translateY(-5px);
  /* move the element up by 5px */
}

.btn_elevation_ombre a:hover:before, .btn_elevation_ombre a:focus:before, .btn_elevation_ombre a:active:before {
  opacity: 1;
  -webkit-transform: translateY(5px);
  transform: translateY(5px);
  /* move the element down by 5px (it will stay in place because it's attached to the element that also moves up 5px) */
}

/**************EFFET SUR DES ICONES**************/
/* Bouton avec icône rebondissant vers le bas */
@-webkit-keyframes btn_ic_rebond_b {
  0%,
  50%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  25%,
  75% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}

@keyframes btn_ic_rebond_b {
  0%,
  50%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  25%,
  75% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}

.btn_ic_rebond_b a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  background-color: #fff;
  padding: 5px 35px 5px 10px;
  margin: 10px;
}

.btn_ic_rebond_b a:before {
  content: "\f01a";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: "FontAwesome";
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

.btn_ic_rebond_b a:hover::before, .btn_ic_rebond_b a:focus::before, .btn_ic_rebond_b a:active::before {
  -webkit-animation-name: btn_ic_rebond_b;
  animation-name: btn_ic_rebond_b;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/* Bouton avec icône rebondissant vers le haut */
@-webkit-keyframes btn_ic_rebond_h {
  0%,
  50%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  25%,
  75% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

@keyframes btn_ic_rebond_h {
  0%,
  50%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  25%,
  75% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

.btn_ic_rebond_h a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  background-color: #fff;
  padding: 5px 35px 5px 10px;
  margin: 10px;
}

.btn_ic_rebond_h a:before {
  content: "\f01b";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: "FontAwesome";
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

.btn_ic_rebond_h a:hover:before, .btn_ic_rebond_h a:focus:before, .btn_ic_rebond_h a:active:before {
  -webkit-animation-name: btn_ic_rebond_h;
  animation-name: btn_ic_rebond_h;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

/* Bouton avec icône tournant */
.btn_ic_tourne a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  background-color: #fff;
  padding: 5px 35px 5px 10px;
  margin: 10px;
}

.btn_ic_tourne a:before {
  content: "\f021";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: "FontAwesome";
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: ease-in-out;
  transition-timing-function: ease-in-out;
}

.btn_ic_tourne a:hover:before, .btn_ic_tourne a:focus:before, .btn_ic_tourne a:active:before {
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
}

/* Bouton avec icône zoom */
.btn_ic_zoom a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  background-color: #fff;
  padding: 5px 35px 5px 10px;
  margin: 10px;
}

.btn_ic_zoom a:before {
  content: "\f118";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: "FontAwesome";
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.btn_ic_zoom a:hover:before, .btn_ic_zoom a:focus:before, .btn_ic_zoom a:active:before {
  -webkit-transform: scale(1.3) translateZ(0);
  transform: scale(1.3) translateZ(0);
}

/* Bouton avec icône battement */
@-webkit-keyframes btn_ic_battement {
  to {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
}

@keyframes btn_ic_battement {
  to {
    -webkit-transform: scale(1.3);
    transform: scale(1.3);
  }
}

.btn_ic_battement a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  background-color: #fff;
  padding: 5px 35px 5px 10px;
  margin: 10px;
}

.btn_ic_battement a:before {
  content: "\f015";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: "FontAwesome";
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.btn_ic_battement a:hover:before, .btn_ic_battement a:focus:before, .btn_ic_battement a:active:before {
  -webkit-animation-name: btn_ic_battement;
  animation-name: btn_ic_battement;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

/* Bouton avec icône push */
@-webkit-keyframes btn_ic_push {
  50% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
  }
}

@keyframes btn_ic_push {
  50% {
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
  }
}

.btn_ic_push a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  background-color: #fff;
  padding: 5px 35px 5px 10px;
  margin: 10px;
}

.btn_ic_push a:before {
  content: "\f006";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: "FontAwesome";
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

.btn_ic_push a:hover:before, .btn_ic_push a:focus:before, .btn_ic_push a:active:before {
  -webkit-animation-name: btn_ic_push;
  animation-name: btn_ic_push;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* Bouton avec icône flottant */
@-webkit-keyframes btn_ic_flottant {
  0% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  50% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

@keyframes btn_ic_flottant {
  0% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  50% {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px);
  }
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

@-webkit-keyframes btn_ic_flottant-float {
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

@keyframes btn_ic_flottant-float {
  100% {
    -webkit-transform: translateY(-6px);
    transform: translateY(-6px);
  }
}

.btn_ic_flottant a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  background-color: #fff;
  padding: 5px 35px 5px 10px;
  margin: 10px;
}

.btn_ic_flottant a:before {
  content: "\f077";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: "FontAwesome";
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

.btn_ic_flottant a:hover:before, .btn_ic_flottant a:focus:before, .btn_ic_flottant a:active:before {
  -webkit-animation-name: btn_ic_flottant-float, btn_ic_flottant;
  animation-name: btn_ic_flottant-float, btn_ic_flottant;
  -webkit-animation-duration: .3s, 1.5s;
  animation-duration: .3s, 1.5s;
  -webkit-animation-delay: 0s, .3s;
  animation-delay: 0s, .3s;
  -webkit-animation-timing-function: ease-out, ease-in-out;
  animation-timing-function: ease-out, ease-in-out;
  -webkit-animation-iteration-count: 1, infinite;
  animation-iteration-count: 1, infinite;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-direction: normal, alternate;
  animation-direction: normal, alternate;
}

/**************ACTUS**************/
/**************MENUS**************/
/* NAVIGATION 1 - classique*/
/*#header {

    .mod_navigation {

        font-size: 13px;

        font-weight: 700;

        text-transform: uppercase;

        width: 100%;



        ul {

            display: flex;

            justify-content: flex-end;

            margin-bottom:0px;

            align-items: center;



            li.active,

            li.forward {

                padding: 10px 0px;

            }



            li {

                margin-left: 20px;

                a {

                    color: $noir;

                    padding: 10px 0px;

                    display: block;



                    &:hover {

                        color: $couleur2;

                    }

                }



                strong.active {

                    border-bottom: 6px solid $marron;

                    padding-bottom: 5px;

                    color: $marron;

                }



                .level_2 {

                    display: none;

                    position: absolute;

                    z-index: 99;



                    li {

                        width: 250px;

                        margin-left: 0px;



                        a {

                            background-color: $couleur2;

                            text-transform: none;

                            padding: 8px 10px 10px 10px;

    

                            &:hover {

                                background-color: $couleur1;

                                color: $blanc;

                            }

                        }

                    }



                    .active {

                        border: 0px;

                        background-color: $couleur1;

                        padding: 8px 10px 10px 10px;

                    }



                    strong {

                        padding: 0px !important;

                    }

                }



                &:hover {

                    color: $noir;



                    .level_2 {

                        display: block;

                    }

                }

            }

        }

    }



    .mm-menu {

        .level_1>.first {

            margin-left: 0 !important;

        }



        ul {

            text-align: left !important;



            li {

                float: inherit !important;



                a {

                    text-align: left !important;

                }



                ul {

                    position: relative !important;

                    width: 100% !important;



                    li {

                        border-bottom: inherit !important;



                        a {

                            background-color: transparent !important;

                        }

                    }

                }

            }

        }

    }

}*/
/* NAVIGATION 2 - animation passage bloc de couleur, puis affiche une ligne sous la a*/
/*#header {

    .mod_navigation {

        font-size: 13px;

        font-weight: 700;

        text-transform: uppercase;

        width: 100%;



        ul {

            display: flex;

            justify-content: flex-end;

            margin-bottom:0px;

            align-items: center;



            li.active,

            li.forward {

                padding: 10px 0px;

            }



            li {

                margin-left: 20px;

                a {

                    color: $noir;

                    padding: 10px 0px;

                    display: block;

                    transition: all .2s;

                    overflow: hidden;

                    position: relative;



                    &:hover {

                        color: $couleur2;



                        &::before {

                            left: 100%;

                        }



                        &::after {

                            left: 0%;

                        }

                    }



                    &::before {

                        content: "";

                        position: absolute;

                        top: 0;

                        left: -100%;

                        width: 100%;

                        height: 100%;

                        background: $couleur1;

                        transition: all .4s cubic-bezier(0.7, 0, 0.3, 1);

                      }



                      &::after {

                        content: "";

                        position: absolute;

                        z-index: 0;

                        top: 100%;

                        margin-top: -6px;

                        left: 100%;

                        width: 100%;

                        height: 6px;

                        background: $couleur1;

                        transition: all .3s;

                        transition-delay: .4s;

                      }

                }



                strong.active, strong.submenu {

                    border-bottom: 6px solid $marron;

                    padding-bottom: 5px;

                    color: $marron;

                }



                .level_2 {

                    display: none;

                    position: absolute;

                    z-index: 99;



                    li {

                        width: 250px;

                        margin-left: 0px;



                        a {

                            background-color: $couleur2;

                            text-transform: none;

                            padding: 8px 10px 10px 10px;



                            &::before, &::after{

                                display: none;

                            }

    

                            &:hover {

                                background-color: $couleur1;

                                color: $blanc;

                            }

                        }

                    }



                    .active {

                        border: 0px;

                        background-color: $couleur1;

                        padding: 8px 10px 10px 10px;

                    }



                    strong {

                        padding: 0px !important;

                    }

                }



                &:hover {

                    color: $noir;



                    .level_2 {

                        display: block;

                    }

                }

            }

        }

    }



    .mm-menu {

        .level_1>.first {

            margin-left: 0 !important;

        }



        ul {

            text-align: left !important;



            li {

                float: inherit !important;



                a {

                    text-align: left !important;

                }



                ul {

                    position: relative !important;

                    width: 100% !important;



                    li {

                        border-bottom: inherit !important;



                        a {

                            background-color: transparent !important;

                        }

                    }

                }

            }

        }

    }

}*/
/*NAVIGATION 3 - animation ligne qui s'étire sous le a*/
#header .mod_navigation {
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  width: 100%;
}

#header .mod_navigation ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-bottom: 0px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#header .mod_navigation ul li.active,
#header .mod_navigation ul li.forward {
  padding: 10px 0px;
}

#header .mod_navigation ul li {
  margin-left: 20px;
}

#header .mod_navigation ul li a {
  color: #15141a;
  display: block;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  position: relative;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  padding: 10px 0px;
}

#header .mod_navigation ul li a::after {
  position: absolute;
  content: "";
  bottom: 0px;
  left: 0;
  width: 100%;
  height: 6px;
  background: #d70029;
  transform: scaleX(0);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

#header .mod_navigation ul li a:hover {
  color: #d70029;
}

#header .mod_navigation ul li a:hover::after {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
  transition-timing-function: cubic-bezier(0.52, 1.64, 0.37, 0.66);
}

#header .mod_navigation ul li strong.active {
  border-bottom: 6px solid #50452f;
  padding-bottom: 5px;
  color: #50452f;
}

#header .mod_navigation ul li .level_2 {
  display: none;
  position: absolute;
  z-index: 99;
}

#header .mod_navigation ul li .level_2 li {
  width: 250px;
  margin-left: 0px;
}

#header .mod_navigation ul li .level_2 li a {
  background-color: #a0001f;
  text-transform: none;
  padding: 8px 10px 10px 10px;
}

#header .mod_navigation ul li .level_2 li a:hover {
  background-color: #d70029;
  color: #fff;
}

#header .mod_navigation ul li .level_2 li a::after {
  display: none;
}

#header .mod_navigation ul li .level_2 .active {
  border: 0px;
  background-color: #d70029;
  padding: 8px 10px 10px 10px;
}

#header .mod_navigation ul li .level_2 strong {
  padding: 0px !important;
}

#header .mod_navigation ul li:hover {
  color: #15141a;
}

#header .mod_navigation ul li:hover .level_2 {
  display: block;
}

#header .mm-menu .level_1 > .first {
  margin-left: 0 !important;
}

#header .mm-menu ul {
  text-align: left !important;
}

#header .mm-menu ul li {
  float: inherit !important;
}

#header .mm-menu ul li a {
  text-align: left !important;
}

#header .mm-menu ul li ul {
  position: relative !important;
  width: 100% !important;
}

#header .mm-menu ul li ul li {
  border-bottom: inherit !important;
}

#header .mm-menu ul li ul li a {
  background-color: transparent !important;
}

/**************AGENDA**************/
.mod_calendar {
  padding-left: 10px;
}

.mod_calendar .calendar {
  width: 100%;
}

.mod_calendar .calendar .event {
  display: none;
}

.mod_calendar .calendar thead th.label {
  background-color: #d70029;
}

.mod_calendar .calendar th,
.mod_calendar .calendar td {
  padding: 5px;
  text-align: center !important;
  width: 50px;
  border: 1px #15141a solid;
}

.mod_calendar .calendar th.label {
  background-color: #a0001f;
  color: #fff;
}

.mod_calendar .calendar th.label span {
  display: none;
}

.mod_calendar .calendar .head {
  text-transform: uppercase;
  color: #d70029;
  font-size: 17px;
  background-color: inherit;
  border: 0px;
}

.mod_calendar .calendar .previous,
.mod_calendar .calendar .next {
  font-size: 12px;
}

.mod_calendar .calendar .active {
  background-color: #b8c934;
  color: #fff;
}

.mod_calendar .calendar .active:hover .evenements_agenda {
  display: inline-block;
  position: absolute;
  max-width: 150px;
  background-color: #d70029;
  padding: 0px 10px;
}

.mod_calendar .calendar .active:hover .evenements_agenda .event {
  display: inline-block;
  padding: 10px 0px;
}

.mod_calendar .calendar .active:hover .evenements_agenda a {
  color: #fff;
  font-weight: 400;
}

/**************Temoignages**************/
/* GENERAL */
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body {
  background: url("/files/tabularasa/images/design/fond-top.jpg") right top no-repeat, #f2f2f2;
  font: 15px/21px "Georama", sans-serif;
  color: #15141a;
}

a {
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
}

a:link, a:visited {
  color: #15141a;
  text-decoration: none;
}

a:hover {
  color: #d70029;
}

a.bt1 {
  -webkit-transition-property: all;
  -webkit-transition-duration: "1s";
  -moz-transition-property: all;
  -moz-transition-duration: "1s";
  transition-property: all;
  transition-duration: "1s";
  background: #d70029;
  color: #fff;
  padding: 5px 10px;
  display: inline-block;
  border-radius: 25px;
}

a.bt1.newItem::after {
  content: '\f067';
  font-family: "FontAwesome";
  margin-left: 15px;
}

a.bt1:hover {
  background: #a0001f;
  color: #fff;
}

/*TITRES*/
h1 {
  text-align: center;
  font-size: 35px;
  line-height: 55px;
  color: #d70029;
  text-transform: uppercase;
  font-weight: 900;
}

h1 strong {
  font-size: 39px;
}

h2 {
  font-size: 19px;
  text-align: left;
  line-height: 25px;
  margin-top: 18px;
  margin-bottom: 18px;
  color: #d70029;
}

h3 {
  font-weight: 400;
  margin-bottom: 9px;
  font-size: 20px;
  margin-top: 26px;
  color: #dcdcdc;
}

.h3-annonces-autour {
  width: 100%;
}

/*h2{ //Effet de titre avec ligne de couleur chevauchant le texte (cf Tabula rasa)

	color: $blanc;



	strong	{

		text-decoration: none;

		background-image: linear-gradient(180deg, $vert, $vert);

		background-repeat: no-repeat;

		background-position-x: 0;

		background-position-y: calc(100% - 4px);

		background-size: 100% 0.25em;

		color: $blanc;

	}



}*/
.image_container a {
  margin: 0;
  padding: 0;
}

/****BTN TELECHARGEMENTS*/
@-webkit-keyframes btn_ic_rebond_b {
  0%,
  50%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  25%,
  75% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}

@keyframes btn_ic_rebond_b {
  0%,
  50%,
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  25%,
  75% {
    -webkit-transform: translateY(6px);
    transform: translateY(6px);
  }
}

.bt_dll a {
  display: inline-block;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  background-color: #fff;
  padding: 5px 35px 5px 10px;
  margin-bottom: 10px;
}

.bt_dll a:before {
  content: "\f01a";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: "FontAwesome";
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

.bt_dll a:hover::before, .bt_dll a:focus::before, .bt_dll a:active::before {
  -webkit-animation-name: btn_ic_rebond_b;
  animation-name: btn_ic_rebond_b;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

.bt_dll_multiple ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.bt_dll_multiple ul li {
  margin-right: 12px;
}

/*Facebook menu*/
li.facebook_nav a {
  background: url("/files/tabularasa/images/design/ic_facebook.png") no-repeat;
  background-size: contain;
  width: 30px;
  height: 30px;
  text-indent: -30000px;
  position: relative;
}

li.facebook_nav a::before, li.facebook_nav a::after {
  display: none;
}

/* HEADER */
#header {
  background-color: transparent;
  width: 100%;
}

#header .inside {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#slide {
  background: url("/files/tabularasa/images/design/slide.jpg") center center no-repeat;
  background-size: cover;
  height: 500px;
  width: 100%;
  /*Flèche de navigation, à réactiver dans le module de slide pour l'afficher*/
}

#slide::after {
  content: "";
  background-color: #50452f;
  display: block;
  width: 100%;
  height: 10px;
}

#slide .vb-video-holder {
  margin-bottom: -10px;
}

#slide .vb-video-holder video {
  width: 100% !important;
  height: auto !important;
}

#slide .rsts-skin-default .rsts-nav {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  display: block;
}

#slide .rsts-progress {
  bottom: 0px;
  background-color: #fff;
  top: initial;
  opacity: 0.6;
  height: 5px;
}

#slide .rsts-progress div {
  background-color: #15141a;
}

#slide .rsts-nav-prev,
#slide .rsts-nav-next {
  position: absolute;
  display: block;
  top: 170px;
}

#slide .rsts-nav-prev a,
#slide .rsts-nav-next a {
  width: 50px;
  height: 50px;
  background: #50452f;
  border-radius: 0px;
  color: #b8c934;
  text-indent: 0;
  line-height: 50px;
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
}

#slide .rsts-nav-prev a:before,
#slide .rsts-nav-next a:before {
  content: "\f053";
  font-family: "FontAwesome";
  text-indent: 0;
  color: #fff;
  padding: 0px 20px;
}

#slide .rsts-nav-prev a:hover,
#slide .rsts-nav-next a:hover {
  background-color: #b8c934;
  -webkit-box-shadow: inherit;
          box-shadow: inherit;
}

#slide .rsts-nav-prev {
  left: 25px;
}

#slide .rsts-nav-next {
  right: 25px;
}

#slide .rsts-nav-next a:before {
  content: "\f054";
}

#slide h1 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

/*PUCE SLIDE*/
.rsts-skin-default .rsts-nav {
  text-align: center !important;
  position: initial !important;
}

.rsts-skin-default .rsts-nav-bullets a {
  -webkit-box-shadow: inherit !important;
          box-shadow: inherit !important;
  background-color: #b8c934;
}

.rsts-skin-default .rsts-nav-bullets a:hover {
  background-color: #15141a;
}

.rsts-skin-default .rsts-nav-bullets a.active {
  background-color: #50452f;
}

/*FLECHE SLIDE*/
.mod_rocksolid_slider .rsts-view .rsts-prev,
.mod_rocksolid_slider .rsts-view .rsts-next {
  -webkit-box-shadow: inherit !important;
          box-shadow: inherit !important;
  border: 0px;
  border-radius: 0px;
}

.mod_rocksolid_slider .rsts-view .rsts-next {
  right: 0px;
}

.mod_rocksolid_slider .rsts-view .rsts-prev {
  left: 0px;
  right: inherit;
}

/* MAIN ACCUEIL*/
#main {
  /*background: url($path + "header-main.png") center top no-repeat;*/
}

#main figure {
  line-height: 0px;
}

#main #vignettes {
  margin-top: -100px;
}

#main #vignettes a {
  background-color: #b8c934;
  display: block;
  text-align: center;
  color: #fff;
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
}

#main #vignettes a strong {
  padding: 10px 5px;
  display: block;
  text-transform: uppercase;
  font-size: 20px;
}

#main #vignettes a:hover {
  background-color: #50452f;
}

#main #titre_h1 h1 {
  text-align: center;
}

#main #titre_h1 h1 strong,
#main #titre_h1 h1 em {
  width: 100%;
  display: inline-block;
}

#main #titre_h1 h1 strong {
  color: #b8c934;
  text-transform: uppercase;
  font-size: 42px;
}

#main #titre_h1 h1 small {
  color: #5e5d60;
  border-top: 2px solid #5e5d60;
  border-bottom: 2px solid #5e5d60;
  letter-spacing: 2px;
  display: inline-block;
  margin: 20px 0px;
  padding: 15px 0px;
  line-height: 23px;
}

#main #titre_h1 h1 em {
  color: #b8c934;
  font-weight: 700;
}

#main #bloc-informations {
  background-color: #a0001f;
  padding: 50px 0px;
}

#main #bloc-informations h2 {
  text-align: center;
  font-size: 24px;
  color: #d70029;
  text-transform: uppercase;
  line-height: 33px;
}

#main #bloc-informations p {
  text-align: center;
  color: #d70029;
  font-size: 31px;
  line-height: 38px;
}

#main #bloc-informations p strong {
  font-size: 90px;
  line-height: 100px;
}

#main #bloc-informations .subcl,
#main #bloc-informations .subc {
  border-right: 2px solid #fff;
}

#main #bloc-informations .subcl,
#main #bloc-informations .subc,
#main #bloc-informations .subcr {
  min-height: 190px;
}

#main #presentation h2 {
  font-size: 20px;
  line-height: 23px;
}

#main #presentation p {
  margin-bottom: 20px;
}

#main #presentation p:last-child {
  margin-bottom: 0px;
}

#main #temoignages {
  padding: 50px 0;
}

#main #bloc-contact {
  padding: 100px 0px;
}

#main .encart {
  padding: 20px;
  background-color: #d70029;
  margin-top: 20px;
}

#main .encart p {
  color: #fff;
  margin-bottom: 20px;
}

#main .encart p:last-child {
  margin-bottom: 0px;
}

/*#container{

    width: 1100px; //retirer la class milleCent dans la partie responsive

    display: flex;

    justify-content: space-between;

    margin: 0 auto;



    #main{

        flex: 0 1 65%;

    }



    #left{

        flex: 0 1 30%;

        margin-left: auto;

    }

}*/
.ce_accordion {
  margin-bottom: 20px;
  background-color: #fff;
}

.ce_accordion .toggler {
  font-size: 20px;
  text-align: left;
  padding: 7px;
  color: #fff;
  text-decoration: none;
  background-color: #dcdcdc;
}

.ce_accordion .toggler:before {
  content: "\f0a9";
  /*Flèche de l'accordeon fermée*/
  font-family: "FontAwesome";
  vertical-align: -4px;
  margin-right: 5px;
  float: right;
}

.ce_accordion .toggler:hover {
  cursor: pointer;
}

.ce_accordion .toggler:hover:before {
  content: "\f0ab";
  /*Flèche de l'accordeon fermée au survol*/
}

.ce_accordion .toggler.active:before, .ce_accordion .toggler.active:hover:before {
  content: "\f0ab";
  /*Flèche de l'accordeon actif*/
}

.ce_accordion .accordion {
  padding: 15px;
}

.mod_breadcrumb {
  display: none;
}

.titre_page {
  position: relative;
  display: inline-block;
  width: 100%;
  margin: 50px 0 0;
}

.titre_page h1 {
  float: left;
  padding: 0 10px 0 0;
  margin: 0;
  position: relative !important;
  z-index: 2;
  background-color: #f2f2f2;
}

.titre_page::after {
  content: "";
  width: 100%;
  height: 15px;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: #15141a;
  z-index: 1;
}

/*************** TELEPHONE INTERACTIF *****************/
#tel {
  background-color: #50452f;
  border-left: 10px #b8c934 solid;
  margin-right: -220px;
  padding: 12px;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  width: 300px;
  position: fixed;
  right: 0px;
  margin-top: 400px;
}

#tel:hover {
  cursor: pointer;
}

#tel #contactertel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#tel #contactertel figure {
  margin-right: 15px;
}

#tel #contactertel p {
  font-size: 23px;
}

#tel #contactertel p a {
  display: block;
  color: #fff;
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
}

#tel #contactertel p a:hover {
  color: #15141a;
}

#tel.active {
  margin-right: -45px !important;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
}

/*CONTACT LATERAL*/
#contact_lateral {
  position: relative;
  z-index: 9999;
}

#contact_lateral svg {
  width: 15px;
  height: auto;
}

#contact_lateral .btn_lateral {
  position: fixed;
  right: 0;
  top: 200px;
}

#contact_lateral .btn_lateral a {
  background-color: #b8c934;
  display: inline-block;
  text-transform: uppercase;
  font-weight: 700;
  color: #fff;
  border-left: 5px #15141a solid;
  padding: 10px 20px;
}

#contact_lateral .btn_lateral a:hover {
  background-color: #15141a;
  border-color: #b8c934 !important;
}

#contact_lateral .btn_lateral:last-child {
  top: 340px;
  right: -48px;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

#contact_lateral .btn_lateral:last-child p {
  margin-bottom: 0px;
}

#contact_lateral .btn_lateral:last-child p a {
  border-top: 5px #15141a solid;
  padding: 19px 10px;
  border-left: 0px;
}

/* FOOTER */
#footer {
  clear: both;
  background-color: #235784;
}

#footer section {
  padding: 50px 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#footer .col_1 .subcl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: 15px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#footer .col_1 .subcl img {
  margin-right: 10px;
}

#footer .infos p {
  color: #fff;
  margin-bottom: 20px;
}

#footer .infos p:last-child {
  margin-bottom: 0px;
}

#footer .mentions {
  text-align: right;
}

#footer .mentions a {
  color: #fff;
}

#footer .mentions a:hover {
  font-weight: 700;
}

#footer .tabularasa {
  text-align: right;
}

#footer .tabularasa a {
  color: #fff;
  -webkit-transition-property: all;
  -webkit-transition-duration: "1s";
  -moz-transition-property: all;
  -moz-transition-duration: "1s";
  transition-property: all;
  transition-duration: "1s";
  padding: 5px 10px;
  background-color: rgba(255, 255, 255, 0.2);
  text-transform: uppercase;
  line-height: 38px;
}

#footer .tabularasa a:hover {
  background-color: #b8c934;
}

#footer .mentions_bot {
  text-align: center;
  background-color: #15141a;
  padding: 25px;
  color: #fff !important;
  border-top: 10px solid #d70029;
  margin-top: 100px;
}

#footer .mentions_bot p {
  margin-bottom: 0px;
}

#footer .mentions_bot a {
  color: #fff !important;
}

#footer .mentions_bot a:hover {
  font-weight: 700;
}

.separateur {
  background: url("/files/tabularasa/images/design/fond_separateur.jpg") center no-repeat, #d70029;
  background-size: cover;
  padding: 50px 0px;
  margin: 50px 0px;
}

.separateur p {
  color: #fff;
}

.contenu #slide {
  height: 300px;
}

.contenu #main .float_left {
  margin-right: 20px;
}

.contenu #main .float_right {
  margin-left: 20px;
}

.contenu #main .float_above img {
  float: inherit !important;
}

.contenu #main p {
  margin-bottom: 20px;
}

.contenu #main p:last-child {
  margin-bottom: 0px;
}

.contenu #main .num p {
  font-size: 30px;
  background: #a0001f;
  text-align: center !important;
  margin: auto;
  color: #fff;
  width: 70px;
  height: 70px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 50%;
}

.contenu .ce_text ul li {
  padding-left: 50px;
  text-indent: -21px;
}

.contenu .ce_text ul li::before {
  content: "\f061";
  font-family: "FontAwesome";
  margin: 0px 8px 0px 0px;
}

/*UNE ACTUALITE*/
.layout_full .info {
  background: none;
  padding: 0;
}

.layout_full figure {
  margin: 0px 15px 15px 0px;
}

/*PAGE ACTUALITES*/
#toutes_actus {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#toutes_actus .layout_latest_liste {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 32%;
          flex: 0 1 32%;
  margin-bottom: 50px;
}

#toutes_actus .layout_latest_liste .texte-droite {
  background-color: #fff;
  padding: 10px;
}

#toutes_actus .layout_latest_liste .texte-droite h2 {
  line-height: 24px;
  font-size: 19px;
  margin-top: 0px;
  margin-bottom: 11px;
}

#toutes_actus .more {
  text-align: center;
}

/*CARTE OPENSTREET MAP*/
.leaflet-pane {
  z-index: 0 !important;
}

.leaflet-top,
.leaflet-bottom {
  z-index: 1 !important;
}

/*FORMULAIRE*/
.contact #main,
.contenu #main {
  padding-bottom: 175px;
}

.contact #main h1,
.contenu #main h1 {
  position: initial;
  -webkit-transform: initial;
          transform: initial;
  text-align: center;
}

.contact #main .intro,
.contenu #main .intro {
  margin: 10px 30px 30px 30px;
}

.contact #main .intro p,
.contenu #main .intro p {
  text-align: center;
  font-size: 20px;
  font-style: italic;
}

.contact #main form,
.contenu #main form {
  width: 100%;
  /*BOUTON CHECKBOX*/
  /*BOUTON RADIO*/
  /*LISTE DEROULANTE*/
}

.contact #main form label,
.contenu #main form label {
  display: block;
  font-size: 13px;
  margin-top: 20px;
  text-transform: uppercase;
}

.contact #main form input,
.contact #main form textarea,
.contenu #main form input,
.contenu #main form textarea {
  background-color: #fff;
  border: 0px;
  margin-top: 3px;
  padding: 8px 0 8px 8px;
  width: 100%;
  border-bottom: 3px #fff solid;
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
}

.contact #main form input:focus, .contact #main form input:hover,
.contact #main form textarea:focus,
.contact #main form textarea:hover,
.contenu #main form input:focus,
.contenu #main form input:hover,
.contenu #main form textarea:focus,
.contenu #main form textarea:hover {
  border-bottom: 3px #d70029 solid;
}

.contact #main form .RGPDcontact,
.contenu #main form .RGPDcontact {
  margin-top: 10px;
}

.contact #main form .RGPDcontact input,
.contenu #main form .RGPDcontact input {
  width: auto;
}

.contact #main form .RGPDcontact label,
.contenu #main form .RGPDcontact label {
  display: inline;
  text-transform: initial;
}

.contact #main form .widget-checkbox [type="checkbox"]:checked,
.contact #main form .widget-checkbox [type="checkbox"]:not(:checked),
.contenu #main form .widget-checkbox [type="checkbox"]:checked,
.contenu #main form .widget-checkbox [type="checkbox"]:not(:checked) {
  position: absolute;
  left: -9999px;
}

.contact #main form .widget-checkbox [type="checkbox"]:checked + label,
.contact #main form .widget-checkbox [type="checkbox"]:not(:checked) + label,
.contenu #main form .widget-checkbox [type="checkbox"]:checked + label,
.contenu #main form .widget-checkbox [type="checkbox"]:not(:checked) + label {
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  line-height: 20px;
  display: inline-block;
}

.contact #main form .widget-checkbox [type="checkbox"]:checked + label:before,
.contact #main form .widget-checkbox [type="checkbox"]:not(:checked) + label:before,
.contenu #main form .widget-checkbox [type="checkbox"]:checked + label:before,
.contenu #main form .widget-checkbox [type="checkbox"]:not(:checked) + label:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #fff;
  background: #fff;
}

.contact #main form .widget-checkbox [type="checkbox"]:checked + label:after,
.contact #main form .widget-checkbox [type="checkbox"]:not(:checked) + label:after,
.contenu #main form .widget-checkbox [type="checkbox"]:checked + label:after,
.contenu #main form .widget-checkbox [type="checkbox"]:not(:checked) + label:after {
  content: '';
  width: 12px;
  height: 12px;
  background: #b8c934;
  position: absolute;
  top: 4px;
  left: 4px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.contact #main form .widget-checkbox [type="checkbox"]:not(:checked) + label:after,
.contenu #main form .widget-checkbox [type="checkbox"]:not(:checked) + label:after {
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
}

.contact #main form .widget-checkbox [type="checkbox"]:checked + label:after,
.contenu #main form .widget-checkbox [type="checkbox"]:checked + label:after {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.contact #main form .widget-radio span,
.contenu #main form .widget-radio span {
  margin-right: 10px;
}

.contact #main form .widget-radio [type="radio"]:checked,
.contact #main form .widget-radio [type="radio"]:not(:checked),
.contenu #main form .widget-radio [type="radio"]:checked,
.contenu #main form .widget-radio [type="radio"]:not(:checked) {
  position: absolute;
  left: -9999px;
}

.contact #main form .widget-radio [type="radio"]:checked + label,
.contact #main form .widget-radio [type="radio"]:not(:checked) + label,
.contenu #main form .widget-radio [type="radio"]:checked + label,
.contenu #main form .widget-radio [type="radio"]:not(:checked) + label {
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  line-height: 20px;
  display: inline-block;
}

.contact #main form .widget-radio [type="radio"]:checked + label:before,
.contact #main form .widget-radio [type="radio"]:not(:checked) + label:before,
.contenu #main form .widget-radio [type="radio"]:checked + label:before,
.contenu #main form .widget-radio [type="radio"]:not(:checked) + label:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #fff;
  border-radius: 100%;
  background: #fff;
}

.contact #main form .widget-radio [type="radio"]:checked + label:after,
.contact #main form .widget-radio [type="radio"]:not(:checked) + label:after,
.contenu #main form .widget-radio [type="radio"]:checked + label:after,
.contenu #main form .widget-radio [type="radio"]:not(:checked) + label:after {
  content: '';
  width: 12px;
  height: 12px;
  background: #b8c934;
  position: absolute;
  top: 4px;
  left: 4px;
  border-radius: 100%;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.contact #main form .widget-radio [type="radio"]:not(:checked) + label:after,
.contenu #main form .widget-radio [type="radio"]:not(:checked) + label:after {
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
}

.contact #main form .widget-radio [type="radio"]:checked + label:after,
.contenu #main form .widget-radio [type="radio"]:checked + label:after {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.contact #main form .widget-select select,
.contenu #main form .widget-select select {
  border: 0px;
  padding: 8px;
}

.contact #main form .submit,
.contenu #main form .submit {
  cursor: pointer;
  border: medium none;
  clear: both;
}

.mod_login,
.mod_lostPassword {
  width: 250px;
  margin: 50px auto;
}

.mod_login label,
.mod_lostPassword label {
  width: 100%;
  font-weight: bold;
  display: inline-block;
  font-size: 20px;
}

.mod_login input,
.mod_lostPassword input {
  margin: 5px 0px 15px;
  border: 0px;
  width: 100%;
  padding: 5px 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mod_login button,
.mod_lostPassword button {
  width: 100%;
  text-align: center;
  margin: 15px 0px;
  border: 0px;
  cursor: pointer;
  -webkit-transition-property: all;
  -webkit-transition-duration: "1s";
  -moz-transition-property: all;
  -moz-transition-duration: "1s";
  transition-property: all;
  transition-duration: "1s";
  padding: 8px 15px;
  background: #a0001f;
  display: inline-block;
  margin: 0px auto;
  font-size: 13px;
  color: #fff;
  text-transform: uppercase;
}

.mod_login button:hover,
.mod_lostPassword button:hover {
  background: #dcdcdc;
  color: #fff;
}

/*PHOTOTHEQUE*/
.ce_gallery ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.ce_gallery ul li {
  margin-bottom: 1.6%;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 15%;
          flex: 0 1 15%;
  margin-right: 1.6%;
}

/*LIGHTBOX VIDEO*/
.videoLigthBox {
  position: relative;
}

.videoLigthBox img {
  float: none;
}

.videoLigthBox a::before {
  content: "";
  background: url("/files/tabularasa/images/design/lecture.png") center center no-repeat;
  width: 60px;
  height: 60px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

/*Remonter en haut de page*/
#goTop {
  position: fixed;
  border: 0;
  bottom: 15px;
  right: 15px;
  background: #d70029;
  color: #fff;
  padding: 15px;
  cursor: pointer;
}

#goTop:hover {
  background: #a0001f;
}

/*Mise en page boutons*/
#article-131 .ce_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#article-131 .ce_text h2 {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
}
