@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans/DMSansRegular.eot");
  src: local("DMSansRegular"), local("DMSansRegular"), url("../fonts/DMSans/DMSansRegular.eot?#iefix") format("embedded-opentype"), url("../fonts/DMSans/DMSansRegular.woff") format("woff"), url("../fonts/DMSans/DMSansRegular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans/DMSansMedium.eot");
  src: local("DMSansMedium"), local("DMSansMedium"), url("../fonts/DMSans/DMSansMedium.eot?#iefix") format("embedded-opentype"), url("../fonts/DMSans/DMSansMedium.woff") format("woff"), url("../fonts/DMSans/DMSansMedium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans/DMSansMediumItalic.eot");
  src: local("DMSansMediumItalic"), local("DMSansMediumItalic"), url("../fonts/DMSans/DMSansMediumItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/DMSans/DMSansMediumItalic.woff") format("woff"), url("../fonts/DMSans/DMSansMediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans/DMSansBold.eot");
  src: local("DMSansBold"), local("DMSansBold"), url("../fonts/DMSans/DMSansBold.eot?#iefix") format("embedded-opentype"), url("../fonts/DMSans/DMSansBold.woff") format("woff"), url("../fonts/DMSans/DMSansBold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "DM Sans";
  src: url("../fonts/DMSans/DMSansBoldItalic.eot");
  src: local("DMSansBoldItalic"), local("DMSansBoldItalic"), url("../fonts/DMSans/DMSansBoldItalic.eot?#iefix") format("embedded-opentype"), url("../fonts/DMSans/DMSansBoldItalic.woff") format("woff"), url("../fonts/DMSans/DMSansBoldItalic.ttf") format("truetype");
  font-weight: 700;
  font-style: italic;
}
* {
  margin: 0;
  padding: 0;
  border: 0;
  outline: none;
  box-sizing: border-box;
  vertical-align: baseline;
  background: none;
  font-family: "DM Sans", sans-serif;
}

:root {
  --global-transition: .25s ease all;
  --global-transition-longer: .25s ease all;
  --global-transition-linear: .25s linear all;
  --black: #000;
  --white: #FFF;
  --grey: #737373;
  --light-grey: #F6F6F6;
  --pink: #FF7AFF;
  --medium-purple: #B46AEC;
  --darkest-purple: #45236D;
  --purple-fills: #FCF5FF;
  --purple-strokes: #DED4E9;
  --purple-strokes: #DED4E9;
  --brand-gradient: linear-gradient(90deg, #B46AEC 0%, #FF7AFF 100%);
}

html {
  font-family: "DM Sans", sans-serif;
  font-size: clamp(0.95238vw, 0.95238vw, 16px);
  font-weight: 400;
  line-height: 1.2;
}
@media screen and (min-width: 1680px) {
  html {
    font-size: 16px;
  }
}
@media screen and (max-width: 900px) {
  html {
    font-size: 16px;
  }
}

body {
  background: #fff;
  position: relative;
  overflow-x: hidden;
}
body._no_scroll {
  overflow: hidden;
}

section {
  /* overflow-x: hidden; */
  overflow: hidden;
  position: relative;
}

img, svg {
  user-select: none;
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
  transition: var(--global-transition);
}

[data-popup] {
  cursor: pointer;
}

.bg_img img, .bg_img svg, .bg_img video, .bg_img iframe, .bg_img figure {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

@media screen and (min-width: 901px) {
  ._mob_only {
    display: none !important;
  }
}
@media screen and (max-width: 900px) {
  ._mob_hide {
    display: none !important;
  }
}
.container {
  max-width: 1680px;
  margin-inline: auto;
  padding: 0 20px;
}
.container__big {
  padding: 0 5rem;
}
@media screen and (max-width: 900px) {
  .container {
    padding: 0 16px;
  }
  .container__big {
    padding: 0 16px;
  }
}

.section {
  user-select: none;
  /* padding: 2.5rem 0; */
  padding: clamp(32px, 2.5rem, 2.5rem) 0;
}
.section_title {
  margin-bottom: 1.25rem;
}
.section_title._center {
  text-align: center;
}
.section_subtitle {
  text-align: center;
  line-height: 1.4;
  margin-bottom: 1.25rem;
}
@media screen and (max-width: 900px) {
  .section._mob_pt0 {
    padding-top: 0;
  }
}

h1, .h1 {
  /* Desk/11-Display-bold */
  font-size: 3rem;
  line-height: 1.1;
  font-weight: 700;
}
@media screen and (max-width: 900px) {
  h1, .h1 {
    font-size: 32px;
  }
}

h2, .h2 {
  /* Desk/10-Header-L-bold */
  font-size: 2.25rem;
  line-height: 1.1;
  font-weight: 700;
}
@media screen and (max-width: 900px) {
  h2, .h2 {
    font-size: 28px;
  }
}

h3, .h3 {
  /* Desk/9-Header-M-bold */
  font-size: 1.75rem;
  line-height: 1.15;
  font-weight: 700;
}
@media screen and (max-width: 900px) {
  h3, .h3 {
    font-size: 24px;
  }
}

h4, .h4 {
  /* Desk/8-Header-S-medium */
  font-size: 1.5rem;
  line-height: 1.3;
  font-weight: 500;
}
@media screen and (max-width: 900px) {
  h4, .h4 {
    font-size: 20px;
  }
}

.text-l {
  /* Desk/7-Subheader-L-regular */
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.2;
}
@media screen and (max-width: 900px) {
  .text-l {
    font-size: 18px;
  }
}

.text-m {
  /* Desk/6-Body-L-regular */
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
}
@media screen and (max-width: 900px) {
  .text-m {
    font-size: 16px;
    line-height: 1.5;
  }
}

.text-r {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3;
}
@media screen and (max-width: 900px) {
  .text-r {
    font-size: 16px;
  }
}

.text-s {
  /* Desk/1-XSmall-regular */
  font-size: 0.875rem;
  font-weight: 400;
}
@media screen and (max-width: 900px) {
  .text-s {
    font-size: 12px;
    line-height: 1.3;
  }
}

.btn {
  cursor: pointer;
  border-radius: 200px;
  background-color: var(--darkest-purple);
  color: var(--white);
  transition: var(--global-transition);
  font-size: 1.125rem;
  font-weight: 500;
  text-align: center;
  padding: 0.625rem 1.25rem;
}
@media screen and (min-width: 901px) {
  .btn:hover {
    background-color: var(--medium-purple);
  }
}
@media screen and (max-width: 900px) {
  .btn {
    font-size: 16px;
    padding: 12px 20px;
  }
}

@media screen and (min-width: 901px) {
  .price_card .btn {
    position: relative;
  }
  .price_card .btn::after {
    content: "";
    position: absolute;
    top: calc(50% - 0.625rem);
    right: 1.25rem;
    width: 1.25rem;
    height: 1.25rem;
    background: url("../img/icons/arrow-right.svg") center center/contain no-repeat;
    transition: var(--global-transition);
    opacity: 0;
    visibility: hidden;
    transform: translateX(-1.25rem);
  }
  .price_card .btn:hover {
    background-color: var(--darkest-purple);
  }
  .price_card .btn:hover::after {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
  }
}
.btn_gradient {
  cursor: pointer;
  width: max-content;
  max-width: 100%;
  border-radius: 10px;
  background: var(--brand-gradient);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
  padding: 0.625rem 1.25rem;
}

.show_more {
  cursor: pointer;
  width: max-content;
  transition: var(--global-transition);
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-size: 0.875rem;
  line-height: 1;
}
.show_more svg {
  display: block;
  color: var(--medium-purple);
  transition: var(--global-transition);
  width: 0.75rem;
  height: 0.75rem;
}
.show_more._active svg {
  transform: scale(-1);
}
@media screen and (min-width: 901px) {
  .show_more:hover {
    color: var(--medium-purple);
  }
}

.swiper_nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  margin-top: 1.25rem;
}

.socials {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
.socials a {
  display: block;
}
.socials a img, .socials a svg {
  display: block;
  width: 1.5rem;
}

.go-to-up {
  cursor: pointer;
  display: none;
  position: fixed;
  z-index: 7;
  right: 12px;
  bottom: 12px;
  width: 36px;
  height: 36px;
  font-size: 18px;
  font-weight: 500;
  backdrop-filter: blur(7px);
  border: 2px solid var(--medium-purple);
  color: var(--medium-purple);
  border-radius: 9px;
  background-color: var(--white);
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2);
  transition: var(--global-transition);
}
.go-to-up:hover, .go-to-up:focus {
  background: var(--medium-purple);
  color: var(--white);
}
.go-to-up div {
  position: relative;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

/**
 * Swiper 11.0.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: November 22, 2023
 */
/* FONT_START */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}
/* FONT_END */
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button {
  cursor: pointer;
  transition: var(--global-transition);
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.swiper-button svg {
  display: block;
  color: var(--medium-purple);
  width: 1.5rem;
  height: 1.5rem;
  transition: var(--global-transition);
}
.swiper-button-prev svg {
  transition: var(--global-transition);
  transform: scaleX(-1);
}
.swiper-button-disabled {
  pointer-events: none;
  cursor: not-allowed;
  opacity: 0.2;
}

.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}

.swiper-button-lock {
  display: none;
}

:root {
  /*
  --swiper-scrollbar-border-radius: 10px;
  --swiper-scrollbar-top: auto;
  --swiper-scrollbar-bottom: 4px;
  --swiper-scrollbar-left: auto;
  --swiper-scrollbar-right: 4px;
  --swiper-scrollbar-sides-offset: 1%;
  --swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
  --swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
  --swiper-scrollbar-size: 4px;
  */
}

.swiper-scrollbar {
  touch-action: none;
  position: relative;
  border-radius: 8px;
  background: var(--purple-fills);
  height: 8px;
  flex-grow: 1;
}

.swiper-vertical > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-vertical {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--medium-purple);
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

/* Zoom container styles start */
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

/* Zoom container styles end */
.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

/* a11y */
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

/* Cube slide shadows start */
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* Cube slide shadows end */
.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

/* Flip slide shadows start */
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* Flip slide shadows end */
.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}

.swiper-pagination {
  display: flex;
  justify-content: center;
  gap: 1.25rem;
}
.swiper-pagination-lock {
  display: none;
}
.swiper-pagination-bullet {
  cursor: pointer;
  border-radius: 50%;
  border: 1px solid var(--medium-purple);
  background: transparent;
  width: 12px;
  height: 12px;
  opacity: 0.4;
  transition: var(--global-transition);
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--medium-purple);
}

@keyframes pulsate {
  0%, to {
    opacity: 1;
  }
  50% {
    opacity: 0.2;
  }
}
#spotlight {
  position: fixed;
  top: -1px;
  bottom: -1px;
  width: 100%;
  z-index: 99999;
  color: #fff;
  background-color: #fff;
  opacity: 0;
  overflow: hidden;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition: opacity 0.2s ease-out;
  font-size: 16px;
  font-weight: 200;
  contain: strict;
  touch-action: none;
  pointer-events: none;
}

#spotlight.show {
  opacity: 1;
  transition: none;
  pointer-events: auto;
}

#spotlight.white {
  color: #212529;
  background-color: #fff;
}

#spotlight.white .spl-next,
#spotlight.white .spl-page ~ *,
#spotlight.white .spl-prev,
#spotlight.white .spl-spinner {
  filter: invert(1);
}

#spotlight .spl-progress {
  background-color: rgba(0, 0, 0, 0.35);
}

#spotlight.white .spl-footer,
#spotlight.white .spl-header {
  background-color: rgba(255, 255, 255, 0.65);
}

#spotlight.white .spl-button {
  background: #212529;
  color: #fff;
}

.spl-footer,
.spl-header {
  background-color: rgba(0, 0, 0, 0.75);
}

#spotlight .contain,
#spotlight .cover {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

#spotlight .contain {
  object-fit: contain;
}

#spotlight .autofit {
  object-fit: none;
  width: auto;
  height: auto;
  max-height: none;
  max-width: none;
  transition: none;
}

.spl-scene,
.spl-spinner,
.spl-track {
  width: 100%;
  height: 100%;
  position: absolute;
}

.spl-track {
  contain: strict;
}

.spl-spinner {
  background-position: center;
  background-repeat: no-repeat;
  background-size: 42px;
  opacity: 0;
}

.spl-spinner.spin {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzgiIGhlaWdodD0iMzgiIHZpZXdCb3g9IjAgMCAzOCAzOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBzdHJva2U9IiNmZmYiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMSAxKSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2Utb3BhY2l0eT0iLjY1Ij48Y2lyY2xlIHN0cm9rZS1vcGFjaXR5PSIuMTUiIGN4PSIxOCIgY3k9IjE4IiByPSIxOCIvPjxwYXRoIGQ9Ik0zNiAxOGMwLTkuOTQtOC4wNi0xOC0xOC0xOCI+PGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIiB0eXBlPSJyb3RhdGUiIGZyb209IjAgMTggMTgiIHRvPSIzNjAgMTggMTgiIGR1cj0iMXMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIi8+PC9wYXRoPjwvZz48L2c+PC9zdmc+);
  transition: opacity 0.2s linear 0.25s;
  opacity: 1;
}

.spl-spinner.error {
  background-image: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjMyIiB3aWR0aD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMTYsMUExNSwxNSwwLDEsMCwzMSwxNiwxNSwxNSwwLDAsMCwxNiwxWm0wLDJhMTMsMTMsMCwwLDEsOC40NSwzLjE0TDYuMTQsMjQuNDVBMTMsMTMsMCwwLDEsMTYsM1ptMCwyNmExMywxMywwLDAsMS04LjQ1LTMuMTRMMjUuODYsNy41NUExMywxMywwLDAsMSwxNiwyOVoiIGlkPSJiYW5fc2lnbl9jcm9zc2VkX2NpcmNsZSIvPjwvc3ZnPg==);
  background-size: 128px;
  transition: none;
  opacity: 0.5;
}

.spl-scene {
  transition: transform 0.65s cubic-bezier(0.1, 1, 0.1, 1);
  contain: layout size;
  will-change: transform;
}

.spl-pane > * {
  position: absolute;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  left: 50%;
  top: 50%;
  margin: 0;
  padding: 0;
  border: 0;
  transform: translate(-50%, -50%) scale(1);
  transition: transform 0.65s cubic-bezier(0.3, 1, 0.3, 1), opacity 0.65s ease;
  contain: layout style;
  will-change: transform, opacity;
  visibility: hidden;
}

.spl-header,
.spl-pane,
.spl-progress {
  position: absolute;
  top: 0;
}

.spl-pane {
  width: 100%;
  height: 100%;
  transition: transform 0.65s cubic-bezier(0.3, 1, 0.3, 1);
  contain: layout size;
  will-change: transform, contents;
}

.spl-header {
  width: 100%;
  height: 50px;
  text-align: right;
  transform: translateY(-100px);
  transition: transform 0.35s ease;
  overflow: hidden;
  will-change: transform;
}

#spotlight.menu .spl-footer,
#spotlight.menu .spl-header,
.spl-footer:hover,
.spl-header:hover {
  transform: translateY(0);
}

.spl-header div {
  display: inline-block;
  vertical-align: middle;
  white-space: nowrap;
  width: 50px;
  height: 50px;
  opacity: 0.5;
}

.spl-progress {
  width: 100%;
  height: 3px;
  background-color: rgba(255, 255, 255, 0.45);
  transform: translateX(-100%);
  transition: transform linear;
}

.spl-footer,
.spl-next,
.spl-prev {
  position: absolute;
  transition: transform 0.35s ease;
  will-change: transform;
}

.spl-footer {
  left: 0;
  right: 0;
  bottom: 0;
  line-height: 20px;
  padding: 20px 20px 0;
  padding-bottom: env(safe-area-inset-bottom, 0);
  text-align: left;
  font-size: 15px;
  font-weight: 400;
  transform: translateY(100%);
}

.spl-title {
  font-size: 22px;
}

.spl-button,
.spl-description,
.spl-title {
  margin-bottom: 20px;
}

.spl-button {
  display: inline-block;
  background: #fff;
  color: #000;
  border-radius: 5px;
  padding: 10px 20px;
  cursor: pointer;
}

.spl-next,
.spl-page ~ *,
.spl-prev {
  background-position: center;
  background-repeat: no-repeat;
}

.spl-page {
  float: left;
  width: auto;
  line-height: 50px;
}

.spl-page ~ * {
  background-size: 21px;
  float: right;
}

.spl-fullscreen {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+PHN2ZyBmaWxsPSJub25lIiBoZWlnaHQ9IjI0IiBzdHJva2U9IiNmZmYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyLjUiIHZpZXdCb3g9Ii0xIC0xIDI2IDI2IiB3aWR0aD0iMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTggM0g1YTIgMiAwIDAgMC0yIDJ2M20xOCAwVjVhMiAyIDAgMCAwLTItMmgtM20wIDE4aDNhMiAyIDAgMCAwIDItMnYtM00zIDE2djNhMiAyIDAgMCAwIDIgMmgzIi8+PC9zdmc+);
}

.spl-fullscreen.on {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+PHN2ZyBmaWxsPSJub25lIiBoZWlnaHQ9IjI0IiBzdHJva2U9IiNmZmYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyLjUiIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik04IDN2M2EyIDIgMCAwIDEtMiAySDNtMTggMGgtM2EyIDIgMCAwIDEtMi0yVjNtMCAxOHYtM2EyIDIgMCAwIDEgMi0yaDNNMyAxNmgzYTIgMiAwIDAgMSAyIDJ2MyIvPjwvc3ZnPg==);
}

.spl-autofit {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+PHN2ZyBoZWlnaHQ9Ijk2cHgiIHZpZXdCb3g9IjAgMCA5NiA5NiIgd2lkdGg9Ijk2cHgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggdHJhbnNmb3JtPSJyb3RhdGUoOTAgNTAgNTApIiBmaWxsPSIjZmZmIiBkPSJNNzEuMzExLDgwQzY5LjY3LDg0LjY2LDY1LjIzLDg4LDYwLDg4SDIwYy02LjYzLDAtMTItNS4zNy0xMi0xMlYzNmMwLTUuMjMsMy4zNC05LjY3LDgtMTEuMzExVjc2YzAsMi4yMSwxLjc5LDQsNCw0SDcxLjMxMSAgeiIvPjxwYXRoIHRyYW5zZm9ybT0icm90YXRlKDkwIDUwIDUwKSIgZmlsbD0iI2ZmZiIgZD0iTTc2LDhIMzZjLTYuNjMsMC0xMiw1LjM3LTEyLDEydjQwYzAsNi42Myw1LjM3LDEyLDEyLDEyaDQwYzYuNjMsMCwxMi01LjM3LDEyLTEyVjIwQzg4LDEzLjM3LDgyLjYzLDgsNzYsOHogTTgwLDYwICBjMCwyLjIxLTEuNzksNC00LDRIMzZjLTIuMjEsMC00LTEuNzktNC00VjIwYzAtMi4yMSwxLjc5LTQsNC00aDQwYzIuMjEsMCw0LDEuNzksNCw0VjYweiIvPjwvc3ZnPg==);
}

.spl-zoom-in,
.spl-zoom-out {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+PHN2ZyBmaWxsPSJub25lIiBoZWlnaHQ9IjI0IiBzdHJva2U9IiNmZmYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSIxMSIgY3k9IjExIiByPSI4Ii8+PGxpbmUgeDE9IjIxIiB4Mj0iMTYuNjUiIHkxPSIyMSIgeTI9IjE2LjY1Ii8+PGxpbmUgeDE9IjgiIHgyPSIxNCIgeTE9IjExIiB5Mj0iMTEiLz48L3N2Zz4=);
  background-size: 22px;
}

.spl-zoom-in {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+PHN2ZyBmaWxsPSJub25lIiBoZWlnaHQ9IjI0IiBzdHJva2U9IiNmZmYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSIxMSIgY3k9IjExIiByPSI4Ii8+PGxpbmUgeDE9IjIxIiB4Mj0iMTYuNjUiIHkxPSIyMSIgeTI9IjE2LjY1Ii8+PGxpbmUgeDE9IjExIiB4Mj0iMTEiIHkxPSI4IiB5Mj0iMTQiLz48bGluZSB4MT0iOCIgeDI9IjE0IiB5MT0iMTEiIHkyPSIxMSIvPjwvc3ZnPg==);
}

.spl-download {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/PjxzdmcgaGVpZ2h0PSIxNDEuNzMycHgiIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDE0MS43MzIgMTQxLjczMiIgd2lkdGg9IjE0MS43MzJweCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjZmZmIj48cGF0aCBkPSJNMTIwLjY3NCwxMjUuMTM4SDIwLjc5M3YxNi41OTRoOTkuODgxVjEyNS4xMzh6IE0xMTkuMDE5LDU4Ljc3NmMtMi41NjEtMi41NjItNi43MTYtMi41NjItOS4yNzUsMEw3Ny4yMSw5MS4zMTJWNi41NjIgICBDNzcuMjEsMi45MzYsNzQuMjY5LDAsNzAuNjQ4LDBjLTMuNjI0LDAtNi41NiwyLjkzNy02LjU2LDYuNTYzdjg0Ljc1TDMxLjk5Miw1OS4yMThjLTIuNTYyLTIuNTY0LTYuNzE1LTIuNTY0LTkuMjc3LDAgICBjLTIuNTY1LDIuNTYyLTIuNTY1LDYuNzE2LDAsOS4yNzlsNDMuMjk0LDQzLjI5M2MwLjE1LDAuMTU0LDAuMzE0LDAuMjk5LDAuNDgxLDAuNDM4YzAuMDc2LDAuMDYyLDAuMTU1LDAuMTEzLDAuMjM0LDAuMTc2ICAgYzAuMDk0LDAuMDY1LDAuMTg2LDAuMTQyLDAuMjc5LDAuMjA2YzAuMDk3LDAuMDYzLDAuMTkyLDAuMTE0LDAuMjg2LDAuMTc0YzAuMDg4LDAuMDU0LDAuMTc0LDAuMTA1LDAuMjY1LDAuMTUzICAgYzAuMSwwLjA1NiwwLjE5OSwwLjEsMC4yOTgsMC4xNDdjMC4wOTcsMC4wNDUsMC4xOSwwLjA5MSwwLjI4MywwLjEzMmMwLjA5OCwwLjA0LDAuMTk2LDAuMDcyLDAuMjk1LDAuMTA1ICAgYzAuMTA0LDAuMDM4LDAuMjA3LDAuMDc4LDAuMzEyLDAuMTA5YzAuMTAxLDAuMDMsMC4xOTcsMC4wNTIsMC4yOTcsMC4wNzdjMC4xMDgsMC4wMjMsMC4yMTQsMC4wNTgsMC4zMjQsMC4wNzggICBjMC4xMTUsMC4wMjEsMC4yMzEsMC4wMzMsMC4zNDYsMC4wNTRjMC4wOTcsMC4wMTUsMC4xOTIsMC4wMzIsMC4yODksMC4wNDJjMC40MywwLjA0MiwwLjg2NSwwLjA0MiwxLjI5NSwwICAgYzAuMS0wLjAxLDAuMTkxLTAuMDI3LDAuMjg5LTAuMDQyYzAuMTE0LTAuMDIxLDAuMjMzLTAuMDI5LDAuMzQ0LTAuMDU0YzAuMTA5LTAuMDIxLDAuMjE3LTAuMDU1LDAuMzI0LTAuMDc4ICAgYzAuMTAyLTAuMDI1LDAuMTk5LTAuMDQ3LDAuMjk5LTAuMDc3YzAuMTA1LTAuMDMxLDAuMjA3LTAuMDcxLDAuMzEyLTAuMTA5YzAuMTAyLTAuMDMsMC4xOTUtMC4wNjIsMC4yOTUtMC4xMDUgICBjMC4wOTYtMC4wNDEsMC4xOTEtMC4wODcsMC4yODMtMC4xMzJjMC4xLTAuMDQ4LDAuMTk5LTAuMDkyLDAuMjk3LTAuMTQ3YzAuMDkxLTAuMDQ4LDAuMTc3LTAuMTA0LDAuMjY0LTAuMTUzICAgYzAuMDk4LTAuMDYsMC4xOTMtMC4xMSwwLjI4Ny0wLjE3NGMwLjA5Ni0wLjA2NCwwLjE4OS0wLjE0MSwwLjI4MS0wLjIwNmMwLjA3Ni0wLjA2MiwwLjE1Ni0wLjExMywwLjIzMy0wLjE3NiAgIGMwLjI0OS0wLjIwNCwwLjQ3OS0wLjQzNywwLjY5NC0wLjY3YzAuMDc2LTAuMDY3LDAuMTU0LTAuMTMxLDAuMjI5LTAuMjAzbDQzLjI5NC00My4yOTYgICBDMTIxLjU4MSw2NS40OTEsMTIxLjU4MSw2MS4zMzcsMTE5LjAxOSw1OC43NzYiLz48L2c+PC9zdmc+);
  background-size: 20px;
}

.spl-theme {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+PHN2ZyBoZWlnaHQ9IjI0cHgiIHZlcnNpb249IjEuMiIgdmlld0JveD0iMiAyIDIwIDIwIiB3aWR0aD0iMjRweCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjZmZmIj48cGF0aCBkPSJNMTIsNGMtNC40MTgsMC04LDMuNTgyLTgsOHMzLjU4Miw4LDgsOHM4LTMuNTgyLDgtOFMxNi40MTgsNCwxMiw0eiBNMTIsMThjLTMuMzE0LDAtNi0yLjY4Ni02LTZzMi42ODYtNiw2LTZzNiwyLjY4Niw2LDYgUzE1LjMxNCwxOCwxMiwxOHoiLz48cGF0aCBkPSJNMTIsN3YxMGMyLjc1NywwLDUtMi4yNDMsNS01UzE0Ljc1Nyw3LDEyLDd6Ii8+PC9nPjwvc3ZnPg==);
}

.spl-play {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+PHN2ZyBmaWxsPSJub25lIiBoZWlnaHQ9IjI0IiBzdHJva2U9IiNmZmYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIiB2aWV3Qm94PSItMC41IC0wLjUgMjUgMjUiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIvPjxwb2x5Z29uIGZpbGw9IiNmZmYiIHBvaW50cz0iMTAgOCAxNiAxMiAxMCAxNiAxMCA4Ii8+PC9zdmc+);
}

.spl-play.on {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+PHN2ZyBmaWxsPSJub25lIiBoZWlnaHQ9IjI0IiBzdHJva2U9IiNmZmYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIiB2aWV3Qm94PSItMC41IC0wLjUgMjUgMjUiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIvPjxsaW5lIHgxPSIxMCIgeDI9IjEwIiB5MT0iMTUiIHkyPSI5Ii8+PGxpbmUgeDE9IjE0IiB4Mj0iMTQiIHkxPSIxNSIgeTI9IjkiLz48L3N2Zz4=);
  animation: pulsate 1s ease infinite;
}

.spl-close {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+PHN2ZyBmaWxsPSJub25lIiBoZWlnaHQ9IjI0IiBzdHJva2U9IiNmZmYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIiB2aWV3Qm94PSIyIDIgMjAgMjAiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48bGluZSB4MT0iMTgiIHgyPSI2IiB5MT0iNiIgeTI9IjE4Ii8+PGxpbmUgeDE9IjYiIHgyPSIxOCIgeTE9IjYiIHkyPSIxOCIvPjwvc3ZnPg==);
}

.spl-next,
.spl-prev {
  top: 50%;
  width: 50px;
  height: 50px;
  opacity: 0.65;
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 100%;
  cursor: pointer;
  margin-top: -25px;
  transform: translateX(-100px);
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+PHN2ZyBmaWxsPSJub25lIiBoZWlnaHQ9IjI0IiBzdHJva2U9IiNmZmYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cG9seWxpbmUgcG9pbnRzPSIxNSAxOCA5IDEyIDE1IDYiLz48L3N2Zz4=);
  background-size: 30px;
}

.spl-prev {
  left: 20px;
}

.spl-next {
  left: auto;
  right: 20px;
  transform: translateX(100px) scaleX(-1);
}

#spotlight.menu .spl-prev {
  transform: translateX(0);
}

#spotlight.menu .spl-next {
  transform: translateX(0) scaleX(-1);
}

@media (hover: hover) {
  .spl-page ~ div {
    cursor: pointer;
    transition: opacity 0.2s ease;
  }
  .spl-next:hover,
  .spl-page ~ div:hover,
  .spl-prev:hover {
    opacity: 1;
  }
}
@media (max-width: 500px) {
  .spl-header div {
    width: 44px;
  }
  .spl-footer .spl-title {
    font-size: 20px;
  }
  .spl-footer {
    font-size: 14px;
  }
  .spl-next,
  .spl-prev {
    width: 35px;
    height: 35px;
    margin-top: -17.5px;
    background-size: 15px 15px;
  }
  .spl-spinner {
    background-size: 30px 30px;
  }
}
.hide-scrollbars {
  overflow: hidden !important;
}

.spotlight[data-src] {
  cursor: pointer;
}

@media screen and (min-width: 901px) {
  main.main {
    padding-top: 6.25rem;
  }
}
@media screen and (max-width: 900px) {
  main.main {
    padding-top: 54px;
  }
}

.header {
  cursor: default;
  z-index: 9;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 6.25rem;
  background: var(--white);
  box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.12);
  transition: 0.25s ease transform;
}
.header._hide {
  transform: translateY(calc(-100% - 16px));
}
.header_top {
  color: #fff;
  background: var(--medium-purple);
}
.header_top__wrap {
  max-width: 1680px;
  margin-inline: auto;
  padding: 0.5rem 2.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.header_top__left {
  display: flex;
  align-items: center;
  gap: 2.5rem;
}
.header_top__right {
  display: flex;
  align-items: center;
  gap: 2.5rem;
}
.header_wrap {
  max-width: 1680px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.625rem 2.5rem;
}
.header_logo {
  display: block;
  width: 14.375rem;
}
.header__middle {
  display: flex;
  align-items: center;
  gap: 2.5rem;
}
.header__right {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
.header__right .btn {
  font-size: 1rem;
}
.header_phone {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 500;
}
.header_phone svg {
  color: var(--medium-purple);
  display: block;
  width: 1.25rem;
}
@media screen and (max-width: 900px) {
  .header {
    height: 54px;
  }
  .header_top, .header__middle {
    display: none;
  }
  .header_wrap {
    padding: 12px 16px;
  }
  .header_logo {
    width: 142px;
  }
  .header__right {
    gap: 8px;
  }
  .header__right .header_phone svg {
    width: 24px;
  }
  .header__right .btn {
    font-size: 14px;
    padding: 6px 12px;
  }
}

.header_rating {
  display: flex;
  align-items: center;
  gap: 4px;
}
.header_rating img, .header_rating svg {
  width: 1rem;
}
.header_rating__text {
  padding-left: 0.5rem;
}

.header_socials {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
.header_socials a img, .header_socials a svg {
  display: block;
  color: var(--white);
  width: 1.25rem;
}

.header_login {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.header_login svg {
  color: var(--darkest-purple);
  display: block;
  width: 1.25rem;
}

.header_top__menu {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 2.5rem;
}
.header_top__menu ._has_child {
  position: relative;
}
.header_top__menu ._has_child > a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.header_top__menu ._has_child > a svg {
  color: var(--white);
  display: block;
  width: 0.75rem;
  transition: var(--global-transition);
  opacity: 0.4;
}
@media screen and (min-width: 901px) {
  .header_top__menu ._has_child:hover > a svg {
    transform: scale(-1);
  }
  .header_top__menu ._has_child:hover .header_top__menu__childs {
    opacity: 1;
    visibility: visible;
  }
  .header_top__menu__childs {
    list-style: none;
    position: absolute;
    z-index: 2;
    top: 100%;
    left: -1rem;
    width: max-content;
    max-width: 15rem;
    border-radius: 16px;
    background: var(--white);
    box-shadow: 0 0.75rem 1.5rem 0 rgba(0, 0, 0, 0.12);
    transition: var(--global-transition);
    opacity: 0;
    visibility: hidden;
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 0.75rem;
  }
  .header_top__menu__childs li a {
    color: #000;
    display: block;
    border-radius: 200px;
    font-size: 1rem;
    padding: 0.375rem 0.75rem;
  }
  .header_top__menu__childs li a:hover {
    color: var(--black);
    background: var(--purple-fills);
  }
}
@media screen and (max-width: 900px) {
  .header_top__menu {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .header_top__menu ._has_child {
    position: relative;
  }
  .header_top__menu ._has_child > a{
    line-height: 1;
  }
  .header_top__menu ._has_child > a svg {
    transform: rotate(-90deg);
  }
  .header_top__menu__childs {
    display: none;
  }
}

.header_menu {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 2.5rem;
}
.header_menu li.current-menu-item > a {
  color: var(--medium-purple);
}
.header_menu li a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1.125rem;
  font-weight: 500;
}
.header_menu li a img, .header_menu li a svg {
  display: block;
  width: 1.25rem;
  color: var(--medium-purple);
}
@media screen and (min-width: 901px) {
  .header_menu li a:hover {
    color: var(--medium-purple);
  }
}
.header_menu ._has_child {
  position: relative;
}
.header_menu ._has_child > a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.header_menu ._has_child > a svg {
  color: var(--medium-purple);
  display: block;
  width: 0.75rem;
  transition: var(--global-transition);
}
@media screen and (min-width: 901px) {
  .header_menu ._has_child > a {
    border-radius: 200px;
    padding: 0.375rem 0.75rem;
  }
  .header_menu ._has_child:hover > a {
    color: var(--black);
    background: var(--purple-fills);
  }
  .header_menu ._has_child:hover .header_menu__childs {
    opacity: 1;
    visibility: visible;
  }
  .header_menu__childs {
    list-style: none;
    position: absolute;
    z-index: 2;
    top: calc(100% - 0.4rem);
    left: -1rem;
    width: max-content;
    max-width: 28rem;
    border-radius: 20px;
    background: var(--white);
    box-shadow: 0 0.75rem 1.5rem 0 rgba(0, 0, 0, 0.12);
    transition: var(--global-transition);
    opacity: 0;
    visibility: hidden;
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 1rem;
  }
  .header_menu__childs li a {
    display: block;
    border-radius: 200px;
    font-size: 1.25rem;
    font-weight: 500;
    padding: 0.375rem 0.75rem;
  }
  .header_menu__childs li a:hover {
    color: var(--black);
    background: var(--purple-fills);
  }
}
@media screen and (max-width: 900px) {
  .header_menu {
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
  }
  .header_menu li {
    width: 100%;
  }
  .header_menu li a {
    gap: 12px;
    font-size: 16px;
  }
  .header_menu ._has_child {
    position: relative;
  }
  .header_menu ._has_child > a {
    justify-content: space-between;
    gap: 12px;
  }
  .header_menu ._has_child > a svg {
    transform: rotate(-90deg);
  }
  .header_menu__childs {
    display: none;
  }
}

.burger_btn {
  display: block;
  width: 20px;
  min-width: 20px;
  height: 16px;
  position: relative;
  transform: rotate(0deg);
  transition: 0.5s ease-in-out;
  cursor: pointer;
}
.burger_btn span {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: var(--medium-purple);
  border-radius: 16px;
  opacity: 1;
  left: 0;
  transform: rotate(0deg);
  transition: 0.25s ease-in-out;
}
.burger_btn span:nth-child(1) {
  top: 0px;
  transform-origin: left center;
}
.burger_btn span:nth-child(2) {
  top: 6px;
  transform-origin: left center;
}
.burger_btn span:nth-child(3) {
  top: 12px;
  transform-origin: left center;
}
.burger_btn._active span:nth-child(1) {
  transform: rotate(45deg);
  top: 0px;
  left: 4px;
}
.burger_btn._active span:nth-child(2) {
  width: 0%;
  opacity: 0;
}
.burger_btn._active span:nth-child(3) {
  transform: rotate(-45deg);
  top: 14px;
  left: 4px;
}

.mobile_menu {
  display: none;
  z-index: 9;
  position: fixed;
  top: 54px;
  left: 0;
  width: 100%;
  height: auto;
  max-height: calc(100dvh - 54px);
  background: #fff;
  box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.12);
  z-index: 99;
  overflow: hidden;
}
.mobile_menu._active {
  opacity: 1;
  visibility: visible;
}
.mobile_menu_wrap {
  max-height: calc(100dvh - 54px);
  overflow-y: auto;
  transition: var(--global-transition);
}
.mobile_menu_top {
  color: #fff;
  background: var(--medium-purple);
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 20px 16px;
}
.mobile_menu_top__row {
  display: flex;
  align-items: center;
  gap: 40px;
}
.mobile_menu_main {
  padding: 20px 16px;
}
.mobile_menu_bottom {
  margin-top: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.mobile_menu_bottom .header_phone {
  font-size: 14px;
}
.mobile_menu_bottom .btn {
  font-size: 14px;
  padding: 10px 20px;
}
.mobile_menu .menu_childs {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transition: var(--global-transition);
  transform: translateX(100%);
  padding: 40px 16px;
  /* max-height: calc(100dvh - 54px); */
  max-height: calc(100dvh - 246px);
  overflow-y: auto;
}
.mobile_menu .menu_childs__head {
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}
.mobile_menu .menu_childs__head svg {
  color: var(--medium-purple);
  transform: rotate(90deg);
}
.mobile_menu .menu_childs__content {
  margin-top: 28px;
}
.mobile_menu .menu_childs__content .header_top__menu__childs,
.mobile_menu .menu_childs__content .header_menu__childs {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-left: 32px;
}
.mobile_menu .menu_childs__content .header_top__menu__childs a,
.mobile_menu .menu_childs__content .header_menu__childs a {
  font-size: 16px;
  font-weight: 500;
}
.mobile_menu._active_childs .mobile_menu_wrap {
  transform: translateX(-100%);
}
.mobile_menu._active_childs .menu_childs {
  transform: translateX(0);
}

.overlay_header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  transition: var(--global-transition);
  opacity: 0;
  visibility: hidden;
  z-index: 8;
  cursor: pointer;
}
.overlay_header._active {
  visibility: visible;
  opacity: 1;
}

.header_search_open {
  cursor: pointer;
  width: 6.25rem;
  color: var(--grey);
  background: var(--purple-fills);
  border-radius: 200px;
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 0.875rem;
  padding: 0.5rem 16px 0.5rem 8px;
}
.header_search_open svg {
  display: block;
  color: var(--medium-purple);
  width: 1.25rem;
  min-width: 1.25rem;
}
@media screen and (max-width: 900px) {
  .header_search_open {
    width: 100%;
    gap: 4px;
    font-size: 14px;
    padding: 12px;
    margin-top: 28px;
  }
}

.popup_search {
  position: fixed;
  transition: var(--global-transition);
  z-index: 10;
  border-radius: 20px;
  background: var(--white);
  box-shadow: 0 0.75rem 1.5rem 0 rgba(0, 0, 0, 0.12);
  padding: 0.5rem;
  opacity: 0;
  visibility: hidden;
}
.popup_search._active {
  opacity: 1;
  visibility: visible;
}
.popup_search_wrap {
  overflow-y: auto;
  padding: 0.5rem;
}
.popup_search__form {
  display: block;
  position: relative;
}
.popup_search__form input {
  display: block;
  width: 100%;
  border-radius: 200px;
  background: var(--purple-fills);
  border: 1px solid var(--purple-strokes);
  font-size: 1rem;
  padding: 1.125rem 2.75rem;
  caret-color: var(--medium-purple);
}
.popup_search__form input::placeholder {
  color: var(--grey);
}
.popup_search__submit {
  cursor: pointer;
  display: block;
  position: absolute;
  left: 1rem;
  top: calc(50% - 0.625rem);
  width: 1.25rem;
  height: 1.25rem;
  color: var(--medium-purple);
}
.popup_search__close {
  cursor: pointer;
  display: block;
  position: absolute;
  right: 1rem;
  top: calc(50% - 0.625rem);
  width: 1.25rem;
  height: 1.25rem;
  color: var(--medium-purple);
}
.popup_search_title {
  color: var(--grey);
  margin-bottom: 0.5rem;
}
.popup_search_results {
  margin-top: 12px;
}
.popup_search_results__item {
  border-radius: 200px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
}
.popup_search_results__item:not(:last-child) {
  margin-bottom: 0.5rem;
}
.popup_search_results__item svg {
  display: block;
  width: 1.25rem;
  min-width: 1.25rem;
  color: var(--medium-purple);
}
.popup_search_results__item:hover {
  background: var(--purple-fills);
}
.popup_search_results .btn {
  display: block;
  width: max-content;
  padding: 0.5rem 1rem;
  font-size: 1rem;
  margin-top: 0.75rem;
}
.popup_search_history {
  margin-top: 12px;
}
.popup_search_history__item {
  border-radius: 200px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
}
.popup_search_history__item:not(:last-child) {
  margin-bottom: 0.5rem;
}
.popup_search_history__item svg {
  display: block;
  width: 1.25rem;
  min-width: 1.25rem;
  color: var(--medium-purple);
  opacity: 0.4;
}
.popup_search_history__item:hover {
  background: var(--purple-fills);
}
@media screen and (min-width: 901px) {
  .popup_search {
    top: 6.25rem;
    left: 50%;
    transform: translate(-50%, 0);
    width: 56.25rem;
    max-width: 100%;
  }
  .popup_search_wrap {
    max-height: calc(100dvh - 8rem);
  }
}
@media screen and (max-width: 900px) {
  .popup_search {
    top: 62px;
    left: 8px;
    width: calc(100% - 16px);
  }
  .popup_search_wrap {
    max-height: calc(100dvh - 90px);
  }
  .popup_search_title {
    font-size: 14px;
  }
  .popup_search_results {
    margin-top: 12px;
  }
  .popup_search_results__item {
    font-size: 14px;
  }
  .popup_search_results .btn {
    width: 100%;
    font-size: 14px;
  }
  .popup_search_history__item {
    font-size: 14px;
  }
}

.footer {
  max-width: 1680px;
  margin-inline: auto;
  cursor: default;
  color: var(--white);
  padding: 20px;
}
.footer_container {
  border-radius: 32px;
  background: var(--darkest-purple);
  padding: 5rem;
}
.footer_logo {
  display: block;
  width: 14.375rem;
  margin: 0 auto;
}
.footer_wrap {
  display: grid;
  grid-template-columns: 23fr 23fr 40fr 23fr 23fr;
  gap: 2.5rem;
  margin: 5rem 0;
}
.footer_col__title {
  color: var(--pink);
}
.footer_menu {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  line-height: 1.25;
}
.footer_locations {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.footer_locations__item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.footer_locations__item svg {
  color: var(--pink);
  width: 1.25rem;
  min-width: 1.25rem;
}
.footer_locations__item_title {
  color: rgba(255, 255, 255, 0.72);
  margin-bottom: 2px;
}
.footer_contacts {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.footer_contacts__item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.footer_contacts__item svg {
  color: var(--pink);
  width: 1.25rem;
  min-width: 1.25rem;
}
.footer_contacts .btn_gradient {
  border-radius: 200px;
}
.footer_awards {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
}
.footer_awards__item {
  border-radius: 20px;
  background: var(--white);
  width: 15rem;
  height: 7.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer_awards__item a{
  display: block;
}
.footer_awards__item img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
.footer_bottom p:not(:last-child) {
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 901px) {
  .footer a:hover {
    color: var(--pink);
  }
  .footer_col__title {
    margin-bottom: 1.25rem;
  }
  .footer_col__title svg {
    display: none;
  }
  .footer_bottom {
    margin-top: 5rem;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
  }
}
@media screen and (max-width: 900px) {
  .footer {
    padding: 20px 16px;
  }
  .footer_container {
    border-radius: 24px;
    padding: 40px 16px;
  }
  .footer_wrap {
    grid-template-columns: 1fr;
    gap: 20px;
    margin: 20px 0;
  }
  .footer_col._active .footer_col__title svg {
    transform: scale(-1);
  }
  .footer_col__title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
  }
  .footer_col__title svg {
    transition: var(--global-transition);
  }
  .footer_col__content {
    display: none;
    padding-top: 12px;
  }
  .footer_menu {
    gap: 6px;
  }
  .footer_menu a {
    font-size: 14px;
  }
  .footer_locations {
    gap: 12px;
  }
  .footer_locations__item {
    font-size: 14px;
  }
  .footer_contacts {
    gap: 12px;
  }
  .footer_contacts__item {
    font-size: 14px;
  }
  .footer_contacts .btn_gradient {
    width: 100%;
  }
  .footer_awards {
    flex-wrap: wrap;
    gap: 4px;
  }
  .footer_awards__item {
    border-radius: 16px;
  }
  .footer_awards__item:first-child {
    width: 100%;
    height: 152px;
    padding: 0;
  }
  .footer_awards__item:not(:first-child) {
    width: calc(50% - 2px);
    height: 80px;
    padding: 20px;
  }
  .footer_bottom {
    margin-top: 20px;
    font-size: 14px;
    line-height: 1.3;
  }
  .footer_bottom__text {
    margin-bottom: 20px;
  }
}

.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  transition: var(--global-transition);
  opacity: 0;
  visibility: hidden;
  z-index: 90;
  cursor: pointer;
}
.overlay._active {
  visibility: visible;
  opacity: 1;
}

.popup {
  z-index: 99;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 24px;
  background: var(--brand-gradient);
  padding: 1px;
  width: 420px;
  max-width: 100%;
  max-height: calc(100dvh - 100px);
  opacity: 0;
  visibility: hidden;
  transition: var(--global-transition);
}
.popup._active {
  opacity: 1;
  visibility: visible;
}
.popup_close {
  cursor: pointer;
  position: absolute;
  top: 12px;
  right: 12px;
  color: var(--medium-purple);
}
.popup_close svg {
  transition: var(--global-transition);
}
@media screen and (min-width: 901px) {
  .popup_close:hover svg {
    transform: rotate(270deg);
  }
}
.popup_wrap {
  background: var(--white);
  border-radius: 23px;
  padding: 24px;
}
.popup_title {
  margin-bottom: 20px;
}
.popup_form .gfield {
  margin-bottom: 20px;
}
.popup_form .gfield input {
  border-color: var(--purple-strokes);
  background: var(--white);
}
.popup_form .gform_button {
  width: 100%;
}
.gform_fields{
  list-style: none;
}
.gfield {
  position: relative;
}
.gfield:not(:last-child) {
  margin-bottom: 1.25rem;
}
.gfield label {
  display: none;
}
.gfield input, .gfield textarea, .gfield select {
  width: 100%;
  border-radius: 8px;
  border: 1px solid var(--purple-fills);
  background: var(--purple-fills);
  color: var(--black);
  font-size: 1rem;
  font-weight: 400;
  padding: 0.75rem 1rem;
  transition: var(--global-transition);
}
.gfield textarea{
  resize: none;
  height: 10rem;
}
.gfield.gfield_error input, .gfield.gfield_error select {
  border-color: red !important;
}
@media screen and (max-width: 900px) {
  .gfield:not(:last-child) {
    margin-bottom: 12px;
  }
}

.gform_button {
  cursor: pointer;
  display: block;
  width: max-content;
  max-width: 100%;
  border-radius: 200px;
  border: 1px solid var(--darkest-purple);
  background: var(--darkest-purple);
  color: #fff;
  display: flex;
  align-items: center;
  font-size: 1rem;
  font-weight: 500;
  padding: 0.625rem 1.25rem;
}

.consult_wrap {
  background: var(--brand-gradient);
}
.consult h2 {
  margin-bottom: 0.5rem;
}
.consult_contacts {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-top: 2.5rem;
}
.consult_contacts a {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: #fff;
}
.consult_contacts a svg {
  display: block;
  width: 1.75rem;
  color: var(--darkest-purple);
}
.consult_form {
  margin-top: 2.5rem;
}
.consult_form form {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.consult_form form .gform-body {
  flex-grow: 1;
}
.consult_img {
  display: block;
}
@media screen and (min-width: 901px) {
  .consult_wrap {
    position: relative;
    width: 60rem;
    max-width: 100%;
    min-height: 26rem;
    border-radius: 32px;
    padding: 3.75rem;
    margin: 5rem auto 0;
  }
  .consult_wrap::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 70%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url("../img/form/bg.svg");
    border-radius: 0 32px 32px 0;
  }
  .consult_wrap > * {
    position: relative;
    z-index: 1;
  }
  .consult_content {
    width: 28.125rem;
    max-width: 100%;
  }
  .consult_img {
    position: absolute;
    bottom: 0;
    right: 3.75rem;
    width: 21.875rem;
    aspect-ratio: 350/520;
  }
}
@media screen and (max-width: 900px) {
  .consult_wrap {
    border-radius: 24px;
    padding: 24px 16px 0;
  }
  .consult h2 {
    font-size: 32px;
    text-align: center;
  }
  .consult .text-r {
    text-align: center;
  }
  .consult_contacts {
    gap: 12px;
    margin-top: 20px;
  }
  .consult_contacts a {
    font-size: 20px;
    font-weight: 500;
  }
  .consult_form {
    margin-top: 20px;
  }
  .consult_img {
    width: 210px;
    margin: 20px auto 0;
  }
}

.hero {
  user-select: none;
  position: relative;
  overflow: hidden;
  border-radius: 32px;
  height: 45rem;
  padding: 2rem;
  margin: 20px 0;
}
.hero_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--brand-gradient);
}
.hero_bg:has(img) video{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.hero_bg::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
  z-index: 2;
}
.hero_content {
  width: 38.5rem;
  max-width: 100%;
  color: #fff;
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 0.75rem;
}
@media screen and (min-width: 901px) {
  .hero .hero_form {
    position: absolute;
    z-index: 2;
    bottom: 0.75rem;
    right: 0.75rem;
    width: 27rem;
    max-width: 100%;
  }
}
@media screen and (max-width: 900px) {
  .hero {
    border-radius: 24px;
    height: 480px;
    padding: 16px;
    margin: 20px 0 8px;
  }
  .hero_content {
    width: 100%;
    gap: 8px;
  }
}

/* .hero_form {
  background: var(--white);
  border-radius: 28px;
  padding: 2rem;
} */
.hero_form {
  background: var(--white);
  border-radius: 16px;
  box-shadow: 0 4px 8px 0 rgba(69, 35, 109, 0.2);
}
.hero_form .h3 {
  margin-bottom: 1.25rem;
}
@media screen and (max-width: 900px) {
  .hero_form {
    /* background: var(--purple-fills);
    border-radius: 20px;
    padding: 16px 12px; */
    margin-top: 16px;
    margin-bottom: 20px;
  }
  .hero_form .h3 {
    margin-bottom: 12px;
  }
}

@media screen and (min-width: 901px) {
  .home_services_list__row{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
  }
  .home_services_list__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(3, 1fr);
    gap: 1.25rem;
  }
  .home_services_list__grid .home_services_item:nth-child(1) {
    height: 51.25rem;
    grid-column: span 2/span 2;
    grid-row: span 2/span 2;
  }
  .home_services_list__grid .home_services_item:nth-child(2) {
    grid-column: span 2/span 2;
    grid-column-start: 3;
  }
  .home_services_list__grid .home_services_item:nth-child(3) {
    grid-column-start: 3;
    grid-row-start: 2;
  }
  .home_services_list__grid .home_services_item:nth-child(4) {
    grid-column-start: 4;
    grid-row-start: 2;
  }
  .home_services_list__grid .home_services_item:nth-child(5) {
    grid-column: span 2/span 2;
    grid-row-start: 3;
  }
  .home_services_list__grid .home_services_item:nth-child(6) {
    grid-column: span 2/span 2;
    grid-column-start: 3;
    grid-row-start: 3;
  }
  .home_services_list__grid .home_services_item:nth-child(1) .home_services_item__text, 
  .home_services_list__grid .home_services_item:nth-child(2) .home_services_item__text, 
  .home_services_list__grid .home_services_item:nth-child(6) .home_services_item__text {
    width: 23.75rem;
  }
  .home_services_list__grid .home_services_item:nth-child(1)._hover .home_services_item__content, 
  .home_services_list__grid .home_services_item:nth-child(2)._hover .home_services_item__content, 
  .home_services_list__grid .home_services_item:nth-child(6)._hover .home_services_item__content {
    max-width: 26.5rem !important;
  }
  .home_services_list__grid .home_services_item:nth-child(5)._hover .home_services_item__content {
    max-width: 28rem !important;
  }
  .home_services_list__grid .home_services_item._hover .home_services_item__bg img {
    object-position: 80% 50%;
    transform: scale(1.05);
  }
}
@media screen and (max-width: 900px) {
  .home_services_list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }
  
}

.home_services_item {
  position: relative;
  overflow: hidden;
  border-radius: 32px;
  height: 25rem;
}
.home_services_item__bg {
  width: 100%;
  height: 100%;
}
.home_services_item__bg img {
  transition: 0.3s linear all;
}
.home_services_item__bg::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.24) 100%);
}
.home_services_item__content {
  border-radius: 28px;
  background: var(--darkest-purple);
  color: #fff;
  position: absolute;
  bottom: 0.75rem;
  left: 0.75rem;
  padding: 1.25rem 1.25rem 1.25rem 1.5rem;
  width: max-content;
  transition: var(--global-transition-longer);
}
.home_services_item__head {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.home_services_item__bottom {
  display: none;
}
.home_services_item__arrow {
  border-radius: 50%;
  background: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  min-width: 2.5rem;
  height: 2.5rem;
}
.home_services_item__arrow svg, .home_services_item__arrow img {
  display: block;
  color: var(--medium-purple);
  width: 1.25rem;
}
.home_services_item__text {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.3;
  margin: 0.75rem 0;
}
@media screen and (max-width: 900px) {
  .home_services_item {
    border-radius: 24px;
    height: 280px;
  }
  .home_services_item__content {
    max-width: calc(100% - 1.5rem);
    border-radius: 20px;
    padding: 12px 12px 12px 16px;
  }
}

@media screen and (min-width: 901px) {
  .section_areas .swiper-wrapper {
    height: 41.25rem;
  }
}
@media screen and (max-width: 900px) {
  .section_areas .swiper-pagination {
    display: none;
  }
}

.preview_item {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  width: 100%;
  height: 20rem;
  display: flex;
  align-items: flex-end;
  padding: 0.75rem;
}
.preview_item .bg_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.preview_item .bg_img img {
  transition: var(--global-transition);
}
.preview_item .bg_img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.24) 100%);
  opacity: 0;
  visibility: hidden;
  transition: var(--global-transition);
}
.preview_item__arrow {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  opacity: 0;
  visibility: hidden;
  transition: var(--global-transition);
  border-radius: 50%;
  background: #fff;
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.preview_item__arrow svg {
  display: block;
  color: var(--medium-purple);
  width: 1.25rem;
}
.preview_item__label {
  position: relative;
  z-index: 2;
  border-radius: 20px;
  background: var(--darkest-purple);
  color: #fff;
  font-size: 1.125rem;
  font-weight: 500;
  padding: 0.5rem 1rem;
}
.preview_item__content {
  position: relative;
  z-index: 2;
  border-radius: 20px;
  background: var(--darkest-purple);
  color: #fff;
  padding: 0.75rem 1rem;
}
.preview_item__title {
  font-size: 1.125rem;
  font-weight: 500;
  padding-bottom: 8px;
  transition: var(--global-transition);
}
.preview_item__text {
  color: rgba(255, 255, 255, 0.72);
}
.preview_item__price {
  background: var(--brand-gradient);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 901px) {
  .preview_item:hover .bg_img::after {
    opacity: 1;
    visibility: visible;
  }
  .preview_item:hover .bg_img img {
    transform: scale(1.1);
  }
  .preview_item:hover .preview_item__arrow {
    top: 0.75rem;
    right: 0.75rem;
    opacity: 1;
    visibility: visible;
  }
  .preview_item:hover .preview_item__title {
    padding-bottom: 1.125rem;
  }
}
@media screen and (max-width: 900px) {
  .preview_item {
    height: auto;
    aspect-ratio: 4/5;
  }
  .preview_item__arrow {
    display: none;
  }
  .preview_item__label {
    font-size: 16px;
  }
  .preview_item__content {
    position: relative;
    z-index: 2;
    border-radius: 20px;
    background: var(--darkest-purple);
    color: #fff;
    padding: 0.75rem 1rem;
  }
  .preview_item__title {
    font-size: 16px;
  }
}

.section_labels .show_more {
  margin: 1.25rem auto 0;
}

.labels_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
}
.labels_list._more {
  overflow: hidden;
  max-height: 5.5rem;
  transition: var(--global-transition);
}
.labels_list._more._active {
  max-height: 3000px;
}
.labels_list__item {
  border-radius: 20px;
  background: var(--darkest-purple);
  color: #fff;
  text-align: center;
  font-size: 1.125rem;
  font-weight: 500;
  padding: 0.5rem 1rem;
}
@media screen and (min-width: 901px) {
  .labels_list__item:hover {
    background: var(--medium-purple);
  }
}
@media screen and (min-width: 901px) {
  .labels_list {
    padding: 0 5rem;
  }
}
@media screen and (max-width: 900px) {
  .labels_list {
    gap: 4px;
  }
  .labels_list._more {
    max-height: 76px;
  }
  .labels_list._more_mobile {
    overflow: hidden;
    max-height: 231px;
    transition: var(--global-transition);
  }
  .labels_list._more_mobile._active {
    max-height: 3000px;
  }
  .labels_list__item {
    font-size: 16px;
  }
}

.areas_toogle {
  width: max-content;
  border-radius: 32px;
  background: var(--brand-gradient);
  display: flex;
  align-items: center;
  gap: 2px;
  padding: 3px;
  margin: 0 auto 1.25rem;
}
.areas_toogle button {
  cursor: pointer;
  border: 0;
  border-radius: 32px;
  transition: var(--global-transition);
  color: var(--white);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  padding: 0.5rem 1rem;
}
.areas_toogle button._active {
  color: var(--black);
  background: var(--white);
}
@media screen and (max-width: 900px) {
  .areas_toogle button {
    font-size: 14px;
    line-height: 1.3;
  }
}
.areas_toogle__content{
  transition: var(--global-transition);
}
.areas_toogle__content._loading{
  opacity: .8;
  cursor: progress;
}
.areas_toogle__content._loading > *{
  pointer-events: none;
}

@media screen and (min-width: 901px) {
  .price_cards .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
  }
}
.price_cards .price_card {
  height: 100%;
}

.price_card {
  position: relative;
  overflow: hidden;
  border-radius: 32px;
  background: var(--brand-gradient);
  padding: 1px;
  transition: var(--global-transition);
}
.price_card._accent {
  color: var(--white);
}
.price_card._accent .price_card__wrap {
  background: transparent;
}
.price_card._accent .price_card__text {
  color: rgba(255, 255, 255, 0.72);
}
.price_card._accent .price_card__price_val {
  color: var(--darkest-purple);
  background: none;
  background-clip: unset;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: unset;
}
.price_card__label {
  z-index: 2;
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  border-radius: 200px;
  background: var(--white);
  color: var(--black);
  padding: 0.5rem 1.25rem;
  width: max-content;
}
.price_card__wrap {
  height: 100%;
  border-radius: 31px;
  background: var(--white);
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  padding: 2rem;
}
.price_card__icon {
  display: block;
  width: 3rem;
}
.price_card__text {
  color: var(--grey);
}
.price_card .h3 {
  margin-bottom: 4px;
}
.price_card__price {
  display: flex;
  align-items: flex-end;
  gap: 0.5rem;
  margin-top: 4px;
}
.price_card__price_val {
  background: var(--brand-gradient);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.price_card__price_desc {
  font-size: 1.125rem;
  line-height: 2rem;
}
.price_card__list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.price_card__list_item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 1.125rem;
  font-weight: 500;
}
.price_card__list_item img, .price_card__list_item svg {
  display: block;
  width: 1.25rem;
  color: var(--pink);
}
.price_card .btn {
  margin-top: auto;
}
@media screen and (min-width: 901px) {
  .price_card:hover {
    box-shadow: 0 0.75rem 2.25rem 0 rgba(151, 71, 255, 0.24);
  }
}
@media screen and (max-width: 900px) {
  .price_card {
    border-radius: 24px;
  }
  .price_card__label {
    z-index: 2;
    font-size: 14px;
  }
  .price_card__wrap {
    border-radius: 23px;
    gap: 20px;
    padding: 16px;
  }
  .price_card__price_desc {
    font-size: 16px;
    line-height: 28px;
  }
  .price_card__list {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }
  .price_card__list_item {
    font-size: 16px;
  }
}

/* .prices_long_slider:not(:has(.swiper-initialized)) .swiper-wrapper,
.favourite_destinations_slider:not(:has(.swiper-initialized)) .swiper-wrapper {
  overflow: hidden;
} */
@media screen and (min-width: 901px) {
  .prices_long_slider .swiper-wrapper,
  .favourite_destinations_slider .swiper-wrapper {
    height: 41.25rem;
  }

  .prices_long_slider:not(:has(.swiper-initialized)) .swiper-wrapper,
  .favourite_destinations_slider:not(:has(.swiper-initialized)) .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
  }
}
@media screen and (max-width: 900px) {
  .prices_long_slider .swiper-pagination,
  .favourite_destinations_slider .swiper-pagination {
    display: none;
  }
  .prices_long_slider:not(:has(.swiper-initialized)) .swiper-wrapper,
  .favourite_destinations_slider:not(:has(.swiper-initialized)) .swiper-wrapper {
    display: flex;
  }
  .prices_long_slider:not(:has(.swiper-initialized)) .swiper-wrapper .swiper-slide,
  .favourite_destinations_slider:not(:has(.swiper-initialized)) .swiper-wrapper .swiper-slide {
    width: 65vw;
  }
}

@media screen and (max-width: 900px) {
  .section_video {
    padding-top: 0;
  }
}

.video_block {
  position: relative;
  overflow: hidden;
  border-radius: 32px;
  width: 80rem;
  max-width: 100%;
  aspect-ratio: 16/9;
  margin: 0 auto;
}
.video_block::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
}
.video_block._active::after {
  display: none;
}
.video_block__img {
  width: 100%;
  height: 100%;
}
.video_block__btn {
  display: block;
  position: absolute;
  z-index: 2;
  cursor: pointer;
  bottom: 0.75rem;
  left: 0.75rem;
  width: 6.25rem;
}
.video_block__btn svg {
  display: block;
  width: 100%;
}
@media screen and (max-width: 900px) {
  .video_block {
    border-radius: 24px;
  }
  .video_block__btn {
    width: 60px;
  }
}

.specialty_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem;
  margin-top: 2.5rem;
}
.specialty_item .h4 {
  margin-bottom: 0.5rem;
}
.specialty_gallery {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0.5rem;
  margin-top: 2.5rem;
}
.specialty_gallery .bg_img img {
  aspect-ratio: 246/220;
  border-radius: 24px;
}
@media screen and (max-width: 900px) {
  .specialty_list {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-top: 20px;
  }
  .specialty_gallery {
    grid-template-columns: repeat(2, 1fr);
    gap: 4px;
  }
  .specialty_gallery .bg_img img {
    aspect-ratio: 177/113;
    border-radius: 16px;
  }
}

.awards_list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
  gap: 2.5rem;
}
@media screen and (max-width: 900px) {
  .awards_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}

.s_about__content {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.s_about__text {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.s_about__text ul, .s_about__text ol {
  padding-left: 1.5em;
}
.s_about__text ul li:not(:last-child), .s_about__text ol li:not(:last-child) {
  margin-bottom: 0.5rem;
}
.s_about__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
  margin-top: auto;
}
.s_about__stat {
  position: relative;
  border-radius: 24px;
  background: var(--brand-gradient);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 1.25rem;
  text-align: center;
}
.s_about__stat::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  border-radius: 23px;
  background: #fff;
}
.s_about__stat_title {
  position: relative;
  z-index: 1;
  background: var(--brand-gradient);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.s_about__stat_text {
  position: relative;
  z-index: 1;
}
.s_about__slider {
  position: relative;
  overflow: hidden;
}
.s_about__slider .swiper-container {
  overflow: hidden;
}
.s_about__slider .bg_img {
  overflow: hidden;
  aspect-ratio: 1/1;
}
.s_about__img {
  overflow: hidden;
}
@media screen and (min-width: 901px) {
  .s_about__wrap {
    display: flex;
    align-items: flex-start;
    gap: 5rem;
  }
  .s_about__content, .s_about__slider {
    width: calc(50% - 2.5rem);
  }
  .s_about__slider .swiper-container {
    border-radius: 32px;
  }
  .s_about__slider .bg_img img {
    border-radius: 32px;
  }
  .s_about .swiper_nav {
    margin: 0;
  }
  .s_about .swiper-button {
    position: absolute;
    top: calc(50% - 1.375rem);
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 50%;
    border: 1px solid #F4E7FF;
    background: var(--white);
    box-shadow: 0 4px 8px 0 rgba(69, 35, 109, 0.2);
  }
  .s_about .swiper-button-prev {
    left: 0.75rem;
  }
  .s_about .swiper-button-next {
    right: 0.75rem;
  }
  .s_about .swiper-button-disabled {
    opacity: 0;
  }
  .s_about__img {
    width: calc(50% - 2.5rem);
    border-radius: 32px;
    aspect-ratio: 720/644;
  }
}
@media screen and (max-width: 900px) {
  .s_about__content {
    margin-bottom: 40px;
  }
  .s_about__stats {
    gap: 20px;
  }
  .s_about__stat {
    border-radius: 16px;
    padding: 12px;
  }
  .s_about__stat::before {
    border-radius: 15px;
  }
  .s_about__stat_text {
    position: relative;
    z-index: 1;
  }
  .s_about__slider .swiper-container {
    border-radius: 24px;
  }
  .s_about__slider .bg_img img {
    border-radius: 24px;
  }
  .s_about__img {
    border-radius: 24px;
    aspect-ratio: 360/350;
  }
}

@media screen and (min-width: 901px) {
  .page-template-template-about .s_about__slider .bg_img {
    aspect-ratio: 720/1080;
  }
}

.breadcrumbs {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.breadcrumbs li {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.breadcrumbs svg {
  display: block;
  width: 0.75rem;
  color: var(--medium-purple);
}
.breadcrumbs a {
  font-size: 1rem;
}
.breadcrumbs span {
  font-size: 1rem;
}
@media screen and (min-width: 901px) {
  .breadcrumbs a:hover {
    color: var(--medium-purple);
  }
  .page_header .breadcrumbs a:hover {
    color: var(--darkest-purple);
  }
}
@media screen and (max-width: 900px) {
  .breadcrumbs {
    width: max-content;
  }
  .breadcrumbs_wrap {
    padding: 0 16px;
    margin: 0 -16px;
    width: calc(100% + 32px);
    overflow-x: auto;
  }
  .breadcrumbs_wrap::-webkit-scrollbar {
    height: 0;
  }
}

.adv {
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.5rem;
}
.adv:not(.adv__hero) {
  margin-bottom: 1.25rem;
}
.adv_item {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.adv_item img {
  display: block;
  width: 1.75rem;
  height: 1.75rem;
}
@media screen and (min-width: 901px) {
  .adv__hero {
    gap: 7.5rem;
  }
}
@media screen and (max-width: 900px) {
  .adv {
    flex-wrap: wrap;
    gap: 12px;
  }
  .adv:not(.adv__hero) {
    margin-bottom: 20px;
  }
  .adv__hero {
    margin-bottom: 0;
  }
  .adv_item {
    gap: 10px;
  }
  .adv_item img {
    width: 20px;
    height: 20px;
  }
}

.faq_list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.faq_item {
  position: relative;
  border-radius: 32px;
  background: var(--brand-gradient);
  transition: var(--global-transition);
}
.faq_item::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  background: #fff;
  border-radius: 31px;
  transition: var(--global-transition);
}
.faq_item__head {
  position: relative;
  z-index: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  transition: var(--global-transition);
  padding: 2rem;
}
.faq_item__btn {
  position: relative;
  width: 1.625rem;
  min-width: 1.625rem;
  height: 1.625rem;
  border-radius: 50%;
  background: var(--darkest-purple);
  transition: var(--global-transition);
  margin: 0.1875rem;
}
.faq_item__btn::before, .faq_item__btn::after {
  content: "";
  position: absolute;
  background: #fff;
  border-radius: 8px;
  transition: var(--global-transition);
}
.faq_item__btn::before {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1rem;
  height: 2px;
}
.faq_item__btn::after {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transform-origin: center;
  height: 1rem;
  width: 2px;
}
.faq_item__content {
  position: relative;
  z-index: 1;
  display: none;
  padding: 0 2rem 2rem 5.25rem;
  margin-top: -0.75rem;
  color: #fff;
}
.faq_item__content p:not(:last-child),
.faq_item__content ul:not(:last-child),
.faq_item__content ol:not(:last-child){
  margin-bottom: 0.5rem;
}
.faq_item__content ul,
.faq_item__content ol{
  padding-left: 1.5em;
}
.faq_item._active {
  background: var(--darkest-purple);
}
.faq_item._active::before {
  opacity: 0;
  visibility: hidden;
}
.faq_item._active .faq_item__head {
  color: #fff;
}
.faq_item._active .faq_item__btn {
  background: #fff;
}
.faq_item._active .faq_item__btn::before, .faq_item._active .faq_item__btn::after {
  background: var(--darkest-purple);
}
.faq_item._active .faq_item__btn::after {
  transform: translate(-50%, -50%) rotate(-90deg);
}
@media screen and (min-width: 901px) {
  .faq_item:not(._active):hover {
    box-shadow: 0 0.75rem 2.25rem 0 rgba(151, 71, 255, 0.24);
  }
  .faq_item:not(._active):hover .faq_item__btn {
    background: var(--medium-purple);
  }
  .faq_item:not(._active):hover .faq_item__btn::before, .faq_item:not(._active):hover .faq_item__btn::after {
    transform: translate(-50%, -50%) rotate(-90deg);
  }
}
@media screen and (max-width: 900px) {
  .faq_item {
    border-radius: 24px;
  }
  .faq_item::before {
    border-radius: 23px;
  }
  .faq_item__head {
    gap: 12px;
    padding: 16px;
  }
  .faq_item__content {
    padding: 0 16px 16px 60px;
    margin-top: -8px;
  }
}

.card_list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
}
.card_list__col3 {
  grid-template-columns: repeat(3, 1fr);
}
.card_list__item {
  border-radius: 32px;
  background: var(--light-grey);
  padding: 2rem;
}
.card_list__item_img {
  display: block;
  width: 3rem;
  margin-bottom: 1.25rem;
}
.card_list__item .h4 {
  margin-bottom: 0.5rem;
}
.card_list .text-m p:not(:last-child) {
  margin-bottom: 0.5rem;
}
.card_list .text-m ul, .card_list .text-m ol {
  padding-left: 1.5em;
}
.card_list .text-m ul:not(:last-child), .card_list .text-m ol:not(:last-child) {
  margin-bottom: 0.5rem;
}
.card_list .text-m ul li:not(:last-child), .card_list .text-m ol li:not(:last-child) {
  margin-bottom: 0.25rem;
}
@media screen and (min-width: 901px) {
  .card_list .text-m a:hover {
    color: var(--medium-purple);
  }
}
@media screen and (max-width: 900px) {
  .card_list {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .card_list__item {
    border-radius: 24px;
    padding: 16px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
  }
  .card_list__item_img {
    width: 36px;
    min-width: 36px;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 900px) {
  .section_quote_block {
    padding: 0;
  }
}

.quote_block {
  overflow: hidden;
  position: relative;
  border-radius: 32px;
  background: var(--brand-gradient);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  padding: 0.75rem;
}
.quote_block .h3 {
  position: relative;
  z-index: 1;
}
.quote_block ._white {
  color: var(--white);
}
.quote_block .btn {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 901px) {
  .quote_block::before {
    content: "";
    position: absolute;
    top: -1rem;
    right: 0;
    height: calc(100% + 2rem);
    aspect-ratio: 22/11.75;
    background-image: url("../img/icons/bg-quote_block.svg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
  }
  .quote_block__img {
    width: 17.5rem;
  }
  .quote_block ._white {
    margin-right: -6rem;
  }
}
@media screen and (max-width: 900px) {
  .quote_block {
    flex-direction: column;
    gap: 4px;
    padding: 24px 16px;
  }
  .quote_block__img {
    width: 244px;
    margin: 8px 0;
  }
  .quote_block .btn {
    width: 100%;
  }
}

.images_slider .bg_img {
  aspect-ratio: 81/68;
}
.images_slider .bg_img img {
  border-radius: 32px;
}
@media screen and (max-width: 900px) {
  .images_slider .bg_img img {
    border-radius: 24px;
  }
}

.why_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem;
}
.why_list__item {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
}
.why_list__item_img {
  display: block;
  width: 3rem;
  min-width: 3rem;
}
.why_list__item .h4 {
  margin-bottom: 0.5rem;
}
.why_list__item_content {
  flex-grow: 1;
}
@media screen and (min-width: 901px) {
  .why .section_subtitle {
    margin-bottom: 2.5rem;
  }
}
@media screen and (max-width: 900px) {
  .why_list {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .why_list__item {
    gap: 12px;
  }
  .why_list__item_img {
    width: 36px;
    min-width: 36px;
  }
}

.steps_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}
.steps_list__item {
  background: var(--light-grey);
}
.steps_list__item_num {
  background: var(--brand-gradient, linear-gradient(90deg, #B46AEC 0%, #FF7AFF 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.steps_list__item .h4 {
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 901px) {
  .steps_list__item {
    border-radius: 32px;
    padding: 2rem;
  }
  .steps_list__item_num {
    margin-bottom: 1.25rem;
  }
}
@media screen and (max-width: 900px) {
  .steps_list {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .steps_list__item {
    border-radius: 24px;
    padding: 16px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
  }
  .steps_list__item_num {
    width: 24px;
    min-width: 24px;
  }
  .steps_list__item_content {
    flex-grow: 1;
  }
}

.process_list {
  display: grid;
}
.process__item {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  padding: 0.75rem;
}
.process__item_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.process__item_content {
  position: relative;
  z-index: 2;
  background: var(--darkest-purple);
  color: #fff;
}
.process__item_text {
  margin-top: 0.5rem;
  line-height: 1.3;
}
@media screen and (min-width: 901px) {
  .process_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
  }
  .process_list__col2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .process__item {
    height: 35rem;
    border-radius: 32px;
  }
  .process__item_content {
    border-radius: 28px;
    padding: 1.5rem;
    width: 25rem;
    max-width: 100%;
  }
}
@media screen and (max-width: 900px) {
  .process_list {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .process__item {
    aspect-ratio: 3.6/4;
    border-radius: 24px;
  }
  .process__item_content {
    border-radius: 20px;
    padding: 16px;
  }
  .process__item_text {
    font-size: 14px;
  }
}

.moving_map_wrap {
  width: 66rem;
  max-width: 100%;
  margin-inline: auto;
}

.destinations_list {
  display: grid;
  gap: 0.5rem;
}
.destinations__item {
  background: var(--white);
  border-radius: 24px;
  border: 1px solid var(--purple-strokes);
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.destinations__item_icon {
  width: 4.5rem;
  min-width: 4.5rem;
}
.destinations__item .h4 {
  display: block;
  margin-bottom: 0.5rem;
}
.destinations__item_list_item {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.destinations__item_list_item:not(:first-child) {
  margin-top: 0.5rem;
}
.destinations__item_list__more {
  overflow: hidden;
  transition: var(--global-transition);
}
.destinations__item_list__more._active {
  max-height: 3000px;
}
.destinations__item .show_more {
  color: var(--grey);
  margin-top: 0.5rem;
}
@media screen and (min-width: 901px) {
  .destinations_list {
    grid-template-columns: repeat(5, 1fr);
  }
  .destinations__item {
    min-height: 13rem;
    padding: 1.5rem;
  }
  .destinations__item_list__more {
    max-height: 6.375rem;
  }
  .destinations__item a:hover {
    color: var(--medium-purple);
  }
  .destinations__item .show_more:hover {
    color: var(--medium-purple);
  }
}
@media screen and (max-width: 900px) {
  .destinations_list {
    grid-template-columns: 1fr;
  }
  .destinations_list._active .destinations__item:nth-child(n+10) {
    display: flex;
  }
  .destinations__item {
    padding: 16px;
  }
  .destinations__item:nth-child(n+10) {
    display: none;
  }
  .destinations__item_list_item {
    font-size: 14px;
  }
  .destinations__item_list__more {
    max-height: 95px;
  }
  .destinations .show_more__destinations {
    color: var(--grey);
    margin: 20px auto 0;
  }
}

.ld_options_list {
  display: flex;
  flex-wrap: wrap;
}
.ld_options__item {
  background: var(--light-grey);
}
.ld_options__item_title {
  background: var(--brand-gradient);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.ld_options__item_text {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.ld_options__item_text ul, .ld_options__item_text ol {
  padding-left: 1.5em;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.ld_options__item_wrap {
  display: grid;
}
@media screen and (min-width: 901px) {
  .ld_options_list {
    gap: 1.25rem;
  }
  .ld_options__item {
    border-radius: 32px;
    padding: 2rem;
  }
  .ld_options__item:not(:last-child) {
    width: calc(50% - 0.75rem);
  }
  .ld_options__item:last-child {
    width: 100%;
  }
  .ld_options__item_title {
    margin-bottom: 1.25rem;
  }
  .ld_options__item_subtitle {
    margin-bottom: 1.25rem;
  }
  .ld_options__item_wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem;
  }
}
@media screen and (max-width: 900px) {
  .ld_options_list {
    gap: 8px;
  }
  .ld_options__item {
    border-radius: 24px;
    padding: 16px;
  }
  .ld_options__item_title {
    margin-bottom: 12px;
  }
  .ld_options__item_subtitle {
    margin-bottom: 12px;
  }
  .ld_options__item_wrap {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

.materials_list {
  display: grid;
}
.materials__item {
  border: 1px solid var(--purple-strokes);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.materials__item_img {
  margin-bottom: 0.25rem;
}
@media screen and (min-width: 901px) {
  .materials_list {
    grid-template-columns: repeat(6, 1fr);
    gap: 0.5rem;
  }
  .materials__item {
    border-radius: 24px;
    gap: 0.5rem;
    padding: 1.5rem 1rem;
  }
  .materials__item_img {
    width: 10rem;
    height: 10rem;
  }
}
@media screen and (max-width: 900px) {
  .materials_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 4px;
  }
  .materials__item {
    border-radius: 16px;
    gap: 4px;
    padding: 12px 10px;
  }
  .materials__item_img {
    width: 80px;
    height: 80px;
  }
  .materials__item_price {
    font-size: 14px;
  }
}

.storage_pricing .price_card {
  height: 100%;
}
.storage_pricing .price_card .h3 {
  margin-bottom: 0;
}
.storage_pricing .price_card__row:nth-child(3) {
  margin-top: auto;
}
@media screen and (min-width: 901px) {
  .storage_pricing__slider .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
  }
}

.storage_trust__list {
  display: grid;
}
.storage_trust__item {
  position: relative;
  background: var(--brand-gradient);
  display: flex;
  align-items: center;
}
.storage_trust__item::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  background: #fff;
}
.storage_trust__item img {
  position: relative;
  z-index: 1;
  display: block;
  width: 1.5rem;
  min-width: 1.5rem;
}
.storage_trust__item .text-m {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 901px) {
  .storage_trust .section_subtitle {
    margin-bottom: 2.5rem;
  }
  .storage_trust__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem;
  }
  .storage_trust__item {
    border-radius: 24px;
    gap: 1.25rem;
    padding: 1.25rem;
  }
  .storage_trust__item::before {
    border-radius: 23px;
  }
}
@media screen and (max-width: 900px) {
  .storage_trust__list {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .storage_trust__item {
    border-radius: 16px;
    gap: 12px;
    padding: 12px;
  }
  .storage_trust__item::before {
    border-radius: 15px;
  }
}

.page_header {
  position: relative;
  overflow: hidden;
  background: var(--brand-gradient);
  color: var(--white);
  margin: 20px 0;
}
.page_header::before {
  content: "";
  position: absolute;
  width: auto;
  aspect-ratio: 22/11.75;
  background-image: url("../img/icons/bg-quote_block.svg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}
.page_header .breadcrumbs svg {
  color: var(--white);
}
.page_header_wrap {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.page_header_bottom {
  margin-top: auto;
}
@media screen and (min-width: 901px) {
  .page_header {
    border-radius: 32px;
  }
  .page_header::before {
    top: -1rem;
    right: 0;
    height: calc(100% + 2rem);
  }
  .page_header_wrap {
    padding: 2rem;
    min-height: 15rem;
  }
}
@media screen and (max-width: 900px) {
  .page_header {
    border-radius: 24px;
  }
  .page_header::before {
    top: calc(50% - 120px);
    right: -45%;
    height: 240px;
  }
  .page_header_wrap {
    padding: 16px;
  }
  .page_header_text br {
    display: none;
  }
  .page_header .breadcrumbs a {
    font-size: 14px;
  }
}

.section_contacts__wrap {
  display: grid;
}
.section_contacts .footer_contacts__item {
  align-items: center;
  font-size: 1.25rem;
  font-weight: 500;
}
.section_contacts .footer_locations__item_title {
  color: var(--grey);
}
.section_contacts .footer_locations__item_text {
  font-weight: 500;
}
.section_contacts_form {
  background: var(--purple-fills);
}
.section_contacts_form .gfield input,
.section_contacts_form .gfield textarea {
  border-color: var(--purple-strokes);
  background: var(--white);
}
.section_contacts__map {
  border-radius: 32px;
  overflow: hidden;
  aspect-ratio: 2.7/1;
}
.section_contacts__map #map{
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 901px) {
  .section_contacts__wrap {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5rem;
    margin-bottom: 2.5rem;
  }
  .section_contacts__col .h3 {
    margin-bottom: 1.25rem;
  }
  .section_contacts .footer_locations__item_text {
    font-size: 1.25rem;
  }
  .section_contacts__map {
    aspect-ratio: 2.7/1;
  }
  .section_contacts_form {
    border-radius: 28px;
    padding: 2rem;
  }
  .section_contacts_form._vacancies{
    width: 30rem;
    margin: 0 auto;
  }
  .section_contacts_form .gfield {
    margin-bottom: 0.75rem;
  }
}
@media screen and (max-width: 900px) {
  .section_contacts {
    padding-top: 0;
  }
  .section_contacts__wrap {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 20px;
  }
  .section_contacts__col .h3 {
    margin-bottom: 12px;
  }
  .section_contacts .footer_locations__item_text {
    font-size: 16px;
  }
  .section_contacts_form {
    border-radius: 20px;
    padding: 16px;
  }
  .section_contacts_form .gfield {
    margin-bottom: 8px;
  }
  .section_contacts__map {
    aspect-ratio: 0.9/1;
  }
}

.price_options__list {
  display: grid;
}
.price_options__item {
  background: var(--brand-gradient);
  padding: 1px;
}
.price_options__item_wrap {
  background: var(--white);
}
.price_options__item_subtitle {
  margin-top: 0.5rem;
}
.price_options__item_text {
  line-height: 1.3;
}
.price_options__item_text ul, .price_options__item_text ol {
  padding-left: 1.5em;
}
.price_options__item_text ul li:not(:last-child), .price_options__item_text ol li:not(:last-child) {
  margin-bottom: 0.5rem;
}
.price_options__item_table_row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.price_options__item_table_row div {
  padding: 0.5rem 0;
}
.price_options__item_table_row div:nth-child(1) {
  font-weight: 500;
}
.price_options__item_table_row._head {
  color: var(--medium-purple);
  font-weight: 500;
}
.price_options__item_table_row:not(._head, :last-child) {
  border-bottom: 1px solid var(--purple-strokes);
}
@media screen and (min-width: 901px) {
  .price_options__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
  }
  .price_options__item {
    border-radius: 32px;
    font-size: 1rem;
  }
  .price_options__item_wrap {
    border-radius: 31px;
    height: 100%;
    padding: 2rem;
  }
  .price_options__item_text {
    margin-top: 2.5rem;
  }
  .price_options__item_table {
    margin-top: 2.5rem;
  }
}
@media screen and (max-width: 900px) {
  .price_options__list {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .price_options__item {
    border-radius: 24px;
    font-size: 14px;
  }
  .price_options__item_wrap {
    border-radius: 23px;
    padding: 16px;
  }
  .price_options__item_text {
    margin-top: 20px;
  }
  .price_options__item_table {
    margin-top: 20px;
  }
}

.default_text__title {
  margin-bottom: 1.25rem;
}
.default_text__content p:not(:last-child) {
  margin-bottom: 0.5rem;
}
.default_text__content ul, .default_text__content ol {
  padding-left: 1.5em;
}
.default_text__content ul:not(:last-child), .default_text__content ol:not(:last-child) {
  margin-bottom: 1.25rem;
}
.default_text__content ul li:not(:last-child), .default_text__content ol li:not(:last-child) {
  margin-bottom: 0.375rem;
}

.search_form {
  display: block;
  position: relative;
}
.search_form input {
  display: block;
  width: 100%;
  border-radius: 200px;
  background: var(--purple-fills);
  border: 1px solid var(--purple-strokes);
  font-size: 1rem;
  padding: 1.125rem 2.75rem;
  caret-color: var(--medium-purple);
}
.search_form input::placeholder {
  color: var(--grey);
}
.search_form__submit {
  cursor: pointer;
  display: block;
  position: absolute;
  left: 1rem;
  top: calc(50% - 0.625rem);
  width: 1.25rem;
  height: 1.25rem;
  color: var(--medium-purple);
}

.search_results {
  margin-top: 1.25rem;
}
.search_results__item {
  display: block;
  border: 1px solid var(--medium-purple);
  background: #FFF;
}
.search_results__item_list a {
  display: block;
}
.search_results__item_list a:not(:last-child) {
  margin-bottom: 0.5rem;
}
@media screen and (min-width: 901px) {
  /* .search_results a:hover {
    color: var(--medium-purple);
  } */
  .search_results__item {
    border-radius: 32px;
    padding: 2rem;
  }
  .search_results__item .h4{
    transition: var(--global-transition);
  }
  .search_results__item:hover .h4{
    color: var(--medium-purple);
  }
  .search_results__item:not(:last-child) {
    margin-bottom: 1.25rem;
  }
  .search_results__item_list,
  .search_results__item .text-m {
    margin-top: 0.75rem;
  }
  .search_results__item_list a {
    font-size: 1rem;
  }
}
@media screen and (max-width: 900px) {
  .search_results__item {
    border-radius: 24px;
    padding: 16px;
  }
  .search_results__item:not(:last-child) {
    margin-bottom: 8px;
  }
  .search_results__item_list,
  .search_results__item .text-m {
    margin-top: 8px;
  }
  .search_results__item_list a {
    font-size: 14px;
  }
}

@media screen and (min-width: 901px) {
  .preview_item__blog .preview_item__label {
    font-size: 1.5rem;
    line-height: 1.3;
  }
}
@media screen and (max-width: 900px) {
  .preview_item__blog .preview_item__label {
    font-size: 20px;
    line-height: 1.4;
  }
}

@media screen and (max-width: 900px) {
  .blog_latest .preview_item {
    aspect-ratio: 360/240;
  }
}

.section_blog__list {
  display: grid;
}
@media screen and (min-width: 901px) {
  .section_blog__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
  }
  .section_blog .preview_item__label {
    max-width: 19.375rem;
  }
}
@media screen and (max-width: 900px) {
  .section_blog__list {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .section_blog .preview_item {
    aspect-ratio: 360/240;
  }
}

.nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 1.25rem;
}
.nav-links a, .nav-links span {
  border-radius: 50%;
  border: 1px solid var(--medium-purple);
  background: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.nav-links a svg, .nav-links span svg {
  color: var(--medium-purple);
  display: block;
  width: 1.5rem;
  height: 1.5rem;
}
.nav-links a.prev svg, .nav-links span.prev svg {
  transform: scaleX(-1);
}
.nav-links .current {
  border-color: transparent;
  color: var(--grey);
}
.nav-links .dots{
  border: none;
}
@media screen and (min-width: 901px) {
  .nav-links a, .nav-links span {
    width: 2.5rem;
    height: 2.5rem;
    font-size: 1.25rem;
  }
  .nav-links a:hover {
    background: var(--medium-purple);
    color: var(--white);
  }
  .nav-links a:hover svg {
    color: var(--white);
  }
}
@media screen and (max-width: 900px) {
  .nav-links a, .nav-links span {
    width: 36px;
    height: 36px;
    font-size: 16px;
  }
}

.single_post_thumb {
  aspect-ratio: 1.5/1;
}
.content_text_styles._mb{
  margin-bottom: 1.5rem;
}
.content_text_styles > *:first-child{
  margin-top: 0;
}
.content_text_styles p a:not(.btn),
.content_text_styles li a:not(.btn) {
  color: var(--medium-purple);
  text-decoration: underline;
}
.content_text_styles ul, .content_text_styles ol {
  padding-left: 1.5em;
}
.content_text_styles table{
  width: 100%;
  border: 1px solid;
  border-collapse: collapse;
}
.content_text_styles table td{
  border: 1px solid;
  padding: .5rem;
}

.single_post .video_block {
  aspect-ratio: 1.5/1;
}
.content_text_styles .wp-block-image img {
  display: block;
  width: 100%;
  aspect-ratio: 1.5/1;
  object-fit: cover;
}
@media screen and (min-width: 901px) {
  .single_post__wrap {
    width: 60rem;
    max-width: 100%;
    margin-inline: auto;
  }
  .single_post_excerpt {
    margin-bottom: 2.5rem;
  }
  .single_post_thumb {
    aspect-ratio: 1.5/1;
    margin-bottom: 2.5rem;
  }
  .single_post_thumb img {
    border-radius: 32px;
  }
  .content_text_styles {
    font-size: 1.25rem;
    line-height: 1.4;
  }
  .content_text_styles h1,
  .content_text_styles h2,
  .content_text_styles h3,
  .content_text_styles h4,
  .content_text_styles h5,
  .content_text_styles h6 {
    margin: 2.5rem 0 1.25rem;
  }
  .content_text_styles p:not(:last-child) {
    margin-bottom: 1.25rem;
  }
  .content_text_styles ul, .content_text_styles ol {
    margin-bottom: 1.25rem;
  }
  .content_text_styles ul li:not(:last-child), .content_text_styles ol li:not(:last-child) {
    margin-bottom: 0.75rem;
  }
  .content_text_styles + .materials_list,
  .content_text_styles + .quote_block {
    margin-top: 1.25rem;
  }
}
@media screen and (max-width: 900px) {
  .single_post_excerpt {
    margin-bottom: 20px;
  }
  .single_post_thumb {
    margin-bottom: 20px;
  }
  .single_post_thumb img {
    border-radius: 24px;
  }
  .content_text_styles {
    font-size: 16px;
    line-height: 1.5;
  }
  .content_text_styles h1,
  .content_text_styles h2,
  .content_text_styles h3,
  .content_text_styles h4,
  .content_text_styles h5,
  .content_text_styles h6 {
    margin: 20px 0 8px;
  }
  .content_text_styles p:not(:last-child) {
    margin-bottom: 8px;
  }
  .content_text_styles ul, .content_text_styles ol {
    margin-bottom: 8px;
  }
  .content_text_styles ul li:not(:last-child), .content_text_styles ol li:not(:last-child) {
    margin-bottom: 4px;
  }
  .content_text_styles + .materials_list,
  .content_text_styles + .quote_block{
    margin-top: 20px;
  }
}

.post_share {
  border-radius: 24px;
  background: var(--brand-gradient);
  padding: 1px;
}
.post_share_wrap {
  border-radius: 23px;
  background: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.25rem;
}
.post_share__list {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
.post_share__list a {
  display: block;
}
.post_share__list a img, .post_share__list a svg {
  display: block;
  width: 2rem;
  height: 2rem;
}
@media screen and (min-width: 901px) {
  .post_share {
    margin-top: 2.5rem;
  }
  .post_share_wrap {
    gap: 1.25rem;
  }
}
@media screen and (max-width: 900px) {
  .post_share {
    margin-top: 20px;
  }
  .post_share_wrap {
    flex-direction: column;
    gap: 12px;
  }
}

.section_reviews .swiper-slide .review_preview {
  height: 100%;
}
.section_reviews__list {
  display: grid;
}
@media screen and (min-width: 901px) {
  .section_reviews__list {
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
  }
}
@media screen and (max-width: 900px) {
  .section_reviews__list {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}

.reviews_widget {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  text-align: center;
  margin-bottom: 1.25rem;
}
.reviews_widget__stars {
  display: flex;
  align-items: center;
  gap: 4px;
}
.reviews_widget__stars img, .reviews_widget__stars svg {
  display: block;
  width: 1.5rem;
}
.reviews_widget__text {
  display: flex;
  align-items: center;
  gap: 4px;
}
.reviews_widget__text img, .reviews_widget__text svg {
  display: block;
  width: 1.5rem;
}
@media screen and (max-width: 900px) {
  .reviews_widget__text {
    font-size: 14px;
  }
}

.review_preview {
  position: relative;
  border-radius: 32px;
  background: var(--brand-gradient);
  transition: var(--global-transition);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 2rem;
}
.review_preview::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 1px;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  background: #fff;
  border-radius: 31px;
  transition: var(--global-transition);
}
.review_preview_top {
  position: relative;
  z-index: 1;
}
.review_preview .text-m {
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.review_preview__more {
  cursor: pointer;
  display: block;
  width: max-content;
  color: var(--medium-purple);
  margin: 0.5rem 0 0 auto;
}
.review_preview_bottom {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.review_preview__logo {
  border-radius: 50%;
  background: linear-gradient(90deg, rgba(180, 106, 236, 0.08) 0%, rgba(255, 122, 255, 0.08) 100%);
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.review_preview__logo img, .review_preview__logo svg {
  display: block;
  width: 1.5rem;
}
.review_preview__name {
  font-size: 1.125rem;
  font-weight: 500;
}
.review_preview__stars {
  display: flex;
  align-items: center;
  gap: 4px;
}
.review_preview__stars img, .review_preview__stars svg {
  display: block;
  width: 1rem;
}
@media (hover: hover) {
  .review_preview:hover {
    box-shadow: 0 0.75rem 2.25rem 0 rgba(151, 71, 255, 0.24);
  }
}
@media screen and (max-width: 900px) {
  .review_preview {
    border-radius: 24px;
    gap: 8px;
    padding: 16px;
  }
  .review_preview::before {
    border-radius: 23px;
  }
  .review_preview__name {
    font-size: 16px;
  }
}


/*          add         */

.popup_search_results:not(:has(.popup_search_results__item)){
  display: none;
}

.gform_wrapper .validation_error,
.gform_wrapper .gfield_description.validation_message{
  display: none;
}

.single_post__gallery_wrap{
  position: relative;
}
  .single_post__gallery ul{
    list-style: none;
    padding: 0;
    margin: 0;
  }

@media screen and (min-width: 901px) {
  .single_post__gallery .swiper-container{
    overflow: hidden;
  }
}

.mapplic-minimap{
  display: none !important;
}

/* reviews plugin rewrite */
.reviews_widgets h2{
  text-align: center;
  margin-bottom: 1.25rem;
}
.section.reviews_widgets .ti-widget .ti-widget-container{
  margin: 0 !important;
}
  .section.reviews_widgets .ti-widget .ti-review-item .ti-inner{
    border: 1px solid var(--medium-purple) !important;
    background: var(--white) !important;
    transition: var(--global-transition);
  }

.section.reviews_widgets .ti-widget .ti-load-more-reviews-container .ti-load-more-reviews-button{
  cursor: pointer;
  border-radius: 200px;
  background-color: var(--darkest-purple) !important;
  color: var(--white);
  transition: var(--global-transition);
  font-size: 1.125rem !important;
  font-weight: 500;
  text-align: center;
  padding: 0.625rem 1.25rem !important;
}

@media (min-width: 480px) {
  .section.reviews_widgets .ti-widget .ti-review-item .ti-inner:hover {
    transform: none;
  }
  .section.reviews_widgets .ti-widget .ti-review-item:hover .ti-inner {
    box-shadow: 0 0.75rem 2.25rem 0 rgba(151, 71, 255, 0.24);
  }
}
@media screen and (min-width: 901px) {
  .section.reviews_widgets .ti-widget .ti-review-item .ti-inner{
    border-radius: 32px !important;
  }
  .section.reviews_widgets .ti-widget .ti-load-more-reviews-container .ti-load-more-reviews-button:hover {
    background-color: var(--medium-purple);
  }
}
@media screen and (max-width: 900px) {
  .section.reviews_widgets .ti-widget .ti-review-item .ti-inner{
    border-radius: 24px !important;
  }
  .section.reviews_widgets .ti-widget .ti-load-more-reviews-container .ti-load-more-reviews-button {
    font-size: 16px !important;
    padding: 12px 20px !important;
  }
}
/* END reviews plugin rewrite */



/* header menu search */

.header_menu ._has_search{
  position: relative;
}

.menu_search__form {
  display: block;
  position: relative;
}
  .menu_search__form input {
    display: block;
    width: 100%;
    border-radius: 200px;
    background: var(--purple-fills);
    border: 1px solid var(--purple-strokes);
    font-size: .875rem;
    padding: .75rem 1rem .75rem 2.5rem;
    caret-color: var(--medium-purple);
  }
    .menu_search__form input::placeholder {
      color: var(--grey);
    }
  .menu_search__submit {
    cursor: pointer;
    display: block;
    position: absolute;
    left: 1rem;
    top: calc(50% - 0.5625rem);
    width: 1.125rem;
    height: 1.125rem;
    color: var(--medium-purple);
  }

  .menu_search__results:not(:has(a)){
    display: none;
  }


@media screen and (min-width: 901px) {
  .header_menu ._has_search{
    padding: 0.375rem 0.75rem;
  }
  .header_menu ._has_search:hover > a {
    color: var(--medium-purple);
  }
  .header_menu__childs.menu_search{
    top: calc(100% + .5rem);
  }
  .header_menu ._has_search:hover .header_menu__childs {
    opacity: 1;
    visibility: visible;
  }
  .menu_search__form {
    width: 18rem;
    max-width: 100%;
  }
}
@media screen and (max-width: 900px) {

  .mobile_menu .header_menu ._has_search{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
  }
    .menu_search_item__arr{
      flex-grow: 1;
      display: flex;
      justify-content: flex-end;
    }
    .menu_search_item__arr svg{
      color: var(--medium-purple);
      display: block;
      width: 0.75rem;
      transform: rotate(-90deg);
    }

  .mobile_menu .menu_childs__content .header_menu__childs.menu_search{
    padding-left: 0;
  }
    .menu_search__form {
      width: 100%;
    }
    .menu_search__form input{
      font-size: 1rem;
      padding: 1rem 1rem 1rem 3rem;
    }
    .menu_search__submit{
      top: calc(50% - 0.75rem);
      width: 1.5rem;
      height: 1.5rem;
    }
    .menu_search__results{
      display: flex;
      flex-direction: column;
      gap: 16px;
      padding-left: 32px;
    }
}


/* END header menu search */

.video_estimate__form iframe{
  border: none;
  border-radius: 24px;
  display: block;
  width: 70rem;
  max-width: 100%;
  height: 700px;
  margin: 0 auto;
}