@charset "UTF-8";
@font-face {
  font-family: "Helvetica";
  src: url("../fonts/HelveticaLight.woff") format("woff");
  font-style: normal;
  font-weight: 300;
}
@font-face {
  font-family: "Helvetica";
  src: url("../fonts/HelveticaRegular.woff") format("woff");
  font-style: normal;
  font-weight: 400;
}
@font-face {
  font-family: "Helvetica";
  src: url("../fonts/HelveticaBold.woff") format("woff");
  font-style: normal;
  font-weight: 700;
}
.h0 {
  font-size: 252px;
  font-style: normal;
  font-weight: 300;
  line-height: 100%;
  letter-spacing: 10.08px;
}
@media (max-width: 1599px) {
  .h0 {
    font-size: 200px;
    letter-spacing: 8px;
  }
}
@media (max-width: 1365px) {
  .h0 {
    font-size: 160px;
    letter-spacing: 6.4px;
  }
}
@media (max-width: 1023px) {
  .h0 {
    font-size: 120px;
    letter-spacing: 4.8px;
  }
}
@media (max-width: 767px) {
  .h0 {
    font-size: 54px;
    letter-spacing: 3.2px;
  }
}

.h1 {
  font-size: 80px;
  font-style: normal;
  font-weight: 300;
  line-height: 100%;
  letter-spacing: 3.2px;
}
@media (max-width: 1599px) {
  .h1 {
    font-size: 64px;
    letter-spacing: 2.56px;
  }
}
@media (max-width: 1365px) {
  .h1 {
    font-size: 56px;
    letter-spacing: 2.24px;
  }
}
@media (max-width: 1023px) {
  .h1 {
    font-size: 48px;
    letter-spacing: 1.92px;
  }
}
@media (max-width: 767px) {
  .h1 {
    font-size: 40px;
    letter-spacing: 1.44px;
  }
}

.h2 {
  font-size: 72px;
  font-style: normal;
  font-weight: 300;
  line-height: 110%;
  letter-spacing: -1.44px;
}
@media (max-width: 1599px) {
  .h2 {
    font-size: 64px;
    letter-spacing: -1.28px;
  }
}
@media (max-width: 1365px) {
  .h2 {
    font-size: 56px;
    letter-spacing: -1.12px;
  }
}
@media (max-width: 1023px) {
  .h2 {
    font-size: 48px;
    letter-spacing: -0.96px;
  }
}
@media (max-width: 767px) {
  .h2 {
    font-size: 36px;
    letter-spacing: -0.72px;
  }
}

.h3 {
  font-size: 56px;
  font-style: normal;
  font-weight: 300;
  line-height: 110%;
  letter-spacing: -1.12px;
  text-transform: uppercase;
}
@media (max-width: 1599px) {
  .h3 {
    font-size: 48px;
    letter-spacing: -0.96px;
  }
}
@media (max-width: 1365px) {
  .h3 {
    font-size: 40px;
    letter-spacing: -0.8px;
  }
}
@media (max-width: 1023px) {
  .h3 {
    font-size: 32px;
    letter-spacing: -0.64px;
  }
}
@media (max-width: 767px) {
  .h3 {
    font-size: 24px;
    letter-spacing: -0.48px;
  }
}

.h4 {
  font-size: 40px;
  font-style: normal;
  font-weight: 300;
  line-height: 110%;
}
@media (max-width: 1599px) {
  .h4 {
    font-size: 36px;
  }
}
@media (max-width: 1365px) {
  .h4 {
    font-size: 32px;
  }
}
@media (max-width: 1023px) {
  .h4 {
    font-size: 28px;
  }
}
@media (max-width: 767px) {
  .h4 {
    font-size: 20px;
  }
}

.h5 {
  font-size: 116px;
  font-style: normal;
  font-weight: 300;
  line-height: 110%;
  letter-spacing: -2.32px;
  text-transform: uppercase;
}
@media (max-width: 1599px) {
  .h5 {
    font-size: 96px;
    letter-spacing: -1.92px;
  }
}
@media (max-width: 1365px) {
  .h5 {
    font-size: 80px;
    letter-spacing: -1.6px;
  }
}
@media (max-width: 1023px) {
  .h5 {
    font-size: 64px;
    letter-spacing: -1.28px;
  }
}
@media (max-width: 767px) {
  .h5 {
    font-size: 48px;
    letter-spacing: -0.96px;
  }
}

.text-xl {
  font-size: 28px;
  font-style: normal;
  font-weight: 300;
  line-height: 110%;
}
@media (max-width: 1365px) {
  .text-xl {
    font-size: 24px;
  }
}
@media (max-width: 1023px) {
  .text-xl {
    font-size: 20px;
  }
}

.text-l {
  font-size: 24px;
  font-style: normal;
  font-weight: 300;
  line-height: 140%;
}
@media (max-width: 1365px) {
  .text-l {
    font-size: 20px;
  }
}
@media (max-width: 1023px) {
  .text-l {
    font-size: 18px;
  }
}

.text-m {
  font-size: 20px;
  font-style: normal;
  font-weight: 300;
  line-height: 140%;
}
@media (max-width: 1365px) {
  .text-m {
    font-size: 18px;
  }
}
@media (max-width: 1023px) {
  .text-m {
    font-size: 16px;
  }
}

.text-s {
  font-size: 18px;
  font-style: normal;
  font-weight: 300;
  line-height: 140%;
}
@media (max-width: 1365px) {
  .text-s {
    font-size: 16px;
  }
}
@media (max-width: 1023px) {
  .text-s {
    font-size: 14px;
  }
}

.uppercase {
  text-transform: uppercase;
}

.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.mb160 {
  margin-bottom: 160px;
}
@media (max-width: 1599px) {
  .mb160 {
    margin-bottom: 120px;
  }
}
@media (max-width: 1365px) {
  .mb160 {
    margin-bottom: 100px;
  }
}
@media (max-width: 1023px) {
  .mb160 {
    margin-bottom: 80px;
  }
}
@media (max-width: 767px) {
  .mb160 {
    margin-bottom: 60px;
  }
}

.pt160 {
  padding-top: 160px;
}
@media (max-width: 1599px) {
  .pt160 {
    padding-top: 120px;
  }
}
@media (max-width: 1365px) {
  .pt160 {
    padding-top: 100px;
  }
}
@media (max-width: 1023px) {
  .pt160 {
    padding-top: 80px;
  }
}
@media (max-width: 767px) {
  .pt160 {
    padding-top: 60px;
  }
}

@keyframes pulseBefore {
  0% {
    transform: scale(0);
    opacity: 1;
  }
  33.33% {
    transform: scale(0.3);
    opacity: 0.7;
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
@keyframes pulseAfter {
  0% {
    transform: scale(0.5);
    opacity: 0;
  }
  33.33% {
    transform: scale(0.5);
    opacity: 0;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes arrowShoot {
  0% {
    transform: translateY(0);
  }
  30% {
    transform: translateY(30%);
  }
  60% {
    transform: translateY(-100%);
  }
  61% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}
*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:focus,
:active {
  outline: none;
}

a:focus,
a:active {
  outline: none;
}

body {
  box-sizing: border-box;
}

aside,
nav,
footer,
header,
section {
  display: block;
}

input::-ms-clear {
  display: none;
}

button {
  cursor: pointer;
  border: none;
  background-color: transparent;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

a,
a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

ul li {
  list-style: none;
}

dl,
ol,
ul {
  margin: 0;
  padding: 0;
}

label {
  margin: 0;
}

p {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: inherit;
  font-size: inherit;
  margin: 0;
}

input:not([type=checkbox]):not([type=radio]),
textarea,
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

body {
  font-family: "Helvetica", sans-serif;
  font-weight: 400;
  color: #2B2F30;
  background: #F9F4EF;
}

.container {
  width: 100%;
  max-width: 1500px;
  padding: 0 30px;
  margin: 0 auto;
}
@media (max-width: 1023px) {
  .container {
    padding: 0 20px;
  }
}

.site {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

main {
  flex: 1;
}

img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

svg {
  display: block;
  width: 100%;
  height: 100%;
}

.bg-video {
  position: relative;
  z-index: 1;
}
.bg-video video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
}

@media (min-width: 768px) {
  .pc-hide {
    display: none !important;
  }
}

.advantages-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 48px 60px;
  margin: 0 auto;
}
@media (max-width: 1599px) {
  .advantages-grid {
    gap: 40px 50px;
  }
}
@media (max-width: 1365px) {
  .advantages-grid {
    gap: 32px 40px;
  }
}
@media (max-width: 1023px) {
  .advantages-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 30px;
  }
}
@media (max-width: 767px) {
  .advantages-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

.advantages-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
@media (max-width: 1599px) {
  .advantages-card {
    gap: 16px;
  }
}
@media (max-width: 1365px) {
  .advantages-card {
    gap: 14px;
  }
}
@media (max-width: 1023px) {
  .advantages-card {
    gap: 12px;
  }
}
@media (max-width: 767px) {
  .advantages-card {
    gap: 10px;
  }
}

.advantages-icon {
  width: 56px;
  height: 56px;
  flex-shrink: 0;
}
@media (max-width: 1599px) {
  .advantages-icon {
    width: 48px;
    height: 48px;
  }
}
@media (max-width: 1365px) {
  .advantages-icon {
    width: 44px;
    height: 44px;
  }
}
@media (max-width: 1023px) {
  .advantages-icon {
    width: 40px;
    height: 40px;
  }
}
@media (max-width: 767px) {
  .advantages-icon {
    width: 36px;
    height: 36px;
  }
}

.advantages-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
  text-align: center;
}
@media (max-width: 1599px) {
  .advantages-content {
    gap: 14px;
  }
}
@media (max-width: 1365px) {
  .advantages-content {
    gap: 12px;
  }
}
@media (max-width: 1023px) {
  .advantages-content {
    gap: 10px;
  }
}
@media (max-width: 767px) {
  .advantages-content {
    gap: 8px;
  }
}

.balkan {
  position: relative;
  overflow: hidden;
}

.balkan-inner {
  position: relative;
  z-index: 2;
}

.balkan-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 57px;
}
@media (max-width: 1599px) {
  .balkan-header {
    margin-bottom: 50px;
  }
}
@media (max-width: 1365px) {
  .balkan-header {
    margin-bottom: 45px;
  }
}
@media (max-width: 1023px) {
  .balkan-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    margin-bottom: 60px;
  }
}
@media (max-width: 767px) {
  .balkan-header {
    gap: 20px;
    margin-bottom: 40px;
  }
}

.balkan-title {
  color: #009DA1;
  text-transform: uppercase;
  margin-bottom: 24px;
}
@media (max-width: 1599px) {
  .balkan-title {
    margin-bottom: 20px;
  }
}
@media (max-width: 1365px) {
  .balkan-title {
    margin-bottom: 18px;
  }
}
@media (max-width: 1023px) {
  .balkan-title {
    text-align: center;
    margin-bottom: 0;
  }
}

.balkan-subtitle {
  color: #0D181A;
  max-width: 589px;
  margin-left: auto;
}
@media (max-width: 1599px) {
  .balkan-subtitle {
    max-width: 520px;
  }
}
@media (max-width: 1365px) {
  .balkan-subtitle {
    max-width: 480px;
  }
}
@media (max-width: 1023px) {
  .balkan-subtitle {
    max-width: 100%;
    margin-left: 0;
    text-align: center;
  }
}

.balkan-features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 46px;
  margin-bottom: 132px;
}
@media (max-width: 1599px) {
  .balkan-features {
    gap: 40px;
    margin-bottom: 120px;
  }
}
@media (max-width: 1365px) {
  .balkan-features {
    gap: 35px;
    margin-bottom: 110px;
  }
}
@media (max-width: 1023px) {
  .balkan-features {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-bottom: 60px;
  }
}
@media (max-width: 767px) {
  .balkan-features {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 40px;
  }
}

.balkan-feature {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  text-align: center;
}
@media (max-width: 1599px) {
  .balkan-feature {
    gap: 18px;
  }
}
@media (max-width: 1365px) {
  .balkan-feature {
    gap: 16px;
  }
}
@media (max-width: 767px) {
  .balkan-feature {
    gap: 16px;
  }
}

.balkan-feature-icon {
  width: 56px;
  height: 56px;
  position: relative;
  overflow: hidden;
}
@media (max-width: 1599px) {
  .balkan-feature-icon {
    width: 52px;
    height: 52px;
  }
}
@media (max-width: 1365px) {
  .balkan-feature-icon {
    width: 50px;
    height: 50px;
  }
}
@media (max-width: 767px) {
  .balkan-feature-icon {
    width: 48px;
    height: 48px;
  }
}
.balkan-feature-icon img {
  width: 70px;
  height: 70px;
  position: absolute;
  left: -7px;
  top: -7px;
}
@media (max-width: 1599px) {
  .balkan-feature-icon img {
    width: 65px;
    height: 65px;
    left: -6.5px;
    top: -6.5px;
  }
}
@media (max-width: 1365px) {
  .balkan-feature-icon img {
    width: 62px;
    height: 62px;
    left: -6px;
    top: -6px;
  }
}
@media (max-width: 767px) {
  .balkan-feature-icon img {
    width: 60px;
    height: 60px;
    left: -6px;
    top: -6px;
  }
}

.balkan-feature-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (max-width: 1599px) {
  .balkan-feature-content {
    gap: 14px;
  }
}
@media (max-width: 1365px) {
  .balkan-feature-content {
    gap: 12px;
  }
}
@media (max-width: 767px) {
  .balkan-feature-content {
    gap: 12px;
  }
}

.balkan-feature-text {
  color: #0D181A;
  text-align: center;
}
.balkan-feature-text strong {
  font-weight: 700;
}

.balkan-bottom {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 120px;
  position: relative;
}
@media (max-width: 1599px) {
  .balkan-bottom {
    gap: 100px;
  }
}
@media (max-width: 1365px) {
  .balkan-bottom {
    gap: 80px;
  }
}
@media (max-width: 1023px) {
  .balkan-bottom {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}
.balkan-bottom::before {
  content: "";
  width: 100vw;
  height: 1px;
  opacity: 0.2;
  background: #0D181A;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
@media (max-width: 1023px) {
  .balkan-bottom::before {
    display: none;
  }
}
.balkan-bottom::after {
  content: "";
  width: 100vw;
  height: 1px;
  opacity: 0.2;
  background: #0D181A;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
@media (max-width: 1023px) {
  .balkan-bottom::after {
    display: none;
  }
}

.balkan-view {
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .balkan-view {
    height: 300px;
  }
}

.balkan-view-wrapper {
  position: absolute;
  top: 0;
  left: calc(-1 * var(--container-left-offset, 0));
  bottom: 0;
  right: 0;
  z-index: -1;
}
@media (max-width: 1919px) {
  .balkan-view-wrapper {
    left: -30px;
  }
}
@media (max-width: 1023px) {
  .balkan-view-wrapper {
    left: -20px;
    right: -20px;
  }
}
.balkan-view-wrapper video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.balkan-view-content {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 104px 140px 104px 0;
  color: white;
}
@media (max-width: 1599px) {
  .balkan-view-content {
    padding: 90px 120px 90px 0;
  }
}
@media (max-width: 1365px) {
  .balkan-view-content {
    padding: 80px 100px 80px 0;
  }
}
@media (max-width: 1023px) {
  .balkan-view-content {
    padding: 40px 20px;
    align-items: center;
    justify-content: center;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .balkan-view-content {
    padding: 30px 15px;
  }
}

.balkan-view-title {
  text-transform: uppercase;
  margin-bottom: 24px;
}
@media (max-width: 1599px) {
  .balkan-view-title {
    margin-bottom: 20px;
  }
}
@media (max-width: 1365px) {
  .balkan-view-title {
    margin-bottom: 18px;
  }
}
@media (max-width: 1023px) {
  .balkan-view-title {
    margin-bottom: 20px;
  }
}

.balkan-view-subtitle {
  margin-bottom: 40px;
}
@media (max-width: 1599px) {
  .balkan-view-subtitle {
    margin-bottom: 35px;
  }
}
@media (max-width: 1365px) {
  .balkan-view-subtitle {
    margin-bottom: 30px;
  }
}
@media (max-width: 1023px) {
  .balkan-view-subtitle {
    margin-bottom: 30px;
  }
}
@media (max-width: 767px) {
  .balkan-view-subtitle {
    margin-bottom: 24px;
  }
}

.balkan-stats {
  display: flex;
  flex-direction: column;
  gap: 40px;
  z-index: 2;
  padding: 104px 0;
}
@media (max-width: 1599px) {
  .balkan-stats {
    padding: 90px 0;
    gap: 35px;
  }
}
@media (max-width: 1365px) {
  .balkan-stats {
    padding: 50px 0;
    gap: 30px;
  }
}
@media (max-width: 1023px) {
  .balkan-stats {
    gap: 30px;
  }
}
@media (max-width: 767px) {
  .balkan-stats {
    gap: 20px;
  }
}

.balkan-stat {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
@media (max-width: 1599px) {
  .balkan-stat {
    gap: 10px;
  }
}
@media (max-width: 1365px) {
  .balkan-stat {
    gap: 8px;
  }
}
.balkan-stat:nth-child(even) .balkan-stat-number {
  color: #0D181A;
}

.balkan-stat-number {
  color: #009DA1;
  text-transform: uppercase;
}
@media (max-width: 1599px) {
  .balkan-stat-number {
    gap: 7px;
  }
}
@media (max-width: 1365px) {
  .balkan-stat-number {
    gap: 6px;
  }
}
@media (max-width: 767px) {
  .balkan-stat-number {
    gap: 6px;
  }
}
.balkan-stat-number span {
  font-size: 72px;
  font-style: normal;
  font-weight: 300;
  line-height: 110%;
  letter-spacing: -1.44px;
}
@media (max-width: 1599px) {
  .balkan-stat-number span {
    font-size: 64px;
    letter-spacing: -1.28px;
  }
}
@media (max-width: 1365px) {
  .balkan-stat-number span {
    font-size: 56px;
    letter-spacing: -1.12px;
  }
}
@media (max-width: 1023px) {
  .balkan-stat-number span {
    font-size: 48px;
    letter-spacing: -0.96px;
  }
}
@media (max-width: 767px) {
  .balkan-stat-number span {
    font-size: 36px;
    letter-spacing: -0.72px;
  }
}

.balkan-stat-description {
  color: #0D181A;
}

.breadcrumbs {
  display: flex;
  align-items: center;
  gap: 20px;
  overflow: hidden;
}
@media (max-width: 1023px) {
  .breadcrumbs {
    gap: 10px;
  }
}

.breadcrumbs-item {
  display: flex;
  align-items: center;
  gap: 20px;
}
@media (max-width: 1023px) {
  .breadcrumbs-item {
    gap: 10px;
  }
}
.breadcrumbs-item:not(:last-child) {
  white-space: nowrap;
}
.breadcrumbs-item:not(:last-child)::after {
  content: "";
  display: block;
  width: 12px;
  height: 2px;
  flex-shrink: 0;
  opacity: 0.3;
  background: #FFF;
}
.breadcrumbs-item:last-child {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow-y: hidden;
}

.breadcrumbs-link {
  display: block;
  color: #fff;
  letter-spacing: -0.64px;
  transition: color 0.3s ease-in;
}
@media (any-hover: hover) {
  .breadcrumbs-link:hover {
    color: #2AA5CF;
  }
}
.breadcrumbs-link--current {
  opacity: 0.4;
  pointer-events: none;
  cursor: default;
}

.btn {
  display: flex;
  align-items: center;
  width: fit-content;
  overflow: hidden;
  text-align: center;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 1.08px;
  text-transform: uppercase;
}
@media (max-width: 1599px) {
  .btn {
    font-size: 16px;
    letter-spacing: 0.96px;
    line-height: 1.2;
  }
}
@media (max-width: 1365px) {
  .btn {
    font-size: 15px;
    letter-spacing: 0.9px;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .btn {
    font-size: 14px;
    letter-spacing: 0.84px;
    line-height: 1.2;
  }
}
@media (max-width: 767px) {
  .btn {
    font-size: 13px;
    letter-spacing: 0.78px;
    line-height: 1.2;
  }
}
.btn span:nth-child(1), .btn span:nth-child(3) {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  overflow: hidden;
  transition: all 0.3s linear;
  border-radius: 50%;
  width: 72px;
  height: 72px;
}
@media (max-width: 1599px) {
  .btn span:nth-child(1), .btn span:nth-child(3) {
    width: 64px;
    height: 64px;
  }
}
@media (max-width: 1365px) {
  .btn span:nth-child(1), .btn span:nth-child(3) {
    width: 59px;
    height: 59px;
  }
}
@media (max-width: 1023px) {
  .btn span:nth-child(1), .btn span:nth-child(3) {
    width: 54px;
    height: 54px;
  }
}
@media (max-width: 767px) {
  .btn span:nth-child(1), .btn span:nth-child(3) {
    width: 49px;
    height: 49px;
  }
}
.btn span:nth-child(1) img, .btn span:nth-child(3) img {
  flex-shrink: 0;
  transition: all 0.3s linear;
  width: 36px;
  height: 36px;
}
@media (max-width: 1599px) {
  .btn span:nth-child(1) img, .btn span:nth-child(3) img {
    width: 32px;
    height: 32px;
  }
}
@media (max-width: 1365px) {
  .btn span:nth-child(1) img, .btn span:nth-child(3) img {
    width: 30px;
    height: 30px;
  }
}
@media (max-width: 1023px) {
  .btn span:nth-child(1) img, .btn span:nth-child(3) img {
    width: 28px;
    height: 28px;
  }
}
@media (max-width: 767px) {
  .btn span:nth-child(1) img, .btn span:nth-child(3) img {
    width: 26px;
    height: 26px;
  }
}
.btn span:nth-child(1) {
  transform: scale(0);
  margin-right: -72px;
}
@media (max-width: 1599px) {
  .btn span:nth-child(1) {
    margin-right: -64px;
  }
}
@media (max-width: 1365px) {
  .btn span:nth-child(1) {
    margin-right: -59px;
  }
}
@media (max-width: 1023px) {
  .btn span:nth-child(1) {
    margin-right: -54px;
  }
}
@media (max-width: 767px) {
  .btn span:nth-child(1) {
    margin-right: -49px;
  }
}
.btn span:nth-child(2) {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  border-radius: 60px;
  padding: 29px 32px 25px 32px;
  transition: transform 0.3s linear;
}
@media (max-width: 1599px) {
  .btn span:nth-child(2) {
    padding: 26px 28px 22px 28px;
    gap: 10px;
  }
}
@media (max-width: 1365px) {
  .btn span:nth-child(2) {
    padding: 24px 24px 20px 24px;
    gap: 8px;
  }
}
@media (max-width: 1023px) {
  .btn span:nth-child(2) {
    padding: 22px 20px 18px 20px;
    gap: 6px;
  }
}
@media (max-width: 767px) {
  .btn span:nth-child(2) {
    padding: 20px 16px 14px 16px;
    gap: 4px;
  }
}
@media (any-hover: hover) {
  .btn:hover span:nth-child(1) {
    transform: scale(1);
  }
  .btn:hover span:nth-child(2) {
    transform: translateX(72px);
  }
}
@media (any-hover: hover) and (max-width: 1599px) {
  .btn:hover span:nth-child(2) {
    transform: translateX(64px);
  }
}
@media (any-hover: hover) and (max-width: 1365px) {
  .btn:hover span:nth-child(2) {
    transform: translateX(59px);
  }
}
@media (any-hover: hover) and (max-width: 1023px) {
  .btn:hover span:nth-child(2) {
    transform: translateX(54px);
  }
}
@media (any-hover: hover) and (max-width: 767px) {
  .btn:hover span:nth-child(2) {
    transform: translateX(49px);
  }
}
@media (any-hover: hover) {
  .btn:hover span:nth-child(3) {
    transform: scale(0);
  }
}
.btn--light-blue span:nth-child(2) {
  background-color: #2FD0D5;
  color: var(--Filters_Dark-Graphite, #0D181A);
}
.btn--light-blue span:nth-child(1), .btn--light-blue span:nth-child(3) {
  background-color: #2FD0D5;
}
@media (any-hover: hover) {
  .btn--light-blue:hover span:nth-child(1) {
    background-color: #2FD0D5;
  }
  .btn--light-blue:hover span:nth-child(3) {
    background-color: #2FD0D5;
  }
}
.btn--cyan-blue span:nth-child(2) {
  background: var(--Cyan-Blue, #009DA1);
  color: var(--Total-White, #FFF);
}
.btn--cyan-blue span:nth-child(1), .btn--cyan-blue span:nth-child(3) {
  background-color: #009DA1;
}
@media (any-hover: hover) {
  .btn--cyan-blue:hover span:nth-child(1) {
    background-color: #009DA1;
  }
  .btn--cyan-blue:hover span:nth-child(3) {
    background-color: #009DA1;
  }
}

.slider-nav {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media (max-width: 1023px) {
  .slider-nav {
    gap: 12px;
  }
}

.btn-arrow {
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: transparent;
  border: 1px solid rgba(24, 14, 52, 0.2);
  transition: border-color 0.3s linear;
  overflow: hidden;
  position: relative;
}
.btn-arrow::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #C5FC6C;
  border-radius: 50%;
  transition: transform 0.3s linear;
  transform: scale(0);
  position: absolute;
  top: 0;
  left: 0;
}
.btn-arrow::after {
  content: "";
  display: block;
  width: 200%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  top: 0;
  z-index: 1;
  transition: transform 0.3s linear;
}
@media (any-hover: hover) {
  .btn-arrow:not(.swiper-button-disabled):hover {
    border-color: #C5FC6C;
  }
  .btn-arrow:not(.swiper-button-disabled):hover::before {
    transform: scale(1);
  }
}
.btn-arrow--prev::after {
  background-image: url(../img/icons/double-arrow-left.svg);
  left: 0;
}
@media (any-hover: hover) {
  .btn-arrow--prev:not(.swiper-button-disabled):hover::after {
    transform: translateX(-50%);
  }
}
.btn-arrow--next::after {
  background-image: url(../img/icons/double-arrow-right.svg);
  right: 0;
}
@media (any-hover: hover) {
  .btn-arrow--next:not(.swiper-button-disabled):hover::after {
    transform: translateX(50%);
  }
}
.btn-arrow.swiper-button-disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.link-line {
  display: block;
  width: fit-content;
  overflow: hidden;
  white-space: nowrap;
  color: var(--Dark-Purple, #180E34);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.18px;
  text-transform: uppercase;
}
@media (any-hover: hover) {
  .link-line:hover span {
    transform: translateX(116px);
  }
}
@media (any-hover: hover) and (max-width: 1599px) {
  .link-line:hover span {
    transform: translateX(92px);
  }
}
@media (any-hover: hover) and (max-width: 1023px) {
  .link-line:hover span {
    transform: translateX(44px);
  }
}
.link-line span {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-left: -116px;
  transition: transform 0.3s linear;
}
@media (max-width: 1599px) {
  .link-line span {
    margin-left: -92px;
  }
}
@media (max-width: 1023px) {
  .link-line span {
    margin-left: -44px;
  }
}
.link-line span::after, .link-line span::before {
  content: "";
  display: block;
  width: 104px;
  height: 2px;
  background-color: #8BC22F;
}
@media (max-width: 1599px) {
  .link-line span::after, .link-line span::before {
    width: 80px;
  }
}
@media (max-width: 1023px) {
  .link-line span::after, .link-line span::before {
    width: 32px;
  }
}

.catalog {
  padding-top: 40px;
  background-color: #F9F4EF;
}

.catalog-title {
  text-align: center;
  color: var(--Filters_Dark-Graphite, #0D181A);
  margin-bottom: 48px;
}
@media (max-width: 1599px) {
  .catalog-title {
    margin-bottom: 30px;
  }
}
@media (max-width: 1023px) {
  .catalog-title {
    margin-bottom: 20px;
  }
}

.catalog-filter {
  display: flex;
  justify-content: space-between;
  gap: 60px;
  padding: 40px 0 65px;
}
@media (max-width: 1599px) {
  .catalog-filter {
    gap: 50px;
    padding: 30px 0 55px;
  }
}
@media (max-width: 1365px) {
  .catalog-filter {
    gap: 40px;
  }
}
@media (max-width: 1023px) {
  .catalog-filter {
    flex-direction: column;
    align-items: flex-start;
    gap: 32px;
    padding: 20px 0 45px;
  }
}

.catalog-filter-item {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 1599px) {
  .catalog-filter-item {
    gap: 18px;
  }
}
@media (max-width: 1365px) {
  .catalog-filter-item {
    gap: 16px;
  }
}
@media (max-width: 1023px) {
  .catalog-filter-item {
    width: 100%;
    gap: 14px;
  }
}
@media (max-width: 767px) {
  .catalog-filter-item {
    gap: 12px;
  }
}

.catalog-filter-title {
  color: #0D181A;
}
@media (max-width: 1023px) {
  .catalog-filter-title {
    text-align: center;
  }
}

.catalog-filter-buttons {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
@media (max-width: 1599px) {
  .catalog-filter-buttons {
    gap: 7px;
  }
}
@media (max-width: 1365px) {
  .catalog-filter-buttons {
    gap: 6px;
  }
}
@media (max-width: 1023px) {
  .catalog-filter-buttons {
    gap: 16px;
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .catalog-filter-buttons {
    gap: 8px;
  }
}

.catalog-filter-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 20px 8px 20px;
  border-radius: 60px;
  border: 2px solid #009DA1;
  background: transparent;
  color: #0D181A;
  font-size: 16px;
  line-height: 1.1;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.96px;
  cursor: pointer;
  transition: all 0.3s linear;
  min-width: 60px;
}
@media (max-width: 1599px) {
  .catalog-filter-btn {
    padding: 11px 18px 7px 18px;
    font-size: 15px;
    letter-spacing: 0.9px;
  }
}
@media (max-width: 1365px) {
  .catalog-filter-btn {
    padding: 10px 16px 6px 16px;
    font-size: 14px;
    letter-spacing: 0.84px;
  }
}
@media (max-width: 1023px) {
  .catalog-filter-btn {
    padding: 14px 12px 10px 12px;
    font-size: 14px;
    letter-spacing: 0.84px;
    flex-grow: 1;
    max-width: 60px;
  }
}
.catalog-filter-btn:hover {
  background-color: #009DA1;
  color: #FFF;
}
.catalog-filter-btn--active {
  background-color: #009DA1;
  color: #FFF;
  border-color: #009DA1;
}

.catalog-filter-range {
  position: relative;
  width: 428px;
  height: 53px;
}
@media (max-width: 1599px) {
  .catalog-filter-range {
    width: 380px;
    height: 48px;
  }
}
@media (max-width: 1365px) {
  .catalog-filter-range {
    width: 340px;
    height: 44px;
  }
}
@media (max-width: 1023px) {
  .catalog-filter-range {
    width: 100%;
    height: 55px;
  }
}
.catalog-filter-range .noUi-target {
  background: rgba(0, 157, 161, 0.1);
  border: none;
  box-shadow: none;
  border-radius: 20px;
  height: 4px;
  margin-top: 10px;
}
@media (max-width: 1599px) {
  .catalog-filter-range .noUi-target {
    height: 3px;
    margin-top: 9px;
  }
}
@media (max-width: 1365px) {
  .catalog-filter-range .noUi-target {
    height: 3px;
    margin-top: 8px;
  }
}
@media (max-width: 1023px) {
  .catalog-filter-range .noUi-target {
    height: 4px;
    margin-top: 8px;
  }
}
@media (max-width: 767px) {
  .catalog-filter-range .noUi-target {
    height: 3px;
    margin-top: 6px;
  }
}
.catalog-filter-range .noUi-connects {
  border-radius: 20px;
}
.catalog-filter-range .noUi-connect {
  background: #009DA1;
}
.catalog-filter-range .noUi-horizontal .noUi-handle {
  width: 24px;
  height: 24px;
  background: #009DA1;
  border: none;
  border-radius: 50%;
  box-shadow: none;
  cursor: pointer;
  top: -10px;
  right: -12px;
  transition: all 0.3s linear;
}
.catalog-filter-range .noUi-horizontal .noUi-handle:hover {
  transform: scale(1.1);
}
.catalog-filter-range .noUi-horizontal .noUi-handle:before, .catalog-filter-range .noUi-horizontal .noUi-handle:after {
  display: none;
}
.catalog-filter-range .noUi-tooltip {
  display: none;
}

.catalog-filter-range-values {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  justify-content: space-between;
}

.catalog-filter-range-value {
  color: #0D181A;
  font-size: 18px;
  font-weight: 400;
  text-transform: uppercase;
}
@media (max-width: 1599px) {
  .catalog-filter-range-value {
    font-size: 17px;
  }
}
@media (max-width: 1365px) {
  .catalog-filter-range-value {
    font-size: 16px;
  }
}
@media (max-width: 1023px) {
  .catalog-filter-range-value {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .catalog-filter-range-value {
    font-size: 14px;
  }
}

.catalog-filter-checkboxes {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
@media (max-width: 1599px) {
  .catalog-filter-checkboxes {
    gap: 7px;
  }
}
@media (max-width: 1365px) {
  .catalog-filter-checkboxes {
    gap: 6px;
  }
}
@media (max-width: 1023px) {
  .catalog-filter-checkboxes {
    gap: 8px;
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .catalog-filter-checkboxes {
    justify-content: flex-start;
    flex-wrap: nowrap;
    width: calc(100% + 40px);
    padding: 0 20px;
    margin-left: -20px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-snap-align: start;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
  }
}

.catalog-filter-checkbox {
  display: flex;
  align-items: center;
  cursor: pointer;
  user-select: none;
}
.catalog-filter-checkbox input[type=checkbox] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.catalog-filter-checkbox:hover .catalog-filter-checkbox-text {
  border-color: #009DA1;
}
.catalog-filter-checkbox input[type=checkbox]:checked + .catalog-filter-checkbox-text {
  background-color: #009DA1;
  color: #FFF;
  border-color: #009DA1;
}

.catalog-filter-checkbox-text {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 20px 8px 20px;
  border-radius: 60px;
  border: 2px solid rgba(0, 157, 161, 0.2);
  background: transparent;
  color: #0D181A;
  font-size: 16px;
  line-height: 1.1;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.96px;
  transition: all 0.3s linear;
}
@media (max-width: 1599px) {
  .catalog-filter-checkbox-text {
    padding: 11px 18px 7px 18px;
    font-size: 15px;
    letter-spacing: 0.9px;
  }
}
@media (max-width: 1365px) {
  .catalog-filter-checkbox-text {
    padding: 10px 16px 6px 16px;
    font-size: 14px;
    letter-spacing: 0.84px;
  }
}
@media (max-width: 1023px) {
  .catalog-filter-checkbox-text {
    padding: 10px 20px 6px 20px;
    font-size: 14px;
    letter-spacing: 0.84px;
  }
}

.catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4px;
}
@media (max-width: 1023px) {
  .catalog-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767px) {
  .catalog-grid {
    grid-template-columns: repeat(1, 1fr);
  }
}

.catalog-card {
  background: white;
  position: relative;
  overflow: hidden;
}
@media (any-hover: hover) {
  .catalog-card:not(.catalog-card--sold):hover .catalog-card-img {
    height: 100%;
  }
  .catalog-card:not(.catalog-card--sold):hover .catalog-card-img img {
    opacity: 1;
    transform: scale(1);
  }
  .catalog-card:not(.catalog-card--sold):hover .catalog-card-arrow img {
    transform: translateX(0);
  }
}
.catalog-card--sold .catalog-card-head::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.96;
  background: var(--Total-White, #FFF);
}

.catalog-card-head {
  width: 100%;
  height: 395px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
}
@media (max-width: 1599px) {
  .catalog-card-head {
    height: 350px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-head {
    height: 310px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-head {
    height: 280px;
  }
}
@media (max-width: 767px) {
  .catalog-card-head {
    height: 250px;
  }
}

.catalog-card-plan {
  width: 310px;
  height: 354px;
}
@media (max-width: 1599px) {
  .catalog-card-plan {
    width: 275px;
    height: 314px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-plan {
    width: 244px;
    height: 278px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-plan {
    width: 220px;
    height: 251px;
  }
}
@media (max-width: 767px) {
  .catalog-card-plan {
    width: 196px;
    height: 224px;
  }
}

.catalog-card-img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0%;
  overflow: hidden;
  transition: height 0.3s linear;
}
.catalog-card-img img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 395px;
  object-fit: cover;
  opacity: 0;
  transform: scale(1.1);
  transition: opacity 0.3s linear, transform 0.3s linear;
}
@media (max-width: 1599px) {
  .catalog-card-img img {
    height: 350px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-img img {
    height: 310px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-img img {
    height: 280px;
  }
}
@media (max-width: 767px) {
  .catalog-card-img img {
    height: 250px;
  }
}

.catalog-card-logo {
  width: 234px;
  height: 240px;
  flex-shrink: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
@media (max-width: 1599px) {
  .catalog-card-logo {
    width: 208px;
    height: 213px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-logo {
    width: 185px;
    height: 189px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-logo {
    width: 167px;
    height: 171px;
  }
}
@media (max-width: 767px) {
  .catalog-card-logo {
    width: 149px;
    height: 153px;
  }
}

.catalog-card-text {
  color: var(--Cyan-Blue, #009DA1);
  text-align: center;
  font-size: 32px;
  font-style: normal;
  font-weight: 400;
  line-height: 110%;
  letter-spacing: -0.64px;
  text-transform: uppercase;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (max-width: 1599px) {
  .catalog-card-text {
    font-size: 28px;
    letter-spacing: -0.56px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-text {
    font-size: 24px;
    letter-spacing: -0.48px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-text {
    font-size: 22px;
    letter-spacing: -0.44px;
  }
}
@media (max-width: 767px) {
  .catalog-card-text {
    font-size: 20px;
    letter-spacing: -0.4px;
  }
}

.catalog-card-content {
  padding: 24px 40px 30px;
}
@media (max-width: 1599px) {
  .catalog-card-content {
    padding: 21px 35px 27px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-content {
    padding: 19px 31px 24px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-content {
    padding: 17px 28px 22px;
  }
}
@media (max-width: 767px) {
  .catalog-card-content {
    padding: 15px 25px 20px;
  }
}

.catalog-card-one {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
}
@media (max-width: 1599px) {
  .catalog-card-one {
    gap: 18px;
    margin-bottom: 18px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-one {
    gap: 16px;
    margin-bottom: 16px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-one {
    gap: 14px;
    margin-bottom: 14px;
  }
}
@media (max-width: 767px) {
  .catalog-card-one {
    gap: 12px;
    margin-bottom: 12px;
  }
}

.catalog-card-number {
  color: #0D181A;
  font-size: 32px;
  font-weight: 300;
  line-height: 35.2px;
  margin: 0;
}
@media (max-width: 1599px) {
  .catalog-card-number {
    font-size: 28px;
    line-height: 30.8px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-number {
    font-size: 24px;
    line-height: 26.4px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-number {
    font-size: 22px;
    line-height: 24.2px;
  }
}
@media (max-width: 767px) {
  .catalog-card-number {
    font-size: 20px;
    line-height: 22px;
  }
}

.catalog-card-area {
  color: #0D181A;
  text-align: right;
  font-size: 18px;
  font-weight: 400;
  line-height: 140%;
}
@media (max-width: 1365px) {
  .catalog-card-area {
    font-size: 16px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-area {
    font-size: 14px;
  }
}

.catalog-card-divider {
  width: 100%;
  height: 1px;
  background-color: #D2DED2;
  margin-bottom: 20px;
}
@media (max-width: 1599px) {
  .catalog-card-divider {
    margin-bottom: 18px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-divider {
    margin-bottom: 16px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-divider {
    margin-bottom: 14px;
  }
}
@media (max-width: 767px) {
  .catalog-card-divider {
    margin-bottom: 12px;
  }
}

.catalog-card-two {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
@media (max-width: 1599px) {
  .catalog-card-two {
    gap: 18px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-two {
    gap: 16px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-two {
    gap: 14px;
  }
}
@media (max-width: 767px) {
  .catalog-card-two {
    gap: 12px;
  }
}

.catalog-card-info {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 24px;
}
@media (max-width: 1599px) {
  .catalog-card-info {
    gap: 10px 21px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-info {
    gap: 10px 19px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-info {
    gap: 10px 17px;
  }
}
@media (max-width: 767px) {
  .catalog-card-info {
    gap: 10px 15px;
  }
}

.catalog-card-info-item {
  color: #0D181A;
  font-weight: 400;
  font-size: 18px;
  line-height: 140%;
}
@media (max-width: 1365px) {
  .catalog-card-info-item {
    font-size: 16px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-info-item {
    font-size: 14px;
  }
}

.catalog-card-arrow {
  display: flex;
  gap: 12px;
  align-items: center;
  width: 39px;
  height: 24px;
  flex-shrink: 0;
  overflow: hidden;
}
@media (max-width: 1599px) {
  .catalog-card-arrow {
    gap: 11px;
    width: 35px;
    height: 21px;
  }
}
@media (max-width: 1365px) {
  .catalog-card-arrow {
    gap: 10px;
    width: 31px;
    height: 19px;
  }
}
@media (max-width: 1023px) {
  .catalog-card-arrow {
    gap: 9px;
    width: 28px;
    height: 17px;
  }
}
@media (max-width: 767px) {
  .catalog-card-arrow {
    gap: 8px;
    width: 25px;
    height: 15px;
  }
}
.catalog-card-arrow img {
  transform: translateX(calc(-100% - 12px));
  transition: transform 0.3s linear;
}

.catalog-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  grid-column: span 3;
}
@media (max-width: 1023px) {
  .catalog-empty {
    grid-column: span 2;
  }
}
@media (max-width: 767px) {
  .catalog-empty {
    grid-column: span 1;
  }
}
.catalog-empty-content {
  max-width: 400px;
}
.catalog-empty-title {
  margin-bottom: 16px;
  color: #333;
}
.catalog-empty-text {
  color: #666;
  line-height: 1.5;
}

.contacts {
  padding-top: 78px;
  color: #0D181A;
  position: relative;
}
@media (max-width: 1023px) {
  .contacts {
    padding-top: 64px;
  }
}

.contacts-wrapper {
  display: grid;
  grid-template-columns: 727px 1fr;
  gap: 125px;
}
@media (max-width: 1599px) {
  .contacts-wrapper {
    grid-template-columns: 1fr 1fr;
    gap: 100px;
  }
}
@media (max-width: 1365px) {
  .contacts-wrapper {
    gap: 60px;
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .contacts-wrapper {
    gap: 40px;
  }
}

.contacts-content {
  display: grid;
  grid-template-columns: 222px 1fr;
  gap: 80px;
  padding-top: 110px;
  position: relative;
}
.contacts-content::before {
  content: "";
  width: 1px;
  position: absolute;
  top: 0;
  left: 222px;
  bottom: 0;
  background: #D2DED2;
}
@media (max-width: 1599px) {
  .contacts-content {
    grid-template-columns: 200px 1fr;
    gap: 60px;
    padding-top: 100px;
  }
  .contacts-content::before {
    left: 200px;
  }
}
@media (max-width: 1365px) {
  .contacts-content {
    padding-top: 90px;
  }
  .contacts-content::before {
    left: 180px;
  }
}
@media (max-width: 1023px) {
  .contacts-content {
    gap: 40px;
    padding-top: 60px;
  }
}
@media (max-width: 767px) {
  .contacts-content {
    grid-template-columns: 1fr;
    gap: 30px;
    padding-top: 40px;
  }
  .contacts-content::before {
    display: none;
  }
}

.contacts-one {
  display: flex;
  flex-direction: column;
  gap: 240px;
}
@media (max-width: 1599px) {
  .contacts-one {
    gap: 200px;
  }
}
@media (max-width: 1365px) {
  .contacts-one {
    gap: 160px;
  }
}
@media (max-width: 1023px) {
  .contacts-one {
    gap: 60px;
  }
}
@media (max-width: 767px) {
  .contacts-one {
    gap: 20px;
  }
}

.contacts-schedule {
  font-weight: 400;
  max-width: 182px;
}
@media (max-width: 1599px) {
  .contacts-schedule {
    max-width: 160px;
  }
}
@media (max-width: 1365px) {
  .contacts-schedule {
    max-width: 140px;
  }
}
@media (max-width: 1023px) {
  .contacts-schedule {
    max-width: none;
  }
}

.contacts-hours {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (max-width: 1599px) {
  .contacts-hours {
    gap: 35px;
  }
}
@media (max-width: 1365px) {
  .contacts-hours {
    gap: 30px;
  }
}
@media (max-width: 1023px) {
  .contacts-hours {
    gap: 25px;
  }
}
@media (max-width: 767px) {
  .contacts-hours {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 30px;
  }
}

.contacts-hours-item {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (max-width: 767px) {
  .contacts-hours-item {
    gap: 12px;
  }
}

.contacts-hours-day {
  font-weight: 400;
  opacity: 0.4;
  text-transform: uppercase;
}

.contacts-hours-time {
  font-weight: 400;
  text-transform: uppercase;
}

.contacts-two {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (max-width: 1599px) {
  .contacts-two {
    gap: 35px;
  }
}
@media (max-width: 1365px) {
  .contacts-two {
    gap: 30px;
  }
}
@media (max-width: 1023px) {
  .contacts-two {
    gap: 25px;
  }
}
@media (max-width: 767px) {
  .contacts-two {
    gap: 20px;
  }
}

.contacts-phone {
  color: #0D181A;
  font-size: 48px;
  font-weight: 300;
  line-height: 52.8px;
  transition: color 0.3s linear;
}
@media (max-width: 1599px) {
  .contacts-phone {
    font-size: 42px;
    line-height: 46.2px;
  }
}
@media (max-width: 1365px) {
  .contacts-phone {
    font-size: 36px;
    line-height: 39.6px;
  }
}
@media (max-width: 1023px) {
  .contacts-phone {
    font-size: 32px;
    line-height: 35.2px;
  }
}
@media (max-width: 767px) {
  .contacts-phone {
    font-size: 28px;
    line-height: 30.8px;
  }
}
@media (any-hover: hover) {
  .contacts-phone:hover {
    color: #009DA1;
  }
}

.contacts-email {
  color: #0D181A;
  font-size: 28px;
  font-weight: 300;
  line-height: 30.8px;
  transition: color 0.3s linear;
}
@media (max-width: 1599px) {
  .contacts-email {
    font-size: 24px;
    line-height: 26.4px;
  }
}
@media (max-width: 1365px) {
  .contacts-email {
    font-size: 22px;
    line-height: 24.2px;
  }
}
@media (max-width: 1023px) {
  .contacts-email {
    font-size: 20px;
    line-height: 22px;
  }
}
@media (max-width: 767px) {
  .contacts-email {
    font-size: 18px;
    line-height: 19.8px;
  }
}
@media (any-hover: hover) {
  .contacts-email:hover {
    color: #009DA1;
  }
}

.contacts-location {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (max-width: 1599px) {
  .contacts-location {
    gap: 20px;
  }
}
@media (max-width: 1365px) {
  .contacts-location {
    gap: 18px;
  }
}
@media (max-width: 1023px) {
  .contacts-location {
    gap: 16px;
  }
}
@media (max-width: 767px) {
  .contacts-location {
    gap: 14px;
  }
}

.contacts-location-title {
  opacity: 0.4;
}
@media (max-width: 1599px) {
  .contacts-location-title {
    font-size: 18px;
    line-height: 19.8px;
  }
}
@media (max-width: 1365px) {
  .contacts-location-title {
    font-size: 16px;
    line-height: 17.6px;
  }
}
@media (max-width: 1023px) {
  .contacts-location-title {
    font-size: 15px;
    line-height: 16.5px;
  }
}
@media (max-width: 767px) {
  .contacts-location-title {
    font-size: 14px;
    line-height: 15.4px;
  }
}

.contacts-location-address {
  color: #0D181A;
  transition: color 0.3s linear;
}
@media (max-width: 1599px) {
  .contacts-location-address {
    font-size: 24px;
    line-height: 26.4px;
  }
}
@media (max-width: 1365px) {
  .contacts-location-address {
    font-size: 22px;
    line-height: 24.2px;
  }
}
@media (max-width: 1023px) {
  .contacts-location-address {
    font-size: 20px;
    line-height: 22px;
  }
}
@media (max-width: 767px) {
  .contacts-location-address {
    font-size: 18px;
    line-height: 19.8px;
  }
}
@media (any-hover: hover) {
  .contacts-location-address:hover {
    color: #009DA1;
  }
}

.contacts-location-link {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  gap: 16px;
  color: #0D181A;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.72px;
  transition: color 0.3s linear;
}
@media (max-width: 1599px) {
  .contacts-location-link {
    font-size: 16px;
    letter-spacing: 0.64px;
    gap: 14px;
  }
}
@media (max-width: 1365px) {
  .contacts-location-link {
    font-size: 15px;
    letter-spacing: 0.6px;
    gap: 12px;
  }
}
@media (max-width: 1023px) {
  .contacts-location-link {
    font-size: 14px;
    letter-spacing: 0.56px;
    gap: 10px;
  }
}
@media (max-width: 767px) {
  .contacts-location-link {
    font-size: 13px;
    letter-spacing: 0.52px;
    gap: 8px;
  }
}
@media (any-hover: hover) {
  .contacts-location-link:hover {
    color: #009DA1;
  }
}

.contacts-location-link img {
  width: 40px;
  height: 24px;
  flex-shrink: 0;
}
@media (max-width: 1599px) {
  .contacts-location-link img {
    width: 36px;
    height: 22px;
  }
}
@media (max-width: 1365px) {
  .contacts-location-link img {
    width: 32px;
    height: 20px;
  }
}
@media (max-width: 1023px) {
  .contacts-location-link img {
    width: 30px;
    height: 18px;
  }
}
@media (max-width: 767px) {
  .contacts-location-link img {
    width: 28px;
    height: 16px;
  }
}

.contacts-social {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 120px;
}
@media (max-width: 1599px) {
  .contacts-social {
    gap: 18px;
    margin-top: 100px;
  }
}
@media (max-width: 1365px) {
  .contacts-social {
    gap: 16px;
    margin-top: 80px;
  }
}
@media (max-width: 1023px) {
  .contacts-social {
    gap: 14px;
    margin-top: 60px;
  }
}
@media (max-width: 767px) {
  .contacts-social {
    gap: 12px;
    margin-top: 40px;
  }
}

.contacts-social-item {
  width: 68px;
  height: 68px;
  background-color: rgba(0, 157, 161, 0.08);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: background-color 0.3s linear;
  position: relative;
}
@media (max-width: 1599px) {
  .contacts-social-item {
    width: 60px;
    height: 60px;
  }
}
@media (max-width: 1365px) {
  .contacts-social-item {
    width: 56px;
    height: 56px;
  }
}
@media (max-width: 1023px) {
  .contacts-social-item {
    width: 52px;
    height: 52px;
  }
}
@media (max-width: 767px) {
  .contacts-social-item {
    width: 48px;
    height: 48px;
  }
}
@media (any-hover: hover) {
  .contacts-social-item:hover {
    background-color: #009DA1;
  }
  .contacts-social-item:hover .contacts-social-white {
    opacity: 1;
  }
  .contacts-social-item:hover .contacts-social-black {
    opacity: 0;
  }
}
.contacts-social-item img {
  width: 32px;
  height: 32px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s linear;
}
@media (max-width: 1599px) {
  .contacts-social-item img {
    width: 28px;
    height: 28px;
  }
}
@media (max-width: 1365px) {
  .contacts-social-item img {
    width: 26px;
    height: 26px;
  }
}
@media (max-width: 1023px) {
  .contacts-social-item img {
    width: 24px;
    height: 24px;
  }
}
@media (max-width: 767px) {
  .contacts-social-item img {
    width: 22px;
    height: 22px;
  }
}

.contacts-social-white {
  opacity: 0;
}

.contacts-social-black {
  opacity: 1;
}

.contacts-image {
  position: relative;
  margin-right: calc(-1 * var(--container-right-offset, 0));
}
@media (max-width: 1365px) {
  .contacts-image {
    display: none;
  }
}

.contacts-image img {
  object-fit: cover;
}

.content {
  padding: 120px 0;
}
@media (max-width: 1023px) {
  .content {
    padding: 60px 0;
  }
}
.content .entry-header {
  margin-bottom: 40px;
  text-align: center;
}
.content .entry-content {
  color: #0D181A;
  line-height: 140%;
}
.content .entry-content h1, .content .entry-content h2, .content .entry-content h3, .content .entry-content h4, .content .entry-content h5, .content .entry-content h6 {
  margin-bottom: 20px;
  color: #0D181A;
  font-weight: 300;
}
@media (max-width: 767px) {
  .content .entry-content h1, .content .entry-content h2, .content .entry-content h3, .content .entry-content h4, .content .entry-content h5, .content .entry-content h6 {
    margin-bottom: 16px;
  }
}
.content .entry-content h2 {
  font-size: 48px;
  line-height: 110%;
  letter-spacing: -0.96px;
}
@media (max-width: 1599px) {
  .content .entry-content h2 {
    font-size: 44px;
    letter-spacing: -0.88px;
  }
}
@media (max-width: 1365px) {
  .content .entry-content h2 {
    font-size: 40px;
    letter-spacing: -0.8px;
  }
}
@media (max-width: 1023px) {
  .content .entry-content h2 {
    font-size: 36px;
    letter-spacing: -0.72px;
  }
}
@media (max-width: 767px) {
  .content .entry-content h2 {
    font-size: 28px;
    letter-spacing: -0.56px;
  }
}
.content .entry-content h3 {
  font-size: 36px;
  line-height: 110%;
  letter-spacing: -0.72px;
  text-transform: uppercase;
}
@media (max-width: 1599px) {
  .content .entry-content h3 {
    font-size: 32px;
    letter-spacing: -0.64px;
  }
}
@media (max-width: 1365px) {
  .content .entry-content h3 {
    font-size: 28px;
    letter-spacing: -0.56px;
  }
}
@media (max-width: 1023px) {
  .content .entry-content h3 {
    font-size: 24px;
    letter-spacing: -0.48px;
  }
}
@media (max-width: 767px) {
  .content .entry-content h3 {
    font-size: 20px;
    letter-spacing: -0.4px;
  }
}
.content .entry-content h4 {
  font-size: 28px;
  line-height: 110%;
}
@media (max-width: 1599px) {
  .content .entry-content h4 {
    font-size: 24px;
  }
}
@media (max-width: 1365px) {
  .content .entry-content h4 {
    font-size: 22px;
  }
}
@media (max-width: 1023px) {
  .content .entry-content h4 {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .content .entry-content h4 {
    font-size: 18px;
  }
}
.content .entry-content h5 {
  font-size: 24px;
  line-height: 110%;
  letter-spacing: -0.48px;
  text-transform: uppercase;
}
@media (max-width: 1599px) {
  .content .entry-content h5 {
    font-size: 22px;
    letter-spacing: -0.44px;
  }
}
@media (max-width: 1365px) {
  .content .entry-content h5 {
    font-size: 20px;
    letter-spacing: -0.4px;
  }
}
@media (max-width: 1023px) {
  .content .entry-content h5 {
    font-size: 18px;
    letter-spacing: -0.36px;
  }
}
@media (max-width: 767px) {
  .content .entry-content h5 {
    font-size: 16px;
    letter-spacing: -0.32px;
  }
}
.content .entry-content h6 {
  font-size: 20px;
  line-height: 110%;
  letter-spacing: -0.4px;
  text-transform: uppercase;
}
@media (max-width: 1599px) {
  .content .entry-content h6 {
    font-size: 18px;
    letter-spacing: -0.36px;
  }
}
@media (max-width: 1365px) {
  .content .entry-content h6 {
    font-size: 16px;
    letter-spacing: -0.32px;
  }
}
@media (max-width: 1023px) {
  .content .entry-content h6 {
    font-size: 14px;
    letter-spacing: -0.28px;
  }
}
@media (max-width: 767px) {
  .content .entry-content h6 {
    font-size: 12px;
    letter-spacing: -0.24px;
  }
}
.content .entry-content p {
  font-size: 20px;
  line-height: 140%;
  margin-bottom: 20px;
}
@media (max-width: 1365px) {
  .content .entry-content p {
    font-size: 18px;
  }
}
@media (max-width: 1023px) {
  .content .entry-content p {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .content .entry-content p {
    margin-bottom: 16px;
  }
}
.content .entry-content ul, .content .entry-content ol {
  margin-bottom: 20px;
  padding-left: 20px;
}
@media (max-width: 767px) {
  .content .entry-content ul, .content .entry-content ol {
    margin-bottom: 16px;
    padding-left: 16px;
  }
}
.content .entry-content ul li, .content .entry-content ol li {
  font-size: 20px;
  line-height: 140%;
  margin-bottom: 8px;
}
@media (max-width: 1365px) {
  .content .entry-content ul li, .content .entry-content ol li {
    font-size: 18px;
  }
}
@media (max-width: 1023px) {
  .content .entry-content ul li, .content .entry-content ol li {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .content .entry-content ul li, .content .entry-content ol li {
    margin-bottom: 6px;
  }
}
.content .entry-content ul li {
  list-style-type: disc;
}
.content .entry-content ol li {
  list-style-type: decimal;
}
.content .entry-content img {
  max-width: 100%;
  height: auto;
  margin: 20px 0;
}
@media (max-width: 767px) {
  .content .entry-content img {
    margin: 16px 0;
  }
}
.content .entry-content a {
  color: #009DA1;
  text-decoration: underline;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .content .entry-content a:hover {
    opacity: 0.7;
  }
}
.content .entry-content strong, .content .entry-content b {
  font-weight: 400;
}
.content .entry-content em, .content .entry-content i {
  font-style: italic;
}
.content .entry-content blockquote {
  margin: 20px 0;
  padding: 20px;
  border-left: 4px solid #009DA1;
  background-color: rgba(0, 157, 161, 0.05);
  font-style: italic;
}
@media (max-width: 767px) {
  .content .entry-content blockquote {
    margin: 16px 0;
    padding: 16px;
  }
}
.content .entry-content blockquote p {
  margin-bottom: 0;
}
.content .entry-content code {
  background-color: rgba(0, 0, 0, 0.05);
  padding: 2px 6px;
  border-radius: 4px;
  font-family: monospace;
  font-size: 0.9em;
}
.content .entry-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
}
@media (max-width: 767px) {
  .content .entry-content table {
    margin: 16px 0;
  }
}
.content .entry-content table th, .content .entry-content table td {
  padding: 12px;
  border: 1px solid #D2DED2;
  text-align: left;
}
@media (max-width: 767px) {
  .content .entry-content table th, .content .entry-content table td {
    padding: 8px;
  }
}
.content .entry-content table th {
  background-color: rgba(0, 157, 161, 0.1);
  font-weight: 400;
}
.content .entry-content hr {
  border: none;
  height: 1px;
  background-color: #D2DED2;
  margin: 30px 0;
}
@media (max-width: 767px) {
  .content .entry-content hr {
    margin: 20px 0;
  }
}

.destinations {
  position: relative;
  overflow: hidden;
}

.destinations-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  transform: scale(1.1);
  opacity: 0;
  transition: transform 0.5s linear, opacity 0.5s linear;
}
.destinations-img.is-active {
  transform: scale(1);
  opacity: 1;
}
.destinations-img img {
  object-fit: cover;
  object-position: center;
}

.destinations-list {
  padding: 140px 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 64px;
  position: relative;
  z-index: 3;
}
@media (max-width: 1599px) {
  .destinations-list {
    padding: 120px 0;
    gap: 56px;
  }
}
@media (max-width: 1365px) {
  .destinations-list {
    padding: 100px 0;
    gap: 48px;
  }
}
@media (max-width: 1023px) {
  .destinations-list {
    padding: 80px 0;
    gap: 40px;
    height: 70vh;
  }
}
@media (max-width: 767px) {
  .destinations-list {
    padding: 60px 0;
    gap: 32px;
    height: 60vh;
  }
}

.destinations-item {
  color: rgba(255, 255, 255, 0.4);
  text-align: left;
  cursor: pointer;
  transition: color 0.3s linear;
}
@media (max-width: 767px) {
  .destinations-item {
    transition: opacity 0.25s ease;
  }
}
.destinations-item:hover {
  color: rgba(255, 255, 255, 0.8);
}
.destinations-item.is-active {
  color: rgb(255, 255, 255);
}
@media (max-width: 1599px) {
  .destinations-item.h3 {
    font-size: 48px;
    line-height: 52.8px;
  }
}
@media (max-width: 1365px) {
  .destinations-item.h3 {
    font-size: 42px;
    line-height: 46.2px;
  }
}
@media (max-width: 1023px) {
  .destinations-item.h3 {
    font-size: 36px;
    line-height: 39.6px;
  }
}
@media (max-width: 767px) {
  .destinations-item.h3 {
    font-size: 28px;
    line-height: 30.8px;
  }
}

.destinations-title {
  font-size: 56px;
  font-family: Helvetica;
  font-weight: 300;
  text-transform: uppercase;
  line-height: 61.6px;
  margin: 0;
  color: white;
}
@media (max-width: 1599px) {
  .destinations-title {
    font-size: 48px;
    line-height: 52.8px;
  }
}
@media (max-width: 1365px) {
  .destinations-title {
    font-size: 42px;
    line-height: 46.2px;
  }
}
@media (max-width: 1023px) {
  .destinations-title {
    font-size: 36px;
    line-height: 39.6px;
  }
}
@media (max-width: 767px) {
  .destinations-title {
    font-size: 28px;
    line-height: 30.8px;
  }
}

.dream {
  overflow: hidden;
}

.dream-inner {
  position: relative;
}

.dream-bg {
  width: calc(100% + 480px);
  margin-left: -240px;
  height: auto;
  max-height: 900px;
  overflow: hidden;
  position: relative;
  will-change: transform;
}
.dream-bg img {
  object-fit: cover;
}

.dream-star {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  transform: scale(var(--scale, 1));
}

.dream-title {
  white-space: nowrap;
  color: var(--Filters_Dark-Graphite, #0D181A);
  text-align: left;
  font-size: 188px;
  font-weight: 300;
  line-height: 100%;
  letter-spacing: 7.52px;
  position: absolute;
  left: 0;
  bottom: 228px;
  z-index: 2;
  transform: translateX(calc(30% + var(--translate-x, 0)));
}
@media (max-width: 1599px) {
  .dream-title {
    font-size: 120px;
    bottom: 160px;
    transform: translateX(calc(80% + var(--translate-x, 0)));
  }
}
@media (max-width: 1365px) {
  .dream-title {
    font-size: 80px;
    bottom: 120px;
    transform: translateX(calc(50% + var(--translate-x, 0)));
  }
}
@media (max-width: 1023px) {
  .dream-title {
    font-size: 48px;
    bottom: 80px;
    transform: translateX(calc(30% + var(--translate-x, 0)));
  }
}
@media (max-width: 767px) {
  .dream-title {
    font-size: 32px;
    bottom: 40px;
    transform: translateX(calc(20% + var(--translate-x, 0)));
  }
}

.dream-text {
  color: rgba(245, 244, 239, 0.7);
  text-align: center;
  font-size: 196px;
  font-weight: 400;
  line-height: 100%;
  letter-spacing: 7.84px;
  text-transform: uppercase;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
}
@media (max-width: 1599px) {
  .dream-text {
    font-size: 120px;
  }
}
@media (max-width: 1365px) {
  .dream-text {
    font-size: 80px;
  }
}
@media (max-width: 1023px) {
  .dream-text {
    font-size: 48px;
  }
}
@media (max-width: 767px) {
  .dream-text {
    font-size: 32px;
  }
}

.features {
  color: #0D181A;
}

.features-inner {
  text-align: center;
  padding-top: 180px;
  position: relative;
}
@media (max-width: 1599px) {
  .features-inner {
    padding-top: 150px;
  }
}
@media (max-width: 1365px) {
  .features-inner {
    padding-top: 120px;
  }
}
@media (max-width: 1023px) {
  .features-inner {
    padding-top: 100px;
  }
}
@media (max-width: 767px) {
  .features-inner {
    padding-top: 80px;
  }
}

.features-bg {
  width: 100%;
  max-width: 1204px;
  height: 350px;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
}
.features-bg img {
  object-position: top;
}
@media (max-width: 1599px) {
  .features-bg {
    max-width: 1000px;
    height: 300px;
  }
}
@media (max-width: 1365px) {
  .features-bg {
    max-width: 900px;
    height: 280px;
  }
}
@media (max-width: 1023px) {
  .features-bg {
    max-width: 800px;
    height: 250px;
  }
}
@media (max-width: 767px) {
  .features-bg {
    max-width: 100%;
    height: 200px;
  }
}

.features-header {
  max-width: 1195px;
  margin: 0 auto 60px;
}
@media (max-width: 1599px) {
  .features-header {
    max-width: 1010px;
    margin-bottom: 50px;
  }
}
@media (max-width: 1365px) {
  .features-header {
    max-width: 900px;
    margin-bottom: 40px;
  }
}
@media (max-width: 1023px) {
  .features-header {
    max-width: 800px;
    margin-bottom: 30px;
  }
}
@media (max-width: 767px) {
  .features-header {
    max-width: 100%;
    margin-bottom: 20px;
  }
}

.features-title {
  margin-bottom: 24px;
}
@media (max-width: 1599px) {
  .features-title {
    margin-bottom: 20px;
  }
}
@media (max-width: 1365px) {
  .features-title {
    margin-bottom: 18px;
  }
}
@media (max-width: 1023px) {
  .features-title {
    margin-bottom: 16px;
  }
}
@media (max-width: 767px) {
  .features-title {
    margin-bottom: 14px;
  }
}

.features-img {
  margin-top: -280px;
  position: relative;
  z-index: -1;
}
@media (max-width: 1599px) {
  .features-img {
    margin-top: -240px;
  }
}
@media (max-width: 1365px) {
  .features-img {
    margin-top: -200px;
  }
}
@media (max-width: 1023px) {
  .features-img {
    margin-top: -160px;
  }
}
@media (max-width: 767px) {
  .features-img {
    margin-top: 0;
  }
}

.footer {
  margin-top: auto;
  background: #0D181A;
  overflow: hidden;
}

.footer-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding-bottom: 80px;
  padding-top: 104px;
  position: relative;
}
@media (max-width: 1599px) {
  .footer-content {
    padding-bottom: 70px;
    padding-top: 90px;
  }
}
@media (max-width: 1365px) {
  .footer-content {
    padding-bottom: 60px;
    padding-top: 80px;
  }
}
@media (max-width: 1023px) {
  .footer-content {
    grid-template-columns: 1fr;
    gap: 40px;
    padding-bottom: 50px;
    padding-top: 60px;
  }
}
@media (max-width: 767px) {
  .footer-content {
    gap: 20px;
    padding-bottom: 40px;
    padding-top: 40px;
  }
}
.footer-content::before {
  content: "";
  width: 1px;
  height: 100%;
  opacity: 0.1;
  background: white;
  position: absolute;
  top: 0;
  left: 50%;
  bottom: 0;
  transform: translateX(calc(-50% - 140px));
}
@media (max-width: 1023px) {
  .footer-content::before {
    display: none;
  }
}

.footer-left {
  position: relative;
  padding-right: 140px;
  display: flex;
  gap: 150px;
}
@media (max-width: 1599px) {
  .footer-left {
    padding-right: 120px;
    gap: 130px;
  }
}
@media (max-width: 1365px) {
  .footer-left {
    padding-right: 100px;
    gap: 110px;
  }
}
@media (max-width: 1023px) {
  .footer-left {
    padding-right: 0;
    gap: 100px;
    justify-content: space-between;
  }
}
@media (max-width: 767px) {
  .footer-left {
    gap: 40px;
  }
}

.footer-left-one {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 46px;
}
@media (max-width: 1599px) {
  .footer-left-one {
    gap: 40px;
  }
}
@media (max-width: 1365px) {
  .footer-left-one {
    gap: 35px;
  }
}
@media (max-width: 1023px) {
  .footer-left-one {
    gap: 30px;
  }
}
@media (max-width: 767px) {
  .footer-left-one {
    gap: 25px;
  }
}

.footer-up {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 46px;
  background: none;
  border: none;
  cursor: pointer;
}
@media (max-width: 1599px) {
  .footer-up {
    gap: 40px;
  }
}
@media (max-width: 1365px) {
  .footer-up {
    gap: 35px;
  }
}
@media (max-width: 1023px) {
  .footer-up {
    gap: 30px;
  }
}
@media (max-width: 767px) {
  .footer-up {
    gap: 25px;
  }
}
@media (any-hover: hover) {
  .footer-up:hover .footer-up-arrow svg {
    animation: arrowShoot 0.6s ease-out forwards;
  }
}

.footer-up-arrow {
  width: 56px;
  height: 148px;
  flex-shrink: 0;
  overflow: hidden;
}
@media (max-width: 1599px) {
  .footer-up-arrow {
    width: 50px;
    height: 130px;
  }
}
@media (max-width: 1365px) {
  .footer-up-arrow {
    width: 45px;
    height: 120px;
  }
}
@media (max-width: 1023px) {
  .footer-up-arrow {
    width: 40px;
    height: 100px;
  }
}
@media (max-width: 767px) {
  .footer-up-arrow {
    width: 35px;
    height: 90px;
  }
}

.footer-up-text {
  color: white;
  text-align: center;
}

.footer-logo {
  width: 88px;
  height: 90px;
  display: block;
  flex-shrink: 0;
}
@media (max-width: 1599px) {
  .footer-logo {
    width: 80px;
    height: 82px;
  }
}
@media (max-width: 1365px) {
  .footer-logo {
    width: 72px;
    height: 74px;
  }
}
@media (max-width: 1023px) {
  .footer-logo {
    width: 64px;
    height: 66px;
  }
}
@media (max-width: 767px) {
  .footer-logo {
    width: 56px;
    height: 58px;
  }
}

.footer-nav {
  display: flex;
  flex-direction: column;
  gap: 48px;
  margin-bottom: 104px;
}
@media (max-width: 1599px) {
  .footer-nav {
    gap: 42px;
    margin-bottom: 90px;
  }
}
@media (max-width: 1365px) {
  .footer-nav {
    gap: 36px;
    margin-bottom: 80px;
  }
}
@media (max-width: 1023px) {
  .footer-nav {
    gap: 32px;
    margin-bottom: 60px;
  }
}
@media (max-width: 767px) {
  .footer-nav {
    gap: 24px;
    margin-bottom: 40px;
  }
}

.footer-nav-link {
  color: white;
  transition: color 0.3s linear;
}
@media (any-hover: hover) {
  .footer-nav-link:hover {
    color: #2FD0D5;
  }
}

.footer-nav-menu {
  display: flex;
  flex-direction: column;
  gap: 48px;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 1599px) {
  .footer-nav-menu {
    gap: 42px;
  }
}
@media (max-width: 1365px) {
  .footer-nav-menu {
    gap: 36px;
  }
}
@media (max-width: 1023px) {
  .footer-nav-menu {
    gap: 32px;
  }
}
@media (max-width: 767px) {
  .footer-nav-menu {
    gap: 24px;
  }
}
.footer-nav-menu .menu-item {
  margin: 0;
  padding: 0;
}
.footer-nav-menu .menu-item a {
  color: white;
  text-decoration: none;
  text-transform: uppercase;
  transition: color 0.3s linear;
  display: block;
}
@media (any-hover: hover) {
  .footer-nav-menu .menu-item a:hover {
    color: #2FD0D5;
  }
}

.footer-right {
  display: flex;
  flex-direction: column;
  gap: 80px;
}
@media (max-width: 1599px) {
  .footer-right {
    gap: 70px;
  }
}
@media (max-width: 1365px) {
  .footer-right {
    gap: 60px;
  }
}
@media (max-width: 1023px) {
  .footer-right {
    gap: 60px;
  }
}
@media (max-width: 767px) {
  .footer-right {
    gap: 40px;
  }
}

.footer-contacts {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media (max-width: 1599px) {
  .footer-contacts {
    gap: 28px;
  }
}
@media (max-width: 1365px) {
  .footer-contacts {
    gap: 24px;
  }
}
@media (max-width: 1023px) {
  .footer-contacts {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .footer-contacts {
    gap: 16px;
  }
}

.footer-phone {
  color: white;
  transition: color 0.3s linear;
}
@media (any-hover: hover) {
  .footer-phone:hover {
    color: #2FD0D5;
  }
}

.footer-email {
  color: white;
  transition: color 0.3s linear;
}
@media (any-hover: hover) {
  .footer-email:hover {
    color: #2FD0D5;
  }
}

.footer-social {
  display: flex;
  gap: 20px;
}
@media (max-width: 1599px) {
  .footer-social {
    gap: 18px;
  }
}
@media (max-width: 1365px) {
  .footer-social {
    gap: 16px;
  }
}
@media (max-width: 1023px) {
  .footer-social {
    gap: 15px;
  }
}
@media (max-width: 767px) {
  .footer-social {
    gap: 12px;
  }
}

.footer-social-item {
  width: 68px;
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  transition: background-color 0.3s linear;
  position: relative;
}
@media (max-width: 1599px) {
  .footer-social-item {
    width: 62px;
    height: 62px;
  }
}
@media (max-width: 1365px) {
  .footer-social-item {
    width: 58px;
    height: 58px;
  }
}
@media (max-width: 1023px) {
  .footer-social-item {
    width: 56px;
    height: 56px;
  }
}
@media (max-width: 767px) {
  .footer-social-item {
    width: 48px;
    height: 48px;
  }
}
@media (any-hover: hover) {
  .footer-social-item:hover {
    background: #2FD0D5;
  }
  .footer-social-item:hover .footer-social-white {
    opacity: 0;
  }
  .footer-social-item:hover .footer-social-black {
    opacity: 1;
  }
}
.footer-social-item img {
  width: 32px;
  height: 32px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s linear;
}
@media (max-width: 1599px) {
  .footer-social-item img {
    width: 30px;
    height: 30px;
  }
}
@media (max-width: 1365px) {
  .footer-social-item img {
    width: 28px;
    height: 28px;
  }
}
@media (max-width: 1023px) {
  .footer-social-item img {
    width: 28px;
    height: 28px;
  }
}
@media (max-width: 767px) {
  .footer-social-item img {
    width: 24px;
    height: 24px;
  }
}

.footer-social-black {
  opacity: 0;
}

.footer-location {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (max-width: 1599px) {
  .footer-location {
    gap: 14px;
  }
}
@media (max-width: 1365px) {
  .footer-location {
    gap: 12px;
  }
}
@media (max-width: 1023px) {
  .footer-location {
    gap: 10px;
  }
}
@media (max-width: 767px) {
  .footer-location {
    gap: 8px;
  }
}

.footer-location-title {
  opacity: 0.4;
  color: white;
}

.footer-location-address {
  color: white;
  transition: color 0.3s linear;
}
@media (any-hover: hover) {
  .footer-location-address:hover {
    color: #2FD0D5;
  }
}

.footer-bottom {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 32px 0;
  position: relative;
  color: white;
}
@media (max-width: 1599px) {
  .footer-bottom {
    padding: 28px 0;
    gap: 18px;
  }
}
@media (max-width: 1365px) {
  .footer-bottom {
    padding: 24px 0;
    gap: 16px;
  }
}
@media (max-width: 1023px) {
  .footer-bottom {
    padding: 20px 0;
    gap: 14px;
  }
}
@media (max-width: 767px) {
  .footer-bottom {
    padding: 16px 0;
    gap: 12px;
    text-align: center;
  }
}
.footer-bottom::before {
  content: "";
  width: 100vw;
  height: 1px;
  opacity: 0.1;
  background: white;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.footer-logo-text {
  display: flex;
  align-items: center;
  width: max-content;
  gap: 60px;
  color: rgba(255, 255, 255, 0.2);
  font-size: 146px;
  font-weight: 300;
  line-height: 110%;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 1599px) {
  .footer-logo-text {
    font-size: 8.4vw;
    gap: 50px;
  }
}
@media (max-width: 1365px) {
  .footer-logo-text {
    gap: 40px;
  }
}
@media (max-width: 1023px) {
  .footer-logo-text {
    gap: 30px;
  }
}
@media (max-width: 767px) {
  .footer-logo-text {
    font-size: 8.2vw;
    gap: 20px;
  }
}
.footer-logo-text span {
  color: #2FD0D5;
}

.footer-bottom-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
@media (max-width: 767px) {
  .footer-bottom-wrapper {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

.footer-year {
  opacity: 0.4;
}

.footer-bottom-grid {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
}
@media (max-width: 1599px) {
  .footer-bottom-grid {
    gap: 35px;
  }
}
@media (max-width: 1365px) {
  .footer-bottom-grid {
    gap: 30px;
  }
}
@media (max-width: 1023px) {
  .footer-bottom-grid {
    gap: 25px;
  }
}
@media (max-width: 767px) {
  .footer-bottom-grid {
    flex-direction: column;
    gap: 20px;
    text-align: center;
  }
}

.footer-bottom-link {
  color: #FFF;
  transition: color 0.3s linear;
}
@media (any-hover: hover) {
  .footer-bottom-link:hover {
    color: #2FD0D5;
  }
}

.form-group {
  width: 100%;
}
.form-group .iti {
  width: 100%;
  z-index: 3;
}
.form-group .iti__selected-country-primary,
.form-group .iti__selected-country {
  border-radius: 64px 0 0 64px;
  overflow: hidden;
}
.form-group .iti__selected-country-primary {
  padding-left: 30px;
}
.form-group .iti__country {
  color: #0D181A;
}
.form-group .iti__search-input {
  padding: 15px 10px;
  border-radius: 16px;
  margin: 10px;
  width: calc(100% - 20px);
  color: #0D181A;
  font-size: 18px !important;
  font-style: normal;
  font-weight: 400;
  line-height: 100%;
  letter-spacing: -0.18px;
}
@media (max-width: 1023px) {
  .form-group .iti__search-input {
    font-size: 16px !important;
  }
}
.form-group .iti__search-input::placeholder {
  color: rgba(13, 24, 26, 0.3);
}
.form-group .iti__dropdown-content {
  margin-top: 0;
  background: #F2EEE9;
  border-radius: 16px;
  border: 1px solid #009DA1;
  box-shadow: none;
  overflow: hidden;
}

.form-label {
  display: block;
}

.form-input,
.form-textarea {
  width: 100%;
  padding: 25px 32px;
  border-radius: 64px;
  border: 1px solid #D2DED2;
  background: #FFF;
  box-shadow: none;
  outline: none;
  transition: border-color 0.3s linear;
}
@media (max-width: 1599px) {
  .form-input,
  .form-textarea {
    padding: 22px 28px;
  }
}
@media (max-width: 1365px) {
  .form-input,
  .form-textarea {
    padding: 20px 24px;
  }
}
@media (max-width: 1023px) {
  .form-input,
  .form-textarea {
    padding: 18px 20px;
    font-size: 16px !important;
  }
}
@media (max-width: 767px) {
  .form-input,
  .form-textarea {
    padding: 16px 18px;
    font-size: 14px !important;
  }
}
.form-input::placeholder,
.form-textarea::placeholder {
  color: #0D181A;
}
.form-input:focus,
.form-textarea:focus {
  border-color: #009DA1;
}
.form-input:invalid:not(:placeholder-shown),
.form-textarea:invalid:not(:placeholder-shown) {
  border-color: #ff4757;
}
.form-input.wpcf7-not-valid,
.form-textarea.wpcf7-not-valid {
  border-color: #ff4757;
}

.form-group .iti__selected-dial-code,
.form-input,
.form-textarea {
  color: #0D181A;
  font-size: 18px !important;
  font-style: normal;
  font-weight: 400;
  line-height: 18px;
  letter-spacing: 0;
}
@media (max-width: 1365px) {
  .form-group .iti__selected-dial-code,
  .form-input,
  .form-textarea {
    font-size: 16px !important;
  }
}

.form-input[type=number]::-webkit-outer-spin-button, .form-input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.form-input[type=number] {
  -moz-appearance: textfield;
}

.form-textarea {
  min-height: 160px;
  height: 160px;
  resize: none;
}

.form-grid {
  display: grid;
  gap: 16px;
  margin-bottom: 28px;
}
@media (max-width: 1599px) {
  .form-grid {
    gap: 14px;
  }
}
@media (max-width: 1365px) {
  .form-grid {
    margin-bottom: 24px;
    gap: 12px;
  }
}
@media (max-width: 767px) {
  .form-grid {
    margin-bottom: 20px;
  }
}

.wpcf7-form .wpcf7-form-control-wrap {
  display: block;
}
.wpcf7-form .wpcf7-not-valid-tip {
  color: #ff4757;
  font-size: 14px;
  margin-top: 8px;
}
@media (max-width: 1365px) {
  .wpcf7-form .wpcf7-not-valid-tip {
    font-size: 13px;
    margin-top: 6px;
  }
}
@media (max-width: 1023px) {
  .wpcf7-form .wpcf7-not-valid-tip {
    font-size: 12px;
    margin-top: 4px;
  }
}
@media (max-width: 767px) {
  .wpcf7-form .wpcf7-not-valid-tip {
    font-size: 11px;
    margin-top: 3px;
  }
}
.wpcf7-form .wpcf7-validation-errors {
  background: rgba(255, 71, 87, 0.1);
  border: 1px solid #ff4757;
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 24px;
  color: #ff4757;
}
@media (max-width: 1365px) {
  .wpcf7-form .wpcf7-validation-errors {
    padding: 14px;
    margin-bottom: 20px;
  }
}
@media (max-width: 1023px) {
  .wpcf7-form .wpcf7-validation-errors {
    padding: 12px;
    margin-bottom: 16px;
  }
}
@media (max-width: 767px) {
  .wpcf7-form .wpcf7-validation-errors {
    padding: 10px;
    margin-bottom: 12px;
  }
}
.wpcf7-form .wpcf7-mail-sent-ok {
  background: rgba(42, 165, 207, 0.1);
  border: 1px solid var(--Ball-Blue, #2AA5CF);
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 24px;
  color: var(--Ball-Blue, #2AA5CF);
}
@media (max-width: 1365px) {
  .wpcf7-form .wpcf7-mail-sent-ok {
    padding: 14px;
    margin-bottom: 20px;
  }
}
@media (max-width: 1023px) {
  .wpcf7-form .wpcf7-mail-sent-ok {
    padding: 12px;
    margin-bottom: 16px;
  }
}
@media (max-width: 767px) {
  .wpcf7-form .wpcf7-mail-sent-ok {
    padding: 10px;
    margin-bottom: 12px;
  }
}

.gallery {
  position: relative;
  overflow: hidden;
  color: #0D181A;
}

.gallery-inner {
  position: relative;
}

.gallery-bg {
  width: 100%;
  max-width: 1204px;
  height: 350px;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
}
.gallery-bg img {
  object-position: top;
}
@media (max-width: 1599px) {
  .gallery-bg {
    max-width: 1000px;
    height: 300px;
  }
}
@media (max-width: 1365px) {
  .gallery-bg {
    max-width: 900px;
    height: 280px;
  }
}
@media (max-width: 1023px) {
  .gallery-bg {
    max-width: 800px;
    height: 250px;
  }
}
@media (max-width: 767px) {
  .gallery-bg {
    max-width: 100%;
    height: 200px;
  }
}

.gallery-head {
  display: flex;
  flex-direction: column;
  gap: 48px;
  margin-bottom: 48px;
}
@media (max-width: 1599px) {
  .gallery-head {
    margin-bottom: 40px;
    gap: 40px;
  }
}
@media (max-width: 1365px) {
  .gallery-head {
    margin-bottom: 30px;
    gap: 30px;
  }
}
@media (max-width: 767px) {
  .gallery-head {
    margin-bottom: 20px;
    gap: 20px;
  }
}

.gallery-head-wrapper {
  max-width: 1145px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
  text-align: center;
}
@media (max-width: 767px) {
  .gallery-head-wrapper {
    gap: 16px;
  }
}

.gallery-title {
  text-transform: uppercase;
}

.gallery-slider {
  margin-left: calc(-1 * var(--container-left-offset, 0));
  margin-right: calc(-1 * var(--container-right-offset, 0));
  margin-bottom: 40px;
}
@media (max-width: 1365px) {
  .gallery-slider {
    margin-bottom: 35px;
  }
}
@media (max-width: 1023px) {
  .gallery-slider {
    width: calc(100% + 40px);
    margin-left: -20px;
    margin-bottom: 30px;
  }
}
@media (max-width: 767px) {
  .gallery-slider {
    margin-bottom: 25px;
  }
}
@media (max-width: 479px) {
  .gallery-slider {
    margin-bottom: 20px;
  }
}

.gallery-slide {
  width: 1196px;
  height: 664px;
}
@media (max-width: 1599px) {
  .gallery-slide {
    width: 1000px;
    height: 600px;
  }
}
@media (max-width: 1365px) {
  .gallery-slide {
    width: 800px;
    height: 550px;
  }
}
@media (max-width: 1023px) {
  .gallery-slide {
    width: 600px;
    height: 340px;
  }
}
@media (max-width: 767px) {
  .gallery-slide {
    width: 400px;
    height: 280px;
  }
}
@media (max-width: 479px) {
  .gallery-slide {
    width: 320px;
    height: 220px;
  }
}
.gallery-slide img {
  object-fit: cover;
}

.gallery-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}
@media (max-width: 1365px) {
  .gallery-controls {
    gap: 30px;
  }
}
@media (max-width: 1023px) {
  .gallery-controls {
    gap: 25px;
  }
}
@media (max-width: 767px) {
  .gallery-controls {
    gap: 20px;
  }
}
@media (max-width: 479px) {
  .gallery-controls {
    gap: 16px;
  }
}

.gallery-progress {
  flex-grow: 1;
  max-width: 1195px;
}
@media (max-width: 1599px) {
  .gallery-progress {
    max-width: 1000px;
  }
}
@media (max-width: 1365px) {
  .gallery-progress {
    max-width: 800px;
  }
}
@media (max-width: 1023px) {
  .gallery-progress {
    max-width: 600px;
  }
}
@media (max-width: 767px) {
  .gallery-progress {
    max-width: 100%;
  }
}

.gallery-progress-bar {
  width: 100%;
  height: 4px;
  background: #D9D9D9;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
}
@media (max-width: 767px) {
  .gallery-progress-bar {
    height: 3px;
  }
}
@media (max-width: 479px) {
  .gallery-progress-bar {
    height: 2px;
  }
}

.gallery-progress-fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: #0D181A;
  border-radius: 20px;
  transition: width 0.3s ease;
}

.gallery-nav {
  display: flex;
  gap: 16px;
}
@media (max-width: 767px) {
  .gallery-nav {
    gap: 12px;
  }
}
@media (max-width: 479px) {
  .gallery-nav {
    gap: 10px;
  }
}

.gallery-nav-btn {
  display: block;
  width: 40px;
  height: 40px;
  border: none;
  background: transparent;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
@media (max-width: 1365px) {
  .gallery-nav-btn {
    width: 36px;
    height: 36px;
  }
}
@media (max-width: 767px) {
  .gallery-nav-btn {
    width: 32px;
    height: 32px;
  }
}
@media (max-width: 479px) {
  .gallery-nav-btn {
    width: 28px;
    height: 28px;
  }
}
.gallery-nav-btn:hover {
  opacity: 0.5;
}
.gallery-nav-btn:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}

.header {
  width: 100%;
  transition: background-color 0.3s linear, box-shadow 0.3s linear;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}
.header.scrolled, .header.fixed {
  box-shadow: 0 8px 12px 0 rgba(0, 0, 0, 0.04);
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
}
.header.scrolled .header-inner, .header.fixed .header-inner {
  padding: 8px 0;
}
.header.scrolled .header-logo, .header.fixed .header-logo {
  color: #009DA1;
}
@media (min-width: 1024px) {
  .header.scrolled .header-logo, .header.fixed .header-logo {
    width: 60px;
    height: 62px;
  }
}
.header.scrolled .trp-ls-shortcode-disabled-language, .header.fixed .trp-ls-shortcode-disabled-language {
  color: #0D181A !important;
}
.header.scrolled .trp-ls-shortcode-current-language::after, .header.fixed .trp-ls-shortcode-current-language::after {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M15 7.50004C15 7.50004 11.3176 12.5 10 12.5C8.68233 12.5 5 7.5 5 7.5' stroke='%230D181A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.header.scrolled .header-burger span, .header.fixed .header-burger span {
  background: #0D181A;
}
@media (min-width: 1366px) {
  .header.scrolled .header-menu .menu-item a, .header.fixed .header-menu .menu-item a {
    color: #0D181A;
  }
  .header.scrolled .header-contact-btn span:nth-child(2), .header.fixed .header-contact-btn span:nth-child(2) {
    color: #0D181A;
    border: 2px solid #009DA1;
  }
  .header.scrolled .header-contact-btn span:nth-child(1), .header.scrolled .header-contact-btn span:nth-child(3), .header.fixed .header-contact-btn span:nth-child(1), .header.fixed .header-contact-btn span:nth-child(3) {
    border: 2px solid #009DA1;
  }
  .header.scrolled .header-contact-btn span:nth-child(1) svg, .header.scrolled .header-contact-btn span:nth-child(3) svg, .header.fixed .header-contact-btn span:nth-child(1) svg, .header.fixed .header-contact-btn span:nth-child(3) svg {
    stroke: #0D181A;
  }
}

.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 54px;
  padding: 14px 0;
  transition: padding 0.3s linear;
}
@media (max-width: 1599px) {
  .header-inner {
    gap: 42px;
    padding: 12px 0;
  }
}
@media (max-width: 1023px) {
  .header-inner {
    padding: 8px 0;
    gap: 36px;
  }
}

.header-logo {
  display: block;
  width: 72px;
  height: 74px;
  flex-shrink: 0;
  color: #fff;
  transition: all 0.3s linear;
}
@media (max-width: 1599px) {
  .header-logo {
    width: 64px;
    height: 66px;
  }
}
@media (max-width: 1023px) {
  .header-logo {
    width: 40px;
    height: 40px;
  }
}
.header-logo svg {
  fill: currentColor;
}

.header-burger {
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 16px;
  flex-shrink: 0;
  padding: 3px;
  gap: 6px;
  background: transparent;
  border: none;
  cursor: pointer;
}
@media (max-width: 1365px) {
  .header-burger {
    display: flex;
    margin-left: 25px;
  }
}
@media (max-width: 1023px) {
  .header-burger {
    margin-left: 0;
  }
}
.header-burger span {
  display: block;
  width: 100%;
  height: 2px;
  background: #fff;
  border-radius: 16px;
}

.header-wrapper {
  width: 100%;
  padding: 120px 30px 40px;
  display: flex;
  flex-direction: column;
  background: linear-gradient(135deg, #0D181A 0%, #1A2A2D 50%, #0D181A 100%);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-in-out, visibility 0.4s ease-in-out;
  overflow-y: auto;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 1;
}
@media (max-width: 1023px) {
  .header-wrapper {
    padding: 100px 20px 30px;
  }
}
@media (max-width: 767px) {
  .header-wrapper {
    padding: 80px 15px 20px;
  }
}
@media (min-width: 1366px) {
  .header-wrapper {
    display: none;
  }
}
.header-wrapper.active {
  opacity: 1;
  visibility: visible;
}
.header-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg, rgba(0.5, 12.86, 15.11, 0.3) 0%, rgba(0, 13, 15, 0) 50%, rgba(2.18, 64.41, 75.72, 0.3) 100%);
  pointer-events: none;
}
.header-wrapper .header-nav,
.header-wrapper .header-nav-secondary {
  display: block;
  position: relative;
}
.header-wrapper .header-menu,
.header-wrapper .header-menu-secondary {
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
}
.header-wrapper .header-menu .menu-item {
  width: 100%;
  border-bottom: 1px solid rgba(47, 208, 213, 0.2);
  position: relative;
  overflow: hidden;
}
.header-wrapper .header-menu .menu-item::before {
  content: "";
  position: absolute;
  left: -100%;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(47, 208, 213, 0.1), transparent);
  transition: left 0.6s ease;
}
@media (any-hover: hover) {
  .header-wrapper .header-menu .menu-item:hover::before {
    left: 100%;
  }
}
.header-wrapper .header-menu .menu-item a {
  display: block;
  padding: 20px 0;
  font-size: 20px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: #fff;
  text-decoration: none;
  transition: color 0.3s ease, transform 0.3s ease;
  position: relative;
  z-index: 1;
}
@media (max-width: 1023px) {
  .header-wrapper .header-menu .menu-item a {
    padding: 18px 0;
    font-size: 18px;
    letter-spacing: 0.72px;
  }
}
@media (max-width: 767px) {
  .header-wrapper .header-menu .menu-item a {
    padding: 16px 0;
    font-size: 16px;
    letter-spacing: 0.64px;
  }
}
@media (any-hover: hover) {
  .header-wrapper .header-menu .menu-item a:hover {
    color: #2FD0D5;
    transform: translateX(10px);
  }
}
.header-wrapper .header-contact {
  order: 3;
  margin-top: 30px;
}

@media (min-width: 1366px) {
  .header-inner .header-nav {
    display: flex;
    margin-bottom: 0;
  }
}

@media (min-width: 1366px) {
  .header-inner .header-menu {
    flex-direction: row;
    align-items: center;
    gap: 44px;
  }
}
@media (min-width: 1366px) and (max-width: 1599px) {
  .header-inner .header-menu {
    gap: 36px;
  }
}

@media (min-width: 1366px) {
  .header-inner .menu-item {
    width: auto;
    border-bottom: none;
  }
}

@media (min-width: 1366px) {
  .header-inner .menu-item a {
    display: inline;
    padding: 0;
    font-size: 14px;
  }
}
@media (min-width: 1366px) and (max-width: 1599px) {
  .header-inner .menu-item a {
    font-size: 13px;
  }
}

@media (min-width: 1366px) {
  .header-actions .menu-item {
    width: auto;
    border-bottom: none;
  }
}

@media (min-width: 1366px) {
  .header-actions .menu-item a {
    display: inline;
    padding: 0;
    font-size: 14px;
  }
}
@media (min-width: 1366px) and (max-width: 1599px) {
  .header-actions .menu-item a {
    font-size: 13px;
  }
}

@media (min-width: 1366px) {
  .header-actions .header-contact {
    margin-top: 0;
  }
}

.header-menu {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 44px;
}
@media (max-width: 1599px) {
  .header-menu {
    gap: 36px;
  }
}

.header-menu .menu-item {
  position: relative;
}

.header-menu .menu-item a {
  white-space: nowrap;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.56px;
  text-decoration: none;
  transition: color 0.3s ease;
}
@media (max-width: 1599px) {
  .header-menu .menu-item a {
    font-size: 13px;
    letter-spacing: 0.52px;
  }
}
@media (any-hover: hover) {
  .header-menu .menu-item a:hover {
    color: #2FD0D5 !important;
  }
}

.header-close-btn {
  position: absolute;
  top: 40px;
  right: 40px;
  width: 48px;
  height: 48px;
  background: #F8F9FA;
  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.3s linear;
}
.header-close-btn img {
  width: 32px;
  height: 32px;
}
@media (max-width: 1599px) {
  .header-close-btn {
    top: 35px;
    right: 35px;
    width: 44px;
    height: 44px;
  }
  .header-close-btn img {
    width: 28px;
    height: 28px;
  }
}
@media (max-width: 1365px) {
  .header-close-btn {
    top: 30px;
    right: 30px;
    width: 40px;
    height: 40px;
  }
  .header-close-btn img {
    width: 24px;
    height: 24px;
  }
}
@media (max-width: 1023px) {
  .header-close-btn {
    top: 25px;
    right: 25px;
    width: 36px;
    height: 36px;
  }
  .header-close-btn img {
    width: 20px;
    height: 20px;
  }
}
@media (max-width: 767px) {
  .header-close-btn {
    top: 20px;
    right: 20px;
    width: 32px;
    height: 32px;
  }
}
@media (any-hover: hover) {
  .header-close-btn:hover {
    background: #E9ECEF;
  }
}
.header-close-btn--mobile {
  display: none;
  z-index: 10;
}
@media (max-width: 1365px) {
  .header-close-btn--mobile {
    display: flex;
  }
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 44px;
}
@media (max-width: 1599px) {
  .header-actions {
    gap: 36px;
  }
}
@media (max-width: 1023px) {
  .header-actions {
    gap: 24px;
  }
}

.header-menu-secondary {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 44px;
}
@media (max-width: 1599px) {
  .header-menu-secondary {
    gap: 36px;
  }
}

.header-contact {
  display: flex;
  align-items: center;
  gap: 0;
}

.header-contact-btn {
  display: flex;
  align-items: center;
  width: fit-content;
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  color: #fff;
}
@media (max-width: 1599px) {
  .header-contact-btn {
    font-size: 16px;
  }
}
@media (max-width: 1365px) {
  .header-contact-btn {
    font-size: 15px;
  }
}
.header-contact-btn span {
  transition: all 0.3s linear;
}
.header-contact-btn span:nth-child(1), .header-contact-btn span:nth-child(3) {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 50%;
  border: 2px solid #fff;
  width: 52px;
  height: 52px;
}
@media (max-width: 1599px) {
  .header-contact-btn span:nth-child(1), .header-contact-btn span:nth-child(3) {
    width: 48px;
    height: 48px;
  }
}
@media (max-width: 1365px) {
  .header-contact-btn span:nth-child(1), .header-contact-btn span:nth-child(3) {
    width: 44px;
    height: 44px;
  }
}
.header-contact-btn span:nth-child(1) svg, .header-contact-btn span:nth-child(3) svg {
  stroke: #fff;
  flex-shrink: 0;
  transition: all 0.3s linear;
  width: 24px;
  height: 24px;
}
@media (max-width: 1599px) {
  .header-contact-btn span:nth-child(1) svg, .header-contact-btn span:nth-child(3) svg {
    width: 22px;
    height: 22px;
  }
}
@media (max-width: 1365px) {
  .header-contact-btn span:nth-child(1) svg, .header-contact-btn span:nth-child(3) svg {
    width: 20px;
    height: 20px;
  }
}
.header-contact-btn span:nth-child(1) {
  transform: scale(0);
  margin-right: -52px;
}
@media (max-width: 1599px) {
  .header-contact-btn span:nth-child(1) {
    margin-right: -48px;
  }
}
@media (max-width: 1365px) {
  .header-contact-btn span:nth-child(1) {
    margin-right: -44px;
  }
}
.header-contact-btn span:nth-child(3) {
  opacity: 1;
}
.header-contact-btn span:nth-child(2) {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  border-radius: 60px;
  border: 2px solid #fff;
  padding: 15px 20px;
  background-color: transparent;
}
@media (max-width: 1599px) {
  .header-contact-btn span:nth-child(2) {
    padding: 14px 18px;
    gap: 10px;
  }
}
@media (max-width: 1365px) {
  .header-contact-btn span:nth-child(2) {
    padding: 12px 16px;
    gap: 8px;
  }
}
@media (any-hover: hover) {
  .header-contact-btn:hover span:nth-child(1) {
    transform: scale(1);
  }
  .header-contact-btn:hover span:nth-child(2) {
    transform: translateX(52px);
  }
}
@media (any-hover: hover) and (max-width: 1599px) {
  .header-contact-btn:hover span:nth-child(2) {
    transform: translateX(48px);
  }
}
@media (any-hover: hover) and (max-width: 1365px) {
  .header-contact-btn:hover span:nth-child(2) {
    transform: translateX(44px);
  }
}
@media (any-hover: hover) {
  .header-contact-btn:hover span:nth-child(3) {
    transform: scale(0);
  }
}

.header-lang {
  margin-right: 0;
  position: relative;
}
@media (max-width: 1599px) {
  .header-lang {
    margin-right: 0;
  }
}
@media (max-width: 1023px) {
  .header-lang {
    margin-right: 0;
  }
}

.trp-language-switcher {
  width: fit-content !important;
  height: fit-content !important;
}

.trp-ls-shortcode-disabled-language {
  padding: 0 !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.56px !important;
}

.trp-ls-shortcode-current-language {
  display: flex !important;
  align-items: center;
  gap: 8px;
  width: fit-content !important;
  padding: 0 !important;
  visibility: visible !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  border-radius: 12px !important;
  transition: background 0.2s;
  position: relative;
}
@media (max-width: 1599px) {
  .trp-ls-shortcode-current-language {
    font-size: 13px !important;
    letter-spacing: 0.52px !important;
  }
}
@media (max-width: 1023px) {
  .trp-ls-shortcode-current-language {
    padding: 0 !important;
    font-size: 14px !important;
    letter-spacing: -0.14px !important;
  }
}
.trp-ls-shortcode-current-language::after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M15 7.50004C15 7.50004 11.3176 12.5 10 12.5C8.68233 12.5 5 7.5 5 7.5' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media (max-width: 1023px) {
  .trp-ls-shortcode-current-language::after {
    width: 16px;
    height: 16px;
  }
}

.trp-ls-shortcode-language {
  width: fit-content !important;
  padding: 4px !important;
  top: 100% !important;
  left: 50% !important;
  transform: translateX(-50%);
  background-image: none !important;
}
.trp-ls-shortcode-language a {
  display: block;
  width: 100%;
  padding: 8px 12px !important;
  margin-bottom: 5px !important;
  color: var(--Almost-White, #F2F2F1) !important;
  color: #18103D !important;
  font-size: 14px !important;
  text-align: center !important;
  text-decoration: none !important;
  background: none !important;
  border: none !important;
  cursor: pointer;
  transition: color 0.2s linear, background-color 0.2s linear;
}
@media (max-width: 1023px) {
  .trp-ls-shortcode-language a {
    padding: 6px 10px !important;
    font-size: 12px !important;
    letter-spacing: -0.14px !important;
  }
}
@media (any-hover: hover) {
  .trp-ls-shortcode-language a:hover, .trp-ls-shortcode-language a:focus {
    color: #2FD0D5 !important;
  }
}
.trp-ls-shortcode-language a:last-child {
  margin-bottom: 0 !important;
}
.trp-ls-shortcode-language a.trp-ls-disabled-language {
  color: #fff !important;
  background-color: #009DA1 !important;
}

.hero {
  position: relative;
  color: white;
}

.hero-inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 160px 0 130px;
}
@media (max-width: 1599px) {
  .hero-inner {
    padding: 140px 0 110px;
  }
}
@media (max-width: 1365px) {
  .hero-inner {
    padding: 120px 0 90px;
  }
}
@media (max-width: 1023px) {
  .hero-inner {
    padding: 100px 0 70px;
    align-items: center;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .hero-inner {
    padding: 80px 0 40px;
  }
}

.hero-title {
  margin-bottom: 80px;
}
@media (max-width: 1599px) {
  .hero-title {
    margin-bottom: 60px;
  }
}
@media (max-width: 1365px) {
  .hero-title {
    margin-bottom: 40px;
  }
}
@media (max-width: 1023px) {
  .hero-title {
    margin-bottom: 30px;
  }
}
@media (max-width: 767px) {
  .hero-title {
    margin-bottom: 20px;
  }
}

.hero-divider {
  height: 1px;
  background: rgba(255, 255, 255, 0.3);
  position: absolute;
  left: 0;
  right: 0;
  top: 440px;
}
@media (max-width: 1599px) {
  .hero-divider {
    top: 360px;
  }
}
@media (max-width: 1365px) {
  .hero-divider {
    top: 290px;
  }
}
@media (max-width: 1023px) {
  .hero-divider {
    top: 230px;
  }
}
@media (max-width: 767px) {
  .hero-divider {
    top: 144px;
  }
}

.hero-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 207px;
}
@media (max-width: 1599px) {
  .hero-wrapper {
    margin-bottom: 150px;
  }
}
@media (max-width: 1365px) {
  .hero-wrapper {
    margin-bottom: 100px;
  }
}
@media (max-width: 1023px) {
  .hero-wrapper {
    flex-direction: column;
    margin-bottom: 60px;
  }
}
@media (max-width: 767px) {
  .hero-wrapper {
    margin-bottom: 40px;
  }
}

.hero-description {
  text-align: right;
  max-width: 385px;
  margin-left: auto;
  margin-bottom: 0;
}
@media (max-width: 1599px) {
  .hero-description {
    max-width: 380px;
  }
}
@media (max-width: 1365px) {
  .hero-description {
    max-width: 330px;
  }
}
@media (max-width: 1023px) {
  .hero-description {
    max-width: 100%;
    margin: 0 auto 0;
    text-align: center;
  }
}

.hero-circle {
  width: 374px;
  height: 374px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #2FD0D5;
  border-radius: 50%;
  position: absolute;
  right: 0;
  bottom: -82px;
}
@media (max-width: 1599px) {
  .hero-circle {
    width: 300px;
    height: 300px;
    bottom: -60px;
  }
}
@media (max-width: 1365px) {
  .hero-circle {
    width: 220px;
    height: 220px;
    bottom: -40px;
  }
}
@media (max-width: 1023px) {
  .hero-circle {
    position: static;
    margin: 40px auto 0;
  }
}
@media (max-width: 767px) {
  .hero-circle {
    width: 140px;
    height: 140px;
    margin: 24px auto 0;
  }
}
@media (any-hover: hover) {
  .hero-circle:hover::before {
    animation: pulseBefore 1s linear infinite;
  }
}
.hero-circle::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #2FD0D5;
  border-radius: 50%;
  z-index: -1;
  transform: scale(0);
}

.hero-arrow {
  width: 60px;
  height: 60px;
}
@media (max-width: 1599px) {
  .hero-arrow {
    width: 48px;
    height: 48px;
  }
}
@media (max-width: 1365px) {
  .hero-arrow {
    width: 36px;
    height: 36px;
  }
}
@media (max-width: 1023px) {
  .hero-arrow {
    width: 32px;
    height: 32px;
  }
}
@media (max-width: 767px) {
  .hero-arrow {
    width: 28px;
    height: 28px;
  }
}

.infrastructure {
  display: flex;
  min-height: 100vh;
  position: relative;
}
@media (max-width: 1023px) {
  .infrastructure {
    flex-direction: column;
    min-height: auto;
    overflow: hidden;
  }
}

.infrastructure-inner {
  display: grid;
  grid-template-columns: 1fr 588px;
  align-items: flex-start;
  gap: 120px;
}
@media (max-width: 1599px) {
  .infrastructure-inner {
    gap: 80px;
  }
}
@media (max-width: 1365px) {
  .infrastructure-inner {
    grid-template-columns: 1fr 1fr;
    gap: 60px;
  }
}
@media (max-width: 1023px) {
  .infrastructure-inner {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}
@media (max-width: 767px) {
  .infrastructure-inner {
    gap: 30px;
  }
}

.infrastructure-left {
  height: calc(100vh - 78px);
  position: sticky;
  top: 78px;
}
@media (max-width: 1023px) {
  .infrastructure-left {
    position: relative;
    top: 0;
    width: calc(100% + 40px);
    margin-left: -20px;
    height: 480px;
  }
}

.infrastructure-bg {
  position: absolute;
  top: 0;
  left: calc(-1 * var(--container-left-offset, 0));
  bottom: 0;
  right: 0;
  z-index: -1;
}
@media (max-width: 1023px) {
  .infrastructure-bg {
    left: 0;
  }
}
.infrastructure-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.infrastructure-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 120px 100px 120px 0;
}
@media (max-width: 1599px) {
  .infrastructure-content {
    padding: 100px 80px 100px 0;
  }
}
@media (max-width: 1365px) {
  .infrastructure-content {
    padding: 100px 60px 80px 0;
  }
}
@media (max-width: 1023px) {
  .infrastructure-content {
    padding: 60px 20px 60px 20px;
    gap: 12px;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .infrastructure-content {
    padding: 40px 16px 40px 16px;
  }
}

.infrastructure-title {
  color: white;
  text-transform: uppercase;
}
@media (max-width: 1023px) {
  .infrastructure-title {
    font-size: 24px;
  }
}

.infrastructure-brand {
  color: white;
  text-transform: uppercase;
  font-size: 116px;
  line-height: 127.6px;
  font-weight: 300;
}
@media (max-width: 1599px) {
  .infrastructure-brand {
    font-size: 96px;
    line-height: 105.6px;
  }
}
@media (max-width: 1365px) {
  .infrastructure-brand {
    font-size: 72px;
    line-height: 79.2px;
  }
}
@media (max-width: 1023px) {
  .infrastructure-brand {
    font-size: 60px;
    line-height: 61.6px;
  }
}

.infrastructure-right {
  padding-top: 150px;
  display: flex;
  flex-direction: column;
  gap: 80px;
  color: #0D181A;
}
@media (max-width: 1599px) {
  .infrastructure-right {
    padding-top: 120px;
    gap: 60px;
  }
}
@media (max-width: 1365px) {
  .infrastructure-right {
    padding-top: 100px;
    gap: 50px;
  }
}
@media (max-width: 1023px) {
  .infrastructure-right {
    padding-top: 0;
    gap: 40px;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .infrastructure-right {
    gap: 30px;
  }
}

.infrastructure-item {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media (max-width: 1599px) {
  .infrastructure-item {
    gap: 28px;
  }
}
@media (max-width: 1365px) {
  .infrastructure-item {
    gap: 24px;
  }
}
@media (max-width: 1023px) {
  .infrastructure-item {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .infrastructure-item {
    gap: 16px;
  }
  .infrastructure-item .h4 {
    font-size: 24px;
  }
}
.infrastructure-item img {
  width: 100%;
  height: 512px;
  object-fit: cover;
}
@media (max-width: 1365px) {
  .infrastructure-item img {
    height: 400px;
  }
}
@media (max-width: 1023px) {
  .infrastructure-item img {
    height: 350px;
  }
}
@media (max-width: 767px) {
  .infrastructure-item img {
    height: 250px;
  }
}
.infrastructure-item .text-l {
  color: #0D181A;
  font-weight: 300;
}
.infrastructure-item ul {
  padding-left: 20px;
}
.infrastructure-item ul li {
  list-style: disc;
}

.infrastructure-cta {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (max-width: 1599px) {
  .infrastructure-cta {
    gap: 20px;
  }
}
@media (max-width: 1365px) {
  .infrastructure-cta {
    gap: 18px;
  }
}
@media (max-width: 1023px) {
  .infrastructure-cta {
    gap: 16px;
    text-align: center;
    align-items: center;
  }
}
@media (max-width: 767px) {
  .infrastructure-cta {
    gap: 14px;
  }
}

.infrastructure-cta-title {
  color: #009DA1;
  text-transform: uppercase;
  font-size: 52px;
  line-height: 57.2px;
  font-weight: 300;
}
@media (max-width: 1599px) {
  .infrastructure-cta-title {
    font-size: 44px;
    line-height: 48.4px;
  }
}
@media (max-width: 1365px) {
  .infrastructure-cta-title {
    font-size: 36px;
    line-height: 39.6px;
  }
}
@media (max-width: 1023px) {
  .infrastructure-cta-title {
    font-size: 32px;
    line-height: 35.2px;
  }
}
@media (max-width: 767px) {
  .infrastructure-cta-title {
    font-size: 28px;
    line-height: 30.8px;
  }
}

.interactive {
  position: relative;
  overflow: hidden;
}

.interactive-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
}
.interactive-bg img {
  object-fit: cover;
}

.interactive-img {
  opacity: 0;
  transform: scale(1.1);
  transition: opacity 0.5s linear, transform 0.5s linear, z-index 0.5s linear;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
}
.interactive-img.is-active {
  opacity: 1;
  transform: scale(1);
}
.interactive-img.is-checked {
  opacity: 1;
  transform: scale(1);
  z-index: -3;
}
.interactive-img img {
  object-fit: cover;
}

.interactive-img::before,
.interactive-bg::before {
  content: "";
  opacity: 0.5;
  background: var(--Filters_Dark-Graphite, #0D181A);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.interactive-img::after,
.interactive-bg::after {
  content: "";
  background: linear-gradient(180deg, rgba(0, 13, 15, 0.5) 0%, rgba(0, 13, 15, 0) 100%);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.interactive-inner {
  height: 640px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  gap: 40px;
}
@media (max-width: 1599px) {
  .interactive-inner {
    gap: 30px;
  }
}
@media (max-width: 1365px) {
  .interactive-inner {
    gap: 20px;
  }
}
@media (max-width: 1023px) {
  .interactive-inner {
    height: auto;
    padding: 120px 0;
  }
}
@media (max-width: 767px) {
  .interactive-inner {
    grid-template-columns: 1fr;
    padding: 100px 0;
  }
}

.interactive-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 162px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.4);
  text-align: center;
  transition: color 0.5s linear;
  position: relative;
}
@media (max-width: 1023px) {
  .interactive-btn {
    height: 100px;
  }
}
@media (max-width: 767px) {
  .interactive-btn {
    height: auto;
  }
}
.interactive-btn.is-active {
  color: white;
}
.interactive-btn.is-active .interactive-title::before {
  transform: translateX(0);
}
.interactive-btn.is-checked {
  cursor: default;
  color: white;
}
.interactive-btn.is-checked .interactive-title::before {
  transform: translateX(-100%);
}
.interactive-btn.is-checked .interactive-logo {
  opacity: 1;
}

.interactive-logo {
  width: 162px;
  height: 166px;
  flex-shrink: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  opacity: 0;
  transition: opacity 0.5s linear;
}
@media (max-width: 1023px) {
  .interactive-logo {
    width: 100px;
    height: 100px;
  }
}
@media (max-width: 767px) {
  .interactive-logo {
    display: none;
  }
}

.interactive-title {
  padding: 12px 0;
  display: block;
  text-transform: uppercase;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.interactive-title::before {
  content: "";
  height: 1px;
  width: 100%;
  background: #FFF;
  position: absolute;
  left: 0;
  bottom: 0;
  transform: translateX(-100%);
  transition: transform 0.5s linear;
}

.investment {
  background-color: #F9F4EF;
}

.investment-inner {
  display: flex;
  flex-direction: column;
  gap: 60px;
}
@media (max-width: 1599px) {
  .investment-inner {
    gap: 55px;
  }
}
@media (max-width: 1365px) {
  .investment-inner {
    gap: 50px;
  }
}
@media (max-width: 1023px) {
  .investment-inner {
    gap: 40px;
  }
}
@media (max-width: 767px) {
  .investment-inner {
    gap: 30px;
  }
}

.investment-title {
  color: #0D181A;
  text-transform: uppercase;
  max-width: 710px;
  margin: 0;
}
@media (max-width: 1599px) {
  .investment-title {
    max-width: 650px;
  }
}
@media (max-width: 1365px) {
  .investment-title {
    max-width: 600px;
  }
}
@media (max-width: 1023px) {
  .investment-title {
    max-width: 100%;
  }
}

.investment-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 48px;
}
@media (max-width: 1599px) {
  .investment-grid {
    gap: 44px;
  }
}
@media (max-width: 1365px) {
  .investment-grid {
    gap: 40px;
  }
}
@media (max-width: 1023px) {
  .investment-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
@media (max-width: 767px) {
  .investment-grid {
    gap: 24px;
  }
}

.investment-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  position: relative;
  z-index: 1;
}
.investment-card::after {
  content: "";
  width: 100%;
  margin-top: 16px;
  border-top: 4px solid #009DA1;
  height: 548px;
  background: linear-gradient(180deg, white 0%, rgba(255, 255, 255, 0) 100%);
}
@media (max-width: 1599px) {
  .investment-card::after {
    height: 520px;
  }
}
@media (max-width: 1365px) {
  .investment-card::after {
    height: 480px;
  }
}
@media (max-width: 1023px) {
  .investment-card::after {
    height: auto;
  }
}
.investment-card:nth-child(2) {
  margin-top: -85px;
}
@media (max-width: 1599px) {
  .investment-card:nth-child(2) {
    margin-top: -65px;
  }
}
@media (max-width: 1023px) {
  .investment-card:nth-child(2) {
    margin-top: 0;
  }
}
.investment-card:nth-child(3) {
  margin-top: -170px;
}
@media (max-width: 1599px) {
  .investment-card:nth-child(3) {
    margin-top: -130px;
  }
}
@media (max-width: 1023px) {
  .investment-card:nth-child(3) {
    margin-top: 0;
  }
}
@media (max-width: 767px) {
  .investment-card {
    gap: 10px;
  }
}

.investment-value {
  display: flex;
  align-items: baseline;
  gap: 26px;
}
@media (max-width: 1599px) {
  .investment-value {
    gap: 24px;
  }
}
@media (max-width: 1365px) {
  .investment-value {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .investment-value {
    gap: 16px;
  }
}
.investment-value span {
  color: #009DA1;
  font-size: 104px;
  font-weight: 400;
  line-height: 110%;
  letter-spacing: -2.08px;
}
@media (max-width: 1599px) {
  .investment-value span {
    font-size: 96px;
    letter-spacing: -1.92px;
  }
}
@media (max-width: 1365px) {
  .investment-value span {
    font-size: 88px;
    letter-spacing: -1.76px;
  }
}
@media (max-width: 1023px) {
  .investment-value span {
    font-size: 72px;
    letter-spacing: -1.44px;
  }
}
@media (max-width: 767px) {
  .investment-value span {
    font-size: 56px;
    letter-spacing: -1.12px;
  }
}

.investment-subtitle {
  color: #0D181A;
}

.investment-description {
  color: #0D181A;
}

.investment-img {
  margin-top: -548px;
}
@media (max-width: 1599px) {
  .investment-img {
    margin-top: -520px;
  }
}
@media (max-width: 1365px) {
  .investment-img {
    margin-top: -480px;
  }
}
@media (max-width: 1023px) {
  .investment-img {
    margin-top: 20px;
  }
}
.investment-img img {
  object-fit: cover;
}

/**
 * Стилі для lazy loading відео
 */
video[data-src] {
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}
video[data-src].lazy-video-loaded {
  opacity: 1;
}
.lazy-video-placeholder {
  position: relative;
  background-color: #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.lazy-video-placeholder::before {
  content: "";
  width: 40px;
  height: 40px;
  border: 3px solid #009DA1;
  border-top: 3px solid transparent;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.45);
  backdrop-filter: blur(5px);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.loader.active {
  opacity: 1;
  visibility: visible;
}

.loader-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.loader-logo {
  width: 88px;
  height: 88px;
  animation: loaderSpin 2s linear infinite;
}

@keyframes loaderSpin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.location {
  position: relative;
  overflow: hidden;
  color: #0D181A;
}

.location-header {
  display: flex;
  justify-content: space-between;
  gap: 40px;
}
@media (max-width: 1365px) {
  .location-header {
    gap: 30px;
  }
}
@media (max-width: 1023px) {
  .location-header {
    flex-direction: column;
    gap: 24px;
  }
}
@media (max-width: 767px) {
  .location-header {
    gap: 20px;
  }
}

.location-title {
  text-transform: uppercase;
  width: 638px;
}
@media (max-width: 1599px) {
  .location-title {
    width: 540px;
  }
}
@media (max-width: 1365px) {
  .location-title {
    width: 480px;
  }
}
@media (max-width: 1023px) {
  .location-title {
    width: 100%;
  }
}

.location-wrapper {
  max-width: 588px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media (max-width: 1365px) {
  .location-wrapper {
    max-width: 500px;
    gap: 28px;
  }
}
@media (max-width: 1023px) {
  .location-wrapper {
    max-width: 100%;
    gap: 24px;
  }
}
@media (max-width: 767px) {
  .location-wrapper {
    gap: 20px;
  }
}

.location-map {
  margin-bottom: 20px;
}
@media (max-width: 1023px) {
  .location-map {
    margin-bottom: 16px;
  }
}
@media (max-width: 1023px) {
  .location-map {
    overflow: scroll;
  }
}
@media (max-width: 767px) {
  .location-map {
    margin-bottom: 12px;
  }
}
.location-map img {
  object-fit: cover;
}

.location-map-inner {
  position: relative;
}
@media (max-width: 1023px) {
  .location-map-inner {
    min-width: 1024px;
    margin-top: 20px;
  }
}
@media (max-width: 540px) {
  .location-map-inner {
    min-width: unset;
  }
}

@media (max-width: 540px) {
  .location-map-img--desktop {
    display: none;
  }
}
@media (min-width: 541px) {
  .location-map-img--mobile {
    display: none;
  }
}

.location-map-line {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}
@media (max-width: 540px) {
  .location-map-line {
    display: none;
  }
}

.location-pin {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  position: absolute;
  top: 0%;
  left: 0%;
  z-index: 2;
  cursor: pointer;
}
@media (max-width: 1365px) {
  .location-pin {
    gap: 3px;
  }
}
.location-pin.is-active .location-pin-icon {
  background-color: rgba(47, 208, 213, 0.1);
}
.location-pin.is-active .location-pin-icon::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none'%3E%3Cpath stroke='%23009DA1' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='22.926' stroke-width='2' d='M12 21.773v-7.277'/%3E%3Cpath fill='%23009DA1' stroke='%23009DA1' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='22.926' stroke-width='2' d='M11.728 13.639a5.582 5.582 0 0 0 5.571-5.572 5.582 5.582 0 0 0-5.571-5.571 5.582 5.582 0 0 0-5.572 5.571 5.582 5.582 0 0 0 5.572 5.572Z'/%3E%3C/svg%3E");
}
@media (max-width: 540px) {
  .location-pin.is-active .location-pin-icon::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9' fill='none'%3E%3Cg stroke='%232FD0D5' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='22.926' stroke-width='.693' clip-path='url(%23a)'%3E%3Cpath d='M4.164 8.161v-2.52'/%3E%3Cpath fill='%232FD0D5' d='M4.07 5.344c1.063 0 1.93-.867 1.93-1.93s-.867-1.93-1.93-1.93-1.93.867-1.93 1.93.867 1.93 1.93 1.93Z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M.008.62H8.32v8.313H.008z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  }
}
@media (any-hover: hover) {
  .location-pin:hover .location-pin-icon {
    background-color: rgba(47, 208, 213, 0.1);
  }
  .location-pin:hover .location-pin-icon::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none'%3E%3Cpath stroke='%23009DA1' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='22.926' stroke-width='2' d='M12 21.773v-7.277'/%3E%3Cpath fill='%23009DA1' stroke='%23009DA1' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='22.926' stroke-width='2' d='M11.728 13.639a5.582 5.582 0 0 0 5.571-5.572 5.582 5.582 0 0 0-5.571-5.571 5.582 5.582 0 0 0-5.572 5.571 5.582 5.582 0 0 0 5.572 5.572Z'/%3E%3C/svg%3E");
  }
}
@media (any-hover: hover) and (max-width: 540px) {
  .location-pin:hover .location-pin-icon::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9' fill='none'%3E%3Cg stroke='%232FD0D5' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='22.926' stroke-width='.693' clip-path='url(%23a)'%3E%3Cpath d='M4.164 8.161v-2.52'/%3E%3Cpath fill='%232FD0D5' d='M4.07 5.344c1.063 0 1.93-.867 1.93-1.93s-.867-1.93-1.93-1.93-1.93.867-1.93 1.93.867 1.93 1.93 1.93Z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M.008.62H8.32v8.313H.008z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  }
}
.location-pin--1 {
  top: 54%;
  left: 61%;
}
@media (max-width: 1365px) {
  .location-pin--1 {
    top: 53%;
    left: 60%;
  }
}
@media (max-width: 540px) {
  .location-pin--1 {
    top: 55%;
    left: 63%;
  }
}
.location-pin--2 {
  flex-direction: column-reverse;
  top: 77%;
  left: 71%;
}
@media (max-width: 1365px) {
  .location-pin--2 {
    top: 76%;
    left: 70%;
  }
}
@media (max-width: 540px) {
  .location-pin--2 {
    top: 78%;
    left: 83%;
  }
}
.location-pin--2 .location-pin-icon {
  background-color: rgba(47, 208, 213, 0.1);
}
.location-pin--2 .location-pin-icon::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none'%3E%3Cpath stroke='%230D181A' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='22.926' stroke-width='2' d='M12 21.773v-7.277'/%3E%3Cpath fill='%230D181A' stroke='%230D181A' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='22.926' stroke-width='2' d='M11.728 13.64a5.582 5.582 0 0 0 5.571-5.572 5.582 5.582 0 0 0-5.571-5.571 5.582 5.582 0 0 0-5.572 5.571 5.582 5.582 0 0 0 5.572 5.572Z'/%3E%3C/svg%3E");
}
@media (max-width: 540px) {
  .location-pin--2 .location-pin-icon::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9' fill='none'%3E%3Cg stroke='%230D181A' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='22.926' stroke-width='.693' clip-path='url(%23a)'%3E%3Cpath d='M4.164 8.161v-2.52'/%3E%3Cpath fill='%230D181A' d='M4.07 5.344c1.063 0 1.93-.867 1.93-1.93s-.867-1.93-1.93-1.93-1.93.867-1.93 1.93.867 1.93 1.93 1.93Z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M.008.62H8.32v8.313H.008z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  }
}
.location-pin--2 .location-pin-text {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 1.92px;
}
@media (max-width: 1365px) {
  .location-pin--2 .location-pin-text {
    font-size: 20px;
    letter-spacing: 1.6px;
  }
}
@media (max-width: 540px) {
  .location-pin--2 .location-pin-text {
    font-size: 8px;
    letter-spacing: 0.64px;
  }
}
.location-pin--3 {
  top: 1%;
  left: 22%;
}
@media (max-width: 1365px) {
  .location-pin--3 {
    top: 1%;
    left: 21%;
  }
}
@media (max-width: 540px) {
  .location-pin--3 {
    top: 1%;
    left: 2%;
  }
}
.location-pin--4 {
  top: 89%;
  left: 69%;
}
@media (max-width: 1365px) {
  .location-pin--4 {
    top: 88%;
    left: 68%;
  }
}
@media (max-width: 540px) {
  .location-pin--4 {
    top: 90%;
    left: 75%;
  }
}
.location-pin--5 {
  top: 70%;
  left: 66%;
}
@media (max-width: 1599px) {
  .location-pin--5 {
    top: 69%;
    left: 64%;
  }
}
@media (max-width: 1365px) {
  .location-pin--5 {
    top: 68%;
    left: 63%;
  }
}
@media (max-width: 540px) {
  .location-pin--5 {
    top: 71%;
    left: 69%;
  }
}
.location-pin--6 {
  top: 85%;
  left: 70%;
}
@media (max-width: 1365px) {
  .location-pin--6 {
    top: 84%;
    left: 69%;
  }
}
@media (max-width: 540px) {
  .location-pin--6 {
    top: 85%;
    left: 81%;
  }
}
.location-pin--6 .location-pin-text {
  display: none;
}
.location-pin--7 {
  top: 68%;
  left: 72%;
  flex-direction: column-reverse;
}
@media (max-width: 1365px) {
  .location-pin--7 {
    top: 67%;
    left: 71%;
  }
}
@media (max-width: 540px) {
  .location-pin--7 {
    top: 67%;
    left: 80%;
  }
}

.location-pin-icon {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  background-color: rgba(245, 240, 229, 0.6);
  border-radius: 50%;
  border: 1px solid rgba(13, 24, 26, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.3s linear;
}
@media (max-width: 1365px) {
  .location-pin-icon {
    width: 36px;
    height: 36px;
  }
}
@media (max-width: 540px) {
  .location-pin-icon {
    width: 14px;
    height: 14px;
  }
}
.location-pin-icon::before {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none'%3E%3Cpath stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='22.926' stroke-width='2' d='M12 21.773v-7.277M11.728 13.639a5.582 5.582 0 0 0 5.571-5.572 5.582 5.582 0 0 0-5.571-5.571 5.582 5.582 0 0 0-5.572 5.571 5.582 5.582 0 0 0 5.572 5.572Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  transition: background-image 0.3s linear;
}
@media (max-width: 1365px) {
  .location-pin-icon::before {
    width: 20px;
    height: 20px;
  }
}
@media (max-width: 540px) {
  .location-pin-icon::before {
    width: 8px;
    height: 8px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9' fill='none'%3E%3Cg stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='22.926' stroke-width='.693' clip-path='url(%23a)'%3E%3Cpath d='M4.714 7.658v-2.52M4.62 4.841c1.062 0 1.929-.867 1.929-1.93 0-1.062-.867-1.93-1.93-1.93s-1.93.868-1.93 1.93c0 1.063.867 1.93 1.93 1.93Z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M.557.117H8.87V8.43H.557z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  }
}

.location-pin-text {
  color: #0D181A;
  text-align: center;
  font-size: 13px;
  font-weight: 400;
  line-height: 110%;
  text-transform: uppercase;
}
@media (max-width: 1365px) {
  .location-pin-text {
    font-size: 12px;
  }
}
@media (max-width: 540px) {
  .location-pin-text {
    font-size: 8px;
  }
}

.location-map,
.location-slider {
  margin-left: calc(-1 * var(--container-left-offset, 0));
  margin-right: calc(-1 * var(--container-right-offset, 0));
}
@media (max-width: 1023px) {
  .location-map,
  .location-slider {
    width: calc(100% + 40px);
    margin-left: -20px;
  }
}

.location-slide {
  width: 405px;
  height: auto;
  padding: 32px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 34px;
  background: #EDEBE9;
  cursor: pointer;
  position: relative;
}
@media (max-width: 1365px) {
  .location-slide {
    width: 350px;
    padding: 28px;
    gap: 30px;
  }
}
@media (max-width: 1023px) {
  .location-slide {
    width: 300px;
    padding: 24px;
    gap: 26px;
  }
}
@media (max-width: 767px) {
  .location-slide {
    width: 280px;
    padding: 20px;
    gap: 22px;
  }
}
.location-slide.is-active .location-card-title {
  color: #fff;
}
.location-slide.is-active .location-img {
  clip-path: circle(100% at center);
}
.location-slide.is-active .location-card-info {
  opacity: 0;
}
@media (any-hover: hover) {
  .location-slide:hover .location-card-title {
    color: #fff;
  }
  .location-slide:hover .location-img {
    clip-path: circle(100% at center);
  }
  .location-slide:hover .location-card-info {
    opacity: 0;
  }
}

.location-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .location-top {
    gap: 12px;
  }
}

.location-img {
  width: 100%;
  height: 100%;
  z-index: 1;
  top: 0;
  left: 0;
  position: absolute;
  object-fit: cover;
  clip-path: circle(0px at center);
  transition: clip-path 0.3s linear;
}
@media (max-width: 767px) {
  .location-img {
    transition: clip-path 0.25s linear;
  }
}
.location-img img {
  object-fit: cover;
}
.location-img::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
  z-index: 1;
}

.location-card-title {
  transition: color 0.3s linear;
}
@media (max-width: 767px) {
  .location-card-title {
    transition: color 0.25s linear;
  }
}

.location-card-icon {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
}
@media (max-width: 1365px) {
  .location-card-icon {
    width: 36px;
    height: 36px;
  }
}
@media (max-width: 767px) {
  .location-card-icon {
    width: 32px;
    height: 32px;
  }
}

.location-card-info {
  display: flex;
  align-items: center;
  gap: 16px;
  position: relative;
  z-index: 2;
  transition: opacity 0.3s linear;
}
@media (max-width: 1365px) {
  .location-card-info {
    gap: 14px;
  }
}
@media (max-width: 1023px) {
  .location-card-info {
    gap: 12px;
  }
}
@media (max-width: 767px) {
  .location-card-info {
    gap: 10px;
    transition: opacity 0.25s linear;
  }
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.modal.is-active {
  opacity: 1;
  visibility: visible;
}

.modal-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(13, 24, 26, 0.8);
}

.modal-container {
  position: relative;
  width: 100%;
  max-width: 800px;
  margin: 0 40px;
  background: #FFFFFF;
  border-radius: 20px;
  padding: 80px;
  box-shadow: 0 20px 60px rgba(13, 24, 26, 0.3);
  transform: scale(0.8) translateY(20px);
  opacity: 0;
  transition: transform 0.4s ease, opacity 0.4s ease;
}
@media (max-width: 1599px) {
  .modal-container {
    max-width: 700px;
    margin: 0 30px;
    padding: 70px;
  }
}
@media (max-width: 1365px) {
  .modal-container {
    max-width: 600px;
    margin: 0 25px;
    padding: 60px;
  }
}
@media (max-width: 1023px) {
  .modal-container {
    max-width: 500px;
    margin: 0 20px;
    padding: 50px;
  }
}
@media (max-width: 767px) {
  .modal-container {
    max-width: none;
    margin: 0 15px;
    padding: 40px 30px;
    border-radius: 16px;
  }
}

.modal.is-active .modal-container {
  transform: scale(1) translateY(0);
  opacity: 1;
}

.modal-close {
  position: absolute;
  top: 40px;
  right: 40px;
  width: 48px;
  height: 48px;
  background: #F8F9FA;
  border: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.3s linear;
}
.modal-close img {
  width: 32px;
  height: 32px;
}
@media (max-width: 1599px) {
  .modal-close {
    top: 35px;
    right: 35px;
    width: 44px;
    height: 44px;
  }
  .modal-close img {
    width: 28px;
    height: 28px;
  }
}
@media (max-width: 1365px) {
  .modal-close {
    top: 30px;
    right: 30px;
    width: 40px;
    height: 40px;
  }
  .modal-close img {
    width: 24px;
    height: 24px;
  }
}
@media (max-width: 1023px) {
  .modal-close {
    top: 25px;
    right: 25px;
    width: 36px;
    height: 36px;
  }
  .modal-close img {
    width: 20px;
    height: 20px;
  }
}
@media (max-width: 767px) {
  .modal-close {
    top: 20px;
    right: 20px;
    width: 32px;
    height: 32px;
  }
  .modal-close img {
    width: 18px;
    height: 18px;
  }
}
@media (any-hover: hover) {
  .modal-close:hover {
    background: #E9ECEF;
  }
}

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

.modal-title {
  color: #0D181A;
  margin-bottom: 24px;
  text-align: center;
}
@media (max-width: 1599px) {
  .modal-title {
    margin-bottom: 20px;
  }
}
@media (max-width: 1365px) {
  .modal-title {
    margin-bottom: 18px;
  }
}
@media (max-width: 1023px) {
  .modal-title {
    margin-bottom: 16px;
  }
}
@media (max-width: 767px) {
  .modal-title {
    margin-bottom: 14px;
  }
}

.modal-subtitle {
  color: #0D181A;
  opacity: 0.7;
  margin-bottom: 48px;
  text-align: center;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 1599px) {
  .modal-subtitle {
    max-width: 450px;
    margin-bottom: 40px;
  }
}
@media (max-width: 1365px) {
  .modal-subtitle {
    max-width: 400px;
    margin-bottom: 35px;
  }
}
@media (max-width: 1023px) {
  .modal-subtitle {
    max-width: 350px;
    margin-bottom: 30px;
  }
}
@media (max-width: 767px) {
  .modal-subtitle {
    max-width: none;
    margin-bottom: 25px;
  }
}

.modal-form .btn {
  width: 100%;
}
.modal-form .btn span:nth-child(2) {
  flex-grow: 1;
}

.not-found {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .not-found {
    height: 100vh;
  }
}
@media (max-width: 768px) {
  .not-found {
    height: 100vh;
  }
}
@media (max-width: 480px) {
  .not-found {
    height: 100vh;
  }
}

.not-found-container {
  position: relative;
  width: 100%;
  height: 100%;
}

.not-found-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.not-found-bg-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.not-found-content {
  position: relative;
  z-index: 4;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 69px 20px 0;
}
@media (max-width: 1024px) {
  .not-found-content {
    padding: 50px 20px 0;
  }
}
@media (max-width: 768px) {
  .not-found-content {
    padding: 40px 20px 0;
  }
}
@media (max-width: 480px) {
  .not-found-content {
    padding: 30px 20px 0;
  }
}

.not-found-title {
  color: #009DA1;
  font-size: 40px;
  font-family: Helvetica, sans-serif;
  font-weight: 400;
  margin: 0 0 20px 0;
  white-space: nowrap;
}
@media (max-width: 1024px) {
  .not-found-title {
    font-size: 32px;
  }
}
@media (max-width: 768px) {
  .not-found-title {
    font-size: 24px;
    padding: 0 20px;
  }
}
@media (max-width: 480px) {
  .not-found-title {
    font-size: 20px;
  }
}

.not-found-description {
  width: 709px;
  max-width: 100%;
  color: #0D181A;
  font-size: 18px;
  font-family: Helvetica, sans-serif;
  font-weight: 400;
  line-height: 25.2px;
  margin: 0 0 40px 0;
}
@media (max-width: 1024px) {
  .not-found-description {
    width: 600px;
    font-size: 16px;
  }
}
@media (max-width: 768px) {
  .not-found-description {
    width: 90%;
    font-size: 14px;
    line-height: 20px;
    padding: 0 20px;
  }
}
@media (max-width: 480px) {
  .not-found-description {
    font-size: 12px;
    line-height: 18px;
  }
}

.not-found-button-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}

.not-found-button {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  padding: 4px 24px;
  background: #009DA1;
  border-radius: 60px;
  text-decoration: none;
  transition: background-color 0.3s ease;
}
.not-found-button:hover {
  background: rgb(0, 107.2670807453, 110);
}
@media (max-width: 768px) {
  .not-found-button {
    height: 48px;
    padding: 4px 20px;
  }
}
@media (max-width: 480px) {
  .not-found-button {
    height: 44px;
    padding: 4px 16px;
  }
}

.not-found-button-text {
  color: white;
  font-size: 16px;
  font-family: Helvetica, sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.96px;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .not-found-button-text {
    font-size: 14px;
    letter-spacing: 0.84px;
  }
}
@media (max-width: 480px) {
  .not-found-button-text {
    font-size: 12px;
    letter-spacing: 0.72px;
  }
}

.not-found-code {
  color: var(--Cyan-Blue, #009DA1);
  text-align: center;
  font-size: 312px;
  font-weight: 300;
  line-height: 110%;
  letter-spacing: 49.92px;
}
@media (max-width: 768px) {
  .not-found-code {
    font-size: 200px;
    letter-spacing: 32px;
  }
}
@media (max-width: 480px) {
  .not-found-code {
    font-size: 120px;
    letter-spacing: 19.2px;
  }
}

.object {
  padding-top: 78px;
}
@media (max-width: 1023px) {
  .object {
    padding-top: 80px;
  }
}

.object-inner {
  display: grid;
  grid-template-columns: 465px 1fr;
  align-items: flex-start;
  gap: 140px;
}
@media (max-width: 1599px) {
  .object-inner {
    gap: 100px;
  }
}
@media (max-width: 1365px) {
  .object-inner {
    grid-template-columns: 1fr 1fr;
    gap: 80px;
  }
}
@media (max-width: 1023px) {
  .object-inner {
    grid-template-columns: 1fr;
    gap: 60px;
  }
}
@media (max-width: 767px) {
  .object-inner {
    gap: 40px;
  }
}

.object-one {
  padding-top: 40px;
  position: sticky;
  top: 102px;
}
@media (max-width: 1599px) {
  .object-one {
    top: 90px;
  }
}
@media (max-width: 1023px) {
  .object-one {
    position: relative;
    top: 0;
    padding-top: 0;
  }
}

.object-back {
  display: flex;
  align-items: center;
  margin-bottom: 40px;
  width: fit-content;
  gap: 17px;
  font-weight: 400;
  color: var(--Filters_Dark-Graphite, #0D181A);
  transition: opacity 0.3s linear;
}
@media (max-width: 1599px) {
  .object-back {
    margin-bottom: 20px;
  }
}
@media (any-hover: hover) {
  .object-back:hover {
    opacity: 0.7;
  }
}
.object-back img {
  width: 39px;
  height: 24px;
}
@media (max-width: 1023px) {
  .object-back {
    margin-bottom: 0;
    gap: 15px;
  }
  .object-back img {
    width: 35px;
    height: 22px;
  }
}
@media (max-width: 767px) {
  .object-back {
    gap: 12px;
  }
  .object-back img {
    width: 32px;
    height: 20px;
  }
}

.object-divider {
  height: 1px;
  background-color: #D2DED2;
  margin-right: -140px;
  margin-left: calc(-1 * var(--container-left-offset, 0));
}
@media (max-width: 1599px) {
  .object-divider {
    margin-right: -100px;
  }
}
@media (max-width: 1365px) {
  .object-divider {
    margin-right: -80px;
  }
}
@media (max-width: 1023px) {
  .object-divider {
    margin-right: -20px;
    margin-left: -20px;
  }
}

.object-content {
  width: 100%;
  flex-direction: column;
  justify-content: flex-start;
  gap: 32px;
  display: inline-flex;
}
@media (max-width: 1599px) {
  .object-content {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .object-content {
    gap: 16px;
  }
}

.object-number {
  align-self: stretch;
  color: var(--Filters_Dark-Graphite, #0D181A);
  font-size: 64px;
  font-weight: 300;
  line-height: 110%;
  letter-spacing: -1.28px;
  text-transform: uppercase;
}
@media (max-width: 1599px) {
  .object-number {
    font-size: 56px;
    letter-spacing: -1.12px;
  }
}
@media (max-width: 1365px) {
  .object-number {
    font-size: 48px;
    letter-spacing: -0.96px;
  }
}
@media (max-width: 1023px) {
  .object-number {
    font-size: 40px;
    letter-spacing: -0.8px;
  }
}
@media (max-width: 767px) {
  .object-number {
    font-size: 32px;
    letter-spacing: -0.64px;
  }
}

.object-tags {
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
  display: inline-flex;
  flex-wrap: wrap;
}
@media (max-width: 1023px) {
  .object-tags {
    gap: 6px;
  }
}
@media (max-width: 767px) {
  .object-tags {
    gap: 4px;
    flex-wrap: wrap;
  }
}

.object-tag {
  padding: 10px 20px;
  border-radius: 60px;
  border: 2px solid rgba(0, 157, 161, 0.2);
  text-align: center;
  color: #0D181A;
  letter-spacing: 0.96px;
  font-weight: 400;
}
@media (max-width: 1023px) {
  .object-tag {
    padding: 8px 16px;
    letter-spacing: 0.8px;
  }
}
@media (max-width: 767px) {
  .object-tag {
    padding: 6px 12px;
    letter-spacing: 0.64px;
  }
}

.object-description {
  align-self: stretch;
  color: #0D181A;
  word-wrap: break-word;
}

.object-buttons {
  align-items: center;
  flex-wrap: wrap;
  display: inline-flex;
  gap: 8px;
}

.object-btn {
  padding: 10px 26px;
  border-radius: 60px;
  cursor: pointer;
  transition: all 0.3s ease;
  border: 2px solid var(--Cyan-Blue, #009DA1);
  color: var(--Filters_Dark-Graphite, #0D181A);
  text-align: center;
  font-weight: 400;
  letter-spacing: 0.96px;
  text-transform: uppercase;
}
@media (any-hover: hover) {
  .object-btn:hover {
    background-color: #009DA1;
    color: #FFF;
  }
}
.object-btn.is-active {
  background-color: #009DA1;
  color: #FFF;
}
@media (max-width: 1023px) {
  .object-btn {
    padding: 8px 20px;
  }
}

.object-two {
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin-right: calc(-1 * var(--container-right-offset, 0));
}
@media (max-width: 1023px) {
  .object-two {
    margin-right: 0;
    gap: 20px;
  }
}

.object-img {
  width: 100%;
}
.object-img img {
  object-fit: cover;
}

.object-content-text {
  color: #0D181A;
  line-height: 140%;
  word-wrap: break-word;
}
.object-content-text h1, .object-content-text h2, .object-content-text h3, .object-content-text h4, .object-content-text h5, .object-content-text h6 {
  margin-bottom: 20px;
  color: #0D181A;
  font-weight: 300;
}
@media (max-width: 767px) {
  .object-content-text h1, .object-content-text h2, .object-content-text h3, .object-content-text h4, .object-content-text h5, .object-content-text h6 {
    margin-bottom: 16px;
  }
}
.object-content-text h1 {
  font-size: 56px;
  line-height: 110%;
  letter-spacing: -1.12px;
  text-transform: uppercase;
}
@media (max-width: 1599px) {
  .object-content-text h1 {
    font-size: 48px;
    letter-spacing: -0.96px;
  }
}
@media (max-width: 1365px) {
  .object-content-text h1 {
    font-size: 40px;
    letter-spacing: -0.8px;
  }
}
@media (max-width: 1023px) {
  .object-content-text h1 {
    font-size: 32px;
    letter-spacing: -0.64px;
  }
}
@media (max-width: 767px) {
  .object-content-text h1 {
    font-size: 24px;
    letter-spacing: -0.48px;
  }
}
.object-content-text h2 {
  font-size: 40px;
  line-height: 110%;
}
@media (max-width: 1599px) {
  .object-content-text h2 {
    font-size: 36px;
  }
}
@media (max-width: 1365px) {
  .object-content-text h2 {
    font-size: 32px;
  }
}
@media (max-width: 1023px) {
  .object-content-text h2 {
    font-size: 28px;
  }
}
@media (max-width: 767px) {
  .object-content-text h2 {
    font-size: 20px;
  }
}
.object-content-text h3, .object-content-text h4, .object-content-text h5, .object-content-text h6 {
  font-size: 28px;
  line-height: 110%;
}
@media (max-width: 1365px) {
  .object-content-text h3, .object-content-text h4, .object-content-text h5, .object-content-text h6 {
    font-size: 24px;
  }
}
@media (max-width: 1023px) {
  .object-content-text h3, .object-content-text h4, .object-content-text h5, .object-content-text h6 {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .object-content-text h3, .object-content-text h4, .object-content-text h5, .object-content-text h6 {
    font-size: 18px;
  }
}
.object-content-text p {
  font-size: 20px;
  line-height: 140%;
  margin-bottom: 20px;
}
@media (max-width: 1365px) {
  .object-content-text p {
    font-size: 18px;
  }
}
@media (max-width: 1023px) {
  .object-content-text p {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .object-content-text p {
    margin-bottom: 16px;
  }
}
.object-content-text ul, .object-content-text ol {
  margin-bottom: 20px;
  padding-left: 20px;
}
@media (max-width: 767px) {
  .object-content-text ul, .object-content-text ol {
    margin-bottom: 16px;
    padding-left: 16px;
  }
}
.object-content-text ul li, .object-content-text ol li {
  font-size: 20px;
  line-height: 140%;
  margin-bottom: 8px;
  list-style-type: disc;
}
@media (max-width: 1365px) {
  .object-content-text ul li, .object-content-text ol li {
    font-size: 18px;
  }
}
@media (max-width: 1023px) {
  .object-content-text ul li, .object-content-text ol li {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .object-content-text ul li, .object-content-text ol li {
    margin-bottom: 6px;
  }
}
.object-content-text img {
  max-width: 100%;
  height: auto;
  margin: 20px 0;
}
@media (max-width: 767px) {
  .object-content-text img {
    margin: 16px 0;
  }
}
.object-content-text a {
  color: #009DA1;
  text-decoration: underline;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .object-content-text a:hover {
    opacity: 0.7;
  }
}

.propositions {
  overflow: hidden;
}

.propositions-inner {
  display: flex;
  flex-direction: column;
  gap: 80px;
}
@media (max-width: 1599px) {
  .propositions-inner {
    gap: 70px;
  }
}
@media (max-width: 1365px) {
  .propositions-inner {
    gap: 60px;
  }
}
@media (max-width: 1023px) {
  .propositions-inner {
    gap: 50px;
  }
}
@media (max-width: 767px) {
  .propositions-inner {
    gap: 40px;
  }
}

.propositions-title {
  text-transform: uppercase;
  text-align: center;
}

.propositions-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px 20px;
  position: relative;
}
.propositions-grid::before {
  content: "";
  opacity: 0.2;
  background: #0D181A;
  height: 1px;
  width: 100vw;
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 767px) {
  .propositions-grid::before {
    top: -20px;
  }
}
.propositions-grid::after {
  content: "";
  opacity: 0.2;
  background: #0D181A;
  height: 1px;
  width: 100vw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (max-width: 1599px) {
  .propositions-grid {
    gap: 35px 18px;
  }
}
@media (max-width: 1365px) {
  .propositions-grid {
    gap: 30px 16px;
  }
}
@media (max-width: 1023px) {
  .propositions-grid {
    gap: 25px 14px;
  }
}
@media (max-width: 767px) {
  .propositions-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

.proposition-card {
  width: 100%;
  height: 564px;
  position: relative;
}
@media (max-width: 1599px) {
  .proposition-card {
    height: 480px;
  }
}
@media (max-width: 1365px) {
  .proposition-card {
    height: 420px;
  }
}
@media (max-width: 1023px) {
  .proposition-card {
    height: 360px;
  }
}
@media (max-width: 767px) {
  .proposition-card {
    height: 300px;
  }
}
@media (any-hover: hover) {
  .proposition-card:hover .proposition-img img {
    transform: scale(1.1);
  }
  .proposition-card:hover .proposition-btn img {
    transform: translateX(0);
  }
}

.proposition-img {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}
.proposition-img::before {
  content: "";
  background: linear-gradient(180deg, rgba(13, 24, 26, 0) 39.01%, rgba(13, 24, 26, 0.7) 87.59%);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.proposition-img img {
  transition: transform 0.6s ease-in-out;
  object-fit: cover;
}

.proposition-content {
  position: absolute;
  bottom: 36px;
  left: 48px;
  right: 48px;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  color: var(--Total-White, #FFF);
}
@media (max-width: 1599px) {
  .proposition-content {
    bottom: 30px;
    left: 40px;
    right: 40px;
  }
}
@media (max-width: 1365px) {
  .proposition-content {
    bottom: 25px;
    left: 35px;
    right: 35px;
  }
}
@media (max-width: 1023px) {
  .proposition-content {
    bottom: 20px;
    left: 30px;
    right: 30px;
  }
}
@media (max-width: 767px) {
  .proposition-content {
    bottom: 15px;
    left: 25px;
    right: 25px;
  }
}

.proposition-btn {
  width: 90px;
  height: 56px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  overflow: hidden;
}
@media (max-width: 1599px) {
  .proposition-btn {
    width: 80px;
    height: 50px;
    gap: 6px;
  }
}
@media (max-width: 1365px) {
  .proposition-btn {
    width: 70px;
    height: 44px;
    gap: 5px;
  }
}
@media (max-width: 1023px) {
  .proposition-btn {
    width: 60px;
    height: 38px;
    gap: 4px;
  }
}
@media (max-width: 767px) {
  .proposition-btn {
    width: 50px;
    height: 32px;
    gap: 3px;
  }
}
.proposition-btn img {
  transform: translateX(calc(-100% - 8px));
  transition: transform 0.6s ease-in-out;
}
@media (max-width: 1599px) {
  .proposition-btn img {
    transform: translateX(calc(-100% - 6px));
  }
}
@media (max-width: 1365px) {
  .proposition-btn img {
    transform: translateX(calc(-100% - 5px));
  }
}
@media (max-width: 1023px) {
  .proposition-btn img {
    transform: translateX(calc(-100% - 4px));
  }
}
@media (max-width: 767px) {
  .proposition-btn img {
    transform: translateX(calc(-100% - 3px));
  }
}

.service-inner {
  position: relative;
  padding-top: 160px;
}
@media (max-width: 1599px) {
  .service-inner {
    padding-top: 120px;
  }
}
@media (max-width: 1365px) {
  .service-inner {
    padding-top: 100px;
  }
}
@media (max-width: 1023px) {
  .service-inner {
    padding-top: 80px;
  }
}
@media (max-width: 767px) {
  .service-inner {
    padding-top: 60px;
  }
}

.service-bg {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  max-width: 1214px;
  width: 100%;
  height: 530px;
  opacity: 0.03;
}
@media (max-width: 1599px) {
  .service-bg {
    height: 420px;
  }
}
@media (max-width: 1365px) {
  .service-bg {
    height: 340px;
  }
}
@media (max-width: 1023px) {
  .service-bg {
    height: 220px;
  }
}
@media (max-width: 767px) {
  .service-bg {
    height: 120px;
  }
}
.service-bg img {
  width: 100%;
  height: auto;
  object-position: top;
}

.service-wrapper {
  display: grid;
  grid-template-columns: 588px 1fr;
  gap: 140px;
  position: relative;
  z-index: 1;
}
@media (max-width: 1599px) {
  .service-wrapper {
    gap: 80px;
  }
}
@media (max-width: 1365px) {
  .service-wrapper {
    grid-template-columns: 1fr 1fr;
    gap: 48px;
  }
}
@media (max-width: 1023px) {
  .service-wrapper {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
@media (max-width: 767px) {
  .service-wrapper {
    gap: 20px;
  }
}
.service-wrapper::before {
  content: "";
  height: 1px;
  opacity: 0.2;
  background: #0D181A;
  position: absolute;
  top: 20%;
  left: calc(-1 * var(--container-left-offset));
  right: calc(-1 * var(--container-right-offset));
  z-index: -1;
}
@media (max-width: 1023px) {
  .service-wrapper::before {
    display: none;
  }
}

.service-title {
  color: #0D181A;
  text-transform: uppercase;
  margin: 0;
}
@media (max-width: 1365px) {
  .service-title {
    margin-bottom: 20px;
  }
}

.service-img {
  margin-top: 65px;
}
@media (max-width: 1599px) {
  .service-img {
    margin-top: 40px;
  }
}
@media (max-width: 1365px) {
  .service-img {
    margin-top: 24px;
  }
}
@media (max-width: 1023px) {
  .service-img {
    margin-top: 16px;
  }
}
@media (max-width: 767px) {
  .service-img {
    margin-top: 8px;
  }
}
.service-img img {
  object-fit: cover;
}

.service-content {
  display: flex;
  flex-direction: column;
  gap: 128px;
}
@media (max-width: 1599px) {
  .service-content {
    gap: 80px;
  }
}
@media (max-width: 1365px) {
  .service-content {
    gap: 48px;
  }
}
@media (max-width: 1023px) {
  .service-content {
    gap: 32px;
    order: -1;
  }
}
@media (max-width: 767px) {
  .service-content {
    gap: 20px;
  }
}

.service-subtitle {
  color: #0D181A;
  max-width: 710px;
  margin: 0;
}
@media (max-width: 1599px) {
  .service-subtitle {
    max-width: 600px;
  }
}
@media (max-width: 1365px) {
  .service-subtitle {
    max-width: 500px;
  }
}
@media (max-width: 1023px) {
  .service-subtitle {
    max-width: 100%;
  }
}

.service-form {
  max-width: 588px;
}
@media (max-width: 1599px) {
  .service-form {
    max-width: 480px;
  }
}
@media (max-width: 1365px) {
  .service-form {
    max-width: 100%;
  }
}

.service-question {
  color: #0D181A;
  text-transform: uppercase;
  margin-bottom: 32px;
}
@media (max-width: 1599px) {
  .service-question {
    margin-bottom: 28px;
  }
}
@media (max-width: 1365px) {
  .service-question {
    margin-bottom: 20px;
  }
}
@media (max-width: 1023px) {
  .service-question {
    margin-bottom: 16px;
  }
}
@media (max-width: 767px) {
  .service-question {
    margin-bottom: 12px;
  }
}

.service-description {
  color: #0D181A;
  margin-bottom: 24px;
}
@media (max-width: 1599px) {
  .service-description {
    margin-bottom: 20px;
  }
}
@media (max-width: 1365px) {
  .service-description {
    margin-bottom: 16px;
  }
}
@media (max-width: 1023px) {
  .service-description {
    margin-bottom: 12px;
  }
}
@media (max-width: 767px) {
  .service-description {
    margin-bottom: 8px;
  }
}
