@media (max-width: 2560px) {
  html {
    font-size: calc(100vw / 256);
  }
}

@media (min-width: 1921px) {
  .page-banner {
    height: 150rem;
  }

  .baikal .page-images-banner {
    height: 150rem;
  }

  .golden-sands .page-images-banner {
    height: 150rem;
  }

  .greater-caucasus .page-images-banner {
    height: 150rem;
  }
}

@media (max-width: 1920px) {
  html {
    font-size: calc(100vw / 192);
  }

  /* home */
  .home-slide {
    background-position: center;
  }

  .home-slide-row {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  /*article*/
  .article-map {
    left: 44.5%;
    right: auto;
  }

  /*pages*/
  .sochi .page-banner {
    padding-top: 13rem;
  }

  .page-images-banner {
    height: 117rem;
  }

  .golden-sands .page-images-banner {
    height: 105rem;
  }

  .greater-caucasus .page-images-banner {
    height: 106rem;
  }

  .pages-callback {
    right: 10%;
  }

  .arkhyz .page-images-banner {
    height: 105.5rem;
  }

  .cluster .page-images-banner {
    height: 105.5rem;
  }

  .coin .page-images-banner {
    height: 106rem;
  }

  .patriot .page-images-banner {
    height: 106rem;
  }

  .aquapark .page-images-banner {
    height: 104rem;
  }

  .yaroslavich .page-images-banner {
    height: 106rem;
  }

  .miner .page-images-banner {
    height: 106rem;
  }

  .domkovka .page-images-banner {
    height: 106rem;
  }

  .kabardinka .page-images-banner {
    height: 90rem;
  }

  .miner .page-images-content {
    max-width: 80rem;
  }

  .miner .page-images-content-title {
    font-size: 7.9rem;
    line-height: 93%;
  }

  .racetrack .page-images-banner {
    height: 105rem;
  }

  .castle .page-images-banner {
    height: 105rem;
  }

  .bannoye .page-images-banner {
    height: 105rem;
  }

  /*sliders*/
}

@media (max-width: 1600px) {
  html {
    font-size: calc(100vw / 160);
  }

  /* home */
  .home-slide {
    background-position: center;
  }

  /*sliders*/
  .map-pin-card {
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
  }

  /*pages*/
  .pages-callback {
    right: 0;
  }
}

@media (max-width: 1440px) {
  html {
    font-size: calc(100vw / 144);
  }

  /*pages*/
  .page-banner {
    /*padding-top: 12rem;*/
  }

  .manzherok .page-banner {
    padding-top: 14rem;
  }

  .kamelia .page-banner {
    padding-top: 14rem;
  }

  .gaspra .page-banner {
    padding-top: 14rem;
  }

  /* home */
  .home-slider-decor {
    left: 1rem;
  }
}

@media (max-width: 1200px) {
  html {
    font-size: calc(100vw / 120);
  }

  /*header*/
  .header-contacts {
    display: none;
  }

  .header-burger {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 0.2rem;
    margin-left: auto;
    padding: 0.6rem 0.4rem;
    width: 2.4rem;
    height: 2.4rem;
  }

  .header-burger svg {
    stroke: black;
  }

  .header-white .header-burger svg {
    stroke: #fff;
  }

  .header-burger span {
    display: block;
    width: 100%;
    height: 0.16rem;
    background-color: #000;
  }

  .header-white .header-burger span {
    background-color: #fff;
  }

  .header-fixed-bottom {
    display: block;
    width: 100%;
  }

  .header-fixed-phone {
    display: block;
    margin: 0 auto 1.6rem auto;
    font-family: var(--font3);
    font-weight: 400;
    font-size: 2.2rem;
    text-align: center;
    color: #272835;
  }

  .header-fixed-phone:hover,
  .header-fixed-phone:focus,
  .header-fixed-phone:active {
    color: #d61436;
  }

  .header-fixed-callback {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2.8rem auto;
    padding: 1rem 3.1rem;
    width: 34.3rem;
    height: 6.4rem;
    font-family: var(--font3);
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 150%;
    letter-spacing: 0.11em;
    text-align: center;
    text-transform: uppercase;
    color: #000;
    border: 1px solid #000;
    border-radius: 9.9rem;
    background: #ebeae8;
    overflow-y: hidden;
  }

  .header-fixed-callback:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
    border-radius: 9.9rem;
    opacity: 0;
    transition: opacity 0.3s;
  }

  .header-fixed-callback:hover:before,
  .header-fixed-callback:focus:before,
  .header-fixed-callback:active:before {
    opacity: 1;
  }

  .header-fixed-bottom .header-fixed-socials {
    display: flex;
    justify-content: center;
  }

  .header-fixed-bottom .header-fixed-social {
    width: 3.6rem;
    height: 3.6rem;
  }

  .header-fixed-bottom .header-fixed-socials svg {
    fill: #d61436;
    fill-opacity: 1;
  }

  /*sliders*/
  .home-slider-back {
    left: auto;
    right: 4rem;
  }

  /*pages*/
  .kabardinka .page-images-content {
    width: 100%;
  }

  .racetrack .page-images-content-title {
    font-size: 11.8rem;
    white-space: nowrap;
  }

  .gaspra.page-cards {
    padding-top: 11.4rem;
  }

  .racetrack.page-double {
    padding-top: 11rem;
  }

  /*footer*/
  .centers-page .footer-title {
    font-size: 13rem;
  }

  .hotels-page .footer-title {
    font-size: 12.5rem;
  }

  .projects-page .footer-title {
    font-size: 12.5rem;
  }

  /*article*/
  .article-map {
    max-width: 66.3rem;
    overflow: hidden;
  }

  .article-map img {
    width: auto;
  }

  .aside-author {
    margin-right: 0.5rem;
    margin-left: 2rem;
  }

  .aside-quantity {
    margin: auto 0.5rem 151rem 6rem;
  }
}

@media (max-width: 1200px) and (orientation: portrait) {
  /* home */
  .home-slide {
    background-position: center -13rem;
  }
}

@media (max-width: 1200px) and (orientation: landscape) {
  .home-slide {
    height: 150vh;
    background-position: center -7rem;
  }

  .home-content-more {
    margin-bottom: 20rem;
  }
}

@media (max-width: 1024px) {
  html {
    font-size: calc(100vw / 102.4);
  }

  /*sliders*/
  .home-slide-content .home-slide-title {
    font-size: 5.9rem;
  }

  .home-slide-place-item {
    font-size: 3.6rem;
  }

  /*pages*/
  .page-title {
    font-size: 5.2rem !important;
  }

  .page-big-title,
  .page-small-title,
  .greater-caucasus .page-images-content-title,
  .coin .page-images-content-title,
  .cluster .page-small-title,
  .manzherok .page-heading {
    font-size: 10.8rem !important;
  }

  .page-double-grid {
    flex-wrap: wrap;
  }

  .page-double-left {
    max-width: 100%;
  }

  .page-double-right {
    max-width: 100%;
  }

  .bannoye .page-double-left {
    max-width: 100%;
  }

  .page-images-clouds {
    height: 20rem;
  }

  .page-images-clouds img {
    height: 100%;
  }

  .page-images-banner,
  .golden-sands .page-images-banner,
  .greater-caucasus .page-images-banner,
  .arkhyz .page-images-banner,
  .cluster .page-images-banner {
    height: 65rem !important;
  }

  .coin .page-images-banner {
    height: 75rem !important;
  }

  .miner .page-images-banner {
    height: 90rem !important;
  }

  .bannoye .page-images-banner {
    height: 90rem;
  }

  .page-images-content,
  .golden-sands .page-images-content,
  .greater-caucasus .page-images-content,
  .arkhyz .page-images-content,
  .cluster .page-images-content,
  .coin .page-images-content {
    top: 18.4rem !important;
  }

  .page-image {
    padding: 5rem 1rem 0 1rem;
  }

  .miner .page-images-content-title {
    font-size: 7.9rem !important;
  }

  .page-comment {
    max-width: 65rem;
  }

  .page-comments-title {
    margin: 0 auto 4.7rem auto;
    max-width: 35rem;
  }

  .page-separator {
    margin: 3rem 0;
  }

  .page-form-title {
    max-width: 82rem;
  }

  .page-images-title {
    font-size: 6.6rem;
  }

  .pages-callback-two {
    right: 2rem;
    bottom: auto;
    left: auto;
    top: -7rem;
  }

  ._smoke-decor-1:before {
    width: 75rem;
    height: 62rem;
  }

  ._smoke-decor-2:before {
    width: 85rem;
    height: 42rem;
  }

  ._smoke-decor-3:before {
    width: 85rem;
    height: 53rem;
  }

  ._smoke-decor-4:before {
    width: 85rem;
    height: 37rem;
  }

  .resorts-page ._smoke-decor-1:before {
    width: 84rem;
    height: 73rem;
  }

  .resorts-page ._smoke-decor-2:before {
    width: 69rem;
    height: 31rem;
  }

  .resorts-page ._smoke-decor-3:before {
    width: 80rem;
    height: 60rem;
  }

  .resorts-page ._smoke-decor-4:before {
    width: 85rem;
    height: 64rem;
  }

  .hotels-page ._smoke-decor-1:before {
    width: 85rem;
    height: 62rem;
  }

  .hotels-page ._smoke-decor-2:before {
    width: 85rem;
  }

  .hotels-page ._smoke-decor-3:before {
    height: 61rem;
  }

  .hotels-page ._smoke-decor-4:before {
    height: 48rem;
  }

  .pages-callback {
    right: 6%;
    bottom: 3.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    width: 7.7rem;
    height: 7.7rem;
    background: none;
  }

  .pages-callback-title {
    display: none;
  }

  .pages-callback-button {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
  }

  .pages-callback-button:before {
    /*display: none;*/
  }

  .pages-callback-button-icon {
    display: block;
    width: 4rem;
    height: 4rem;
  }

  .pages-callback-button-text {
    display: none;
  }

  /*footer*/
  .footer-title {
    font-size: 10.5rem;
  }

  .resorts-page .footer-title {
    font-size: 6rem;
  }

  .centers-page .footer-title {
    font-size: 11rem;
  }

  .page-decor {
    left: -1rem;
  }

  .article {
    padding-top: 16.3rem;
  }

  .article-main {
    margin-left: 5rem;
  }

  /*sliders*/
  .home-slide-lilac .home-slide-map-pin-2 {
    top: 7.2rem;
    left: 10.4rem;
  }

  .home-slide-lilac .home-slide-map-pin-1 {
    top: 12.9rem;
    left: 8rem;
  }

  .home-slide-lilac .home-slide-map-pin-3 {
    top: 35.6rem;
    left: 52.4rem;
  }

  .home-slide-lilac .home-slide-map-pin-4 {
    top: 37.3rem;
    right: 16rem;
  }

  .home-slide-red .home-slide-map-pin-1 {
    top: 13rem;
  }

  .home-slide-red .home-slide-map-pin-2 {
    top: 15rem;
  }

  .home-slide-red .home-slide-map-pin-3 {
    top: 34rem;
    left: 43rem;
  }

  .home-slide-red .home-slide-map-pin-4 {
    top: 29rem;
    left: 52.5rem;
  }

  .home-slide-green .home-slide-map-pin-1 {
    top: 12.5rem;
    left: 10rem;
  }

  .home-slide-green .home-slide-map-pin-2 {
    top: 9.3rem;
    left: 20.3rem;
  }

  .home-slide-green .home-slide-map-pin-3 {
    top: 12rem;
    left: 27rem;
  }

  .home-slide-green .home-slide-map-pin-4 {
    top: 18rem;
    left: 23.5rem;
  }

  .home-slide-grey .home-slide-map-pin-1 {
    top: 11.5rem;
    left: 10.5rem;
  }

  .home-slide-grey .home-slide-map-pin-2 {
    top: 10.1rem;
    left: 23.7rem;
  }

  .home-slide-grey .home-slide-map-pin-3 {
    top: 8rem;
    left: 39.7rem;
  }

  .home-slide-grey .home-slide-map-pin-4 {
    top: 13.7rem;
    left: 22.4rem;
  }

  .home-slide-violet .home-slide-map-pin-1 {
    top: 11.5rem;
    left: 13.3rem;
  }

  .home-slide-violet .home-slide-map-pin-2 {
    top: 11.5rem;
    left: 22.3rem;
  }

  .home-slide-violet .home-slide-map-pin-3 {
    top: 15rem;
    left: 23rem;
  }

  .home-slide-violet .home-slide-map-pin-4 {
    top: 44rem;
    right: 32.8rem;
  }
}

@media (max-width: 992px) {
  html {
    font-size: calc(100vw / 99.2);
  }

  /*header*/
  .header-text .header-logo {
    max-width: 35.6rem;
  }

  .home-slide {
    background-position: center;
  }

  /*home*/
  .home-content-title {
    font-size: 6.5rem;
  }

  .home-content-desc {
    max-width: 50.9rem;
    font-size: 3.2rem;
  }

  .home-content-info {
    font-size: 2rem;
  }

  .home-slide {
    background-position: center;
  }

  .home-slide-row {
    display: block;
  }

  .home-slide-map {
    margin-top: 7rem;
  }

  /*pages*/
  .page-block {
    margin-bottom: 10rem;
  }

  .page-desc {
    max-width: 75rem;
  }

  .page-desc br {
    display: none;
  }

  .page-double {
    padding: 0 8rem 5rem 8rem;
    width: 100%;
  }

  .page-double-title {
    margin-bottom: 3rem;
  }

  .page-path {
    padding: 5rem 0 1.5rem 0;
  }

  .manzherok.page-path {
    padding: 5rem 0 1.5rem 0;
  }

  .arkhyz.page-path {
    padding: 10.9rem 0 1.5rem 0;
  }

  .patriot.page-path {
    padding: 5rem 0 1.5rem 0;
  }

  .sochi.page-path {
    padding: 5rem 0 1.5rem 0;
  }

  .aquapark.page-path {
    padding: 5rem 0 1.5rem 0;
  }

  .gaspra.page-path {
    padding: 5rem 0 1.5rem 0;
  }

  .racetrack.page-path {
    padding: 5rem 0 1.5rem 0;
  }

  .castle.page-path {
    padding: 5rem 0 1.5rem 0;
  }

  .racetrack.page-double {
    padding-top: 5rem;
  }

  .page-path-desc {
    margin: 0 auto 4rem auto;
  }

  .page-cards {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .manzherok.page-cards {
    padding-bottom: 5rem;
  }

  .manzherok .page-cards-strong {
    margin-bottom: 0;
  }

  .page-comments {
    padding-top: 5rem;
  }

  .page-image {
    margin: 0 auto 5rem auto;
  }

  .miner .page-image {
    margin: 0 auto 5rem auto;
  }

  .domkovka.page-images {
    padding-bottom: 5rem;
  }

  .domkovka.page-double {
    padding-top: 5rem;
  }

  .kabardinka .page-image {
    margin: 0 auto 5rem auto;
  }

  .page-cards-end {
    margin: 5rem auto 0 auto;
    max-width: 67.3rem;
    font-size: 3rem;
  }

  .page-cards-grid-three .page-card {
    width: 100%;
  }

  .coin.page-cards {
    padding-bottom: 5rem;
  }

  .gaspra.page-cards {
    padding-top: 5rem;
  }

  /*footer*/
  .hotels-page .footer-background-image {
    height: 70rem;
  }

  .projects-page .footer-background-image {
    height: 80rem;
  }

  .footer-content {
    top: 30.5%;
  }

  .projects-page .footer-title {
    white-space: normal;
    line-height: 1;
  }

  /* modal form */
  .modal-form {
    padding: 5rem 0.8rem 5rem 1.6rem;
  }
  .modal-form-container {
    padding: 8.7rem 0.8rem 8.7rem 0;
  }
}

@media (max-width: 992px) and (orientation: portrait) {
  .home-slide-map {
    margin-top: 23rem;
  }
}

@media (max-width: 992px) and (orientation: landscape) {
  .home-slide {
    min-height: 200vh;
  }
}

@media (max-width: 850px) {
  html {
    font-size: calc(100vw / 85);
  }

  /*header*/
  .header-control {
    display: none;
  }

  /*header fixed*/
  .header-fixed-wrapper {
    max-width: 100%;
  }

  /*home*/
  .home-slide {
    background-position: center;
  }

  .home-map-action-1 {
    top: 13.1rem;
  }

  .home-map-action-2 {
    top: 10.5rem;
  }

  .home-map-action-3 {
    top: 19rem;
  }

  .home-map-action-4 {
    top: 25rem;
  }

  .home-map-action-5 {
    top: 31.7rem;
  }

  /*pages*/
  .pages-callback {
    right: 2rem;
  }

  /*footer*/
  .footer-background-image {
    height: 60rem;
  }

  .centers-page .footer-title {
    font-size: 8rem;
  }

  .centers-page ._smoke-decor-1:before {
    left: 53%;
    width: 75rem;
    height: 51rem;
  }

  .centers-page ._smoke-decor-2:before {
    height: 38rem;
    width: 60rem;
  }

  .centers-page ._smoke-decor-3:before {
    width: 70rem;
    height: 28rem;
  }

  .centers-page ._smoke-decor-4:before {
    width: 70rem;
    height: 54rem;
  }

  /*article*/
  .article-title {
    font-size: 5.6rem;
  }

  /*sliders*/
  .map-pin-cards-mobile-slider .swiper-wrapper {
    align-items: center;
  }

  .home-slide-content .home-slide-title {
    font-size: 5.7rem;
  }

  .home-slide-place-item {
    font-size: 2.6rem;
  }

  .map-pin-card-wrapper {
    border-radius: 2.5rem;
  }

  .map-pin-cards-mobile-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    padding: 5rem 0;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.74);
    opacity: 0;
    visibility: hidden;
    transition:
      visibility 0.3s,
      opacity 0.3s;
    overflow-y: auto;
    pointer-events: none;
  }

  .map-pin-cards-mobile-wrapper._open {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
  }

  .map-pin-cards-mobile-inner {
    width: 100%;
  }

  .map-pin-cards-mobile-slider {
    width: 100%;
  }

  .home-slide-map-pin {
    display: none;
  }

  .home-slide-map-pin-button {
    display: none;
  }

  .map-pin-card-close {
    display: none;
  }

  .home-slide-map-pin-mobile {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 4.6rem;
    height: 6.5rem;
    transform: translate(-50%, -50%);
  }

  .home-slide-map-pin-mobile img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    animation: map-pin-bounce 2s infinite ease-in-out;
  }

  @keyframes map-pin-bounce {
    0%,
    100% {
      transform: translateY(0);
    }
    50% {
      transform: translateY(-1rem);
    }
  }

  .map-pin-cards-mobile-wrapper._open .map-pin-card-wrapper {
    opacity: 1;
    pointer-events: all;
  }

  .map-pin-card {
    position: static;
    display: flex;
    flex-direction: column;
    width: auto;
    height: 46.2rem;
    transition: height 0.3s;
    box-shadow: none;
    transform: none;
  }

  .map-pin-card-wrapper.swiper-slide-active .map-pin-card {
    height: 53rem;
  }

  .map-pin-cards-mobile-wrapper[data-type="lilac"] .map-pin-card-wrapper {
    background-color: #404788;
  }

  .map-pin-cards-mobile-wrapper[data-type="red"] .map-pin-card-wrapper {
    background-color: #9e4959;
  }

  .map-pin-cards-mobile-wrapper[data-type="green"] .map-pin-card-wrapper {
    background-color: #427042;
  }

  .map-pin-cards-mobile-wrapper[data-type="grey"] .map-pin-card-wrapper {
    background-color: #977c42;
  }

  .map-pin-cards-mobile-wrapper[data-type="violet"] .map-pin-card-wrapper {
    background-color: #7f4f9f;
  }

  .map-pin-cards-mobile-wrapper[data-type="lilac"] .map-pin-card-link {
    color: #404788;
  }

  .map-pin-cards-mobile-wrapper[data-type="red"] .map-pin-card-link {
    color: #9e4959;
  }

  .map-pin-cards-mobile-wrapper[data-type="green"] .map-pin-card-link {
    color: #427042;
  }

  .map-pin-cards-mobile-wrapper[data-type="grey"] .map-pin-card-link {
    color: #977c42;
  }

  .map-pin-cards-mobile-wrapper[data-type="violet"] .map-pin-card-link {
    color: #7f4f9f;
  }

  .map-pin-card-icon {
    display: none;
  }

  .map-pin-card-image {
    width: 100%;
    height: 22.5rem;
    border-radius: 2.5rem 2.5rem 0 0;
  }

  .map-pin-card-image img {
    border-radius: 2.5rem 2.5rem 0 0;
  }

  .map-pin-cards-mobile-close {
    position: absolute;
    top: 2rem;
    right: 2rem;
    z-index: 2;
  }

  .map-pin-cards-mobile-slider {
    padding: 5rem 0;
    height: max-content;
  }

  .map-pin-card-content:before {
    top: -1rem;
    left: 0;
    width: 100%;
    height: 9.8rem;
  }

  .map-pin-cards-mobile-wrapper[data-type="lilac"]
    .map-pin-card-content:before {
    background-image: url("../image/home/mobile/lilac-smoke.png");
  }

  .map-pin-cards-mobile-wrapper[data-type="red"] .map-pin-card-content:before {
    background-image: url("../image/home/mobile/red-smoke.png");
  }

  .map-pin-cards-mobile-wrapper[data-type="green"]
    .map-pin-card-content:before {
    background-image: url("../image/home/mobile/green-smoke.png");
  }

  .map-pin-cards-mobile-wrapper[data-type="grey"] .map-pin-card-content:before {
    background-image: url("../image/home/mobile/grey-smoke.png");
  }

  .map-pin-cards-mobile-wrapper[data-type="violet"]
    .map-pin-card-content:before {
    background-image: url("../image/home/mobile/violet-smoke.png");
  }

  .map-pin-card-content {
    padding: 2.4rem;
    width: 100%;
  }

  .map-pin-card-name {
    position: relative;
  }

  .home-slide-map {
    margin-top: 20rem;
  }

  .home-slide-row {
    background-size: cover;
  }

  .home-slide-map-image {
    margin-left: 0;
  }

  .home-slide-lilac .home-slide-row {
    /* background-image: url("../image/home/mobile/lilac-tab-net.png"); */
  }

  .home-slide-red .home-slide-row {
    /* background-image: url("../image/home/mobile/red-tab-net.png"); */
  }

  .home-slide-green .home-slide-row {
    /* background-image: url("../image/home/mobile/green-tab-net.png"); */
  }

  .home-slide-grey .home-slide-row {
    /* background-image: url("../image/home/mobile/grey-tab-net.png"); */
  }

  .home-slide-violet .home-slide-row {
    /* background-image: url("../image/home/mobile/violet-tab-net.png"); */
  }
}

@media (max-width: 850px) and (orientation: portrait) {
  .home-slide-row {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  .home-slide {
    background-position: center;
  }
}

@media (max-width: 850px) and (orientation: landscape) {
  .map-pin-cards-mobile-wrapper {
    align-items: flex-start;
  }
}

@media (max-width: 768px) {
  html {
    font-size: calc(100vw / 76.8);
  }

  /*home*/
  .home-container {
    background-position: 45% center;
  }

  .home-content {
    margin-top: 5rem;
  }

  .home-slide {
    background-position: center -8rem;
  }

  .home-slide-map {
    margin-top: 0rem;
  }

  /*pages*/
  .page-big-title,
  .page-small-title,
  .greater-caucasus .page-images-content-title,
  .coin .page-images-content-title,
  .cluster .page-small-title,
  .manzherok .page-heading {
    font-size: 8.8rem !important;
  }

  .page-title {
    font-size: 4.5rem !important;
  }

  .page-cards-grid {
    justify-content: center;
  }

  .page-card {
    width: 100%;
    max-width: 55rem;
  }

  .page-card-name {
    font-size: 3rem;
  }

  .page-images-row {
    padding: 0 2rem;
  }

  .page-cards-strong {
    font-size: 2.6rem;
  }

  .page-double-left {
    font-size: 2.8rem;
  }

  .page-cards-end {
    max-width: 54.3rem;
    font-size: 2.4rem;
  }

  ._smoke-decor-1:before {
    width: 60rem;
    height: 50rem;
  }

  ._smoke-decor-2:before {
    width: 60rem;
    height: 30rem;
  }

  ._smoke-decor-3:before {
    width: 60rem;
    height: 37rem;
  }

  ._smoke-decor-4:before {
    width: 60rem;
    height: 26rem;
  }

  .resorts-page ._smoke-decor-1:before {
    width: 60rem;
    height: 52rem;
  }

  .resorts-page ._smoke-decor-2:before {
    width: 60rem;
    height: 27rem;
  }

  .resorts-page ._smoke-decor-3:before {
    width: 60rem;
    height: 40rem;
  }

  .resorts-page ._smoke-decor-4:before {
    width: 60rem;
    height: 45rem;
  }

  .header-fly-navigate-info {
    display: none;
  }

  .header-fly-catalog {
    display: none;
  }

  .header-fly-catalog-mobile {
    display: flex;
    backdrop-filter: none;
    background: transparent;
  }

  .header-fly-catalog-mobile:before {
    display: none;
  }

  .header-fly-navigate {
    gap: 1.6rem;
    padding: 0;
    height: 4.5rem;
  }

  .pages-callback {
    right: auto;
    left: calc(50% + 10rem);
    width: 4.5rem;
    height: 4.5rem;
  }

  .pages-callback-button-icon {
    width: 2.7rem;
    height: 2.7rem;
  }

  .header-fly-catalog {
    padding: 0;
    width: 4.5rem;
    height: 4.5rem;
  }

  /*footer*/
  .footer-background-image {
    height: 65rem;
  }

  .footer-background-clouds {
    height: 20rem;
  }

  .footer-background-clouds img {
    height: 100%;
    object-fit: cover;
  }

  .hotels-page .footer-background-image {
    height: 76rem;
  }

  .hotels-page .footer-background-clouds {
    height: auto;
  }

  .hotels-page .footer-content {
    top: 45%;
  }

  .hotels-page .footer-title {
    font-size: 10.5rem;
  }

  .form-submit {
    height: 6.4rem;
    font-size: 1.8rem;
  }

  .footer-next {
    height: 6.4rem;
    width: 34.4rem;
    font-size: 1.8rem;
  }

  .footer-next-icon {
    flex-shrink: 0;
    width: 2.3rem;
    height: 2.2rem;
  }

  /*article*/
  .article-decor {
    display: none;
  }

  .article-main {
    margin-left: 0;
  }

  .article-aside {
    display: none;
  }

  .article-author-mobile {
    display: flex;
  }

  .article-author {
    max-width: 51rem;
  }

  .article-map {
    left: 22.5%;
  }
  .home-slider .home-slider-pagination {
    position: absolute;
    left: 0;
    bottom: 1.9rem;
    z-index: 1;
    display: flex;
    justify-content: center;
    gap: 0.6rem;
    padding: 0 1rem;
    width: 100%;
  }

  .home-slider .home-slider-pagination span {
    display: block;
    margin: 0 !important;
    width: 1.1rem;
    height: 1.1rem;
    border-radius: 50%;
    background-color: #fff;
    opacity: 0.5;
    transition: opacity 0.3s;
  }

  .home-slider-pagination .swiper-pagination-bullet-active {
    opacity: 1 !important;
  }
}

@media (max-width: 768px) and (orientation: landscape) {
  .home-slide {
    height: auto;
    min-height: 200vh;
  }

  .home-slide-map {
    margin-top: 10rem;
  }

  .home-slider .home-slider-pagination {
    display: flex;
  }
}

@media (max-width: 650px) {
  html {
    font-size: calc(100vw / 65);
  }

  .container {
    padding: 0 1.6rem;
  }

  /*header*/
  .header-container {
    padding: 0;
  }

  .header {
    padding: 1.8rem 1.6rem;
  }

  .header-logo {
    max-width: 28rem;
  }

  /*header fixed*/
  .header-fixed-wrapper {
    left: 0;
    transform: scale(0.3);
    opacity: 0;
    visibility: hidden;
    transition:
      transform 0.6s,
      opacity 0.3s,
      visibility 0.3s;
    pointer-events: none;
  }

  .header-fixed-wrapper._open {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
    pointer-events: all;
  }

  .header-fixed-socials {
    display: none;
  }

  .header-fixed-close {
    margin-left: auto;
  }

  .header-fixed-center {
    padding-top: 0.8rem;
    padding-bottom: 1rem;
  }

  .header-fixed-bottom {
    display: block;
    width: 100%;
  }

  .header-fixed-phone {
    display: block;
    margin: 0 auto 1.6rem auto;
    font-family: var(--font3);
    font-weight: 400;
    font-size: 2.2rem;
    text-align: center;
    color: #272835;
  }

  .header-fixed-phone:hover,
  .header-fixed-phone:focus,
  .header-fixed-phone:active {
    color: #d61436;
  }

  .header-fixed-callback {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2.8rem auto;
    padding: 1rem 3.1rem;
    width: 34.3rem;
    height: 6.4rem;
    font-family: var(--font3);
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 150%;
    letter-spacing: 0.11em;
    text-align: center;
    text-transform: uppercase;
    color: #000;
    border: 1px solid #000;
    border-radius: 9.9rem;
    background: #ebeae8;
    overflow-y: hidden;
  }

  .header-fixed-callback:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
    border-radius: 9.9rem;
    opacity: 0;
    transition: opacity 0.3s;
  }

  .header-fixed-callback:hover:before,
  .header-fixed-callback:focus:before,
  .header-fixed-callback:active:before {
    opacity: 1;
  }

  .header-fixed-bottom .header-fixed-socials {
    display: flex;
    justify-content: center;
  }

  .header-fixed-bottom .header-fixed-social {
    width: 3.6rem;
    height: 3.6rem;
  }

  .header-fixed-bottom .header-fixed-socials svg {
    fill: #d61436;
    fill-opacity: 1;
  }

  /*home*/
  .home-container {
    padding: 0;
    background-position: 45% 0;
    background-image: url(/image/home/mobile/net-mobile.png);
  }

  .home {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .home-map-image {
    position: absolute;
    top: 3rem;
    left: 0;
    z-index: 1;
    margin: 0;
    width: 100%;
  }

  .home-map-actions {
    position: absolute;
    top: 18.8rem;
    left: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.6rem;
    width: 100%;
  }

  .home-map-action {
    position: static;
    width: max-content;
    max-width: 100%;
  }

  .home-map-action-5 {
    order: 1;
  }

  .home-map-action-4 {
    order: 2;
  }

  .home-map-action-2 {
    order: 3;
  }

  .home-map-action-1 {
    order: 4;
  }

  .home-map-action-3 {
    order: 5;
  }

  .home-content {
    position: relative;
    z-index: 1;
    margin-top: 51rem;
    margin-bottom: 20%;
  }

  .home-slide {
    align-items: flex-start;
    background-position: center;
  }

  .home-slide-row {
    height: auto;
  }

  /*pages*/
  .page-container {
    padding: 0;
  }

  .page-images-container {
    padding: 0;
  }

  .page-title {
    font-size: 4.2rem;
  }

  .page-banner {
    padding-top: 0;
    height: 100rem;
  }

  .manzherok .page-banner {
    padding-top: 0;
  }

  .kamelia .page-banner {
    padding-top: 0;
  }

  .sochi .page-banner {
    padding-top: 0;
    height: auto;
  }

  .gaspra .page-banner {
    padding-top: 0;
  }

  .sochi .page-content {
    top: 6.8rem;
  }

  .gaspra .page-content {
    top: 7.8rem;
  }

  .gaspra .page-banner {
    height: 110rem;
  }

  .page-banner {
    padding-top: 0;
    height: 130rem;
  }

  .page-big-title,
  .page-small-title,
  .greater-caucasus .page-images-content-title,
  .coin .page-images-content-title,
  .cluster .page-small-title,
  .manzherok .page-heading {
    font-size: 7rem !important;
  }

  .page-desc {
    font-size: 1.6rem;
  }

  .page-separator {
    margin: 2.4rem 0;
  }

  .page-block {
    margin-bottom: 4rem;
  }

  .page-double {
    padding: 0 0 3.9rem 0;
  }

  .page-double-title {
    margin-bottom: 2.4rem;
    text-align: center;
  }

  .page-double-grid {
    gap: 2.4rem;
  }

  .page-double-left {
    padding: 0;
    font-size: 2.4rem;
  }

  .page-double-right {
    font-size: 1.6rem;
  }

  .page-path {
    padding: 4rem 0 0 0;
  }

  .kamelia.page-path {
    padding: 4rem 0 0 0;
  }

  .miner.page-path {
    padding: 4rem 0 0 0;
  }

  .domkovka.page-path {
    padding: 4rem 0 0 0;
  }

  .page-path-title {
    margin-bottom: 1.6rem;
  }

  .page-path-desc {
    margin: 0 auto 2.4rem auto;
    max-width: 50rem;
  }

  .page-path-steeps {
    padding-left: 4rem;
  }

  .path-steep {
    padding: 1.6rem 0.5rem 2rem 0;
    font-size: 1.6rem;
  }

  .path-steep:before {
    top: 2rem;
    left: -4rem;
    width: 2rem;
    height: 2rem;
  }

  .path-steep:after {
    top: 4.2rem;
    left: -2.9rem;
  }

  .page-quote {
    margin: 4rem auto 0 auto;
    font-size: 1.6rem;
  }

  .page-cards {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .page-cards-title {
    margin-bottom: 1.6rem;
  }

  .page-cards-subtitle {
    margin: 0 auto 2.4rem auto;
    max-width: 47rem;
    font-size: 2.4rem;
  }

  .page-cards-desc {
    margin: 0 auto 1.6rem auto;
    font-size: 1.6rem;
  }

  .page-cards-strong {
    margin: 0 auto 2.4rem auto;
    font-size: 2.4rem;
  }

  .page-card {
    padding: 2rem;
  }

  .page-cards-grid-three .page-card {
    padding: 2rem;
  }

  .page-card-name {
    margin-bottom: 1.6rem;
  }

  .page-cards-grid {
    gap: 2.4rem;
  }

  .page-card-item {
    padding: 1.2rem 0 1.2rem 1.6rem;
  }

  .page-comments {
    padding-top: 4rem;
    padding-bottom: 2.4rem;
  }

  .page-comments-title {
    margin: 0 auto 2.4rem auto;
  }

  .page-comment {
    padding: 2.4rem;
  }

  .kamelia .page-comment {
    padding: 2.4rem;
  }

  .page-comment-quotes {
    margin: 0 auto 2rem auto;
  }

  .page-comment-desc {
    font-size: 1.6rem;
  }

  .page-comment-author {
    margin-top: 2rem;
  }

  .page-comment-author-avatar {
    margin-bottom: 2.4rem;
  }

  .page-comment-author-job {
    max-width: 37rem;
  }

  .page-images-clouds {
    height: auto;
  }

  .page-images-banner,
  .golden-sands .page-images-banner,
  .greater-caucasus .page-images-banner,
  .arkhyz .page-images-banner,
  .cluster .page-images-banner,
  .coin .page-images-banner {
    height: 103rem !important;
  }

  .miner .page-images-banner {
    height: 140rem !important;
  }

  .racetrack .page-images-banner {
    height: 104rem !important;
  }

  .castle .page-images-banner {
    height: 110rem !important;
  }

  .arkhyz.page-images-block,
  .cluster.page-images-block {
    background: #fff;
  }

  .page-images-title {
    font-size: 4.5rem;
  }

  .page-images-desc {
    font-size: 1.6rem;
  }

  .page-image {
    margin-bottom: 4rem;
    padding: 2.4rem 0 0 0;
  }

  .yaroslavich .page-image {
    margin-bottom: 3.8rem;
    padding: 2.4rem 0 0 0;
  }

  .kabardinka .page-image {
    padding: 2.4rem 0 0 0;
  }

  .patriot .page-image {
    margin-bottom: 1.8rem;
    padding: 2rem 0;
  }

  .miner .page-image {
    padding: 2.4rem 0 0 0;
  }

  .golden-sands .page-images-content-title {
    width: 60rem;
  }

  .page-form-title {
    margin: 0 auto 1.6rem auto;
  }

  .page-form-desc {
    margin: 0 auto 2.4rem auto;
    max-width: 40rem;
    font-size: 1.6rem;
  }

  .castle.page-cards-desc {
    font-size: 2.4rem;
  }

  .castle .page-image {
    padding: 2rem 0 0 0;
  }

  .bannoye .page-image {
    padding: 0;
  }

  ._smoke-decor-1:before {
    width: 32rem;
    height: 75rem;
    left: auto;
    right: -1.8rem;
    background-image: url("../image/tourism/mobile/tourism-smoke-mobile-1.png");
    transform: none;
  }

  ._smoke-decor-2:before {
    left: auto;
    right: -1.7rem;
    bottom: auto;
    top: -5rem;
    width: 26rem;
    height: 78rem;
    background-image: url("../image/tourism/mobile/tourism-smoke-mobile-2.png");
    transform: none;
  }

  ._smoke-decor-3:before {
    left: auto;
    right: -1.8rem;
    bottom: auto;
    top: 1rem;
    width: 36rem;
    height: 104rem;
    transform: none;
    background-image: url("../image/tourism/mobile/tourism-smoke-mobile-3.png");
  }

  ._smoke-decor-4:before {
    width: 25rem;
    height: 73rem;
    top: -1rem;
    bottom: auto;
    left: auto;
    right: -1.8rem;
    transform: none;
    background-image: url("../image/tourism/mobile/tourism-smoke-mobile-4.png");
  }

  .resorts-page ._smoke-decor-1:before {
    left: auto;
    width: 42rem;
    height: 96rem;
    background-image: url("../image/resorts/mobile/resorts-smoke-mobile-1.png");
  }

  .resorts-page ._smoke-decor-2:before {
    left: auto;
    top: 0;
    width: 38rem;
    height: 89rem;
    background-image: url("../image/resorts/mobile/resorts-smoke-mobile-2.png");
  }

  .resorts-page ._smoke-decor-3:before {
    left: auto;
    width: 42rem;
    height: 96rem;
    background-image: url("../image/resorts/mobile/resorts-smoke-mobile-3.png");
  }

  .resorts-page ._smoke-decor-4:before {
    left: auto;
    top: 52%;
    bottom: auto;
    width: 41rem;
    height: 94rem;
    background-image: url("../image/resorts/mobile/resorts-smoke-mobile-4.png");
  }

  .centers-page ._smoke-decor-1:before {
    left: auto;
    top: 48%;
    width: 34rem;
    height: 78rem;
    background-image: url("../image/centers/mobile/centers-smoke-mobile-1.png");
  }

  .centers-page ._smoke-decor-2:before {
    left: auto;
    top: -1rem;
    height: 100rem;
    width: 44rem;
    background-image: url("../image/centers/mobile/centers-smoke-mobile-2.png");
  }

  .centers-page ._smoke-decor-3:before {
    left: auto;
    top: 82%;
    width: 35rem;
    height: 81rem;
    background-image: url("../image/centers/mobile/centers-smoke-mobile-3.png");
  }

  .centers-page ._smoke-decor-4:before {
    left: auto;
    top: 41%;
    width: 38rem;
    height: 89rem;
    background-image: url("../image/centers/mobile/centers-smoke-mobile-4.png");
  }

  .hotels-page ._smoke-decor-1:before {
    left: auto;
    bottom: auto;
    top: 49%;
    width: 40rem;
    height: 92rem;
    background-image: url("../image/hotels/mobile/hotels-smoke-mobile-1.png");
  }

  .hotels-page ._smoke-decor-2:before {
    left: auto;
    bottom: auto;
    top: 61rem;
    width: 37rem;
    height: 89rem;
    background-image: url("../image/hotels/mobile/hotels-smoke-mobile-2.png");
  }

  .hotels-page ._smoke-decor-3:before {
    top: 59%;
    bottom: auto;
    height: 61rem;
    width: 27rem;
    background-image: url("../image/hotels/mobile/hotels-smoke-mobile-3.png");
  }

  .hotels-page ._smoke-decor-4:before {
    top: 59%;
    bottom: auto;
    left: auto;
    height: 82rem;
    width: 36rem;
    background-image: url("../image/hotels/mobile/hotels-smoke-mobile-4.png");
  }

  /*footer*/
  .footer-container {
    padding: 0;
  }

  .footer-background-image {
    height: 73.7rem;
  }

  .footer-title {
    font-size: 5.4rem;
  }

  .centers-page .footer-background-clouds {
    height: auto;
  }

  .centers-page .footer-background-image {
    height: 80rem;
  }

  .centers-page .footer-content {
    top: 37%;
  }

  .centers-page .footer-title {
    margin: 0 auto 2.4rem auto;
    max-width: 35rem;
    font-size: 5.4rem;
  }

  .hotels-page .footer-title {
    line-height: 100%;
    white-space: normal;
  }

  .projects-page .footer-title {
    font-size: 8.4rem;
  }

  /*modal form*/
  .modal-form {
    left: 0;
    max-width: 100%;
    transform: scale(0.3);
    opacity: 0;
    visibility: hidden;
    transition:
      transform 0.6s,
      opacity 0.3s,
      visibility 0.3s;
    pointer-events: none;
  }

  .modal-form._open {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
    pointer-events: all;
  }

  /*article*/
  .article-map {
    max-width: 77%;
  }

  .article-map img {
    width: 100%;
  }

  .article-title {
    margin-bottom: 2.3rem;
    font-size: 4.5rem;
    font-family: var(--second-family);
  }

  .article-author-mobile {
    margin-bottom: 2.3rem;
  }

  .article-main h2,
  .article-main h3 {
    margin-bottom: 2.4rem;
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 4.2rem;
    line-height: 95%;
    letter-spacing: -0.06em;
    color: #3e3d41;
  }

  .article-text {
    font-size: 1.6rem;
    line-height: 156%;
  }

  .article-main blockquote {
    margin: 0 0 2.4rem 0;
    padding: 2rem;
    font-size: 1.6rem;
  }

  .article-main blockquote:before,
  .article-main blockquote:after {
    display: none;
  }

  .article-callback {
    padding: 2rem;
  }

  .article-callback-separator {
    display: none;
  }

  .article-callback-button {
    margin-bottom: 0;
    width: 100%;
    max-width: 30.3rem;
  }

  .article-callback-title {
    margin-bottom: 1.8rem;
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 3rem;
    line-height: 120%;
    text-align: center;
    color: #3e3d41;
  }

  .article-callback:before,
  .article-callback:after {
    display: none;
  }

  /*sliders*/
  .home-slider-container {
    padding: 0;
  }

  .home-slider-back {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }

  .home-slide-row {
    background-position: center -6rem;
  }
}

@media (max-width: 576px) {
  html {
    font-size: calc(100vw / 57.6);
  }

  /*header fixed*/
  .header-fixed-header {
    padding: 1.8rem 1.5rem 1.6rem 1.8rem;
  }

  .header-fixed-nav > ul > li {
    padding: 1rem 1rem 1rem 1.7rem;
  }

  .header-fixed-nav > ul > li > a {
    font-size: 3.4rem;
    letter-spacing: -0.04em;
  }

  .header-fixed-bottom .header-fixed-socials {
    gap: 2.3rem;
    margin: 0;
  }

  /*home*/
  .home-content-title {
    margin: 0 auto 1rem auto;
    max-width: 34rem;
    font-size: 6rem;
    line-height: 104%;
    letter-spacing: -0.04em;
  }

  .home-content-desc {
    max-width: 34.9rem;
    font-size: 2.3rem;
    line-height: 115%;
  }

  .home-content-info {
    margin-bottom: 2.4rem;
    font-size: 1.8rem;
  }

  .home-map-action {
    font-size: 1.8rem;
  }

  .home-content-more {
    width: 34.8rem;
  }

  .home-slider .home-slider-pagination {
    display: flex;
  }

  /*pages*/
  ._river-bgd:before {
    background-image: url("../image/tourism/mobile/tourism-river-seppia-mobile.png");
  }

  ._forest-bgd:before {
    background-image: url("../image/tourism/mobile/tourism-forest-mobile.png");
  }

  ._beach-bgd:before {
    background-image: url("../image/tourism/mobile/tourism-beach-seppia-mobile.png");
  }

  ._home-bgd:before {
    background-image: url("../image/tourism/mobile/tourism-home-seppia-mobile.png");
  }

  ._manzherok-bgd:before {
    background-image: url("../image/resorts/mobile/resorts-manzherok-seppia-mobile.png");
  }

  ._arkhyz-bgd:before {
    background-image: url("../image/resorts/mobile/resorts-arkhyz-seppia-mobile.png");
  }

  ._cluster-bgd:before {
    background-image: url("../image/resorts/mobile/resorts-cluster-seppia-mobile.png");
  }

  ._coin-bgd:before {
    background-image: url("../image/resorts/mobile/resorts-coin-seppia-mobile.png");
  }

  ._sochi-bgd:before {
    background-image: url("../image/centers/mobile/centers-sochi-seppia-mobile.png");
  }

  ._patriot-bgd:before {
    background-image: url("../image/centers/mobile/centers-patriot-seppia-mobile.png");
  }

  ._aquapark-bgd:before {
    background-image: url("../image/centers/mobile/centers-aquapark-seppia-mobile.png");
  }

  ._yaroslavich-bgd:before {
    background-image: url("../image/centers/mobile/centers-yaroslavich-seppia-mobile.png");
  }

  ._kamelia-bgd:before {
    background-image: url("../image/hotels/mobile/hotels-kamelia-seppia-mobile.png");
  }

  ._miner-bgd:before {
    background-image: url("../image/hotels/mobile/hotels-miner-seppia-mobile.png");
  }

  ._domkovka-bgd:before {
    background-image: url("../image/hotels/mobile/hotels-domkovka-seppia-mobile.png");
  }

  ._kabardinka-bgd:before {
    background-image: url("../image/hotels/mobile/hotels-kabardinka-seppia-mobile.png");
  }

  ._gaspra-bgd::before {
    background-image: url("../image/projects/mobile/projects-gaspra-seppia-mobile.png");
  }

  ._racetrack-bgd::before {
    background-image: url("../image/projects/mobile/projects-racetrack-seppia-mobile.png");
  }

  ._castle-bgd::before {
    background-image: url("../image/projects/mobile/projects-castle-seppia-mobile.png");
  }

  ._bannoye-bgd::before {
    background-image: url("../image/projects/mobile/projects-bannoye-seppia-mobile.png");
  }

  /*footer*/
  .footer-content {
    top: 24.9rem;
  }

  .footer-control {
    bottom: 7.6rem;
    gap: 2.4rem;
    flex-direction: column;
  }

  .resorts-page .footer-background-image {
    height: 82.3rem;
  }

  .hotels-page .footer-title {
    font-size: 5.4rem;
  }

  /*modal form*/
  .modal-form {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: 6.7rem 0.8rem 6.7rem 1.6rem;
  }

  .modal-form-container {
    padding: 7rem 0.8rem 7rem 0;
  }

  .modal-form-title {
    font-size: 3.7rem;
  }

  .form-control {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }

  .form-control-separator {
    width: 100%;
    height: 0.1rem;
  }

  /*article*/
  .article-title {
    margin-bottom: 2.3rem;
    font-size: 4.5rem;
    letter-spacing: -0.06em;
    line-height: 89%;
  }

  .article-map {
    left: auto;
    right: 0;
    max-width: 55%;
  }

  /*sliders*/
  .home-slide-map {
    margin-top: 1rem;
  }

  .home-slider-control {
    display: none;
  }

  .home-slider-more {
    margin-bottom: 5rem;
  }

  .home-slide {
    min-height: 100vh;
    height: auto;
  }

  .home-slide-row {
    background-position: center top;
  }

  .home-slide-map {
    margin-top: 7.5rem;
  }

  .home-slide-content {
    position: relative;
    margin-top: -0.8rem;
  }

  .home-slider-more {
    width: 34.8rem;
  }

  .home-slide[data-color="red"] .home-slide-map-pin-mobile {
    top: 56%;
    left: 52%;
  }

  .home-slide[data-color="red"] .home-slide-content {
    margin-top: 5.8rem;
    margin-bottom: 3rem;
  }

  .home-slide[data-color="green"] .home-slide-map-pin-mobile {
    top: 56%;
    left: 52%;
  }

  .home-slide[data-color="green"] .home-slide-content {
    margin-top: 6rem;
    margin-bottom: 2.8rem;
  }

  .home-slide[data-color="grey"] .home-slide-map-pin-mobile {
    top: 55%;
  }

  .home-slide[data-color="grey"] .home-slide-content {
    margin-top: -3.8rem;
    margin-bottom: 3.4rem;
  }

  .home-slide[data-color="violet"] .home-slide-map-pin-mobile {
    top: 56%;
  }

  .home-slide[data-color="violet"] .home-slide-content {
    margin-top: -0.8rem;
    margin-bottom: 3rem;
  }

  .home-slide[data-color="violet"] .home-slide-title {
    line-height: 106%;
  }
}

@media (max-width: 480px) {
  html {
    font-size: calc(100vw / 48);
  }

  ._mobile-hide {
    display: none;
  }

  /*header*/
  .header-logo {
    max-width: 21.8rem;
  }

  /* home */
  .home-slide {
    background-image: none;
  }

  /*pages*/
  .centers-page .page-label {
    max-width: 22.7rem;
    height: 5rem;
    line-height: 80%;
  }

  .page-banner {
    height: 95rem;
  }

  .manzherok .page-banner {
    height: 80rem;
  }

  .gaspra .page-banner {
    height: 95rem;
  }

  .racetrack .page-images-banner {
    height: 95rem !important;
  }

  .castle .page-images-banner {
    height: 95rem !important;
  }

  .kamelia .page-banner {
    height: auto;
  }

  .manzherok .page-content {
    top: 7rem;
  }

  .kamelia .page-content {
    top: 7.4rem;
  }

  .kamelia .page-title-firs {
    margin-bottom: 0.1rem;
    margin-top: 2.5rem;
  }

  .page-content .page-label {
    margin-bottom: 3.5rem;
  }

  .castle .page-label {
    margin-bottom: 3rem;
  }

  .page-title-firs {
    margin-bottom: 0;
  }

  .manzherok .page-block-title {
    margin-top: 4rem;
    margin-bottom: 2.5rem;
    transform: none;
  }

  .centers-page .page-title-firs {
    transform: none;
    margin-bottom: 2rem;
  }

  .page-desc {
    line-height: 153%;
  }

  .page-desc .span-mobile {
    display: block;
    margin: 0 auto;
    max-width: 20rem;
  }

  .manzherok .span-mobile {
    display: inline-block;
    margin: 0 auto;
    max-width: unset;
  }

  .page-double-left {
    line-height: 136%;
  }

  .page-double-grid {
    gap: 2.1rem;
  }

  .page-path-title {
    letter-spacing: -0.06em;
  }

  .centers-page .page-path-title {
    letter-spacing: -0.09em;
    white-space: nowrap;
  }

  .hotels-page .page-path-title {
    letter-spacing: -0.09em;
    white-space: nowrap;
  }

  .cluster .page-cards-desc {
    margin: 0 auto 2.2rem auto;
  }

  .page-path-desc {
    margin: 0 auto 2.2rem auto;
  }

  .page-path-steeps {
    padding-left: 3rem;
  }

  .path-steep:last-child {
    border-bottom: none;
  }

  .path-steep:before {
    width: 1.6rem;
    height: 1.6rem;
  }

  .path-steep:after {
    top: 4rem;
  }

  .centers-page .path-steep {
    line-height: 151%;
  }

  .hotels-page .path-steep {
    line-height: 148%;
  }

  .sochi.page-cards {
    padding-top: 0;
  }

  .sochi .page-cards-strong {
    margin: 0 auto 1rem auto;
  }

  .centers-page .page-cards-desc {
    line-height: 153%;
  }

  .centers-page .page-comment-desc {
    line-height: 150%;
  }

  .page-comment-author-avatar {
    margin-bottom: 1rem;
  }

  .centers-page .page-comment-author-avatar {
    margin-bottom: 1rem;
  }

  .patriot .page-images-content-title {
    white-space: normal;
  }

  .patriot .page-images-banner {
    height: 78rem !important;
  }

  .patriot .page-label {
    margin-bottom: 2rem;
  }

  .centers-page .page-images-title {
    margin-bottom: 2rem;
    margin-top: 2rem;
    transform: none;
  }

  .projects-page .page-block-title {
    transform: none;
  }

  .projects-page .page-images-title {
    transform: none;
    margin-top: 1rem;
    margin-bottom: 2rem;
  }

  .centers-page .page-images-desc {
    line-height: 153%;
  }

  .patriot .page-cards-strong {
    margin: 0 auto 1rem auto;
  }

  .aquapark .page-label {
    margin-bottom: 3rem;
  }

  .aquapark .page-images-banner {
    height: 91rem !important;
  }

  .aquapark .page-images-content-title {
    line-height: 87%;
  }

  .miner .page-images-content {
    top: 20.9rem !important;
  }

  .miner .page-label {
    margin-bottom: 3rem;
  }

  .miner .page-images-content-title {
    max-width: 31rem;
    font-size: 6rem !important;
    line-height: 103%;
  }

  .miner .page-images-banner {
    height: 110rem !important;
  }

  .gaspra.page-block {
    margin-bottom: 4.3rem;
  }

  .projects-page .page-path-title {
    letter-spacing: -0.09em;
    white-space: nowrap;
  }

  .gaspra.page-cards {
    padding-top: 1rem;
  }

  .projects-page .page-comment {
    padding: 2.4rem 1.2rem;
  }

  .hotels-page .page-images-title {
    margin-top: 4rem;
    margin-bottom: 2rem;
    transform: none;
  }

  .aquapark.page-double {
    padding-top: 4.1rem;
  }

  .aquapark.page-cards {
    padding-top: 0;
  }

  .aquapark .page-cards-strong {
    margin: 0 auto 1rem auto;
    line-height: 129%;
  }

  .yaroslavich .page-images-content {
    top: 19.4rem !important;
  }

  .yaroslavich .page-label {
    margin-bottom: 3rem;
  }

  .yaroslavich .page-images-banner {
    height: 78rem !important;
  }

  .yaroslavich.page-cards {
    padding-top: 2rem;
    padding-bottom: 3rem;
  }

  .centers-page .page-form-title {
    letter-spacing: -0.07em;
    line-height: 86%;
  }

  .domkovka .page-images-content {
    top: 20.4rem !important;
  }

  .domkovka .page-label {
    margin-bottom: 3.3rem;
  }

  .domkovka .page-images-banner {
    height: 84rem !important;
  }

  .domkovka.page-double {
    padding-top: 0;
  }

  .kabardinka .page-images-content {
    top: 20.6rem !important;
  }

  .kabardinka .page-label {
    margin-bottom: 3.7rem;
  }

  .kabardinka .page-images-content-title {
    line-height: 101%;
    font-size: 5.8rem !important;
  }

  .kabardinka .page-images-banner {
    height: 88rem !important;
  }

  .page-quote {
    margin: 0 auto;
    padding: 2rem;
    line-height: 187%;
  }

  .page-card-item {
    line-height: 147%;
  }

  .page-cards-end {
    margin: 2.8rem auto 0 auto;
    max-width: 100%;
    font-size: 2.4rem;
    line-height: 133%;
    letter-spacing: -0.02rem;
  }

  .page-comment {
    padding: 2.4rem 2.2rem;
  }

  .page-comment-author-avatar {
    margin-bottom: 2rem;
  }

  .page-comment-author-name {
    margin-bottom: 0.7rem;
  }

  .page-images-content,
  .golden-sands .page-images-content,
  .greater-caucasus .page-images-content {
    top: 13rem;
  }

  .castle .page-images-content {
    top: 20.4rem !important;
  }

  .castle .page-image {
    margin-bottom: 4.3rem;
  }

  .baikal .page-label {
    margin-bottom: 3.3rem;
  }

  .page-images-banner {
    height: 79rem;
  }

  .page-images-title {
    margin-bottom: 0;
  }

  .page-images-desc {
    line-height: 161%;
  }

  .page-image {
    margin-bottom: 5.8rem;
  }

  .baikal .page-path-desc {
    max-width: 30rem;
  }

  .baikal.page-cards-end {
    letter-spacing: -0.07rem;
  }

  .arkhyz .page-images-content {
    top: 19.8rem !important;
  }

  .arkhyz .page-label {
    margin-bottom: 3.6rem;
  }

  .arkhyz .page-images-banner {
    height: 83rem !important;
  }

  .arkhyz .page-images-title {
    margin-bottom: 3rem;
    transform: none;
  }

  .arkhyz .page-image {
    margin-bottom: 4.8rem;
    padding: 0;
  }

  .arkhyz.page-path {
    padding: 2.8rem 0 1.5rem 0;
  }

  .golden-sands .page-images-banner {
    height: 79rem;
  }

  .bannoye .page-images-banner {
    height: 79rem !important;
  }

  .page-images-block.golden-sands {
    background: #fff;
  }

  .golden-sands .page-images-label {
    margin-bottom: 2.5rem;
  }

  .golden-sands .page-images-content-title {
    width: 37rem;
  }

  .golden-sands .page-images-desc {
    line-height: 159%;
  }

  .golden-sands .page-image {
    margin-bottom: 4.8rem;
    padding: 3.5rem 0 0 0;
    max-width: 100%;
  }

  .page-double-right p:not(:last-child) {
    margin-bottom: 1rem;
  }

  .greater-caucasus .page-images-banner {
    height: 76rem;
  }

  .greater-caucasus .page-images-title {
    transform: none;
  }

  .greater-caucasus .page-images-title {
    margin-bottom: 2.5rem;
    transform: none;
  }

  .greater-caucasus .page-image {
    margin-top: 2rem;
  }

  .page-cards.greater-caucasus {
    padding-top: 6rem;
  }

  .greater-caucasus .page-cards-desc {
    margin-bottom: 2.3rem;
  }

  .greater-caucasus .page-cards-strong {
    line-height: 134%;
  }

  .greater-caucasus .page-cards-strong p:not(:last-child) {
    margin-bottom: 2.5rem;
  }

  .greater-caucasus.page-comment {
    padding: 2.4rem 2rem;
  }

  .greater-caucasus .page-comment-desc {
    line-height: 151%;
  }

  .cluster .page-images-content {
    top: 20.4rem !important;
  }

  .cluster .page-label {
    margin-bottom: 3.5rem;
  }

  .cluster .page-images-banner {
    height: 80rem !important;
  }

  .cluster .page-images-title {
    margin-top: 7rem;
  }

  .cluster .page-images-desc br {
    display: none;
  }

  .cluster .page-image {
    margin-bottom: 3.8rem;
  }

  .resorts-page ._smoke-decor-3:before {
    top: 17rem;
    width: 38rem;
    height: 102rem;
  }

  .cluster .page-path-title {
    white-space: nowrap;
    letter-spacing: -0.09em;
  }

  .coin .page-images-content {
    top: 20.4rem !important;
  }

  .coin .page-label {
    margin-bottom: 3.5rem;
  }

  .coin .page-images-banner {
    height: 90rem !important;
  }

  .coin .page-images-title {
    margin-top: 7rem;
  }

  .coin .page-image {
    margin-bottom: 4.5rem;
  }

  .aquapark .page-images-content-title {
    max-width: 33rem;
  }

  .castle .page-images-content-title {
    font-size: 6rem !important;
    line-height: 1;
  }

  .page-form {
    padding-top: 1.5rem;
    width: 100%;
  }

  .page-form-title {
    margin: 0 auto 1.6rem auto;
    letter-spacing: -0.08em;
    line-height: 96%;
  }

  .page-form-desc {
    margin: 0 auto 2.2rem auto;
    line-height: 147%;
  }

  .form-label-span {
    top: 1.1rem;
  }

  .form-accept {
    padding-left: 0;
  }

  ._pale-olive:before {
    top: -0.1rem;
    height: calc(100% + 0.2rem);
  }

  ._sage-beige:before {
    top: -0.1rem;
    height: calc(100% + 0.2rem);
  }

  ._right-decor.golden-sands {
    top: -18%;
    width: 15.8rem;
    height: 62.8rem;
  }

  ._left-decor.golden-sands {
    display: none;
  }

  ._right-decor {
    top: -10%;
  }

  ._right-decor.baikal {
    top: -8%;
    width: 13.8rem;
    height: 58.8rem;
  }

  ._smoke-decor-2:before {
    top: 7.5rem;
  }

  .resorts-page ._smoke-decor-1:before {
    bottom: auto;
    top: 59rem;
    width: 37rem;
    height: 96rem;
  }

  .manzherok .page-title {
    letter-spacing: -0.09em;
    white-space: nowrap;
  }

  .arkhyz .page-path-title {
    letter-spacing: -0.09em;
    white-space: nowrap;
  }

  .coin .page-path-title {
    letter-spacing: -0.09em;
    white-space: nowrap;
  }

  /*footer*/
  .footer-background-clouds {
    height: 25rem;
  }

  .footer-content {
    top: 28.9rem;
  }

  .footer-title {
    margin-bottom: 2.6rem;
    letter-spacing: -0.08em;
  }

  .resorts-page .footer-content {
    top: 31.9%;
  }

  .resorts-page .footer-title {
    font-size: 5.6rem;
    max-width: 34rem;
    white-space: normal;
  }

  .centers-page .footer-content {
    top: 35%;
  }

  .centers-page .footer-title {
    max-width: 28rem;
  }

  .centers-page .footer-title {
    font-size: 5.2rem;
  }

  .centers-page .footer-control {
    bottom: 9.6rem;
  }

  .hotels-page .footer-title {
    letter-spacing: -0.04em;
  }

  .hotels-page .footer-content {
    top: 39%;
  }

  .projects-page .footer-content {
    top: 29.9rem;
  }

  .projects-page .footer-title {
    font-size: 5.4rem;
  }

  /*article*/
  .article-map {
    max-width: 66%;
  }

  /*sliders*/
  .home-slide-lilac .home-slide-row {
    background-image: url("../image/home/mobile/lilac-net.png");
  }

  .home-slide-red .home-slide-row {
    background-image: url("../image/home/mobile/red-net.png");
  }

  .home-slide-green .home-slide-row {
    background-image: url("../image/home/mobile/green-net.png");
  }

  .home-slide-grey .home-slide-row {
    background-image: url("../image/home/mobile/grey-net.png");
  }

  .home-slide-violet .home-slide-row {
    background-image: url("../image/home/mobile/violet-net.png");
  }

  .home-slide-map {
    margin-top: 4rem;
  }

  .home-slider-back {
    top: 8.8rem;
  }
}

@media (max-width: 400px) {
  html {
    font-size: calc(100vw / 40);
  }

  /* home */
  .home-container {
    background-position: 46.5% 0;
  }

  .home-slide-row {
    background-position: center top;
  }

  .home-slide-map {
    margin-top: 7.5rem;
  }

  .home-slide-content {
    position: relative;
    margin-top: -0.8rem;
  }

  .home-slider-more {
    width: 34.8rem;
  }

  .home-slide[data-color="red"] .home-slide-map-pin-mobile {
    top: 56%;
    left: 52%;
  }

  .home-slide[data-color="red"] .home-slide-content {
    margin-top: 5.8rem;
    margin-bottom: 3rem;
  }

  .home-slide[data-color="green"] .home-slide-map-pin-mobile {
    top: 56%;
    left: 52%;
  }

  .home-slide[data-color="green"] .home-slide-content {
    margin-top: 6rem;
    margin-bottom: 2.8rem;
  }

  .home-slide[data-color="grey"] .home-slide-map-pin-mobile {
    top: 55%;
  }

  .home-slide[data-color="grey"] .home-slide-content {
    margin-top: -3.8rem;
    margin-bottom: 3.4rem;
  }

  .home-slide[data-color="violet"] .home-slide-map-pin-mobile {
    top: 56%;
  }

  .home-slide[data-color="violet"] .home-slide-content {
    margin-top: -6.8rem;
    margin-bottom: 3rem;
  }

  .home-slide[data-color="violet"] .home-slide-title {
    line-height: 106%;
  }

  .home-slider .home-slider-pagination {
    bottom: 1.9rem;
  }
  /* footer */

  /* pages */
  .coin .page-images-banner {
    height: 80rem !important;
  }

  .kamelia .page-banner {
    height: 84rem;
  }

  .gaspra .page-banner {
    height: 84rem;
  }

  .racetrack .page-images-banner {
    height: 82rem !important;
  }

  .castle .page-images-banner {
    height: 84rem !important;
  }

  /*article*/
  .article-map {
    max-width: 79%;
  }
}

@media (max-width: 375px) {
  html {
    font-size: calc(100vw / 37.5);
  }

  /* home */
  .home-slide {
    height: auto;
    min-height: 120vh;
  }

  /*article*/
  .article-map {
    max-width: 84%;
  }
}
