@keyframes Button-module__spin--lWtk7 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.Button-module__text--holIg {
  font-size: var(--button-font-size, 14em);
  white-space: nowrap;
  text-transform: uppercase;
}

.Button-module__root--Knp7O {
  all: unset;
  display: inline-flex;
  font-family: Aeonik, sans-serif;
  font-weight: var(--button-font-weight, 700);
  cursor: pointer;
  box-sizing: border-box;
  line-height: var(--button-line-height, 1);
  color: var(--button-color);
  background-color: var(--button-bg);
  align-items: center;
  justify-content: center;
  padding: var(--button-padding-vertical, 0) var(--button-padding-horizontal, 0);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: all 0.2s;
}

@media (hover: hover) and (pointer: fine) {
    /* [class] нужны, чтоб повысить специфичность выставления переменных при ховере и пр. */
    .Button-module__root--Knp7O[class]:hover {
      --button-bg: var(--button-bg-hover);
      --inner-border-width: 2em;
    }

    .Button-module__root--Knp7O[class]:focus {
      --button-bg: var(--button-bg-focus);
      --inner-border-width: 2em;
    }

    .Button-module__root--Knp7O[class]:active {
      --button-bg: var(--button-bg-active);
      --inner-border-width: 3em;
    }
  }

.Button-module__root--Knp7O[class]:disabled {
    cursor: default;
    --button-bg: var(--button-bg-disabled);
    --button-color: var(--button-color-disabled);
    --inner-border-color: var(--disabled-border-color);
    --inner-border-width: 1em;
  }

.Button-module__root--Knp7O[class]:disabled .Button-module__text--holIg {
      opacity: var(--disabled-text-opacity, 0.4);
    }

.Button-module__hidden--Q6Ztq {
  visibility: hidden;
}

.Button-module__s--o9reb {
  --button-font-weight: 400;
  --button-padding-vertical: 11em;
  --button-padding-horizontal: 24em;
  --spinner-size: 18em;
}

.Button-module__m--ZGRqJ {
  --button-padding-vertical: 16em;
  --button-padding-horizontal: 40em;
  --spinner-size: 24em;
}

@media (min-width: 1152px) {
    .Button-module__withMediaDimension--Z_A5M.Button-module__s--o9reb {
      --button-font-size: 16em;
      --button-padding-horizontal: 32em;
    }

    .Button-module__withMediaDimension--Z_A5M.Button-module__m--ZGRqJ {
      --button-font-size: 16em;
    }
  }

@media (min-width: 1536px) {
    .Button-module__withMediaDimension--Z_A5M.Button-module__s--o9reb {
      --button-font-size: 18em;
      --spinner-size: 24em;
    }

    .Button-module__withMediaDimension--Z_A5M.Button-module__m--ZGRqJ {
      --button-font-size: 20em;
      --button-padding-horizontal: 52em;
      --button-padding-vertical: 18em;
      --spinner-size: 28em;
    }
  }

.Button-module__primary--V9FFQ {
  --button-color: #fff;
}

.Button-module__primary--V9FFQ.Button-module__purple--biF8d {
    --button-bg: rgba(140, 30, 255, 1);
    --button-bg-hover: rgba(169, 86, 255, 1);
    --button-bg-active: rgba(140, 30, 255, 1);
    --button-bg-focus: rgba(169, 86, 255, 1);
    --button-bg-disabled: rgba(197, 143, 255, 1);
    --button-color-disabled: #fff;
    --disabled-text-opacity: 1;
  }

.Button-module__primary--V9FFQ.Button-module__black--Iz790 {
    --button-bg: #000;
    /* Стилей черной primary-кнопки пока нет в дизайне
     При необходимости можно тут имплементировать */
  }

.Button-module__secondary--_9J0r {
  --button-bg: transparent;
  box-shadow: inset 0 0 0 var(--inner-border-width, 1px)
    var(--inner-border-color);
}

.Button-module__secondary--_9J0r.Button-module__black--Iz790 {
    --inner-border-color: #000;
    --disabled-border-color: rgba(128, 128, 128, 1);
    --button-color: #000;
  }

.Button-module__secondary--_9J0r.Button-module__white--l3jcr {
    --inner-border-color: #fff;
    --disabled-border-color: rgba(128, 128, 128, 1);
    --button-color: #fff;
    --button-color-disabled: rgba(128, 128, 128, 1);
  }

.Button-module__isLoading--u5f2m {
  pointer-events: none;
}

.Button-module__spinner--Zj28d {
  width: var(--spinner-size);
  height: var(--spinner-size);
  border-radius: 50%;
  box-sizing: border-box;
  display: inline-flex;
  background: transparent;
  position: absolute;
}

.Button-module__spinner--Zj28d::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 50%;
    background: conic-gradient(
      from 180deg,
      color-mix(in srgb, var(--button-color, #fff) 0%, transparent) 0deg,
      color-mix(in srgb, var(--button-color, #fff) 30%, transparent) 90deg,
      color-mix(in srgb, var(--button-color, #fff) 80%, transparent) 180deg,
      var(--button-color, #fff) 270deg,
      color-mix(in srgb, var(--button-color, #fff) 0%, transparent) 360deg
    );
    animation: Button-module__spin--lWtk7 1s linear infinite;
    -webkit-mask: url("data:image/svg+xml,%3csvg width=%27100%27 height=%27100%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3cdefs%3e%3cmask id=%27ring%27%3e%3crect width=%27100%27 height=%27100%27 fill=%27white%27/%3e%3ccircle cx=%2750%27 cy=%2750%27 r=%2725%27 fill=%27black%27/%3e%3c/mask%3e%3c/defs%3e%3crect width=%27100%27 height=%27100%27 fill=%27white%27 mask=%27url%28%23ring%29%27/%3e%3c/svg%3e");
            mask: url("data:image/svg+xml,%3csvg width=%27100%27 height=%27100%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3cdefs%3e%3cmask id=%27ring%27%3e%3crect width=%27100%27 height=%27100%27 fill=%27white%27/%3e%3ccircle cx=%2750%27 cy=%2750%27 r=%2725%27 fill=%27black%27/%3e%3c/mask%3e%3c/defs%3e%3crect width=%27100%27 height=%27100%27 fill=%27white%27 mask=%27url%28%23ring%29%27/%3e%3c/svg%3e");
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
  }

.Section-module__section--qmgjG {
  --abm-side-padding: 18em;
  padding: 80em var(--abm-side-padding);
  color: var(--text-color);
  font-size: 1px;
}

.Section-module__themeYellow--TpLu_ {
  --text-color: var(--color-black, #000);
  background-color: var(--color-yellow, #FEDD00);
}

.Section-module__themeBlack--S5jGY {
  --text-color: var(--color-white, #fff);
  background-color: var(--color-black, #000);
}

.Section-module__themeWhite--o5h6a {
  --text-color: var(--color-black, #000);
  background-color: var(--color-white, #fff);
}

.Section-module__withTopBorder--olQtQ {
  border-top: 4px solid #8C1EFF;
}

.Section-module__content--z4_Ix {
  max-width: 1600em;
  margin: auto;
}

@media (min-width: 1152px) {
  .Section-module__section--qmgjG {
    --abm-side-padding: 24em;
    padding-bottom: 100em;
  }
}


.ContactModal-module__overlay--ti1yT {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 20em;
}

.ContactModal-module__modal--Xzwl2 {
  background: #fff;
  padding: 18em;
  width: 100%;
  max-width: 545em;
  box-sizing: border-box;
  max-height: 90vh;
  overflow-y: auto;
  position: relative;
  font-family: Aeonik, sans-serif;
}

.ContactModal-module__closeButton--qvADd {
  position: absolute;
  top: 16em;
  right: 16em;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4em;
  line-height: 1;
}

.ContactModal-module__title--XrI8J {
  margin: 0 0 12em 0;
  font-weight: 900;
  color: #000;
  font-family: ABCGravity, sans-serif;
}

.ContactModal-module__titleText--HH4uj {
  font-size: 24em;
}

.ContactModal-module__subtitle--dS9UA {
  font-size: 16em;
  margin: 0;
}

.ContactModal-module__form--XuQzj {
  display: grid;
  grid-gap: 16em;
  gap: 16em;
  margin-top: 28em;
}

.ContactModal-module__field--c99HI {
  display: grid;
  grid-gap: 8em;
  gap: 8em;
}

.ContactModal-module__inputWrapper--e2l3N,
.ContactModal-module__textareaWrapper--rSQEQ {
  padding: 12em 16em;
  border: 1em solid #000;
  transition: border-color 0.2s;
}

.ContactModal-module__inputWrapper--e2l3N:focus-within,
.ContactModal-module__textareaWrapper--rSQEQ:focus-within {
  border-color: rgba(140, 30, 255, 1);
}

.ContactModal-module__inputWrapperError--s_bqB {
  border-color: #dc3545;
}

.ContactModal-module__input--wuaB7,
.ContactModal-module__textarea--i19oy {
  border: none;
  outline: none;
  padding: 0;
  background: transparent;
  width: 100%;
  font-size: 18em;
  font-family: Aeonik, sans-serif;
}

.ContactModal-module__textareaWrapper--rSQEQ {
  min-height: 80em;
}

.ContactModal-module__textarea--i19oy {
  resize: vertical;
  height: 100%;
}

.ContactModal-module__error--jso6D {
  color: #dc3545;
  font-size: 14em;
}

.ContactModal-module__submitButton--qbQOa {
  margin-top: 15em;
  justify-self: stretch;
  width: 100%;
}

.ContactModal-module__successMessage--Nyhi4 {
  text-align: center;
  padding: 40em 20em;
}

.ContactModal-module__successTitle--dVn02 {
  font-size: 36em;
  font-family: ABCGravity, sans-serif;
  font-weight: 900;
}

.ContactModal-module__successText--KJznx {
  margin: 0;
  font-size: 16em;
  color: #666;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .ContactModal-module__overlay--ti1yT {
    padding: 0;
    align-items: stretch;
  }

  .ContactModal-module__modal--Xzwl2 {
    max-width: none;
    max-height: none;
    height: -webkit-fill-available;
    width: -webkit-fill-available;
  }

  .ContactModal-module__closeButton--qvADd {
    top: 12em;
    right: 12em;
  }
}

.Footer-module__root--T9ly6 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding-bottom: 24em;
  color: rgba(229, 229, 229, 1);
  font-family: Aeonik, sans-serif;
}

.Footer-module__content--NUrJo {
  margin: auto;
}

.Footer-module__header--hy1ME {
  display: grid;
  grid-gap: 20em;
  gap: 20em;
  line-height: 0.9;
}

.Footer-module__title--OX7d9 {
  font-family: ABCGravity, sans-serif;
  font-weight: 900;
  font-size: 28em;
  color: rgba(254, 221, 0, 1);
  margin: 0;
  line-height: 100%;
  letter-spacing: 0.01em;
}

.Footer-module__subTitle--EmP0b {
  font-family: ABCGravity, sans-serif;
  font-weight: 900;
  font-size: 36em;
  line-height: 100%;
  color: #fff;
  margin: 0;
}

.Footer-module__advantages--z7ASK {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(15, auto);
  grid-column-gap: 16em;
  column-gap: 16em;
  grid-row-gap: 40em;
  row-gap: 40em;
  margin: 60em 0 0;
  padding: 0;
  list-style: none;
  width: 100%;
  max-width: 100%;
}

.Footer-module__advantageTitle--spnaR {
  margin: 0;
  padding-bottom: 12em;
  border-bottom: 1em solid rgba(254, 221, 0, 1);
  font-weight: 400;
  line-height: 1;
  font-size: inherit;
  min-width: 0;
  max-width: 100%;
}

.Footer-module__advantageTitleText--cMrU_ {
  font-size: 18em;
}

.Footer-module__advantageText--BHbmo {
  font-size: 14em;
  line-height: 1.23;
  margin: 0;
  opacity: 0.9;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
  min-width: 0;
  max-width: 100%;
}

.Footer-module__advantageItem--EcCx_ {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  grid-gap: 24em;
  gap: 24em;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  justify-items: start;
}

.Footer-module__advantageInfo--Ilud0 {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: 1 / 3;
  grid-gap: 12em;
  gap: 12em;
  min-width: 0;
  max-width: 100%;
}

.Footer-module__affiliatesBlock--jVQ0L {
  order: 1;
}

.Footer-module__suppliersBlock--yrn9l {
  order: 2;
}

.Footer-module__hotelsBlock--uGUyj {
  order: 3;
}

.Footer-module__marketingBlock--DnIGu {
  order: 4;
}

.Footer-module__providersBlock--Zmk8W {
  order: 5;
}

.Footer-module__advantageLink--bcoK8 {
  color: rgba(255, 238, 128, 1);
  text-decoration: none;
}

.Footer-module__footerBottom--u_o7y {
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 80em;
  grid-gap: 16em;
  gap: 16em;
}

.Footer-module__social--H1Yw4 {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: -webkit-min-content;
  grid-auto-columns: min-content;
  grid-gap: 33em;
  gap: 33em;
}

.Footer-module__footerLinks--R9Hnr {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-gap: 24em;
  gap: 24em;
  grid-auto-flow: column;
  justify-self: end;
}

.Footer-module__footerLink--ipb6W {
  color: rgba(255, 255, 255, 1);
  font-size: 12em;
  text-decoration: none;
}

.Footer-module__footerLeft--nnkZo {
  display: grid;
  grid-gap: 20em;
  gap: 20em;
  grid-auto-rows: -webkit-min-content;
  grid-auto-rows: min-content;
  grid-template-columns: 1fr 1fr;
}

.Footer-module__footerLegal--jAGGe {
  display: grid;
  grid-gap: 12em;
  gap: 12em;
}

.Footer-module__footerLegalText--xlXoo {
  font-size: 12em;
  line-height: 1.23;
  color: rgba(128, 128, 128, 1);
  margin: 0;
}

.Footer-module__footerLegalText--xlXoo a {
    color: rgba(128, 128, 128, 1);
    text-decoration: none;
  }

.Footer-module__footerParagraphSection--rin95 {
  display: grid;
  grid-gap: 3em;
  gap: 3em;
}

@media (min-width: 500px) {
  .Footer-module__root--T9ly6 {
    border-top: 8em solid rgba(140, 30, 255, 1);
  }

  .Footer-module__advantages--z7ASK {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(9, auto);
  }

  .Footer-module__affiliatesBlock--jVQ0L {
    grid-row: 1 / 4;
    grid-column: 1;
    order: unset;
  }

  .Footer-module__suppliersBlock--yrn9l {
    grid-row: 1 / 4;
    grid-column: 2;
    order: unset;
  }

  .Footer-module__hotelsBlock--uGUyj {
    grid-row: 4 / 7;
    grid-column: 1 / 3;
    order: unset;
  }

  .Footer-module__marketingBlock--DnIGu {
    grid-row: 7 / 10;
    grid-column: 1;
    order: unset;
  }

  .Footer-module__providersBlock--Zmk8W {
    grid-row: 7 / 10;
    grid-column: 2;
    order: unset;
  }

  .Footer-module__advantageItem--EcCx_ {
    gap: 35em;
  }

  .Footer-module__advantageTitle--spnaR {
    padding-bottom: 16em;
  }

  .Footer-module__advantageTitleText--cMrU_ {
    font-size: 18em;
  }

  .Footer-module__advantageText--BHbmo {
    font-size: 14em;
  }

  .Footer-module__advantageInfo--Ilud0 {
    gap: 16em;
  }

  .Footer-module__footerBottom--u_o7y {
    grid-template-columns: 1fr 1fr;
    margin-top: 60em;
    gap: 0;
  }

  .Footer-module__footerLeft--nnkZo {
    grid-template-columns: 1fr;
  }

  .Footer-module__footerLinks--R9Hnr {
    gap: 12em;
    grid-auto-flow: row;
    justify-self: start;
  }
}

@media (min-width: 1152px) {
  .Footer-module__root--T9ly6 {
    padding-top: 100em;
    padding-bottom: 20em;
  }

  .Footer-module__title--OX7d9 {
    font-size: 44em;
  }

  .Footer-module__subTitle--EmP0b {
    font-size: 50em;
  }

  .Footer-module__advantages--z7ASK {
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: auto 1fr auto;
    gap: 20em;
  }

  .Footer-module__advantageItem--EcCx_ {
    grid-template-rows: subgrid;
    grid-row: 1 / 4;
    grid-column: auto;
    gap: 40em;
  }

  .Footer-module__advantageTitleText--cMrU_ {
    font-size: 22em;
  }

  .Footer-module__advantageText--BHbmo {
    font-size: 18em;
  }

  .Footer-module__advantageInfo--Ilud0 {
    grid-template-rows: subgrid;
    grid-row: 1 / 3;
  }

  .Footer-module__affiliatesBlock--jVQ0L {
    order: 1;
    grid-row: 1 / 4;
    grid-column: auto;
  }

  .Footer-module__suppliersBlock--yrn9l {
    order: 2;
    grid-row: 1 / 4;
    grid-column: auto;
  }

  .Footer-module__hotelsBlock--uGUyj {
    order: 3;
    grid-row: 1 / 4;
    grid-column: auto;
  }

  .Footer-module__marketingBlock--DnIGu {
    order: 4;
    grid-row: 1 / 4;
    grid-column: auto;
  }

  .Footer-module__providersBlock--Zmk8W {
    order: 5;
    grid-row: 1 / 4;
    grid-column: auto;
  }

  .Footer-module__footerBottom--u_o7y {
    margin-top: 80em;
  }

  .Footer-module__footerLegalText--xlXoo {
    font-size: 14em;
  }
}


.HotelCard-module__root--popq0 {
  display: flex;
  flex-direction: column;
  background: var(--card-bg, #ffffff);
  border-radius: 0;
  overflow: hidden;
  max-width: 100%;
  font-family: "Aeonik", sans-serif;
}

.HotelCard-module__rootFixed--TvjpT {
  width: 440em;
  max-width: 440em;
}

.HotelCard-module__clickable--mp25I {
  cursor: pointer;
  text-decoration: none;
  color: inherit;
}

.HotelCard-module__imageContainer--FZfWz {
  position: relative;
  width: 100%;
  height: 260em;
  overflow: hidden;
}

.HotelCard-module__image--fREMp {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.HotelCard-module__discount--G2sau {
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(140, 30, 255, 1);
  color: var(--discount-text, #ffffff);
  width: 87em;
  height: 77em;
  box-sizing: border-box;
  padding: 5em;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-family: "Aeonik", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  border-radius: 0;
  letter-spacing: 0.01em;
}

.HotelCard-module__discountText--hH9Sf {
  font-size: 21em;
  line-height: 1.1;
  text-align: center;
}

.HotelCard-module__content--IA_3z {
  padding: 15em;
  background: var(--card-bg, #ffffff);
  display: flex;
  flex-direction: column;
  gap: 4em;
  flex: 1;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: break-word;
}

.HotelCard-module__stars--jTODO {
  display: flex;
  gap: 1em;
}

.HotelCard-module__starFilled--Ps4vk,
.HotelCard-module__starEmpty--FBbdo {
  width: 12em;
  height: 12em;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxMCAxMCI+PHBhdGggZmlsbD0idXJsKCNhKSIgZD0iTTQuNjE1LjQ4MmEuNC40IDAgMCAxIC43MjYgMGwxLjEwMiAyLjM3MmEuNC40IDAgMCAwIC4zMTQuMjI4bDIuNTk3LjMxNWEuNC40IDAgMCAxIC4yMjQuNjlMNy42NjIgNS44NjhhLjQuNCAwIDAgMC0uMTIuMzdsLjUwMyAyLjU2N2EuNC40IDAgMCAxLS41ODcuNDI2TDUuMTczIDcuOTZhLjQuNCAwIDAgMC0uMzkgMEwyLjQ5OSA5LjIzYS40LjQgMCAwIDEtLjU4Ny0uNDI2bC41MDMtMi41NjdhLjQuNCAwIDAgMC0uMTItLjM3TC4zNzggNC4wODhhLjQuNCAwIDAgMSAuMjI0LS42OUwzLjIgMy4wODFhLjQuNCAwIDAgMCAuMzE1LS4yMjhMNC42MTUuNDgyWiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9IjQuOTc4IiB4Mj0iNC45NzgiIHkxPSItLjMiIHkyPSIxMC43IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGQUYwMCIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0YyOTAwNiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg==);
  color: rgba(248, 159, 3, 1);
}

.HotelCard-module__starEmpty--FBbdo {
  opacity: 0.3;
}

.HotelCard-module__title--BOmwo {
  margin: 0;
  font-size: 18em;
  font-weight: 600;
  color: #000;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-family: "Aeonik", sans-serif;
}

.HotelCard-module__location--uglfh {
  margin: 0;
  color: rgba(105, 105, 105, 1);
  font-size: 15em;
  line-height: 1.3;
  font-family: "Aeonik", sans-serif;
}

.HotelCard-module__dates--mhAjB {
  margin: 0;
  color: #000;
  font-size: 18em;
  line-height: 1.3;
  letter-spacing: 0.01em;
  font-family: "Aeonik", sans-serif;
  flex: 1;
}

.HotelCard-module__priceInfoWrapper--fplFE {
  margin-top: 11em;
}

.HotelCard-module__priceInfo--qLmoQ {
  width: 100%;
  background: rgba(140, 30, 255, 1);
  font-family: "Aeonik", sans-serif;
  color: rgba(255, 255, 255, 1);
  padding: 14px 16px 16px;
  box-sizing: border-box;
}

.HotelCard-module__bookNowText--pgznJ {
  font-size: 14em;
  text-transform: uppercase;
  text-align: center;
  font-weight: 700;
}

.HotelCard-module__mainPriceText--wIEbi {
  font-size: 18em;
}

.HotelCard-module__infoPriceText--GSy_s {
  font-size: 14em;
}

.HotelsSection-module__hotels--hGJyx {
  max-width: 1392px;
  margin-inline: auto;
  margin-bottom: 60em;
  margin-top: 45em;
}

@media (min-width: 1152px) {

.HotelsSection-module__hotels--hGJyx {
    margin-bottom: 100em;
}
  }

.HotelsSection-module__hotelsHeader--l_Qr5 {
  display: flex;
  flex-direction: column;
  gap: 16em;
  padding-inline: 16em;
  margin: 0 0 45em;
}

@media (min-width: 500px) {

.HotelsSection-module__hotelsHeader--l_Qr5 {
    gap: 22em;
}
  }

@media (min-width: 1152px) {

.HotelsSection-module__hotelsHeader--l_Qr5 {
    gap: 28em;
    margin-top: 80em;
    margin-bottom: 80em;
}
  }

.HotelsSection-module__hotelsTitle--zeGAj {
  margin: 0;
  line-height: 1.1;
  text-align: center;
  font-family: var(--font-secondary, "ABCGravity", sans-serif);
  font-weight: 900;
  font-size: 32em;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: break-word;
}

@media (min-width: 500px) {

.HotelsSection-module__hotelsTitle--zeGAj {
    font-size: 40em;
}
  }

@media (min-width: 1152px) {

.HotelsSection-module__hotelsTitle--zeGAj {
    font-size: 65em;
}
  }

.HotelsSection-module__hotelsSubtitle--EAJhs {
  margin: 0;
  font-family: var(--font-main, "Aeonik", sans-serif);
  font-weight: 700;
  line-height: 1;
  text-align: center;
  font-size: 14em;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: break-word;
}

@media (min-width: 500px) {

.HotelsSection-module__hotelsSubtitle--EAJhs {
    font-size: 17em;
}
  }

@media (min-width: 1152px) {

.HotelsSection-module__hotelsSubtitle--EAJhs {
    font-size: 23em;
}
  }

.HotelsSection-module__hotelsList--jWxYc {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(343px, 440px));
  justify-content: center;
  grid-gap: 30px 13px;
  gap: 30px 13px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.HotelsSection-module__hotelCard--aCwpN {
  justify-content: space-between;
  min-height: 100%;
}

.HotelsSection-module__hotelCard--aCwpN:hover [class*="HotelCard-module__priceInfo"] {
  background-color: #000000;
}


.SectionTitle-module__title--uw_Rp {
  font-family: ABCGravity, sans-serif;
  font-weight: 900;
  line-height: 0.9;
  font-size: inherit;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.SectionTitle-module__titleText--l9CQA {
  font-size: var(--title-fs-mobile, 44em);
  overflow-wrap: break-word;
  word-break: break-word;
}

@media (min-width: 500px) {

.SectionTitle-module__titleText--l9CQA {
    font-size: var(--title-fs-tablet, 52em);
}
  }

@media (min-width: 1152px) {

.SectionTitle-module__titleText--l9CQA {
    font-size: var(--title-fs-desktop, 80em);
}
  }

.SectionTitle-module__center--JEIDM {
  text-align: center;
}

.SectionTitle-module__left--fJSYS {
  text-align: left;
}

.SectionTitle-module__centerMobile--Rnb_P {
  text-align: center;
}

.SectionTitle-module__leftMobile--_VKay {
  text-align: left;
}

@media (min-width: 500px) {
  .SectionTitle-module__centerTablet--Eh73B {
    text-align: center;
  }

  .SectionTitle-module__leftTablet--Uftlk {
    text-align: left;
  }
}

@media (min-width: 1152px) {
  .SectionTitle-module__centerDesktop--xng2q {
    text-align: center;
  }

  .SectionTitle-module__leftDesktop--RJrMW {
    text-align: left;
  }
}

.Text-module__textContainer--iQeaj {
  font-family: var(--font-main, "Aeonik", sans-serif);
  line-height: var(--text-line-height, 1.23);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.Text-module__text--X_l8e {
  font-size: 16em;
  overflow-wrap: break-word;
  word-break: break-word;
}

.Text-module__center--oxKFj {
  text-align: center;
}

.Text-module__left--RzKTw {
  text-align: left;
}

.Text-module__centerMobile--QfiCW {
  text-align: center;
}

.Text-module__leftMobile--ZT3Y6 {
  text-align: left;
}

@media (min-width: 500px) {
  .Text-module__centerTablet--QTnx5 {
    text-align: center;
  }

  .Text-module__leftTablet--Oy43k {
    text-align: left;
  }
}

@media (min-width: 1152px) {
  .Text-module__text--X_l8e {
    font-size: 20em;
  }

  .Text-module__centerDesktop--RWenh {
    text-align: center;
  }

  .Text-module__leftDesktop--Bw5gb {
    text-align: left;
  }
}

.SectionHeader-module__sectionHeader--gdRdN {
  display: flex;
  flex-direction: column;
  gap: 16em;
  margin-top: 45em;
  margin-bottom: 45em;
}
@media (min-width: 500px) {
  .SectionHeader-module__sectionHeader--gdRdN {
    gap: 22em;
}
  }
@media (min-width: 1152px) {
  .SectionHeader-module__sectionHeader--gdRdN {
    gap: 28em;
    margin-top: 80em;
    margin-bottom: 80em;
}
  }


.HeroSection-module__hero--lpuv4 {
  background-color: #ccc;
  background-repeat: no-repeat;
  background-image: var(--background-mobile);
  background-position: center;
  background-size: cover;
  display: flex;
}

@media (min-width: 500px) {

.HeroSection-module__hero--lpuv4 {
    background-image: var(--background-desktop);
}

    @media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 1.5dppx) {

.HeroSection-module__hero--lpuv4 {
      background-image: var(--background-desktop-2x);
}
    }
  }

@media (min-width: 1152px) {

.HeroSection-module__hero--lpuv4 {
    background-image: var(--background-desktop-2x);
}
  }

.HeroSection-module__heroContainer--brVZ4 {
  display: flex;
  justify-content: var(--slogan-justify-content, end);
  width: 100%;
  max-width: 1448px;
  margin: 0 auto;
  padding: 26em 15em;
  box-sizing: border-box;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: break-word;
}

@media (min-width: 500px) {

.HeroSection-module__heroContainer--brVZ4 {
    padding: 16em 44em;
    min-height: 320em;
}
  }

@media (min-width: 1152px) {

.HeroSection-module__heroContainer--brVZ4 {
    min-height: 670em;
}
  }

.HeroSection-module__slogan--rRTe6 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: var(--slogan-align-items, flex-end);
  width: auto;
  text-align: var(--slogan-text-align, right);
  font-family: var(--font-secondary, "ABCGravity", sans-serif);
  font-weight: 900;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: break-word;
}

.HeroSection-module__sloganText--_hwUn {
  font-size: var(--slogan-font-size-mobile, 45em);
  line-height: 90%;
  text-transform: uppercase;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: break-word;
}

@media (min-width: 500px) {

.HeroSection-module__sloganText--_hwUn {
    font-size: var(--slogan-font-size-tablet, 60em);
}
  }

@media (min-width: 1152px) {

.HeroSection-module__sloganText--_hwUn {
    font-size: var(--slogan-font-size-desktop, 115em);
}
  }

.HeroSection-module__sloganYellow--lIwpd {
  color: #f5d742;
}

.HeroSection-module__sloganWhite--SWr8l {
  color: #fff;
}

.HeroSection-module__heroLogo--t3ggG {
  width: 33em;
}

@media (min-width: 500px) {

.HeroSection-module__heroLogo--t3ggG {
    width: 49em;
}
  }

@media (min-width: 1152px) {

.HeroSection-module__heroLogo--t3ggG {
    width: 97em;
}
  }


@keyframes Button-module__spin--lWtk7 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.Button-module__text--holIg {
  font-size: var(--button-font-size, 14em);
  white-space: nowrap;
  text-transform: uppercase;
}

.Button-module__root--Knp7O {
  all: unset;
  display: inline-flex;
  font-family: Aeonik, sans-serif;
  font-weight: var(--button-font-weight, 700);
  cursor: pointer;
  box-sizing: border-box;
  line-height: var(--button-line-height, 1);
  color: var(--button-color);
  background-color: var(--button-bg);
  align-items: center;
  justify-content: center;
  padding: var(--button-padding-vertical, 0) var(--button-padding-horizontal, 0);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: all 0.2s;
}

@media (hover: hover) and (pointer: fine) {
    /* [class] нужны, чтоб повысить специфичность выставления переменных при ховере и пр. */
    .Button-module__root--Knp7O[class]:hover {
      --button-bg: var(--button-bg-hover);
      --inner-border-width: 2em;
    }

    .Button-module__root--Knp7O[class]:focus {
      --button-bg: var(--button-bg-focus);
      --inner-border-width: 2em;
    }

    .Button-module__root--Knp7O[class]:active {
      --button-bg: var(--button-bg-active);
      --inner-border-width: 3em;
    }
  }

.Button-module__root--Knp7O[class]:disabled {
    cursor: default;
    --button-bg: var(--button-bg-disabled);
    --button-color: var(--button-color-disabled);
    --inner-border-color: var(--disabled-border-color);
    --inner-border-width: 1em;
  }

.Button-module__root--Knp7O[class]:disabled .Button-module__text--holIg {
      opacity: var(--disabled-text-opacity, 0.4);
    }

.Button-module__hidden--Q6Ztq {
  visibility: hidden;
}

.Button-module__s--o9reb {
  --button-font-weight: 400;
  --button-padding-vertical: 11em;
  --button-padding-horizontal: 24em;
  --spinner-size: 18em;
}

.Button-module__m--ZGRqJ {
  --button-padding-vertical: 16em;
  --button-padding-horizontal: 40em;
  --spinner-size: 24em;
}

@media (min-width: 1152px) {
    .Button-module__withMediaDimension--Z_A5M.Button-module__s--o9reb {
      --button-font-size: 16em;
      --button-padding-horizontal: 32em;
    }

    .Button-module__withMediaDimension--Z_A5M.Button-module__m--ZGRqJ {
      --button-font-size: 16em;
    }
  }

@media (min-width: 1536px) {
    .Button-module__withMediaDimension--Z_A5M.Button-module__s--o9reb {
      --button-font-size: 18em;
      --spinner-size: 24em;
    }

    .Button-module__withMediaDimension--Z_A5M.Button-module__m--ZGRqJ {
      --button-font-size: 20em;
      --button-padding-horizontal: 52em;
      --button-padding-vertical: 18em;
      --spinner-size: 28em;
    }
  }

.Button-module__primary--V9FFQ {
  --button-color: #fff;
}

.Button-module__primary--V9FFQ.Button-module__purple--biF8d {
    --button-bg: rgba(140, 30, 255, 1);
    --button-bg-hover: rgba(169, 86, 255, 1);
    --button-bg-active: rgba(140, 30, 255, 1);
    --button-bg-focus: rgba(169, 86, 255, 1);
    --button-bg-disabled: rgba(197, 143, 255, 1);
    --button-color-disabled: #fff;
    --disabled-text-opacity: 1;
  }

.Button-module__primary--V9FFQ.Button-module__black--Iz790 {
    --button-bg: #000;
    /* Стилей черной primary-кнопки пока нет в дизайне
     При необходимости можно тут имплементировать */
  }

.Button-module__secondary--_9J0r {
  --button-bg: transparent;
  box-shadow: inset 0 0 0 var(--inner-border-width, 1px)
    var(--inner-border-color);
}

.Button-module__secondary--_9J0r.Button-module__black--Iz790 {
    --inner-border-color: #000;
    --disabled-border-color: rgba(128, 128, 128, 1);
    --button-color: #000;
  }

.Button-module__secondary--_9J0r.Button-module__white--l3jcr {
    --inner-border-color: #fff;
    --disabled-border-color: rgba(128, 128, 128, 1);
    --button-color: #fff;
    --button-color-disabled: rgba(128, 128, 128, 1);
  }

.Button-module__isLoading--u5f2m {
  pointer-events: none;
}

.Button-module__spinner--Zj28d {
  width: var(--spinner-size);
  height: var(--spinner-size);
  border-radius: 50%;
  box-sizing: border-box;
  display: inline-flex;
  background: transparent;
  position: absolute;
}

.Button-module__spinner--Zj28d::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 50%;
    background: conic-gradient(
      from 180deg,
      color-mix(in srgb, var(--button-color, #fff) 0%, transparent) 0deg,
      color-mix(in srgb, var(--button-color, #fff) 30%, transparent) 90deg,
      color-mix(in srgb, var(--button-color, #fff) 80%, transparent) 180deg,
      var(--button-color, #fff) 270deg,
      color-mix(in srgb, var(--button-color, #fff) 0%, transparent) 360deg
    );
    animation: Button-module__spin--lWtk7 1s linear infinite;
    -webkit-mask: url("data:image/svg+xml,%3csvg width=%27100%27 height=%27100%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3cdefs%3e%3cmask id=%27ring%27%3e%3crect width=%27100%27 height=%27100%27 fill=%27white%27/%3e%3ccircle cx=%2750%27 cy=%2750%27 r=%2725%27 fill=%27black%27/%3e%3c/mask%3e%3c/defs%3e%3crect width=%27100%27 height=%27100%27 fill=%27white%27 mask=%27url%28%23ring%29%27/%3e%3c/svg%3e");
            mask: url("data:image/svg+xml,%3csvg width=%27100%27 height=%27100%27 xmlns=%27http://www.w3.org/2000/svg%27%3e%3cdefs%3e%3cmask id=%27ring%27%3e%3crect width=%27100%27 height=%27100%27 fill=%27white%27/%3e%3ccircle cx=%2750%27 cy=%2750%27 r=%2725%27 fill=%27black%27/%3e%3c/mask%3e%3c/defs%3e%3crect width=%27100%27 height=%27100%27 fill=%27white%27 mask=%27url%28%23ring%29%27/%3e%3c/svg%3e");
    -webkit-mask-size: 100% 100%;
            mask-size: 100% 100%;
  }

.Section-module__section--qmgjG {
  --abm-side-padding: 18em;
  padding: 80em var(--abm-side-padding);
  color: var(--text-color);
  font-size: 1px;
}

.Section-module__themeYellow--TpLu_ {
  --text-color: var(--color-black, #000);
  background-color: var(--color-yellow, #FEDD00);
}

.Section-module__themeBlack--S5jGY {
  --text-color: var(--color-white, #fff);
  background-color: var(--color-black, #000);
}

.Section-module__themeWhite--o5h6a {
  --text-color: var(--color-black, #000);
  background-color: var(--color-white, #fff);
}

.Section-module__withTopBorder--olQtQ {
  border-top: 4px solid #8C1EFF;
}

.Section-module__content--z4_Ix {
  max-width: 1600em;
  margin: auto;
}

@media (min-width: 1152px) {
  .Section-module__section--qmgjG {
    --abm-side-padding: 24em;
    padding-bottom: 100em;
  }
}


.Header-module__root--MyGKu {
  font-family: Aeonik, sans-serif;
  background-color: var(--bg-color);
  position: relative;
  padding: 0 !important;
}

.Header-module__root--MyGKu,
.Header-module__header--Ie2CT {
  height: 74em;
  box-sizing: border-box;
  background-color: var(--bg-color);
}

.Header-module__content--o5UCS {
  padding-left: 15em;
  padding-right: 28em;
  position: relative;
  height: 100%;
}

.Header-module__header--Ie2CT {
  position: relative;
}

.Header-module__hidden--gobBG {
  visibility: hidden;
}

.Header-module__compactHeader--LsvY9 {
  display: none;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
}

.Header-module__compactHeader--LsvY9.Header-module__visible--ococB {
    display: block;
  }

@media (max-width: 768px) and (pointer: coarse) and (hover: none) {

.Header-module__compactHeader--LsvY9 {
    position: fixed;
}
  }

.Header-module__white--xyBx0 {
  --general-color: #000;
  --bg-color: #fff;
  --logo-accent-color: #000;
}

.Header-module__black--q5X1d {
  --general-color: #fff;
  --bg-color: #000;
  --logo-accent-color: #fedd00;
}

.Header-module__yellow--W7Vw1 {
  --general-color: #000;
  --bg-color: rgba(254, 221, 0, 1);
  --logo-accent-color: #000;
}

.Header-module__leftContainer--T8NI2 {
  display: grid;
  grid-auto-flow: column;
  grid-gap: 60em;
  gap: 60em;
  grid-auto-columns: -webkit-min-content;
  grid-auto-columns: min-content;
  align-items: center;
  justify-self: start;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.Header-module__rightContainer--ZvsQ0 {
  display: grid;
  grid-auto-flow: column;
  justify-content: end;
  align-items: center;
  grid-gap: 16em;
  gap: 16em;
  justify-self: end;
  position: absolute;
  right: 0;
  height: 100%;
  z-index: 1;
}

.Header-module__navList--ikTYl {
  list-style: none;
  display: grid;
  grid-gap: 40em;
  gap: 40em;
  grid-auto-flow: column;
  padding: 0;
}

.Header-module__menuLink--yDAEH {
  all: unset;
  color: var(--menu-link-color);
  cursor: pointer;
  white-space: nowrap;
}

.Header-module__white--xyBx0 .Header-module__menuLink--yDAEH {
    --menu-link-color: var(--general-color);
  }

.Header-module__black--q5X1d .Header-module__menuLink--yDAEH {
    --menu-link-color: var(--general-color);
  }

.Header-module__menuLinkText--MV8k7 {
  font-size: 18em;
  line-height: 1.23;
}

.Header-module__subMenuOpener--7Gf68 {
  padding-right: 20em;
  position: relative;
}

.Header-module__subMenuOpener--7Gf68::after {
    content: "";
    width: 17em;
    height: 17em;
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTciIGhlaWdodD0iMTciIHZpZXdCb3g9IjAgMCAxNyAxNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMi4zMTk4MiA2LjQxMDE2QzIuNTM2OTYgNi42MjcyOSA2LjMxOTc3IDEwLjQ2NzYgOC4zMTk4MiAxMi40MTAyTDE0LjMxOTggNi40MTAxNiIgc3Ryb2tlPSIjOEMxRUZGIiBzdHJva2Utd2lkdGg9IjEuNSIvPgo8L3N2Zz4K) no-repeat right center;
    position: absolute;
    right: 0;
    top: 2em;
    background-size: cover;
  }

.Header-module__subMenuOpener--7Gf68.Header-module__subMenuOpenerActive--hM0jl::after {
    transform: rotate(180deg) translateY(-1em);
  }

.Header-module__subNavList--opWlU {
  display: none;
  position: absolute;
  background: var(--bg-color);
  top: 100%;
  border: 1em solid rgba(191, 191, 191, 1);
  gap: 20em;
  padding: 20em 18em 18em;
  min-width: 146em;
  max-width: 180em;
}

.Header-module__subNavList--opWlU .Header-module__menuLink--yDAEH {
    white-space: unset;
  }

.Header-module__subNavList--opWlU.Header-module__subNavListOpened--mebR2 {
    display: grid;
  }

.Header-module__burgerMenuContainer--GmhQc {
  display: grid;
  justify-self: end;
  align-self: center;
}

.Header-module__burgerMenuButton--sm0Lo {
  all: unset;
  cursor: pointer;
  display: inline-grid;
}

.Header-module__burgerMenu--SUEsD {
  padding: 20em 18em 18em;
  display: grid;
  grid-gap: 20em;
  gap: 20em;
  grid-auto-rows: -webkit-min-content;
  grid-auto-rows: min-content;
  grid-auto-columns: 1fr;
  position: absolute;
  z-index: 10000;
  top: 100%;
  right: 0;
  border-left: 1em solid rgba(191, 191, 191, 1);
  border-bottom: 1em solid rgba(191, 191, 191, 1);
  background-color: var(--burger-menu-bg);
  width: 282em;
}

@media (max-width: 768px) and (pointer: coarse) and (hover: none) {

.Header-module__burgerMenu--SUEsD {
    width: -webkit-fill-available;
}
  }

.Header-module__white--xyBx0 .Header-module__burgerMenu--SUEsD {
    --burger-menu-bg: rgba(255, 255, 255, 0.9);
  }

.Header-module__black--q5X1d .Header-module__burgerMenu--SUEsD {
    --burger-menu-bg: rgba(0, 0, 0, 0.8);
    --burger-menu-border-color: rgba(191, 191, 191, 1);
  }

.Header-module__yellow--W7Vw1 .Header-module__burgerMenu--SUEsD {
    --burger-menu-bg: rgba(254, 221, 0, 0.9);
    --burger-menu-border-color: rgba(0, 0, 0, 1);
  }

.Header-module__burgerMenu--SUEsD .Header-module__navList--ikTYl {
    grid-auto-flow: row;
    gap: 20em;
  }

.Header-module__logo--V8O4g {
  height: 60em;
}

.Header-module__burgerButtons--gDROa {
  display: grid;
  grid-gap: 16em;
  gap: 16em;
}

.Header-module__separator--lw7LB {
  height: 1em;
  background: var(--general-color);
}

@media (max-width: 1399px) {
  .Header-module__navList--ikTYl {
    gap: 32em;
  }

  .Header-module__menuLinkText--MV8k7 {
    font-size: 16em;
  }

  .Header-module__root--MyGKu,
  .Header-module__header--Ie2CT {
    height: 58em;
  }

  .Header-module__logo--V8O4g {
    height: 38em;
  }
}

@media (min-width: 1400px) and (max-width: 1919px) {
  .Header-module__navList--ikTYl {
    gap: 32em;
  }

  .Header-module__menuLinkText--MV8k7 {
    font-size: 16em;
  }

  .Header-module__root--MyGKu,
  .Header-module__header--Ie2CT {
    height: 74em;
  }

  .Header-module__logo--V8O4g {
    height: 52em;
  }
}

@media (min-width: 1920px) {
  .Header-module__root--MyGKu,
  .Header-module__header--Ie2CT {
    height: 84em;
  }

  .Header-module__logo--V8O4g {
    height: 60em;
  }
}

