@charset "UTF-8";
/* ---------------------------------------------------------------------------- */
/* Imports */
/* ---------------------------------------------------------------------------- */
.background-color-main {
  background-color: #184b59 !important;
}

.text-color-main {
  color: #184b59 !important;
}

.border-color-main {
  border: 1px solid #184b59 !important;
}

.background-color-secondary {
  background-color: #89a8d7 !important;
}

.text-color-secondary {
  color: #89a8d7 !important;
}

.border-color-secondary {
  border: 1px solid #89a8d7 !important;
}

.background-color-white {
  background-color: #FEFEFE !important;
}

.text-color-white {
  color: #FEFEFE !important;
}

.border-color-white {
  border: 1px solid #FEFEFE !important;
}

.background-color-black {
  background-color: #000000 !important;
}

.text-color-black {
  color: #000000 !important;
}

.border-color-black {
  border: 1px solid #000000 !important;
}

.background-color-border {
  background-color: #D7D7D7 !important;
}

.text-color-border {
  color: #D7D7D7 !important;
}

.border-color-border {
  border: 1px solid #D7D7D7 !important;
}

:root {
  --fw-thin: 100;
  --fw-extralight: 200;
  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-extrabold: 800;
  --fw-black: 900;
  --width-full: 100%;
  --width-large: 1552px;
  --width-medium: 1160px;
  --width-small: 900px;
  --font-main: 'Sora', sans-serif;
  --font-secondary: 'Sora', sans-serif;
  --size: clamp(10rem, 1rem + 40vmin, 30rem);
  --gap: calc(var(--size) / 14);
  --duration: 60s;
  --scroll-start: 0;
  --scroll-end: calc(-100% - var(--gap));
}

.display-block {
  display: block;
}

.display-none {
  display: none;
}

.display-flex {
  display: flex;
}

.display-inlineflex {
  display: inline-flex;
}

.justify-content-center {
  justify-content: center;
}

.justify-content-start {
  justify-content: start;
}

.justify-content-end {
  justify-content: end;
}

.flex-direction-column {
  flex-direction: column;
}

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

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

.overflow-hidden {
  overflow: hidden;
}

.aspect-1x1 {
  aspect-ratio: 1/1;
}

.aspect-3x4 {
  aspect-ratio: 3/4;
}

.aspect-4x3 {
  aspect-ratio: 4/3;
}

.aspect-16x9 {
  aspect-ratio: 16/9;
}

.aspect-60x43 {
  aspect-ratio: 60/43;
}

.aspect-60x50 {
  aspect-ratio: 60/50;
}

.aspect-86x75 {
  aspect-ratio: 86/75;
}

.aspect-98x115 {
  aspect-ratio: 98/115;
}

.aspect-257x140 {
  aspect-ratio: 257/140;
}

.aspect-615x245 {
  aspect-ratio: 615/245;
}

.aspect-auto {
  aspect-ratio: auto;
}

.width-25 {
  width: 25%;
}

.width-33 {
  width: 33.3333%;
}

.width-50 {
  width: 50%;
}

.width-75 {
  width: 75%;
}

.width-100 {
  width: 100%;
}

@media (min-width: 576px) {
  .display-sm-block {
    display: block;
  }
  .display-sm-none {
    display: none;
  }
  .display-sm-flex {
    display: flex;
  }
  .display-sm-inlineflex {
    display: inline-flex;
  }
  .justify-content-sm-center {
    justify-content: center;
  }
  .justify-content-sm-start {
    justify-content: start;
  }
  .justify-content-sm-end {
    justify-content: end;
  }
  .flex-direction-sm-column {
    flex-direction: column;
  }
  .align-items-sm-center {
    align-items: center;
  }
  .text-align-sm-center {
    text-align: center;
  }
  .overflow-sm-hidden {
    overflow: hidden;
  }
  .aspect-sm-1x1 {
    aspect-ratio: 1/1;
  }
  .aspect-sm-3x4 {
    aspect-ratio: 3/4;
  }
  .aspect-sm-4x3 {
    aspect-ratio: 4/3;
  }
  .aspect-sm-16x9 {
    aspect-ratio: 16/9;
  }
  .aspect-sm-60x43 {
    aspect-ratio: 60/43;
  }
  .aspect-sm-60x50 {
    aspect-ratio: 60/50;
  }
  .aspect-sm-86x75 {
    aspect-ratio: 86/75;
  }
  .aspect-sm-98x115 {
    aspect-ratio: 98/115;
  }
  .aspect-sm-257x140 {
    aspect-ratio: 257/140;
  }
  .aspect-sm-615x245 {
    aspect-ratio: 615/245;
  }
  .aspect-sm-auto {
    aspect-ratio: auto;
  }
  .width-sm-25 {
    width: 25%;
  }
  .width-sm-33 {
    width: 33.3333%;
  }
  .width-sm-50 {
    width: 50%;
  }
  .width-sm-75 {
    width: 75%;
  }
  .width-sm-100 {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .display-md-block {
    display: block;
  }
  .display-md-none {
    display: none;
  }
  .display-md-flex {
    display: flex;
  }
  .display-md-inlineflex {
    display: inline-flex;
  }
  .justify-content-md-center {
    justify-content: center;
  }
  .justify-content-md-start {
    justify-content: start;
  }
  .justify-content-md-end {
    justify-content: end;
  }
  .flex-direction-md-column {
    flex-direction: column;
  }
  .align-items-md-center {
    align-items: center;
  }
  .text-align-md-center {
    text-align: center;
  }
  .overflow-md-hidden {
    overflow: hidden;
  }
  .aspect-md-1x1 {
    aspect-ratio: 1/1;
  }
  .aspect-md-3x4 {
    aspect-ratio: 3/4;
  }
  .aspect-md-4x3 {
    aspect-ratio: 4/3;
  }
  .aspect-md-16x9 {
    aspect-ratio: 16/9;
  }
  .aspect-md-60x43 {
    aspect-ratio: 60/43;
  }
  .aspect-md-60x50 {
    aspect-ratio: 60/50;
  }
  .aspect-md-86x75 {
    aspect-ratio: 86/75;
  }
  .aspect-md-98x115 {
    aspect-ratio: 98/115;
  }
  .aspect-md-257x140 {
    aspect-ratio: 257/140;
  }
  .aspect-md-615x245 {
    aspect-ratio: 615/245;
  }
  .aspect-md-auto {
    aspect-ratio: auto;
  }
  .width-md-25 {
    width: 25%;
  }
  .width-md-33 {
    width: 33.3333%;
  }
  .width-md-50 {
    width: 50%;
  }
  .width-md-75 {
    width: 75%;
  }
  .width-md-100 {
    width: 100%;
  }
}
@media (min-width: 992px) {
  .display-lg-block {
    display: block;
  }
  .display-lg-none {
    display: none;
  }
  .display-lg-flex {
    display: flex;
  }
  .display-lg-inlineflex {
    display: inline-flex;
  }
  .justify-content-lg-center {
    justify-content: center;
  }
  .justify-content-lg-start {
    justify-content: start;
  }
  .justify-content-lg-end {
    justify-content: end;
  }
  .flex-direction-lg-column {
    flex-direction: column;
  }
  .align-items-lg-center {
    align-items: center;
  }
  .text-align-lg-center {
    text-align: center;
  }
  .overflow-lg-hidden {
    overflow: hidden;
  }
  .aspect-lg-1x1 {
    aspect-ratio: 1/1;
  }
  .aspect-lg-3x4 {
    aspect-ratio: 3/4;
  }
  .aspect-lg-4x3 {
    aspect-ratio: 4/3;
  }
  .aspect-lg-16x9 {
    aspect-ratio: 16/9;
  }
  .aspect-lg-60x43 {
    aspect-ratio: 60/43;
  }
  .aspect-lg-60x50 {
    aspect-ratio: 60/50;
  }
  .aspect-lg-86x75 {
    aspect-ratio: 86/75;
  }
  .aspect-lg-98x115 {
    aspect-ratio: 98/115;
  }
  .aspect-lg-257x140 {
    aspect-ratio: 257/140;
  }
  .aspect-lg-615x245 {
    aspect-ratio: 615/245;
  }
  .aspect-lg-auto {
    aspect-ratio: auto;
  }
  .width-lg-25 {
    width: 25%;
  }
  .width-lg-33 {
    width: 33.3333%;
  }
  .width-lg-50 {
    width: 50%;
  }
  .width-lg-75 {
    width: 75%;
  }
  .width-lg-100 {
    width: 100%;
  }
}
@media (min-width: 1200px) {
  .display-xl-block {
    display: block;
  }
  .display-xl-none {
    display: none;
  }
  .display-xl-flex {
    display: flex;
  }
  .display-xl-inlineflex {
    display: inline-flex;
  }
  .justify-content-xl-center {
    justify-content: center;
  }
  .justify-content-xl-start {
    justify-content: start;
  }
  .justify-content-xl-end {
    justify-content: end;
  }
  .flex-direction-xl-column {
    flex-direction: column;
  }
  .align-items-xl-center {
    align-items: center;
  }
  .text-align-xl-center {
    text-align: center;
  }
  .overflow-xl-hidden {
    overflow: hidden;
  }
  .aspect-xl-1x1 {
    aspect-ratio: 1/1;
  }
  .aspect-xl-3x4 {
    aspect-ratio: 3/4;
  }
  .aspect-xl-4x3 {
    aspect-ratio: 4/3;
  }
  .aspect-xl-16x9 {
    aspect-ratio: 16/9;
  }
  .aspect-xl-60x43 {
    aspect-ratio: 60/43;
  }
  .aspect-xl-60x50 {
    aspect-ratio: 60/50;
  }
  .aspect-xl-86x75 {
    aspect-ratio: 86/75;
  }
  .aspect-xl-98x115 {
    aspect-ratio: 98/115;
  }
  .aspect-xl-257x140 {
    aspect-ratio: 257/140;
  }
  .aspect-xl-615x245 {
    aspect-ratio: 615/245;
  }
  .aspect-xl-auto {
    aspect-ratio: auto;
  }
  .width-xl-25 {
    width: 25%;
  }
  .width-xl-33 {
    width: 33.3333%;
  }
  .width-xl-50 {
    width: 50%;
  }
  .width-xl-75 {
    width: 75%;
  }
  .width-xl-100 {
    width: 100%;
  }
}
@media (min-width: 1400px) {
  .display-xxl-block {
    display: block;
  }
  .display-xxl-none {
    display: none;
  }
  .display-xxl-flex {
    display: flex;
  }
  .display-xxl-inlineflex {
    display: inline-flex;
  }
  .justify-content-xxl-center {
    justify-content: center;
  }
  .justify-content-xxl-start {
    justify-content: start;
  }
  .justify-content-xxl-end {
    justify-content: end;
  }
  .flex-direction-xxl-column {
    flex-direction: column;
  }
  .align-items-xxl-center {
    align-items: center;
  }
  .text-align-xxl-center {
    text-align: center;
  }
  .overflow-xxl-hidden {
    overflow: hidden;
  }
  .aspect-xxl-1x1 {
    aspect-ratio: 1/1;
  }
  .aspect-xxl-3x4 {
    aspect-ratio: 3/4;
  }
  .aspect-xxl-4x3 {
    aspect-ratio: 4/3;
  }
  .aspect-xxl-16x9 {
    aspect-ratio: 16/9;
  }
  .aspect-xxl-60x43 {
    aspect-ratio: 60/43;
  }
  .aspect-xxl-60x50 {
    aspect-ratio: 60/50;
  }
  .aspect-xxl-86x75 {
    aspect-ratio: 86/75;
  }
  .aspect-xxl-98x115 {
    aspect-ratio: 98/115;
  }
  .aspect-xxl-257x140 {
    aspect-ratio: 257/140;
  }
  .aspect-xxl-615x245 {
    aspect-ratio: 615/245;
  }
  .aspect-xxl-auto {
    aspect-ratio: auto;
  }
  .width-xxl-25 {
    width: 25%;
  }
  .width-xxl-33 {
    width: 33.3333%;
  }
  .width-xxl-50 {
    width: 50%;
  }
  .width-xxl-75 {
    width: 75%;
  }
  .width-xxl-100 {
    width: 100%;
  }
}
.img-ratio {
  overflow: hidden;
}
.img-ratio img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}

.ls-tight {
  letter-spacing: -0.02em;
}
@media (min-width: 768px) {
  .ls-tight {
    letter-spacing: -0.02em;
  }
}
@media (min-width: 1200px) {
  .ls-tight {
    letter-spacing: -0.02em;
  }
}

.ls-normal {
  letter-spacing: 0;
}
@media (min-width: 768px) {
  .ls-normal {
    letter-spacing: 0;
  }
}
@media (min-width: 1200px) {
  .ls-normal {
    letter-spacing: 0;
  }
}

.ls-wide {
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .ls-wide {
    letter-spacing: 0.05em;
  }
}
@media (min-width: 1200px) {
  .ls-wide {
    letter-spacing: 0.05em;
  }
}

.ls-extra {
  letter-spacing: 0.06em;
}
@media (min-width: 768px) {
  .ls-extra {
    letter-spacing: 0.08em;
  }
}
@media (min-width: 1200px) {
  .ls-extra {
    letter-spacing: 0.1em;
  }
}

.lh-tight {
  line-height: 1.1 !important;
}
@media (min-width: 576px) {
  .lh-tight {
    line-height: 1.1 !important;
  }
}
@media (min-width: 1200px) {
  .lh-tight {
    line-height: 1.1 !important;
  }
}

.lh-normal {
  line-height: 1.35 !important;
}
@media (min-width: 576px) {
  .lh-normal {
    line-height: 1.35 !important;
  }
}
@media (min-width: 1200px) {
  .lh-normal {
    line-height: 1.35 !important;
  }
}

.lh-relaxed {
  line-height: 1.75 !important;
}
@media (min-width: 576px) {
  .lh-relaxed {
    line-height: 1.75 !important;
  }
}
@media (min-width: 1200px) {
  .lh-relaxed {
    line-height: 1.75 !important;
  }
}

.lh-extra {
  line-height: 1.6 !important;
}
@media (min-width: 576px) {
  .lh-extra {
    line-height: 1.8 !important;
  }
}
@media (min-width: 1200px) {
  .lh-extra {
    line-height: 2 !important;
  }
}

.lh-custom-1 {
  line-height: 1 !important;
}
@media (min-width: 576px) {
  .lh-custom-1 {
    line-height: 1 !important;
  }
}
@media (min-width: 1200px) {
  .lh-custom-1 {
    line-height: 1 !important;
  }
}

.lh-custom-12 {
  line-height: 1.2 !important;
}
@media (min-width: 576px) {
  .lh-custom-12 {
    line-height: 1.2 !important;
  }
}
@media (min-width: 1200px) {
  .lh-custom-12 {
    line-height: 1.2 !important;
  }
}

.lh-custom-15 {
  line-height: 1.5 !important;
}
@media (min-width: 576px) {
  .lh-custom-15 {
    line-height: 1.5 !important;
  }
}
@media (min-width: 1200px) {
  .lh-custom-15 {
    line-height: 1.5 !important;
  }
}

.lh-custom-18-14 {
  line-height: 1.4 !important;
}
@media (min-width: 576px) {
  .lh-custom-18-14 {
    line-height: 1.6 !important;
  }
}
@media (min-width: 1200px) {
  .lh-custom-18-14 {
    line-height: 1.8 !important;
  }
}

.spacer-0-top {
  padding-top: clamp(0px, 0vw, 0px);
}

.spacer-0-bottom {
  padding-bottom: clamp(0px, 0vw, 0px);
}

.spacer-0-y {
  padding-top: clamp(0px, 0vw, 0px);
  padding-bottom: clamp(0px, 0vw, 0px);
}

.spacer-0-m-top {
  margin-top: clamp(0px, 0vw, 0px);
}

.spacer-0-m-bottom {
  margin-bottom: clamp(0px, 0vw, 0px);
}

.spacer-0-m-y {
  margin-top: clamp(0px, 0vw, 0px);
  margin-bottom: clamp(0px, 0vw, 0px);
}

.spacer-4-top {
  padding-top: clamp(4px, 0.2083333333vw, 4px);
}

.spacer-4-bottom {
  padding-bottom: clamp(4px, 0.2083333333vw, 4px);
}

.spacer-4-y {
  padding-top: clamp(4px, 0.2083333333vw, 4px);
  padding-bottom: clamp(4px, 0.2083333333vw, 4px);
}

.spacer-4-m-top {
  margin-top: clamp(4px, 0.2083333333vw, 4px);
}

.spacer-4-m-bottom {
  margin-bottom: clamp(4px, 0.2083333333vw, 4px);
}

.spacer-4-m-y {
  margin-top: clamp(4px, 0.2083333333vw, 4px);
  margin-bottom: clamp(4px, 0.2083333333vw, 4px);
}

.spacer-6-top {
  padding-top: clamp(6px, 0.3125vw, 6px);
}

.spacer-6-bottom {
  padding-bottom: clamp(6px, 0.3125vw, 6px);
}

.spacer-6-y {
  padding-top: clamp(6px, 0.3125vw, 6px);
  padding-bottom: clamp(6px, 0.3125vw, 6px);
}

.spacer-6-m-top {
  margin-top: clamp(6px, 0.3125vw, 6px);
}

.spacer-6-m-bottom {
  margin-bottom: clamp(6px, 0.3125vw, 6px);
}

.spacer-6-m-y {
  margin-top: clamp(6px, 0.3125vw, 6px);
  margin-bottom: clamp(6px, 0.3125vw, 6px);
}

.spacer-8-top {
  padding-top: clamp(8px, 0.4166666667vw, 8px);
}

.spacer-8-bottom {
  padding-bottom: clamp(8px, 0.4166666667vw, 8px);
}

.spacer-8-y {
  padding-top: clamp(8px, 0.4166666667vw, 8px);
  padding-bottom: clamp(8px, 0.4166666667vw, 8px);
}

.spacer-8-m-top {
  margin-top: clamp(8px, 0.4166666667vw, 8px);
}

.spacer-8-m-bottom {
  margin-bottom: clamp(8px, 0.4166666667vw, 8px);
}

.spacer-8-m-y {
  margin-top: clamp(8px, 0.4166666667vw, 8px);
  margin-bottom: clamp(8px, 0.4166666667vw, 8px);
}

.spacer-10-top {
  padding-top: clamp(10px, 0.5208333333vw, 10px);
}

.spacer-10-bottom {
  padding-bottom: clamp(10px, 0.5208333333vw, 10px);
}

.spacer-10-y {
  padding-top: clamp(10px, 0.5208333333vw, 10px);
  padding-bottom: clamp(10px, 0.5208333333vw, 10px);
}

.spacer-10-m-top {
  margin-top: clamp(10px, 0.5208333333vw, 10px);
}

.spacer-10-m-bottom {
  margin-bottom: clamp(10px, 0.5208333333vw, 10px);
}

.spacer-10-m-y {
  margin-top: clamp(10px, 0.5208333333vw, 10px);
  margin-bottom: clamp(10px, 0.5208333333vw, 10px);
}

.spacer-12-top {
  padding-top: clamp(12px, 0.625vw, 12px);
}

.spacer-12-bottom {
  padding-bottom: clamp(12px, 0.625vw, 12px);
}

.spacer-12-y {
  padding-top: clamp(12px, 0.625vw, 12px);
  padding-bottom: clamp(12px, 0.625vw, 12px);
}

.spacer-12-m-top {
  margin-top: clamp(12px, 0.625vw, 12px);
}

.spacer-12-m-bottom {
  margin-bottom: clamp(12px, 0.625vw, 12px);
}

.spacer-12-m-y {
  margin-top: clamp(12px, 0.625vw, 12px);
  margin-bottom: clamp(12px, 0.625vw, 12px);
}

.spacer-16-top {
  padding-top: clamp(16px, 0.8333333333vw, 16px);
}

.spacer-16-bottom {
  padding-bottom: clamp(16px, 0.8333333333vw, 16px);
}

.spacer-16-y {
  padding-top: clamp(16px, 0.8333333333vw, 16px);
  padding-bottom: clamp(16px, 0.8333333333vw, 16px);
}

.spacer-16-m-top {
  margin-top: clamp(16px, 0.8333333333vw, 16px);
}

.spacer-16-m-bottom {
  margin-bottom: clamp(16px, 0.8333333333vw, 16px);
}

.spacer-16-m-y {
  margin-top: clamp(16px, 0.8333333333vw, 16px);
  margin-bottom: clamp(16px, 0.8333333333vw, 16px);
}

.spacer-24-top {
  padding-top: clamp(24px, 1.25vw, 24px);
}

.spacer-24-bottom {
  padding-bottom: clamp(24px, 1.25vw, 24px);
}

.spacer-24-y {
  padding-top: clamp(24px, 1.25vw, 24px);
  padding-bottom: clamp(24px, 1.25vw, 24px);
}

.spacer-24-m-top {
  margin-top: clamp(24px, 1.25vw, 24px);
}

.spacer-24-m-bottom {
  margin-bottom: clamp(24px, 1.25vw, 24px);
}

.spacer-24-m-y {
  margin-top: clamp(24px, 1.25vw, 24px);
  margin-bottom: clamp(24px, 1.25vw, 24px);
}

.spacer-32-top {
  padding-top: clamp(32px, 1.6666666667vw, 32px);
}

.spacer-32-bottom {
  padding-bottom: clamp(32px, 1.6666666667vw, 32px);
}

.spacer-32-y {
  padding-top: clamp(32px, 1.6666666667vw, 32px);
  padding-bottom: clamp(32px, 1.6666666667vw, 32px);
}

.spacer-32-m-top {
  margin-top: clamp(32px, 1.6666666667vw, 32px);
}

.spacer-32-m-bottom {
  margin-bottom: clamp(32px, 1.6666666667vw, 32px);
}

.spacer-32-m-y {
  margin-top: clamp(32px, 1.6666666667vw, 32px);
  margin-bottom: clamp(32px, 1.6666666667vw, 32px);
}

.spacer-32-16-top {
  padding-top: clamp(16px, 1.6666666667vw, 32px);
}

.spacer-32-16-bottom {
  padding-bottom: clamp(16px, 1.6666666667vw, 32px);
}

.spacer-32-16-y {
  padding-top: clamp(16px, 1.6666666667vw, 32px);
  padding-bottom: clamp(16px, 1.6666666667vw, 32px);
}

.spacer-32-16-m-top {
  margin-top: clamp(16px, 1.6666666667vw, 32px);
}

.spacer-32-16-m-bottom {
  margin-bottom: clamp(16px, 1.6666666667vw, 32px);
}

.spacer-32-16-m-y {
  margin-top: clamp(16px, 1.6666666667vw, 32px);
  margin-bottom: clamp(16px, 1.6666666667vw, 32px);
}

.spacer-40-top {
  padding-top: clamp(40px, 2.0833333333vw, 40px);
}

.spacer-40-bottom {
  padding-bottom: clamp(40px, 2.0833333333vw, 40px);
}

.spacer-40-y {
  padding-top: clamp(40px, 2.0833333333vw, 40px);
  padding-bottom: clamp(40px, 2.0833333333vw, 40px);
}

.spacer-40-m-top {
  margin-top: clamp(40px, 2.0833333333vw, 40px);
}

.spacer-40-m-bottom {
  margin-bottom: clamp(40px, 2.0833333333vw, 40px);
}

.spacer-40-m-y {
  margin-top: clamp(40px, 2.0833333333vw, 40px);
  margin-bottom: clamp(40px, 2.0833333333vw, 40px);
}

.spacer-48-top {
  padding-top: clamp(48px, 2.5vw, 48px);
}

.spacer-48-bottom {
  padding-bottom: clamp(48px, 2.5vw, 48px);
}

.spacer-48-y {
  padding-top: clamp(48px, 2.5vw, 48px);
  padding-bottom: clamp(48px, 2.5vw, 48px);
}

.spacer-48-m-top {
  margin-top: clamp(48px, 2.5vw, 48px);
}

.spacer-48-m-bottom {
  margin-bottom: clamp(48px, 2.5vw, 48px);
}

.spacer-48-m-y {
  margin-top: clamp(48px, 2.5vw, 48px);
  margin-bottom: clamp(48px, 2.5vw, 48px);
}

.spacer-60-32-top {
  padding-top: clamp(32px, 3.125vw, 60px);
}

.spacer-60-32-bottom {
  padding-bottom: clamp(32px, 3.125vw, 60px);
}

.spacer-60-32-y {
  padding-top: clamp(32px, 3.125vw, 60px);
  padding-bottom: clamp(32px, 3.125vw, 60px);
}

.spacer-60-32-m-top {
  margin-top: clamp(32px, 3.125vw, 60px);
}

.spacer-60-32-m-bottom {
  margin-bottom: clamp(32px, 3.125vw, 60px);
}

.spacer-60-32-m-y {
  margin-top: clamp(32px, 3.125vw, 60px);
  margin-bottom: clamp(32px, 3.125vw, 60px);
}

.spacer-64-top {
  padding-top: clamp(64px, 3.3333333333vw, 64px);
}

.spacer-64-bottom {
  padding-bottom: clamp(64px, 3.3333333333vw, 64px);
}

.spacer-64-y {
  padding-top: clamp(64px, 3.3333333333vw, 64px);
  padding-bottom: clamp(64px, 3.3333333333vw, 64px);
}

.spacer-64-m-top {
  margin-top: clamp(64px, 3.3333333333vw, 64px);
}

.spacer-64-m-bottom {
  margin-bottom: clamp(64px, 3.3333333333vw, 64px);
}

.spacer-64-m-y {
  margin-top: clamp(64px, 3.3333333333vw, 64px);
  margin-bottom: clamp(64px, 3.3333333333vw, 64px);
}

.spacer-72-32-top {
  padding-top: clamp(32px, 3.75vw, 72px);
}

.spacer-72-32-bottom {
  padding-bottom: clamp(32px, 3.75vw, 72px);
}

.spacer-72-32-y {
  padding-top: clamp(32px, 3.75vw, 72px);
  padding-bottom: clamp(32px, 3.75vw, 72px);
}

.spacer-72-32-m-top {
  margin-top: clamp(32px, 3.75vw, 72px);
}

.spacer-72-32-m-bottom {
  margin-bottom: clamp(32px, 3.75vw, 72px);
}

.spacer-72-32-m-y {
  margin-top: clamp(32px, 3.75vw, 72px);
  margin-bottom: clamp(32px, 3.75vw, 72px);
}

.spacer-72-top {
  padding-top: clamp(72px, 3.75vw, 72px);
}

.spacer-72-bottom {
  padding-bottom: clamp(72px, 3.75vw, 72px);
}

.spacer-72-y {
  padding-top: clamp(72px, 3.75vw, 72px);
  padding-bottom: clamp(72px, 3.75vw, 72px);
}

.spacer-72-m-top {
  margin-top: clamp(72px, 3.75vw, 72px);
}

.spacer-72-m-bottom {
  margin-bottom: clamp(72px, 3.75vw, 72px);
}

.spacer-72-m-y {
  margin-top: clamp(72px, 3.75vw, 72px);
  margin-bottom: clamp(72px, 3.75vw, 72px);
}

.spacer-80-top {
  padding-top: clamp(80px, 4.1666666667vw, 80px);
}

.spacer-80-bottom {
  padding-bottom: clamp(80px, 4.1666666667vw, 80px);
}

.spacer-80-y {
  padding-top: clamp(80px, 4.1666666667vw, 80px);
  padding-bottom: clamp(80px, 4.1666666667vw, 80px);
}

.spacer-80-m-top {
  margin-top: clamp(80px, 4.1666666667vw, 80px);
}

.spacer-80-m-bottom {
  margin-bottom: clamp(80px, 4.1666666667vw, 80px);
}

.spacer-80-m-y {
  margin-top: clamp(80px, 4.1666666667vw, 80px);
  margin-bottom: clamp(80px, 4.1666666667vw, 80px);
}

.spacer-88-32-top {
  padding-top: clamp(32px, 4.5833333333vw, 88px);
}

.spacer-88-32-bottom {
  padding-bottom: clamp(32px, 4.5833333333vw, 88px);
}

.spacer-88-32-y {
  padding-top: clamp(32px, 4.5833333333vw, 88px);
  padding-bottom: clamp(32px, 4.5833333333vw, 88px);
}

.spacer-88-32-m-top {
  margin-top: clamp(32px, 4.5833333333vw, 88px);
}

.spacer-88-32-m-bottom {
  margin-bottom: clamp(32px, 4.5833333333vw, 88px);
}

.spacer-88-32-m-y {
  margin-top: clamp(32px, 4.5833333333vw, 88px);
  margin-bottom: clamp(32px, 4.5833333333vw, 88px);
}

.spacer-88-top {
  padding-top: clamp(88px, 4.5833333333vw, 88px);
}

.spacer-88-bottom {
  padding-bottom: clamp(88px, 4.5833333333vw, 88px);
}

.spacer-88-y {
  padding-top: clamp(88px, 4.5833333333vw, 88px);
  padding-bottom: clamp(88px, 4.5833333333vw, 88px);
}

.spacer-88-m-top {
  margin-top: clamp(88px, 4.5833333333vw, 88px);
}

.spacer-88-m-bottom {
  margin-bottom: clamp(88px, 4.5833333333vw, 88px);
}

.spacer-88-m-y {
  margin-top: clamp(88px, 4.5833333333vw, 88px);
  margin-bottom: clamp(88px, 4.5833333333vw, 88px);
}

.spacer-96-top {
  padding-top: clamp(96px, 5vw, 96px);
}

.spacer-96-bottom {
  padding-bottom: clamp(96px, 5vw, 96px);
}

.spacer-96-y {
  padding-top: clamp(96px, 5vw, 96px);
  padding-bottom: clamp(96px, 5vw, 96px);
}

.spacer-96-m-top {
  margin-top: clamp(96px, 5vw, 96px);
}

.spacer-96-m-bottom {
  margin-bottom: clamp(96px, 5vw, 96px);
}

.spacer-96-m-y {
  margin-top: clamp(96px, 5vw, 96px);
  margin-bottom: clamp(96px, 5vw, 96px);
}

.spacer-112-32-top {
  padding-top: clamp(32px, 5.8333333333vw, 112px);
}

.spacer-112-32-bottom {
  padding-bottom: clamp(32px, 5.8333333333vw, 112px);
}

.spacer-112-32-y {
  padding-top: clamp(32px, 5.8333333333vw, 112px);
  padding-bottom: clamp(32px, 5.8333333333vw, 112px);
}

.spacer-112-32-m-top {
  margin-top: clamp(32px, 5.8333333333vw, 112px);
}

.spacer-112-32-m-bottom {
  margin-bottom: clamp(32px, 5.8333333333vw, 112px);
}

.spacer-112-32-m-y {
  margin-top: clamp(32px, 5.8333333333vw, 112px);
  margin-bottom: clamp(32px, 5.8333333333vw, 112px);
}

.spacer-112-64-top {
  padding-top: clamp(64px, 5.8333333333vw, 112px);
}

.spacer-112-64-bottom {
  padding-bottom: clamp(64px, 5.8333333333vw, 112px);
}

.spacer-112-64-y {
  padding-top: clamp(64px, 5.8333333333vw, 112px);
  padding-bottom: clamp(64px, 5.8333333333vw, 112px);
}

.spacer-112-64-m-top {
  margin-top: clamp(64px, 5.8333333333vw, 112px);
}

.spacer-112-64-m-bottom {
  margin-bottom: clamp(64px, 5.8333333333vw, 112px);
}

.spacer-112-64-m-y {
  margin-top: clamp(64px, 5.8333333333vw, 112px);
  margin-bottom: clamp(64px, 5.8333333333vw, 112px);
}

.spacer-128-top {
  padding-top: clamp(128px, 6.6666666667vw, 128px);
}

.spacer-128-bottom {
  padding-bottom: clamp(128px, 6.6666666667vw, 128px);
}

.spacer-128-y {
  padding-top: clamp(128px, 6.6666666667vw, 128px);
  padding-bottom: clamp(128px, 6.6666666667vw, 128px);
}

.spacer-128-m-top {
  margin-top: clamp(128px, 6.6666666667vw, 128px);
}

.spacer-128-m-bottom {
  margin-bottom: clamp(128px, 6.6666666667vw, 128px);
}

.spacer-128-m-y {
  margin-top: clamp(128px, 6.6666666667vw, 128px);
  margin-bottom: clamp(128px, 6.6666666667vw, 128px);
}

.spacer-158-top {
  padding-top: clamp(158px, 8.2291666667vw, 158px);
}

.spacer-158-bottom {
  padding-bottom: clamp(158px, 8.2291666667vw, 158px);
}

.spacer-158-y {
  padding-top: clamp(158px, 8.2291666667vw, 158px);
  padding-bottom: clamp(158px, 8.2291666667vw, 158px);
}

.spacer-158-m-top {
  margin-top: clamp(158px, 8.2291666667vw, 158px);
}

.spacer-158-m-bottom {
  margin-bottom: clamp(158px, 8.2291666667vw, 158px);
}

.spacer-158-m-y {
  margin-top: clamp(158px, 8.2291666667vw, 158px);
  margin-bottom: clamp(158px, 8.2291666667vw, 158px);
}

.spacer-160-top {
  padding-top: clamp(160px, 8.3333333333vw, 160px);
}

.spacer-160-bottom {
  padding-bottom: clamp(160px, 8.3333333333vw, 160px);
}

.spacer-160-y {
  padding-top: clamp(160px, 8.3333333333vw, 160px);
  padding-bottom: clamp(160px, 8.3333333333vw, 160px);
}

.spacer-160-m-top {
  margin-top: clamp(160px, 8.3333333333vw, 160px);
}

.spacer-160-m-bottom {
  margin-bottom: clamp(160px, 8.3333333333vw, 160px);
}

.spacer-160-m-y {
  margin-top: clamp(160px, 8.3333333333vw, 160px);
  margin-bottom: clamp(160px, 8.3333333333vw, 160px);
}

.spacer-192-top {
  padding-top: clamp(192px, 10vw, 192px);
}

.spacer-192-bottom {
  padding-bottom: clamp(192px, 10vw, 192px);
}

.spacer-192-y {
  padding-top: clamp(192px, 10vw, 192px);
  padding-bottom: clamp(192px, 10vw, 192px);
}

.spacer-192-m-top {
  margin-top: clamp(192px, 10vw, 192px);
}

.spacer-192-m-bottom {
  margin-bottom: clamp(192px, 10vw, 192px);
}

.spacer-192-m-y {
  margin-top: clamp(192px, 10vw, 192px);
  margin-bottom: clamp(192px, 10vw, 192px);
}

.spacer-224-112-top {
  padding-top: clamp(112px, 11.6666666667vw, 224px);
}

.spacer-224-112-bottom {
  padding-bottom: clamp(112px, 11.6666666667vw, 224px);
}

.spacer-224-112-y {
  padding-top: clamp(112px, 11.6666666667vw, 224px);
  padding-bottom: clamp(112px, 11.6666666667vw, 224px);
}

.spacer-224-112-m-top {
  margin-top: clamp(112px, 11.6666666667vw, 224px);
}

.spacer-224-112-m-bottom {
  margin-bottom: clamp(112px, 11.6666666667vw, 224px);
}

.spacer-224-112-m-y {
  margin-top: clamp(112px, 11.6666666667vw, 224px);
  margin-bottom: clamp(112px, 11.6666666667vw, 224px);
}

.radius-2 {
  border-radius: 2px;
}

.radius-4 {
  border-radius: 4px;
}

.radius-6 {
  border-radius: 6px;
}

.radius-8 {
  border-radius: 8px;
}

.radius-16 {
  border-radius: 16px;
}

.radius-24 {
  border-radius: 24px;
}

/* ---------- Content text ---------- */
/* ---------- Forms ---------- */
/* ---------- Base ---------- */
.link-underline {
  text-decoration: underline;
}
.link-underline:hover {
  text-decoration: none;
}

.block-cards-services {
  overflow-x: hidden;
}
.block-cards-services .services-section {
  display: flex;
  flex-direction: column;
  gap: 3.875rem;
}
.block-cards-services .services-section .animated-section .section-text-image {
  display: flex;
  gap: 2rem;
  align-items: center;
  flex-direction: column;
}
@media (min-width: 1200px) {
  .block-cards-services .services-section .animated-section .section-text-image {
    flex-direction: row;
    gap: 11.25rem;
  }
}
.block-cards-services .services-section .animated-section:nth-of-type(even) .section-text-image .section-img {
  order: 0;
}
@media (min-width: 1200px) {
  .block-cards-services .services-section .animated-section:nth-of-type(even) .section-text-image .section-img {
    order: 1;
    max-width: 585px;
  }
}
.block-cards-services .services-section .animated-section:nth-of-type(even) .section-text-image .section-text {
  width: 100%;
  order: 1;
}
@media (min-width: 1200px) {
  .block-cards-services .services-section .animated-section:nth-of-type(even) .section-text-image .section-text {
    max-width: 745px;
    order: 0;
  }
}
.block-cards-services .services-section .animated-section:nth-of-type(odd) .section-text-image .section-img {
  order: 0;
}
@media (min-width: 1200px) {
  .block-cards-services .services-section .animated-section:nth-of-type(odd) .section-text-image .section-img {
    max-width: 585px;
  }
}
.block-cards-services .services-section .animated-section:nth-of-type(odd) .section-text-image .section-text {
  width: 100%;
  order: 1;
}
@media (min-width: 1200px) {
  .block-cards-services .services-section .animated-section:nth-of-type(odd) .section-text-image .section-text {
    max-width: 600px;
  }
}

.services-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin: 3rem auto 0;
}
.services-list .single-services {
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
  background: #FEFEFE;
  width: 100%;
  padding: 2rem;
  border: 1px solid #F6F6F6;
  height: 100%;
  border-radius: 16px;
  text-align: center;
  min-height: 165px;
  align-items: center;
  justify-content: center;
}
@media (min-width: 576px) {
  .services-list .single-services {
    flex: 0 1 calc((100% - 1 * 1rem) / 2);
    max-width: calc((100% - 1 * 1rem) / 2);
  }
}
@media (min-width: 1200px) {
  .services-list .single-services {
    flex: 0 1 calc((100% - 3 * 1rem) / 4);
    max-width: calc((100% - 3 * 1rem) / 4);
  }
}
.services-list .single-services:hover {
  text-decoration: underline;
}

/* ---------- Breadcrumb ---------- */
/* ---------- Blocks ---------- */
/* ---------- Blocks ---------- */
#tribe-events-pg-template,
.tribe-common .tribe-common-l-container,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
  padding: 0 !important;
  max-width: none;
}

.single-tribe_events button svg,
.post-type-archive-tribe_events button svg {
  margin: 0 !important;
}
.single-tribe_events .section-banner,
.post-type-archive-tribe_events .section-banner {
  position: relative;
  min-height: calc(100vh - 42px);
  padding-top: 8rem;
  padding-bottom: 4rem;
  display: flex;
}
@media (min-width: 1200px) {
  .single-tribe_events .section-banner,
  .post-type-archive-tribe_events .section-banner {
    padding-top: 11.25rem;
    padding-bottom: 6.5rem;
  }
}
.single-tribe_events .section-banner .banner-overlay,
.post-type-archive-tribe_events .section-banner .banner-overlay {
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 11;
  background: #000;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 100%);
  opacity: 0.35;
}
.single-tribe_events .section-banner .banner-holder,
.post-type-archive-tribe_events .section-banner .banner-holder {
  margin-top: auto;
  width: 100%;
}
.single-tribe_events .section-banner .banner-holder .banner-content,
.post-type-archive-tribe_events .section-banner .banner-holder .banner-content {
  position: relative;
  z-index: 11;
  max-width: 920px;
}
.single-tribe_events .section-banner .banner-holder .banner-content p,
.post-type-archive-tribe_events .section-banner .banner-holder .banner-content p {
  font-size: inherit;
  color: inherit;
  max-width: 700px;
}
.single-tribe_events .single-outils-content,
.post-type-archive-tribe_events .single-outils-content {
  display: flex;
  gap: 2rem;
  flex-direction: column;
}
@media (min-width: 992px) {
  .single-tribe_events .single-outils-content,
  .post-type-archive-tribe_events .single-outils-content {
    gap: 3rem;
    flex-direction: row;
  }
}
.single-tribe_events .single-outils-content .outils-description,
.single-tribe_events .single-outils-content .outils-img,
.post-type-archive-tribe_events .single-outils-content .outils-description,
.post-type-archive-tribe_events .single-outils-content .outils-img {
  width: 100%;
}
@media (min-width: 992px) {
  .single-tribe_events .single-outils-content .outils-description,
  .single-tribe_events .single-outils-content .outils-img,
  .post-type-archive-tribe_events .single-outils-content .outils-description,
  .post-type-archive-tribe_events .single-outils-content .outils-img {
    width: 50%;
  }
}

.tribe-events-back a,
.tribe-events-back a:visited {
  font-family: var(--font-main);
  font-size: 14px !important;
  font-weight: var(--fw-semibold);
  text-decoration: underline;
}

.tribe-events-content ol,
.tribe-events-content p,
.tribe-events-content ul {
  color: #113452 !important;
  font-family: var(--font-main);
  font-size: 16px !important;
  line-height: 24px !important;
}

.tribe-events-content a {
  border-bottom: transparent;
  text-decoration: underline;
}
.tribe-events-content a:hover {
  color: #113452 !important;
  text-decoration: none;
  border-bottom: transparent;
}

.tribe-events-single-event-title {
  font-family: var(--font-main);
  color: #113452 !important;
  font-size: clamp(24px, 1.6666666667vw, 32px);
  font-weight: 600 !important;
  line-height: 1.1;
  text-transform: none;
}

.tribe-events-schedule {
  color: #113452 !important;
  font-size: 18px;
  font-weight: bold;
}

#tribe-events-footer,
.single-tribe_events .tribe-events .tribe-events-c-subscribe-dropdown__container, .tribe-block__events-link .tribe-events .tribe-events-c-subscribe-dropdown__container,
.single-tribe_events .tribe-events-single .tribe-events-event-meta,
.tribe-events-c-subscribe-dropdown__container {
  display: none !important;
}

.tribe-events-event-image {
  margin-bottom: 0 !important;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__header-column-title-desktop {
  color: var(--Bleu, #113452) !important;
  font-family: Sora !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 175% !important;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__day-date {
  color: var(--Bleu, #113452) !important;
  leading-trim: both !important;
  font-family: Sora !important;
  font-size: 36px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 157% !important;
}

.tribe-events .tribe-events-calendar-month__calendar-event-datetime {
  font-family: Sora !important;
  font-size: 12px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 175% !important;
  margin-bottom: 6px;
  display: block;
}

.tribe-common .tribe-common-h7, .tribe-common .tribe-common-h8,
.tribe-events .tribe-events-calendar-month__calendar-event-title-link,
.tribe-events .tribe-events-calendar-month__calendar-event-tooltip-title-link {
  font-family: Sora !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 700 !important;
  line-height: 125% !important;
}

.tribe-common--breakpoint-full.tribe-events .tribe-events-c-top-bar__datepicker-desktop {
  color: var(--Bleu, #113452) !important;
  font-family: Sora !important;
  font-size: 36px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 157% !important;
}

.tribe-events-c-top-bar__datepicker-mobile {
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 157% !important;
  color: var(--Bleu, #113452) !important;
  font-family: Sora !important;
}

.tribe-common .tribe-common-c-btn-border-small,
.tribe-common a.tribe-common-c-btn-border-small {
  color: var(--Bleu, #113452) !important;
  font-family: Sora !important;
  font-size: 16px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 175% !important;
  border-radius: 60px !important;
  border: 1px solid #D9D9D9 !important;
}

.tribe-events .tribe-events-c-top-bar__nav-list-item {
  padding-right: 9px;
}

.tribe-events .tribe-events-c-top-bar__nav-link--next,
.tribe-events .tribe-events-c-top-bar__nav-link--prev {
  width: 44px;
  height: 44px;
}

.tribe-events-calendar-month__calendar-event-tooltip-datetime,
.tribe-events-calendar-month__calendar-event-tooltip-datetime * {
  color: var(--Bleu, #113452) !important;
  font-family: Sora !important;
  font-size: 12px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 150% !important;
}

.tribe-events-calendar-month__calendar-event-tooltip-description,
.tribe-events-calendar-month__calendar-event-tooltip-description * {
  font-family: Sora !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 150% !important;
}

.tribe-events .tribe-events-calendar-month__day-cell--selected,
.tribe-events .tribe-events-calendar-month__day-cell--selected:focus,
.tribe-events .tribe-events-calendar-month__day-cell--selected:hover {
  background-color: #8AABCA !important;
}

.tribe-events .tribe-events-calendar-month__mobile-events-icon--event {
  background-color: var(--Bleu, #113452) !important;
}

.tribe-events .tribe-events-calendar-month-mobile-events__mobile-event-datetime {
  font-family: Sora !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 175% !important;
}

.tribe-common .tribe-common-b2 {
  font-family: Sora !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 150% !important;
}

.cat-holder {
  display: flex !important;
  flex-wrap: wrap !important;
  margin-bottom: 32px !important;
  gap: 1rem;
}
@media (min-width: 992px) {
  .cat-holder {
    gap: 2rem;
  }
}
.cat-holder .round-cat {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem;
}
@media (min-width: 992px) {
  .cat-holder .round-cat {
    gap: 1rem;
  }
}
.cat-holder .round-cat .round {
  width: 25px;
  height: 25px;
  border-radius: 100vh;
  display: block !important;
}
@media (min-width: 992px) {
  .cat-holder .round-cat .round {
    gap: 1rem;
    width: 35px;
    height: 35px;
  }
}

/* ---------- Nav mobile ---------- */
/* ---------- Footer ---------- */
/* ---------- Forms ---------- */
.gform_wrapper.gravity-theme .gfield_header_item,
.gform_wrapper.gravity-theme .gform_fileupload_rules,
.gform_wrapper.gravity-theme .ginput_complex label {
  margin-bottom: 5px;
}

::placeholder {
  font-size: 14px !important;
  opacity: 0.5;
}

.gform_wrapper.gravity-theme .gfield.gfield--width-full {
  position: relative;
}
@media (min-width: 768px) {
  .gform_wrapper.gravity-theme .gfield.gfield--width-full .gfield_validation_message {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 24px;
    margin: 0;
    display: inline-block;
    width: auto;
  }
}
@media (min-width: 768px) {
  .gform_wrapper.gravity-theme .gfield.gfield--width-full.gfield--type-textarea .gfield_validation_message {
    top: 14px;
    transform: initial;
  }
}

.instruction {
  display: none;
}

.gform_wrapper form {
  position: relative;
}
.gform_wrapper form.is-loading {
  opacity: 0.4;
  pointer-events: none;
}
.gform_wrapper form .gform_ajax_spinner {
  position: absolute;
  top: calc(50% - 20px);
  left: calc(50% - 20px);
  margin: 0;
  width: 40px;
  max-width: 40px;
}
.gform_wrapper .gform_ajax_spinner {
  margin: em(15) auto 0;
  max-width: 25px;
  animation: spin 2s linear infinite;
}

.validation-error {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  background: #ebccd1;
  border: 1px solid #a94442;
  color: #a94442;
  padding: 12px 0;
}
.validation-error p {
  font-size: 1rem;
}

.gform_confirmation_message {
  font-size: 1rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  background: #d6e9c6;
  border: 1px solid #3c763d;
  color: #3c763d;
  padding: 12px 0;
  max-width: 760px;
}

.gform_footer {
  text-align: right;
}

.gfield_label {
  display: block;
  margin-bottom: 1rem;
  font-weight: 400 !important;
  font-size: 16px !important;
  color: #184b59;
}

.gform_wrapper.gravity-theme .gform_fields {
  grid-row-gap: 24px !important;
}

.gform_fields {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style-type: none;
  padding: 0;
}
.gform_fields select {
  border-radius: 100vh;
  color: #184b59;
}
.gform_fields .gfield {
  flex: 0 0 100%;
  max-width: 100%;
  clear: both;
}
@media (min-width: 768px) {
  .gform_fields .gfield.gfield--width-quarter {
    flex: 0 0 50%;
    max-width: 50%;
  }
}
@media (min-width: 992px) {
  .gform_fields .gfield.gfield--width-quarter {
    flex: 0 0 25%;
    max-width: 25%;
  }
}
@media (min-width: 768px) {
  .gform_fields .gfield.gfield--width-third {
    flex: 0 0 33.33%;
    max-width: 33.33%;
  }
}
@media (min-width: 768px) {
  .gform_fields .gfield.gfield--width-half {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
.gform_fields .gfield.gfield--type-date {
  position: relative;
}
.gform_fields .gfield.gfield--type-date .ginput_container_date {
  position: relative;
}
.gform_fields .gfield.gfield--type-date label {
  z-index: 50;
}
.gform_fields .gfield.gfield--type-date img {
  position: absolute;
  right: 30px;
  bottom: 20px;
}
.gform_fields .gfield.gfield--type-time .gform-grid-row {
  flex-wrap: nowrap;
}
.gform_fields .gfield .gform-grid-col {
  position: relative;
  display: block;
}
.gform_fields .gfield .gform-grid-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-right: -10px;
  margin-left: -10px;
}
.gform_fields .gfield .gform-grid-row > * {
  padding-right: 10px;
  padding-left: 10px;
}
.gform_fields .gfield .gform-grid-row .gform-grid-col {
  flex: auto;
}
.gform_fields .gfield .gform-grid-row .ginput_full {
  flex: 0 0 100%;
  max-width: 100%;
  margin-bottom: 10px;
}
.gform_fields .gfield .gform-grid-row .ginput_full input {
  margin: 0;
}
.gform_fields .gfield .gform-grid-row .ginput_right,
.gform_fields .gfield .gform-grid-row .ginput_left {
  flex: 0 0 50%;
  max-width: 50%;
  margin-bottom: 10px;
}
.gform_fields .gfield .gform-grid-row .ginput_right input,
.gform_fields .gfield .gform-grid-row .ginput_left input {
  margin: 0;
}
.gform_fields .gfield input[type=tel],
.gform_fields .gfield input[type=text],
.gform_fields .gfield input[type=email],
.gform_fields .gfield input[type=number],
.gform_fields .gfield input[type=password],
.gform_fields .gfield textarea,
.gform_fields .gfield .nice-select {
  width: 100%;
  display: flex;
  align-items: center;
  background: white;
  outline: none;
  border: 1px solid #E3E7EE;
  height: 50px;
  padding: 1.5rem;
  gap: 8px;
  align-self: stretch;
  color: #184b59;
  font-size: 16px;
  font-family: var(--font-main) !important;
  border-radius: 1000vh;
}
.gform_fields .gfield input[type=tel]::placeholder,
.gform_fields .gfield input[type=text]::placeholder,
.gform_fields .gfield input[type=email]::placeholder,
.gform_fields .gfield input[type=number]::placeholder,
.gform_fields .gfield input[type=password]::placeholder,
.gform_fields .gfield textarea::placeholder,
.gform_fields .gfield .nice-select::placeholder {
  color: var(--color-black);
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: -0.32px;
}
.gform_fields .gfield textarea {
  border-radius: 16px;
  padding: 0.75rem 1.5rem;
  height: 260px !important;
}
.gform_fields .gfield_error input[type=tel],
.gform_fields .gfield_error input[type=text],
.gform_fields .gfield_error input[type=email],
.gform_fields .gfield_error input[type=number],
.gform_fields .gfield_error input[type=password],
.gform_fields .gfield_error textarea {
  background: #ebccd1;
  border: 1px solid #a94442;
}
.gform_fields .gfield_error .validation_message {
  color: #a94442;
  padding: 0 5px;
}

.gform_heading {
  text-align: center;
  margin-bottom: 1.6rem;
}
.gform_heading .gform_description {
  margin-top: 1.2rem;
}

.gform_footer {
  justify-content: center;
  margin: 24px 0 0 0 !important;
  padding: 0 !important;
}
.gform_footer button {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(16px, 0.8333333333vw, 16px);
  line-height: 1;
  color: var(--color-white);
  text-decoration: none;
  background: #000000;
  cursor: pointer;
  padding: 0.8rem 2rem;
  border-radius: 1000vh;
  font-weight: 400;
  gap: 0.625rem;
  border: none;
  transition: all 0.3s ease;
}
.gform_footer button:hover {
  cursor: pointer;
}

.gform_wrapper.gravity-theme .gfield_validation_message,
.gform_wrapper.gravity-theme .validation_message {
  background: transparent !important;
  border: transparent !important;
  padding: 0 !important;
}

.gform_wrapper.gravity-theme .gform_validation_errors {
  background: transparent !important;
  border: transparent !important;
  padding: 0 !important;
  box-shadow: none;
  margin-block-end: 0 !important;
  margin-block-start: 0 !important;
  padding-block: 0 !important;
  padding-inline-end: 0 !important;
  padding-inline-start: 0 !important;
  position: relative;
  width: 100%;
  display: none !important;
}

.gform_validation_errors ol {
  margin: 15px 0;
}

button {
  font-size: 16px;
  display: flex;
  align-items: center;
}
button svg {
  margin-left: 8px;
}

.gfield_radio li,
.gfield_checkbox li {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}
.gfield_radio li label,
.gfield_checkbox li label {
  display: block;
  margin-bottom: 0;
  margin-left: 3px;
  line-height: 15px;
}
.gfield_radio li label:hover,
.gfield_checkbox li label:hover {
  cursor: pointer;
}

[type=radio]:not(:checked), [type=radio]:checked,
[type=checkbox]:not(:checked),
[type=checkbox]:checked {
  position: absolute;
  left: -9999px;
}
[type=radio]:not(:checked) + label, [type=radio]:checked + label,
[type=checkbox]:not(:checked) + label,
[type=checkbox]:checked + label {
  position: relative;
  padding-left: 1.95em;
  cursor: pointer;
}
[type=radio]:not(:checked) + label:before, [type=radio]:checked + label:before,
[type=checkbox]:not(:checked) + label:before,
[type=checkbox]:checked + label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #184b59;
}
[type=radio]:not(:checked) + label:after, [type=radio]:checked + label:after,
[type=checkbox]:not(:checked) + label:after,
[type=checkbox]:checked + label:after {
  content: " ";
  position: absolute;
  background-color: #184b59;
  transition: all 0.2s;
  width: 10px;
  height: 10px;
  top: 4px;
  left: 4px;
}
[type=radio]:not(:checked):not(:checked) + label:after, [type=radio]:checked:not(:checked) + label:after,
[type=checkbox]:not(:checked):not(:checked) + label:after,
[type=checkbox]:checked:not(:checked) + label:after {
  opacity: 0;
  transform: scale(0);
}
[type=radio]:not(:checked):checked + label:after, [type=radio]:checked:checked + label:after,
[type=checkbox]:not(:checked):checked + label:after,
[type=checkbox]:checked:checked + label:after {
  opacity: 1;
  transform: scale(1);
}
[type=radio]:not(:checked):disabled:not(:checked) + label:before, [type=radio]:not(:checked):disabled:checked + label:before, [type=radio]:checked:disabled:not(:checked) + label:before, [type=radio]:checked:disabled:checked + label:before,
[type=checkbox]:not(:checked):disabled:not(:checked) + label:before,
[type=checkbox]:not(:checked):disabled:checked + label:before,
[type=checkbox]:checked:disabled:not(:checked) + label:before,
[type=checkbox]:checked:disabled:checked + label:before {
  box-shadow: none;
  border-color: #bbb;
  background-color: #ddd;
}
[type=radio]:not(:checked):disabled:not(:checked) + label:after, [type=radio]:not(:checked):disabled:checked + label:after, [type=radio]:checked:disabled:not(:checked) + label:after, [type=radio]:checked:disabled:checked + label:after,
[type=checkbox]:not(:checked):disabled:not(:checked) + label:after,
[type=checkbox]:not(:checked):disabled:checked + label:after,
[type=checkbox]:checked:disabled:not(:checked) + label:after,
[type=checkbox]:checked:disabled:checked + label:after {
  color: #999;
}
[type=radio]:not(:checked):disabled + label, [type=radio]:checked:disabled + label,
[type=checkbox]:not(:checked):disabled + label,
[type=checkbox]:checked:disabled + label {
  color: #aaa;
}

[type=radio]:not(:checked), [type=radio]:checked {
  position: absolute;
  left: -9999px;
}
[type=radio]:not(:checked) + label:before, [type=radio]:checked + label:before {
  border-radius: 50%;
}
[type=radio]:not(:checked) + label:after, [type=radio]:checked + label:after {
  border-radius: 50%;
}
[type=radio]:checked + label {
  color: #184b59;
}

.gform_fields .gfield_checkbox input[type=checkbox],
.gform_fields .gfield_checkbox input[type=radio],
.gform_fields .gfield_radio input[type=checkbox],
.gform_fields .gfield_radio input[type=radio] {
  margin: 0 5px 0 0;
}

.gform-theme--foundation .gform_fields {
  row-gap: 0;
}

.gform-theme--framework .gform-field-label--type-inline {
  margin-left: 0 !important;
}

/* ---------- Custom select ---------- */
.nice-select {
  width: 100%;
  float: none;
}
.nice-select .list {
  margin: 4px 0 0;
  width: 100%;
  max-height: 350px;
  overflow-y: auto;
}

/* ---------------------------------------------------------------------------- */
/* Nice File Input */
/* ---------------------------------------------------------------------------- */
/*
.gfield--type-fileupload {

  &.gfield_error {

    input {
      background: none !important;
    }

    .gfield_fileupload_filename {
      color: var(--color-error);
    }

    .ginput_container {
      border-color: var(--color-error);
    }
  }

  .gfield_label {
    display: none;
  }

  .ginput_preview {
    display: flex;
    justify-content: end;
    margin: 5px -5px;

    span {
      display: inline-block;
      margin-right: 5px;
      margin-left: 5px;

      &.gfield_fileupload_filename {
        flex: 1;
      }
      &.gfield_fileupload_progress {
        display: none;
      }
    }

    .gform_delete_file {
      background: none;
      border: 0;
      padding: 0;

      span {
        margin: 0;
        color: #cf3030;
      }
    }
  }

  .ginput_container {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    position: relative;
    text-align: center;
    min-height: 220px;
    border: 1px dashed var(--color-black);
    padding: 35px 15px;

    .NFI {
      margin-bottom: 5px;

      // Hide original field
      [type=file] {
        position: absolute;
        z-index: 50;
        top: 0;
        left: 0;
        border: 0;
        padding: 0;
        text-align: center;
        height: 100%;
        width: 100%;
        opacity: 0;
        cursor: pointer;
      }

      .NFI-filename {
        position: absolute;
        bottom: 15px;
        left: 0;
        border: 0;
        background: none;
        text-align: center;
        padding: 0;
        width: 100%;
        height: auto;
      }
    }

    .gform_fileupload_rules {
      @extend .style-p;
      color: var(--color-secondary);
    }
  }
}
*/
.style-h1 {
  font-size: clamp(30px, 3.125vw, 60px);
}

h1 {
  font-size: clamp(30px, 3.125vw, 60px);
}

.style-h2 {
  font-size: clamp(32px, 2.5vw, 48px);
}

h2 {
  font-size: clamp(32px, 2.5vw, 48px);
}

.style-h3 {
  font-size: clamp(22px, 1.875vw, 36px);
}

h3 {
  font-size: clamp(22px, 1.875vw, 36px);
}

.style-h4 {
  font-size: clamp(24px, 1.6666666667vw, 32px);
}

h4 {
  font-size: clamp(24px, 1.6666666667vw, 32px);
}

.style-h5 {
  font-size: clamp(20px, 1.25vw, 24px);
}

h5 {
  font-size: clamp(20px, 1.25vw, 24px);
}

.style-h6 {
  font-size: clamp(18px, 1.0416666667vw, 20px);
}

h6 {
  font-size: clamp(18px, 1.0416666667vw, 20px);
}

.style-p {
  font-size: clamp(16px, 0.9375vw, 18px);
}

p {
  font-size: clamp(16px, 0.9375vw, 18px);
}

.style-font-42 {
  font-size: clamp(42px, 2.1875vw, 42px);
}

.style-font-30 {
  font-size: clamp(24px, 1.5625vw, 30px);
}

.style-font-28 {
  font-size: clamp(28px, 1.4583333333vw, 28px);
}

.style-font-24-16 {
  font-size: clamp(16px, 1.25vw, 24px);
}

.style-font-24 {
  font-size: clamp(20px, 1.25vw, 24px);
}

.style-font-22 {
  font-size: clamp(18px, 1.1458333333vw, 22px);
}

.style-font-20 {
  font-size: clamp(18px, 1.0416666667vw, 20px);
}

.style-font-18 {
  font-size: clamp(16px, 0.9375vw, 18px);
}

.style-font-16 {
  font-size: clamp(14px, 0.8333333333vw, 16px);
}

.style-font-14 {
  font-size: clamp(14px, 0.7291666667vw, 14px);
}

.style-font-menu-mobile {
  font-size: clamp(24px, 1.4583333333vw, 28px);
}

.style-font-content-text {
  font-size: clamp(16px, 0.8333333333vw, 16px);
}

.style-font-content-text-big {
  font-size: clamp(18px, 1.1458333333vw, 22px);
}

.style-font-form {
  font-size: clamp(20px, 1.0416666667vw, 20px);
}

/* Font Weight */
.fw-thin {
  font-weight: 100 !important;
}

.fw-extralight {
  font-weight: 200 !important;
}

.fw-light {
  font-weight: 300 !important;
}

.fw-regular {
  font-weight: 400 !important;
}

.fw-medium {
  font-weight: 500 !important;
}

.fw-semibold {
  font-weight: 600 !important;
}

.fw-bold {
  font-weight: 700 !important;
}

.fw-extrabold {
  font-weight: 800 !important;
}

.fw-black {
  font-weight: 900 !important;
}

/* Titles */
.suptitle {
  font: 400 19.2307692308px var(--font-main);
  margin-bottom: 30px;
}

.style-font-main {
  font-family: var(--font-main);
}

.style-font-secondary {
  font-family: var(--font-secondary);
}

/* Paragraphes */
.style-p,
p {
  color: #184b59;
}
.style-p strong,
p strong {
  font-weight: 700;
}

b, strong {
  font-weight: bold;
}

i, em {
  font-style: italic;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.4rem;
}

sub {
  bottom: -0.25rem;
}

.content-text > *:first-child,
.block-text > *:first-child {
  margin-top: 0;
}
.content-text > *:last-child,
.block-text > *:last-child {
  margin-bottom: 0;
}
.content-text,
.block-text {
  /* ---------- Titles ---------- */
}
.content-text h1, .content-text h2, .content-text h3, .content-text h4, .content-text h5, .content-text h6,
.content-text .style-h1, .content-text .style-h2, .content-text .style-h3, .content-text .style-h4, .content-text .style-h5, .content-text .style-h6,
.block-text h1,
.block-text h2,
.block-text h3,
.block-text h4,
.block-text h5,
.block-text h6,
.block-text .style-h1,
.block-text .style-h2,
.block-text .style-h3,
.block-text .style-h4,
.block-text .style-h5,
.block-text .style-h6 {
  line-height: 1.5;
  margin-bottom: 2rem;
  color: #184b59;
}
.content-text,
.block-text {
  /* ---------- Paragraphs ---------- */
}
.content-text img,
.block-text img {
  margin-top: 25px;
  margin-bottom: 25px;
}
.content-text p,
.block-text p {
  margin-top: 2rem;
  font-size: 16px;
  color: #184b59;
}
.content-text p strong,
.block-text p strong {
  font-weight: 700;
}
.content-text p + *:not(p):not(.wp-caption),
.block-text p + *:not(p):not(.wp-caption) {
  margin-top: 25px;
}
.content-text p:last-of-type,
.block-text p:last-of-type {
  margin-bottom: 0 !important;
}
.content-text p img,
.block-text p img {
  margin-top: 25px;
  margin-bottom: 25px;
}
.content-text p a,
.block-text p a {
  color: var(--color-secondary);
}
.content-text p a:hover,
.block-text p a:hover {
  text-decoration: underline;
}
.content-text ol li,
.content-text ul li,
.block-text ol li,
.block-text ul li {
  color: #184b59;
}
.content-text,
.block-text {
  /* ---------- Separators ---------- */
}
.content-text hr,
.block-text hr {
  height: 1px;
  display: block;
  margin-top: 45px !important;
  margin-bottom: 45px;
  background: #184b59;
  border: none;
  clear: both;
}
.content-text,
.block-text {
  /* ---------- Blockquote ---------- */
}
.content-text blockquote,
.block-text blockquote {
  padding: 1.5rem;
  border-left: 4px solid var(--color-secondary);
  background: rgba(0, 0, 0, 0.1);
}
.content-text blockquote p:first-child,
.block-text blockquote p:first-child {
  margin-top: 0;
}
.content-text,
.block-text {
  /* ---------- Lists ---------- */
}
.content-text ul,
.block-text ul {
  list-style: disc;
  margin-bottom: 25px;
}
.content-text ul ul,
.block-text ul ul {
  list-style: circle;
  margin-top: 8px;
}
.content-text ol,
.block-text ol {
  list-style: decimal;
}
.content-text ol ul,
.block-text ol ul {
  list-style: circle;
  margin-top: 8px;
}
.content-text ul,
.content-text ol,
.block-text ul,
.block-text ol {
  padding-left: 20px;
  margin-top: 25px;
}
.content-text ul li,
.content-text ol li,
.block-text ul li,
.block-text ol li {
  line-height: 1.6;
}
.content-text ul li + li,
.content-text ol li + li,
.block-text ul li + li,
.block-text ol li + li {
  margin-top: 8px;
}
.content-text,
.block-text {
  /* ---------- Images ---------- */
}
.content-text img,
.block-text img {
  border-radius: 2px;
}
.content-text .alignleft,
.block-text .alignleft {
  float: left;
  max-width: 45%;
  margin: 5px 35px 15px 0;
}
.content-text .alignleft.wp-caption,
.block-text .alignleft.wp-caption {
  margin-right: 2rem;
}
.content-text .alignright,
.block-text .alignright {
  float: right;
  max-width: 45%;
  margin: 5px 0 15px 35px;
}
.content-text .alignright.wp-caption,
.block-text .alignright.wp-caption {
  margin-left: 2rem;
}
.content-text .aligncenter,
.block-text .aligncenter {
  padding: 10px 0;
  margin: 0 auto 2rem;
  clear: both;
}
.content-text .aligncenter.wp-caption,
.block-text .aligncenter.wp-caption {
  max-width: 100%;
}
.content-text .wp-caption,
.block-text .wp-caption {
  margin-bottom: 25px;
}
.content-text .wp-caption p,
.block-text .wp-caption p {
  color: #888;
  font: italic 12px/16px var(--font-main);
  text-align: center;
  padding: 0 5px;
  margin: 10px 10px 0 0;
}
.content-text small,
.block-text small {
  font-size: 14px;
}
.content-text a,
.block-text a {
  text-decoration: underline !important;
}
.content-text a:hover,
.block-text a:hover {
  text-decoration: none !important;
}

*, *:before, *:after {
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  max-width: 100%;
  font-optical-sizing: auto;
}
html.no-scroll,
body.no-scroll {
  overflow: hidden;
}

html {
  overflow-x: hidden;
  scroll-behavior: smooth;
}

#formulaire {
  scroll-margin-top: 250px; /* la hauteur du gap désiré */
}

body {
  color: var(--color-black);
  background: var(--color-white);
  font: 1em/1.5 var(--font-main);
  position: relative;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

::selection {
  color: white;
  background: #184b59;
}

@media (max-width: 575.98px) {
  .spacer-mobile {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
@media (max-width: 575.98px) {
  .spacer-mobile.section-banner {
    padding-top: 0;
    padding-bottom: 0;
  }
}

.fancybox-content {
  padding: 44px 22px !important;
}

/* ---------- Containers ---------- */
.container {
  padding-right: 24px;
  padding-left: 24px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  max-width: 1625px;
}
.container.small {
  max-width: var(--width-small);
}
.container.medium {
  max-width: var(--width-medium);
}
.container.large {
  max-width: var(--width-large);
}
.container.container-content {
  max-width: 1548px;
  margin: 0 auto;
}
.container.full {
  width: 100%;
  max-width: none;
}
.container.full.has-side-padding {
  padding-right: clamp(24px, 2.5vw, 48px);
  padding-left: clamp(24px, 2.5vw, 48px);
}

/* ---------- Links ---------- */
a {
  color: var(--color-black);
  text-decoration: none;
}
a:hover {
  color: var(--color-main);
}

/* ---------- Img ---------- */
picture img {
  width: 100%;
}

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

img:not([src]):not([srcset]) {
  visibility: hidden;
}

.icon-holder {
  gap: 1.25rem;
}
.icon-holder .ico-holder {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
}

.two-cols-header {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 2rem;
}
@media (min-width: 992px) {
  .two-cols-header {
    flex-direction: row;
    justify-content: space-between;
    align-items: start;
  }
}
.two-cols-header.gap {
  gap: 3rem;
}
@media (min-width: 992px) {
  .two-cols-header.gap {
    align-items: end;
    justify-content: inherit;
  }
}
.two-cols-header .text-header {
  max-width: 560px;
  text-align: left;
}
.two-cols-header .text-header .content-text {
  margin-bottom: 2rem;
}

.controls-swiper {
  gap: 0.5rem;
}
.controls-swiper .custom-swiper-button-next .first-arrow {
  transform: translateX(-100%);
  transition: all 0.3s ease;
}
.controls-swiper .custom-swiper-button-next .second-arrow {
  transition: all 0.3s ease;
  transform: translateX(0);
}
.controls-swiper .custom-swiper-button-prev .first-arrow {
  transform: translateX(100%);
  transition: all 0.3s ease;
}
.controls-swiper .custom-swiper-button-prev .second-arrow {
  transition: all 0.3s ease;
  transform: translateX(0);
}
.controls-swiper .btn-swiper:hover {
  cursor: pointer;
}
.controls-swiper .btn-swiper.custom-swiper-button-next:hover .first-arrow {
  transform: translateX(0);
}
.controls-swiper .btn-swiper.custom-swiper-button-next:hover .second-arrow {
  transform: translateX(100%);
}
.controls-swiper .btn-swiper.custom-swiper-button-prev:hover .first-arrow {
  transform: translateX(0);
}
.controls-swiper .btn-swiper.custom-swiper-button-prev:hover .second-arrow {
  transform: translateX(-100%);
}

hr {
  border: none !important;
  padding: 0 !important;
  width: 100%;
  height: 1px;
  background-color: 1px solid #184b59;
}

.single-post .single-outils-content {
  display: flex;
  gap: 2rem;
  flex-direction: column;
}
.single-post .single-outils-content .outils-description,
.single-post .single-outils-content .outils-img {
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
}

.section {
  position: relative;
}
.section.hide-section {
  opacity: 0.4;
}
.section.style-dark {
  color: var(--color-white);
}
.section .block-overlay {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background-color: var(--block-background-color);
  opacity: var(--block-overlay-opacity);
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.section .section-background {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1;
}
.section .section-background.bg-vtop img {
  object-position: top;
}
.section .section-background.bg-vcenter img {
  object-position: center;
}
.section .section-background.bg-vbottom img {
  object-position: bottom;
}
.section .section-background img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100%;
}
.section .block {
  position: relative;
  z-index: 10;
}
.section .block-custom-width {
  margin-right: auto !important;
  margin-left: auto !important;
}
.section .custom-ratio {
  position: relative;
}
.section .custom-ratio.ratio-one-one {
  padding-top: 100%;
}
.section .custom-ratio.ratio-sixteen-nine {
  padding-top: 56.25%;
}
.section .custom-ratio.ratio-four-tree {
  padding-top: 75%;
}
.section .custom-ratio.ratio-tree-four {
  padding-top: 133.3333333333%;
}
.section .custom-ratio:not(.ratio-auto) img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.nav-mobile-holder {
  position: relative;
}

.nav-mobile {
  position: fixed;
  z-index: 111;
  top: 0;
  left: 0;
  text-align: left;
  padding-top: var(--app-headerHeight);
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s cubic-bezier(0.15, 0.65, 0.25, 1);
}
.nav-mobile.is-active {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
.nav-mobile .header-control {
  justify-content: start;
  align-items: self-start;
  gap: 1rem;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder {
  margin-top: 125px;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li {
  position: relative;
  margin: 30px 0 0 0;
  width: 100%;
  transition: all 0.3s ease;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li:first-of-type {
  margin-top: 0;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li a {
  display: inline-flex;
  align-items: center;
  position: relative;
  color: #184b59;
  width: 100%;
  font-size: 32px;
  font-style: normal;
  font-weight: 800;
  line-height: 122%;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li svg {
  margin-left: 1rem;
  max-width: 16px;
  width: 100%;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li.current-section > a {
  text-decoration: underline;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li.current-section > a:before {
  opacity: 1;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li.active .dropdown-toggle svg {
  transform: rotate(180deg);
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li ul {
  margin: 15px 0 0 0;
  display: none;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li ul li {
  margin: 3px 0;
  border-top: none !important;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li ul li:first-of-type {
  margin-top: 0;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li ul li:last-of-type {
  margin-bottom: 0;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li ul li a {
  display: inline-flex;
  text-transform: none;
  letter-spacing: 0.025em;
  font-weight: var(--fw-regular);
  padding: 6px 0;
  margin: 3px 0;
  width: 100%;
  justify-content: space-between;
  font-size: 18px;
  line-height: 1.4;
}
.nav-mobile .nav-mobile-holder .nav-menu-holder li ul li ul {
  padding-left: 15px;
}
.nav-mobile .nav-submenu-holder ul {
  margin: 15px 0 0 0;
}
.nav-mobile .nav-submenu-holder ul li {
  margin: 3px 0;
  border-top: none !important;
}
.nav-mobile .nav-submenu-holder ul li:first-of-type {
  margin-top: 0;
}
.nav-mobile .nav-submenu-holder ul li:last-of-type {
  margin-bottom: 0;
}
.nav-mobile .nav-submenu-holder ul li a {
  color: #184b59;
  display: inline-flex;
  text-transform: none;
  letter-spacing: 0.025em;
  padding: 6px 0;
  margin: 3px 0;
  width: 100%;
  justify-content: space-between;
  font-size: 20px;
}
.nav-mobile .nav-submenu-holder ul li ul {
  padding-left: 15px;
}
.nav-mobile .socials {
  gap: 0.5rem;
}
.nav-mobile svg.absolute-svg {
  position: absolute;
  bottom: -35px;
  right: 0;
}

.footer-container {
  max-width: 1500px;
  margin: 0 auto;
}

.footer .footer-svg {
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  opacity: 30% !important;
}
@media only screen and (min-width: 950px) {
  .footer .footer-svg {
    right: 97px;
    max-width: 50%;
  }
}
.footer {
  position: relative;
}
.footer a {
  color: var(--color-black);
  transition: all 0.3s ease;
}
.footer a:hover {
  color: var(--color-black);
  text-decoration: underline;
}
.footer .footer-holder {
  gap: 4rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (min-width: 768px) {
  .footer .footer-holder {
    flex-direction: row;
    align-items: start;
  }
}
@media (min-width: 1200px) {
  .footer .footer-holder {
    gap: 8rem;
  }
}
@media (min-width: 768px) {
  .footer .footer-holder .footer-logo {
    flex: 0 0 clamp(360px, 26.3020833333vw, 505px);
  }
}
.footer .footer-holder .footer-logo img {
  width: 100%;
  max-width: clamp(240px, 20.4166666667vw, 392px);
}
.footer .footer-holder .footer-logo address {
  gap: 1.25rem;
  align-items: start;
}
.footer .footer-holder .footer-logo address ul li i {
  display: inline-block;
  margin-right: 0.5rem;
}
.footer .footer-holder .footer-content {
  gap: 2rem;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (min-width: 768px) {
  .footer .footer-holder .footer-content {
    flex-direction: row;
    align-items: start;
    gap: 0.75rem;
  }
}
.footer .footer-holder .footer-content .footer-col {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  font-weight: 500;
  width: 100%;
  font-size: 16px;
}
@media (min-width: 768px) {
  .footer .footer-holder .footer-content .footer-col {
    margin-top: 0;
    text-align: left;
    width: auto;
    flex: 0 0 calc(50% - 0.75rem);
  }
}
@media (min-width: 1200px) {
  .footer .footer-holder .footer-content .footer-col {
    flex: 0 0 calc(29% - 0.75rem);
  }
}
.footer .footer-holder .footer-content .footer-col p {
  font-size: clamp(14px, 0.7291666667vw, 14px);
}
@media (min-width: 768px) {
  .footer .footer-holder .footer-content .footer-col p {
    padding-right: 2rem;
  }
}
.footer .footer-holder .footer-content .footer-col .footer-title {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  justify-content: center;
}
@media (min-width: 768px) {
  .footer .footer-holder .footer-content .footer-col .footer-title {
    justify-content: start;
  }
}
.footer .footer-holder .footer-content .footer-col .footer-title div {
  display: flex;
}
.footer .footer-holder .footer-content .footer-col.footer-menu ul li {
  margin-bottom: 12px !important;
}
@media (min-width: 768px) {
  .footer .footer-holder .footer-content .footer-col.footer-menu ul li {
    margin: initial;
  }
}
.footer .footer-holder .footer-content .footer-col.footer-menu ul li a {
  color: #FEFEFE;
}
.footer .footer-holder .footer-content .sub-menu {
  display: none;
}
.footer .copyright-holder {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  border-top: 1px solid rgba(255, 255, 255, 0.4);
  text-align: center;
}
@media (min-width: 768px) {
  .footer .copyright-holder {
    flex-direction: row;
    justify-content: space-between;
    text-align: left;
  }
}
.footer .copyright-holder .copyright {
  margin-top: 1.5rem;
}
@media (min-width: 768px) {
  .footer .copyright-holder .copyright {
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  .footer .copyright-holder .right-side {
    display: flex;
    align-items: center;
  }
}

.social-holder-footer ul {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.social-holder-footer ul li {
  display: flex;
}
.social-holder-footer ul li a {
  display: flex;
}
.social-holder-footer ul li a svg {
  display: flex;
}
.social-holder-footer ul li a svg path {
  transition: fill 0.3s ease-in-out;
}
.social-holder-footer ul li a svg:hover path {
  fill: var(--color-red);
}