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

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

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

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

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

.border-color-secondary {
  border: 1px solid #f07a14 !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: #000000 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.border-color-grey-3 {
  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;
  }
}
/* ---------------------------------------------------------------------------- */
/* Imports */
/* ---------------------------------------------------------------------------- */
/* ---------- Content text ---------- */
/* ---------- Forms ---------- */
/* ---------------------------------------------------------------------------- */
/* 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, 8.5416666667vw, 164px) 0;
  min-height: 70vh;
}
.password-protected form {
  text-align: center;
  margin-top: 32px;
  width: 100%;
}
.password-protected form input {
  font-size: clamp(28px, 1.875vw, 36px);
  text-align: center;
  color: var(--color-main);
  border: 1px solid var(--color-grey-2);
  height: clamp(70px, 4.6875vw, 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, 2.5vw, 48px);
}

/* ---------- Breadcrumb ---------- */
/* ---------- Blocks ---------- */
/* ---------- Blog ---------- */
/* ---------- Footer ---------- */
.gform_wrapper form {
  position: relative;
}
.gform_wrapper form.is-loading {
  opacity: 0.4;
  pointer-events: none;
  transition: all 0.3s ease;
}
.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: 0.9375em 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: 1em;
}

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

.gform_footer {
  text-align: right;
}

.gfield_label {
  display: block;
  margin-bottom: 0.625rem;
  font-weight: bold;
}

.gform_fields {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style-type: none;
  margin: 0 -10px;
  padding: 0;
}
.gform_fields .gfield {
  flex: 0 0 100%;
  max-width: 100%;
  clear: both;
  margin: 10px 0;
  padding: 0 10px;
}
@media (min-width: 48rem) {
  .gform_fields .gfield.gfield--width-quarter {
    flex: 0 0 50%;
    max-width: 50%;
  }
}
@media (min-width: 80rem) {
  .gform_fields .gfield.gfield--width-quarter {
    flex: 0 0 25%;
    max-width: 25%;
  }
}
@media (min-width: 48rem) {
  .gform_fields .gfield.gfield--width-third {
    flex: 0 0 33.33%;
    max-width: 33.33%;
  }
}
@media (min-width: 48rem) {
  .gform_fields .gfield.gfield--width-half {
    flex: 0 0 50%;
    max-width: 50%;
  }
}
.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,
.gform_fields .gfield select {
  width: 100%;
  color: var(--color-black);
  display: flex;
  align-items: center;
  height: 75px;
  background: white;
  padding: 0 20px;
  outline: none;
  border: 2px solid #E1E0EA;
  border-radius: 0;
}
.gform_fields .gfield input[type=tel]::-webkit-input-placeholder,
.gform_fields .gfield input[type=text]::-webkit-input-placeholder,
.gform_fields .gfield input[type=email]::-webkit-input-placeholder,
.gform_fields .gfield input[type=number]::-webkit-input-placeholder,
.gform_fields .gfield input[type=password]::-webkit-input-placeholder,
.gform_fields .gfield textarea::-webkit-input-placeholder,
.gform_fields .gfield .nice-select::-webkit-input-placeholder,
.gform_fields .gfield select::-webkit-input-placeholder {
  color: var(--color-main);
}
.gform_fields .gfield input[type=tel]:-moz-placeholder,
.gform_fields .gfield input[type=text]:-moz-placeholder,
.gform_fields .gfield input[type=email]:-moz-placeholder,
.gform_fields .gfield input[type=number]:-moz-placeholder,
.gform_fields .gfield input[type=password]:-moz-placeholder,
.gform_fields .gfield textarea:-moz-placeholder,
.gform_fields .gfield .nice-select:-moz-placeholder,
.gform_fields .gfield select:-moz-placeholder {
  color: var(--color-main);
}
.gform_fields .gfield input[type=tel]::-moz-placeholder,
.gform_fields .gfield input[type=text]::-moz-placeholder,
.gform_fields .gfield input[type=email]::-moz-placeholder,
.gform_fields .gfield input[type=number]::-moz-placeholder,
.gform_fields .gfield input[type=password]::-moz-placeholder,
.gform_fields .gfield textarea::-moz-placeholder,
.gform_fields .gfield .nice-select::-moz-placeholder,
.gform_fields .gfield select::-moz-placeholder {
  color: var(--color-main);
}
.gform_fields .gfield input[type=tel]:-ms-input-placeholder,
.gform_fields .gfield input[type=text]:-ms-input-placeholder,
.gform_fields .gfield input[type=email]:-ms-input-placeholder,
.gform_fields .gfield input[type=number]:-ms-input-placeholder,
.gform_fields .gfield input[type=password]:-ms-input-placeholder,
.gform_fields .gfield textarea:-ms-input-placeholder,
.gform_fields .gfield .nice-select:-ms-input-placeholder,
.gform_fields .gfield select:-ms-input-placeholder {
  color: var(--color-main);
}
.gform_fields .gfield textarea {
  padding: 22px 20px;
  min-height: 190px;
}
.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;
}

.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 var(--color-main);
}
[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: var(--color-main);
  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: var(--color-main);
}

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

/* ---------- 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;
}

/* ---------------------------------------------------------------------------- */
/* 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 %ct.style-p;
      color: var(--color-secondary);
    }
  }
}
*/
.style-h1,
h1 {
  font-size: clamp(48px, 3.3333333333vw, 64px);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* Titles */
.suptitle {
  font: 500 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,
.block-text {
  /* ---------- Paragraphs ---------- */
}
.content-text p,
.block-text p {
  margin-top: 25px;
}
.content-text p strong,
.block-text p strong {
  font-weight: 600;
}
.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,
.block-text {
  /* ---------- Separators ---------- */
}
.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,
.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;
}

*, *: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: 18px;
  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);
}

/* ---------- 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;
}

.text-pretty {
  text-wrap: pretty;
}

.text-balance {
  text-wrap: balance;
}

.imageCaption {
  margin-top: 0.5rem;
  font-style: italic;
  font-size: 14px;
}

/* ---------- Socials ---------- */
.socials-holder {
  display: flex;
  gap: 6px;
}
.socials-holder li:hover a svg path {
  fill: var(--color-secondary);
}
.socials-holder li a {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  height: 24px;
  width: 24px;
}
.socials-holder li a:hover svg path {
  fill: var(--color-secondary);
}
.socials-holder li a svg {
  display: block;
  height: 24px;
  width: auto;
}
.socials-holder li a svg path {
  transition: fill 0.3s ease;
}
.socials-holder li a i {
  position: absolute;
  z-index: 10;
  font-size: 14px;
  color: var(--color-white);
}

/* ---------- Buttons swiper.js ---------- */
.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: clamp(54px, 3.6458333333vw, 70px);
  width: clamp(54px, 3.6458333333vw, 70px);
  border: 1px solid var(--color-black);
  background: transparent;
  overflow: hidden;
  transition: background 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .container-buttons-swiper .swiper-button-prev:hover,
  .container-buttons-swiper .swiper-button-next:hover {
    background: var(--color-white);
    color: var(--color-black);
  }
  .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: clamp(10px, 0.78125vw, 15px);
  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);
}

.content-text {
  margin: 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: 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 .block {
  position: relative;
  z-index: 10;
}
.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 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;
}
.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, 1.6666666667vw, 32px);
  padding-inline: clamp(16px, 1.6666666667vw, 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, 1.6666666667vw, 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, 1.6666666667vw, 32px);
  padding-inline: clamp(16px, 1.6666666667vw, 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, 1.6666666667vw, 32px);
  padding-inline: clamp(16px, 1.6666666667vw, 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, 1.6666666667vw, 32px);
}

.footer nav a {
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: rgba(0, 0, 0, 0);
  transition: text-decoration 0.3s ease;
}
.footer nav a:hover {
  text-decoration-color: var(--color-main);
}
.footer .footer-container,
.footer .footer-bottom {
  border-top: 1px solid var(--color-border);
  line-height: 1.35;
  font-weight: 500;
}
.footer .footer-container .footer-col-holder,
.footer .footer-bottom .footer-col-holder {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.footer .footer-container .footer-col-holder .footer-col,
.footer .footer-bottom .footer-col-holder .footer-col {
  flex: 0 0 auto;
  width: 100%;
  padding-right: clamp(16px, 3.3333333333vw, 64px);
  padding-left: clamp(16px, 3.3333333333vw, 64px);
}
@media (min-width: 64rem) {
  .footer .footer-container .footer-col-holder .footer-col,
  .footer .footer-bottom .footer-col-holder .footer-col {
    width: 33.33%;
  }
}
.footer .footer-container .footer-col-holder .footer-col.large,
.footer .footer-bottom .footer-col-holder .footer-col.large {
  padding-top: clamp(24px, 2.1875vw, 42px);
  padding-bottom: clamp(24px, 2.1875vw, 42px);
}
@media (min-width: 64rem) {
  .footer .footer-container .footer-col-holder .footer-col:not(:first-child),
  .footer .footer-bottom .footer-col-holder .footer-col:not(:first-child) {
    border-left: 1px solid var(--color-border);
  }
}
.footer .footer-container .footer-col-holder .footer-col:not(:last-child),
.footer .footer-bottom .footer-col-holder .footer-col:not(:last-child) {
  border-bottom: 1px solid var(--color-border);
}
@media (min-width: 64rem) {
  .footer .footer-container .footer-col-holder .footer-col:not(:last-child),
  .footer .footer-bottom .footer-col-holder .footer-col:not(:last-child) {
    border-bottom: 0;
  }
}
.footer .footer-container .footer-col-holder .footer-col.logo,
.footer .footer-bottom .footer-col-holder .footer-col.logo {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 64rem) {
  .footer .footer-container .footer-col-holder .footer-col.logo a,
  .footer .footer-bottom .footer-col-holder .footer-col.logo a {
    flex: 1 0 auto;
    max-width: 450px;
  }
}
.footer .footer-container .footer-col-holder .footer-col.logo img,
.footer .footer-bottom .footer-col-holder .footer-col.logo img {
  max-width: 125px;
}
@media (min-width: 64rem) {
  .footer .footer-container .footer-col-holder .footer-col.logo img,
  .footer .footer-bottom .footer-col-holder .footer-col.logo img {
    width: 100%;
    max-height: none;
  }
}
.footer .footer-container .footer-col-holder .footer-col.col-menu nav .menu,
.footer .footer-bottom .footer-col-holder .footer-col.col-menu nav .menu {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 1.25rem;
  column-gap: 1.5rem;
}
@media (min-width: 40rem) {
  .footer .footer-container .footer-col-holder .footer-col.contact,
  .footer .footer-bottom .footer-col-holder .footer-col.contact {
    display: flex;
    align-items: end;
  }
}
.footer .footer-container .footer-col-holder .footer-col.contact .map,
.footer .footer-bottom .footer-col-holder .footer-col.contact .map {
  margin-top: 24px;
  transition: transform 1s cubic-bezier(0.15, 0.65, 0.25, 1);
}
@media (min-width: 40rem) {
  .footer .footer-container .footer-col-holder .footer-col.contact .map,
  .footer .footer-bottom .footer-col-holder .footer-col.contact .map {
    margin-top: 0;
  }
}
.footer .footer-container .footer-col-holder .footer-col.contact .map:hover,
.footer .footer-bottom .footer-col-holder .footer-col.contact .map:hover {
  transform: rotate(35deg) scale(1.05);
}
.footer .footer-container .footer-col-holder .footer-col.contact .map img,
.footer .footer-bottom .footer-col-holder .footer-col.contact .map img {
  height: clamp(80px, 6.7708333333vw, 130px);
  width: clamp(80px, 6.7708333333vw, 130px);
}
.footer .footer-container .footer-col-holder .footer-col.contact .inner-contact,
.footer .footer-bottom .footer-col-holder .footer-col.contact .inner-contact {
  flex: 1;
}
.footer .footer-container .footer-col-holder .footer-col.contact a,
.footer .footer-bottom .footer-col-holder .footer-col.contact a {
  text-decoration: underline;
  color: var(--color-blue);
  transition: color 0.3s ease;
}
.footer .footer-container .footer-col-holder .footer-col.contact a:hover,
.footer .footer-bottom .footer-col-holder .footer-col.contact a:hover {
  color: var(--color-secondary);
}
.footer .footer-container .footer-col-holder .footer-col.contact .contact-phones,
.footer .footer-bottom .footer-col-holder .footer-col.contact .contact-phones {
  display: flex;
  flex-wrap: wrap;
}
.footer .footer-container .footer-col-holder .footer-col.contact .contact-phones .contact-phone + .contact-phone:before,
.footer .footer-bottom .footer-col-holder .footer-col.contact .contact-phones .contact-phone + .contact-phone:before {
  content: "/";
  display: inline-block;
  margin: 0 2px 0 5px;
}
.footer .footer-container .footer-col-holder .footer-col.copyright,
.footer .footer-bottom .footer-col-holder .footer-col.copyright {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column;
  border: 0;
}
@media (min-width: 20rem) {
  .footer .footer-container .footer-col-holder .footer-col.copyright,
  .footer .footer-bottom .footer-col-holder .footer-col.copyright {
    flex-direction: row;
  }
}
.footer .footer-container .footer-col-holder .footer-col.credit-holder .credit svg,
.footer .footer-bottom .footer-col-holder .footer-col.credit-holder .credit svg {
  display: inline-block;
  width: 20px;
  margin: 0 5px;
}
@media (min-width: 64rem) {
  .footer .footer-container .footer-col-holder .footer-col.credit-holder .credit svg,
  .footer .footer-bottom .footer-col-holder .footer-col.credit-holder .credit svg {
    display: flex;
  }
}
.footer .footer-container .footer-col-holder .footer-col.credit-holder .credit svg path,
.footer .footer-bottom .footer-col-holder .footer-col.credit-holder .credit svg path {
  fill: var(--color-yellow);
}
.footer .footer-container .footer-col-holder .footer-col.utility,
.footer .footer-bottom .footer-col-holder .footer-col.utility {
  border: 0;
}
@media (min-width: 64rem) {
  .footer .footer-container .footer-col-holder .footer-col.utility,
  .footer .footer-bottom .footer-col-holder .footer-col.utility {
    border-left: 1px solid var(--color-border);
    order: 6;
  }
}
.footer .footer-container .footer-col-holder .footer-col.utility nav ul,
.footer .footer-bottom .footer-col-holder .footer-col.utility nav ul {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (min-width: 40rem) {
  .footer .footer-container .footer-col-holder .footer-col.utility nav ul,
  .footer .footer-bottom .footer-col-holder .footer-col.utility nav ul {
    flex-direction: row;
  }
}
@media (min-width: 64rem) {
  .footer .footer-container .footer-col-holder .footer-col.utility nav ul,
  .footer .footer-bottom .footer-col-holder .footer-col.utility nav ul {
    justify-content: end;
  }
}