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

.text-color-main {
  color: #1a1818 !important;
}

.hover\:text-color-main:hover {
  color: #1a1818 !important;
}

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

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

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

.hover\:text-color-secondary:hover {
  color: #008345 !important;
}

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

.background-color-accent {
  background-color: #f9e347 !important;
}

.text-color-accent {
  color: #f9e347 !important;
}

.hover\:text-color-accent:hover {
  color: #f9e347 !important;
}

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

.background-color-accent-hover {
  background-color: #ecd008 !important;
}

.text-color-accent-hover {
  color: #ecd008 !important;
}

.hover\:text-color-accent-hover:hover {
  color: #ecd008 !important;
}

.border-color-accent-hover {
  border: 1px solid #ecd008 !important;
}

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

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

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

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

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

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

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

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

.background-color-bg-gray {
  background-color: #E9E9E9 !important;
}

.text-color-bg-gray {
  color: #E9E9E9 !important;
}

.hover\:text-color-bg-gray:hover {
  color: #E9E9E9 !important;
}

.border-color-bg-gray {
  border: 1px solid #E9E9E9 !important;
}

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

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

.hover\:text-color-border-gray:hover {
  color: #E9E9E9 !important;
}

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

:root {
  --color-main: #1a1818;
  --color-secondary: #008345;
  --color-accent: #f9e347;
  --color-accent-hover: #ecd008;
  --color-white: #ffffff;
  --color-black: #000000;
  --color-bg-gray: #E9E9E9;
  --color-border-gray: #E9E9E9;
  --nav-height: clamp(70px, 6.25vw, 120px);
  --window-height-without-menu: calc(100svh - clamp(70px, 6.25vw, 120px));
  --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: 1350px;
  --width-medium: 1160px;
  --width-small: 900px;
  --font-main: "Roboto", sans-serif;
  --font-secondary: "Lora", sans-serif;
}

@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;
  }
}
.gform_wrapper {
  --lws-color-error: #b40404;
}
.gform_wrapper form.is-loading .gform_body,
.gform_wrapper form.is-loading .gform_button {
  opacity: 0.6 !important;
  pointer-events: none !important;
}
.gform_wrapper .gform_confirmation_message {
  background: color-mix(in srgb, var(--color-secondary) 10%, transparent) !important;
  color: var(--color-secondary);
  padding: 24px;
}
.gform_wrapper .gform_confirmation_message * {
  color: inherit;
}
.gform_wrapper .gform_validation_errors {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: color-mix(in srgb, var(--lws-color-error) 10%, transparent);
  color: var(--lws-color-error) !important;
  padding: 24px !important;
}
.gform_wrapper .gsection_title {
  font-size: clamp(24px, 1.4583333333vw, 28px);
}

.gform_heading {
  display: none !important;
}

.gform_wrapper {
  /* Couleurs de base */
  --gf-color-primary: var(--color-secondary) !important; /* accent / hover */
  --gf-color-secondary: var(--color-accent-hover) !important; /* accent hover secondaire */
  --gf-color-text: var(--color-main) !important; /* texte normal */
  --gf-color-text-muted: var(--color-bg-gray) !important; /* texte description / helper */
  --gf-color-text-hover: var(--color-secondary) !important; /* texte hover */
  --gf-color-bg: var(--color-white) !important; /* fond formulaire */
  --gf-ctrl-bg-color: var(--gf-color-bg) !important; /* fond inputs */
  --gf-ctrl-border-color: var(--color-border-gray) !important; /* border inputs */
  --gf-ctrl-border-hover: var(--color-secondary) !important; /* border hover */
  --gf-ctrl-shadow: none !important;
  --gf-ctrl-size: 48px !important;
  --gf-ctrl-bg-color-focus: var(--color-white) !important;
  --gf-ctrl-border-color-focus: var(--color-secondary) !important;
  --gf-ctrl-color-focus: var(--color-main) !important;
  --gf-ctrl-outline-color-focus: var(--color-secondary) !important;
  --gf-ctrl-outline-width-focus: 1px !important;
  --gf-ctrl-file-zone-icon-color: var(--color-secondary) !important;
  --gf-ctrl-choice-check-color: var(--color-secondary) !important;
  /* Taille / padding / radius (non overwrite, commenté) */
  /* --gf-ctrl-radius: 0px !important; */
  /* --gf-ctrl-padding: 0.5rem 0.75rem !important; */
  /* Typographie (non overwrite, commenté) */
  /* --gf-font-family: var(--font-main) !important; */
  /* --gf-font-size: 1rem !important; */
  /* --gf-font-size-label: 0.875rem !important; */
  /* --gf-font-size-desc: 0.75rem !important; */
  /* --gf-font-weight: 400 !important; */
  /* --gf-font-weight-label: 600 !important; */
  /* Messages */
  --gf-color-error: var(--color-error) !important; /* texte erreur */
  --gf-color-success: var(--color-secondary) !important; /* texte succès / accent */
  --gf-color-error-bg: var(--color-error-background) !important; /* bg erreur */
  --gf-color-success-bg: var(--color-success-background) !important; /* bg succès */
  --gf-color-error-border: var(--color-error-border) !important; /* border erreur */
  --gf-color-success-border: var(--color-success-border) !important; /* border succès */
  /* Placeholder / focus / disabled */
  --gf-color-placeholder: var(--color-bg-gray) !important; /* texte placeholder */
  --gf-color-focus: var(--color-secondary) !important; /* border / accent focus */
  /* --gf-disabled-bg: #f9f9f9 !important; */
  /* --gf-disabled-color: #ccc !important; */
  /* Boutons */
  --gf-btn-color: var(--color-white) !important; /* texte boutons */
  --gf-btn-color-hover: var(--color-main) !important; /* texte boutons */
  --gf-btn-bg: var(--color-secondary) !important; /* background boutons / accent */
  --gf-btn-bg-hover: var(--color-accent-hover) !important; /* background hover boutons */
  --gf-btn-padding: 12px 22px !important;
  --gf-btn-radius: 3px !important;
  --gf-btn-font-weight: 700 !important;
  --gf-btn-font-size: fnc.custom_clamp(18px, 20px) !important;
  /* Checkbox / Radio */
  --gf-ctrl-check-color: var(--color-secondary) !important; /* check / radio accent */
  --gf-ctrl-check-bg: var(--color-white) !important; /* check / radio bg */
  --gf-ctrl-check-border: var(--color-border-gray) !important; /* check / radio border */
  /* Inputs / select / textarea / button */
}
.gform_wrapper input,
.gform_wrapper select,
.gform_wrapper textarea {
  color: var(--gf-color-text) !important;
  background-color: var(--gf-ctrl-bg-color) !important;
  border: 1px solid var(--gf-ctrl-border-color) !important;
  border-radius: var(--gf-ctrl-radius) !important;
  /* padding: var(--gf-ctrl-padding) !important; */
  /* font-family: var(--gf-font-family) !important; */
  /* font-size: var(--gf-font-size) !important; */
  /* font-weight: var(--gf-font-weight) !important; */
  box-sizing: border-box;
  line-height: var(--gf-ctrl-size);
}
.gform_wrapper input:hover, .gform_wrapper input:focus,
.gform_wrapper select:hover,
.gform_wrapper select:focus,
.gform_wrapper textarea:hover,
.gform_wrapper textarea:focus {
  color: var(--gf-color-text-hover) !important; /* texte hover */
  border-color: var(--gf-ctrl-border-hover) !important; /* border hover */
  background-color: #efefef !important; /* fond hover */
}
.gform_wrapper input::placeholder,
.gform_wrapper select::placeholder,
.gform_wrapper textarea::placeholder {
  color: var(--gf-color-placeholder) !important; /* placeholder texte */
  opacity: 1;
}
.gform_wrapper input:disabled,
.gform_wrapper select:disabled,
.gform_wrapper textarea:disabled {
  /* background-color: var(--gf-disabled-bg) !important; */
  /* color: var(--gf-disabled-color) !important; */
  cursor: not-allowed;
}
.gform_wrapper textarea {
  line-height: 1.5;
}
.gform_wrapper {
  /* Labels et description */
}
.gform_wrapper label {
  /* font-size: var(--gf-font-size-label) !important; */
  /* font-weight: var(--gf-font-weight-label) !important; */
  color: var(--gf-color-text) !important;
}
.gform_wrapper label:hover {
  color: var(--gf-color-text-hover) !important; /* texte hover */
}
.gform_wrapper .gfield_label {
  cursor: pointer;
}
.gform_wrapper .gfield_description {
  /* font-size: var(--gf-font-size-desc) !important; */
  color: var(--gf-color-text-muted) !important; /* texte description */
}
.gform_wrapper .gfield_error .gfield_label {
  color: var(--lws-color-error) !important;
}
.gform_wrapper .gfield_error .gfield_description {
  color: var(--lws-color-error) !important;
}
.gform_wrapper {
  /* Boutons */
}
.gform_wrapper button {
  border: 0 !important;
  color: var(--gf-btn-color) !important;
  background-color: var(--gf-btn-bg) !important;
}
.gform_wrapper button:hover {
  background-color: var(--gf-btn-bg-hover) !important; /* hover background */
  color: var(--gf-btn-color-hover) !important; /* texte hover */
}
.gform_wrapper button:not(.add_list_item):not(.delete_list_item) {
  padding: var(--gf-btn-padding) !important;
  border-radius: var(--gf-btn-radius) !important;
  font-weight: var(--gf-btn-font-weight) !important;
  font-size: var(--gf-btn-font-size) !important;
}
.gform_wrapper {
  /* Liens et textes interactifs */
}
.gform_wrapper a:hover {
  color: var(--gf-color-text-hover) !important; /* texte hover */
}
.gform_wrapper {
  /* Checkbox / Radio hover */
}
.gform_wrapper .gfield_checkbox li:hover,
.gform_wrapper .gfield_radio li:hover {
  color: var(--gf-color-text-hover) !important; /* texte hover */
}
.gform_wrapper .gfield_checkbox .gform-field-label,
.gform_wrapper .gfield_radio .gform-field-label {
  cursor: pointer;
}
.gform_wrapper .gfield_radio input {
  border-radius: 50% !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 Select */
/* ---------------------------------------------------------------------------- */
.nice-select {
  -webkit-tap-highlight-color: transparent;
  background-color: #fff;
  border-radius: 5px;
  border: solid 1px #e8e8e8;
  box-sizing: border-box;
  clear: both;
  cursor: pointer;
  display: block;
  float: left;
  font-family: inherit;
  font-size: 14px;
  font-weight: normal;
  height: 42px;
  line-height: 40px;
  outline: none;
  padding-left: 18px;
  padding-right: 30px;
  position: relative;
  text-align: left !important;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
  width: auto;
}
.nice-select:hover {
  border-color: #dbdbdb;
}
.nice-select:active, .nice-select.open, .nice-select:focus {
  border-color: #999;
}
.nice-select:after {
  border-bottom: 2px solid #999;
  border-right: 2px solid #999;
  content: "";
  display: block;
  height: 5px;
  margin-top: -4px;
  pointer-events: none;
  position: absolute;
  right: 12px;
  top: 50%;
  -webkit-transform-origin: 66% 66%;
  -ms-transform-origin: 66% 66%;
  transform-origin: 66% 66%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
  width: 5px;
}
.nice-select.open:after {
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.nice-select.open .list {
  opacity: 1;
  pointer-events: auto;
  -webkit-transform: scale(1) translateY(0);
  -ms-transform: scale(1) translateY(0);
  transform: scale(1) translateY(0);
}
.nice-select.disabled {
  border-color: #ededed;
  color: #999;
  pointer-events: none;
}
.nice-select.disabled:after {
  border-color: #cccccc;
}
.nice-select .list {
  background-color: #fff;
  border-radius: 5px;
  box-shadow: 0 0 0 1px rgba(68, 68, 68, 0.11);
  box-sizing: border-box;
  margin-top: 4px;
  opacity: 0;
  overflow: hidden;
  padding: 0;
  pointer-events: none;
  position: absolute;
  top: 100%;
  left: 0;
  -webkit-transform-origin: 50% 0;
  -ms-transform-origin: 50% 0;
  transform-origin: 50% 0;
  -webkit-transform: scale(0.75) translateY(-21px);
  -ms-transform: scale(0.75) translateY(-21px);
  transform: scale(0.75) translateY(-21px);
  -webkit-transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
  transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
  z-index: 9;
}
.nice-select .list:hover .option:not(:hover) {
  background-color: transparent !important;
}
.nice-select .list .option:hover,
.nice-select .list .option.focus,
.nice-select .list .option.selected.focus {
  background-color: #f6f6f6;
}
.nice-select .list .option {
  cursor: pointer;
  font-weight: 400;
  line-height: 40px;
  list-style: none;
  min-height: 40px;
  outline: none;
  padding-left: 18px;
  padding-right: 29px;
  text-align: left;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.nice-select .list .option.selected {
  font-weight: bold;
}
.nice-select .list .option.disabled {
  background-color: transparent;
  color: #999;
  cursor: default;
}

.no-csspointerevents .nice-select .list {
  display: none;
}

.no-csspointerevents .nice-select.open .list {
  display: block;
}

.lws-filters-list {
  display: flex;
  flex-wrap: nowrap;
  padding-bottom: clamp(24px, 2.0833333333vw, 40px);
  margin-bottom: clamp(24px, 2.0833333333vw, 40px);
  border-bottom: 1px solid var(--color-border-gray);
  overflow-x: auto;
  gap: 0.75rem;
  width: 100%;
}
@media (min-width: 64rem) {
  .lws-filters-list {
    flex-wrap: wrap;
  }
}
.lws-filters-list .filter-btn {
  justify-content: center;
  text-align: center;
  white-space: nowrap;
  background: transparent;
  color: var(--color-black);
  border: 1px solid var(--color-border-gray);
  font-size: clamp(12px, 1.0416666667vw, 20px);
  padding: clamp(12px, 1.0416666667vw, 20px) clamp(16px, 1.875vw, 36px);
  font-weight: 500;
  text-transform: uppercase;
}
.lws-filters-list .filter-btn[aria-selected=true] {
  background: var(--color-bg-gray);
  color: var(--color-black);
}
@media (hover: hover) and (pointer: fine) {
  .lws-filters-list .filter-btn:hover {
    background: var(--color-bg-gray);
    color: var(--color-black);
  }
}
.lws-filters-list .filter-btn.active {
  background: var(--color-bg-gray);
}

.style-h1,
h1 {
  font-size: clamp(34px, 3.75vw, 72px);
  font-weight: 900;
  line-height: 1.1;
}

.style-h2,
h2 {
  font-size: clamp(28px, 2.5vw, 48px);
  font-weight: 700;
  line-height: 1.1;
}

.style-h3,
h3 {
  font-size: clamp(24px, 1.875vw, 36px);
  font-weight: 700;
  line-height: 1.1;
}

.style-h4,
h4 {
  font-size: clamp(22px, 1.5625vw, 30px);
  font-weight: 700;
  line-height: 1.1;
}

.style-h5,
h5 {
  font-size: clamp(20px, 1.25vw, 24px);
  font-weight: 700;
  line-height: 1.1;
}

.style-h6,
h6 {
  font-size: clamp(16px, 1.0416666667vw, 20px);
  font-weight: 700;
  line-height: 1.1;
}

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

.style-font-26,
font-26 {
  font-size: clamp(20px, 1.3541666667vw, 26px);
  font-weight: 700;
  line-height: 1.1;
}

.style-font-24,
font-24 {
  font-size: clamp(18px, 1.25vw, 24px);
  font-weight: 600;
  line-height: 1.1;
}

.style-font-20,
font-20 {
  font-size: clamp(17px, 1.0416666667vw, 20px);
  font-weight: 500;
  line-height: 1.5;
}

.style-font-19,
font-19 {
  font-size: clamp(16px, 0.9895833333vw, 19px);
  font-weight: 400;
  line-height: 1.1;
}

.style-font-18,
font-18 {
  font-size: clamp(15px, 0.9375vw, 18px);
  font-weight: 500;
  line-height: 1.5;
}

/* 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 */
h1, h2, h3, h4, h5, h6,
.style-h1, .style-h2, .style-h3, .style-h4, .style-h5, .style-h6 {
  font-family: var(--font-secondary);
}

.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);
}

.content-text > *:first-child,
.block-text > *:first-child {
  margin-top: 0;
}
.content-text > *:last-child,
.block-text > *:last-child {
  margin-bottom: 0;
}
.content-text p,
.block-text p {
  margin-top: 25px;
}
.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;
}
.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 hr,
.block-text hr {
  height: 1px;
  display: block;
  margin-top: 45px !important;
  margin-bottom: 45px;
  background: var(--color-main);
  border: none;
  clear: both;
}
.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 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 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;
}

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

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

html {
  overflow-x: hidden;
  overflow-y: auto;
}

body {
  background: var(--color-white);
  font-family: var(--font-main);
  font-size: clamp(17px, 1.1458333333vw, 22px);
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-black);
  position: relative;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

::selection {
  color: white;
  background: var(--color-main);
}

/* ---------- General ---------- */
.lws-border {
  border-color: var(--color-border-gray);
}

/* ---------- Containers ---------- */
.container {
  padding-right: 24px;
  padding-left: 24px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  max-width: 1665px;
}
@media (min-width: 48rem) {
  .container {
    width: 94%;
  }
}
@media (min-width: 64rem) {
  .container {
    width: 88%;
  }
}
.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);
}

/* ---------- Img ---------- */
img:not([src]):not([srcset]) {
  visibility: hidden;
}

/* ---------- Socials ---------- */
.socials-holder {
  display: flex;
  gap: clamp(16px, 1.25vw, 24px);
}
.socials-holder a {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-border-gray);
  background: var(--color-white);
  height: clamp(40px, 2.8645833333vw, 55px);
  width: clamp(40px, 2.8645833333vw, 55px);
  transition: all 0.3s ease;
}
.socials-holder a:hover {
  background: var(--color-bg-gray);
  color: var(--color-black);
  text-decoration: none;
}
.socials-holder a i {
  display: block;
  font-size: clamp(18px, 1.5625vw, 30px);
  color: var(--color-main);
}

/* ---------- Buttons slider ---------- */
.container-buttons-slider {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media (min-width: 40rem) {
  .container-buttons-slider {
    justify-content: end;
  }
}
.container-buttons-slider.buttons-center {
  align-items: center;
}
.container-buttons-slider .swiper-button-prev,
.container-buttons-slider .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: clamp(54px, 3.6458333333vw, 70px);
  width: clamp(54px, 3.6458333333vw, 70px);
  border: 1px solid var(--color-border-gray);
  background: transparent;
  overflow: hidden;
  transition: background 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .container-buttons-slider .swiper-button-prev:hover,
  .container-buttons-slider .swiper-button-next:hover {
    background: var(--color-bg-gray);
    color: var(--color-black);
  }
  .container-buttons-slider .swiper-button-prev:hover.anim-prev svg .first-el,
  .container-buttons-slider .swiper-button-next:hover.anim-prev svg .first-el {
    transform: translateX(-70px);
  }
  .container-buttons-slider .swiper-button-prev:hover.anim-prev svg .second-el,
  .container-buttons-slider .swiper-button-next:hover.anim-prev svg .second-el {
    transform: translateX(0);
  }
  .container-buttons-slider .swiper-button-prev:hover.anim-next svg .first-el,
  .container-buttons-slider .swiper-button-next:hover.anim-next svg .first-el {
    transform: translateX(70px);
  }
  .container-buttons-slider .swiper-button-prev:hover.anim-next svg .second-el,
  .container-buttons-slider .swiper-button-next:hover.anim-next svg .second-el {
    transform: translateX(0);
  }
}
.container-buttons-slider .swiper-button-prev:before, .container-buttons-slider .swiper-button-prev:after,
.container-buttons-slider .swiper-button-next:before,
.container-buttons-slider .swiper-button-next:after {
  display: none;
}
.container-buttons-slider .swiper-button-prev svg,
.container-buttons-slider .swiper-button-next svg {
  display: block;
  position: absolute;
  height: clamp(10px, 0.78125vw, 15px);
  width: auto;
  overflow: visible;
}
.container-buttons-slider .swiper-button-prev svg path,
.container-buttons-slider .swiper-button-next svg path {
  transition: all 0.3s ease;
}
.container-buttons-slider .swiper-button-lock {
  display: none !important;
}
.container-buttons-slider .swiper-button-prev svg path.first-el {
  transform: translateX(0);
}
.container-buttons-slider .swiper-button-prev svg path.second-el {
  transform: translateX(70px);
}
.container-buttons-slider .swiper-button-next svg path.first-el {
  transform: translateX(0);
}
.container-buttons-slider .swiper-button-next svg path.second-el {
  transform: translateX(-70px);
}

.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: 5;
  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;
}
.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 .bg-grayscale::after {
  background: #1a1818;
  bottom: 0;
  content: "";
  display: inline-block;
  left: 0;
  opacity: 0.67;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
}
.section .block {
  position: relative;
  z-index: 10;
}
.section .block-custom-width {
  margin-right: auto !important;
  margin-left: auto !important;
}
.section .block-animate-carousel {
  overflow: hidden;
}
.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 {
  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;
  transition: all 0.3s ease;
}
.nav-mobile.is-active {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
.nav-mobile .nav-mobile-holder {
  position: relative;
  overflow: hidden;
}
.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;
  padding-block: clamp(16px, 1.6666666667vw, 32px);
  padding-inline: clamp(16px, 1.6666666667vw, 32px);
  width: 100%;
  transition: background 0.3s ease;
}
.nav-mobile .nav-mobile-holder .first-level .menu-item a:hover,
.nav-mobile .nav-mobile-holder .first-level .menu-item .submenu-back:hover,
.nav-mobile .nav-mobile-holder .first-level .submenu-header a:hover,
.nav-mobile .nav-mobile-holder .first-level .submenu-header .submenu-back:hover,
.nav-mobile .nav-mobile-holder .first-level .submenu-parent-link a:hover,
.nav-mobile .nav-mobile-holder .first-level .submenu-parent-link .submenu-back:hover {
  background: var(--color-border-gray);
}
.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 .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;
}
.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-border-gray);
}
.nav-mobile .nav-mobile-holder .first-level .menu-item + .menu-item {
  border-top: 1px solid var(--color-border-gray);
}
.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 ease;
}
.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 {
  border-top: 1px solid var(--color-border-gray);
  padding-inline: clamp(16px, 1.6666666667vw, 32px);
}

.footer {
  position: relative;
  overflow: hidden;
}
.footer a {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: rgba(0, 0, 0, 0);
  transition: all 0.3s ease;
}
.footer a:hover {
  text-decoration-color: var(--color-white);
}
.footer .bg-svg {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: auto;
  height: 100%;
  opacity: 0.15;
  pointer-events: none;
}
@media (min-width: 64rem) {
  .footer .bg-svg {
    display: block;
  }
}
.footer .container-info-footer {
  position: relative;
  z-index: 10;
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
@media (min-width: 64rem) {
  .footer .container-info-footer {
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
  }
}
.footer .container-info-footer .footer-info-left {
  grid-column: span 1;
}
.footer .container-info-footer .footer-info-left .title {
  font-size: clamp(34px, 3.6458333333vw, 70px);
}
.footer .container-info-footer .footer-info-left .content {
  padding-top: clamp(24px, 1.7708333333vw, 34px);
}
.footer .container-info-footer .footer-info-left .footer-socials {
  padding-top: clamp(24px, 2.5vw, 48px);
  display: flex;
  flex-direction: column;
}
.footer .container-info-footer .footer-info-right {
  grid-column: span 1;
  display: flex;
  flex-direction: column;
  margin-bottom: auto;
}
.footer .container-info-footer .footer-info-right .footer-links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: clamp(16px, 1.25vw, 24px);
}
.footer .container-info-footer .footer-info-right .footer-links li {
  width: 100%;
  display: flex;
}
@media (min-width: 48rem) {
  .footer .container-info-footer .footer-info-right .footer-links li {
    width: 48%;
  }
}
.footer .container-copyright {
  padding-top: 48px;
}
.footer .container-copyright .copyright {
  position: relative;
  z-index: 10;
  display: inline-block;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.25rem;
}
.footer .container-copyright .copyright span,
.footer .container-copyright .copyright a,
.footer .container-copyright .copyright svg {
  display: inline-flex;
  align-items: center;
}
.footer .container-copyright .copyright a {
  white-space: nowrap;
}
.footer .container-copyright .menu-utility {
  position: relative;
  z-index: 10;
}