/* ---------------------------------------------------------------------------- */
/* Imports */
/* ---------------------------------------------------------------------------- */
.background-color-main {
  background-color: #0F1922 !important;
}

.text-color-main {
  color: #0F1922 !important;
}

.border-color-main {
  border: 1px solid #0F1922 !important;
}

.background-color-secondary {
  background-color: #0071BA !important;
}

.text-color-secondary {
  color: #0071BA !important;
}

.border-color-secondary {
  border: 1px solid #0071BA !important;
}

.background-color-blue {
  background-color: #1691C9 !important;
}

.text-color-blue {
  color: #1691C9 !important;
}

.border-color-blue {
  border: 1px solid #1691C9 !important;
}

.background-color-dark-blue {
  background-color: #003051 !important;
}

.text-color-dark-blue {
  color: #003051 !important;
}

.border-color-dark-blue {
  border: 1px solid #003051 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

.background-color-grey {
  background-color: #EEF7FB !important;
}

.text-color-grey {
  color: #EEF7FB !important;
}

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

.background-color-dark-grey {
  background-color: #393A3B !important;
}

.text-color-dark-grey {
  color: #393A3B !important;
}

.border-color-dark-grey {
  border: 1px solid #393A3B !important;
}

/* ---------------------------------------------------------------------------- */
/* Imports */
/* ---------------------------------------------------------------------------- */
.animate-fadeIn-slideUp-delay,
.animate-fadeIn-delay,
.animate-fadeIn-slideUp,
.animate-fadeIn {
  transition: all 0.3s ease;
}

.is-inview .animate-fadeIn {
  opacity: 1 !important;
}
.is-inview .animate-fadeIn-delay {
  transition-delay: calc(var(--i) * 100ms);
  opacity: 1 !important;
}
.is-inview .animate-fadeIn-slideUp-delay {
  transition-delay: calc(var(--i) * 100ms);
  transform: translateY(0) !important;
  opacity: 1 !important;
}

.zoom-img {
  overflow: hidden;
}
.zoom-img img {
  transform: scale(1);
  transition: all 0.3s ease;
}
.zoom-img:hover img {
  transform: scale(1.05);
}

@keyframes underlineHover {
  0% {
    background-position-x: 100%;
    background-size: 100% 1px;
  }
  50% {
    background-position-x: 100%;
    background-size: 0% 1px;
  }
  51% {
    background-position-x: 0%;
    background-size: 0% 1px;
  }
  100% {
    background-position-x: 0%;
    background-size: 100% 1px;
  }
}
/* ---------- Forms ---------- */
/* ---------- Content text ---------- */
/* ---------------------------------------------------------------------------- */
/* Imports */
/* ---------------------------------------------------------------------------- */
/* ---------- Base ---------- */
/* ---------- General ---------- */
.absolute-link {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 50;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.box-hover .z-index-box {
  position: relative;
  z-index: 11;
}
.box-hover .box-hover-zoom-img {
  overflow: hidden;
}
.box-hover .box-hover-zoom-img img {
  transition: transform 0.5s cubic-bezier(0.15, 0.65, 0.25, 1);
}
.box-hover:hover .box-hover-link {
  text-decoration: underline;
}
.box-hover:hover .box-hover-zoom-img img {
  transform: scale(1.05);
}

.wrapper-border {
  position: relative;
}
.wrapper-border:before, .wrapper-border:after {
  content: "";
  width: 100%;
  height: 1px;
  position: absolute;
  background: #F2EFE8;
}
.wrapper-border:before {
  top: -1px;
}
.wrapper-border:after {
  bottom: 0;
}
.wrapper-border .border-grid {
  border: 1px solid #F2EFE8;
  margin: -1px -1px 0 0;
}

.zoom-animation {
  position: relative;
}
.zoom-animation:hover .zoom {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.zoom-animation .zoom {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-white);
  border-radius: 50%;
  height: 40px;
  width: 40px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(16px);
  transition: all 0.6s ease;
}
.zoom-animation .zoom svg {
  display: block;
  height: 20px;
  width: auto;
}
.zoom-animation .zoom svg path {
  fill: var(--color-yellow);
}

.password-protected {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin: auto;
  padding: clamp(48px, 11.3888888889vw, 164px) 0;
  min-height: 70vh;
}
.password-protected form {
  text-align: center;
  margin-top: 32px;
  width: 100%;
}
.password-protected form input {
  font-size: clamp(28px, 2.5vw, 36px);
  text-align: center;
  color: var(--color-main);
  border: 1px solid var(--color-grey-2);
  height: clamp(70px, 6.25vw, 90px);
  width: 100%;
  max-width: 640px;
}
.password-protected form input::placeholder {
  color: #D9D9D9;
}
.password-protected form button {
  margin: 16px auto 0;
}

/* ---------- Single ---------- */
.section-other-articles h2 {
  margin-bottom: clamp(32px, 3.3333333333vw, 48px);
}

/* ---------- Blog ---------- */
/* ---------- Footer ---------- */
.form-holder .gform-theme--api,
.form-holder .gform-theme--framework {
  --gf-radius: 8px !important;
  --gf-form-gap-y: 24px !important;
  --gf-form-gap-x: 24px !important;
  --gf-ctrl-font-size: 16px !important;
  --gf-font-size-secondary: 14px !important;
  --gf-font-size-tertiary: 13px !important;
  --gf-ctrl-font-weight: 400 !important;
  --gf-ctrl-shadow: 0 !important;
  --gf-ctrl-size: 48px !important;
  --gf-ctrl-line-height: 160% !important;
  --gf-ctrl-padding-y: 0 !important;
  --gf-ctrl-padding-x: 12px !important;
  --gf-ctrl-placeholder-color: $color_border !important;
  --gf-ctrl-placeholder-opacity: 1 !important;
  --gf-color-primary: #0071ba !important;
  --gf-color-primary-rgb: 0, 113, 186 !important;
  --gf-color-primary-contrast: #ffffff !important;
  --gf-color-primary-contrast-rgb: 255, 255, 255 !important;
  --gf-color-primary-darker: rgb(0, 75.8193548387, 124.8) !important;
  --gf-color-primary-lighter: rgb(0, 150.1806451613, 247.2) !important;
  --gf-color-secondary: #F7F8F9 !important;
  --gf-color-secondary-rgb: 247, 248, 249 !important;
  --gf-color-secondary-contrast: #0f1922 !important;
  --gf-color-secondary-contrast-rgb: 15, 25, 34 !important;
  --gf-color-secondary-darker: rgb(244.0857142857, 245.45, 246.8142857143) !important;
  --gf-color-secondary-lighter: rgb(249.9142857143, 250.55, 251.1857142857) !important;
  --gf-color-out-ctrl-light: rgba(15, 25, 34, 0.1) !important;
  --gf-color-out-ctrl-light-rgb: 15, 25, 34 !important;
  --gf-color-out-ctrl-light-darker: rgba(240, 240, 240, 0.35) !important;
  --gf-color-out-ctrl-light-lighter: hsl(0, 0%, 104.1176470588%) !important;
  --gf-color-out-ctrl-dark: #0f1922 !important;
  --gf-color-out-ctrl-dark-rgb: 15, 25, 34 !important;
  --gf-color-out-ctrl-dark-darker: #0f1922 !important;
  --gf-color-out-ctrl-dark-lighter: rgba(15, 25, 34, 0.65) !important;
  --gf-color-in-ctrl: #F7F8F9 !important;
  --gf-color-in-ctrl-rgb: 247, 248, 249 !important;
  --gf-color-in-ctrl-contrast: #0f1922 !important;
  --gf-color-in-ctrl-contrast-rgb: 15, 25, 34 !important;
  --gf-color-in-ctrl-darker: rgb(235.3428571429, 237.8, 240.2571428571) !important;
  --gf-color-in-ctrl-lighter: rgb(249.9142857143, 250.55, 251.1857142857) !important;
  --gf-color-in-ctrl-primary: #0071ba !important;
  --gf-color-in-ctrl-primary-rgb: 0, 113, 186 !important;
  --gf-color-in-ctrl-primary-contrast: #ffffff !important;
  --gf-color-in-ctrl-primary-contrast-rgb: 255, 255, 255 !important;
  --gf-color-in-ctrl-primary-darker: rgb(0, 75.8193548387, 124.8) !important;
  --gf-color-in-ctrl-primary-lighter: rgb(0, 150.1806451613, 247.2) !important;
  --gf-color-in-ctrl-light: rgba(15, 25, 34, 0.1) !important;
  --gf-color-in-ctrl-light-rgb: 15, 25, 34 !important;
  --gf-color-in-ctrl-light-darker: rgba(240, 240, 240, 0.35) !important;
  --gf-color-in-ctrl-light-lighter: hsl(0, 0%, 104.1176470588%) !important;
  --gf-color-in-ctrl-dark: #0f1922 !important;
  --gf-color-in-ctrl-dark-rgb: 15, 25, 34 !important;
  --gf-color-in-ctrl-dark-darker: #0f1922 !important;
  --gf-color-in-ctrl-dark-lighter: rgba(15, 25, 34, 0.65) !important;
  --gf-ctrl-border-color: #F0F0F0 !important;
  --gf-ctrl-label-color-primary: #0f1922 !important;
}
.form-holder .gform-theme--api .gform_validation_errors,
.form-holder .gform-theme--framework .gform_validation_errors {
  display: none !important;
}
.form-holder .gform-theme--api .gform_confirmation_message,
.form-holder .gform-theme--framework .gform_confirmation_message {
  background: #f1fbee !important;
  border: 1px solid #e0ecdd !important;
  border-radius: 8px !important;
  text-align: center !important;
  color: #11220f !important;
  padding: 12px !important;
}
@media (min-width: 48rem) {
  .form-holder .gform-theme--api .gform_confirmation_message,
  .form-holder .gform-theme--framework .gform_confirmation_message {
    padding: 24px !important;
  }
}
.form-holder .gform-theme--api .gform_required_legend,
.form-holder .gform-theme--framework .gform_required_legend {
  display: none !important;
}
.form-holder .gform-theme--api .gfield_label,
.form-holder .gform-theme--framework .gfield_label {
  text-transform: uppercase !important;
  letter-spacing: 0.28px !important;
}
.form-holder .gform-theme--api .gform-phone__country-selector,
.form-holder .gform-theme--framework .gform-phone__country-selector {
  height: var(--gf-ctrl-size) !important;
}
.form-holder .gform-theme--api .ginput_container_fileupload input[type=file],
.form-holder .gform-theme--framework .ginput_container_fileupload input[type=file] {
  cursor: pointer;
  line-height: var(--gf-ctrl-size);
}
.form-holder .gform-theme--api .ginput_container_fileupload input[type=file]::file-selector-button,
.form-holder .gform-theme--framework .ginput_container_fileupload input[type=file]::file-selector-button {
  cursor: pointer;
}
.form-holder .gform-theme--api .ginput_container_fileupload input[type=file]::-webkit-file-upload-button,
.form-holder .gform-theme--framework .ginput_container_fileupload input[type=file]::-webkit-file-upload-button {
  cursor: pointer;
}
.form-holder .gform-theme--api .gfield .ginput_container_select,
.form-holder .gform-theme--framework .gfield .ginput_container_select {
  position: relative;
}
.form-holder .gform-theme--api .gfield select.gfield_select,
.form-holder .gform-theme--framework .gfield select.gfield_select {
  height: 50px;
  padding: 0 16px;
  display: block;
  width: 100%;
  box-sizing: border-box;
  line-height: 50px;
}
.form-holder .gform-theme--api .gfield select.gfield_select,
.form-holder .gform-theme--framework .gfield select.gfield_select {
  color: #0F1922;
}
.form-holder .gform-theme--api .gfield select.gfield_select.is-placeholder,
.form-holder .gform-theme--framework .gfield select.gfield_select.is-placeholder {
  color: #0F1922;
}
.form-holder .gform-theme--api .gfield select.gfield_select:not(.is-placeholder),
.form-holder .gform-theme--framework .gfield select.gfield_select:not(.is-placeholder) {
  color: #0f1922;
}
.form-holder .gform-theme--api .gfield select.gfield_select option,
.form-holder .gform-theme--framework .gfield select.gfield_select option {
  color: #0f1922;
}
.form-holder .gform-theme--api .gfield select.gfield_select option[value=""],
.form-holder .gform-theme--framework .gfield select.gfield_select option[value=""] {
  color: #0F1922;
}
.form-holder .gform-theme--api .gfield:where(.gfield--type-multiselect, .gfield--input-type-multiselect) .chosen-container-multi:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--api .gfield:where(.gfield--type-select, .gfield--input-type-select) .chosen-search input[type=text]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--api .gfield:where(.gfield--type-select, .gfield--input-type-select) .chosen-single:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--api .gform-theme-field-control:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--api input[type]:where(:not(.gform-text-input-reset):not([type=hidden])):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--api select:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--api select[multiple]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--api textarea:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--framework .gfield:where(.gfield--type-multiselect, .gfield--input-type-multiselect) .chosen-container-multi:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--framework .gfield:where(.gfield--type-select, .gfield--input-type-select) .chosen-search input[type=text]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--framework .gfield:where(.gfield--type-select, .gfield--input-type-select) .chosen-single:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--framework .gform-theme-field-control:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--framework input[type]:where(:not(.gform-text-input-reset):not([type=hidden])):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--framework select:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--framework select[multiple]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder,
.form-holder .gform-theme--framework textarea:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::placeholder {
  color: #8B8B8B !important;
  opacity: 1 !important;
}
.form-holder .gform-theme--api textarea,
.form-holder .gform-theme--framework textarea {
  min-block-size: 100px;
}
.form-holder .gform-theme--api .button,
.form-holder .gform-theme--framework .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 400;
  font-size: clamp(12px, 1.1111111111vw, 16px) !important;
  line-height: 100% !important;
  letter-spacing: 0;
  text-transform: uppercase !important;
  color: var(--color-white) !important;
  text-decoration: none;
  border: 0;
  border-radius: 100px !important;
  background: var(--color-secondary) !important;
  cursor: pointer;
  padding: 21px 24px !important;
  transition: all 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .form-holder .gform-theme--api .button:hover,
  .form-holder .gform-theme--framework .button:hover {
    background: var(--color-main) !important;
    color: var(--color-white) !important;
  }
}

.style-h1,
h1 {
  font-size: clamp(28px, 3.3333333333vw, 48px);
  font-weight: 700;
  line-height: 1.05;
}

.style-h2,
h2 {
  font-size: clamp(24px, 2.5vw, 36px);
  font-weight: 700;
  line-height: 1.25;
}

.style-h3,
h3 {
  font-size: clamp(22px, 2.2222222222vw, 32px);
  font-weight: 700;
  line-height: normal;
}

.style-h4,
h4 {
  font-size: clamp(20px, 1.6666666667vw, 24px);
  font-weight: 700;
  line-height: normal;
}

.style-h5,
h5 {
  font-size: clamp(18px, 1.3888888889vw, 20px);
  font-weight: 500;
  line-height: normal;
}

.style-h6,
h6 {
  font-size: clamp(16px, 1.25vw, 18px);
  font-weight: 500;
  line-height: normal;
}

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

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

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

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

h1, h2, h3, h4, h5, h6,
.style-h1, .style-h2, .style-h3, .style-h4, .style-h5, .style-h6 {
  font-family: var(--font-secondary);
  letter-spacing: initial;
  text-transform: uppercase;
}

.suptitle {
  font-family: var(--font-main);
  font-size: clamp(14px, 1.25vw, 18px);
  text-transform: uppercase;
  margin-bottom: clamp(18px, 1.9444444444vw, 28px);
  font-weight: 700;
  line-height: 145%;
  letter-spacing: -2%;
}

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

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

.content-text > *:first-child {
  margin-top: 0;
}
.content-text > *:last-child {
  margin-bottom: 0;
}
.content-text h1, .content-text h2, .content-text h3, .content-text h4, .content-text h5, .content-text h6 {
  margin-top: 25px;
}
.content-text p {
  margin-top: 25px;
  letter-spacing: -2%;
}
.content-text p + *:not(p):not(.wp-caption) {
  margin-top: 25px;
}
.content-text p:last-of-type {
  margin-bottom: 0 !important;
}
.content-text p img {
  margin-top: 25px;
}
.content-text p a {
  color: var(--color-secondary);
}
.content-text p a:hover {
  text-decoration: underline;
}
.content-text hr {
  height: 1px;
  display: block;
  margin-top: 45px !important;
  margin-bottom: 45px;
  background: var(--color-main);
  border: none;
  clear: both;
}
.content-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 {
  margin-top: 0;
}
.content-text ul {
  list-style: disc;
  margin-bottom: 25px;
}
.content-text ul ul {
  list-style: circle;
  margin-top: 8px;
}
.content-text ol {
  list-style: decimal;
}
.content-text ol ul {
  list-style: circle;
  margin-top: 8px;
}
.content-text ul,
.content-text ol {
  padding-left: 20px;
  margin-top: 25px;
}
.content-text ul li,
.content-text ol li {
  line-height: 1.6;
}
.content-text ul li + li,
.content-text ol li + li {
  margin-top: 8px;
}
.content-text img {
  border-radius: 2px;
}
.content-text .alignleft {
  float: left;
  max-width: 45%;
  margin: 5px 35px 15px 0;
}
.content-text .alignleft.wp-caption {
  margin-right: 2rem;
}
.content-text .alignright {
  float: right;
  max-width: 45%;
  margin: 5px 0 15px 35px;
}
.content-text .alignright.wp-caption {
  margin-left: 2rem;
}
.content-text .aligncenter {
  padding: 10px 0;
  margin: 0 auto 2rem;
  clear: both;
}
.content-text .aligncenter.wp-caption {
  max-width: 100%;
}
.content-text .wp-caption {
  margin-bottom: 25px;
}
.content-text .wp-caption p {
  color: #888;
  font: italic 12px/16px var(--font-main);
  text-align: center;
  padding: 0 5px;
  margin: 10px 10px 0 0;
}

/* ---------- Buttons swiper.js ---------- */
.swiper-controls {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: clamp(24px, 2.2222222222vw, 32px);
}
@media (min-width: 48rem) {
  .swiper-controls {
    padding: 0 clamp(24px, 3.3333333333vw, 48px);
  }
}
.swiper-controls .swiper-pagination {
  position: static;
  text-align: left;
}
.swiper-controls .swiper-pagination .swiper-pagination-bullet {
  background: var(--color-white);
  opacity: 1;
}
.swiper-controls .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--color-secondary);
}

.container-buttons-swiper {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media (min-width: 40rem) {
  .container-buttons-swiper {
    justify-content: end;
  }
}
.container-buttons-swiper.buttons-center {
  align-items: center;
}
.container-buttons-swiper .swiper-button-prev,
.container-buttons-swiper .swiper-button-next {
  position: relative;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transform: none;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  height: 48px;
  width: 48px;
  background: var(--color-secondary);
  overflow: hidden;
  transition: background 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .container-buttons-swiper .swiper-button-prev:hover.anim-prev svg .first-el,
  .container-buttons-swiper .swiper-button-next:hover.anim-prev svg .first-el {
    transform: translateX(-70px);
  }
  .container-buttons-swiper .swiper-button-prev:hover.anim-prev svg .second-el,
  .container-buttons-swiper .swiper-button-next:hover.anim-prev svg .second-el {
    transform: translateX(0);
  }
  .container-buttons-swiper .swiper-button-prev:hover.anim-next svg .first-el,
  .container-buttons-swiper .swiper-button-next:hover.anim-next svg .first-el {
    transform: translateX(70px);
  }
  .container-buttons-swiper .swiper-button-prev:hover.anim-next svg .second-el,
  .container-buttons-swiper .swiper-button-next:hover.anim-next svg .second-el {
    transform: translateX(0);
  }
}
.container-buttons-swiper .swiper-button-prev:before, .container-buttons-swiper .swiper-button-prev:after,
.container-buttons-swiper .swiper-button-next:before,
.container-buttons-swiper .swiper-button-next:after {
  display: none;
}
.container-buttons-swiper .swiper-button-prev svg,
.container-buttons-swiper .swiper-button-next svg {
  display: block;
  position: absolute;
  height: 16px;
  width: auto;
  overflow: visible;
}
.container-buttons-swiper .swiper-button-prev svg path,
.container-buttons-swiper .swiper-button-next svg path {
  transition: all 0.3s ease;
}
.container-buttons-swiper .swiper-button-prev svg path.first-el {
  transform: translateX(0);
}
.container-buttons-swiper .swiper-button-prev svg path.second-el {
  transform: translateX(70px);
}
.container-buttons-swiper .swiper-button-next svg path.first-el {
  transform: translateX(0);
}
.container-buttons-swiper .swiper-button-next svg path.second-el {
  transform: translateX(-70px);
}

.main-blog {
  padding-top: calc(var(--nav-height) + 40px);
}

/* ---------- Archive ---------- */
.archive-header {
  margin-bottom: clamp(24px, 2.7777777778vw, 40px);
}

.no-posts {
  padding-block: 40px;
}

/* ---------- Carte d'article ---------- */
.post-card {
  display: flex;
  flex-direction: column;
}
.post-card .post-card-image {
  display: block;
  aspect-ratio: 4/5;
  border-radius: 16px;
  overflow: hidden;
  background: var(--color-grey);
}
.post-card .post-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.6s ease;
}
.post-card .post-card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  padding-top: 16px;
}
.post-card .post-card-title {
  margin-bottom: 8px;
}
.post-card .post-card-title a {
  color: inherit;
  text-decoration: none;
}
.post-card .post-card-desc {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  margin-bottom: 12px;
}
.post-card .post-card-link {
  margin-top: auto;
  font-weight: 800;
  line-height: 1.4;
  text-transform: uppercase;
  color: var(--color-secondary);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .post-card:hover .post-card-image img {
    transform: scale(1.04);
  }
  .post-card:hover .post-card-link {
    color: var(--color-main);
  }
}

/* ---------- Pagination ---------- */
.pagination {
  margin-top: clamp(40px, 4.4444444444vw, 64px);
}
.pagination .pagination-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding-inline: 12px;
  border-radius: 100px;
  border: 1px solid var(--color-border);
  font-size: 14px;
  color: var(--color-main);
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 48rem) {
  .pagination .page-numbers {
    min-width: 44px;
    height: 44px;
  }
}
.pagination .page-numbers svg {
  width: 14px;
  height: 14px;
  fill: currentColor;
}
.pagination .page-numbers.current {
  background: var(--color-secondary);
  border-color: var(--color-secondary);
  color: var(--color-white);
}
.pagination .page-numbers.dots {
  border-color: transparent;
}
@media (hover: hover) and (pointer: fine) {
  .pagination a.page-numbers:hover {
    border-color: var(--color-secondary);
    color: var(--color-secondary);
  }
}

/* ---------- Single ---------- */
.post-header {
  max-width: 860px;
  margin-inline: auto;
  margin-bottom: clamp(24px, 3.3333333333vw, 48px);
}
.post-header h1 {
  margin-bottom: 16px;
}

.post-back-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: clamp(24px, 2.7777777778vw, 40px);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-secondary);
  text-decoration: none;
  transition: color 0.3s ease;
}
.post-back-link svg {
  width: 12px;
  height: 12px;
  fill: currentColor;
}
@media (hover: hover) and (pointer: fine) {
  .post-back-link:hover {
    color: var(--color-main);
  }
}

.post-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  margin-bottom: 12px;
  color: var(--color-dark-grey);
}
.post-meta .post-meta-cat {
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-secondary);
  text-decoration: none;
}

.post-tagline {
  color: var(--color-dark-grey);
}

.single-post-article > .section-post-header ~ .section .container {
  max-width: 908px;
}

.post-featured-image {
  max-width: 1100px;
  margin-inline: auto;
  aspect-ratio: 16/9;
  border-radius: 16px;
  overflow: hidden;
}
.post-featured-image picture,
.post-featured-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.nav-mobile {
  position: fixed;
  z-index: 111;
  top: 0;
  left: 0;
  text-align: left;
  background: var(--color-white);
  padding-top: var(--app-headerHeight);
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  visibility: hidden;
  background: var(--color-white);
  opacity: 0;
  pointer-events: none;
}
.nav-mobile .main-mobile-menu a {
  transition: color 0.3s ease;
}
.nav-mobile .main-mobile-menu a:hover {
  color: var(--color-secondary);
}
.nav-mobile {
  transition: all 1s 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 .nav-mobile-holder {
  position: relative;
  overflow: hidden;
  font-weight: 800;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0;
  text-transform: uppercase;
}
.nav-mobile .nav-mobile-holder .overflow-content {
  overflow-y: auto;
  height: 100%;
}
.nav-mobile .nav-mobile-holder .first-level .menu-item a,
.nav-mobile .nav-mobile-holder .first-level .menu-item .submenu-back,
.nav-mobile .nav-mobile-holder .first-level .submenu-header a,
.nav-mobile .nav-mobile-holder .first-level .submenu-header .submenu-back,
.nav-mobile .nav-mobile-holder .first-level .submenu-parent-link a,
.nav-mobile .nav-mobile-holder .first-level .submenu-parent-link .submenu-back {
  display: flex;
  align-items: center;
  gap: 16px;
  font-weight: 500;
  width: 100%;
  padding-block: clamp(16px, 2.2222222222vw, 32px);
  padding-inline: clamp(16px, 2.2222222222vw, 32px);
}
.nav-mobile .nav-mobile-holder .first-level .menu-item a i,
.nav-mobile .nav-mobile-holder .first-level .menu-item .submenu-back i,
.nav-mobile .nav-mobile-holder .first-level .submenu-header a i,
.nav-mobile .nav-mobile-holder .first-level .submenu-header .submenu-back i,
.nav-mobile .nav-mobile-holder .first-level .submenu-parent-link a i,
.nav-mobile .nav-mobile-holder .first-level .submenu-parent-link .submenu-back i {
  font-size: 0.8em;
}
.nav-mobile .nav-mobile-holder .first-level .menu-item.menu-item-has-children > a,
.nav-mobile .nav-mobile-holder .first-level .submenu-header.menu-item-has-children > a,
.nav-mobile .nav-mobile-holder .first-level .submenu-parent-link.menu-item-has-children > a {
  padding-block: 0;
  padding-inline: 0;
  padding-inline-start: clamp(16px, 2.2222222222vw, 32px);
}
.nav-mobile .nav-mobile-holder .first-level .menu-item .submenu-chevron,
.nav-mobile .nav-mobile-holder .first-level .submenu-header .submenu-chevron,
.nav-mobile .nav-mobile-holder .first-level .submenu-parent-link .submenu-chevron {
  padding-block: clamp(16px, 2.2222222222vw, 32px);
  padding-inline: clamp(16px, 2.2222222222vw, 32px);
}
.nav-mobile .nav-mobile-holder .first-level .menu-item .submenu-back,
.nav-mobile .nav-mobile-holder .first-level .submenu-header .submenu-back,
.nav-mobile .nav-mobile-holder .first-level .submenu-parent-link .submenu-back {
  font-weight: 700;
  padding-block: clamp(16px, 2.2222222222vw, 32px);
  padding-inline: clamp(16px, 2.2222222222vw, 32px);
}
.nav-mobile .nav-mobile-holder .first-level .submenu-header,
.nav-mobile .nav-mobile-holder .first-level .submenu-parent-link {
  border-bottom: 1px solid var(--color-grey-2);
}
.nav-mobile .nav-mobile-holder .first-level .menu-item + .menu-item {
  border-top: 1px solid var(--color-grey-2);
}
.nav-mobile .nav-mobile-holder .first-level .menu-item.menu-item-has-children > a {
  justify-content: space-between;
}
.nav-mobile .nav-mobile-holder .first-level .menu-item .sub-menu {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  background: var(--color-white);
  height: 100%;
  width: 100%;
  overflow: auto;
  transform: translateX(100%);
  transition: transform 0.3s cubic-bezier(0.15, 0.65, 0.25, 1);
}
.nav-mobile .nav-mobile-holder .first-level .menu-item .sub-menu.is-active {
  transform: translateX(0);
}
.nav-mobile .nav-mobile-holder .first-level .menu-item .sub-menu .submenu-parent-link i {
  display: none;
}
.nav-mobile .nav-mobile-footer {
  padding-inline: clamp(16px, 2.2222222222vw, 32px);
}

.footer {
  color: var(--color-black);
}
.footer .main-footer {
  font-size: 16px;
}
.footer .main-footer .footer-cols {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 729px;
}
@media (min-width: 48rem) {
  .footer .main-footer .footer-cols {
    flex-direction: row;
  }
}
@media (min-width: 64rem) {
  .footer .main-footer .footer-cols {
    gap: 24px;
  }
}
.footer .main-footer .footer-cols .footer-col {
  flex: 1;
}
.footer .main-footer .footer-cols .footer-col.col-contact-informations {
  flex: 0 0 100%;
  text-align: left;
}
@media (min-width: 48rem) {
  .footer .main-footer .footer-cols .footer-col.col-contact-informations {
    flex: 0 0 36%;
  }
}
.footer .main-footer .footer-cols .footer-col.wp-menu-footer {
  flex: 0 0 100%;
  text-align: left;
}
@media (min-width: 48rem) {
  .footer .main-footer .footer-cols .footer-col.wp-menu-footer {
    flex: 0 0 auto;
  }
}
@media (min-width: 80rem) {
  .footer .main-footer .footer-cols .footer-col.wp-menu-footer {
    flex: 0 0 32%;
  }
}
.footer .main-footer .footer-cols .footer-col.wp-menu-footer-secondary {
  flex: 0 0 100%;
  text-align: left;
}
@media (min-width: 48rem) {
  .footer .main-footer .footer-cols .footer-col.wp-menu-footer-secondary {
    flex: 0 0 auto;
  }
}
@media (min-width: 80rem) {
  .footer .main-footer .footer-cols .footer-col.wp-menu-footer-secondary {
    flex: 0 0 32%;
  }
}
.footer .footer-col-holder {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 12px;
}
@media (min-width: 64rem) {
  .footer .footer-col-holder {
    gap: 36px;
    flex-direction: row;
  }
}
.footer .footer-col-holder .footer-logo {
  display: flex;
  flex-direction: column;
  gap: 24px;
  flex: 0 0 100%;
  padding-top: clamp(22px, 3.75vw, 54px);
  padding-bottom: clamp(22px, 3.75vw, 54px);
}
@media (min-width: 48rem) {
  .footer .footer-col-holder .footer-logo {
    flex-direction: row;
    justify-content: space-between;
    text-align: right;
  }
}
@media (min-width: 64rem) {
  .footer .footer-col-holder .footer-logo {
    flex-direction: column;
    justify-content: initial;
    max-width: 253px;
    flex: 0 0 30%;
    text-align: left;
  }
}
.footer .footer-col-holder .footer-logo .footer-ctas {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (min-width: 48rem) {
  .footer .footer-col-holder .footer-logo .footer-ctas {
    align-items: end;
  }
}
@media (min-width: 64rem) {
  .footer .footer-col-holder .footer-logo .footer-ctas {
    align-items: start;
  }
}
.footer .footer-col-holder .footer-logo img {
  width: 195px;
  transition: transform filters cubic-bezier(0.15, 0.65, 0.25, 1);
  transition: transform 0.3s ease;
}
@media (min-width: 48rem) {
  .footer .footer-col-holder .footer-logo img {
    width: 253px;
  }
}
.footer .footer-col-holder .footer-logo img:hover {
  transform: translateX(-2px);
  filter: brightness(1.05);
}
.footer .footer-col-holder .footer-logo .socials-holder {
  justify-content: start;
}
.footer .footer-col-holder .footer-logo .socials-holder li a i {
  font-size: 25px;
}
.footer .footer-col-holder .footer-col {
  flex: 1;
  padding-top: clamp(22px, 3.75vw, 54px);
  padding-bottom: clamp(22px, 3.75vw, 54px);
}
.footer .footer-col-holder .footer-col .footer-col-label {
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: start;
  font-weight: 700;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0;
  text-transform: uppercase;
  color: var(--color-secondary);
  margin-bottom: 12px;
}
.footer .footer-col-holder .footer-col .contact-informations {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 24px;
}
.footer .footer-col-holder .footer-col .contact-informations a {
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: start;
  transition: all 0.3s ease;
}
.footer .footer-col-holder .footer-col .contact-informations a:hover {
  color: var(--color-blue);
}
@media (min-width: 64rem) {
  .footer .footer-col-holder .footer-col .footer-schedule {
    max-width: 210px;
  }
}
.footer .footer-col-holder .footer-col .footer-schedule .footer-schedule-row {
  display: flex;
  justify-content: space-between;
}
.footer .footer-col-holder .footer-col .footer-schedule .footer-schedule-row + .footer-schedule-row {
  margin-top: 4px;
}
.footer .footer-col-holder .footer-col .footer-schedule .footer-schedule-row .footer-schedule-hours {
  text-align: right;
  max-width: 115px;
}
.footer .footer-col-holder .footer-col .menu-footer {
  text-align: left;
}
.footer .footer-col-holder .footer-col .menu-footer a {
  transition: all 0.3s ease;
}
.footer .footer-col-holder .footer-col .menu-footer a:hover {
  color: var(--color-blue);
}
.footer .footer-col-holder .footer-col .menu-footer li + li {
  margin-top: 4px;
}
.footer .footer-bottom {
  background: var(--color-secondary);
  color: var(--color-white);
}
.footer .footer-bottom a {
  color: var(--color-white);
  transition: opacity 0.3s ease;
}
.footer .footer-bottom a:hover {
  opacity: 0.8;
}
.footer .footer-bottom .footer-bottom-row {
  display: flex;
  flex-direction: column-reverse;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  font-size: 12px;
  text-align: center;
  padding-block: 12px;
}
@media (min-width: 64rem) {
  .footer .footer-bottom .footer-bottom-row {
    flex-direction: row;
    text-align: left;
  }
}
.footer .footer-bottom .footer-bottom-row nav ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
}