@import "font.less";


@media (min-width: 0) {

    main {
        margin-top: -19px;
        z-index: 100;
    }

    footer {
        margin-top: 80px;
    }

    /** --------------------- gallery-mobile Mobile ------------------------ **/

    .gallery-mobile {
        position: relative;
    }

    .gallery-mobile__image {
        z-index: -100;
        height: 375px;
        width: 100%;
        background-size: cover;
        position: relative;
    }

    .gallery-mobile__buttons {
        position: absolute;
        top: 35px;
        right: 16px;
    }

    .gallery-mobile__buttons a {
        display: inline-block;
        width: 36px;
        height: 36px;
        border-radius: 60px;
        background-color: var(--tr-color-white);
        text-align: center;
        line-height: 32px;
        z-index: -200;
    }

    .gallery-mobile__buttons i {
        font-size: 20px;
        line-height: 20px;
        vertical-align: middle;
    }


    .gallery-mobile__buttons a:first-of-type {
        margin-right: 8px;
    }

    .gallery-mobile__btn-all {
        display: inline-block;

        position: absolute;
        padding: 6px 12px 6px 12px;

        bottom: 46px;
        right: 14px;

        text-decoration: none;

        background-color: rgba(255,255,255,0.4);
        backdrop-filter: blur(15px);

        border-radius: 40px;
        text-wrap: nowrap;

        color: var(--tr-color-white);
        vertical-align: middle;
        .S-mobile;
    }

    .gallery-mobile__btn-all i {
        font-size: 20px;
        margin-right: 4px;
        vertical-align: text-bottom;
    }

    /** --------------------- tour-page Mobile ------------------------ **/

    .tour-page {
        margin-top: -28px;
        border-radius: 20px;
        background-color: var(--tr-color-white);
    }

    .tour-page__header {
        margin: 16px 16px 0 16px;
    }

    .tour-page__gallery {
        display: none;
    }

    .tour-page__types {
        margin: 20px 16px 0 16px;
    }

    .tour-page__items {
        margin: 32px 16px 0 16px;
    }

    .tour-page__description {
        margin: 80px 16px 0 16px;
    }

    .tour-page__booking {
        margin: 32px 16px 0 16px;
    }

    .tour-page__route {
        margin: 80px 16px 0 16px;
    }

    .tour-page__organizer {
        margin: 64px 16px 0 16px;
    }

    .tour-page__allocation {
        margin: 64px 16px 0 16px;
    }

    .tour-page__services {
        margin: 64px 16px 0 16px;
    }

    .tour-page__conditions {
        margin: 64px 16px 0 16px;
    }

    .tour-page__arrival {
        margin: 64px 16px 0 16px;
    }

    .tour-page__aviasales {
        margin: 20px 16px 0 16px;
    }

    .tour-page__important {
        margin: 64px 16px 0 16px;
    }

    .tour-page__prices {
        margin: 64px 16px 0 16px;
    }

    .tour-page__reviews {
        margin: 64px 16px 0 16px;
    }

    .tour-page__similar-tours {
        margin: 64px 16px 0 16px;
    }

    /** --------------------- tour-booking Mobile ------------------------ **/

    .tour-booking {
        border: 1px solid var(--tr-color-gray-50);
        border-radius: 10px;
        padding: 23px;
    }

    .tour-booking__price {
        vertical-align: middle;
        .H1-mobile;
    }

    .tour-booking__price span {
        vertical-align: middle;
    }

    .tour-booking__price-details {
        margin-top: 8px;
        color: var(--tr-gray-70);
        .H4-mobile;
    }

    .tour-booking__prev-price {
        display: block;
        margin-top: 4px;
        color: var(--tr-gray-70);
        text-decoration: line-through;
        .H5-mobile;
    }

    .tour-booking__discount {
        display: inline-block;
        margin-left: 20px;
        padding: 4px 8px 4px 8px;
        background-color: var(--tr-green-100);
        border-radius: 50px;
        .XS-mobile;
    }

    .tour-booking__members {
        margin-top: 20px;
    }

    .tour-booking__members-title {
        .H4-mobile;
    }

    .tour-booking__members-places {
        .S-mobile;
    }

    .tour-booking__dates {
        margin-top: 20px;
    }

    .tour-booking__dates label {
        display: block;
        margin-bottom: 8px;
        .H4-mobile;
    }

    .tour-booking__dates-select-wrapper {
        position: relative;
    }

    .tour-booking__dates-select-wrapper i {
        position: absolute;
        font-size: 24px;
        top: calc(50% - 18px);
        right: 16px;
    }

    .tour-booking__dates select {
        display: block;
        position: relative;
        width: 100%;
        appearance: none;
        border: 1px solid var(--tr-color-gray-50);
        background-color: var(--tr-color-white);
        padding: 11px 20px 11px 20px;
        border-radius: 50px;
        .M-regular-mobile;
    }

    .tour-booking__button {
        margin-top: 20px;
    }

    .tour-booking__button .btn {
        width: 100%;
        padding-top: 15px;
        padding-bottom: 15px;
        vertical-align: middle;
        .M-regular-mobile;
    }

    .tour-booking__button i {
        font-size: 22px;
        vertical-align: text-bottom;
    }

    .tour-booking__description {
        margin-top: 20px;
        color: var(--tr-color-gray-70);
        display: flex;
        flex-direction: column;
        justify-content: center;
        .M-regular-mobile;
    }

    .tour-booking__members-buttons {
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        text-align: end;
    }

    .tour-booking__members-buttons a {
        text-decoration: none;
        display: inline-block;
        width: 24px;
        height: 24px;
        // padding: 5px 10px 5px 10px;
        color: var(--tr-color-blue-100);
        background-color: var(--tr-color-blue-30);
        border-radius: 26px;
        text-align: center;
        vertical-align: text-top;
        // .M-desktop-semi-bold;
        .M-medium-desktop;
    }

    .tour-booking__members-buttons a:hover {
        background-color: var(--tr-color-blue-70);
    }

    .tour-booking__members-buttons span {
        margin-left: 8px;
        margin-right: 8px;
        .M-regular-mobile;
    }

    /** --------------------- organizer-info Mobile ------------------------ **/

    .organizer-info {
        display: flex;
        flex-direction: row;
    }

    .organizer-info img {
        width: 73px;
        height: 73px;
        border-radius: 40px;
    }

    .organizer-info__text-block {
        padding-left: 24px;
    }

    .organizer-info__name {
        line-height: 24px;
    }

    .organizer-info__name span {
        vertical-align: middle;
        .M-semi-bold-mobile;
    }

    .organizer-info__name i {
        margin-left: 11px;
        color: var(--tr-color-blue-100);
        font-size: 16px;
        vertical-align: middle;
    }

    .organizer-info__type {
        color: var(--tr-color-gray-70);
        .M-regular-mobile;
    }

    .organizer-info__rate {
        margin-top: 8px;
        line-height: 24px;
        color: var(--tr-color-gray-70);
        .M-regular-mobile;
    }

    .organizer-info__rate i {
        margin-right: 4px;
        font-size: 14px;
        color: var(--tr-color-blue-100);
        vertical-align: middle;
    }

    .organizer-info__rate span {
        vertical-align: middle;
    }

    .organizer-info__rate span:first-of-type {
        margin-right: 8px;
        color: var(--tr-color-black);
        .M-semi-bold-mobile;
    }

    .organizer-info__rate span:last-of-type {
        .M-regular-mobile;
    }

    .organizer-info__arrow {
        flex-grow: 1;
        text-align: end;
    }

    .organizer-info__arrow i {
        font-size: 24px;
        line-height: 24px;
        color: var(--tr-color-gray-60);
    }

    .tour-info-organizer_link {
        text-decoration: none;
        color: var(--tr-color-black);
    }

    .tour-info-organizer_link:hover {
        color: inherit;
    }

    /** --------------------- tour-info-header Mobile ------------------------ **/

    .tour-info-header {
        .M-regular-mobile;
    }

    .tour-info-header h3 {
        .H1-mobile;
        text-transform: uppercase;
    }

    .tour-info-header h3 span {
        display: none;
    }

    .tour-info-header div {
        margin-top: 16px;
    }

    .tour-info-header__rate {
        color: var(--tr-color-gray-70);
        .M-regular-mobile;
    }

    .tour-info-header__rate i {
        margin-right: 2px;
        font-size: 16px;
        color: var(--tr-color-blue-100);
        vertical-align: middle;
    }

    .tour-info-header__rate span {
        vertical-align: middle;
    }

    .tour-info-header__rate span:first-of-type {
        margin-right: 8px;
        color: var(--tr-color-black);
        .M-semi-bold-mobile;
    }

    /** --------------------- tour-info-types Mobile ------------------------ **/

    .tour-info-types div {
        margin-top: -8px;
    }

    .tour-info-types span {
        display: inline-block;
        margin-right: 8px;
        margin-top: 8px;
        padding: 8px 20px 8px 20px;
        color: var(--tr-color-blue-100);
        background-color: var(--tr-color-blue-30);
        border-radius: 40px;
        .M-regular-mobile;
    }

    /** --------------------- tour-info-items Mobile ------------------------ **/

    .tour-info-items .row {
        margin-top: -20px;
        --bs-gutter-y: 0;
    }

    .tour-info-items__item {
        margin-top: 20px;
        padding-left: 30px;
        position: relative;
        .M-regular-mobile;
    }

    .tour-info-items__item h6 {
        margin-top: 0;
        margin-bottom: 4px;
        .M-semi-bold-mobile;
    }

    .tour-info-items__item i {
        position: absolute;
        font-size: 20px;
        left: 0;
        color: var(--tr-color-blue-100);
    }

    /** --------------------- tour-info-description Mobile ------------------------ **/

    .tour-info-description {
        .M-regular-mobile;
    }

    .tour-info-description h4 {
        margin-bottom: 28px;
        text-transform: uppercase;
        .H1-mobile;
    }

    .tour-info-description__text {
        --tr-collapse-max-height: 135px;
        --tr-collapse-min-height: 135px;
    }

    .tour-info-description__more {
        margin-top: 12px;
    }

    .tour-info-description__more a {
        text-decoration: none;
        vertical-align: middle;
        color: var(--tr-color-gray-70);
        .M-regular-mobile;
    }

    .tour-info-description__more a i {
        margin-left: 8px;
        font-size: 16px;
        line-height: 16px;
        vertical-align: text-top;
    }

    /** --------------------- tour-info-route Mobile ------------------------ **/

    .tour-info-route {
        .M-regular-mobile;
    }

    .tour-info-route h4 {
        margin-bottom: 28px;
        text-transform: uppercase;
        .H1-mobile;
    }

    .tour-info-route_buttons {
        margin-bottom: 28px;
    }

    .tour-info-route__send {
        display: none;
    }

    .tour-info-route__send a {
        text-decoration: none;
        color: var(--tr-color-blue-100);
    }

    .tour-info-route__send a span {
        vertical-align: middle;
    }

    .tour-info-route__send i {
        font-size: 24px;
        margin-right: 8px;
        vertical-align: middle;
    }

    .tour-info-route__open-all {
        margin-top: -49px;
        text-align: right;
    }

    .tour-info-route__open-all a {
        text-decoration: none;
        color: var(--tr-color-gray-70);
    }

    .route-day {
        margin-bottom: 24px;
        position: relative;
    }

    .route-day__switch {
        float: right;
        color: var(--tr-color-gray-90);
        font-size: 24px;
        line-height: 20px;
    }

    .route-day__switch a {
        text-decoration: none;
        color: var(--tr-color-gray-90);
    }

    .route-day__switch a:hover {
        color: var(--tr-color-black);
    }

    .route-day__switch i {
        font-size: 24px;
        line-height: 20px;
    }

    .route-day__label {
        display: inline-block;
        margin-bottom: 12px;
        padding: 5px 15px 5px 15px;
        border-radius: 50px;
        background: var(--tr-color-gray-30);
        color: var(--tr-color-gray-70);
        .M-regular-mobile;
    }

    .route-day h5 {
        margin-bottom: 12px;
        .H4-mobile;
    }

    .route-day h6 {
        margin-top: 12px;
        margin-bottom: 12px;
        .M-medium-mobile;
    }

    .route-day__info {
        margin-bottom: 8px;
        vertical-align: middle;
    }

    .route-day__info i {
        font-size: 16px;
        line-height: 16px;
        margin-right: 8px;
        color: var(--tr-color-blue-100);
        vertical-align: text-top;
    }

    .route-day__images {
        --bs-gutter-x: 8px;
        margin-top: 16px;
    }

    .route-day__image {
        border-radius: 5px;
        width: 100%;
        --bs-gutter-x: 8px;
    }


    /** --------------------- tour-info-mapbox Mobile ------------------------ **/

    .tour-info-mapbox {
        margin: 20px 16px 0 16px;
        border-radius: 10px;
    }

    .tour-info-mapbox img {
        border-radius: 10px;
    }

    /** --------------------- tour-info-organizer Mobile ------------------------ **/

    .tour-info-organizer {
        .M-regular-mobile;
    }

    .tour-info-organizer h4 {
        margin-bottom: 24px;
        .H4-desktop;
    }

    .tour-info-organizer__info {
        width: 100%;
    }

    .tour-info-organizer__about {
        margin-top: 24px;
        --tr-collapse-max-height: 135px;
        --tr-collapse-min-height: 135px;
        .M-regular-mobile;
    }

    .tour-info-organizer__about-more {
        margin-top: 12px;
    }

    .tour-info-organizer__about-more a {
        margin: 0;
        text-decoration: none;
        color: var(--tr-gray-70);
        vertical-align: middle;
        .M-regular-mobile;
    }

    .tour-info-organizer__about-more a i {
        font-size: 16px;
        margin-left: 6px;
        vertical-align: text-top;
    }

    .tour-info-organizer__buttons {
        margin-top: 24px;
    }

    .tour-info-organizer__buttons_mobile {
        display: flex;
        flex-direction: row;
        margin-left: -8px;
        margin-right: -8px;
    }

    .tour-info-organizer__buttons_mobile .btn{
        display: block;
        width: 50%;
        margin-left: 8px;
        margin-right: 8px;
        padding-top: 15px;
        padding-bottom: 15px;
        .M-regular-mobile
    }

    .tour-info-organizer__buttons_tablet {
        display: none;
    }

    .tour-info-organizer__buttons .btn {
        vertical-align: middle;
    }

    .tour-info-organizer__buttons i {
        font-size: 16px;
        margin-right: 8px;
        vertical-align: text-bottom;
    }

    /** --------------------- tour-info-allocation Mobile ------------------------ **/

    .tour-info-allocation {
        .M-regular-mobile;
    }

    .tour-info-allocation h4 {
        margin-bottom: 24px;
        text-transform: uppercase;
        .H1-mobile;
    }

    .allocation-hotel {
        margin-bottom: 24px;
    }

    .allocation-hotel:last-of-type {
        margin-bottom: 0;
    }

    .allocation-hotel__image {
        position: relative;
    }

    .allocation-hotel__image img {
        border-radius: 12px;
    }

    .allocation-hotel__image a {
        cursor: pointer;
        display: inline-block;
        position: absolute;
        top: calc(50% - 12px);
        width: 24px;
        height: 24px;
        color: var(--tr-gray-90);
        background-color: var(--tr-color-white);
        text-align: center;
        border-radius: 24px;
    }

    .allocation-hotel__image i {
        font-size:  14px;
        line-height: 14px;
        vertical-align: middle;
    }

    .allocation-hotel__image a:hover {
        background-color: var(--tr-color-gray-30);
    }

    .allocation-hotel__image a:first-of-type {
        left: 8px;
        padding-right: 2px;
    }

    .allocation-hotel__image a:last-of-type {
        right: 8px;
        padding-left: 2px;
    }

    .allocation-hotel h6 {
        margin-top: 20px;
        margin-bottom: 4px;
        .H4-mobile;
    }

    .allocation-hotel__days {
        margin-top: 20px;
    }

    .allocation-hotel__days span {
        display: inline-block;
        margin-right: 10px;
        padding: 4px 12px 4px 12px;
        border-radius: 50px;
        background-color: var(--tr-color-gray-30);
        color: var(--tr-color-gray-70);
        .S-mobile;
    }

    .allocation-hotel__stars {
        color: var(--tr-color-blue-100);
        font-size: 14px;
        vertical-align: text-bottom;
    }

    /** --------------------- tour-info-services Mobile ------------------------ **/

    .tour-info-services {
        .M-regular-mobile;
    }

    .tour-info-services h4 {
        margin-bottom: 24px;
        text-transform: uppercase;
        .H1-mobile;
    }

    .tour-info-services p {
        color: var(--tr-color-gray-70);
        margin-bottom: 28px;
    }

    .tour-info-services__item {
        margin-top: 16px;
        display: flex;
        flex-direction: column;
    }

    .tour-info-services__item div:first-child {
        flex-grow: 1;
    }

    .tour-info-services__item div:last-child {
        .M-regular-mobile;
    }

    .tour-info-services__item i {
        margin-left: 8px;
        color: var(--tr-color-gray-60);
    }

    /** --------------------- tour-info-conditions Mobile ------------------------ **/

    .tour-info-conditions {
        .M-regular-mobile;
    }

    .tour-info-conditions h4 {
        margin-bottom: 24px;
        text-transform: uppercase;
        .H1-mobile;
    }

    .tour-info-conditions__block {
        margin-bottom: 30px;
    }

    .tour-info-conditions__block h6 {
        margin-bottom: 16px;
        .H3-semi-bold-mobile;
    }

    .tour-info-conditions__item {
        margin-bottom: 12px;
        display: flex;
        flex-direction: row;
    }

    .tour-info-conditions__item div {
        align-self: center;
    }

    .tour-info-conditions__item div:first-of-type {
        width: 20px;
        flex-shrink: 0;
    }

    .tour-info-conditions__item i {
        margin-right: 8px;
        font-size: 16px;
        color: var(--tr-color-gray-70);
    }

    .tour-info-conditions__block_included i {
        color: var(--tr-color-green-100);
    }

    /** --------------------- tour-info-arrival Mobile ------------------------ **/

    .tour-info-arrival {
        .M-regular-mobile;
    }

    .tour-info-arrival h4 {
        margin-bottom: 32px;
        text-transform: uppercase;
        .H1-mobile;
    }

    .tour-info-arrival__blocks {
        display: flex;
        flex-direction: column;
    }

    .arrival-block {
        padding-left: 40px;
        width: 100%;
        position: relative;
    }

    .arrival-block__title {
        display: flex;
        flex-direction: row;
        margin-bottom: 12px;
    }

    .arrival-block__title h6 {
        align-self: center;
        flex-grow: 1;
        margin: 0;
        .H3-semi-bold-mobile;
    }

    .arrival-block__flag {
        align-self: center;
        left: 0;
        font-size: 24px;
        position: absolute;
        color: var(--tr-color-blue-100);
    }

    .arrival-block p {
        margin-top: 0;
        margin-bottom: 4px;
    }

    .arrival-block__date {
        .H4-mobile;
    }

    .arrival-block_last {
        margin-top: 32px;
    }

    .arrival-block_last .arrival-block__flag {
        color: var(--tr-color-green-100);
    }

    .arrival-block__map {
        display: inline-block;
        width: 40px;
        height: 40px;
        text-align: center;
        line-height: 34px;
        background: var(--tr-color-blue-30);
        border-radius: 55px;
    }

    .arrival-block__map:hover {
        background: var(--tr-color-blue-70);
    }

    .arrival-block__map i {
        font-size: 24px;
        color: var(--tr-color-blue-100) !important;
        vertical-align: middle;
    }

    /** --------------------- tour-info-aviasales Mobile ------------------------ **/

    .tour-info-aviasales div {
        margin-top: 10px;
        text-align: right;
        color: var(--tr-color-gray-70);
        .S-mobile;
    }

    /** --------------------- tour-info-important Mobile ------------------------ **/

    .tour-info-important {
        .M-regular-mobile;
    }

    .tour-info-important h4 {
        margin-bottom: 32px;
        text-transform: uppercase;
        .H1-mobile;
    }

    .important-item {
        margin-bottom: 28px;
    }

    .important-item__header {
        cursor: pointer;
        margin-bottom: 0;
        padding-right: 33px;
        position: relative;
        .H3-semi-bold-mobile;
    }

    .important-item__header i {
        display: inline-block;
        position: absolute;
        right: 0;
        top: 0;
        font-size: 24px;
        color: var(--tr-color-gray-90);
        cursor: pointer;
        vertical-align: middle;
    }

    .important-item__description {
        margin-top: 16px;
    }

    /** --------------------- tour-info-prices Mobile ------------------------ **/

    .tour-info-prices {
        .M-regular-mobile;
    }

    .tour-info-prices h4 {
        text-transform: uppercase;
        margin-bottom: 32px;
        .H1-mobile;
    }

    .tour-info-prices__item {
        display: flex;
        flex-direction: column;
        margin-bottom: 24px;
    }

    .tour-info-prices__spacer {
        height: 16px;
    }

    .tour-info-prices__price {
        margin-bottom: 12px;
        .H3-semi-bold-mobile;
    }

    .tour-info-prices__info span {
        float: right;
    }

    .tour-info-prices__info span:first-of-type {
        margin-left: 20px;
        margin-right: 20px;
    }

    .tour-info-prices__button .btn {
        width: 100%;
        padding-top: 15px;
        padding-bottom: 15px;
        .M-regular-mobile;
    }

    .tour-info-prices__button-all {
        margin-top: 32px;
    }

    .tour-info-prices__button-all .btn {
        width: 100%;
        padding-top: 15px;
        padding-bottom: 15px;
        .M-regular-mobile;
    }

    /** --------------------- tour-info-reviews Mobile ------------------------ **/

    .tour-info-reviews {
        .M-regular-mobile
    ;
    }

    .tour-info-reviews__header {
        display: flex;
        flex-direction: row;
    }

    .tour-info-reviews__header div:first-of-type{
        flex-grow: 1;
    }

    .tour-info-reviews__header h4 {
        text-transform: uppercase;
        .H1-mobile;
    }

    .tour-info-reviews__button_all {
        margin-top: 32px;
    }

    .tour-info-reviews__button_all .btn {
        width: 100%;
        padding-top: 15px;
        padding-bottom: 15px;
        .M-regular-mobile;
    }

    .tour-info-reviews__stars {
        text-wrap: nowrap;
    }

    .tour-info-reviews__stars div:first-of-type {
        .M-semi-bold-mobile;
    }

    .tour-info-reviews__stars div:first-of-type i {
        font-size: 14px;
        line-height: 14px;
        margin-left: 8px;
        margin-right: 4px;
        color: var(--tr-color-blue-100);
    }

    .tour-info-reviews__stars div:last-of-type {
        margin-top: 4px;
        text-align: right;
        color: var(--tr-color-gray-70);
    }

    /** --------------------- tour-page__buttons Mobile ------------------------ **/

    .tour-page__buttons {
        margin: 64px 16px 0 16px;
        padding: 24px;
        border-radius: 12px;
        background-color: var(--tr-color-blue-80);
        display: flex;
        flex-direction: column;
    }

    .tour-page__buttons .btn {
        width: 100%;
        margin-top: 8px;
        --bs-btn-bg: var(--tr-color-white);
        --bs-btn-border-color: var(--tr-color-white);
        text-wrap: nowrap;
        vertical-align: middle;
        padding-top: 9px;
        padding-bottom: 9px;
        .M-regular-mobile;
    }

    .tour-page__buttons .btn:first-of-type {
        margin-top: 0;
    }

    .tour-page__buttons .btn i {
        margin-right: 4px;
        font-size: 16px;
        line-height: 16px;
        vertical-align: text-bottom;
    }

    /** --------------------- similar-tours Mobile ------------------------ **/

    .similar-tours {
        .M-regular-mobile;
    }

    .similar-tours h4 {
        margin-bottom: 32px;
        text-transform: uppercase;
        .H1-mobile;
    }

    .similar-tours__button-all {
        margin-top: 32px;
        text-align: center;
    }

    .similar-tours__button-all .btn {
        .M-regular-mobile;
    }

    /** --------------------- tour-complain Mobile ------------------------ **/

    .tour-complain {
        margin-top: 24px;
        text-align: center;
        .M-regular-mobile;
    }

    .tour-complain a {
        color: var(--tr-color-gray-70);
        text-decoration:none;
    }

    .tour-complain a:hover {
        color: var(--tr-color-gray-80);
    }

    .tour-complain a span {
        vertical-align: middle;
    }

    .tour-complain i {
        font-size: 20px;
        line-height: 20px;
        margin-right: 8px;
        vertical-align: middle;
    }

}

@media (min-width: 768px) {

    main {
        margin-top: 0;
    }

    footer {
        margin-top: 140px;
    }

    .gallery-mobile {
        display: none;
    }

    /** --------------------- tour-page Tablet ------------------------ **/

    .tour-page {
        margin-top: 64px;
    }

    .tour-page__header {
        margin: 0 12px 0 12px;
    }

    .tour-page__gallery {
        display: block;
        margin: 40px 12px 0 12px;
    }

    .tour-page__types {
        margin: 40px 12px 0 12px;
    }

    .tour-page__items {
        margin: 40px 12px 0 12px;
    }

    .tour-page__description {
        margin: 80px 12px 0 12px;
    }

    .tour-page__booking {
        margin: 40px 12px 0 12px;
    }

    .tour-page__route {
        margin: 80px 12px 0 12px;
    }

    .tour-page__mapbox {
        margin: 40px 12px 0 12px;
    }

    .tour-page__organizer {
        margin: 80px 12px 0 12px;
    }

    .tour-page__allocation {
        margin: 80px 12px 0 12px;
    }

    .tour-page__services {
        margin: 80px 12px 0 12px;
    }

    .tour-page__conditions {
        margin: 80px 12px 0 12px;
    }

    .tour-page__arrival {
        margin: 80px 12px 0 12px;
    }

    .tour-page__aviasales {
        margin: 80px 12px 0 12px;
    }

    .tour-page__important {
        margin: 80px 12px 0 12px;
    }

    .tour-page__prices {
        margin: 80px 12px 0 12px;
    }

    .tour-page__reviews {
        margin: 80px 12px 0 12px;
    }

    .tour-page__similar-tours {
        margin: 80px 12px 0 12px;
    }

    /** --------------------- tour-booking Tablet ------------------------ **/

    .tour-booking__price {
        vertical-align: middle;
        .H1-mobile;
    }

    .tour-booking__discount {
        float: right;
    }

    .tour-booking__price-details {
        .S-regular-desktop;
    }

    .tour-booking__prev-price {
        display: inline-block;
        margin-top: 0;
        margin-left: 20px;
        .XS-semi-bold-desktop;
    }

    .tour-booking__discount {
        .S-mobile;
    }

    .tour-booking__members-title {
        .M-medium-desktop;
    }

    .tour-booking__members-places {
        margin-top: 18px;
        margin-bottom: 3px;
        .M-desktop;
    }

    .tour-booking__dates label {
        .M-medium-desktop;
    }

    .tour-booking__dates select {
        .M-desktop;
    }

    .tour-booking__button .btn {
        .M-medium-desktop;
    }

    .tour-booking__description {
        .S-regular-desktop;
    }

    .tour-booking__members-buttons {
        text-align: start;
    }

    .tour-booking__members-buttons a {
        .M-medium-desktop;
    }


    .tour-booking__members-buttons span {
        .M-desktop;
    }

    /** --------------------- organizer-info Tablet ------------------------ **/

    .organizer-info__name span {
        text-wrap: nowrap;
        .M-desktop-semi-bold;
    }

    .organizer-info__name i {
        font-size: 24px;
    }

    .organizer-info__type {
        text-wrap: nowrap;
        .M-desktop;
    }

    .organizer-info__rate {
        margin-top: 4px;
        .M-desktop;
    }

    .organizer-info__rate i {
        margin-right: 2px;
        font-size: 18px;
    }

    .organizer-info__rate span:first-of-type {
        .M-desktop-semi-bold;
    }

    .organizer-info__rate span:last-of-type {
        .M-desktop;
    }

    .organizer-info__arrow {
        display: none;
    }

    /** --------------------- tour-info-header Tablet ------------------------ **/

    .tour-info-header {
        .M-desktop;
    }

    .tour-info-header h3 {
        padding-right: 64px;
        position: relative;
        text-transform: none;
        .H3-desktop
    }

    .tour-info-header h3 span {
        display: inline-block;
        position: absolute;
        right: 0;
        top: 0;
    }

    .tour-info-header div {
        margin-top: 19px;
    }

    .tour-info-header h3 i {
        font-size: 24px;
    }

    .tour-info-header h3 i:last-of-type {
        margin-left: 12px;
    }

    .tour-info-header__rate {
        .M-desktop;
    }

    .tour-info-header__rate i {
        margin-right: 2px;
        font-size: 18px;
        vertical-align: middle;
    }

    .tour-info-header__rate span {
        vertical-align: middle;
    }

    .tour-info-header__rate span:first-of-type {
        margin-right: 8px;
        .M-desktop-semi-bold;
    }

    /** --------------------- tour-info-gallery Tablet ------------------------ **/

    .tour-info-gallery__cols {
        margin-top: -13px;
        display: flex;
        flex-direction: row;
    }

    .tour-info-gallery__col-left {
        max-width: 479px;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }

    .tour-info-gallery__col-right {
        min-width: 253px;
    }

    .tour-info-gallery__image {
        border-radius: 12px;
        cursor: pointer;
    }

    .tour-info-gallery__col-left div {
        width: 50%;
        padding-right: 13px;
    }

    .tour-info-gallery__col-left div:first-of-type {
        width: 100%;
    }

    .tour-info-gallery__col-left div, .tour-info-gallery__col-right div {
        padding-top: 13px;
    }

    .tour-info-gallery__col-right div {
        position: relative;
    }

    .tour-info-gallery__btn-all {
        display: inline-block;

        position: absolute;
        padding: 9px 12px 9px 12px;

        bottom: 20px;
        right: 20px;
        //transform: translate(-50%, -50%);

        text-decoration: none;

        background-color: rgba(255,255,255,0.4);
        backdrop-filter: blur(15px);

        border-radius: 40px;
        text-wrap: nowrap;

        color: var(--tr-color-white);
        vertical-align: middle;
        .S-regular-desktop;
    }

    .tour-info-gallery__btn-all i {
        font-size: 20px;
        margin-right: 4px;
        vertical-align: text-bottom;
    }

    /** --------------------- tour-info-types Tablet ------------------------ **/

    .tour-info-types span {
        display: inline-block;
        margin-right: 10px;
        border-radius: 30px;
        .M-desktop;
    }

    /** --------------------- tour-info-items Tablet ------------------------ **/


    .tour-info-items__item {
        padding-left: 27px;
        .M-desktop;
    }

    .tour-info-items__item h6 {
        .M-medium-desktop;
    }

    /** --------------------- tour-info-description Tablet ------------------------ **/

    .tour-info-description {
        .M-desktop;
    }

    .tour-info-description h4 {
        margin-bottom: 40px;
        text-transform: none;
        .H4-desktop;
    }

    .tour-info-description__more a {
        .M-desktop;
    }

    .tour-info-description__more a i {
        font-size: 20px;
        line-height: 20px;
    }

    /** --------------------- tour-info-route Tablet ------------------------ **/

    .tour-info-route {
        .M-desktop;
    }

    .tour-info-route h4 {
        text-transform: none;
        .H4-desktop;
    }

    .tour-info-route_buttons {
        display: flex;
        flex-direction: row;
    }

    .tour-info-route_buttons div {
        flex-grow: 1;
    }

    .tour-info-route__send {
        display: block;
    }

    .tour-info-route__open-all {
        margin: 0;
    }

    .route-day {
        padding-left: 88px;
    }

    .route-day__label {
        left: 0;
        position: absolute;
        padding: 4px 12px 4px 12px;
        .S-regular-desktop;
    }

    .route-day h5 {
        margin-bottom: 24px;
        .L-bold-desktop;
    }

    .route-day h6 {
        margin-top: 20px;
        .M-desktop-semi-bold;
    }

    .route-day__info i {
        font-size: 20px;
        margin-right: 10px;
        vertical-align: text-bottom;
    }

    .route-day__images {
        --bs-gutter-x: 20px;
        margin-top: 24px;
    }

    .route-day__image {
        border-radius: 12px;
        width: 100%;
        --bs-gutter-x: 10px;
    }

    /** --------------------- tour-info-mapbox Tablet ------------------------ **/

    .tour-info-mapbox {
        margin-top: 40px ;
        border-radius: 12px;
    }

    .tour-info-mapbox img {
        border-radius: 12px;
    }

    /** --------------------- tour-info-organizer Tablet ------------------------ **/

    .tour-info-organizer h4 {
        margin-bottom: 40px;
        .H4-desktop;
    }

    .tour-info-organizer__info {
        width: 230px;
    }

    .tour-info-organizer__about {
        .M-desktop;
    }

    .tour-info-organizer__about-more a {
        .M-desktop;
    }

    .tour-info-organizer__about-more a i {
        font-size: 20px;
        margin-left: 8px;
    }

    .tour-info-organizer__buttons {
        .M-desktop;
    }

    .tour-info-organizer__buttons_mobile {
        display: none;
    }

    .tour-info-organizer__buttons_tablet {
        display: block;
    }

    .tour-info-organizer__buttons .btn {
        margin-right: 12px;
        vertical-align: middle;
    }

    .tour-info-organizer__buttons i {
        font-size: 20px;
        margin-right: 4px;
        vertical-align: text-bottom;
    }

    /** --------------------- tour-info-allocation Tablet ------------------------ **/

    .tour-info-allocation {
        .M-desktop;
    }

    .tour-info-allocation h4 {
        margin-bottom: 40px;
        text-transform: none;
        .H4-desktop;
    }

    .allocation-hotel__image {
        position: relative;
    }

    .allocation-hotel__image img {
        border-radius: 12px;
    }

    .allocation-hotel__image a {
        cursor: pointer;
        display: inline-block;
        position: absolute;
        top: calc(50% - 12px);
        width: 24px;
        height: 24px;
        color: var(--tr-gray-90);
        background-color: var(--tr-color-white);
        text-align: center;
        border-radius: 24px;
    }

    .allocation-hotel__image i {
        font-size:  14px;
        line-height: 14px;
        vertical-align: middle;
    }

    .allocation-hotel__image a:hover {
        background-color: var(--tr-color-gray-30);
    }

    .allocation-hotel__image a:first-of-type {
        left: 8px;
        padding-right: 2px;
    }

    .allocation-hotel__image a:last-of-type {
        right: 8px;
        padding-left: 2px;
    }

    .allocation-hotel h6 {
        margin-top: 20px;
        margin-bottom: 4px;
        .M-desktop-semi-bold;
    }

    .allocation-hotel__days {
        margin-top: 20px;
    }

    .allocation-hotel__days span {
        display: inline-block;
        margin-right: 10px;
        padding: 4px 12px 4px 12px;
        border-radius: 50px;
        background-color: var(--tr-color-gray-30);
        color: var(--tr-color-gray-70);
        .S-regular-desktop;
    }

    .allocation-hotel__stars {
        color: var(--tr-color-blue-100);
        font-size: 20px;
        vertical-align: text-bottom;
    }

    /** --------------------- tour-info-services Tablet ------------------------ **/

    .tour-info-services {
        .M-desktop;
    }

    .tour-info-services h4 {
        margin-bottom: 16px;
        text-transform: none;
        .H4-desktop;
    }

    .tour-info-services p {
        color: var(--tr-color-gray-70);
        margin-bottom: 28px;
    }

    .tour-info-services__item {
        margin-top: 16px;
        display: flex;
        flex-direction: row;
    }

    .tour-info-services__item div:first-child {
        flex-grow: 1;
    }

    .tour-info-services__item div:last-child {
        .M-medium-desktop;
    }

    .tour-info-services__item i {
        margin-left: 8px;
        color: var(--tr-color-gray-60);
    }

    /** --------------------- tour-info-conditions Tablet ------------------------ **/

    .tour-info-conditions {
        .M-desktop;
    }

    .tour-info-conditions h4 {
        margin-bottom: 40px;
        text-transform: none;
        .H4-desktop;
    }

    .tour-info-conditions__block h6 {
        .M-desktop-semi-bold;
    }

    .tour-info-conditions__item {
        margin-bottom: 4px;
    }

    .tour-info-conditions__item div:first-of-type {
        width: 28px;
        flex-shrink: 0;
    }

    .tour-info-conditions__item i {
        font-size: 24px;
    }

    /** --------------------- tour-info-arrival Tablet ------------------------ **/

    .tour-info-arrival {
        .M-desktop;
    }

    .tour-info-arrival h4 {
        margin-bottom: 40px;
        text-transform: none;
        .H4-desktop;
    }

    .tour-info-arrival__blocks {
        flex-direction: row;
    }

    .arrival-block {
        padding-left: 44px;
        padding-right: 44px;
        width: 50%;
    }

    .arrival-block__title {
        margin-bottom: 15px;
    }

    .arrival-block__title h6 {
        .M-desktop-semi-bold;
    }

    .arrival-block__date {
        .M-medium-desktop;
    }

    .arrival-block p {
        margin-bottom: 5px;
    }

    .arrival-block_last {
        margin-top: 0;
    }

    .arrival-block__map {
        width: 32px;
        height: 32px;
        text-align: center;
        line-height: 28px;
        border-radius: 55px;
    }

    .arrival-block__map i {
        font-size: 16px;
        vertical-align: middle;
    }

    /** --------------------- tour-info-aviasales Tablet ------------------------ **/

    .tour-info-aviasales div {
        margin-top: 12px;
        text-align: right;
        color: var(--tr-color-gray-70);
        .M-desktop;
    }

    /** --------------------- tour-info-important Tablet ------------------------ **/

    .tour-info-important {
        .M-desktop;
    }

    .tour-info-important h4 {
        margin-bottom: 40px;
        text-transform: none;
        .H4-desktop;
    }

    .important-item {
        margin-bottom: 22px;
    }

    .important-item__header {
        margin-bottom: 0;
        .L-regular-desktop;
    }

    .important-item__header i {
        display: inline-block;
        float: right;
        font-size: 24px;
        vertical-align: middle;
    }

    .important-item__description {
        margin-top: 20px;
    }

    /** --------------------- tour-info-prices Tablet ------------------------ **/

    .tour-info-prices {
        .M-desktop;
    }

    .tour-info-prices h4 {
        margin-bottom: 40px;
        .H4-desktop;
    }

    .tour-info-prices__item {
        display: flex;
        flex-direction: row;
    }

    .tour-info-prices__item div:first-of-type {
        width: 364px;
    }

    .tour-info-prices__spacer {
        flex-grow: 1;
    }

    .tour-info-prices__price {
        margin-bottom: 4px;
        .M-desktop-semi-bold;
    }

    .tour-info-prices__info span {
        float: right;
        color: var(--tr-color-gray-90);
    }

    .tour-info-prices__info span:first-of-type {
        margin-left: 20px;
        margin-right: 0;
    }

    .tour-info-prices__button .btn {
        width: auto;
        padding-top: 11px;
        padding-bottom: 11px;
        .M-desktop;
    }

    .tour-info-prices__button-all {
        margin-top: 40px;
    }

    .tour-info-prices__button-all .btn {
        width: auto;
        padding-top: 11px;
        padding-bottom: 11px;
        .M-desktop;
    }

    /** --------------------- tour-info-reviews Tablet ------------------------ **/

    .tour-info-reviews {
        .M-desktop;
    }

    .tour-info-reviews__header h4 {
        text-transform: none;
        .H4-desktop;
    }

    .tour-info-reviews__button_all {
        margin-top: 40px;
    }

    .tour-info-reviews__button_all .btn {
        width: auto;
        padding-top: 11px;
        padding-bottom: 11px;
        .M-desktop;
    }

    .tour-info-reviews__stars div:first-of-type {
        .M-desktop-semi-bold;
    }

    .tour-info-reviews__stars div:first-of-type i {
        font-size: 16px;
        margin-left: 8px;
        margin-right: 4px;
    }

    .tour-info-reviews__stars div:last-of-type {
        margin-top: 4px;
        text-align: right;
    }

    /** --------------------- tour-page__buttons Tablet ------------------------ **/

    .tour-page__buttons {
        margin: 80px 12px 0 12px;
        padding: 16px 7px 16px 7px;
        border-radius: 12px;
        flex-direction: row;
    }

    .tour-page__buttons .btn {
        margin: 0 4px 0 4px;
        .M-desktop;
    }

    .tour-page__buttons .btn i {
        margin-right: 8px;
        font-size: 20px;
        line-height: 20px;
    }

    /** --------------------- similar-tours Tablet ------------------------ **/

    .similar-tours {
        .M-desktop;
    }

    .similar-tours h4 {
        margin-bottom: 60px;
        text-transform: none;
        .H4-desktop;
    }

    .similar-tours__button-all {
        margin-top: 60px;
        text-align: center;
    }

    .similar-tours__button-all .btn {
        .M-desktop;
    }
}


@media (min-width: 1200px) {

    footer {
        margin-top: 200px;
    }

    /** --------------------- tour-page Desktop ------------------------ **/

    .tour-page {
        margin-top: 32px;
    }

    .tour-page__header {
        margin: 0;
    }

    .tour-page__gallery {
        margin: 40px 0 0 0;
    }

    .tour-page__types {
        margin: 40px 0 0 0;
    }

    .tour-page__items {
        margin: 40px 0 0 0;
    }

    .tour-page__description {
        margin: 80px 0 0 0;
    }

    .tour-page__route {
        margin: 80px 0 0 0;
    }

    .tour-page__mapbox {
        margin: 40px 0 0 0;
    }

    .tour-page__organizer {
        margin: 80px 0 0 0;
    }

    .tour-page__allocation {
        margin: 80px 0 0 0;
    }

    .tour-page__services {
        margin: 80px 0 0 0;
    }

    .tour-page__conditions {
        margin: 80px 0 0 0;
    }

    .tour-page__arrival {
        margin: 80px 0 0 0;
    }

    .tour-page__aviasales {
        margin: 80px 0 0 0;
    }

    .tour-page__important {
        margin: 80px 0 0 0;
    }

    .tour-page__prices {
        margin: 80px 0 0 0;
    }

    .tour-page__reviews {
        margin: 80px 0 0 0;
    }

    .tour-page__similar-tours {
        margin: 100px 0 0 0;
    }

    .tour-page__booking {
        display: none;
    }

    .tour-page__booking2 {
        margin-top: 5px;
    }

    .tour-page__organizer-mini {
        margin-top: 24px;
    }

    /** --------------------- tour-complain-mini Desktop ------------------------ **/

    .tour-complain {
        display: none;
    }

    .tour-complain-mini {
        margin-top: 24px;
        text-align: center;
    }

    .tour-complain-mini a {
        color: var(--tr-color-gray-70);
        text-decoration:none;
    }

    .tour-complain-mini a:hover {
        color: var(--tr-color-gray-80);
    }

    .tour-complain-mini a span {
        vertical-align: middle;
    }

    .tour-complain-mini i {
        font-size: 24px;
        line-height: 24px;
        margin-right: 8px;
        vertical-align: middle;
    }

    /** --------------------- tour-booking Desktop ------------------------ **/

    .tour-booking {
        border-radius: 12px;
    }

    .tour-booking__price {
        .H3-desktop;
    }

    .tour-booking__price-details {
        .M-medium-desktop;
    }

    .tour-booking__members-title {
        .M-desktop-semi-bold;
    }

    .tour-booking__members-places {
        margin: 0;
        .XS-regular-desktop;
    }

    .tour-booking__dates label {
        .M-desktop-semi-bold;
    }

    .tour-booking__members-buttons {
        justify-content: center;
        text-align: end;
    }

    .tour-booking__description {
        .M-regular-mobile;
    }

    .tour-booking__button .btn {
        padding-top: 13px;
        padding-bottom: 13px;
    }

    /** --------------------- organizer-info Desktop ------------------------ **/

    /** --------------------- tour-organizer-mini Desktop ------------------------ **/

    .tour-organizer-mini {
        border: 1px solid var(--tr-color-gray-50);
        border-radius: 12px;
        padding: 20px;
    }

    .tour-organizer-mini__buttons {
        margin-top: 24px;
        margin-left: -8px;
        margin-right: -8px;
        display: flex;
        flex-direction: row;
    }

    .tour-organizer-mini__buttons div {
        padding-left: 8px;
        padding-right: 8px;
        width: 100%;
    }

    .tour-organizer-mini__buttons a {
        width: 100%;
        vertical-align: middle;
        .M-desktop;
    }

    .tour-organizer-mini__buttons i {
        font-size: 20px;
        vertical-align: text-bottom;
    }

    /** --------------------- tour-info-header Desktop ------------------------ **/

    /** --------------------- tour-info-gallery Desktop ------------------------ **/

    /** --------------------- tour-info-types Desktop ------------------------ **/

    /** --------------------- tour-info-items Desktop ------------------------ **/

    /** --------------------- tour-info-route Desktop ------------------------ **/

    /** --------------------- tour-info-mapbox Desktop ------------------------ **/

    /** --------------------- tour-info-organizer Desktop ------------------------ **/

    /** --------------------- tour-info-allocation Desktop ------------------------ **/

    /** --------------------- tour-info-services Desktop ------------------------ **/

    /** --------------------- tour-info-conditions Desktop ------------------------ **/

    /** --------------------- tour-info-arrival Desktop ------------------------ **/

    /** --------------------- tour-info-aviasales Desktop ------------------------ **/

    /** --------------------- tour-info-important Desktop ------------------------ **/

    /** --------------------- tour-info-prices Desktop ------------------------ **/

    /** --------------------- tour-info-reviews Desktop ------------------------ **/

    /** --------------------- Tour-Details Tours Desktop ------------------------ **/

    /** --------------------- tour-page__buttons Desktop ------------------------ **/

    .tour-page__buttons {
        margin: 80px 0 0 0;
        padding: 22px 25px 22px 25px;
    }

    .tour-page__buttons .btn {
        margin-left: 7px;
        margin-right: 7px;
    }

    /** --------------------- similar-tours Desktop ------------------------ **/

    .similar-tours h4 {
        margin-bottom: 40px;
    }
}