/*
 Theme Name:   Ceci n'est pas un conte
 Theme URI:    https://cecinestpasunconte.fr
 Description:  Thème Wordpress pour Ceci n'est pas un conte
 Author: Alternetwork
 Author URI: https://cecinestpasunconte.fr/
*/

@charset "UTF-8";

/*** Vars ***/
:root {
  --col-noir: #333333;
  --col-jaune: #e8ba5a;
  --col-rouille: #C26140;
  --col-vert: #1ED760;
  --col-blanc: #FFFFFF;
  --col-gris: #212529;
  --rgb-noir: 51, 51, 51;
  --rgb-jaune: 232, 186, 90;
  --rgb-rouille: 194, 97, 64;
  --rgba-vert: 30, 215, 96;
  --rgb-blanc: 255, 255, 255;
  --rgb-gris: 33, 37, 41;

  --size-h1: 80px;
  --size-h2: 40px;
  --size-h3: 24px;
  --size-h4: 22px;
  --size-txt-intro:  32px;
  --size-txt1:  20px;  
  --size-txt2:  18px;

  --height-logo: 180px;

  --break-point-1500: 1420px;

  --width-container: 1420px;

  --main-padding:  60px;

  --margin-block-image:  40px;
}

/*** Animations ***/
@-webkit-keyframes homeloading {
  0%, 10%
  {
    opacity: 0;
    filter: blur(1.05em); 
    width: 100%;
    height: 100%;
  }
  10%
  {
    opacity: 1;
    filter: blur(1.05em); 
  }
  20%
  {
    filter: blur(0);
  }
  99%
  {
    width: 100%;
    height: 100%;
  }
  100%
  {
    filter: blur(0); 
    width: 0;
    height: 0;
  }
}
@keyframes homeloading {
  0%, 10%
  {
    opacity: 0;
    filter: blur(1.05em); 
    width: 100%;
    height: 100%;
  }
  10%
  {
    opacity: 1;
    filter: blur(1.05em); 
  }
  20%
  {
    filter: blur(0);
  }
  99%
  {
    width: 100%;
    height: 100%;
  }
  100%
  {
    filter: blur(0); 
    width: 0;
    height: 0;
  }
}
@-webkit-keyframes fondu {
  0%, 80%
  {
    opacity:0;
  }
  100%
  {
    opacity:1;
  }
}
@keyframes fondu {
  0%, 80%
  {
    opacity:0;
  }
  100%
  {
    opacity:1;
  }
}
@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-75px, 0, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-75px, 0, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(75px, 0, 0);
    transform: translate3d(75px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(75px, 0, 0);
    transform: translate3d(75px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 75px, 0);
    transform: translate3d(0, 75px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 75px, 0);
    transform: translate3d(0, 75px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInBigUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 150px, 0);
    transform: translate3d(0, 150px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInBigUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 150px, 0);
    transform: translate3d(0, 150px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -75px, 0);
    transform: translate3d(0, -75px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -75px, 0);
    transform: translate3d(0, -75px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.75, 0.75, 0.75);
    transform: scale3d(0.75, 0.75, 0.75);
  }

  50% {
    opacity: 1;
  }
}
@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.75, 0.75, 0.75);
    transform: scale3d(0.75, 0.75, 0.75);
  }

  50% {
    opacity: 1;
  }
}
@-webkit-keyframes enterHome {
  0% {
    opacity: 0;
  }

  75% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes enterHome {
  0% {
    opacity: 0;
  }
  75% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes buttonFromCenter {
   0% { height:0%; opacity:0; width:0; margin-top:0; margin-left:0; left:50%;}
   25% { opacity:1;}
   50% { height:100%; width:3.375em; margin-top:0em; margin-left:-1.6875em; left:50%;}
   100% { height:100%; opacity:1; width:100%; margin-top:0em; margin-left:-1.6875em; left:1.6875em;}
}
@keyframes buttonFromCenter {
   0% { height:0%; opacity:0; width:0; margin-top:0; margin-left:0; left:50%;}
   25% { opacity:1;}
   50% { height:100%; width:3.375em; margin-top:0em; margin-left:-1.6875em; left:50%;}
   100% { height:100%; opacity:1; width:100%; margin-top:0em; margin-left:-1.6875em; left:1.6875em;}
}
@-webkit-keyframes expandLinkFromCenter {
   0% { height:100%; opacity:0; width:100px; margin-top:0; margin-left:0; left:calc(50% - 50px);}
   25% { opacity:0;width:100px; margin-top:0; margin-left:0; left:calc(50% - 50px);}
   100% { height:calc(100% + 2px); opacity:1; width:calc(100% + 110px); margin-top:0em; margin-left:-1.6875em; left:calc(1.6875em - 55px);}
}
@keyframes expandLinkFromCenter {
   0% { height:100%; opacity:0; width:100px; margin-top:0; margin-left:0; left:calc(50% - 50px);}
   25% { opacity:0;width:100px; margin-top:0; margin-left:0; left:calc(50% - 50px);}
   100% { height:calc(100% + 2px); opacity:1; width:calc(100% + 110px); margin-top:0em; margin-left:-1.6875em; left:calc(1.6875em - 55px);}
}
@keyframes blurOut {
     0%       { filter:blur(10px); -webkit-filter:blur(10px);}
     100%     { filter:blur(0px); -webkit-filter:blur(0px);}
}
@-webkit-keyframes blurOut {
     0%       { filter:blur(10px); -webkit-filter:blur(10px);}
     100%     { filter:blur(0px); -webkit-filter:blur(0px);}
}
@-webkit-keyframes hoverBulle {
  0% {transform: scale(1.0); -webkit-transform: scale(1.0);}
  25% {transform: scale(1.025); -webkit-transform: scale(1.025);}
  50% {transform: scale(0.975); -webkit-transform: scale(0.975);}
  100% {transform: scale(1.0); -webkit-transform: scale(1.0);}
}
@keyframes hoverBulle {
  0% {transform: scale(1.0); -webkit-transform: scale(1.0);}
  25% {transform: scale(1.025); -webkit-transform: scale(1.025);}
  50% {transform: scale(0.975); -webkit-transform: scale(0.975);}
  100% {transform: scale(1.0); -webkit-transform: scale(1.0);}
}
@-webkit-keyframes hoverArrow {
  0% {
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  5% {
    -webkit-transform: translate(10px, -10px);
    -ms-transform: translate(10px, -10px);
    transform: translate(10px, -10px);
  }
  30%,
  100% {
    -webkit-transform: translate(0px,0px);
    -ms-transform: translate(0px,0px);
    transform: translate(0px,0px);
  }
}
@keyframes hoverArrow {
  0% {
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  5% {
    -webkit-transform: translate(10px, -10px);
    -ms-transform: translate(10px, -10px);
    transform: translate(10px, -10px);
  }
  30%,
  100% {
    -webkit-transform: translate(0px,0px);
    -ms-transform: translate(0px,0px);
    transform: translate(0px,0px);
  }
}
@-webkit-keyframes hoverArrowDown {
  0% {
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  5% {
    -webkit-transform: translate(10px, 10px);
    -ms-transform: translate(10px, 10px);
    transform: translate(10px, 10px);
  }
  30%,
  100% {
    -webkit-transform: translate(0px,0px);
    -ms-transform: translate(0px,0px);
    transform: translate(0px,0px);
  }
}
@keyframes hoverArrowDown {
  0% {
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  5% {
    -webkit-transform: translate(10px, 10px);
    -ms-transform: translate(10px, 10px);
    transform: translate(10px, 10px);
  }
  30%,
  100% {
    -webkit-transform: translate(0px,0px);
    -ms-transform: translate(0px,0px);
    transform: translate(0px,0px);
  }
}
@-webkit-keyframes smallHoverArrow {
  0% {
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  5% {
    -webkit-transform: translate(4px, -4px);
    -ms-transform: translate(4px, -4px);
    transform: translate(4px, -4px);
  }
  30%,
  100% {
    -webkit-transform: translate(0px,0px);
    -ms-transform: translate(0px,0px);
    transform: translate(0px,0px);
  }
}
@keyframes smallHoverArrow {
  0% {
    -webkit-transform: translate(0px, 0px);
    -ms-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  5% {
    -webkit-transform: translate(4px, -4px);
    -ms-transform: translate(4px, -4px);
    transform: translate(4px, -4px);
  }
  30%,
  100% {
    -webkit-transform: translate(0px,0px);
    -ms-transform: translate(0px,0px);
    transform: translate(0px,0px);
  }
}
@-webkit-keyframes bounce {
  0%,
  100%,
  20%,
  50%,
  80% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  60% {
    -webkit-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    transform: translateY(-5px);
  }
}
@keyframes bounce {
  0%,
  100%,
  20%,
  50%,
  80% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  60% {
    -webkit-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    transform: translateY(-5px);
  }
}
@keyframes minBounceUp {
  0%,
  100%,
  20%,
  50%,
  80% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-6px);
    -ms-transform: translateY(-6px);
    transform: translateY(-6px);
  }
  60% {
    -webkit-transform: translateY(-3px);
    -ms-transform: translateY(-3px);
    transform: translateY(-3px);
  }
}
@keyframes minBounceDown {
  0%,
  100%,
  20%,
  50%,
  80% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(6px);
    -ms-transform: translateY(6px);
    transform: translateY(6px);
  }
  60% {
    -webkit-transform: translateY(3px);
    -ms-transform: translateY(3px);
    transform: translateY(3px);
  }
}
@keyframes minRotateLeft {
  50% {
    -webkit-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    transform: rotate(-135deg);
  }
  100% {
    -webkit-transform: rotate(-225deg);
    -ms-transform: rotate(-225deg);
    transform: rotate(-225deg);
  }
}
@keyframes minRotateRight {
  50% {
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  100% {
    -webkit-transform: rotate(225deg);
    -ms-transform: rotate(225deg);
    transform: rotate(225deg);
  }
}
@-webkit-keyframes leftToRight {
  0% {width: 0%}
  50% {width: 75%}
  100% {width: 100%}
}
@keyframes leftToRight {
  0% {width: 0%}
  50% {width: 75%}
  100% {width: 100%}
}
@-webkit-keyframes topToBottom {
  0% {height: 0%}
  50% {height: 75%}
  100% {height: 100%}
}
@keyframes topToBottom {
  0% {height: 0%}
  50% {height: 75%}
  100% {height: 100%}
}
@-webkit-keyframes whiteToTransparent {
  0% {background-color: var(--col-blanc)}
  50% {background-color: var(--col-blanc)}
  100% {background-color: transparent}
}
@keyframes whiteToTransparent {
  0% {background-color: var(--col-blanc)}
  50% {background-color: var(--col-blanc)}
  100% {background-color: transparent}
}
@-webkit-keyframes slideFade {
 0% {
  opacity:0
 }
 30% {
  opacity:0
 }
 100% {
  opacity:1
 }
}
@keyframes slideFade {
 0% {
  opacity:0
 }
 30% {
  opacity:0
 }
 100% {
  opacity:1
 }
}
@-webkit-keyframes hideMenu {
  0% {
    opacity: 1;
  }
  10% {
    opacity: 0;
  }
}
@keyframes hideMenu {
  0% {
    opacity: 1;
  }
  10% {
    opacity: 0;
  }
}
@-webkit-keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@-webkit-keyframes revealText {
  0% {
    opacity: 1;
    -webkit-transform: translateY(200%);
    transform: translateY(200%);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(5%);
    transform: translateY(5%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@keyframes revealText {
  0% {
    opacity: 1;
    -webkit-transform: translateY(200%);
    transform: translateY(200%);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(5%);
    transform: translateY(5%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}


/*** Règles ***/
html {
  background-color: var(--col-jaune);
  color: var(--col-blanc);
}
/*** On cache les anims ***/
.wow {
  visibility: hidden;
}
/*** Loader ***/
html.home-loading body .wrapper {
  position:relative;
  animation-name: enterHome;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
  animation-duration: 2s;
  animation-fill-mode:both;
  animation-timing-function: cubic-bezier(.26, .53, .74, 1.48);
  -webkit-animation-name: enterHome;
  -webkit-animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-duration: 2s;
  -webkit-animation-fill-mode:both;
  -webkit-animation-timing-function: cubic-bezier(.26, .53, .74, 1.48);
/*  overflow: hidden;*/
}
/*
.loader-anim {
  display: none;
}
*/
html.home-loading .loader-anim {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  animation-name: homeloading;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-duration: 2.5s;
  -webkit-animation-name: homeloading;
  -webkit-animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-duration: 2.5s;
  opacity: 1;
  background-color: var(--col-jaune);
}
.loader-anim img,
.loader-anim svg,
.loader-anim span {
  position: fixed;
  top: 30px;
  transform: translate(-50%,0);
  left: 50%;
  max-width: 280px;
}
.loader-anim span {
  color: var(--col-gris);
  font-size: 60px;
  font-weight: 800;
  max-width: none;
}
/*
.loader-anim img.svg {
  opacity: 0;
}
*/

body {
  position: relative;
  font-size: var(--size-txt1);
  font-family: 'Montserrat', sans-serif;
  font-optical-sizing: auto;
  line-height: 1.5em;
  color: var(--col-blanc);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x: hidden;
  overflow-y: auto;
}
body .wrapper {
  background-color: var(--col-jaune);
  min-height: 100vh;
  text-align: left;
}
body .homepage {
  text-align: center;
}
.container {
  max-width: var(--width-container);
}
::-moz-selection {
  background: var(--col-rouille);
  color: var(--col-blanc);
  text-shadow: none;
}

::selection {
  background: var(--col-rouille);
  color: var(--col-blanc);
  text-shadow: none;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid var(--col-blanc);
  margin: 2.5em auto;
  width: 100px;
  padding: 0;
}
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}
img {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
}
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}
input::-moz-focus-inner {
  border: 0 !important;
}
textarea {
  resize: vertical;
}
.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}
* {
  -webkit-tap-highlight-color: transparent;
  word-break: keep-all !important;
  -webkit-hyphens: manual !important;
  -moz-hyphens: manual !important;
  -ms-hyphens: manual !important;
  -o-hyphens: manual !important;
  hyphens: manual !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.full-width {
  width: 100%;
}
section {
  display:block;
}
a {
  transition:all 0.35s ease-in;
  position:relative;
  color:var(--col-noir);
}
a:visited,
a:focus,
a:link {
  color:var(--col-noir);
}
a:hover {
  color:var(--col-rouille);
}
header a,
.logo-footer a {
  border: none!important;
}

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

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

img,
svg {
  max-width:100%;
  height:auto;
}
.wp-caption {
  max-width:100%;
  font-style: italic;
}
@media (max-width:767px) {
  .wp-caption {
    width:100%!important;
  }
}
.vertical-middle {
  position:absolute;
  left:0;
  top:50%;
  transform: translateY(-50%);
}
.vertical-align-center {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;  
}
.vertical-align-top {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: start;  
}
.vertical-align-bottom {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: end;  
}

/*** medias ***/
.video-responsive,
.wp-block-embed__wrapper {
  width:100%;
  height:0;
  padding-bottom:56.25%;
/*  overflow:hidden;*/
  position:relative;
  max-width: 800px;
  margin: auto;
}
.video-responsive iframe, .video-responsive embed, .video-responsive object,
.wp-block-embed__wrapper iframe, .wp-block-embed__wrapper embed, .wp-block-embed__wrapper object {
  width:100%!important;
  height:100%!important;
  position:absolute!important;
  top:0;
  left:0;
}
/*** LENIS ***/
html.lenis, html.lenis body {
  height: auto;
}
.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}
.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}
.lenis.lenis-stopped {
  overflow: hidden;
}
.lenis.lenis-scrolling iframe {
  pointer-events: none;
}
/*** MAGNIFIC POPUP ***/
.mfp-bg {
  opacity:0.9;
}
/*** ReCaptcha Badge ***/
.grecaptcha-badge { 
  visibility: hidden;
}
/*** cookies : tarteaucitron ***/
body #tarteaucitronRoot * {
  font-family:'Montserrat', sans-serif!important;
}
body #tarteaucitronRoot #tarteaucitronAlertBig {
  font-size:14px!important;
  font-family:'Montserrat', sans-serif!important;
  border:none!important;
  background:rgba(240, 240, 240, 0.9)!important;
  transition:background-color 0.5s ease;
  box-shadow: 0px -1px 4px 1px rgba(0,0,0,.10);
}
body #tarteaucitronRoot #tarteaucitronAlertBig:hover {
  background:rgba(240, 240, 240, 1)!important;
}
body #tarteaucitronAlertBig #tarteaucitronPrivacyUrl, 
body #tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog, 
body #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert, 
body #tarteaucitronAlertBig #tarteaucitronDisclaimerAlert strong {
  font-size:14px!important;
  font-family:'Montserrat', sans-serif!important;
  color: var(--col-noir) !important;
  font-weight: 300!important;
}
body #tarteaucitronAlertBig #tarteaucitronCloseAlert, 
body #tarteaucitronAlertBig #tarteaucitronPersonalize, 
body #tarteaucitronAlertBig #tarteaucitronPersonalize2, 
body .tarteaucitronCTAButton, 
body #tarteaucitron #tarteaucitronPrivacyUrl, 
body #tarteaucitron #tarteaucitronPrivacyUrlDialog, 
body #tarteaucitronRoot .tarteaucitronDeny, 
body #tarteaucitronRoot .tarteaucitronAllow {
  background-color: var(--col-rouille)!important;
  font-size:14px!important;
  font-family:'Montserrat', sans-serif!important;
  border-radius: 8px;
}
body #tarteaucitronRoot .tarteaucitronDeny {
  background-color: var(--col-noir)!important;  
}
body #tarteaucitronAlertBig #tarteaucitronCloseAlert, 
body #tarteaucitron #tarteaucitronPrivacyUrl, 
body #tarteaucitron #tarteaucitronPrivacyUrlDialog {
  background-color: #ffffff!important;
}
body #tarteaucitron #tarteaucitronServices .tarteaucitronMainLine,
body #tarteaucitron .tarteaucitronBorder {
  background-color: #efefef !important;
  border: 1px solid #dfdfdf !important;
}
body #tarteaucitronRoot .tarteaucitronH1,
body #tarteaucitronRoot .tarteaucitronH2 {
  text-transform: uppercase;
  color: var(--col-noir)!important;
}
body #tarteaucitron #tarteaucitronInfo {
  background-color: #efefef!important;
  color: var(--col-noir)!important;
  border: none!important;
}
body #tarteaucitronAlertSmall,
body #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer {
  opacity: .75;
  right: auto;
  left: 70px;
}
body #tarteaucitronAlertSmall:hover,
body #tarteaucitronAlertSmall #tarteaucitronCookiesListContainer:hover {
  opacity: 1;
}
/*** Header ***/
.logo-menu-container {
  width:100%;
  padding:0 15px;
  height: var(--height-logo);
  display: flex;
  justify-content: space-between;
}
#header h1,
#header .h1 {
  margin:30px auto 0px;
  text-align: center;
  width: 30%;
}
.navbar-brand {
  position: relative;
  vertical-align:top;
  text-align:center;
  padding:0px 0px 0px 0px;
  margin-right:0;
  transition: all .35s ease-in-out;
  max-height: var(--height-logo);
}
.navbar-brand img {
  max-height: var(--height-logo);
}
#header .h1 .sitename {
  display: none;
}
#header .logo {
  display:inline-block;
  vertical-align:top;
  max-height:var(--height-logo);
  transition: all .2s ease-in-out;
}
/*** Classes pour animations ***/
.fadeInBigUp {
  -webkit-animation-name: fadeInBigUp;
  animation-name: fadeInBigUp;
}
.spin {
  -webkit-animation-name: spin;
  animation-name: spin;
}
.infiniteSpin {
  animation-name: spin;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-duration: 3s;
  -webkit-animation-name: spin;
  -webkit-animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-duration: 3s;
}
.animated.buttonFromCenter::before {
  animation-name: buttonFromCenter;
  animation-fill-mode: both;
  animation-timing-function: ease-in-out;
  animation-delay: 1s;
  animation-duration: 1s;
  -webkit-animation-name: buttonFromCenter;
  -webkit-animation-fill-mode: both;
  -webkit-animation-timing-function: ease-in-out;
}
.animated.revealText {
  animation-name: revealText;
  animation-timing-function: ease-in-out;
  animation-delay: 0.5s;
  animation-duration: 2s;
  -webkit-animation-name: revealText;
  -webkit-animation-timing-function: ease-in-out;
}
.blurOut {
  animation-name: blurOut;
  animation-fill-mode: both;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: blurOut;
  -webkit-animation-fill-mode: both;
  -webkit-animation-timing-function: ease-in-out;
}
.leftToRight {
  animation-name: leftToRight;
  animation-fill-mode: both;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: leftToRight;
  -webkit-animation-fill-mode: both;
  -webkit-animation-timing-function: ease-in-out;
}
.topToBottom {
  animation-name: topToBottom;
  animation-fill-mode: both;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: topToBottom;
  -webkit-animation-fill-mode: both;
  -webkit-animation-timing-function: ease-in-out;
}
.whiteToTransparent {
  animation-name: whiteToTransparent;
  animation-timing-function:cubic-bezier(.4,0,0,1);
  -webkit-animation-name: whiteToTransparent;
  -webkit-animation-timing-function:cubic-bezier(.4,0,0,1);
}

/*** Général ***/
a.button,
.multi-select-button,
.formulaire .chosen-container,
.formulaire select.chosen,
.formulaire .submit  {
  position:relative;
  z-index:2;
  display:inline-block;
  text-align:center;
  cursor:pointer;
  padding: 0px 12px 0px 12px;
  border-radius: 8px;
  font-size: 16px;
  font-family: "Montserrat", sans-serif;       
  font-stretch: normal;
  font-style: normal;
  font-weight: 700;
  line-height: 44px;
  height: 44px;
  width:auto;
  cursor: pointer;  
  text-decoration: none;
  border: none;
  background-color: transparent;
  transition: all .450s cubic-bezier(.4,0,0,1);
  overflow: hidden;
/*  animation: 1s ease-in-out 3.5s fade-in both;*/
}
a.button::before,
.multi-select-button::before,
.formulaire .chosen-container::before,
.formulaire select.chosen::before,
.formulaire .submit::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  left: 0px; 
  top: 0px; 
  transition: all .450s cubic-bezier(.4,0,0,1);
}
a.button-1,
.formulaire .submit,
a.button-3 {
  color: var(--col-blanc);
}
a.button-1::before,
.formulaire:not(.form-recherche) .submit::before {
  background-color: var(--col-rouille);
  border-radius: 8px;
/*  border: solid 1px var(--col-ciel);*/
  color: var(--col-blanc);
  transition: all .450s cubic-bezier(.4,0,0,1);
}
a.button::after,
.formulaire .submit::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 1;
  z-index: -1;
  left: 0px; 
  transition: all .450s cubic-bezier(.4,0,0,1);
}
a.button:hover::before,
.scale-effect-hover:hover {
/*
  transform: scaleX(0.99) scaleY(0.98);
  transition: transform .6s cubic-bezier(.34,5.56,.64,1);
*/
}
.scale-big-effect-hover:hover {
  transform: scale(1.08);
  transition: transform .6s cubic-bezier(.34,5.56,.64,1);
}
a.button-1::after,
.formulaire .submit::after {
/*  background-color: var(--col-noir);*/
/*  top: 54px; */
/*  background-color: var(--col-rouille);*/
/*  border-radius: 50% 50% 0 0;*/
}
a.button-1:hover,
a.button-1.active,
.formulaire .submit:hover {
  color: var(--col-blanc);
}
a.button-1:hover::before,
a.button-1.active::before,
.formulaire .submit:hover::before {
/*  border: solid 1px var(--col-rouille);*/
  background-color: var(--col-rouille);
}
a.button-1:hover::after,
a.button-1.active::after,
.formulaire .submit:hover::after {
/*  top: 0;*/
/*  background-color: var(--col-rouille);*/
  border-radius: 0;
}
a.button-1-b {
  color: var(--col-blanc);
}
a.button-1-b::after{
  height: 100%;
}
a.button-1-b:hover {
  color: var(--col-noir);
}
a.button-1-b:hover::after{
  height: 0;
}
a.button-2 {
  color: var(--col-gris);
}
a.button-2::before {
  content: "";
  background-color: transparent;
  border-radius: 50px;
  border: solid 2px var(--col-gris);
  color: var(--col-gris);
}
a.button-2::after {
/*  background-color: var(--col-noir);*/
  border-radius: 50px;
}
a.button-2:hover,
a.button-2.active {
  color: var(--col-blanc);
}
a.button-2:hover::before,
a.button-2.active::before {
  background-color: var(--col-gris);
}
a.button-3 {
  color: var(--col-blanc);
}
a.button-3::before {
  background-color: var(--col-rouille);
  border-radius: 50px;
/*  border: solid 1px var(--col-ciel);*/
  color: var(--col-blanc);
  transition: all .450s cubic-bezier(.4,0,0,1);
}
a.button-3::after {
/*  background-color: var(--col-noir);*/
}
a.button-3:hover::before,
a.button-3.active::before {
/*  border: solid 1px var(--col-rouille);*/
  background-color: var(--col-vert);
}
a.button img,
a.button svg {
  margin-left: 5px;
  transform: translateY(-25%);
}
a.button-1 svg path {
  transition: all .450s ease-in-out;
  stroke: var(--col-blanc);
}
a.button-1:hover svg path {
  stroke: var(--col-rouille);
}
a.small-button {
  font-size: 10px;
  height: 26px;
  line-height: 26px;
  padding: 0 10px;
}
a.small-button::before {
  border-width: 1px;
}
a.button .with-arrow::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  border-top: solid 3px var(--col-rouille);
  border-right: solid 3px var(--col-rouille);
  clip-path: polygon(0 0, 0% 10%, 85% 10%, 0% 90%, 10% 100%, 90% 20%, 90% 100%, 100% 100%, 100% 0);
  background-color: var(--col-rouille);
  margin-left: 15px;
  transition: all .35s ease-in;
}
a.button.small-button .with-arrow::after {
  width: 10px;
  height: 10px;
}
a.button-1:hover .with-arrow::after {
  background-color: var(--col-blanc);
  border-top: solid 3px var(--col-blanc);
  border-right: solid 3px var(--col-blanc);
  animation: hoverArrow 2s infinite;
}
a.button-1.small-button:hover .with-arrow::after {
  animation: smallHoverArrow 2s infinite;
}
ul {
  padding: 0 0 0 20px;
}
body ul li:not(.col-12) {
  position: relative;
  padding-left: 20px;
}
body footer ul li {
  padding-left: 0!important;
}
body h1,
body .h1 {
  font-size: var(--size-h1);
  font-family: 'Noe-display-bold', sans-serif;
  color: var(--col-blanc);
  line-height: 1.2em;
  text-align: center;
  margin-bottom: 100px;
}
body h2,
body .h2 {
  display: inline-block;
  position: relative;
  font-weight: 700;
  font-size: var(--size-h2);
  color: var(--col-blanc);
  background-color: var(--col-rouille);
  padding: 0.2em 1em;
  line-height: 1.2em;
  margin-bottom: 20px;
}
body h3,
body .h3 {
  font-weight: 700;
  font-size: var(--size-h3);
  color: var(--col-blanc);
  line-height: 1.2em;
  letter-spacing: normal;  
  margin-bottom: 20px;
}
body h4,
body .h4 {
  font-weight: 700;
  font-size: var(--size-h4);
  color: var(--col-blanc);
  line-height: 1.2em;
  letter-spacing: normal;  
  margin-bottom: 20px;
}
.page-content {
  font-weight: 400;
  font-size: var(--size-txt);
  line-height: 1.5em;
}
.section-titre-h1 h1 div,
h1.with-revealText div {
  overflow: hidden;
  display: inline-block;
  vertical-align: top;
  position: relative;
  padding-right: 20px; /* pour gérer le débordement dû à l'italique **/
  padding-bottom: 20px; /* pour gérer le débordement dû à l'italique **/
}
.section-titre-h1 h1 div strong,
h1.with-revealText div span {
  visibility: hidden;
  display: inline-block;
  vertical-align: top;
/*
  animation-name: revealText;
  animation-timing-function: ease-in-out;
  animation-delay: .6s;
  animation-duration: 0.4s;
  -webkit-animation-name: revealText;
  -webkit-animation-timing-function: ease-in-out;
*/
}
.section-titre-h1 h1 div em {
  visibility: hidden;
  display: inline-block;
  vertical-align: top;
/*
  animation-name: revealText;
  animation-timing-function: ease-in-out;
  animation-delay: .8s;
  animation-duration: 0.4s;
  -webkit-animation-name: revealText;
  -webkit-animation-timing-function: ease-in-out;
*/
}
.page .texte {
  text-align: left;
  font-weight: 400;
}
.page .texte mark {
  position: relative;  
  font-weight: 700;
  background-color: var(--col-rouille);
  color: var(--col-blanc);
  padding: 0 5px 5px;
}
.page .texte strong,
.page .texte b {
  font-weight: 800;
}
.page .texte a {
  text-decoration: none;
  padding-bottom: 0px;
  color: var(--col-rouille);
  transition: all .45s ease-in-out;
  border-bottom: solid 1px transparent;
}
.page .texte a:hover {
  border-bottom: solid 1px var(--col-rouille);
}
.page .texte dfn {
  font-weight: 900;
  color: var(--col-rouille);
  font-style: normal;
}
.page-content .texte ul {
  list-style: none;
  list-style-position: outside;
  padding: 0;
  margin: 20px auto;
}
.page-content .texte ul li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 20px;
}
.page-content .texte ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background-color: var(--col-blanc);
}
.page-content .wp-block-image,
.page-content .block-texte-image {
  margin-bottom: var(--margin-block-image);
}
.page-content .wp-block-image.very-small-margin-bottom,
.page-content .block-texte-image.very-small-margin-bottom {
  margin-bottom: 40px;
}
.page-content .wp-block-image.small-margin-bottom,
.page-content .block-texte-image.small-margin-bottom {
  margin-bottom: 80px;
}
.page-content figcaption {
  font-size: 16px;
  font-style: italic;
  text-align: center;
}
.section-interne {
  position: relative;
  padding: var(--main-padding) 0;
}
.section-padding-bottom {
  position: relative;
  padding: 0 0 var(--main-padding);
}
.container-padding-left {
  padding-left: 60px;
}
.container-padding-right {
  padding-right:60px;
}
.cadre-photo {
  overflow: hidden;
  background: rgba(var(--rgb-blanc), 0.05);
  width: 100%;
  height: 400px;
  position: relative;
  z-index: 1;
/*  animation: fadeInDownRight .45s linear;*/
}
.cadre-photo figure,
.full-width figure {
  position: relative;
  margin: 0;
  height: 100%;
  width: 100%;
}
.cadre-photo img,
.full-width figure img {
  mix-blend-mode: normal;
  object-fit: cover;
  object-position: center center;
  height: 100%;
  width: 100%;
}
.bg-gris {
  background-color: var(--col-gris);
}
.bg-rouille {
  background-color: var(--col-rouille);
}
/*** Homepage ***/
.homepage .section-presentation .intro {
  font-family: 'Noe-display-bold', sans-serif;
  font-size: var(--size-txt-intro);
  line-height: 1.25em;
  max-width: 60%;
  margin: 0 auto;
}
.section-presentation .text-michele-frene {
  text-align: left;
  font-size: var(--size-txt1);
  line-height: 1.2em;
}
.section-presentation .citation {
  font-family: 'Noe-display-bold', sans-serif;
  font-size: 24px;
  margin-top: 40px;
  position: relative;
}
.section-presentation .citation svg,
.section-presentation .citation img {
  position: absolute;
  top: -20px;
}
.section-presentation .citation blockquote {
  border: solid 1px var(--col-blanc);
  border-radius: 4px;
  padding: 30px;
}
.section-podcasts .liste-podcasts {
  padding: var(--main-padding) 0 0;
}
.liste-podcasts .bloc-podcast {
  background-color: var(--col-blanc);
  color: var(--col-noir);
  display: flex;
  text-align: left;
  padding: 20px;
  border-radius: 8px;
  margin-bottom: 40px;
  box-shadow: 0px 4px 16px 0px rgba(var(--rgb-noir), 0.16);
}
.bloc-podcast .cadre-photo {
  height: 180px;
  width: 200px;
  padding-right: 20px;
}
.bloc-podcast .description {
  width: calc(100% - 200px);
}
.bloc-podcast .h3 {
  color: var(--col-noir);
  font-size: var(--size-h3);
  font-weight: 900;
  display: block;
  margin-bottom: 20px;
}
.bloc-podcast .texte {
  font-size: var(--size-txt2);
  line-height: 1.25em;
}
.bloc-podcast .call-to-action a.spotify {
  background-color: var(--col-vert);
  color: var(--col-blanc);
  font-size: 16px;
  font-weight: 700;
  padding: 0 12px 0 40px;
  height: 48px;
  line-height: 48px;
  display: inline-block;
  border-radius: 8px;
  text-decoration: none;
  position: relative;
}
.bloc-podcast .call-to-action a.spotify::before {
  content: "\f1bc";
  font-family: "FontAwesome";
  margin-right: 6px;
  font-size: 24px;
  position: absolute;
  left: 12px;
}
.bloc-podcast .call-to-action a.spotify:hover {
  background-color: var(--col-noir);
}
.page-invisible {
  display: none;
  visibility: hidden;
}
.page-visible {
  display: block;
  visibility: visible;
}
/**** Page standard ***/
.page-standard .section-interne {
  padding-top: calc( var(--main-padding) * 3);
}
.section-breadcrumb {
  padding: 20px 0;
}
.page-standard h2 {
  font-family: 'Noe-display-bold';
  background-color: transparent;
  padding: 0;
  text-transform: none;
  margin-bottom: 40px;
  margin-top: 70px;
}
.page-standard h3 {
  margin-top: 40px;
  margin-bottom: 20px;
}
.pagination-default {
  margin: 50px auto 0 auto;
  text-align: center;
}
.pagination-default .page-numbers {
  width: 44px;
  height: 44px;
  border: 2px solid rgba(var(--rgb-gris), 1);
  display: inline-block;
  vertical-align: bottom;
  color: var(--col-gris);
  font-size: 16px;
  font-weight: bold;
  line-height: 38px;
  border-radius: 100%;
  text-align: center;
  transition: all .35s linear;
  text-decoration: none;
  margin: 0 5px;
}
.pagination-default .page-numbers:not(.dots):hover, .pagination-default .page-numbers:not(.dots):focus, .pagination-default .page-numbers.current {
  background: var(--col-gris);
  color: var(--col-blanc);
  transition: all .35s linear;
}
/*** Footer ***/
footer {
  padding: calc(var(--main-padding)/3) 0 calc(var(--main-padding) / 3);
  color: var(--col-blanc);
  position: relative;
}
footer .container-footer {
  border-top: solid 1px var(--col-blanc);
  padding-top: 30px;
}
footer .menu-footer {
  height: 100%;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
footer .menu-footer ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
}
footer .menu-footer ul li {
  padding: 0 15px;
  font-size: 14px;
  font-weight: 700;
}
footer .menu-footer ul li:first-child {
  padding-left: 0;
}
footer .menu-footer ul li:last-child {
  padding-right: 0;
}
footer a {
  text-decoration: none!important;
  color: var(--col-blanc);
}
footer a {
  color: rgba(var(--rgb-blanc),1)!important;
}
footer a:hover {
  color: rgba(var(--rgb-rouille),1)!important;
}
footer .container-footer .col-lg-6:last-child {
  text-align: right;
}

/*** Big screens ***/
@media (min-width:1500px) {
  .container {
    max-width:var(--width-container);
  }
}

/*** Responsive à l'envers **/

@media only screen and (max-width:1499px) {
  /*** Vars ***/
  :root {
    --size-h1: 70px;
    --size-h2: 40px;
    --size-h3: 24px;
    --size-h4: 22px;
    --size-txt-intro:  32px;
    --size-txt1: 18px;
    --size-txt2: 16px;
    --height-logo: 180px;
    --width-container: 1140px;
    --main-padding:  60px;
    --margin-block-image:  40px;
  }
}

@media only screen and (max-width:1199px) {
  /*** Vars ***/
  :root {
    --size-h1: 60px;
    --size-h2: 36px;
    --size-h3: 24px;
    --size-h4: 22px;
    --size-txt-intro: 26px;
    --size-txt1: 18px;
    --size-txt2: 16px;
    --height-logo: 180px;
    --width-container: 960px;
    --main-padding:  60px;
    --margin-block-image:  40px;
  }
}
@media only screen and (max-width: 991px) {
  /*** Vars ***/
  :root {
    --size-h1: 50px;
    --size-h2: 32px;
    --size-h3: 22px;
    --size-h4: 20px;
    --size-txt-intro: 24px;
    --size-txt1: 18px;
    --size-txt2: 16px;
    --height-logo: 180px;
    --width-container: 720px;
    --main-padding:  60px;
    --margin-block-image:  40px;
  }
  .homepage .section-presentation .intro {
    max-width: 80%;
  }
  .homepage .section-presentation .container-padding-right {
    padding-right: 15px;
    text-align: center;
  }
  .homepage .section-presentation .container-padding-right figure {
    max-width: 50%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (max-width: 767px) {
  /*** Vars ***/
  :root {
    --size-h1: 44px;
    --size-h2: 28px;
    --size-h3: 22px;
    --size-h4: 20px;
    --size-txt-intro: 24px;
    --size-txt1: 18px;
    --size-txt2: 16px;
    --height-logo: 180px;
    --width-container: 540px;
    --main-padding:  40px;
    --margin-block-image:  40px;
  }
  .homepage .section-presentation .intro {
    max-width: 100%;
  } 
  .liste-podcasts .bloc-podcast {
    flex-direction: column;
  } 
  .bloc-podcast .description {
    width: 100%;
    padding-top: 20px;
  }  
  footer .container-footer .col-lg-6:first-child ul {
    flex-wrap: wrap;
  }
  footer .container-footer .col-lg-6:last-child {
    text-align: left;
  }
  footer .container-footer .col-lg-6:last-child a {
    margin-top: 10px;
    display: inline-block;
  }
}
@media only screen and (max-width: 575px) {
  /*** Vars ***/
  :root {
    --size-h1: 40px;
    --size-h2: 24px;
    --size-h3: 22px;
    --size-h4: 20px;
    --size-txt-intro: 24px;
    --size-txt1: 18px;
    --size-txt2: 16px;
    --height-logo: 180px;
    --width-container: 100%;
    --main-padding:  40px;
    --margin-block-image:  40px;
  }
  .homepage .section-presentation .container-padding-right figure {
    max-width: 60%;
  }
}
@media only screen and (max-width: 499px) {
}
@media only screen and (max-width: 449px) {
  /*** Vars ***/
  :root {
    --size-h1: 40px;
    --size-h2: 20px;
    --size-h3: 20px;
    --size-h4: 20px;
    --size-txt-intro: 24px;
    --size-txt1: 16px;
    --size-txt2: 14px;
    --height-logo: 180px;
    --width-container: 100%;
    --main-padding:  40px;
    --margin-block-image:  40px;
  }
  .homepage .section-presentation .container-padding-right figure {
    max-width: 70%;
  }
}
@media only screen and (max-width: 399px) {
  .homepage .section-presentation .container-padding-right figure {
    max-width: 80%;
  }
}
@media only screen and (max-width: 359px) {
}
@media only screen and (max-height: 700px) {
}
@media only screen and (max-height: 640px) {
}

