.tour-page-skeleton {
  min-height: 70vh
}

.tour-page-skeleton__gallery {
  display: flex;
  gap: 8px;
  overflow: hidden
}

@media screen and (max-width:991px) {
  .tour-page-skeleton__gallery {
    margin-left: calc(var(--container-padding-left)*-1);
    margin-right: calc(var(--container-padding-left)*-1);
    padding-left: var(--container-padding-left);
    padding-right: var(--container-padding-left)
  }
}

@media screen and (min-width:992px) {
  .tour-page-skeleton__gallery {
    display: grid;
    grid-column-gap: 4px;
    grid-row-gap: 4px;
    border-radius: 16px;
    grid-template-areas: "item-1 item-2 item-3 item-5" "item-1 item-2 item-4 item-5";
    grid-template-columns: 1fr 1fr .5fr 1fr;
    grid-template-rows: 1fr 1fr;
    min-height: 500px
  }
}

.tour-page-skeleton__gallery-item {
  margin: 0
}

.tour-page-skeleton__gallery-item:first-child {
  grid-area: item-1
}

.tour-page-skeleton__gallery-item:nth-child(2) {
  grid-area: item-2
}

.tour-page-skeleton__gallery-item:nth-child(3) {
  grid-area: item-3
}

.tour-page-skeleton__gallery-item:nth-child(4) {
  grid-area: item-4
}

.tour-page-skeleton__gallery-item:nth-child(5) {
  grid-area: item-5
}

@media screen and (min-width:992px) {
  .tour-page-skeleton__gallery-item {
    border-radius: 0;
    height: 100% !important;
    min-width: 100% !important;
    width: 100% !important
  }
}

.tour-page-skeleton__container {
  margin-bottom: 24px;
  margin-top: 24px
}

@media screen and (min-width:992px) {
  .tour-page-skeleton__container {
    display: grid;
    grid-template-columns: 1fr 376px;
    grid-column-gap: 58px;
    margin: 40px auto 68px;
    max-width: 1064px
  }
}

.tour-page-skeleton__content {
  max-width: 630px
}

@media screen and (max-width:991px) {
  .tour-page-skeleton__aside {
    display: none
  }
}

.tour-page-skeleton__aside-card {
  background: var(--color-bg);
  border-radius: 20px;
  box-shadow: 0 8px 24px #5966840f, 0 0 0 1px var(--color-border);
  padding: 20px 24px
}

.tour-page-skeleton__subtitle {
  display: flex;
  gap: 8px;
  margin-bottom: 48px;
  margin-top: 16px
}

@media screen and (max-width:991px) {
  .tour-page-skeleton__row {
    display: none
  }
}

.tour-page-skeleton__card-input {
  border: 1px solid var(--color-border);
  border-radius: var(--controls-border-radius);
  box-shadow: 0 12px 24px -10px #0a0a0d14;
  height: 68px;
  margin-bottom: 20px;
  margin-top: 16px;
  position: relative
}

.tour-page-skeleton__card-input-label {
  left: 16px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%)
}

.tour-page-skeleton__card-button {
  margin-top: 24px
}

.tour-page-skeleton__card-footer {
  align-items: center;
  display: flex;
  flex-direction: column;
  margin-top: 16px
}

.organizer-modal__profile {
  margin-bottom: 16px;
  text-align: center
}

.organizer-modal__avatar {
  margin-bottom: 12px
}

.organizer-modal__name {
  align-items: center;
  color: var(--color-text);
  display: flex;
  font-weight: 600;
  justify-content: center;
  letter-spacing: -.18px;
  margin-bottom: 2px
}

.organizer-modal__guarantee {
  margin: 12px 0 0
}

.organizer-modal__verification {
  color: var(--verification-icon-color);
  margin-left: 6px
}

.organizer-modal__caption {
  color: var(--color-text-secondary)
}

.organizer-modal__buttons {
  display: flex;
  gap: 8px
}

.organizer-modal__button {
  flex: 1
}

.organizer-modal__request-btn {
  margin-top: 16px
}

.tour-admin-actions {
  margin-bottom: 24px
}

.tour-admin-actions__alert {
  margin-bottom: 12px
}

.tour-admin-actions__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 12px
}

.tour-organizer__title {
  font-family: var(--headings-font-family);
  font-size: var(--h2-font-size-sm);
  line-height: 1.15;
  margin-bottom: 12px
}

@media screen and (min-width:992px) {
  .tour-organizer__title {
    font-size: var(--h2-font-size-md)
  }
}

.tour-organizer__avatar-container {
  float: right;
  margin-left: 16px;
  position: relative
}

@media screen and (min-width:576px) {
  .tour-organizer__avatar-container {
    margin-left: 24px
  }
}

.tour-organizer__chip {
  align-items: center;
  background-color: var(--color-warning-500);
  border-radius: 16px;
  bottom: -10px;
  color: var(--color-warning-50);
  display: flex;
  font-size: var(--caption-font-size);
  font-weight: 600;
  left: 50%;
  padding: 2px 8px;
  position: absolute;
  transform: translate(-50%);
  width: 114px;
  z-index: 1
}

.tour-organizer__chip svg {
  height: 16px;
  margin-right: 6px;
  width: 16px
}

.tour-organizer__name {
  color: var(--color-text);
  font-weight: 700;
  transition: color .2s
}

.tour-organizer__name:hover {
  color: var(--color-accent-500)
}

@media screen and (min-width:992px) {
  .tour-organizer__avatar {
    height: 100px !important;
    min-width: 100px !important;
    width: 100px !important
  }
}

.tour-organizer__subtitle {
  display: flex;
  flex-wrap: wrap;
  row-gap: 8px
}

.tour-organizer__subtitle-icon {
  color: var(--shade-400);
  margin-right: 8px;
  vertical-align: text-top
}

.tour-organizer__subtitle-icon--active {
  color: var(--verification-icon-color)
}

.tour-organizer__subtitle-item {
  width: 100%
}

@media screen and (min-width:576px) {
  .tour-organizer__subtitle-item {
    width: auto
  }

  .tour-organizer__subtitle-item:not(:first-of-type) {
    padding-left: 24px;
    position: relative
  }

  .tour-organizer__subtitle-item:not(:first-of-type):before {
    background-color: var(--color-text);
    border-radius: 50%;
    content: "";
    height: 3px;
    left: 12px;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 3px
  }
}

.tour-organizer__subtitle-item--grow {
  padding-left: 0 !important;
  width: 100%
}

.tour-organizer__subtitle-item--grow:before {
  display: none
}

.tour-organizer__subtitle-text {
  align-items: center;
  display: flex;
  font-weight: 600
}

.tour-organizer__subtitle-text>span {
  display: flex
}

.tour-organizer__languages {
  margin-top: 12px
}

.tour-organizer__languages-icon {
  margin-right: 4px
}

.tour-organizer__languages-caption,
.tour-organizer__languages-icon,
.tour-organizer__languages-list {
  vertical-align: middle
}

.tour-organizer__languages-list {
  color: var(--color-text-secondary)
}

.tour-organizer__languages-caption {
  font-weight: 600
}

.tour-organizer__description {
  margin-top: 12px;
  white-space: pre-line
}

.tour-organizer__buttons {
  margin-top: 16px;
  row-gap: 12px
}

@media screen and (min-width:576px) {
  .tour-organizer__buttons {
    margin-top: 24px
  }
}

.tour-organizer__buttons {
  margin-left: -6px !important;
  margin-right: -6px !important
}

.tour-organizer__buttons>.as-col {
  padding: 0 6px
}

.tour-organizer__guides {
  margin-top: 32px
}

.tour-organizer__guides-title {
  font-size: 20px;
  margin-bottom: 16px
}

.tour-organizer .as-truncate-text__button {
  font-weight: 900
}

.tour-difficulty-card {
  background-color: var(--color-bg);
  border-radius: 12px;
  box-shadow: inset 0 0 0 1px var(--color-border);
  padding: 24px;
  position: relative
}

.tour-difficulty-card:not(:first-child) {
  margin-top: 24px
}

.tour-difficulty-card__label {
  align-items: center;
  display: flex;
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 4px
}

.tour-difficulty-card__label>span {
  display: flex
}

.tour-difficulty-card__value {
  align-items: center;
  color: var(--color-text-secondary);
  display: flex;
  font-size: 14px
}

.tour-difficulty-card__caption {
  margin-right: 8px
}

.tour-difficulty-card__description {
  color: var(--color-gray-350);
  font-size: 14px;
  line-height: 140%;
  margin-top: 4px
}

.tour-difficulty-card__title {
  font-size: 18px;
  font-weight: 600;
  line-height: 120%;
  margin: 16px 0 4px
}

.tour-difficulty-card__text li,
.tour-difficulty-card__text p {
  font-size: 16px
}

.tour-program__heading {
  align-items: center;
  display: flex;
  justify-content: space-between
}

.tour-program__title {
  margin-bottom: 0 !important
}

.tour-program__expand-button {
  white-space: nowrap
}

.tour-program__block-button {
  margin-bottom: 8px;
  margin-top: 24px
}

@media screen and (min-width:576px) {
  .tour-program__block-button {
    margin-top: 32px
  }
}

.tour-program__collapse {
  border-bottom: 1px solid var(--color-border)
}

.tour-program__collapse-text p {
  font-size: 16px
}

.tour-accommodation-group {
  --dropdown-body-padding: 20px;
  border-bottom: 1px solid var(--color-border)
}

.tour-accommodation-group__prepend {
  align-items: center;
  background-color: var(--color-bg-secondary);
  border-radius: 24px;
  color: var(--color-text);
  display: inline-flex;
  font-size: 14px;
  font-weight: 600;
  height: var(--collapse-prepend-height);
  justify-content: center;
  margin-right: 16px;
  min-width: var(--collapse-prepend-width);
  padding: var(--collapse-prepend-padding);
  white-space: nowrap;
  width: var(--collapse-prepend-width)
}

.tour-accommodation-group__variants {
  flex-grow: 1
}

.tour-accommodation-group__collapse {
  border-bottom: 0
}

.tour-accommodation-group__collapse.is-always-closed .as-collapse__header:hover {
  color: var(--color-text)
}

.tour-accommodation-group__collapse:not(:first-of-type) .as-collapse__prepend {
  display: none;
  opacity: 0;
  visibility: hidden
}

@media screen and (min-width:576px) {
  .tour-accommodation-group__collapse:not(:first-of-type) .as-collapse__prepend {
    display: block
  }
}

.tour-accommodation-group__collapse:not(:first-of-type) .as-collapse__heading {
  padding-top: 0
}

.tour-accommodation-group__delimiter {
  --delimiter-border-radius: 16px;
  margin: -8px 0 -12px
}

@media screen and (min-width:576px) {
  .tour-accommodation-group__delimiter {
    margin-left: calc(var(--collapse-prepend-width) + 16px)
  }
}

.tour-accommodation-group__tooltip-button {
  pointer-events: auto
}

.tour-accommodation-group__tooltip-caption {
  color: var(--color-gray-350)
}

.tour-accommodation-group__tooltip-link {
  color: var(--color-link-hover)
}

.tour-accommodation-group__description p {
  font-size: 16px
}

.tour-accommodation-list {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap
}

@media screen and (min-width:992px) {
  .tour-accommodation-list {
    -moz-column-gap: 40px;
    column-gap: 40px;
    row-gap: 24px
  }
}

.tour-accommodation-list__group,
.tour-accommodation-list__icon,
.tour-accommodation-list__icons {
  align-items: center;
  display: flex
}

.tour-accommodation-list__icon {
  background-color: var(--color-gray-100);
  border-radius: 50%;
  box-shadow: 0 0 0 3px var(--color-bg);
  color: var(--color-text);
  height: 48px;
  justify-content: center;
  min-width: 48px;
  width: 48px
}

.tour-accommodation-list__icon.is-camp-site {
  background-color: var(--color-accent-500);
  color: var(--color-white)
}

.tour-accommodation-list__icon.is-flat {
  background-color: var(--color-info-500);
  color: var(--color-white)
}

.tour-accommodation-list__icon.is-guest-house {
  background-color: var(--color-accent-500);
  color: var(--color-white)
}

.tour-accommodation-list__icon.is-hotel {
  background-color: var(--color-success-500);
  color: var(--color-white)
}

.tour-accommodation-list__icon.is-tent {
  background-color: var(--color-warning-500);
  color: var(--color-white)
}

.tour-accommodation-list__icon.is-wellness-hotel {
  background-color: var(--color-success-500);
  color: var(--color-white)
}

.tour-accommodation-list__icon.is-camping {
  background-color: var(--color-warning-500);
  color: var(--color-white)
}

.tour-accommodation-list__icon:not(:first-of-type) {
  margin-left: -12px
}

.tour-accommodation-list__group-body {
  padding-left: 8px
}

.tour-accommodation-list__group-title {
  color: var(--color-text-secondary);
  margin-bottom: 4px
}

.tour-accommodation-list__group-subtitle {
  font-size: 14px
}

.tour-accommodation {
  --section-title-margin-bottom: 32px !important
}

.tour-accommodation__comfort-title {
  align-items: center;
  display: flex;
  margin-bottom: 4px
}

.tour-accommodation__comfort-title>span {
  display: flex
}

.tour-accommodation__comforts-list {
  -moz-column-gap: 4px;
  column-gap: 4px
}

@media screen and (max-width:991px) {
  .tour-accommodation__comforts-list {
    margin-left: -12px !important;
    margin-right: -12px !important
  }

  .tour-accommodation__comforts-list>.as-col {
    padding: 0 12px
  }
}

@media screen and (min-width:992px) {
  .tour-accommodation__comforts-list {
    margin-left: -16px !important;
    margin-right: -16px !important
  }

  .tour-accommodation__comforts-list>.as-col {
    padding: 0 16px
  }
}

.tour-accommodation__comfort-item {
  align-items: center;
  display: flex
}

.tour-accommodation__comfort-name {
  color: var(--color-text-secondary);
  font-size: 14px;
  margin-right: 8px
}

.tour-accommodation__compact-list {
  margin-top: 16px
}

@media screen and (min-width:992px) {
  .tour-accommodation__compact-list {
    margin-top: 24px
  }
}

.tour-accommodation__base {
  margin-top: 16px
}

@media screen and (min-width:992px) {
  .tour-accommodation__base {
    margin-top: 24px
  }
}

.tour-accommodation__base-text {
  color: var(--color-text-secondary)
}

.tour-accommodation__base-images {
  margin-top: 20px
}

.tour-accommodation__groups {
  margin-top: 16px
}

.cost-list {
  --include-icon: url(/_nuxt/check-outlined.B1V8nOhW.svg);
  --exclude-icon: url(/_nuxt/minus-outlined.BZe0K4wM.svg);
  --icon-size: 20px;
  --icon-position: 2px 2px;
  --icon-gap: 12px
}

.cost-list ol,
.cost-list ul {
  list-style: none;
  margin: 0;
  padding: 0
}

.cost-list ol:not(:last-child),
.cost-list ul:not(:last-child) {
  margin-bottom: 1rem
}

.cost-list>ol>li,
.cost-list>ul>li {
  background-position: var(--icon-position);
  background-repeat: no-repeat;
  background-size: var(--icon-size);
  line-height: 1.5;
  margin-bottom: 16px;
  padding-left: calc(var(--icon-size) + var(--icon-gap))
}

.cost-list>ol>li:last-child,
.cost-list>ul>li:last-child {
  margin-bottom: 0
}

.cost-list li>ol,
.cost-list li>ul {
  margin-top: 12px
}

.cost-list li>ol li,
.cost-list li>ul li {
  font-size: .9em;
  margin-bottom: 6px;
  padding-left: 20px;
  position: relative
}

.cost-list li>ol li:before,
.cost-list li>ul li:before {
  background: var(--color-text);
  border-radius: 100%;
  content: "";
  height: 6px;
  left: 0;
  position: absolute;
  top: 8px;
  width: 6px
}

.cost-list.is-included>ol>li,
.cost-list.is-included>ul>li {
  background-image: var(--include-icon)
}

.cost-list.is-excluded>ol>li,
.cost-list.is-excluded>ul>li {
  background-image: var(--exclude-icon)
}

.tour-faq__heading {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin-bottom: 32px
}

.tour-faq .tour-faq__title {
  margin-bottom: 0
}

.tour-faq__expand-button {
  white-space: nowrap
}

.tour-faq__collapse {
  border-bottom: 1px solid var(--color-border)
}

.tour-faq__collapse:first-child,
.tour-faq__collapse:first-child .as-collapse__header {
  padding-top: 0
}

.tour-faq__collapse .article-text p {
  font-size: 16px
}

.tour-faq__discount-list {
  list-style: none;
  margin: 0;
  padding: 0
}

.tour-faq__discount-title {
  color: var(--color-text);
  font-weight: 600;
  margin: 16px 0 4px
}

.tour-faq__discount-hint {
  margin-bottom: 0;
  margin-top: 16px
}

.tour-faq__collapse-text {
  white-space: pre-line
}

.tour-reviews__title {
  margin-bottom: 16px
}

@media screen and (min-width:992px) {
  .tour-reviews__title {
    margin-bottom: 24px
  }
}

@media screen and (max-width:575px) {
  .tour-reviews__rating {
    font-size: 24px
  }
}

.tour-reviews__tabs {
  align-items: center;
  border-bottom: 1px solid var(--color-border);
  display: flex;
  justify-content: space-between;
  margin-top: 16px
}

@media screen and (min-width:992px) {
  .tour-reviews__tabs {
    gap: 24px;
    justify-content: unset
  }
}

.tour-reviews__tab {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: none;
  color: var(--color-text);
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
  outline: none;
  padding: 16px 8px;
  position: relative;
  text-align: center
}

.tour-reviews__tab:before {
  background-color: var(--color-accent-500);
  border-radius: 16px;
  bottom: -1px;
  content: "";
  height: 2px;
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  transition: opacity .2s
}

.tour-reviews__tab i {
  font-style: normal;
  text-decoration: none
}

@media screen and (max-width:575px) {
  .tour-reviews__tab i {
    display: none
  }

  .tour-reviews__tab:first-letter {
    text-transform: uppercase
  }
}

.tour-reviews__tab--active {
  color: var(--color-accent-500)
}

.tour-reviews__tab--active:before {
  opacity: 1
}

.cost-calculation-form__type-title {
  color: var(--color-text);
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 16px
}

.cost-calculation-form__type {
  display: flex;
  gap: 16px;
  margin-bottom: 24px
}

.cost-calculation-form__type .as-checkbox {
  margin-bottom: 0
}

.cost-calculation-form__offer {
  background-color: var(--color-info-100);
  border-radius: 24px;
  margin-bottom: 24px;
  padding: 16px;
  width: 100%
}

@media screen and (min-width:576px) {
  .cost-calculation-form__offer {
    padding: 24px
  }
}

.cost-calculation-form__offer .as-input-v1__box {
  background-color: var(--color-white)
}

.cost-calculation-form__offer .as-input-v1__message {
  font-size: 12px
}

.cost-calculation-form__offer-title {
  color: var(--color-text);
  font-size: 18px;
  font-weight: 600
}

.cost-calculation-form__phone {
  --input-v1-margin-bottom: 0
}

.cost-calculation-form__version-tour {
  font-weight: 600
}

.cost-calculation-form .form-footer__caption {
  color: var(--color-gray-350);
  font-size: 12px;
  font-weight: 400;
  line-height: 150%;
  margin-top: 8px
}

.cost-calculation-form__date-select {
  --input-v1-height: 56px
}

.cost-calculation-form__date-select .as-input-v1__main {
  padding-top: 16px
}

.cost-calculation-form__date-select .as-input-v1__label {
  display: none
}

.cost-calculation-modal__icon.icon-background.is-info {
  --icon-bg-size: 44px;
  background-size: cover !important
}

@media screen and (min-width:576px) {
  .cost-calculation-modal__icon.icon-background.is-info {
    --icon-bg-size: 56px
  }
}

.cost-calculation-modal__emoji {
  align-items: center;
  background-color: #fff;
  border: 1px solid var(--color-border);
  border-radius: 50%;
  display: flex;
  height: 56px;
  justify-content: center;
  width: 56px
}

.cost-calculation-modal__header {
  display: flex;
  gap: 12px;
  max-width: 320px;
  padding-right: 24px
}

@media screen and (min-width:576px) {
  .cost-calculation-modal__header {
    align-items: flex-start;
    max-width: none
  }
}

.cost-calculation-modal__info {
  flex: 1
}

.cost-calculation-modal__title {
  color: var(--modal-header-text-color);
  font-family: var(--modal-header-font-family);
  font-size: var(--modal-header-font-size);
  font-weight: var(--modal-header-font-weight);
  letter-spacing: -.33px;
  line-height: 1.1
}

@media screen and (min-width:576px) {
  .cost-calculation-modal__title {
    margin-bottom: 8px
  }
}

.cost-calculation-modal__subtitle {
  color: var(--color-text-secondary);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5
}

@media screen and (max-width:575px) {
  .cost-calculation-modal__subtitle.is-desktop {
    display: none !important
  }
}

.cost-calculation-modal__subtitle.is-mobile {
  margin-top: 8px
}

@media screen and (min-width:576px) {
  .cost-calculation-modal__subtitle.is-mobile {
    display: none !important
  }
}

.cost-calculation-modal__form {
  margin-top: 24px
}

body {
  --cost-calculation-button-background-color: #4fa2d5;
  --cost-calculation-card-background-color: #ebf6fa
}

.tour-recommendations {
  --section-title-margin-bottom: 32px !important
}

.tour-recommendations__row {
  margin-bottom: 24px;
  margin-left: -16px !important;
  margin-right: -16px !important;
  row-gap: 24px
}

.tour-recommendations__row>.as-col {
  padding: 0 16px
}

.tour-recommendations__card {
  background-color: var(--cost-calculation-card-background-color);
  border-radius: 24px;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 24px
}

.tour-recommendations__card-icon {
  align-items: center;
  background: var(--general-white, #fff);
  border: 1px solid var(--divider-grey, #f0f1f2);
  border-radius: 512px;
  display: flex;
  height: 56px;
  justify-content: center;
  width: 56px
}

.tour-recommendations__card-text {
  font-family: var(--headings-font-family);
  font-size: 20px;
  font-weight: var(--headings-font-weight);
  line-height: 1.3;
  margin-bottom: 16px;
  margin-top: 16px
}

.tour-recommendations__card-text--russian {
  font-size: 18px;
  font-weight: 700;
  line-height: 135%
}

.tour-recommendations__card-button {
  background-color: var(--cost-calculation-button-background-color);
  color: #fff;
  margin-bottom: 16px
}

.tour-recommendations__card-partner {
  align-items: center;
  display: flex;
  justify-content: center
}

.tour-recommendations__card-partner-link {
  display: flex;
  margin-left: 8px
}

.tour-recommendations__card-partner-text {
  color: #666478;
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%
}

.tour-recommendations__subtitle {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 16px;
  margin-top: 0
}

.tour-recommendations__message {
  --message-padding: 24px 16px
}

@media screen and (min-width:576px) {
  .tour-recommendations__message {
    --message-padding: 24px
  }
}

.tour-recommendations__caption {
  color: var(--color-text-secondary);
  font-size: 16px;
  margin-bottom: 8px
}

.tour-recommendations__content {
  margin-bottom: 16px
}

@media screen and (min-width:576px) {
  .tour-recommendations__content {
    display: flex;
    justify-content: space-between;
    margin-bottom: 24px
  }
}

.tour-recommendations__location {
  font-size: 18px;
  font-weight: 600
}

.tour-recommendations__excursion-location {
  color: var(--color-text-secondary);
  margin-bottom: 24px
}

.tour-recommendations__excursion-location-item {
  margin: 0;
  padding-left: 26px;
  position: relative
}

.tour-recommendations__excursion-location-item:not(:last-child) {
  padding-bottom: 12px
}

.tour-recommendations__excursion-location-item:not(:last-child):before {
  border-left: 1px dashed var(--color-accent-500);
  content: "";
  height: calc(100% - 18px);
  left: 8px;
  position: absolute;
  top: 20px;
  width: 1px
}

.tour-recommendations__excursion-location-icon {
  color: var(--color-accent-500);
  left: 0;
  position: absolute;
  top: 2px
}

.tour-recommendations__button {
  height: 56px;
  width: 100%
}

.tour-recommendations__button svg {
  height: 24px;
  width: 24px
}

@media screen and (min-width:576px) {
  .tour-recommendations__button {
    flex: 0 0 318px;
    margin: 0;
    width: -moz-fit-content;
    width: fit-content
  }
}

.tour-recommendations__comment {
  color: var(--color-text-secondary);
  margin-bottom: 30px
}

.tour-recommendations__comment p:last-of-type {
  margin-bottom: 0
}

.tour-recommendations__comment-text {
  font-size: 16px;
  white-space: pre-line
}

.tour-recommendations__organizer-title {
  color: var(--color-text);
  font-size: 18px;
  font-weight: 600;
  line-height: 120%;
  margin-bottom: 4px
}

.tour-recommendations .map-preloader,
.tour-recommendations__map {
  height: 100%
}

.tour-recommendations .as-truncate-text:before {
  box-shadow: inset 0 -58px 48px 4px var(--message-warning-background-color)
}

.tour-booking-form>:last-child {
  margin-bottom: 0
}

.tour-booking-form__price-value {
  color: var(--color-text);
  font-family: var(--headings-font-family);
  font-size: 2rem;
  font-weight: var(--headings-font-weight);
  line-height: 110%
}

.tour-booking-form__date-error {
  color: var(--color-error-message);
  font-size: 13px;
  margin-top: 8px;
  text-align: center
}

.tour-booking-form__price-from {
  font-size: 18px;
  font-weight: 500;
  line-height: 1
}

.tour-booking-form__old-price {
  color: var(--color-gray-350);
  font-size: 16px;
  line-height: 1.15;
  text-decoration-line: line-through;
  white-space: nowrap
}

.tour-booking-form__price-caption {
  color: var(--color-text-secondary);
  line-height: 1.4
}

.tour-booking-form__discount {
  margin-top: 8px
}

.tour-booking-form__preliminary-alert {
  --message-dense-padding: 16px;
  margin-top: 8px
}

.tour-booking-form__preliminary-alert .as-message__prepend {
  margin-right: 16px
}

.tour-booking-form__private-data {
  background: var(--color-danger-50);
  border-radius: 8px;
  margin-bottom: 12px;
  padding: 8px 12px
}

.tour-booking-form__individual-message {
  margin-top: 16px
}

.tour-booking-form__alert {
  line-height: 1.5;
  margin-top: 16px
}

.tour-booking-form__alert a {
  color: var(--color-info-500);
  font-weight: 600;
  white-space: nowrap
}

.tour-booking-form__alert-title {
  font-weight: 600
}

.tour-booking-form__alert-text {
  margin: 4px 0 0
}

.tour-booking-form__alert-text a {
  align-items: center;
  color: #6ea9dc;
  display: inline-flex;
  font-weight: 600;
  gap: 8px
}

.tour-booking-form__individual-dates {
  --message-dense-padding: 16px
}

.tour-booking-form__individual-dates .as-message__prepend {
  margin-right: 16px
}

.tour-booking-form__version-link,
.tour-booking-form__version-tour {
  font-weight: 600
}

.tour-booking-form__date-select {
  --input-v1-height: 56px;
  margin: 8px 0
}

.tour-booking-form__counter {
  align-items: center;
  -moz-column-gap: 8px;
  column-gap: 8px;
  display: flex;
  justify-content: space-between;
  margin: 16px 0
}

.tour-booking-form__counter-body {
  flex-grow: 1
}

.tour-booking-form__counter-title {
  align-items: center;
  color: var(--color-text);
  display: flex;
  font-size: 14px;
  font-weight: 600
}

.tour-booking-form__counter-subtitle {
  color: var(--color-text-secondary);
  font-size: 14px;
  font-weight: 400
}

.tour-booking-form__tickets-btn {
  --link-button-font-weight-bold: 600;
  display: block;
  font-size: 14px;
  line-height: 1.15;
  margin: 16px 0
}

.tour-booking-form__tickets-btn .as-link-button__prepend {
  align-self: flex-start
}

.tour-booking-form__label {
  color: var(--color-text);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  margin-top: 16px
}

.tour-booking-form__hint {
  color: var(--color-text-secondary);
  line-height: 1.5
}

.tour-booking-form__book-btn,
.tour-booking-form__guarantee {
  margin-top: 16px
}

body {
  --auth-booking-modal-subtitle-font-weight: var(--headings-font-weight)
}

.auth-booking-modal {
  --modal-padding-top: 32px;
  --modal-padding-bottom: 32px;
  --modal-padding-left: 32px;
  --modal-padding-right: 32px;
  --terms-agree-checkbox-margin: 12px 0 24px;
  display: none;
}
.auth-booking-modal.is-open {
  display: block;
}
.auth-booking-modal__title {
  color: var(--color-gray-500);
  font-family: var(--headings-font-family);
  font-size: 16px;
  font-weight: var(--headings-font-weight);
  line-height: 21px;
  max-width: 90%
}

.auth-booking-modal__back {
  --button-size-md: 40px;
  --button-horizontal-padding-md: 12px;
  --button-font-size-md: 14px;
  --button-prepend-margin-right: 0
}

@media screen and (min-width:992px) {
  .auth-booking-modal__back {
    --button-border-radius: 8px;
    --button-size-md: 32px;
    --button-prepend-margin-right: 6px
  }
}

.auth-booking-modal__back-icon {
  margin-right: 6px
}

@media screen and (max-width:575px) {
  .auth-booking-modal__back-text {
    display: none !important
  }
}

.auth-booking-modal__subtitle {
  color: var(--color-gray-500);
  font-family: var(--headings-font-family);
  font-size: 20px;
  font-weight: var(--auth-booking-modal-subtitle-font-weight);
  line-height: 130%;
  margin-bottom: 24px
}

@media screen and (min-width:576px) {
  .auth-booking-modal__subtitle {
    font-size: 24px
  }
}

.auth-booking-modal__verify-title {
  --modal-header-padding-bottom: 16px;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0
}

.auth-booking-modal__verify-title .as-modal__title {
  line-height: 130%
}

.auth-booking-modal__heading {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 24px;
  max-width: calc(100% - 24px)
}

@media screen and (min-width:576px) {
  .auth-booking-modal__heading {
    align-items: flex-start;
    gap: 20px
  }
}

.auth-booking-modal__input-label {
  color: var(--color-text);
  font-size: 18px;
  font-weight: 700;
  line-height: 27px;
  margin-bottom: 16px
}

.auth-booking-modal__input-label img {
  vertical-align: top
}

.auth-booking-modal__input {
  margin-bottom: 0
}

.auth-booking-modal__subtext {
  color: var(--color-text-secondary);
  font-size: 13px;
  margin-bottom: 16px;
  margin-top: 4px;
  padding: 0 16px
}

.auth-booking-modal__subtext img {
  margin-left: 4px;
  vertical-align: text-top
}

.auth-booking-modal__terms {
  font-size: 12px;
  line-height: 150%;
  margin-top: 12px
}

.auth-booking-modal__terms a {
  color: var(--color-accent-500)
}

.auth-booking-modal__button {
  margin-top: 16px
}

.auth-booking-modal .as-form-item {
  margin-bottom: 8px !important
}

.auth-booking-modal__auth-button {
  margin-top: 24px
}

.auth-booking-modal__auth-button-icon {
  margin-right: 8px
}

.auth-booking-list {
  list-style: none;
  margin: 0 0 4px;
  padding: 0
}

.auth-booking-list__item {
  align-items: flex-start;
  display: flex;
  padding-bottom: 24px;
  position: relative
}

.auth-booking-list__item:not(:last-child):after {
  background-color: var(--color-bg-secondary);
  bottom: 0;
  content: "";
  left: 25px;
  position: absolute;
  top: 50px;
  width: 1px
}

.auth-booking-list__icon-body {
  background-color: var(--color-bg-secondary);
  border-radius: 12px;
  margin-right: 12px;
  padding: 13px
}

.auth-booking-list__icon {
  vertical-align: middle
}

.auth-booking-list__item-title {
  margin-bottom: 4px
}

.auth-booking-list__item-text {
  color: var(--color-text-secondary);
  font-size: 14px;
  line-height: 1.42
}

.duplicate-request-modal__submit-button {
  background: var(--color-white);
  color: var(--color-accent-500);
  margin-right: 12px;
  max-width: 220px
}

.duplicate-request-modal__submit-button:hover {
  color: var(--color-accent-600)
}

@media screen and (max-width:575px) {
  .duplicate-request-modal__submit-button {
    margin-bottom: 12px;
    max-width: 100%;
    width: 100%
  }

  .duplicate-request-modal__cancel-button {
    width: 100%
  }
}

.learn-more-form__header {
  color: var(--color-text);
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 16px
}

.learn-more-form__item {
  align-items: center;
  display: flex;
  margin-bottom: 24px
}

.learn-more-form__caption {
  color: var(--color-text);
  margin-right: 24px
}

.learn-more-form__hint {
  color: var(--color-text-secondary)
}

.tour-individual-message {
  line-height: 1.5
}

.tour-individual-message__title {
  font-weight: 600
}

.tour-individual-message__text {
  margin: 4px 0 0
}

.tour-individual-message__button {
  --link-button-font-weight-bold: 600;
  --link-button-gap: 4px;
  color: var(--color-info-500)
}

.tour-booking-card {
  border: 1px solid var(--color-gray-100);
  border-radius: 24px;
  box-shadow: 0 0 32px -4px #24223f14;
  padding: 24px
}

.tour-booking-card__price-value {
  color: var(--color-text);
  font-family: var(--headings-font-family);
  font-size: 2rem;
  font-weight: var(--headings-font-weight);
  line-height: 115%;
  margin-bottom: 2px
}

.tour-booking-card__price-from {
  font-size: 18px;
  font-weight: 500;
  line-height: 1
}

.tour-booking-card__old-price {
  color: var(--color-gray-350);
  font-size: 16px;
  line-height: 1.15;
  text-decoration-line: line-through;
  white-space: nowrap
}

.tour-booking-card__hint {
  color: var(--color-text-secondary);
  line-height: 1.5
}

.tour-booking-card__label {
  color: var(--color-gray-500);
  font-size: 14px;
  font-weight: 600;
  line-height: 150%;
  margin-top: 20px
}

.tour-booking-card__location {
  margin-bottom: 4px
}

.tour-booking-card__tickets-btn.as-button.is-x-large {
  border-radius: 0;
  color: var(--color-accent-500);
  font-size: 16px;
  height: -moz-fit-content;
  height: fit-content;
  line-height: 1.3;
  margin: 8px 0 20px;
  padding: 0;
  text-align: left
}

.tour-booking-card__tickets-btn.as-button.is-x-large .as-button__body {
  align-items: stretch;
  justify-content: flex-start
}

.tour-booking-card__tickets-btn.as-button.is-x-large .as-button__prepend {
  --button-prepend-margin-right: 8px;
  padding-top: 4px
}

.tour-booking-card__tickets-btn.as-button.is-x-large:hover {
  color: var(--color-accent-400)
}

.tour-booking-card__alert {
  line-height: 1.5;
  margin-top: 16px
}

.tour-booking-card__alert a {
  color: var(--color-info-500);
  font-weight: 600;
  white-space: nowrap
}

.tour-booking-card__alert-title {
  font-weight: 600
}

.tour-booking-card__alert-text {
  margin: 4px 0 0
}

.tour-booking-card__alert-text a {
  align-items: center;
  color: #4fa2d5;
  display: inline-flex;
  font-weight: 600;
  gap: 8px
}

.tour-booking-card__book-btn,
.tour-booking-card__guarantee {
  margin-top: 16px
}

.tour-dates.is-excursion .tour-section-title {
  --section-title-margin-bottom: 24px
}

.tour-dates__alert {
  margin-bottom: 0
}

.tour-dates__alert-icon {
  vertical-align: middle
}

.tour-dates__list {
  list-style: none;
  margin: 32px 0 0;
  padding: 0
}

.tour-dates__item {
  display: block
}

.tour-dates__item:not(:first-child) {
  margin-top: 24px
}

@media screen and (min-width:992px) {
  .tour-dates__item:not(:first-child) {
    margin-top: 4px
  }
}

.tour-dates__item.is-hidden {
  margin-top: 0
}

.tour-dates__variants-button {
  margin-top: 24px
}

.tour-dates__individual-message {
  margin-bottom: 0;
  margin-top: 24px
}

body {
  --tour-sheet-border-radius: 100px;
  --sheet-body-padding: 8px 16px
}

@media screen and (min-width:992px) {
  .tour-sheet {
    border-radius: var(--tour-sheet-border-radius);
    box-shadow: 0 0 32px -4px #24223f14
  }
}

@media screen and (max-width:991px) {
  .tour-sheet {
    border-radius: 0;
    margin-bottom: calc(max(var(--safe-area-inset-bottom), 16px)*-1);
    margin-left: calc(var(--container-padding-left)*-1);
    margin-right: calc(var(--container-padding-right)*-1);
    width: auto !important
  }
}

@media screen and (min-width:992px) {
  .tour-sheet {
    display: none !important
  }
}

.tour-sheet__container {
  align-items: center;
  display: flex;
  justify-content: space-between
}

.tour-sheet__actions {
  align-items: center;
  display: flex;
  gap: 8px
}

.tour-sheet__price-info {
  align-items: center;
  display: flex;
  gap: 4px
}

.tour-sheet__price {
  color: var(--color-gray-500);
  font-size: 18px;
  font-weight: 600;
  line-height: 130%
}

.tour-sheet__price-caption {
  color: var(--color-gray-400);
  font-size: 12px;
  font-weight: 400;
  line-height: 130%;
  margin-top: 2px
}

.tour-sheet__old-price {
  text-decoration: line-through
}

.tour-sheet__btn {
  --button-horizontal-padding-md: 16px;
  border-radius: 40px;
  font-size: 14px;
  height: 40px;
  min-width: 96px;
  width: -moz-fit-content;
  width: fit-content
}

.tour-sheet__calculation-btn.as-button.is-white:not(.is-disabled) {
  color: var(--color-accent-500);
  font-size: 12px;
  height: -moz-fit-content;
  height: fit-content;
  margin: 0;
  padding: 0;
  text-align: left
}

.tour-sheet__calculation-btn.as-button.is-white:not(.is-disabled) .as-button__prepend {
  --button-prepend-margin-right: 4px;
  margin-left: 2px
}

.tour-sheet__calculation-btn.as-button.is-white:not(.is-disabled) .as-button__body {
  gap: 4px
}

.tour-sheet__calculation-btn.as-button.is-white:not(.is-disabled):hover {
  color: var(--color-accent-400)
}

.tour-sheet__chat.as-button.is-icon {
  height: 40px;
  width: 40px
}

body {
  --tour-navigation-track-height: 2px
}

.tour-navigation {
  box-shadow: 0 1px 0 0 var(--color-border)
}

.tour-navigation__scrollactive {
  padding-left: var(--container-padding-left);
  padding-right: var(--container-padding-right)
}

@media screen and (min-width:1200px) {
  .tour-navigation__scrollactive::-webkit-scrollbar {
    -webkit-appearance: none;
    background: var(--color-white);
    height: 9px
  }

  .tour-navigation__scrollactive::-webkit-scrollbar-thumb {
    background-color: var(--color-gray-150);
    border-left-width: 3px;
    border: 3px solid var(--color-white);
    border-left: var(--container-padding-left) solid var(--color-white);
    height: 9px
  }
}

.tour-navigation__scrollactive .as-scrollactive__link {
  position: relative
}

.tour-navigation__scrollactive .as-scrollactive__link:after {
  background-color: var(--color-accent-500);
  border-radius: 8px;
  bottom: 0;
  content: "";
  height: var(--tour-navigation-track-height);
  left: 0;
  opacity: 0;
  position: absolute;
  transition: opacity .2s;
  width: 100%
}

.tour-navigation__scrollactive .as-scrollactive__link.is-active:after {
  opacity: 1
}

.tour-navigation__container {
  max-width: 100vw;
  overflow: hidden
}

@media screen and (min-width:1200px) {
  .tour-navigation__container {
    margin-left: calc((100% - var(--container-max-width-md))/2 - var(--container-padding-left));
    padding-right: 0
  }
}

body {
  --tour-individual-info-label-color: #4f4f5e;
  --tour-individual-info-label-font-size: 13px;
  --tour-individual-info-items-margin-top: 24px;
  --tour-individual-info-item-margin-bottom: 16px
}

.tour-individual-info__price {
  color: var(--color-text);
  font-family: var(--headings-font-family);
  font-size: 2rem;
  font-weight: var(--headings-font-weight);
  line-height: 115%
}

.tour-individual-info__price-from {
  font-size: 18px;
  font-weight: 500
}

.tour-individual-info__old-price {
  color: #9c9bab;
  font-size: 1.125rem;
  line-height: 1.15;
  text-decoration-line: line-through;
  white-space: nowrap
}

.tour-individual-info__price-caption {
  color: var(--color-text-secondary);
  line-height: 1.5;
  margin-top: 2px
}

.tour-individual-info__items {
  margin-top: var(--tour-individual-info-items-margin-top)
}

.tour-individual-info__item {
  margin-bottom: var(--tour-individual-info-item-margin-bottom)
}

.tour-individual-info__item:last-child {
  margin-bottom: 0
}

.tour-individual-info__label {
  color: var(--tour-individual-info-label-color);
  font-size: var(--tour-individual-info-label-font-size);
  line-height: 135%
}

.tour-individual-info__text ul {
  list-style: none;
  margin: 0;
  padding: 0
}

.tour-individual-sheet {
  border-radius: 24px;
  padding: 16px;
  width: auto
}

@media screen and (min-width:576px) {
  .tour-individual-sheet {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: 16px 32px
  }
}

.tour-individual-sheet__content {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  margin-bottom: 16px
}

@media screen and (min-width:576px) {
  .tour-individual-sheet__content {
    align-items: center;
    gap: 24px;
    margin-bottom: 0
  }
}

.tour-individual-sheet__title {
  font-weight: 600
}

@media screen and (min-width:576px) {
  .tour-individual-sheet__title {
    font-size: 18px
  }
}

.tour-individual-sheet__button {
  background: #793dfc;
  color: var(--color-white);
  font-size: 14px;
  width: 100%
}

@media screen and (min-width:576px) {
  .tour-individual-sheet__button {
    width: -moz-fit-content;
    width: fit-content
  }
}

@media screen and (min-width:992px) {
  .tour-individual-sheet__button {
    font-size: 16px
  }
}

.tour-individual-sheet__button:hover {
  background: #8a56fc;
  color: var(--color-white)
}

.tour-individual-sheet__button.is-orange {
  background: #ff661a
}

.tour-individual-sheet__button.is-orange:hover {
  background: #ff7734
}

.tour-report-button {
  align-items: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: none;
  color: #9596a5;
  cursor: pointer;
  display: flex;
  font-size: 16px;
  font-weight: 600;
  gap: 8px;
  justify-content: center;
  line-height: 150%;
  outline: none;
  transition: color .2s;
  width: 100%
}

@media ((hover:hover) and (pointer:fine)) {
  .tour-report-button:hover {
    color: var(--color-danger-400)
  }
}

.request-individual-tour-form__input-icon {
  vertical-align: text-bottom
}

.request-individual-tour-form__counter-container {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  margin: 16px 0;
  padding: 0 16px
}

.request-individual-tour-form__counter-description {
  display: flex;
  flex-direction: column;
  font-size: 14px;
  line-height: 150%
}

.request-individual-tour-form__counter-label {
  color: var(--color-text);
  font-weight: 600
}

.request-individual-tour-form__counter-subtitle {
  color: var(--color-text-secondary);
  font-size: 14px;
  font-weight: 400
}

.request-individual-tour-form__counter-hint {
  color: var(--color-text-secondary);
  margin-top: 4px
}

.request-individual-tour-form__counter-hint.has-error {
  color: var(--color-danger-500)
}

.request-individual-tour-form__auth-button {
  margin-top: 24px
}

.request-individual-tour-form__auth-button-icon {
  margin-right: 8px
}

.request-individual-tour-modal__header {
  line-height: 130%;
  padding-bottom: 8px
}

.request-individual-tour-modal__header .as-modal__title {
  display: flex;
  gap: 20px
}

.request-individual-tour-modal__subtitle {
  font-size: 18px;
  line-height: 150%;
  margin-top: 16px !important
}

.request-individual-tour-modal__subtitle-header {
  color: var(--color-gray-900);
  font-size: 24px;
  font-weight: 700;
  line-height: 110%;
  margin-bottom: 8px
}

.request-individual-tour-modal__subtitle-text {
  font-size: 18px;
  line-height: 120%
}

.request-individual-tour-modal__back-button {
  flex-shrink: 0
}

@media screen and (max-width:575px) {
  .request-individual-tour-modal__back-button .as-button__prepend {
    margin: 0 !important
  }

  .request-individual-tour-modal__back-text {
    display: none !important
  }
}

.request-operator-individual-tour-modal {
  --input-v1-margin-bottom: 16px
}

.request-operator-individual-tour-modal__counter-label {
  color: var(--color-gray-900);
  font-size: 14px;
  line-height: 150%
}

.request-operator-individual-tour-modal__contacts {
  background-color: var(--color-warning-100);
  border-radius: 4px;
  margin-bottom: 24px;
  padding: 24px
}

@media screen and (min-width:576px) {
  .request-operator-individual-tour-modal__contacts {
    --input-v1-margin-bottom: 0
  }
}

.request-operator-individual-tour-modal__contacts svg {
  fill: #25d366
}

.request-operator-individual-tour-modal__contacts-title {
  color: var(--color-gray-900);
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 16px
}

.request-operator-individual-tour-modal__dates-icon {
  fill: var(--color-gray-400)
}

.excursion-program__text {
  color: var(--color-text-secondary)
}

.tour-weather-form__dates {
  margin-bottom: 24px
}

.tour-weather-form__offer {
  background-color: var(--color-success-100);
  border-radius: 24px;
  margin-bottom: 24px;
  padding: 16px;
  width: 100%
}

@media screen and (min-width:576px) {
  .tour-weather-form__offer {
    padding: 24px
  }
}

.tour-weather-form__offer .as-input-v1__box {
  background-color: var(--color-white)
}

.tour-weather-form__offer .as-input-v1__message {
  font-size: 12px
}

.tour-weather-form__offer-title {
  color: var(--color-text);
  font-size: 18px;
  font-weight: 600
}

.tour-weather-form__phone {
  --input-v1-margin-bottom: 0;
  --color-text-secondary: var(--color-gray-400)
}

.tour-weather-form__phone:not(.has-error) {
  --input-v1-message-padding: 8px var(--input-v1-padding-horizontal) 0
}

.tour-weather-form__phone:not(.has-error) .as-input-v1__message {
  font-weight: 600
}

.tour-weather-form__whatsup-icon {
  fill: #67c15e
}

.tour-weather-form .form-footer__caption {
  color: var(--color-gray-350);
  font-size: 12px;
  font-weight: 400;
  line-height: 150%;
  margin-top: 8px
}

.tour-weather-form__date-select {
  --input-v1-height: 56px;
  margin: 12px 0
}

.tour-weather-form__date-select .as-input-v1__main {
  padding-top: 16px
}

.tour-weather-form__date-select .as-input-v1__label {
  display: none
}

.tour-weather-modal__icon.icon-background.is-info {
  --icon-bg-size: 44px;
  background-size: cover !important
}

@media screen and (min-width:576px) {
  .tour-weather-modal__icon.icon-background.is-info {
    --icon-bg-size: 56px
  }
}

.tour-weather-modal__header {
  display: flex;
  gap: 12px;
  max-width: 300px
}

@media screen and (min-width:576px) {
  .tour-weather-modal__header {
    align-items: flex-start;
    max-width: none
  }
}

.tour-weather-modal__title {
  color: var(--modal-header-text-color);
  font-family: var(--modal-header-font-family);
  font-size: var(--modal-header-font-size);
  font-weight: var(--modal-header-font-weight);
  letter-spacing: -.33px;
  line-height: 1.1
}

@media screen and (min-width:576px) {
  .tour-weather-modal__title {
    margin-bottom: 8px
  }
}

.tour-weather-modal__subtitle {
  color: var(--color-text-secondary);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5
}

@media screen and (max-width:575px) {
  .tour-weather-modal__subtitle.is-desktop {
    display: none !important
  }
}

.tour-weather-modal__subtitle.is-mobile {
  margin-top: 8px
}

@media screen and (min-width:576px) {
  .tour-weather-modal__subtitle.is-mobile {
    display: none !important
  }
}

.tour-weather-modal__form {
  margin-top: 24px
}

.tour-weather__row {
  margin-bottom: 32px;
  margin-left: -16px !important;
  margin-right: -16px !important;
  row-gap: 24px
}

.tour-weather__row>.as-col {
  padding: 0 16px
}

.tour-weather__card {
  background-color: var(--color-success-100);
  border-radius: 24px;
  min-height: 100%;
  overflow: hidden;
  padding: 24px;
  position: relative
}

.tour-weather__card--chart {
  min-height: 232px
}

.tour-weather__card-icon {
  margin-bottom: 16px
}

.tour-weather__card-sparklines {
  bottom: 0;
  pointer-events: none;
  position: absolute;
  right: 0
}

.tour-weather__card-text {
  font-family: var(--headings-font-family);
  font-size: 20px;
  font-weight: var(--headings-font-weight);
  line-height: 1.3;
  margin-bottom: 16px
}

.tour-weather__card-subtext {
  color: var(--color-text-secondary);
  margin-bottom: 16px
}

.tour-weather__card-button {
  align-self: center
}

.tour-weather__card-list {
  margin: 0;
  padding-left: 12px;
  z-index: 1
}

.tour-weather__card-list-item {
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%
}

.tour-weather__card-list-item::marker {
  color: var(--color-success-500)
}

.tour-weather__card-list-item:not(:last-child) {
  margin-bottom: 8px
}

.tour-page__back-btn {
  margin-bottom: 24px
}

.tour-page__report-button.is-desktop {
  margin-top: 16px
}

@media screen and (max-width:991px) {
  .tour-page__report-button.is-desktop {
    display: none !important
  }
}

.tour-page__report-button.is-mobile {
  margin-top: 48px
}

@media screen and (min-width:992px) {
  .tour-page__report-button.is-mobile {
    display: none !important
  }
}

.tour-page__container {
  margin-bottom: 48px;
  margin-top: 24px
}

@media screen and (min-width:992px) {
  .tour-page__container {
    display: grid;
    grid-template-columns: 1fr 376px;
    position: relative;
    grid-column-gap: 58px;
    margin: 32px auto 88px;
    max-width: 1064px
  }

  .tour-page .tour-navigation .container {
    max-width: 1064px;
    padding: 0
  }
}

.tour-page__content {
  margin-left: auto;
  margin-right: auto;
  max-width: 630px
}

.tour-page__aside {
  height: -moz-max-content;
  height: max-content;
  will-change: position, top, bottom;
  z-index: 5
}

@media screen and (max-width:991px) {
  .tour-page__aside {
    display: none
  }
}

.tour-page__aside-card {
  margin-top: 24px
}

.tour-page__outlined-card {
  background: var(--color-bg);
  border-radius: 20px;
  box-shadow: 0 8px 24px #5966840f, 0 0 0 1px var(--color-border);
  padding: 20px 24px
}

@media screen and (min-width:992px) {
  .tour-page .tour-section {
    --section-offset: 32px
  }
}

.tour-page .tour-section-title {
  --section-title-margin-bottom: 24px
}

.tour-page .tour-faq__heading {
  margin-bottom: 24px
}

@media screen and (min-width:576px) {
  .tour-page .tour-faq__heading {
    margin-bottom: 32px
  }
}

.tour-page .tour-navigation {
  box-shadow: 0 0 18px 1px #0a0a0d1a
}

.tour-page__section-resume {
  --section-offset: 20px !important
}

.tour-page__section-booking {
  padding-top: 0
}

@media screen and (min-width:992px) {
  .tour-page__section-booking {
    display: none
  }
}

.tour-page__booking-form-container {
  margin: 0 0 20px
}

@media screen and (min-width:992px) {
  .tour-page__booking-form-container {
    margin: 0
  }
}

.tour-page__expand-button:hover {
  color: var(--color-accent-500)
}

.tour-page .tour-recommendations__row:not(:first-child) {
  row-gap: 16px
}

.tour-page .tour-recommendations__content {
  margin-bottom: 16px
}

.tour-page .tour-recommendations__caption {
  color: var(--color-text);
  line-height: 140%;
  margin-bottom: 4px
}

.tour-page .tour-recommendations__location {
  color: var(--color-text-secondary);
  font-size: 14px;
  font-weight: 400;
  line-height: 130%
}

.tour-page .tour-transport__title {
  margin-bottom: 8px
}

@media screen and (min-width:576px) {
  .tour-page .tour-transport__icon {
    height: 24px;
    width: 24px
  }
}

.tour-page .tour-transport__text {
  font-size: 16px
}

@media screen and (min-width:576px) {
  .tour-page .tour-transport__text {
    font-size: 18px
  }
}

.tour-page .tour-dates-variant__button {
  --button-size-lg: var(--button-size-md);
  --button-horizontal-padding-lg: var(--button-horizontal-padding-md);
  --button-font-size-lg: var(--button-font-size-md)
}

.tour-page .tour-dates-variant__description-icon {
  --icon-medium-size: 24px
}

.tour-page .tour-dates-variant__description-col strong {
  font-weight: 400
}

.tour-page .tour-organizer-aside-card {
  margin-top: 16px
}

.tour-page .tour-guarantee__text {
  color: var(--color-text-secondary)
}
.tour-booking-video{
  margin-bottom: 1rem;
}
.tour-booking-video > iframe{
  width: 100%;
  aspect-ratio: 16 / 9;
}

@media screen and (min-width:576px) {
  .tour-page .related-tours__title {
    margin-bottom: 32px
  }
}
.tour-booking-track{
  margin-bottom: 1rem;
  text-align: right;
}
.track-map{
  width: 100%;
  aspect-ratio: 16 / 9;
  margin-bottom: 0.5rem;
}
.track-download{
  text-align: right;
  /*height: 2rem;*/
}