@charset "UTF-8";
/*!*
 * ВНИМАНИЕ! Этот файл генерируется автоматически.
 * Не пишите сюда ничего вручную, все такие правки будут потеряны.
 * Читайте ./README.md для понимания.
 */
/**
 * Преобразование пикселей в rem на основе переменной с базовым размером шрифта.
 * @param  {number} $px Число пикселей (с единицами измерения или без)
 * @param  {string} Число пикселей, размер контентного шрифта на проекте
 * @return {string} Результат преобразования $px в rem
 */
/* open-sans-regular - latin_cyrillic */
@font-face {
  font-family: 'Open Sans';
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  src: local("Open Sans Regular"), local("OpenSans-Regular"), url("../fonts/open-sans-v16-latin_cyrillic-regular.woff2") format("woff2"), url("../fonts/open-sans-v16-latin_cyrillic-regular.woff") format("woff"); }
/* open-sans-600 - latin_cyrillic */
@font-face {
  font-family: 'Open Sans';
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  src: local("Open Sans SemiBold"), local("OpenSans-SemiBold"), url("../fonts/open-sans-v16-latin_cyrillic-600.woff2") format("woff2"), url("../fonts/open-sans-v16-latin_cyrillic-600.woff") format("woff"); }
@-ms-viewport {
  width: device-width; }
* {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }
[role='button'] {
  cursor: pointer; }
input[type='search'] {
  -webkit-appearance: textfield; }
a,
button,
[role='button'],
input,
label,
select,
textarea {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  margin: 0; }
button,
input {
  overflow: visible;
  text-transform: none; }
button,
html [type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button; }
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  padding: 0;
  border-style: none; }
input[type='date'],
input[type='time'],
input[type='datetime-local'],
input[type='month'] {
  -webkit-appearance: listbox; }
input[type='text'],
input[type='password'],
input[type='email'],
input[type='search'],
input[type='tel'],
textarea {
  -webkit-appearance: none; }
textarea {
  overflow: auto;
  resize: vertical; }
svg {
  fill: currentColor; }
a svg,
  button svg {
    pointer-events: none; }
svg:not(:root) {
    overflow: hidden; }
img {
  max-width: 100%;
  height: auto; }
a {
  background-color: transparent;
  text-decoration-skip: ink;
  -webkit-text-decoration-skip: objects; }
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  overflow: visible; }
a,
*:focus {
  -webkit-transition: all 0.4s;
  transition: all 0.4s; }
*:focus {
  outline-color: #97C1EC; }
.visually-hidden {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0; }
.page {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-width: 320px;
  height: 100%;
  font: 400 16px/32px "Open Sans", Helvetica, sans-serif;
  color: #333333;
  background-color: white;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -ms-overflow-style: scrollbar;
  -ms-text-size-adjust: 100%; }
.page__body {
    height: 100%;
    margin: 0; }
.page__canvas {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%; }
.page__header {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
.page__content {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
    margin-top: 24px; }
.page__content--index {
      margin-top: 0; }
.page__title {
    margin-top: 0;
    margin-bottom: 32px;
    font: 600 32px/48px "Open Sans", Helvetica, sans-serif; }
.page__sub-title {
    margin-top: 0;
    margin-bottom: 16px;
    font: 600 24px/40px "Open Sans", Helvetica, sans-serif; }
.page__sidebar {
    margin-bottom: 24px; }
.page__sidebar--hide {
      display: block; }
.page__footer {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-top: auto; }
.page__wrapper {
    max-width: 1240px;
    width: 100%;
    margin: 0 auto;
    padding-left: 16px;
    padding-right: 16px; }
.page__wrapper--with-sidebar {
      display: grid;
      grid-template-columns: calc(21% - 32px) calc(79% - 32px);
      grid-column-gap: 32px; }
.page__wrapper--with-right-sidebar {
      grid-template-columns: calc(79% - 32px) calc(21% - 32px);
      grid-column-gap: 32px; }
.page__highlight {
    background-color: #f5fcff;
    padding: 16px 32px;
    font-weight: 600;
    border-radius: 12px;
    margin-bottom: 48px; }
.page__img-note {
    margin-top: -32px !important;
    margin-bottom: 48px !important;
    font: 400 15px/24px "Open Sans", Helvetica, sans-serif !important;
    color: gray; }
.page__grid {
    display: grid;
    grid-gap: 24px; }
.page__grid--c3 {
      grid-template-columns: repeat(3, 1fr); }
.page__grid--c2 {
      grid-template-columns: repeat(2, 1fr); }
.page__block {
    margin-bottom: 56px !important; }
.page__grey {
    background-color: #fcfcfc;
    padding: 32px 0; }
.link {
  text-decoration: none;
  color: #0088CC;
  /* //Ссылка */ }
.link:hover {
    text-decoration: underline;
    color: #005580;
    /* //Ссылка: при наведении */ }
.link:active {
    color: #1ab3ff;
    /* //Ссылка: активная */ }
.text {
  margin-bottom: 24px; }
.text h1 {
    margin-top: 0;
    margin-bottom: 18px;
    font: 600 32px/40px "Open Sans", Helvetica, sans-serif; }
.text h2 {
    margin-top: 0;
    margin-bottom: 8px;
    font: 600 24px/32px "Open Sans", Helvetica, sans-serif; }
.text h3 {
    margin-top: 0;
    margin-bottom: 8px;
    font: 600 18px/28px "Open Sans", Helvetica, sans-serif; }
.text p {
    margin-top: 0;
    margin-bottom: 16px;
    font: 400 17px/32px "Open Sans", Helvetica, sans-serif; }
.text p:last-child {
      margin-bottom: 0; }
.text ul {
    margin-top: 16px;
    margin-bottom: 24px;
    padding-left: 32px;
    font: 400 18px/32px "Open Sans", Helvetica, sans-serif;
    list-style-type: disc; }
.text ol {
    margin-top: 16px;
    margin-bottom: 24px;
    padding-left: 32px;
    font: 400 18px/32px "Open Sans", Helvetica, sans-serif; }
.text li {
    margin-top: 0;
    margin-bottom: 8px; }
.text li:last-child {
      margin-bottom: 0; }
.text a {
    text-decoration: none;
    color: #0088CC;
    /* //Ссылка */ }
.text a:hover {
      text-decoration: underline;
      color: #005580;
      /* //Ссылка: при наведении */ }
.text a:active {
      color: #1ab3ff;
      /* //Ссылка: активная */ }
.text table {
    width: 100%;
    margin-top: 16px;
    margin-bottom: 32px;
    border-collapse: collapse; }
.text td,
  .text th {
    padding: 16px;
    font: 400 16px/32px "Open Sans", Helvetica, sans-serif;
    vertical-align: middle; }
.text tr:nth-child(even) {
    background-color: #fcfcfc;
    /* //Таблица: чётные строки */ }
.text tr:first-child td,
  .text tr th {
    padding: 16px;
    font: 600 13px/24px "Open Sans", Helvetica, sans-serif;
    vertical-align: top;
    border-bottom: 2px solid #1ab3ff;
    /* //Таблица: разделитель шапки */ }
.text hr {
    display: block;
    height: 1px;
    margin-top: 16px;
    margin-bottom: 16px;
    padding: 0;
    border: 0;
    background: #f2f2f2; }
.text blockquote {
    margin: 16px 0 24px;
    padding-left: 24px;
    font: 400 18px/32px "Open Sans", Helvetica, sans-serif;
    border-left: 4px solid #0088CC;
    /* //Цитата: маркер */ }
.text img {
    display: block;
    margin: 16px 0 32px;
    border-radius: 8px; }
.text__note {
    font: 400 14px/24px "Open Sans", Helvetica, sans-serif !important;
    color: gray;
    margin-top: -24px !important; }
.header {
  position: relative; }
.header__hero {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 400px;
    border-radius: 8px;
    background-image: url("../img/hero.webp");
    background-position: center;
    background-size: cover; }
.header__hero::before {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      content: '';
      background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.3)));
      background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.3)); }
.header__hero-content {
    position: relative;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%;
    padding: 24px;
    text-align: center;
    color: #fff;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
.header__hero-title {
    font: 600 32px/48px "Open Sans", Helvetica, sans-serif;
    max-width: 800px;
    margin-top: 0;
    margin-bottom: 16px; }
.header__hero-subtitle {
    font: 400 18px/32px "Open Sans", Helvetica, sans-serif;
    max-width: 600px;
    margin-top: 0;
    margin-bottom: 32px; }
.header__hero-subtitle:last-child {
      margin-bottom: 0; }
.header__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 24px 0;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
.header__left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 24px; }
.header__logo {
    -ms-flex-negative: 0;
        flex-shrink: 0; }
.header__logo img {
      display: block;
      width: 100%;
      height: auto; }
.header__description {
    font: 400 16px/24px "Open Sans", Helvetica, sans-serif;
    max-width: 160px;
    color: #666666;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
.header__right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
.header__contacts {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
.header__email {
    font: 400 16px/24px "Open Sans", Helvetica, sans-serif;
    margin-right: 24px;
    -webkit-transition: color .3s;
    transition: color .3s;
    text-decoration: none;
    color: #333333; }
.header__email:hover {
      color: #0088CC; }
.header__phone {
    font: 600 20px/28px "Open Sans", Helvetica, sans-serif;
    -webkit-transition: color .3s;
    transition: color .3s;
    white-space: nowrap;
    text-decoration: none;
    color: #333333; }
.header__phone:hover {
      color: #0088CC; }
.advantages__wrapper {
  max-width: 1240px;
  width: 100%;
  margin: 0 auto;
  padding-left: 24px;
  padding-right: 24px; }
.advantages__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px; }
.advantages__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center; }
.advantages__icon {
  width: 94px;
  height: 94px;
  margin-bottom: 16px; }
.advantages__icon img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       font-family: "object-fit:contain";
       object-fit: contain; }
.advantages__title {
  font: 600 18px/28px "Open Sans", Helvetica, sans-serif;
  color: #333333;
  margin: 0 0 8px; }
.advantages__text {
  font: 400 14px/24px "Open Sans", Helvetica, sans-serif;
  color: #666666;
  margin: 0; }
.call-to-action__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  border: 4px solid #ec6566;
  border-radius: 16px;
  padding: 40px 32px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
.call-to-action__title {
  font: 600 40px/48px "Open Sans", Helvetica, sans-serif;
  margin-top: 0;
  margin-bottom: 16px; }
.call-to-action__sub-title {
  font: 600 24px/32px "Open Sans", Helvetica, sans-serif;
  margin-top: 0;
  margin-bottom: 4px; }
.call-to-action__item {
  margin-top: 0;
  margin-bottom: 24px; }
.call-to-action__item:last-child {
    margin-bottom: 0; }
.call-to-action p {
  font: 400 15px/24px "Open Sans", Helvetica, sans-serif;
  margin-top: 0;
  margin-bottom: 8px; }
.call-to-action p:last-child {
    margin-bottom: 0; }
.call-to-action__button {
  font: 400 16px/16px "Open Sans", Helvetica, sans-serif;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  max-width: 280px;
  padding: 18px 48px;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  text-decoration: none;
  color: white;
  border: none;
  border-radius: 32px;
  background-color: #e6e6e6;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 0;
  margin-bottom: 24px; }
.call-to-action__button:last-child {
    margin-bottom: 0; }
.call-to-action__button--primary {
    background: linear-gradient(135deg, #e42122 0%, #8e1b9a 50%, #0088cc 100%); }
.call-to-action__button--primary:hover {
      -webkit-transform: translateY(-3px);
              transform: translateY(-3px); }
.call-to-action__note {
  font: 400 15px/24px "Open Sans", Helvetica, sans-serif;
  margin-bottom: 24px; }
.call-to-action .call-to-action--glare {
  position: relative;
  overflow: hidden; }
.call-to-action .call-to-action--glare:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 200%;
  content: '';
  -webkit-transform: translate(-100%, -25%) rotate(10deg);
          transform: translate(-100%, -25%) rotate(10deg);
  -webkit-animation: glare 5s infinite;
          animation: glare 5s infinite;
  opacity: .5;
  background: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(40%, #fff), color-stop(60%, #fff), to(transparent));
  background: linear-gradient(to left, transparent 0%, #fff 40%, #fff 60%, transparent 100%);
  -webkit-filter: blur;
          filter: blur; }
@-webkit-keyframes glare {
  0% {
    -webkit-transform: translate(-100%, -25%) rotate(10deg);
            transform: translate(-100%, -25%) rotate(10deg); }
  20% {
    -webkit-transform: translate(100%, -25%) rotate(10deg);
            transform: translate(100%, -25%) rotate(10deg); }
  100% {
    -webkit-transform: translate(100%, -25%) rotate(10deg);
            transform: translate(100%, -25%) rotate(10deg); } }
@keyframes glare {
  0% {
    -webkit-transform: translate(-100%, -25%) rotate(10deg);
            transform: translate(-100%, -25%) rotate(10deg); }
  20% {
    -webkit-transform: translate(100%, -25%) rotate(10deg);
            transform: translate(100%, -25%) rotate(10deg); }
  100% {
    -webkit-transform: translate(100%, -25%) rotate(10deg);
            transform: translate(100%, -25%) rotate(10deg); } }
.attraction__wrapper {
  display: grid;
  grid-template-columns: 1fr 2fr;
  grid-gap: 32px; }
.attraction__img img {
  display: block;
  border-radius: 8px;
  background-color: white;
  -webkit-box-shadow: 0 0 16px rgba(0, 0, 0, 0.07);
          box-shadow: 0 0 16px rgba(0, 0, 0, 0.07); }
.attraction__text {
  margin-bottom: 0; }
.attraction__title {
  margin-top: 0;
  margin-bottom: 8px;
  font: 600 24px/40px "Open Sans", Helvetica, sans-serif; }
.attraction__sub-title {
  margin-top: 0;
  margin-bottom: 12px;
  font: 400 18px/24px "Open Sans", Helvetica, sans-serif; }
.attraction__price {
  font: 400 15px/16px "Open Sans", Helvetica, sans-serif;
  display: inline-block;
  margin-bottom: 24px;
  padding: 8px 18px;
  text-align: center;
  color: white;
  border-radius: 24px;
  background-color: #08c; }
.attraction__text {
  font: 400 16px/24px "Open Sans", Helvetica, sans-serif;
  margin-bottom: 24px; }
.attraction__tag {
  padding: 0;
  margin: 0;
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font: 400 15px/15px "Open Sans", Helvetica, sans-serif;
  margin-bottom: 24px; }
.attraction__tag li {
    border: 1px solid #1ab3ff;
    padding: 6px 12px;
    border-radius: 16px; }
.attraction__tag--opposite li {
    border-color: #ec6566; }
.photo-wall__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0; }
.photo-wall__link {
  position: relative;
  overflow: hidden; }
.photo-wall__image {
  display: block;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s; }
.photo-wall__image:hover {
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
.guide-carousel__wrapper {
  position: relative;
  max-width: 1240px;
  width: 100%;
  margin: 0 auto;
  padding-left: 32px;
  padding-right: 32px; }
.guide-carousel__arrows {
  position: absolute;
  top: 0;
  right: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px; }
.guide-carousel__arrow {
  -webkit-transition: all 0.4s;
  transition: all 0.4s; }
.guide-carousel__arrow:hover {
    color: #0088CC; }
.guide-carousel__arrow-next {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }
.guide-carousel__swiper {
  text-align: center; }
.guide-carousel__list {
  padding: 0;
  margin: 0;
  list-style-type: none; }
.guide-carousel__item {
  height: auto;
  max-width: 590px;
  width: 100%;
  text-align: left; }
.guide-carousel__swiper {
  text-align: center;
  padding-left: 24px;
  padding-right: 0; }
.guide-carousel__show-all {
  font: 400 16px/16px "Open Sans", Helvetica, sans-serif;
  display: inline-block;
  padding: 12px 32px;
  text-decoration: none;
  color: white;
  border: 2px solid white;
  border-radius: 200px; }
.guide-carousel__show-all:hover {
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    color: #0088CC;
    border-color: white;
    background-color: white; }
.labels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0;
  margin: 0;
  list-style-type: none; }
.labels__item {
    font: 400 14px/14px "Open Sans", Helvetica, sans-serif;
    color: white;
    padding: 8px 12px;
    border-radius: 200px;
    background-color: #0088CC;
    -webkit-box-shadow: 0 0 16px rgba(0, 0, 0, 0.07);
            box-shadow: 0 0 16px rgba(0, 0, 0, 0.07);
    margin-right: 8px; }
.labels__item:last-child {
      margin-right: 0; }
.labels__item--actual {
      background: linear-gradient(74.83deg, #ffa169 -8.91%, #a6093c 103.41%); }
.labels__item--archive {
      background-color: #b3b3b3; }
.labels__item--post {
      background: linear-gradient(135deg, #e42122 0%, #8e1b9a 50%, #0088cc 100%); }
.footer {
  padding: 40px 0 24px;
  background-color: #f7f7f7; }
.footer__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 48px;
    margin-bottom: 24px; }
.footer__contacts, .footer__rec {
    font: 400 14px/24px "Open Sans", Helvetica, sans-serif; }
.footer__contacts p, .footer__rec p {
      margin-top: 0;
      margin-bottom: 4px; }
.footer__contacts p:last-child, .footer__rec p:last-child {
        margin-bottom: 0; }
.footer__copyright {
    font: 400 13px/24px "Open Sans", Helvetica, sans-serif; }
.guide-block {
  width: 100%;
  height: 100%; }
.guide-block__wrapper {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100%; }
.guide-block__title {
    font: 600 24px/32px "Open Sans", Helvetica, sans-serif;
    display: block;
    text-decoration: none;
    color: white;
    margin-top: 0;
    margin-bottom: 16px; }
.guide-block__image {
    display: block;
    border-radius: 12px 12px 0 0; }
.guide-block__text {
    font: 400 15px/24px "Open Sans", Helvetica, sans-serif;
    padding: 24px 40px 40px;
    border-radius: 0 0 12px 12px;
    background-color: #0088CC;
    color: white;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
.guide-block__text p {
      margin-top: 0;
      margin-bottom: 12px; }
.guide-block__text p:last-child {
        margin-bottom: 0; }
.guide-block__text ul {
      padding: 0;
      margin: 0;
      list-style-type: none; }
.guide-block__labels {
    position: absolute;
    z-index: 1;
    top: 24px;
    left: 16px; }
.guide-block__city {
    font-size: 14px;
    margin-bottom: 4px !important; }
.modal {
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  visibility: hidden;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity .3s ease, visibility .3s ease;
  transition: opacity .3s ease, visibility .3s ease;
  opacity: 0;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
.modal--hidden {
  visibility: hidden;
  opacity: 0; }
.modal--visible {
  visibility: visible;
  opacity: 1; }
.modal__content {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 90%;
  max-width: 400px;
  min-height: 200px;
  padding: 40px 24px;
  -webkit-transition: opacity .3s ease-out, -webkit-transform .3s ease-out;
  transition: opacity .3s ease-out, -webkit-transform .3s ease-out;
  transition: transform .3s ease-out, opacity .3s ease-out;
  transition: transform .3s ease-out, opacity .3s ease-out, -webkit-transform .3s ease-out;
  -webkit-transform: translateY(-50px);
          transform: translateY(-50px);
  text-align: center;
  opacity: 0;
  border-radius: 16px;
  background-color: #fff;
  -webkit-box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
          box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
.modal--visible .modal__content {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1; }
.modal__title {
  font: 600 24px/32px "Open Sans", Helvetica, sans-serif;
  margin-top: 0;
  margin-bottom: 24px;
  margin-bottom: 8px;
  color: #333; }
.modal__subtitle {
  font: 400 15px/24px "Open Sans", Helvetica, sans-serif;
  margin-top: 0;
  margin-bottom: 24px;
  color: #666; }
.modal__success-message {
  padding: 24px;
  text-align: center; }
.modal__success-message .modal__title {
  margin-bottom: 16px; }
.modal__success-message .modal__subtitle {
  margin-bottom: 0; }
.form__group {
  margin-bottom: 16px;
  text-align: left; }
.form__group--checkbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 8px;
    margin-bottom: 24px; }
.form__label {
  font: 400 13px/24px "Open Sans", Helvetica, sans-serif;
  display: block;
  color: #333; }
.form__input {
  font-size: 16px;
  width: 100%;
  padding: 12px;
  border: 1px solid #ccc;
  border-radius: 4px; }
.form__label--policy {
  font-size: 12px;
  display: inline; }
.modal__close-button {
  font-size: 24px;
  line-height: 1;
  position: absolute;
  top: 12px;
  right: 12px;
  padding: 4px;
  cursor: pointer;
  -webkit-transition: color .3s ease;
  transition: color .3s ease;
  color: #999;
  border: none;
  background: none; }
.modal__close-button:hover {
  color: #333; }
.usp__wrapper {
  border: 2px solid #1ab3ff;
  border-radius: 8px;
  padding: 16px 24px; }
.usp_title {
  margin-top: 0;
  margin-bottom: 8px;
  font: 600 24px/40px "Open Sans", Helvetica, sans-serif; }
.usp__text {
  margin-top: 0;
  margin-bottom: 8px; }
.usp__text:last-child {
    margin-bottom: 0; }
.cookie-banner {
  position: fixed;
  left: 50%;
  bottom: 24px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: #ffffff;
  border-radius: 16px;
  -webkit-box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
          box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
  z-index: 1000;
  max-width: 550px;
  width: 100%; }
.cookie-banner__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 24px;
  gap: 24px; }
.cookie-banner__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 16px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }
.cookie-banner__icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 48px;
  height: 48px;
  background: #D6E9FF;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
.cookie-banner__image {
  width: 32px;
  height: 32px; }
.cookie-banner__text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }
.cookie-banner__title {
  font-size: 16px;
  font-weight: 600;
  color: #333333;
  margin: 0 0 8px 0;
  line-height: 1.25; }
.cookie-banner__description {
  font-size: 14px;
  color: #666666;
  margin: 0;
  line-height: 1.4; }
.cookie-banner__button {
  background: #007aff;
  color: #ffffff;
  border: 2px solid #007aff;
  border-radius: 45px;
  padding: 12px 24px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none; }
.cookie-banner__button:hover,
.cookie-banner__button:focus {
  background: #ffffff;
  color: #007aff;
  border: 2px solid #007aff;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none; }
.cookie-banner--hidden {
  display: none; }
@media screen and (max-width: 992px) {
        .page__sidebar--hide {
          display: none; }
        .page__wrapper--with-sidebar {
          display: block; }
        .page__wrapper--with-right-sidebar {
          display: block; }
    .photo-wall__list {
      grid-template-columns: repeat(3, 1fr); } }
@media screen and (max-width: 768px) {
    .header__block {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; }
    .header__left {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      margin-bottom: 16px;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 16px; }
    .header__logo {
      min-width: auto;
      margin-right: 0; }
    .header__description {
      width: 100%;
      min-width: auto;
      text-align: center; }
    .header__contacts {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .header__email {
      margin-right: 0;
      margin-bottom: 8px; }
      .header__hero {
        height: 300px;
        border-radius: 8px; }
      .header__hero-title {
        font: 600 18px/28px "Open Sans", Helvetica, sans-serif; }
      .header__hero-subtitle {
        font: 400 14px/24px "Open Sans", Helvetica, sans-serif;
        margin-top: 0;
        margin-bottom: 16px; }
        .header__hero-subtitle:last-child {
          margin-bottom: 0; }
    .advantages__grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 16px; }
    .advantages__icon {
      width: 72px;
      height: 72px; }
    .advantages__title {
      font-size: 14px;
      line-height: 18px; }
    .advantages__text {
      font-size: 11px;
      line-height: 18px; }
    .photo-wall__list {
      grid-template-columns: repeat(2, 1fr); }
    .guide-carousel__wrapper {
      padding-left: 16px;
      padding-right: 0; }
    .guide-carousel__arrows {
      display: none; }
    .guide-carousel__swiper {
      padding-left: 16px; }
  .guide-carousel__swiper-slide {
    max-width: 330px; }
      .labels__item {
        font: 400 12px/12px "Open Sans", Helvetica, sans-serif;
        padding: 6px 10px; }
      .footer__block {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        gap: 16px; }
      .guide-block__title {
        font-size: 22px;
        margin-top: 0;
        margin-bottom: 12px; }
      .guide-block__text {
        font: 400 12px/20px "Open Sans", Helvetica, sans-serif;
        padding: 16px 24px 32px; }
        .guide-block__text p {
          margin-top: 0;
          margin-bottom: 8px; }
          .guide-block__text p:last-child {
            margin-bottom: 0; } }
@media (max-width: 768px) {
  .cookie-banner {
    left: 16px;
    right: 16px;
    bottom: 16px;
    -webkit-transform: none;
            transform: none;
    max-width: none;
    width: auto; }
  .cookie-banner__container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    padding: 16px;
    gap: 16px; }
  .cookie-banner__content {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .cookie-banner__button {
    width: 100%; } }
@media screen and (max-width: 480px) {
        .page__grid--c3 {
          grid-template-columns: 1fr; }
        .page__grid--c2 {
          grid-template-columns: 1fr; }
      .text h2 {
        font: 600 18px/26px "Open Sans", Helvetica, sans-serif; }
      .text h3 {
        margin-top: 0;
        margin-bottom: 4px;
        font: 600 16px/24px "Open Sans", Helvetica, sans-serif; }
      .text p {
        font: 400 14px/26px "Open Sans", Helvetica, sans-serif; }
      .text ul {
        font: 400 14px/26px "Open Sans", Helvetica, sans-serif; }
      .text ol {
        font: 400 14px/26px "Open Sans", Helvetica, sans-serif; }
      .text blockquote {
        font: 400 14px/26px "Open Sans", Helvetica, sans-serif; }
      .text__note {
        font: 400 12px/24px "Open Sans", Helvetica, sans-serif !important; }
    .call-to-action__box {
      padding: 18px; }
    .call-to-action__title {
      font: 600 32px/40px "Open Sans", Helvetica, sans-serif; }
    .call-to-action__sub-title {
      font: 600 18px/24px "Open Sans", Helvetica, sans-serif; }
    .attraction__wrapper {
      grid-template-columns: 1fr; }
    .attraction__text {
      font-size: 14px; }
    .attraction__tag {
      font-size: 14px; }
    .usp_title {
      font: 600 20px/32px "Open Sans", Helvetica, sans-serif; }
    .usp__text {
      font: 400 14px/24px "Open Sans", Helvetica, sans-serif; } }
@media (max-width: 425px) {
  .cookie-banner {
    left: 8px;
    right: 8px;
    bottom: 8px;
    -webkit-transform: none;
            transform: none; }
  .cookie-banner__container {
    padding: 12px; }
  .cookie-banner__content {
    gap: 12px; }
  .cookie-banner__icon {
    width: 40px;
    height: 40px; }
  .cookie-banner__image {
    width: 32px;
    height: 32px; }
  .cookie-banner__title {
    font-size: 14px; }
  .cookie-banner__description {
    font-size: 11px; } }
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline !important; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  a[href^='#']:after,
  a[href^='javascript:']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #999 !important;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  table {
    border-collapse: collapse !important; }
    table td,
    table th {
      background-color: #fff !important; } }

/*# sourceMappingURL=style.min.css.map */
