@charset "UTF-8";
/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
@import url("https://fonts.googleapis.com/css2?family=Karla:wght@400;500;800&display=swap");
.hamburger {
  padding: 15px 15px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}

.hamburger:hover {
  opacity: 0.7;
}

.hamburger.is-active:hover {
  opacity: 0.7;
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: #000;
}

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 40px;
  height: 4px;
  background-color: #000;
  border-radius: 4px;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}

.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}

.hamburger-inner::before {
  top: -10px;
}

.hamburger-inner::after {
  bottom: -10px;
}

/*
   * 3DX
   */
.hamburger--3dx .hamburger-box {
  perspective: 80px;
}

.hamburger--3dx .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(180deg);
}

.hamburger--3dx.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dx.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DX Reverse
   */
.hamburger--3dx-r .hamburger-box {
  perspective: 80px;
}

.hamburger--3dx-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(-180deg);
}

.hamburger--3dx-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dx-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DY
   */
.hamburger--3dy .hamburger-box {
  perspective: 80px;
}

.hamburger--3dy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(-180deg);
}

.hamburger--3dy.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dy.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DY Reverse
   */
.hamburger--3dy-r .hamburger-box {
  perspective: 80px;
}

.hamburger--3dy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg);
}

.hamburger--3dy-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dy-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DXY
   */
.hamburger--3dxy .hamburger-box {
  perspective: 80px;
}

.hamburger--3dxy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dxy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg);
}

.hamburger--3dxy.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dxy.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DXY Reverse
   */
.hamburger--3dxy-r .hamburger-box {
  perspective: 80px;
}

.hamburger--3dxy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dxy-r .hamburger-inner::before, .hamburger--3dxy-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dxy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg);
}

.hamburger--3dxy-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dxy-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * Arrow
   */
.hamburger--arrow.is-active .hamburger-inner::before {
  transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

.hamburger--arrow.is-active .hamburger-inner::after {
  transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

/*
   * Arrow Right
   */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

/*
   * Arrow Alt
   */
.hamburger--arrowalt .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(-8px, -10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(-8px, 10px, 0) rotate(45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
   * Arrow Alt Right
   */
.hamburger--arrowalt-r .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt-r .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(8px, -10px, 0) rotate(45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(8px, 10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
   * Arrow Turn
   */
.hamburger--arrowturn.is-active .hamburger-inner {
  transform: rotate(-180deg);
}

.hamburger--arrowturn.is-active .hamburger-inner::before {
  transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

.hamburger--arrowturn.is-active .hamburger-inner::after {
  transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

/*
   * Arrow Turn Right
   */
.hamburger--arrowturn-r.is-active .hamburger-inner {
  transform: rotate(-180deg);
}

.hamburger--arrowturn-r.is-active .hamburger-inner::before {
  transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

.hamburger--arrowturn-r.is-active .hamburger-inner::after {
  transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

/*
   * Boring
   */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  transition-property: none;
}

.hamburger--boring.is-active .hamburger-inner {
  transform: rotate(45deg);
}

.hamburger--boring.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}

.hamburger--boring.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

/*
   * Collapse
   */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse .hamburger-inner::after {
  top: -20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}

.hamburger--collapse .hamburger-inner::before {
  transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--collapse.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}

.hamburger--collapse.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-90deg);
  transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Collapse Reverse
   */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse-r .hamburger-inner::after {
  top: -20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}

.hamburger--collapse-r .hamburger-inner::before {
  transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--collapse-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}

.hamburger--collapse-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Elastic
   */
.hamburger--elastic .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic .hamburger-inner::before {
  top: 10px;
  transition: opacity 0.125s 0.275s ease;
}

.hamburger--elastic .hamburger-inner::after {
  top: 20px;
  transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(135deg);
  transition-delay: 0.075s;
}

.hamburger--elastic.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}

.hamburger--elastic.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(-270deg);
  transition-delay: 0.075s;
}

/*
   * Elastic Reverse
   */
.hamburger--elastic-r .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic-r .hamburger-inner::before {
  top: 10px;
  transition: opacity 0.125s 0.275s ease;
}

.hamburger--elastic-r .hamburger-inner::after {
  top: 20px;
  transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-135deg);
  transition-delay: 0.075s;
}

.hamburger--elastic-r.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}

.hamburger--elastic-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(270deg);
  transition-delay: 0.075s;
}

/*
   * Emphatic
   */
.hamburger--emphatic {
  overflow: hidden;
}

.hamburger--emphatic .hamburger-inner {
  transition: background-color 0.125s 0.175s ease-in;
}

.hamburger--emphatic .hamburger-inner::before {
  left: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}

.hamburger--emphatic .hamburger-inner::after {
  top: 10px;
  right: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}

.hamburger--emphatic.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent !important;
}

.hamburger--emphatic.is-active .hamburger-inner::before {
  left: -80px;
  top: -80px;
  transform: translate3d(80px, 80px, 0) rotate(45deg);
  transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.hamburger--emphatic.is-active .hamburger-inner::after {
  right: -80px;
  top: -80px;
  transform: translate3d(-80px, 80px, 0) rotate(-45deg);
  transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
   * Emphatic Reverse
   */
.hamburger--emphatic-r {
  overflow: hidden;
}

.hamburger--emphatic-r .hamburger-inner {
  transition: background-color 0.125s 0.175s ease-in;
}

.hamburger--emphatic-r .hamburger-inner::before {
  left: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}

.hamburger--emphatic-r .hamburger-inner::after {
  top: 10px;
  right: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}

.hamburger--emphatic-r.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent !important;
}

.hamburger--emphatic-r.is-active .hamburger-inner::before {
  left: -80px;
  top: 80px;
  transform: translate3d(80px, -80px, 0) rotate(-45deg);
  transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.hamburger--emphatic-r.is-active .hamburger-inner::after {
  right: -80px;
  top: 80px;
  transform: translate3d(-80px, -80px, 0) rotate(45deg);
  transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
   * Minus
   */
.hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after {
  transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear;
}

.hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after {
  opacity: 0;
  transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear;
}

.hamburger--minus.is-active .hamburger-inner::before {
  top: 0;
}

.hamburger--minus.is-active .hamburger-inner::after {
  bottom: 0;
}

/*
   * Slider
   */
.hamburger--slider .hamburger-inner {
  top: 2px;
}

.hamburger--slider .hamburger-inner::before {
  top: 10px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}

.hamburger--slider .hamburger-inner::after {
  top: 20px;
}

.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--slider.is-active .hamburger-inner::before {
  transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
  opacity: 0;
}

.hamburger--slider.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(-90deg);
}

/*
   * Slider Reverse
   */
.hamburger--slider-r .hamburger-inner {
  top: 2px;
}

.hamburger--slider-r .hamburger-inner::before {
  top: 10px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}

.hamburger--slider-r .hamburger-inner::after {
  top: 20px;
}

.hamburger--slider-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-45deg);
}

.hamburger--slider-r.is-active .hamburger-inner::before {
  transform: rotate(45deg) translate3d(5.71429px, -6px, 0);
  opacity: 0;
}

.hamburger--slider-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(90deg);
}

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}

.hamburger--spin .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--spin.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}

.hamburger--spin.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Spin Reverse
   */
.hamburger--spin-r .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin-r .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}

.hamburger--spin-r .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin-r.is-active .hamburger-inner {
  transform: rotate(-225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--spin-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}

.hamburger--spin-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(90deg);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Spring
   */
.hamburger--spring .hamburger-inner {
  top: 2px;
  transition: background-color 0s 0.13s linear;
}

.hamburger--spring .hamburger-inner::before {
  top: 10px;
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring .hamburger-inner::after {
  top: 20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent !important;
}

.hamburger--spring.is-active .hamburger-inner::before {
  top: 0;
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--spring.is-active .hamburger-inner::after {
  top: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(-45deg);
}

/*
   * Spring Reverse
   */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring-r .hamburger-inner::after {
  top: -20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear;
}

.hamburger--spring-r .hamburger-inner::before {
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--spring-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear;
}

.hamburger--spring-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Stand
   */
.hamburger--stand .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
}

.hamburger--stand .hamburger-inner::before {
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand .hamburger-inner::after {
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand.is-active .hamburger-inner {
  transform: rotate(90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
}

.hamburger--stand.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--stand.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Stand Reverse
   */
.hamburger--stand-r .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
}

.hamburger--stand-r .hamburger-inner::before {
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand-r .hamburger-inner::after {
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand-r.is-active .hamburger-inner {
  transform: rotate(-90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
}

.hamburger--stand-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--stand-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze .hamburger-inner::before {
  transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}

.hamburger--squeeze .hamburger-inner::after {
  transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--squeeze.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}

.hamburger--squeeze.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Vortex
   */
.hamburger--vortex .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}

.hamburger--vortex .hamburger-inner::before {
  transition-property: top, opacity;
}

.hamburger--vortex .hamburger-inner::after {
  transition-property: bottom, transform;
}

.hamburger--vortex.is-active .hamburger-inner {
  transform: rotate(765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
  transition-delay: 0s;
}

.hamburger--vortex.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}

.hamburger--vortex.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(90deg);
}

/*
   * Vortex Reverse
   */
.hamburger--vortex-r .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}

.hamburger--vortex-r .hamburger-inner::before {
  transition-property: top, opacity;
}

.hamburger--vortex-r .hamburger-inner::after {
  transition-property: bottom, transform;
}

.hamburger--vortex-r.is-active .hamburger-inner {
  transform: rotate(-765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
  transition-delay: 0s;
}

.hamburger--vortex-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}

.hamburger--vortex-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

/******** GLOBAL *********/
/* style global */
/**/
/* body */
/**/
/* style formulaires */
/**/
/* style header */
/**/
/* style footer */
/**/
/* style banner */
/**/
/* style ouverture */
/**/
/* homepage */
/**/
/* recap & statut participation */
/**/
/* dotations --> Pas encore dispo sur le site builder */
/**/
html {
  position: relative;
  min-height: 100%;
}

.body-wrapper {
  margin: 0;
  background-color: #fff;
  background-image: none;
  background-size: auto;
}

a, button {
  -webkit-transition: all .2s linear 0s;
  -moz-transition: all .2s linear 0s;
  transition: all .2s linear 0s;
  color: inherit;
}

button:focus {
  outline: none;
}

h1 {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 800;
  font-style: normal;
  font-size: 30px;
  text-decoration: none;
  text-transform: uppercase;
  line-height: 1em;
  margin-bottom: 10px;
}

h2 {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  text-decoration: none;
  text-transform: uppercase;
  line-height: 1em;
}

h3 {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  text-decoration: none;
  text-transform: uppercase;
  line-height: 1em;
}

h4 {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 15px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.btn-wrapper {
  margin-bottom: 50px;
}

.btn {
  min-width: 350px;
  text-transform: uppercase;
  white-space: normal;
  padding: 20px 30px;
  margin: 0 25px;
}

.btn-primary, .btn-primary:not([href]):not([tabindex]) {
  color: #fff;
  background-color: #0047ba;
  border-color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 15px;
  text-decoration: none;
  line-height: 1em;
  text-transform: uppercase;
}

.btn-primary:hover,
.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show > .btn-primary.dropdown-toggle,
.btn-primary:not([href]):not([tabindex]):focus, .btn-primary:not([href]):not([tabindex]):hover {
  color: #fff;
  background-color: #0047ba;
  border-color: #0047ba;
  opacity: 0.9;
}

.btn-primary:not(:disabled):not(.disabled).active:focus, .btn-primary:not(:disabled):not(.disabled):active:focus, .show > .btn-primary.dropdown-toggle:focus,
.btn-secondary:not(:disabled):not(.disabled).active:focus, .btn-secondary:not(:disabled):not(.disabled):active:focus, .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: none;
}

.btn-secondary, .btn-secondary:not([href]):not([tabindex]) {
  color: #0047ba;
  background-color: #fff;
  border-color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 15px;
  text-decoration: none;
  text-transform: uppercase;
  line-height: 1em;
}

.btn-secondary:hover,
.btn-secondary:not(:disabled):not(.disabled).active, .btn-secondary:not(:disabled):not(.disabled):active, .show > .btn-secondary.dropdown-toggle,
.btn-secondary:not([href]):not([tabindex]):focus, .btn-secondary:not([href]):not([tabindex]):hover {
  color: #fff;
  background-color: #0047ba;
  border-color: #0047ba;
}

.btn-primary:focus, .btn-primary.focus, .btn-secondary:focus, .btn-secondary.focus {
  box-shadow: none;
}

.btn-square {
  border-radius: 0px;
}

.btn-mid {
  border-radius: 50px;
}

.btn-pills {
  border-radius: 50px;
}

.modal .modal-content {
  background-color: #fff;
  border-radius: 5px;
  border: none;
}

.modal .modal-header {
  border-bottom: none;
  padding-bottom: 0;
}

.modal .modal-header .modal-title {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  text-decoration: none;
  text-transform: none;
  line-height: 1.5em;
}

.modal .modal-header .close {
  color: #0047ba;
  opacity: 1;
  text-shadow: none;
}

.main-wrapper {
  padding-top: 50px;
}

.main-wrapper .title-wrapper {
  margin-bottom: 50px;
}

.main-wrapper .title-wrapper p {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.main-wrapper .text-wrapper {
  margin-bottom: 50px;
}

.main-wrapper .text-wrapper p {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.main-wrapper .text-wrapper a {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
  display: block;
  margin: 0 auto calc(50px - 30px) auto;
}

.main-wrapper .text-wrapper a:hover {
  text-decoration: underline;
}

.main-wrapper .upload-wrapper .col {
  margin-bottom: 20px;
}

.main-wrapper .upload-wrapper .col .file-input-wrapper {
  width: 100%;
  margin: 0;
}

.main-wrapper .upload-wrapper .col .file-input-name {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
  margin: 0;
  width: 100%;
  padding-top: 5px;
  text-align: center;
  display: block;
}

.main-wrapper .upload-wrapper .col .upload-description {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.main-wrapper .upload-wrapper .col .upload-description i {
  margin-right: 5px;
  margin-bottom: 0px;
  color: #0047ba;
}

.main-wrapper .upload-wrapper .col .upload-description a {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.main-wrapper .upload-wrapper .col .upload-description a:hover {
  text-decoration: underline;
}

.main-wrapper .upload-wrapper .col .upload-description a i {
  color: #0047ba;
}

.main-wrapper .upload-wrapper:last-child .col {
  margin-bottom: 0;
}

/******** END GLOBAL *********/
/******** HEADER / BANNER *********/
header {
  background-color: #fff;
  padding: 10px 0;
}

header .navbar {
  display: inline-block;
  margin-top: 0;
  padding: 0;
  width: 100%;
}

header .navbar .logo-wrapper {
  display: inline-block;
  margin: 0;
}

header .navbar .logo-wrapper img {
  height: 50px;
}

header .navbar .navbar-toggler {
  position: absolute;
  right: 0;
  top: 5px;
}

header .navbar li.active a {
  color: #0047ba;
}

header .navbar li.active a:hover, header .navbar li.active a:focus {
  text-decoration: none;
}

header .navbar .nav-link {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  font-size: 16px;
  text-decoration: none;
  line-height: 50px;
  margin-right: 10px;
  margin-left: 10px;
}

header .navbar .nav-link:hover, header .navbar .nav-link:focus {
  color: #0047ba;
}

header .navbar .navbar-toggler:focus, header .navbar .navbar-toggler:hover {
  outline: none;
}

header .navbar .hamburger-inner, header .navbar .hamburger-inner::before, header .navbar .hamburger-inner::after {
  background-color: #0047ba;
}

header .navbar .hamburger.is-active .hamburger-inner, header .navbar .hamburger.is-active .hamburger-inner::before, header .navbar .hamburger.is-active .hamburger-inner::after {
  background-color: #0047ba;
}

header .navbar .hamburger:hover {
  opacity: 1;
}

header .navbar-toggleable-md .navbar-collapse {
  width: initial;
  text-align: right;
  float: right;
}

header.header-left .navbar .logo-wrapper {
  float: none;
}

header.header-left .navbar .navbar-collapse {
  float: right;
}

header.header-left .navbar .navbar-toggler {
  left: inherit;
  right: 0;
}

header.header-right .navbar .logo-wrapper {
  float: right;
}

header.header-right .navbar .navbar-collapse {
  float: left;
}

header.header-right .navbar .navbar-toggler {
  left: 0;
  right: inherit;
}

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

header.header-center .navbar .logo-wrapper {
  float: none;
  margin-bottom: 20px;
}

header.header-center .navbar .navbar-collapse {
  float: none;
}

header.header-center .navbar .navbar-collapse ul {
  display: inline-block;
  margin: 0 auto;
}

header.header-center .navbar .navbar-collapse ul li {
  float: left;
}

header.header-center .navbar .navbar-collapse ul li .nav-link {
  line-height: 1em;
}

header.header-center .navbar .navbar-toggler {
  left: 0;
  right: inherit;
}

.banner-wrapper {
  background-color: #fff;
  background-image: none;
  background-size: auto;
  width: 100%;
  display: block;
}

.banner-wrapper img {
  width: 100%;
}

/******** END HEADER / BANNER *********/
/******** FOOTER *********/
footer {
  position: absolute;
  bottom: 0;
  width: 100%;
}

footer .footer-top {
  background: #0047ba;
  padding: 20px 0;
}

footer .footer-top .container {
  position: relative;
}

footer .footer-top .container ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

footer .footer-top .container ul li {
  display: inline-block;
  padding: 0 15px;
}

footer .footer-top .container ul li a {
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  text-decoration: none;
  text-transform: uppercase;
  line-height: 1em;
  padding: 0;
  color: #9fdded;
}

footer .footer-top .container ul li a:hover, footer .footer-top .container ul li a:focus {
  color: #fff;
}

footer .footer-top .container ul li:last-child {
  border-right: none;
}

footer .footer-bottom {
  background-color: #0047ba;
  padding: 20px 0;
}

footer .footer-bottom p {
  color: #9fdded;
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 13px;
  text-decoration: none;
  text-transform: none;
  line-height: 1.2em;
  padding: 0;
  margin: 0;
}

footer .footer-bottom p a {
  text-decoration: underline;
}

footer .footer-bottom p a:hover, footer .footer-bottom p a:focus {
  color: #9fdded;
}

footer.footer-left .footer-logo-wrapper {
  -ms-flex-order: -1;
  order: -1;
}

footer.footer-left .footer-mentions-wrapper {
  -ms-flex-order: 13;
  order: 13;
}

footer.footer-right .footer-logo-wrapper {
  -ms-flex-order: 13;
  order: 13;
}

footer.footer-right .footer-mentions-wrapper {
  -ms-flex-order: -1;
  order: -1;
}

/******** END FOOTER *********/
/******** HOMEPAGE *********/
.home-desc-wrapper {
  margin-bottom: 50px;
}

.home-desc-wrapper .num-list {
  color: #fff;
  background-color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 900;
  font-style: normal;
  font-size: 20px;
  text-decoration: none;
  text-transform: uppercase;
  line-height: 50px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: inline-block;
  margin-bottom: 20px;
  border-style: none;
  border-width: 2px;
  border-color: #f60;
}

.home-desc-wrapper p {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
  margin-top: 20px;
}

.counter-wrapper {
  margin-bottom: 50px;
}

.counter-wrapper p {
  margin-bottom: 0;
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 20px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.counter-wrapper p span {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 30px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

/******** END HOMEPAGE *********/
/******** FORMULAIRES (PARTICIPATION/CONTACT/SUIVI/OUBLI_REF) *********/
.form-wrapper .form-block-wrapper {
  margin-bottom: 50px;
  /** CHECKBOXES **/
  /** END CHECKBOXES **/
}

.form-wrapper .form-block-wrapper .form-title-wrapper {
  margin-bottom: 30px;
}

.form-wrapper .form-block-wrapper .form-title-wrapper .separator {
  background: #0047ba;
  max-width: 200px;
  margin: 10px 0 0 0;
}

.form-wrapper .form-block-wrapper .form-row .form-group {
  margin-bottom: 20px;
}

.form-wrapper .form-block-wrapper .form-row .form-group label {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
  padding-bottom: 10px;
}

.form-wrapper .form-block-wrapper .form-row .form-group .radios-wrapper .frb ~ .frb {
  margin-top: 0px;
}

.form-wrapper .form-block-wrapper .form-row .form-group .radios-wrapper .frb input[type="radio"]:empty ~ label span.frb-description {
  margin: 0px 0px 0px 20px;
}

.form-wrapper .form-block-wrapper .form-row .form-group .radios-wrapper label {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
  padding: 0 20px 0 5px;
}

.form-wrapper .form-block-wrapper .form-row .form-group input[type="text"], .form-wrapper .form-block-wrapper .form-row .form-group input[type="email"], .form-wrapper .form-block-wrapper .form-row .form-group input[type="number"], .form-wrapper .form-block-wrapper .form-row .form-group input[type="password"], .form-wrapper .form-block-wrapper .form-row .form-group select, .form-wrapper .form-block-wrapper .form-row .form-group textarea {
  border: 1px solid #0047ba;
  border-radius: 5px;
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.form-wrapper .form-block-wrapper .form-row .form-group .input-qty {
  max-width: 80px;
}

.form-wrapper .form-block-wrapper .form-row .form-group .buttons-label {
  opacity: 0;
}

.form-wrapper .form-block-wrapper .form-row .form-group .btn-add {
  min-width: auto;
  margin: 0px 0 0 0;
  padding: 5px;
  height: calc(1.5em + .75rem + 0px);
  width: calc(1.5em + .75rem + 0px);
}

.form-wrapper .form-block-wrapper .form-row:last-child .form-group {
  margin-bottom: 0px;
}

.form-wrapper .form-block-wrapper .frb-group {
  margin: 0;
  text-align: left;
}

.form-wrapper .form-block-wrapper .frb ~ .frb {
  margin-top: 20px;
}

.form-wrapper .form-block-wrapper .frb input[type="radio"]:empty,
.form-wrapper .form-block-wrapper .frb input[type="checkbox"]:empty {
  display: none;
}

.form-wrapper .form-block-wrapper .frb input[type="radio"] ~ label:before,
.form-wrapper .form-block-wrapper .frb input[type="checkbox"] ~ label:before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400;
  content: '\f0c8';
  position: absolute;
  top: -1px;
  margin-top: 0;
  left: 0;
  font-size: 18px;
  color: #0047ba;
}

.form-wrapper .form-block-wrapper .frb.is-invalid input[type="radio"] ~ label:before,
.form-wrapper .form-block-wrapper .frb.is-invalid input[type="checkbox"] ~ label:before {
  color: #ff0000;
}

.form-wrapper .form-block-wrapper .frb input[type="radio"]:checked ~ label:before,
.form-wrapper .form-block-wrapper .frb input[type="checkbox"]:checked ~ label:before {
  content: '\f14a';
}

.form-wrapper .form-block-wrapper .frb input[type="radio"] ~ label,
.form-wrapper .form-block-wrapper .frb input[type="checkbox"] ~ label {
  position: relative;
  cursor: pointer;
  width: 100%;
  margin-bottom: 0;
}

.form-wrapper .form-block-wrapper .frb.frb-default input[type="radio"]:checked ~ label,
.form-wrapper .form-block-wrapper .frb.frb-default input[type="checkbox"]:checked ~ label {
  color: #333;
}

.form-wrapper .form-block-wrapper .frb input[type="radio"]:empty ~ label span,
.form-wrapper .form-block-wrapper .frb input[type="checkbox"]:empty ~ label span {
  display: inline-block;
}

.form-wrapper .form-block-wrapper .frb input[type="radio"]:empty ~ label span.frb-description,
.form-wrapper .form-block-wrapper .frb input[type="checkbox"]:empty ~ label span.frb-description {
  margin: 0px 0px 0px 30px;
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.form-wrapper .form-block-wrapper .frb input[type="radio"]:empty ~ label span.frb-description a,
.form-wrapper .form-block-wrapper .frb input[type="checkbox"]:empty ~ label span.frb-description a {
  text-decoration: underline;
}

.form-wrapper .form-block-wrapper .frb input[type="radio"]:empty ~ label span.frb-description a:hover,
.form-wrapper .form-block-wrapper .frb input[type="checkbox"]:empty ~ label span.frb-description a:hover {
  color: #0047ba;
}

.form-wrapper .questions-bloc {
  margin-bottom: calc(50px - 20px);
  /* Radio buttons questionnaire */
  /**/
}

.form-wrapper .questions-bloc .question-wrapper {
  margin-bottom: 10px;
}

.form-wrapper .questions-bloc .question-wrapper .form-group {
  margin-bottom: 0;
}

.form-wrapper .questions-bloc .question-wrapper .form-group .row label {
  padding-bottom: 10px;
}

.form-wrapper .questions-bloc .question-wrapper .form-group .row label input[type="radio"] {
  display: none;
}

.form-wrapper .questions-bloc .question-wrapper .form-group .row label input[type="radio"]:checked + .box {
  background-color: #0047ba;
}

.form-wrapper .questions-bloc .question-wrapper .form-group .row label input[type="radio"]:checked + .box span {
  color: #fff;
}

.form-wrapper .questions-bloc .question-wrapper .form-group .row label .box {
  color: #0047ba;
  background-color: none;
  border: 1px solid #0047ba;
  border-radius: 5px;
  width: 100%;
  transition: all .2s linear 0s;
  will-change: transition;
  text-align: center;
  cursor: pointer;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 60px;
}

.form-wrapper .questions-bloc .question-wrapper .form-group .row label .box span {
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.form-wrapper .questions-bloc .question-wrapper .form-group .row .slider {
  width: 100%;
}

.form-wrapper .questions-bloc .question-wrapper .form-group .row .slider .slider-selection.tick-slider-selection, .form-wrapper .questions-bloc .question-wrapper .form-group .row .slider .slider-tick.in-selection, .form-wrapper .questions-bloc .question-wrapper .form-group .row .slider .slider-handle {
  background-color: #0047ba;
  background-image: none;
}

.form-wrapper .questions-bloc .question-wrapper .form-group .row .slider .slider-tick-label-container .slider-tick-label {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.form-wrapper.form-left .form-title-wrapper {
  text-align: left;
}

.form-wrapper.form-left .form-title-wrapper .separator {
  margin: 10px 0 0 0;
}

.form-wrapper.form-center .form-title-wrapper {
  text-align: center;
}

.form-wrapper.form-center .form-title-wrapper .separator {
  margin: 10px auto 0 auto;
}

.form-wrapper.form-center .question-wrapper .form-group .row {
  justify-content: center !important;
}

/******** END FORMULAIRES (PARTICIPATION/CONTACT/SUIVI/OUBLI_REF) *********/
/******** RÉCAPITULATIF *********/
.recap-block-wrapper {
  margin-bottom: 50px;
}

.recap-block-wrapper .recap-title-wrapper {
  margin-bottom: 30px;
}

.recap-block-wrapper .recap-title-wrapper .separator {
  background: #0047ba;
  max-width: 200px;
  margin: 10px 0 0 0;
}

.recap-block-wrapper p {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1.5em;
}

.recap-block-wrapper p strong {
  font-weight: 700;
}

.recap-block-wrapper .upload-wrapper .col {
  margin-bottom: 20px;
}

.recap-block-wrapper .upload-wrapper .col .btn {
  width: 100%;
  margin: 0;
}

.recap-block-wrapper .upload-wrapper .col .upload-description {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.recap-block-wrapper .upload-wrapper .col .upload-description i {
  margin-right: 5px;
  margin-bottom: 5px;
}

.recap-block-wrapper .upload-wrapper:last-child .col {
  margin-bottom: 0;
}

.ko-wrapper .recap-title-wrapper h2 {
  color: #ff0000;
}

.ko-wrapper .recap-title-wrapper .separator {
  background: #ff0000;
}

.ko-wrapper .upload-wrapper .col .upload-description {
  color: #ff0000;
}

.ko-wrapper .upload-wrapper .col .file-input-error {
  color: #ff0000;
  border-color: #ff0000;
}

.ko-wrapper .upload-wrapper .col .file-input-error:hover, .ko-wrapper .upload-wrapper .col .file-input-error:focus, .ko-wrapper .upload-wrapper .col .file-input-error:active {
  color: #fff;
  border-color: #ff0000;
  background-color: #ff0000;
}

.wait-wrapper .recap-title-wrapper h2 {
  color: #ffa600;
}

.wait-wrapper .recap-title-wrapper .separator {
  background: #ffa600;
}

.wait-wrapper p strong {
  color: #ffa600;
}

.ok-wrapper .recap-title-wrapper h2 {
  color: #02ad18;
}

.ok-wrapper .recap-title-wrapper .separator {
  background: #02ad18;
}

.ok-wrapper p strong {
  color: #02ad18;
}

/******** END RÉCAPITULATIF *********/
/******** DOTATIONS *********/
.dotations-wrapper {
  margin-bottom: 50px;
}

.dotations-wrapper .col {
  margin-bottom: 30px;
}

.dotations-wrapper .col .dot-wrapper {
  background-color: #fff;
  border-radius: 5px;
  border: 20px solid #eee;
  padding: 20px;
  height: 100%;
}

.dotations-wrapper .col .dot-wrapper .dot-infos {
  padding: 0;
}

.dotations-wrapper .col .dot-wrapper .dot-infos p {
  color: #c81900;
  font-family: "Karla", sans-serif;
  font-weight: 700;
  font-size: 14px;
  font-style: normal;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.dotations-wrapper .col .dot-wrapper .dot-infos p span {
  color: #c81900;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-size: 12px;
  font-style: italic;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

/******** END DOTATIONS *********/
/******** MODALITÉS ********/
.modalites-wrapper {
  margin-bottom: 50px;
}

.modalites-wrapper h3, .modalites-wrapper h4, .modalites-wrapper p, .modalites-wrapper ol, .modalites-wrapper ul {
  margin-bottom: 20px;
}

.modalites-wrapper ol {
  list-style: decimal;
  padding-left: 15px;
}

.modalites-wrapper p, .modalites-wrapper ol li, .modalites-wrapper ul li {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1.3em;
}

.modalites-wrapper p strong, .modalites-wrapper ol li strong, .modalites-wrapper ul li strong {
  font-weight: bolder;
}

.modalites-wrapper a {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  text-decoration: none;
  text-transform: none;
  line-height: 1em;
}

.modalites-wrapper a:hover {
  text-decoration: underline;
}

/******** END MODALITÉS ********/
/******** OPEN/CLOSE PAGES ********/
.open-close-wrapper {
  margin-bottom: 50px;
}

.open-close-wrapper p {
  color: #0047ba;
  font-family: "Karla", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  text-decoration: none;
  text-transform: none;
  line-height: 1.5em;
}

.open-close-wrapper p strong {
  font-weight: bolder;
}

/******** END OPEN/CLOSE PAGES ********/
/************* RESPONSIVE **************/
/* 4K and over */
/* Laptop L */
@media screen and (max-width: 1440px) {
  .upload-wrapper .col .btn {
    min-width: auto;
  }
}

/* Laptop M */
@media screen and (max-width: 991px) {
  .navbar {
    width: 100%;
  }
  header .navbar-toggleable-md .show,
  header .navbar-toggleable-md .collapsing {
    display: inline-block;
    width: 100%;
    text-align: center;
  }
  header .navbar-nav {
    display: inline-block;
  }
  header .navbar li {
    display: table-cell;
  }
  header .navbar li .nav-link {
    line-height: 1em;
  }
  .btn-wrapper .btn:first-child {
    margin-bottom: 20px;
  }
}

/* Tablet */
@media screen and (max-width: 767px) {
  header.header-left .navbar .navbar-collapse {
    margin-top: 30px;
  }
  footer.footer-left .footer-bottom img {
    margin-bottom: 20px;
  }
  footer.footer-right .footer-bottom img {
    margin-top: 20px;
  }
  .form-wrapper .form-block-wrapper .form-row:last-child .form-group {
    margin-bottom: 20px;
  }
  .form-wrapper .form-block-wrapper .form-row:last-child .form-group:last-child {
    margin-bottom: 0;
  }
  .form-wrapper .form-block-wrapper .upload-wrapper:last-child .col,
  .recap-block-wrapper .upload-wrapper:last-child .col {
    margin-bottom: 20px;
  }
  .form-wrapper .form-block-wrapper .upload-wrapper:last-child .col:last-child,
  .recap-block-wrapper .upload-wrapper:last-child .col:last-child {
    margin-bottom: 0;
  }
  .form-wrapper .form-block-wrapper .form-row .form-group .buttons-label {
    display: none;
  }
}

@media screen and (max-width: 575px) {
  .banner-wrapper {
    padding: 0;
  }
  .btn-wrapper .btn {
    width: 100%;
    min-width: auto;
    margin: 0;
  }
}

@media screen and (max-width: 480px) {
  header .navbar-nav {
    width: 100%;
  }
  header .navbar-nav li {
    width: 100%;
    display: block;
    border-right: none;
  }
  footer .footer-top .container ul li {
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
  }
  footer .footer-top .container ul li:last-child {
    margin-bottom: 0;
  }
}

/* Mobile L */
/* Mobile M */
/* Mobile S */
