/* For old browsers */
@supports (not(--css: variables))
{
    .supports_error
    {
        display: flex !important;
    }
}

/* For IE */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none)
{
    .supports_error
    {
        display: flex !important;
    }
}



/*------------------
    Reset styles
------------------*/
*
{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

*:before,
*:after
{
    box-sizing: border-box;
}

html
{
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
        -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body
{
    margin: 0;

    overscroll-behavior-y: contain;
    -webkit-tap-highlight-color: transparent;
    -webkit-overflow-scrolling: touch;
    text-rendering: optimizeLegibility;
    text-decoration-skip: objects;
}

img
{
    border-style: none;
}

textarea
{
    overflow: auto;
}

input,
textarea,
input:active,
textarea:active,
button
{
    margin: 0;

    -webkit-border-radius: 0;
            border-radius: 0;
         outline: none transparent !important;
    box-shadow: none;

    -webkit-appearance: none;
            appearance: none;
    -moz-outline: none !important;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button
{
    margin: 0;

    -webkit-appearance: none;
}

input[type=number]
{
    -moz-appearance: textfield;
}

:focus
{
    outline: 0;
}

:hover,
:active
{
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-touch-callout: none;
}


::-ms-clear
{
    display: none;
}



/*-------------------
    Global styles
-------------------*/
:root
{
    --bg: #fff;
    --sidebar_width: 300px;
    --scroll_width: 17px;
    --text_color: #000;
    --font_size: 16px;
    --font_size_title: 50px;
    --font_family: 'Inter', 'Arial', sans-serif;
}


::selection
{
    color: #fff;

    background: #ff6b00;
}

::-moz-selection
{
    color: #fff;

    background: #ff6b00;
}


.clear
{
    clear: both;
}

.left
{
    float: left;
}

.right
{
    float: right;
}



html
{
    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;
}

html.custom_scroll ::-webkit-scrollbar
{
    width: 10px;
    height: 10px;

    background-color: #ccc;
}

html.custom_scroll ::-webkit-scrollbar-thumb
{
    background-color: #ff6b00;
}

html.custom_scroll
{
    scrollbar-color: #ff6b00 #ccc;
    scrollbar-width: thin;
}


body
{
    color: var(--text_color);
    font: var(--font_size) var(--font_family);

    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;
}

body.menu_open
{
    position: fixed;
    top: 0;
    left: 0;

    overflow: hidden;

    width: 100%;
}


button
{
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;

    display: inline-block;

    cursor: pointer;
    vertical-align: top;

    border: none;
    background: none;
}


.wrap
{
    position: relative;
    z-index: 9;

    display: flex;
    overflow: hidden;
    flex-direction: column;

    min-width: 375px;
    min-height: 100%;

    background: var(--bg);
}


.main
{
    display: flex;
    flex-direction: column;

    flex: 1 0 auto;
}


.cont
{
    width: 100%;
    max-width: 1328px;
    margin: 0 auto;
    padding: 0 24px;
}


.lazyload,
.swiper-lazy
{
    transition: opacity .5s linear;

    opacity: 0;
}

.lazyload.loaded,
.swiper-lazy-loaded
{
    opacity: 1;
}


.row
{
    display: flex;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}



.content_flex
{
    margin-bottom: 140px;
}


.content_flex.row,
.content_flex > .cont.row
{
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
}


.content_flex .content
{
    position: relative;

    width: 820px;
    max-width: calc(100% - var(--sidebar_width) - 40px);
}


.content_flex .content > * + *
{
    margin-top: 100px;
}

.content_flex .content > *:first-child
{
    margin-top: 0;
}

.content_flex .content > *:last-child
{
    margin-bottom: 0;
}


.content_flex.min_aside
{
    --sidebar_width: 270px;
}

.content_flex.min_aside .content
{
    width: 900px;
}


.content_flex.big_aside
{
    --sidebar_width: 360px;
}



.supports_error
{
    font-family: 'Arial', sans-serif;
    font-size: 20px;
    line-height: 30px;

    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;
    padding: 20px;

    text-align: center;

    background: #fff;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.supports_error.show
{
    display: flex;
}



/*--------------
    Fancybox
--------------*/
.fancybox__backdrop
{
    background: rgba(0, 0, 0, .5);
}


.fancybox__slide
{
    padding: 40px;
}


.fancybox__content > .carousel__button.is-close
{
    color: var(--text_color);

    top: 20px;
    right: 20px;

    width: 24px;
    height: 24px;
}

.modal.fancybox__content > .carousel__button.is-close svg
{
    display: block;

    width: 24px;
    height: 24px;

    filter: none;
    stroke: none;
    stroke-width: 0;
}



/*----------------
    Mini modal
----------------*/
.modal_cont
{
    position: relative;
	display:flex;
}


.mini_modal
{
    position: absolute;
    z-index: 100;
    top: calc(100% + 30px);
    left: 0;

    visibility: hidden;

    transition: .3s linear;
    pointer-events: none;

    opacity: 0;
}

.mini_modal.active
{
    top: 100%;

    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}



/*-------------
    Tooltip
-------------*/
.tooltip
{
    position: relative;

    display: inline-block;

    vertical-align: middle;
}


.tooltip .icon
{
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;

    position: relative;
    top: -1px;

    display: block;

    width: 20px;
    height: 20px;
    margin-left: 4px;

    cursor: help;
    transition: .2s linear;
    text-align: center;

    border-radius: 50%;
    background: rgba(0, 0, 0, .12);
}


.tooltip .text
{
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;

    position: absolute;
    z-index: 99;
    right: 10px;
    bottom: 10px;

    visibility: hidden;

    width: 430px;
    padding: 30px;

    transition: .3s linear;
    pointer-events: none;

    opacity: 0;
    border: 1px solid #f2f3f5;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 50px 80px rgba(0, 0, 0, .2);
}


.tooltip:hover .icon
{
    color: #fff;

    background: #ff6b00;
}

.tooltip:hover .text
{
    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}



/*----------
    Tabs
----------*/
.tab_content
{
    position: relative;

    visibility: hidden;
    overflow: hidden;

    height: 0;

    pointer-events: none;

    opacity: 0;
}

.tab_content.active
{
    visibility: visible;
    overflow: visible;

    height: auto;

    transition: opacity .5s linear;
    pointer-events: auto;

    opacity: 1;
}



/*---------------
    Accordion
---------------*/
.accordion
{
    counter-reset: number;
}


.accordion_item
{
    position: relative;

    margin-left: 40px;

    transition: .3s linear;

    border: 1px solid #e2e8ee;
    border-radius: 6px;
}

.accordion_item + .accordion_item
{
    margin-top: 10px;
}


.accordion_item:before
{
    position: absolute;
    top: 70px;
    left: -39px;

    display: block;

    width: 1px;
    height: calc(100% - 50px);

    content: '';

    border-left: 1px dashed #ff6b00;
}

.accordion_item:last-child:before
{
    display: none;
}


.accordion_item .head
{
    position: relative;

    padding: 27px 69px;

    cursor: pointer;
}


.accordion_item .head .icon
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 14px;

    display: flex;

    width: 50px;
    height: 50px;
    margin: auto;

    border-radius: 4px;
    background: #ff6b00;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.accordion_item .head .icon img
{
    display: block;

    max-width: 100%;
    max-height: 100%;
}


.accordion_item .head .number
{
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;

    position: absolute;
    top: 50%;
    left: -41px;

    min-width: 90px;
    height: 40px;
    padding: 10px 18px 10px 19px;

    transform: translateY(-50%);
    text-align: center;
    white-space: nowrap;

    border-radius: 6px 20px 20px 6px;
    background: #ff6b00;
}

.accordion_item .head .number span:before
{
    content: counter(number);
    counter-increment: number;
}


.accordion_item .head .title
{
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;
}


.accordion_item .head:after
{
    position: absolute;
    top: 2px;
    right: 29px;
    bottom: 0;

    display: block;

    width: 18px;
    height: 12px;
    margin: auto;

    content: '';
    transition: transform .3s linear;

    border-top: 12px solid #c7ccd7;
    border-right: 9px solid transparent;
    border-left: 9px solid transparent;
}


.accordion_item .data
{
    display: none;

    padding: 0 69px 67px;
}


.accordion_item.active
{
    border-color: transparent;
    border-top-color: #f2f3f5;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 50px 100px rgba(226, 232, 238, .6);
}

.accordion_item.active .head:after
{
    transform: rotate(180deg);
}



/*---------------
    Load more
---------------*/
.load_more
{
    margin-top: 50px;

    text-align: center;
}


.load_more .btn
{
    display: inline-block;

    width: 353px;
    max-width: 100%;
    padding: 10px 20px 11px;

    vertical-align: top;

    border: 2px solid #ff6b00;
    border-radius: 8px;
}



/*------------
    Header
------------*/
header
{
    position: relative;
    z-index: 9;
    top: 0;
    left: 0;

    width: 100%;
    padding: 25px 0 8px;

    background: #fff;
    box-shadow: 0 20px 40px rgba(0, 0, 0, .05);
}


header .cont
{
    justify-content: space-between;
    align-items: center;
    align-content: center;
}

header .cont + .cont
{
    margin-top: 25px;
}



header .logo
{
    color: currentColor;

    display: block;

    max-width: 160px;

    text-decoration: none;
}

header .logo img
{
    display: block;
    width: 100%;
}



header .data
{
    display: flex;

    width: calc(100% - 200px);

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

header .cont + .cont .data
{
    padding-top: 8px;

    border-top: 1px solid rgba(0, 0, 0, .12);

    align-self: flex-start;
}



header .search
{
    width: 500px;
    max-width: 100%;
}


header .search form
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


header .search ::-webkit-input-placeholder
{
    color: rgba(0, 0, 0, .4);
}

header .search :-moz-placeholder
{
    color: rgba(0, 0, 0, .4);
}

header .search :-ms-input-placeholder
{
    color: rgba(0, 0, 0, .4);
}


header .search .input
{
    color: currentColor;
    font-family: var(--font_family);
    font-size: 14px;
    font-style: italic;

    display: block;

    width: 100%;
    height: 50px;
    padding: 0 71px 2px 39px;

    border: 1px solid rgba(0, 0, 0, .12);
    border-radius: 100px;
    background: none;
}


header .search .submit_btn
{
    color: currentColor;

    display: flex;

    width: 70px;
    height: 50px;
    margin-left: -70px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

header .search .submit_btn .icon
{
    display: block;

    width: 18px;
    height: 18px;
}



header .contacts
{
    display: flex;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


header .contacts .phone
{
    color: currentColor;
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;

    text-align: right;
}

header .contacts .phone a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    white-space: nowrap;
    text-decoration: none;
}


header .contacts .time
{
    color: rgba(0, 0, 0, .4);
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    margin-top: 4px;

    text-align: right;
}

header .contacts .time span
{
    margin-left: 10px;
}


header .messengers
{
    display: flex;

    margin-left: 20px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

header .messengers a
{
    color: currentColor;

    display: block;

    width: 26px;
    height: 26px;

    transition: opacity .3s linear;
    text-decoration: none;

    opacity: .2;
}

header .messengers a + a
{
    margin-left: 14px;
}

header .messengers .icon
{
    display: block;

    width: 26px;
    height: 26px;
}

header .messengers a:hover
{
    opacity: 1;
}



header .pick_up_btn
{
    color: currentColor;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    padding: 14px 36px 15px;

    border: 2px solid #ff6b00;
    border-radius: 1000px;
}



header .all_tours .btn
{
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    display: flex;

    width: 160px;
    height: 50px;
    padding-bottom: 2px;

    border-radius: 100px;
    background: #1da7e2;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


header .all_tours .btn .icon
{
    display: block;

    width: 14px;
    height: 7px;
    margin-right: 10px;
}

header .all_tours .btn .icon + .icon
{
    display: none;

    width: 24px;
    height: 24px;
    margin-right: 5px;
    margin-left: -5px;
}


header .all_tours .btn.active .icon
{
    display: none;
}

header .all_tours .btn.active .icon + .icon
{
    display: block;
}


header .all_tours .mini_modal
{
    color: var(--text_color);

    width: 1280px;
    max-width: calc(100vw - 48px);
    padding: 40px 20px;

    border-radius: 10px;
    background: #fff;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .08);
}

header .all_tours .mini_modal.active
{
    top: calc(100% + 10px);
}


header .all_tours .mini_modal .row
{
    align-items: stretch;
    align-content: stretch;
}


header .all_tours .item
{
    padding-right: 60px;
    padding-left: 60px;
}

header .all_tours .item + .item
{
    border-left: 1px solid rgba(0, 0, 0, .1);
}


header .all_tours .title
{
    font-size: 18px;
    line-height: 22px;

    margin-bottom: 20px;
}


header .all_tours .links
{
    color: rgba(0, 0, 0, .5);
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;
}

header .all_tours .links > * + *
{
    margin-top: 12px;
}


header .all_tours .links a
{
    color: currentColor;

    display: inline-block;

    min-width: 180px;

    transition: .3s linear;
    vertical-align: top;
    white-space: nowrap;
    text-decoration: none;
}

header .all_tours .links a:hover,
header .all_tours .links a.active
{
    color: #ff6b00;
    font-weight: 700;
}



header .menu_item
{
    position: relative;
}

header .menu_item + .menu_item
{
    margin-left: 36px;
}


header .menu_item > a
{
    color: currentColor;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    position: relative;

    display: flex;

    height: 33px;

    text-decoration: none;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

header .menu_item > a:after
{
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

    width: 0;
    height: 2px;
    margin: auto;

    content: '';
    transition: width .3s linear;

    background: #ff6b00;
}


header .menu_item > a .icon
{
    color: #ff6b00;

    display: block;

    width: 14px;
    height: 14px;
    margin-top: 2px;
    margin-left: 5px;

    transition: transform .3s linear;
}


header .menu_item:hover > a .icon
{
    transform: rotate(180deg);
}

header .menu_item > a.active:after
{
    width: 100%;
}


header .sub_menu
{
    position: absolute;
    z-index: 9;
    top: calc(100% + 30px);
    left: 0;

    visibility: hidden;

    width: 270px;
    padding: 25px;

    transition: .3s linear;
    pointer-events: none;

    opacity: 0;
    border: 1px solid #f2f3f5;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 50px 80px rgba(0, 0, 0, .2);
}

header .sub_menu:before
{
    position: absolute;
    bottom: 100%;
    left: 0;

    display: block;

    width: 100%;
    height: 4px;

    content: '';
}


header .menu_item:hover > a.touch_link + .sub_menu
{
    top: calc(100% + 30px);

    visibility: hidden;

    pointer-events: none;

    opacity: 0;
}

header .menu_item:hover .sub_menu,
header .menu_item > a.touch_link + .sub_menu.show
{
    top: calc(100% + 2px);

    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}


header .sub_menu > * + *
{
    margin-top: 10px;
}

header .sub_menu a
{
    color: var(--text_color);
    font-size: 14px;
    line-height: 17px;

    display: block;

    transition: color .3s linear;
    text-decoration: none;
}

header .sub_menu a:hover,
header .sub_menu a.active
{
    color: #1da7e2;

    text-decoration: underline;
}



header .you_watched
{
    color: currentColor;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    margin-bottom: -4px;
    margin-left: auto;
}

header .you_watched button
{
    color: #ff6b00;

    margin-left: 6px;
    padding-bottom: 3px;

    border-bottom: 1px dashed;
}



.maindddd header
{
    color: #fff;

    position: absolute;

    margin: 0;

    background: none;
    box-shadow: none;
}


.maindddd header .cont + .cont .data
{
    border-top-color: rgba(255, 255, 255, .12);
}


.maindddd header .search ::-webkit-input-placeholder
{
    color: rgba(255, 255, 255, .4);
}

.maindddd header .search :-moz-placeholder
{
    color: rgba(255, 255, 255, .4);
}

.maindddd header .search :-ms-input-placeholder
{
    color: rgba(255, 255, 255, .4);
}

.maindddd header .search .input
{
    border-color: rgba(255, 255, 255, .12);
}


.maindddd header .contacts .time
{
    color: rgba(255, 255, 255, .4);
}


.maindddd header .pick_up_btn
{
    border-color: #fff;
}



/*-----------------
    Mob. header
-----------------*/
.mob_header
{
    position: relative;
    z-index: 9;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    padding: 20px 0;

    background: #fff;
    box-shadow: 0 20px 40px rgba(0, 0, 0, .05);
}


.mob_header .cont
{
    justify-content: space-between;
    align-items: center;
    align-content: center;
}



.mob_header .logo
{
    color: currentColor;

    display: block;

    margin-right: auto;

    text-decoration: none;
}

.mob_header .logo img
{
    display: block;

    width: 100px;
}



.mob_header .search .btn
{
    display: flex;

    width: 40px;
    height: 40px;

    border: 1px solid rgba(0, 0, 0, .12);
    border-radius: 10px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.mob_header .search .btn .icon
{
    display: block;

    width: 30px;
    height: 30px;
}


.mob_header .search .btn.active
{
    pointer-events: none;

    opacity: 0;
}


.mob_header .search .mini_modal
{
    top: 0;
    right: 0;
    left: auto;

    width: 185px;
}

.mob_header .search form
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.mob_header .search ::-webkit-input-placeholder
{
    color: #000;
}

.mob_header .search :-moz-placeholder
{
    color: #000;
}

.mob_header .search :-ms-input-placeholder
{
    color: #000;
}

.mob_header .search .input
{
    color: var(--text_color);
    font-family: var(--font_family);
    font-size: 10px;
    font-weight: 500;

    display: block;

    width: 100%;
    height: 40px;
    padding: 0 32px 0 11px;

    border: 1px solid rgba(0, 0, 0, .12);
    border-radius: 10px;
    background: none;
}

.mob_header .search .submit_btn
{
    display: flex;

    width: 31px;
    height: 40px;
    margin-left: -31px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.mob_header .search .submit_btn .icon
{
    display: block;

    width: 11px;
    height: 14px;

    transform: rotate(180deg);
}



.mob_header .mob_menu_btn
{
    color: #ff6b00;

    display: flex;

    width: 24px;
    height: 20px;
    margin-left: 15px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.mob_header .mob_menu_btn .icon
{
    display: block;

    width: 24px;
    height: 20px;
}



.maindddd .mob_header
{
    color: #fff;

    position: absolute;

    background: none;
    box-shadow: none;
}


.maindddd .mob_header .search .btn
{
    border: 1px solid rgba(255, 255, 255, .3);
}

.maindddd .mob_header .search .input
{
    color: #fff;

    border-color: #fff;
}

.maindddd .mob_header .search ::-webkit-input-placeholder
{
    color: #fff;
}

.maindddd .mob_header .search :-moz-placeholder
{
    color: #fff;
}

.maindddd .mob_header .search :-ms-input-placeholder
{
    color: #fff;
}



/*---------------
    Mob. menu
---------------*/
#mob_menu
{
    position: fixed;
    z-index: 90;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;
    background: #000;
}

#mob_menu:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    background: linear-gradient(180deg, rgba(0, 0, 0, .7) 0%, rgba(0, 0, 0, .1) 100%);
}

#mob_menu.show
{
    display: block;
}


#mob_menu .cont
{
    overflow: auto;

    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;
    padding-bottom: 30px;
}


#mob_menu .bg
{
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


#mob_menu .head
{
    display: flex;

    margin-bottom: 10px;
    padding: 23px 0;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}



#mob_menu .logo
{
    color: currentColor;

    display: block;

    margin-right: auto;

    text-decoration: none;
}

#mob_menu .logo img
{
    display: block;

    width: 100px;
}



#mob_menu .head .close_btn
{
    color: #ff6b00;

    position: relative;
    top: 3px;
    left: 5px;

    display: flex;

    width: 34px;
    height: 34px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

#mob_menu .head .close_btn .icon
{
    display: block;

    width: 34px;
    height: 34px;
}



#mob_menu .btns
{
    display: flex;

    padding-bottom: 24px;

    border-bottom: 1px solid rgba(255, 255, 255, .5);

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

#mob_menu .btns > *
{
    width: calc(50% - 7px);
}


#mob_menu .btns .btn
{
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    line-height: 15px;

    display: block;

    width: 100%;
    padding: 12px 12px 11px;

    text-align: center;
    text-decoration: none;

    border: 1px solid rgba(255, 255, 255, .6);
    border-radius: 6px;
}

#mob_menu .btns a.btn
{
    border-color: #1da7e2;
    background: #1da7e2;
}



#mob_menu .menu
{
    margin-top: 30px;
}

#mob_menu .menu_item + .menu_item
{
    margin-top: 20px;
}


#mob_menu .menu_item > a
{
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    line-height: 24px;

    display: flex;

    text-align: center;
    text-decoration: none;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


#mob_menu .menu_item > a .icon
{
    color: #ff6b00;

    display: block;

    width: 14px;
    height: 14px;
    margin-top: 2px;
    margin-left: 8px;
}


#mob_menu .sub_menu
{
    position: relative;

    display: none;
    visibility: hidden;

    width: 100%;
    margin-top: 6px;
    margin-bottom: 12px;
    padding: 30px 20px;

    pointer-events: none;

    opacity: 0;
    border: 1px solid #f2f3f5;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 50px 80px rgba(0, 0, 0, .2);
}


#mob_menu .menu_item .sub_menu.show
{
    display: block;
    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}


#mob_menu .sub_menu .close_btn
{
    color: #ff6b00;

    position: absolute;
    top: 10px;
    right: 10px;

    display: flex;

    width: 24px;
    height: 24px;
    margin: 0;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

#mob_menu .sub_menu .close_btn .icon
{
    display: block;

    width: 24px;
    height: 24px;
}


#mob_menu .sub_menu > * + *
{
    margin-top: 20px;
}

#mob_menu .sub_menu a
{
    color: var(--text_color);
    font-size: 14px;
    line-height: 17px;

    display: block;

    transition: color .3s linear;
    text-align: center;
    text-decoration: none;
}

#mob_menu .sub_menu a:hover,
#mob_menu .sub_menu a.active
{
    color: #1da7e2;

    text-decoration: underline;
}



#mob_menu .contacts
{
    margin-top: 40px;

    text-align: center;
}


#mob_menu .contacts .phone
{
    color: #fff;
    font-size: 28px;
    font-weight: 500;
    line-height: 34px;
}

#mob_menu .contacts .phone a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    white-space: nowrap;
    text-decoration: none;
}


#mob_menu .contacts .time
{
    color: #fff;
    font-size: 11px;
    font-weight: 500;
    line-height: 13px;

    margin-top: 6px;

    opacity: .7;
}


#mob_menu .messengers
{
    color: #fff;

    display: flex;

    margin-top: 16px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

#mob_menu .messengers a
{
    color: currentColor;

    display: block;

    width: 36px;
    height: 36px;

    text-decoration: none;

    opacity: .7;
}

#mob_menu .messengers a + a
{
    margin-left: 10px;
}

#mob_menu .messengers .icon
{
    display: block;

    width: 36px;
    height: 36px;
}



/*-------------
    Sidebar
-------------*/
aside
{
    position: relative;

    width: var(--sidebar_width);
    max-width: 100%;
}

aside > * + *
{
    margin-top: 30px;
}



aside .categories
{
    padding: 45px 40px 53px;

    background: #f2f3f5;
}


aside .categories .title
{
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;

    margin-bottom: 18px;
}


aside .categories .items
{
    font-size: 14px;
    line-height: 17px;
}

aside .categories .items > * + *
{
    margin-top: 16px;
}


aside .categories .items a
{
    color: var(--text_color);

    position: relative;

    display: inline-block;

    padding-left: 20px;

    transition: color .3s linear;
    vertical-align: top;
    text-decoration: none;
}

aside .categories .items a:before
{
    position: absolute;
    top: 6px;
    left: 0;

    display: block;

    width: 6px;
    height: 6px;

    content: '';

    border-radius: 50%;
    background: #c5c9d0;
}


aside .categories .items a:hover,
aside .categories .items a.active
{
    color: #1da7e2;

    text-decoration: underline;
}



aside .filter .title
{
    font-size: 32px;
    font-weight: 600;
    line-height: 39px;

    margin-bottom: 30px;
}


aside .filter .item + .item
{
    margin-top: 20px;
    padding-top: 20px;

    border-top: 1px solid rgba(0, 0, 0, .12);
}


aside .filter .name
{
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;
}


aside .filter .data
{
    overflow: auto;

    max-height: 187px;
    margin-top: 20px;

    scrollbar-color: #d9d9d9 transparent;
    scrollbar-width: thin;
}

aside .filter .data::-webkit-scrollbar
{
    width: 4px;
    height: 4px;

    border-radius: 2px;
    background-color: transparent;
}

aside .filter .data::-webkit-scrollbar-thumb
{
    border-radius: 2px;
    background-color: #d9d9d9;
}


aside .filter .field + .field
{
    margin-top: 11px;
}


aside .filter input[type=checkbox]
{
    display: none;
}

aside .filter input[type=checkbox] + label
{
    font-size: 14px;
    line-height: 17px;

    position: relative;

    display: flex;

    min-height: 22px;
    padding-left: 30px;

    cursor: pointer;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


aside .filter input[type=checkbox] + label:before
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 22px;
    height: 22px;

    content: '';
    transition: .3s linear;

    border: 1px solid #d0d3df;
    border-radius: 4px;
}

aside .filter input[type=checkbox] + label .icon
{
    color: #fff;

    position: absolute;
    z-index: 2;
    top: 6px;
    left: 6px;

    display: block;

    width: 10px;
    height: 10px;

    transition: opacity .3s linear;

    opacity: 0;
}


aside .filter input[type=checkbox] + label .circle
{
    display: block;

    width: 10px;
    height: 10px;

    border: 2px solid #ff6b00;
    border-radius: 50%;
}

aside .filter input[type=checkbox] + label .circle.active
{
    background: #ff6b00;
}

aside .filter input[type=checkbox] + label .circle + .circle
{
    margin-left: 2px;
}


aside .filter input[type=checkbox]:checked + label:before
{
    border-color: #ff6b00;
    background: #ff6b00;
}

aside .filter input[type=checkbox]:checked + label .icon
{
    opacity: 1;
}


aside .filter .tooltip .item
{
    display: flex;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

aside .filter .tooltip .item + .item
{
    margin-top: 16px;
    padding-top: 15px;
}


aside .filter .tooltip .circles
{
    display: flex;

    padding: 5px 0;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

aside .filter .tooltip .circle
{
    display: block;

    width: 10px;
    height: 10px;

    border: 2px solid #ff6b00;
    border-radius: 50%;
}

aside .filter .tooltip .circle.active
{
    background: #ff6b00;
}

aside .filter .tooltip .circle + .circle
{
    margin-left: 2px;
}


aside .filter .tooltip .desc
{
    width: calc(100% - 70px);
    margin-left: auto;
}


aside .filter .submit
{
    margin-top: 20px;
    padding-top: 30px;

    border-top: 1px solid rgba(0, 0, 0, .12);
}


aside .filter .submit_btn
{
    color: #fff;
    font-size: 14px;
    line-height: 17px;

    display: block;

    width: 100%;
    height: 54px;

    border-radius: 100px;
    background: #ff6b00;
}


aside .filter .reset_btn
{
    color: rgba(0, 0, 0, .5);
    font-size: 14px;
    line-height: 17px;

    display: block;

    width: 100%;
    margin-top: 22px;
}



.departure_dates .block_title
{
    font-size: 30px;
    font-weight: 600;
    line-height: 36px;

    margin-bottom: 30px;
}


.departure_dates .item
{
    font-size: 14px;
    line-height: 17px;

    display: flex;

    padding: 14px 0;

    border-top: 1px solid #f2f3f5;
    border-bottom: 1px solid #f2f3f5;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.departure_dates .item + .item
{
    margin-top: -1px;
}


.departure_dates .item .icon
{
    color: #ff6b00;

    display: block;

    width: 30px;
    height: 30px;
    margin-right: 14px;
}


.departure_dates .item .info
{
    width: calc(100% - 178px);
}

.departure_dates .item .info > * + *
{
    margin-top: 6px;
}

.departure_dates .item .info b
{
    font-weight: 600;
}


.departure_dates .item .price
{
    color: #ff6b00;
    font-size: 14px;
    font-weight: 700;
    line-height: 48px;

    width: 120px;
    height: 50px;

    text-align: center;

    border: 1px solid rgba(255, 107, 0, .2);
    border-radius: 4px;
}


.departure_dates .item .btn
{
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 17px;

    display: none;

    width: 120px;
    height: 50px;
    padding-bottom: 3px;

    border-radius: 4px;
    background: #ff6b00;
}


.departure_dates .item:hover .price
{
    display: none;
}

.departure_dates .item:hover .btn
{
    display: block;
}



.hike_instructors
{
    margin-top: 40px;
    padding: 38px 38px 35px;

    border: 2px solid #f6f7fa;
}


.hike_instructors .title
{
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;

    margin-bottom: 24px;
}


.hike_instructors .items > * + *
{
    margin-top: 12px;
}

.hike_instructors .items a
{
    color: #1da7e2;
    font-size: 14px;
    line-height: 17px;

    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.hike_instructors .items .icon
{
    color: rgba(0, 0, 0, .2);

    display: block;

    width: 22px;
    height: 22px;
    margin-right: 12px;
}



/*---------------
    Page head
---------------*/
.page_head
{
    position: relative;
    z-index: 3;

    min-height: 450px;
    margin-bottom: 70px;
    padding: 30px 0;
}

.page_head:after
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    background: rgba(6, 15, 33, .5);
}


.page_head .bg
{
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;	

    object-fit: cover;
}


.page_head.no_image
{
    min-height: 0;
    margin-bottom: 63px;
    padding-bottom: 0;

    background: none;
}

.page_head.no_image:after
{
    display: none;
}



.breadcrumbs
{
    color: rgba(255, 255, 255, .4);
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    margin-bottom: 78px;
}


.breadcrumbs a
{
    color: #fff;

    text-decoration: none;
}


.breadcrumbs .sep
{
    position: relative;
    top: -1px;

    display: inline-block;

    width: 6px;
    height: 6px;
    margin: 0 14px;

    vertical-align: middle;

    border-radius: 50%;
    background: #ff6b00;
}


.page_head.no_image .breadcrumbs
{
    color: rgba(0, 0, 0, .4);

    margin: 0;
}

.page_head.no_image .breadcrumbs a
{
    color: var(--text_color);
}



.page_title
{
    color: #fff;
    font-size: 60px;
    font-weight: 600;
    line-height: 100%;

    display: block;
}



/*----------------
    Block head
----------------*/
.block_head
{
    margin-bottom: 50px;
}

.block_head.padding_right
{
    display: flex;

    min-height: 80px;
    padding-right: 220px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.block_head .title
{
    font-size: var(--font_size_title);
    font-weight: 600;
    line-height: calc(100% + 11px);

    display: block;

    width: 100%;
}

.block_head .title span
{
    color: #ff6b00;
}


.block_head .desc
{
    line-height: 19px;

    width: 100%;
    margin-bottom: 30px;
}

.block_head .title + .desc
{
    margin-top: 10px;
    margin-bottom: 0;
}


.block_head.center
{
    text-align: center;
}



/*------------------
    Form elements
------------------*/
.form
{
    --form_border_color: rgba(0, 0, 0, .14);
    --form_focus_color: rgba(0, 0, 0, .14);
    --form_error_color: red;
    --form_bg_color: none;
    --form_placeholder_color: var(--text_color);
}


.form ::-webkit-input-placeholder
{
    color: var(--form_placeholder_color);
}

.form :-moz-placeholder
{
    color: var(--form_placeholder_color);
}

.form :-ms-input-placeholder
{
    color: var(--form_placeholder_color);
}


.form .line
{
    margin-bottom: 24px;
}


.form .label
{
    color: rgba(0, 0, 0, .4);
    font-weight: 500;
    line-height: 19px;

    margin-bottom: 4px;
}


.form .field
{
    position: relative;
}


.form .input
{
    color: var(--text_color);
    font-family: var(--font_family);
    font-size: var(--font_size);
    font-weight: 500;

    display: block;

    width: 100%;
    height: 34px;
    padding-bottom: 13px;

    transition: border-color .3s linear;

    border: none;
    border-bottom: 1px solid var(--form_border_color);
    background: var(--form_bg_color);
}

.form .input:-webkit-autofill
{
    -webkit-box-shadow: inset 0 0 0 50px var(--form_bg_color) !important;
}


.form textarea
{
    color: var(--text_color);
    font-family: var(--font_family);
    font-size: var(--font_size);
    font-weight: 500;

    display: block;

    width: 100%;
    height: 134px;
    padding-bottom: 13px;

    resize: none;
    transition: border-color .3s linear;

    border: none;
    border-bottom: 1px solid var(--form_border_color);
    background: var(--form_bg_color);
}

.form textarea::-webkit-scrollbar
{
    width: 5px;
    height: 5px;
}


.form .input:focus,
.form textarea:focus
{
    border-color: var(--form_focus_color);
}

.form .error
{
    border-color: var(--form_error_color);
}


.form .btn
{
    font-weight: 500;

    position: relative;

    display: block;
    overflow: hidden;

    width: 100%;
    height: 34px;
    padding-right: 32px;
    padding-bottom: 11px;

    text-align: left;
    white-space: nowrap;
    text-overflow: ellipsis;

    border-bottom: 1px solid rgba(0, 0, 0, .14);
}

.form .btn.arr:after
{
    position: absolute;
    top: -9px;
    right: 0;
    bottom: 0;

    display: block;

    width: 14px;
    height: 9px;
    margin: auto;

    content: '';

    border-top: 9px solid #ff6b00;
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
}


.form .mini_modal
{
    width: 100%;
    padding: 25px 20px 25px 30px;

    border: 1px solid #f2f3f5;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 50px 80px rgba(0, 0, 0, .2);
}

.form .mini_modal.active
{
    top: 100%;
}


.form .mini_modal .scroll
{
    overflow: auto;

    max-height: 121px;

    scrollbar-color: #d9d9d9 transparent;
    scrollbar-width: thin;
}

.form .mini_modal .scroll::-webkit-scrollbar
{
    width: 4px;
    height: 4px;

    border-radius: 2px;
    background-color: transparent;
}

.form .mini_modal .scroll::-webkit-scrollbar-thumb
{
    border-radius: 2px;
    background-color: #d9d9d9;
}

.form .mini_modal .scroll > * + *
{
    margin-top: 11px;
}


.form input[type=checkbox]
{
    display: none;
}

.form input[type=checkbox] + label
{
    font-size: 14px;
    line-height: 17px;

    position: relative;

    display: flex;

    min-height: 22px;
    padding-left: 30px;

    cursor: pointer;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.form input[type=checkbox] + label:before
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 22px;
    height: 22px;

    content: '';
    transition: .3s linear;

    border: 1px solid #d0d3df;
    border-radius: 4px;
}

.form input[type=checkbox] + label .icon
{
    color: #fff;

    position: absolute;
    z-index: 2;
    top: 6px;
    left: 6px;

    display: block;

    width: 10px;
    height: 10px;

    transition: opacity .3s linear;

    opacity: 0;
}


.form input[type=checkbox]:checked + label:before
{
    border-color: #ff6b00;
    background: #ff6b00;
}

.form input[type=checkbox]:checked + label .icon
{
    opacity: 1;
}


.form .agree
{
    font-size: 14px;
    line-height: 17px;

    width: 230px;
    max-width: 100%;
}

.form .agree a
{
    color: #ff6b00;

    text-decoration: none;
}


.form .submit
{
    padding-top: 24px;
}

.form .submit_btn
{
    color: #fff;
    font-weight: 500;
    line-height: 19px;

    display: block;

    width: 100%;
    height: 70px;

    border-radius: 100px;
    background: #ff6b00;
}


.form .bottom
{
    display: flex;

    padding-top: 16px;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.form .bottom .submit
{
    width: 250px;
    max-width: 100%;
    margin-left: auto;
    padding: 0;
}



/*----------------
    Typography
----------------*/
.text_block
{
    font-size: var(--font_size);
    line-height: 24px;
}


.text_block > *,
.text_block .cols .col > *,
.text_block blockquote .text > *
{
    margin-bottom: 20px;
}


.text_block > :last-child,
.text_block .cols .col > :last-child,
.text_block blockquote .text > :last-child
{
    margin-bottom: 0 !important;
}

.text_block > :first-child,
.text_block .cols .col > :first-child,
.text_block blockquote .text > :first-child
{
    margin-top: 0 !important;
}


.text_block h1
{
    font-size: 60px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 40px;
}

.text_block h2
{
    font-size: 40px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 40px;
}

.text_block h3
{
    font-size: 24px;
    font-weight: 700;
    line-height: 28px;

    margin-bottom: 30px;
}

.text_block h4
{
    font-size: 22px;
    font-weight: 700;
    line-height: 26px;
}

.text_block h5
{
    font-size: 20px;
    font-weight: 700;
    line-height: 24px;
}

.text_block h6
{
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;
}


.text_block * + h2,
.text_block * + h3,
.text_block * + h4,
.text_block * + h5,
.text_block * + h6
{
    margin-top: 100px;
}

.text_block h1 + *,
.text_block h2 + *,
.text_block h3 + *,
.text_block h4 + *,
.text_block h5 + *,
.text_block h6 + *
{
    margin-top: 0 !important;
}


.text_block img
{
    display: block;

    max-width: 100%;
    margin-top: 40px;
    margin-bottom: 40px;
}

.text_block img.loaded
{
    height: auto !important;
}


.text_block .table_wrap
{
    overflow: auto;

    max-width: 100%;
    margin-top: 40px;
    margin-bottom: 40px;
}


.text_block table
{
    width: 100%;

    border-spacing: 0;
    border-collapse: collapse;
}


.text_block table th
{
    color: rgba(0, 0, 0, .4);
    font-size: 14px;
    font-weight: 400;

    padding-bottom: 14px;

    text-align: left;
    vertical-align: middle;

    border-bottom: 1px solid rgba(0, 0, 0, .2);
}

.text_block table th + th
{
    padding-left: 24px;
}


.text_block table td
{
    font-size: 14px;
    line-height: 17px;

    padding: 24px 0;

    text-align: left;
    vertical-align: middle;

    border-bottom: 1px solid rgba(0, 0, 0, .2);
}

.text_block table td + td
{
    padding-left: 24px;
}


.text_block table .nowrap
{
    white-space: nowrap;
}


.text_block table .alignright
{
    text-align: right;
}


.text_block blockquote
{
    display: block;

    width: 100%;
    margin-top: 100px;
    margin-bottom: 100px;
    padding: 50px 0;

    border-top: 6px solid #f2f3f5;
    border-bottom: 6px solid #f2f3f5;
}

.text_block blockquote .text
{
    font-size: 24px;
    font-weight: 600;
    font-style: italic;
    line-height: 34px;

    position: relative;

    padding-left: 60px;
}

.text_block blockquote .text:before
{
    position: absolute;
    top: 6px;
    left: 0;

    display: block;

    width: 29px;
    height: 20px;

    content: '';

    background: url(../images/ic_quote.svg) 0 0 no-repeat;
}

.text_block blockquote cite
{
    font-style: normal;

    display: block;

    margin-top: 20px;

    text-align: right;
}


.text_block ul
{
    margin-top: 30px;
    margin-bottom: 30px;
}

.text_block ul ul
{
    margin-top: 20px;
    margin-bottom: 0;
}


.text_block ul li
{
    position: relative;

    display: block;
    overflow: hidden;

    padding-left: 40px;

    list-style-type: none;
}

.text_block ul li + li
{
    margin-top: 20px;
}

.text_block ul li:before
{
    position: absolute;
    top: 6px;
    left: 14px;

    display: block;

    width: 12px;
    height: 12px;

    content: '';

    border: 3px solid #ff6b00;
    border-radius: 50%;
}


.text_block ol
{
    margin-top: 30px;
    margin-bottom: 30px;

    counter-reset: li;
}

.text_block ol li
{
    position: relative;

    display: block;
    overflow: hidden;

    padding-left: 40px;

    list-style-type: none;
}

.text_block ol li + li
{
    margin-top: 20px;
}

.text_block ol li:before
{
    color: #fff;
    font-weight: 700;
    line-height: 24px;

    position: absolute;
    top: 0;
    left: 0;

    width: 24px;
    height: 24px;

    content: counter(li);
    counter-increment: li;
    text-align: center;

    border-radius: 50%;
    background: #ff6b00;
}


.text_block .slider
{
    margin-top: 40px;
    margin-bottom: 40px;
}


.text_block .slider .swiper-button-next,
.text_block .slider .swiper-button-prev
{
    top: 0;
    bottom: 0;

    margin: auto;

    background: rgba(255, 255, 255, .2);
}

.text_block .slider .swiper-button-prev
{
    right: auto;
    left: 40px;
}

.text_block .slider .swiper-button-next
{
    right: 40px;
}


.text_block .slider .image
{
    color: var(--text_color);

    position: relative;

    display: block;
    overflow: hidden;

    padding-bottom: 63.41%;

    text-decoration: none;

    background: #ddd;
}

.text_block .slider .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100% !important;
    margin: 0;

    object-fit: cover;
}


.text_block a
{
    color: #1da7e2;
}

.text_block a:hover
{
    text-decoration: none;
}



/*-----------------
    Main slider
-----------------*/
.main_slider
{
    position: relative;

    margin-bottom: 120px;
}


.main_slider .slide
{
    position: relative;
    z-index: 3;

    overflow: hidden;

    height: 100vh;

    background: #ddd;
}

.main_slider .slide:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    background: linear-gradient(180deg, rgba(0, 0, 0, .7) 0%, rgba(0, 0, 0, .1) 100%);
}


.main_slider .bg
{
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.main_slider .caption
{
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    position: absolute;
    right: 50%;
    bottom: 40px;

    margin-right: -616px;
}

.main_slider .caption a
{
    color: currentColor;

    display: inline-block;

    padding-bottom: 6px;

    vertical-align: top;
    text-decoration: none;

    border-bottom: 1px solid rgba(255, 255, 255, .3);
}



/*-------------------
    First section
-------------------*/
.first_section
{
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;

    display: flex;

    width: 100%;
    height: 100%;

    pointer-events: none;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.first_section .data
{
    pointer-events: auto;
}


.first_section .title
{
    color: #fff;
    font-size: 70px;
    font-weight: 500;
    line-height: 85px;

    text-align: center;
}

.first_section .desc
{
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    line-height: 24px;

    margin-top: 10px;

    text-align: center;
}


.first_section .wrap_search_form
{
    margin-top: 51px;
}



/*-----------------
    Search form
-----------------*/
.wrap_search_form
{
    height: 120px;
}


.search_form
{
    position: relative;

    padding: 20px;

    border-radius: 6px;
    background: #fff;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .08);
}


.search_form ::-webkit-input-placeholder
{
    color: var(--text_color);
}

.search_form :-moz-placeholder
{
    color: var(--text_color);
}

.search_form :-ms-input-placeholder
{
    color: var(--text_color);
}


.search_form .row
{
    justify-content: space-between;
}


.search_form .line
{
    position: relative;

    width: 242px;
    max-width: 100%;
    margin-bottom: 5px;
    padding-left: 42px;

    align-self: flex-end;
}

.search_form .line.hide
{
    display: none;
}


.search_form .line .icon
{
    color: rgba(0, 0, 0, .13);

    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 24px;
    height: 24px;

    transition: color .3s linear;
}


.search_form .label
{
    color: rgba(0, 0, 0, .4);
    font-weight: 500;
    line-height: 19px;

    margin-bottom: 4px;
    padding-top: 3px;
}


.search_form .btn
{
    font-weight: 500;

    display: block;
    overflow: hidden;

    width: 100%;
    height: 34px;
    padding-bottom: 11px;

    text-align: left;
    white-space: nowrap;
    text-overflow: ellipsis;

    border-bottom: 1px solid rgba(0, 0, 0, .14);
}


.search_form .mini_modal
{
    left: -3px;

    width: 300px;
    padding: 19px 5px;

    border: 1px solid #f2f3f5;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 50px 80px rgba(0, 0, 0, .2);
}

.search_form .mini_modal.active
{
    top: calc(100% + 30px);
}


.search_form .mini_modal .scroll
{
    overflow: auto;

    max-height: 204px;

    scrollbar-color: #d9d9d9 transparent;
    scrollbar-width: thin;
}

.search_form .mini_modal .scroll::-webkit-scrollbar
{
    width: 4px;
    height: 4px;

    border-radius: 2px;
    background-color: transparent;
}

.search_form .mini_modal .scroll::-webkit-scrollbar-thumb
{
    border-radius: 2px;
    background-color: #d9d9d9;
}

.search_form .mini_modal .scroll > *
{
    padding: 6px 15px;

    transition: background .3s linear;
}

.search_form .mini_modal .scroll > *:hover
{
    background: #f2f3f5;
}


.search_form input[type=checkbox]
{
    display: none;
}

.search_form input[type=checkbox] + label
{
    font-size: 14px;
    line-height: 17px;

    position: relative;

    display: flex;

    min-height: 22px;
    padding-left: 30px;

    cursor: pointer;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.search_form input[type=checkbox] + label:before
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 22px;
    height: 22px;

    content: '';
    transition: .3s linear;

    border: 1px solid #d0d3df;
    border-radius: 4px;
}

.search_form input[type=checkbox] + label .icon
{
    color: #fff;

    position: absolute;
    z-index: 2;
    top: 6px;
    left: 6px;

    display: block;

    width: 10px;
    height: 10px;

    transition: opacity .3s linear;

    opacity: 0;
}


.search_form input[type=checkbox]:checked + label:before
{
    border-color: #ff6b00;
    background: #ff6b00;
}

.search_form input[type=checkbox]:checked + label .icon
{
    opacity: 1;
}


.search_form .submit
{
    width: 260px;
    max-width: 100%;
}

.search_form .submit_btn
{
    color: #fff;
    font-weight: 500;
    line-height: 19px;

    width: 100%;
    height: 80px;

    border-radius: 8px;
    background: #ff6b00;
}


.search_form .advanced_btn
{
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    position: absolute;
    top: calc(100% - 10px);
    right: 25px;

    display: flex;

    width: 250px;
    height: 50px;
    padding-top: 6px;

    transition: width .3s linear;

    border-radius: 6px;
    background: rgba(255, 255, 255, .12);

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.search_form .advanced_btn .icon
{
    color: #ff6b00;

    display: block;

    width: 14px;
    height: 10px;
    margin-right: 10px;
}

.search_form .advanced_btn .icon + .icon
{
    color: #fff;

    display: none;

    width: 24px;
    height: 24px;
}

.search_form .advanced_btn span + span
{
    display: none;
}



.search_form.full_show .row
{
    margin-bottom: -25px;
}


.search_form.full_show .line.hide
{
    display: block;
}

.search_form.full_show .line,
.search_form.full_show .submit
{
    width: 360px;
    margin-bottom: 25px;
}


.search_form .advanced_btn.active
{
    width: 350px;
}

.search_form .advanced_btn.active .icon,
.search_form .advanced_btn.active span
{
    display: none;
}

.search_form .advanced_btn.active span + span,
.search_form .advanced_btn.active .icon + .icon
{
    display: block;
}



/*-----------
    Tours
-----------*/
.tours
{
    margin-bottom: 140px;
}


.tours .swiper
{
    overflow: visible !important;
}

.tours .swiper-slide
{
    position: relative;

    visibility: hidden;

    transition: opacity .2s linear, visibility .3s linear;
    pointer-events: none;

    opacity: 0;
}

.tours .swiper-slide.visible
{
    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}


.tours .tour
{
    position: relative;
}


.tours .tour .hot
{
    font-size: 14px;
    line-height: 20px;

    position: absolute;
    z-index: 3;
    top: 15px;
    left: 15px;

    display: flex;

    padding: 10px 20px 10px 9px;

    border-radius: 100px;
    background: #fff;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.tours .tour .hot img
{
    display: block;

    width: 22px;
    height: 22px;
}


.tours .tour .thumb
{
    color: var(--text_color);

    position: relative;

    display: block;
    overflow: hidden;

    margin-bottom: 20px;
    padding-bottom: 58.53%;

    text-decoration: none;

    border-radius: 8px;
    background: #ddd;
}

.tours .tour .thumb img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    border-radius: inherit;

    object-fit: cover;
}


.tours .tour .location
{
    color: #ff6b00;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
}


.tours .tour .name
{
    font-size: 20px;
    font-weight: 600;
    line-height: 22px;

    margin-top: 6px;
}

.tours .tour .name a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    text-decoration: none;
}


.tours .tour .features
{
    font-size: 14px;
    line-height: 20px;

    margin-top: 16px;
}


.tours .tour .features > *
{
    position: relative;

    padding-left: 14px;
}

.tours .tour .features > *:before
{
    position: absolute;
    top: 7px;
    left: 0;

    display: block;

    width: 6px;
    height: 6px;

    content: '';

    border-radius: 50%;
    background: #ff6b00;
}

.tours .tour .features > * + *
{
    margin-top: 8px;
}


.tours .tour .features span
{
    color: rgba(0, 0, 0, .5);

    margin-right: 6px;
}



.tours .list > * + *
{
    margin-top: 40px;
}


.tours .list .tour
{
    display: flex;

    padding-bottom: 40px;

    border-bottom: 1px solid rgba(0, 0, 0, .12);

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.tours .list .tour .thumb
{
    width: 280px;
    margin: 0;
    padding-bottom: 280px;
}

.tours .list .tour .thumb + div
{
    width: calc(100% - 320px);
}


.tours .info
{
    display: flex;

    margin-top: 20px;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.tours .info > *
{
    width: calc(50% - 10px);
}


.tours .params
{
    font-size: 14px;
    line-height: 20px;
}


.tours .params > *
{
    display: flex;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.tours .params > * + *
{
    margin-top: 16px;
}


.tours .params .icon
{
    color: #ff6b00;

    display: flex;

    width: 20px;
    height: 20px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.tours .params .icon > *
{
    display: block;

    width: 20px;
    height: 20px;
}

.tours .params .icon + *
{
    display: flex;

    width: calc(100% - 26px);

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.tours .params .circles
{
    position: relative;
    top: 1px;

    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.tours .params .circle
{
    display: block;

    width: 10px;
    height: 10px;

    border: 2px solid #ff6b00;
    border-radius: 50%;
}

.tours .params .circle.active
{
    background: #ff6b00;
}

.tours .params .circle + .circle
{
    margin-left: 2px;
}


.tours .params .icon + * > span
{
    color: rgba(0, 0, 0, .5);

    margin-right: 6px;
}


.tours .date
{
    color: rgba(0, 0, 0, .5);
    font-size: 14px;
    line-height: 20px;
}

.tours .date .val
{
    color: var(--text_color);

    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.tours .date .selected
{
    font-weight: 700;

    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.tours .date .selected .icon
{
    display: block;

    width: 14px;
    height: 14px;
    margin: 0 10px;
}


.tours .date .btn
{
    display: flex;

    width: 24px;
    height: 24px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.tours .date .btn span
{
    display: block;

    width: 6px;
    height: 6px;

    transition: background .3s linear;

    border-radius: 50%;
    background: rgba(0, 0, 0, .2);
}

.tours .date .btn span + span
{
    margin-left: 2px;
}

.tours .date .btn:hover span,
.tours .date .btn.active span
{
    background: #ff6b00;
}


.tours .date .mini_modal
{
    right: -30px;
    left: auto;

    width: 270px;
    padding: 16px 30px 25px 20px;

    border: 1px solid #f2f3f5;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 50px 80px rgba(0, 0, 0, .2);
}


.tours .date .modal_cont
{
    margin-left: 14px;
}

.tours .date .modal_cont.active
{
    top: calc(100% + 6px);
}


.tours .date .scroll
{
    overflow: auto;

    width: calc(100% + 15px);
    max-height: 156px;
    margin-right: -15px;
    padding-right: 15px;

    scrollbar-color: #d9d9d9 transparent;
    scrollbar-width: thin;
}

.tours .date .scroll::-webkit-scrollbar
{
    width: 4px;
    height: 4px;

    border-radius: 2px;
    background-color: transparent;
}

.tours .date .scroll::-webkit-scrollbar-thumb
{
    border-radius: 2px;
    background-color: #d9d9d9;
}


.tours .date .variant
{
    font-size: 14px;
    line-height: 20px;

    display: flex;

    padding: 9px 0;

    cursor: pointer;

    border-bottom: 1px solid rgba(0, 0, 0, .12);

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.tours .date .variant .icon
{
    display: block;

    width: 14px;
    height: 14px;
    margin: 0 8px;
}


.tours .price
{
    color: rgba(0, 0, 0, .5);
    font-size: 14px;
    line-height: 20px;

    margin-top: 20px;
}

.tours .price .val
{
    color: var(--text_color);
    font-size: 20px;
    font-weight: 600;
    line-height: 22px;

    margin-top: 2px;

    white-space: nowrap;
}
.tours .price .val.zach{
	text-decoration: line-through;
    font-weight: 200 !important;
    font-size: 16px !important;
}

.tours .details_link
{
    color: var(--text_color);
    font-size: 14px;
    line-height: 17px;

    display: block;

    margin-top: 30px;
    padding: 17px 20px 18px;

    transition: .3s linear;
    text-align: center;
    text-decoration: none;

    border: 2px solid #ff6b00;
    border-radius: 8px;
}

.tours .details_link:hover
{
    color: #fff;

    background: #ff6b00;
}



/*-----------------
    Impressions
-----------------*/
.impressions
{
    position: relative;
    z-index: 3;

    height: 947px;
    margin-bottom: 192px;
    padding-top: 30px;
}


.impressions .head
{
    width: 560px;
    max-width: 100%;
}


.impressions .head .title
{
    font-size: 60px;
    font-weight: 600;
    line-height: 100%;
}

.impressions .head .title span
{
    color: #ff6b00;
}


.impressions .head .desc
{
    color: rgba(0, 0, 0, .5);
    line-height: 22px;

    margin-top: 30px;
    padding-left: 60px;
}

.impressions .head .desc > * + *
{
    margin-top: 20px;
}


.impressions .quote
{
    color: #0c0c0c;
    font-size: 30px;
    font-weight: 600;
    font-style: italic;
    line-height: 38px;

    position: absolute;
    top: 35px;
    right: 50%;

    width: 435px;
    max-width: 100%;
    margin-right: -620px;
}

.impressions .quote:before
{
    color: #ff6b00;
    font-size: 120px;
    font-weight: 600;
    font-style: italic;
    line-height: 145px;

    position: absolute;
    top: -20px;
    right: calc(100% + 40px);

    display: block;

    content: '“';
}


.impressions .item
{
    line-height: 22px;

    position: absolute;

    width: 260px;
    max-width: 100%;
}

.impressions .item:before
{
    position: absolute;
    top: 7px;
    left: -47px;

    display: block;

    width: 19px;
    height: 19px;

    content: '';

    border: 2px solid #fff;
    border-radius: 50%;
    background: #ff6b00;
    box-shadow: 0 0 0 8px rgba(255, 107, 0, .1);
}


.impressions .item1
{
    top: 262px;
    left: 50%;

    margin-left: 216px;
}

.impressions .item2
{
    top: 475px;
    left: 50%;

    margin-left: -200px;
}

.impressions .item2:before
{
    top: -1px;
}

.impressions .item3
{
    top: 642px;
    left: 50%;

    margin-left: -502px;
}


.impressions .item .val
{
    font-size: var(--font_size_title);
    font-weight: 700;
    line-height: calc(100% + 11px);

    /*white-space: nowrap;*/
}

.impressions .item .desc
{
    color: rgba(0, 0, 0, .5);

    margin-top: 10px;
}


.impressions .line
{
    position: absolute;
    z-index: -1;
    top: -120px;
    left: 50%;

    display: block;

    width: 748px;
    height: 1067px;
    margin-left: -567px;

    pointer-events: none;
}


.impressions .mob_line
{
    position: absolute;
    z-index: -1;
    top: 91px;
    left: 50%;

    display: none;

    width: 300px;
    height: 453px;
    margin-left: -224px;

    pointer-events: none;
}


.impressions .img
{
    position: absolute;
    z-index: -2;
    right: 50%;
    bottom: -142px;

    display: block;

    width: 1223px;
    height: 818px;
    margin-right: -960px;

    pointer-events: none;
}



/*----------------
    Directions
----------------*/
.directions
{
    position: relative;
    z-index: 3;

    margin-bottom: 190px;
}


.directions .line
{
    display: flex;

    justify-content: center;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.directions .line + .line
{
    margin-top: 40px;
}


.directions .block_head
{
    width: 432px;
    max-width: 100%;
    margin-right: auto;
    padding-top: 12px;
}

.directions .block_head .title
{
    line-height: 100%;
}


.directions .row
{
    margin-bottom: -40px;
    margin-left: -20px;

    justify-content: center;
}

.directions .row > *
{
    margin-bottom: 40px;
    margin-left: 15px;
}

.directions .row > *.mob_show
{
    display: none;
}


.directions .item
{
    color: var(--text_color);
    font-weight: 500;
    line-height: 19px;

    display: block;

    text-align: center;
    text-decoration: none;
}


.directions .item .thumb
{
    position: relative;

    overflow: hidden;

    width: 110px;
    height: 200px;
    margin: 0 auto 12px;

    transition: box-shadow .3s linear;

    border: 0 solid #fff;
    border-radius: 100px;
    background: #ddd;
}

.directions .item.first .thumb
{
    border-radius: 6px 100px 100px 100px;
}

.directions .item.last .thumb
{
    border-radius: 100px 100px 6px 100px;
}


.directions .item .thumb img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    border-radius: inherit;

    object-fit: cover;
}


.directions .item .name
{
    display: inline;

    transition: background-size .3s;

    background-image: linear-gradient(#ff6b00, #ff6b00);
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
}


.directions a.item:hover .thumb
{
    border-width: 6px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .15);
}

.directions a.item:hover .thumb img
{
    width: calc(100% + 12px);
    height: calc(100% + 12px);

    transform: translate(-6px, -6px);
}

.directions a.item:hover .name
{
    background-size: 100% 1px;
}


.directions .traces
{
    position: absolute;
    z-index: -1;
    bottom: -190px;
    left: 50%;

    display: block;

    width: 580px;
    height: 367px;
    margin-left: -960px;

    pointer-events: none;
}

.directions .traces2
{
    position: absolute;
    z-index: -1;
    top: -172px;
    right: 50%;

    display: block;

    width: 320px;
    height: 367px;
    margin-right: -960px;

    pointer-events: none;
}

.directions .traces.loaded,
.directions .traces2.loaded
{
    opacity: .04;
}



/*----------------
    In socials
----------------*/
.in_socials .block_title
{
    font-size: 60px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 50px;

    text-align: center;
}


.in_socials .block_title .instagram_link
{
    position: relative;

    display: inline-block;

    margin-left: 6px;
    padding-bottom: 14px;

    vertical-align: top;
    text-decoration: none;

    background-image: linear-gradient(90deg, #6763df, #e54378);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.in_socials .block_title .instagram_link:after
{
    position: absolute;
    bottom: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 4px;

    content: '';

    opacity: .2;
    background-image: linear-gradient(90deg, #6763df, #e54378);
}


.in_socials .block_title .vk_link
{
    color: #1da7e2;

    display: inline-block;

    margin-left: 6px;
    padding-bottom: 10px;

    vertical-align: top;
    text-decoration: none;

    border-bottom: 4px solid rgba(29, 167, 226, .2);
}


.in_socials .swiper-wrapper
{
    -webkit-transition-timing-function: linear !important;
            transition-timing-function: linear !important;
}

.in_socials .swiper-slide
{
    width: 340px;
}


.in_socials .item
{
    color: var(--text_color);

    display: block;

    text-decoration: none;
}


.in_socials .item .thumb
{
    position: relative;

    overflow: hidden;

    padding-bottom: 100%;

    background: #ddd;
}

.in_socials .item .thumb img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}



/*---------------
    Gift cert
---------------*/
.gift_cert
{
    padding: 150px 0;

    background: linear-gradient(180deg, #f2f3f5 0%, rgba(242, 243, 245, 0) 100%);
}


.gift_cert .data
{
    position: relative;

    padding: 80px 100px 72px;

    border-radius: 10px;
    background: #fff;
    box-shadow: 0 60px 120px #e2e8ee;
}


.gift_cert .block_head
{
    position: relative;
    z-index: 3;

    width: 488px;
    max-width: 100%;
    margin-bottom: 0;
}

.gift_cert .block_head .title
{
    line-height: 100%;
}

.gift_cert .block_head .desc
{
    color: rgba(0, 0, 0, 1);
    line-height: 24px;

    margin-top: 20px;
}


.gift_cert .btn
{
    color: #fff;
    font-weight: 500;
    line-height: 19px;

    width: 300px;
    max-width: 100%;
    height: 80px;
    margin-top: 50px;

    border-radius: 100px;
    background: #ff6b00;
}


.gift_cert .img
{
    position: absolute;
    z-index: 1;
    top: 0;
    right: -159px;
    bottom: 0;

    display: block;

    width: 680px;
    height: 680px;
    margin: auto;

    pointer-events: none;
}


.gift_cert .img2
{
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 47%;

    display: block;

    width: auto;
    height: 100%;
    margin: auto;

    pointer-events: none;
}



/*------------------
    Article head
------------------*/
.article_head
{
    color: #fff;

    display: flex;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.article_head .info
{
    display: flex;

    width: 600px;
    max-width: 100%;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.article_head .page_title
{
    width: 100%;
}


.article_head .date
{
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    margin-top: 40px;
}


.article_head .sep
{
    width: 6px;
    height: 6px;
    margin: 40px 24px 0;

    border-radius: 50%;
    background: #ff6b00;
}


.article_head .author
{
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    margin-top: 40px;
}

.article_head .author span
{
    color: rgba(255, 255, 255, .5);

    margin-right: 10px;
}


.article_head .next_link
{
    color: #fff;
    font-size: 14px;
    line-height: 17px;

    margin-top: 1px;
    margin-left: auto;
}

.article_head .next_link > *
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.article_head .next_link .icon
{
    display: block;

    width: 21px;
    height: 12px;
    margin-left: 10px;

    transform: rotate(180deg);
}


.article_head .next_link .title
{
    font-size: 20px;
    font-weight: 500;
    line-height: 24px;

    margin-top: 10px;
}

.article_head .next_link .title a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    text-decoration: none;
}



/*-----------
    Share
-----------*/
.share
{
    font-size: 14px;
    line-height: 17px;

    display: flex;

    padding: 14px 0;

    border-top: 1px solid rgba(0, 0, 0, .2);
    border-bottom: 1px solid rgba(0, 0, 0, .2);

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.share .items
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.share .items a
{
    color: #ff6b00;

    display: block;

    text-decoration: none;
}

.share .items a + a
{
    margin-left: 15px;
}


.share .items svg
{
    display: block;

    width: 30px;
    height: 30px;
}



/*------------------
    Catalog head
------------------*/
.catalog_head
{
    min-height: 0;
    margin-bottom: 53px;
    padding-bottom: 142px;
}


.catalog_head .breadcrumbs
{
    margin-bottom: 63px;
}


.catalog_head .months
{
    margin-top: 40px;
}


.catalog_head .months .swiper
{
    overflow: visible !important;

    padding: 0 53px;
}

.catalog_head .months .swiper-slide
{
    position: relative;

    visibility: hidden;

    transition: opacity .2s linear, visibility .3s linear;
    pointer-events: none;

    opacity: 0;
}

.catalog_head .months .swiper-slide.visible
{
    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}


.catalog_head .months .swiper-button-next,
.catalog_head .months .swiper-button-prev
{
    color: #fff;

    top: 0;
    bottom: 0;

    width: 20px;
    height: 100%;
    margin: auto;

    border-radius: 0;
    background: none;
}

.catalog_head .months .swiper-button-prev
{
    right: auto;
    left: 0;
}

.catalog_head .months .swiper-button-next
{
    right: 0;
}

.catalog_head .months .swiper-button-next:after,
.catalog_head .months .swiper-button-prev:after
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    display: block;

    width: 15px;
    height: 28px;
    margin: auto;

    content: '';

    border-top: 14px solid transparent;
    border-right: 15px solid #fff;
    border-bottom: 14px solid transparent;
}

.catalog_head .months .swiper-button-next:after
{
    transform: rotate(180deg);
}


.catalog_head .months .item
{
    color: #fff;
    font-size: 14px;
    line-height: 17px;

    display: block;

    padding: 22px 20px 21px;

    transition: .3s linear;
    text-align: center;
    text-decoration: none;

    border-radius: 4px;
    background: rgba(255, 255, 255, .14);
}

.catalog_head .months .item:hover,
.catalog_head .months .item.active
{
    color: var(--text_color);

    background: #fff;
}



/*--------------
    Seo text
--------------*/
.seo_text
{
    margin-bottom: 140px;
}



/*----------------
    Tours head
----------------*/
.tours_head
{
    color: rgba(0, 0, 0, .5);
    font-size: 14px;
    line-height: 17px;

    display: flex;

    margin-bottom: 40px;
    padding-bottom: 30px;

    border-bottom: 1px solid rgba(0, 0, 0, .12);

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.tours_head + *
{
    margin-top: 0 !important;
}


.tours_head .name
{
    margin-right: 20px;
}


.tours_head select
{
    display: none;
}

.tours_head .nice-select
{
    position: relative;

    display: block;
}


.tours_head .nice-select .current
{
    color: var(--text_color);

    position: relative;

    display: block;
    overflow: hidden;

    padding-right: 18px;

    cursor: pointer;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.tours_head .nice-select .current:after
{
    position: absolute;
    top: 2px;
    right: 0;
    bottom: 0;

    display: block;

    width: 10px;
    height: 6px;
    margin: auto;

    content: '';

    border-top: 6px solid #1da7e2;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
}


.tours_head .nice-select .list
{
    position: absolute;
    z-index: 9;
    top: calc(100% + 30px);
    left: -24px;

    visibility: hidden;
    overflow: hidden;

    min-width: calc(100% + 48px);
    padding: 12px 0;

    transition: .3s linear;

    opacity: 0;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .08);
}

.tours_head .nice-select.open .list
{
    top: calc(100% + 10px);

    visibility: visible;

    opacity: 1;
}


.tours_head .nice-select .scrollbar
{
    overflow: auto;

    max-height: 121px;

    scrollbar-color: #d9d9d9 transparent;
    scrollbar-width: thin;
}

.tours_head .nice-select .scrollbar::-webkit-scrollbar
{
    width: 4px;
    height: 4px;

    border-radius: 2px;
    background-color: transparent;
}

.tours_head .nice-select .scrollbar::-webkit-scrollbar-thumb
{
    border-radius: 2px;
    background-color: #d9d9d9;
}

.tours_head .nice-select .scrollbar > * + *
{
    margin-top: 11px;
}


.tours_head .nice-select .list .list_item
{
    color: var(--text_color);

    padding: 8px 24px;

    cursor: pointer;
    transition: color .3s linear;
    white-space: nowrap;
}

.tours_head .nice-select .list .list_item:empty
{
    display: none;
}

.tours_head .nice-select .list .list_item:hover,
.tours_head .nice-select .list .list_item.selected
{
    color: #1da7e2;

    text-decoration-line: underline;
}


.tours_head .sort
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.tours_head .mob_filter_btn
{
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    line-height: 15px;

    display: none;

    width: 100px;
    height: 40px;

    border-radius: 4px;
    background: #1da7e2;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.tours_head .mob_filter_btn .icon
{
    display: block;

    width: 15px;
    height: 15px;
    margin-right: 4px;
}



/*-------------------
    Contacts info
-------------------*/
.contacts_info
{
    margin-bottom: 140px;
}



.contacts_info .data
{
    width: 360px;
    max-width: 100%;
}


.contacts_info .data .block_head
{
    margin-bottom: 53px;
}


.contacts_info .data .item + .item
{
    margin-top: 32px;
}


.contacts_info .data .name
{
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;

    margin-bottom: 10px;
}


.contacts_info .phone
{
    font-size: 28px;
    font-weight: 600;
    line-height: 34px;

    white-space: nowrap;

    align-self: center;
}

.contacts_info .phone a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    text-decoration: none;
}


.contacts_info .messengers
{
    display: flex;

    margin-left: 24px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    align-self: center;
    flex-wrap: wrap;
}

.contacts_info .messengers a
{
    color: rgba(0, 0, 0, .2);

    display: block;

    width: 30px;
    height: 30px;

    text-decoration: none;
}

.contacts_info .messengers a + a
{
    margin-left: 10px;
}

.contacts_info .messengers .icon
{
    display: block;

    width: 30px;
    height: 30px;
}


.contacts_info .email
{
    font-size: 14px;
    line-height: 17px;

    white-space: nowrap;

    align-self: center;
}

.contacts_info .email a
{
    color: currentColor;

    display: inline-block;

    padding-bottom: 6px;

    vertical-align: top;
    text-decoration: none;

    border-bottom: 2px solid #ff6b00;
}


.contacts_info .socials
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.contacts_info .socials a
{
    color: rgba(0, 0, 0, .2);

    display: block;

    transition: color .3s linear;
    text-decoration: none;
}

.contacts_info .socials a + a
{
    margin-left: 15px;
}


.contacts_info .socials svg
{
    display: block;

    width: 30px;
    height: 30px;
}


.contacts_info .socials a:hover
{
    color: #ff6b00;
}


.contacts_info .requisites
{
    font-size: 14px;
    line-height: 17px;

    margin-top: 37px;
    padding-top: 40px;

    border-top: 1px solid rgba(0, 0, 0, .12);
}

.contacts_info .requisites > * + *
{
    margin-top: 10px;
}

.contacts_info .requisites > * + *.margin
{
    margin-top: 30px;
}



.contacts_info .map_wrap
{
    width: calc(100% - 420px);
    margin-left: auto;
    padding-top: 20px;
}


.contacts_info .map_wrap .map
{
    position: relative;

    overflow: hidden;

    height: 560px;

    background: #ddd;
}



.contacts_info .tabs
{
    display: flex;

    margin-bottom: 10px;
    margin-left: -80px;

    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}


.contacts_info .tabs button
{
    font-size: 14px;
    line-height: 20px;

    position: relative;

    display: flex;
    flex-direction: column;

    width: 320px;
    max-width: calc(50% - 80px);
    margin-left: 80px;
    padding-bottom: 25px;

    text-align: left;
}

.contacts_info .tabs button .city
{
    font-size: 30px;
    font-weight: 600;
    line-height: 36px;

    margin-bottom: 15px;

    transition: color .3s linear;
}

.contacts_info .tabs button:after
{
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

    width: 0;
    height: 4px;
    margin: auto;

    content: '';
    transition: width .3s linear;

    background: #ff6b00;
}


.contacts_info .tabs button.active:after
{
    width: 100%;
}

.contacts_info .tabs button:hover .city,
.contacts_info .tabs button.active .city
{
    color: #ff6b00;
}



.contacts_info .image
{
    position: relative;

    overflow: hidden;

    width: 100%;
    margin-top: 70px;
    padding-bottom: 43.75%;

    background: #ddd;
}

.contacts_info .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}



/*----------------
    About head
----------------*/
.about_head
{
    min-height: 1000px;
    margin-bottom: 100px;
}

.about_head:after
{
    display: none;
}


.about_head .breadcrumbs
{
    margin-bottom: 60px;
}


.about_head .data
{
    color: #fff;

    width: 935px;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;

    text-align: center;
}

.about_head .data .title
{
    font-size: 130px;
    font-weight: 600;
    line-height: 157px;
}

.about_head .data .desc
{
    font-size: 18px;
    line-height: 135%;

    margin-top: 10px;
}


.about_head .person
{
    position: absolute;
    z-index: 5;
}

.about_head .person.active
{
    z-index: 9;
}

.about_head .person1
{
    top: 42.78%;
    left: 26.09%;
}

.about_head .person2
{
    top: 48.92%;
    left: 62.03%;
}

.about_head .person3
{
    top: 69.33%;
    left: 18.38%;
}


.about_head .person .btn
{
    color: #ff6b00;
    font-size: 18px;
    line-height: 22px;

    padding: 17px 30px;

    border-radius: 50px;
    background: #fff;
    box-shadow: 0 20px 50px rgba(255, 255, 255, .26);
}

.about_head .person .btn span
{
    padding-bottom: 2px;

    border-bottom: 1px dashed;
}


.about_head .person .mini_modal,
.about_head .person .mini_modal.active
{
    top: 0;
    left: 0;

    width: 800px;
    padding: 40px;

    border-radius: 25px;
    background: #fff;
    box-shadow: 0 40px 50px rgba(0, 0, 0, .1);
}

.about_head .person .mini_modal#person2_modal,
.about_head .person .mini_modal#person2_modal.active
{
    right: 0;
    left: auto;
}


.about_head .person .close_btn
{
    color: #ff6b00;

    position: absolute;
    top: -40px;
    right: 0;

    display: flex;

    width: 32px;
    height: 32px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.about_head .person .close_btn .icon
{
    display: block;

    width: 32px;
    height: 32px;
}


.about_head .person .name
{
    font-size: 22px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 26px;
}


.about_head .person .text_block
{
    line-height: 145%;
}

.about_head .person .text_block > *,
.about_head .person .text_block .cols .col > *,
.about_head .person .text_block blockquote .text > *
{
    margin-bottom: 16px;
}


.about_head .person .socials
{
    color: #1da7e2;
    line-height: 24px;

    display: flex;

    margin-top: 24px;
    margin-bottom: -4px;
    margin-left: -20px;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.about_head .person .socials > *
{
    margin-bottom: 4px;
    margin-left: 20px;
}

.about_head .person .socials a
{
    color: currentColor;
}



/*-----------------
    Instructors
-----------------*/
.instructors
{
    position: relative;
    z-index: 3;

    margin-bottom: 100px;
}


.instructors .bg
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: 1726px;
    height: 3744px;
    margin: auto;
}


.instructors .row
{
    margin-bottom: -40px;
    margin-left: -26px;
}

.instructors .row > *
{
    width: calc(25% - 26px);
    margin-bottom: 40px;
    margin-left: 26px;
}


.instructors .person
{
    color: var(--text_color);
    line-height: 145%;

    display: block;

    text-align: center;
    text-decoration: none;
}


.instructors .person .photo
{
    position: relative;

    overflow: hidden;

    margin-bottom: 30px;
    padding-bottom: 180%;

    transition: box-shadow .3s linear;

    border: 0 solid #fff;
    border-radius: 100px;
    background: #ddd;
}

.instructors .person:nth-child(4n+1) .photo
{
    border-radius: 6px 100px 100px 100px;
}

.instructors .person:nth-child(4n) .photo,
.instructors .person:last-child .photo
{
    border-radius: 100px 100px 6px 100px;
}


.instructors .person .photo img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    border-radius: inherit;

    object-fit: cover;
}


.instructors .person .name
{
    font-size: 20px;
    font-weight: 600;
    line-height: 22px;

    display: inline;

    transition: color .2s linear, background-size .3s;

    background-image: linear-gradient(#ff6b00, #ff6b00);
    background-repeat: no-repeat;
    background-position: 0 100%;
    background-size: 0 1px;
}

.instructors .person .post
{
    margin-top: 20px;
}

.instructors .person span
{
    color: #ff6b00;
}


.instructors .person:hover .photo
{
    padding-bottom: calc(180% - 12px);

    border-width: 6px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .12);
}

.instructors .person:hover .photo img
{
    width: calc(100% + 12px);
    height: calc(100% + 12px);

    transform: translate(-6px, -6px);
}

.instructors .person:hover .name
{
    color: #ff6b00;

    background-size: 100% 1px;
}



/*------------------
    Photogallery
------------------*/
.photogallery
{
    margin-bottom: 120px;
}


.photogallery .item
{
    text-align: center;
}


.photogallery .item .thumb
{
    position: relative;

    overflow: hidden;

    margin-bottom: 30px;
    padding-bottom: 65.95%;

    border: 6px solid #fff;
    border-radius: 20px;
    background: #ddd;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .12);
}

.photogallery .item .thumb img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.photogallery .item .info
{
    transition: opacity .35s linear;

    opacity: 0;
}

.photogallery .now .item .info
{
    opacity: 1;
}


.photogallery .item .title
{
    font-size: 20px;
    font-weight: 600;
    line-height: 22px;
}

.photogallery .item .title span
{
    color: #ff6b00;
}


.photogallery .item .desc
{
    color: rgba(0, 0, 0, .5);
    line-height: 145%;

    margin-top: 14px;
}



/*-------------
    Reviews
-------------*/
.reviews
{
    position: relative;
    z-index: 3;

    margin-bottom: 172px;
}


.reviews .block_head
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.reviews .block_head .title
{
    width: auto;
}


.reviews .add_review_btn
{
    color: #1da7e2;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    margin-left: 40px;
    padding: 21px 45px 20px 46px;

    border: 1px solid #1da7e2;
    border-radius: 100px;
}


.reviews .tabs
{
    display: flex;

    margin-left: -29px;

    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}


.reviews .tabs button
{
    color: rgba(0, 0, 0, .4);
    font-size: 24px;
    font-weight: 600;
    line-height: 29px;

    position: relative;

    display: block;

    margin-left: 29px;
    padding-bottom: 10px;

    transition: color .3s linear;
    text-align: left;
}

.reviews .tabs button:after
{
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

    width: 0;
    height: 2px;
    margin: auto;

    content: '';
    transition: width .3s linear;

    border-radius: 10px;
    background: #1da7e2;
}


.reviews .tabs button.active,
.reviews .tabs button:hover
{
    color: var(--text_color);
}

.reviews .tabs button.active:after
{
    width: 100%;
}


.reviews .tab_content
{
    position: relative;
    z-index: 3;
}

.reviews .tab_content:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background: linear-gradient(180deg, #f2f3f5 0%, rgba(242, 243, 245, 0) 100%);
}

.reviews .tab_content.active
{
    padding: 60px 0 87px;
}



.reviews .swiper
{
    overflow: visible !important;
}

.reviews .swiper-slide
{
    position: relative;

    visibility: hidden;

    transition: opacity .2s linear, visibility .3s linear;
    pointer-events: none;

    opacity: 0;
}

.reviews .swiper-slide.visible
{
    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}


.reviews .swiper-button-next,
.reviews .swiper-button-prev
{
    top: 0;
    bottom: 0;

    width: 60px;
    height: 60px;
    margin: auto;
}

.reviews .swiper-button-prev
{
    right: auto;
    left: -100px;
}

.reviews .swiper-button-next
{
    right: -100px;
}

.reviews .swiper-button-next .icon,
.reviews .swiper-button-prev .icon
{
    width: 13px;
    height: 16px;
}



.reviews .review .head
{
    position: relative;
    z-index: 3;

    display: flex;

    margin-bottom: -17px;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.reviews .review .author
{
    font-size: 24px;
    font-weight: 500;
    line-height: 22px;

    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.reviews .review .author .photo
{
    position: relative;

    overflow: hidden;

    width: 110px;
    height: 110px;
    margin-right: 16px;

    border-radius: 50%;
    background: #ddd;
}

.reviews .review .author .photo img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    border-radius: inherit;

    object-fit: cover;
}

.reviews .review .author .photo + div
{
    max-width: calc(100% - 126px);
}


.reviews .review .date
{
    line-height: 145%;

    white-space: nowrap;

    opacity: .5;
}


.reviews .review .text
{
    line-height: 145%;

    padding: 30px;

    border-radius: 20px;
    background: #fff;
    box-shadow: 0 40px 50px rgba(112, 101, 101, .1);
}

.reviews .review .text > * + *
{
    margin-top: 20px;
}



@media (max-width: 1599px)
{
    .reviews .swiper
    {
        padding: 0 80px;
    }

    .reviews .swiper-button-prev
    {
        left: 0;
    }

    .reviews .swiper-button-next
    {
        right: 0;
    }
}



/*------------------
    Service head
------------------*/
.service_head
{
    min-height: 0;
    margin-bottom: 50px;
    padding-bottom: 0;
}

.service_head:after
{
    background: rgba(0, 0, 0, .4);
}


.service_head .breadcrumbs
{
    margin-bottom: 43px;
}


.service_head .location
{
    color: #ff6b00;
    font-weight: 600;
    line-height: 19px;

    margin-bottom: 11px;
}


.service_head .page_title
{
    width: 820px;
    max-width: 100%;
}



.service_head .params
{
    position: relative;
    z-index: 3;

    display: flex;

    margin-top: 80px;
    margin-bottom: -50px;
    padding: 30px 40px;

    border-radius: 8px;
    background: #fff;
    box-shadow: 0 20px 70px rgba(0, 0, 0, .12);

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.service_head .params > *
{
    font-size: 14px;
    line-height: 16px;
	max-width:280px;
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.service_head .params .icon
{
    color: #ff6b00;

    display: flex;

    width: 30px;
    height: 30px;
    margin-right: 12px;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.service_head .params .icon svg
{
    display: block;

    width: 30px;
    height: 30px;
}

.service_head .params .icon + *
{
    max-width: calc(100% - 42px);
}


.service_head .params .name
{
    color: rgba(0, 0, 0, .5);
    line-height: 20px;
}


.service_head .params .circles
{
    display: flex;

    width: 58px;
    padding: 5px 0;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.service_head .params .circle
{
    display: block;

    width: 10px;
    height: 10px;

    border: 2px solid #ff6b00;
    border-radius: 50%;
}

.service_head .params .circle.active
{
    background: #ff6b00;
}

.service_head .params .circle + .circle
{
    margin-left: 2px;
}



/*-----------------
    Service nav
-----------------*/
.service_nav
{
    position: relative;
    z-index: 10;

    margin-bottom: 70px;
}


.service_nav .data
{
    color: rgba(0, 0, 0, .5);
    font-size: 14px;
    line-height: 17px;

    display: flex;

    padding-top: 26px;
    padding-bottom: 22px;

    transition: .2s linear;

    border-bottom: 1px solid #dce0ec;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.service_nav .name
{
    margin-right: 30px;
}


.service_nav .btns
{
    display: flex;

    margin-bottom: -10px;
    margin-left: -30px;

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.service_nav .data .btns > *
{
    margin-bottom: 10px;
    margin-left: 30px;
}


.service_nav .btns .btn
{
    color: #1da7e2;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    padding-bottom: 2px;

    border-bottom: 1px dashed;
}


.service_nav.is_stuck
{
    margin: 0;

    background: #f8f9fc;
}

.service_nav.is_stuck .data
{
    padding: 16px 0;
}



/*-------------
    Gallery
-------------*/
.gallery .block_title
{
    font-size: 40px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 40px;
}


.gallery .grid
{
    display: grid;

    grid-gap: 4px;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: auto;
}

.gallery .grid > *.big
{
    grid-row: 1 / 3;
    grid-column: 1 / 3;
}


.gallery .item
{
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    position: relative;

    display: block;
    overflow: hidden;

    padding-bottom: 100%;

    text-decoration: none;

    background: #ddd;
}

.gallery .item.hide
{
    display: none;
}


.gallery .item img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.gallery .item .more
{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;

    display: flex;

    width: 100%;
    height: 100%;
    padding: 20px;

    text-align: center;

    background: rgba(0, 0, 0, .5);

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.gallery .item .count
{
    font-size: 40px;
    font-weight: 600;
    line-height: 48px;

    width: 100%;
    margin-top: 4px;
}



/*---------------
    Route map
---------------*/
.route_map .block_title
{
    font-size: 40px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 40px;
}


.route_map .map_link
{
    color: #1da7e2;
    line-height: 19px;

    margin-bottom: 40px;
    margin-left: auto;

    align-self: flex-end;
}

.route_map .map_link a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    text-decoration: none;
}


.route_map .map_wrap
{
    padding: 9px;

    border: 1px solid #f2f3f5;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 50px 100px rgba(226, 232, 238, .6);
}

.route_map .map
{
    position: relative;

    overflow: hidden;

    height: 500px;

    border-radius: 8px;
    background: #ddd;
}



/*------------------
    Hike program
------------------*/
.hike_program .block_title
{
    font-size: 40px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 40px;
}


.hike_program .features
{
    color: #1da7e2;
    font-size: 14px;
    font-weight: 500;
    font-style: italic;
    line-height: 22px;

    margin-bottom: 10px;
}

.hike_program .features > *
{
    position: relative;

    padding-left: 20px;
}

.hike_program .features > *:before
{
    position: absolute;
    top: 8px;
    left: 0;

    display: block;

    width: 6px;
    height: 6px;

    content: '';

    border-radius: 50%;
    background: #1da7e2;
}

.hike_program .features > * + *
{
    margin-top: 10px;
}


.hike_program .text_block
{
    font-size: 14px;
    line-height: 20px;
}

.hike_program .text_block * + h2,
.hike_program .text_block * + h3,
.hike_program .text_block * + h4,
.hike_program .text_block * + h5,
.hike_program .text_block * + h6
{
    margin-top: 30px;
}


.hike_program .slider
{
    overflow: hidden;

    width: calc(100% + 138px);
    margin-top: 40px;
    margin-right: -69px;
    margin-left: -69px;
    padding: 0 69px;
}


.hike_program .swiper
{
    overflow: visible !important;
}

.hike_program .swiper-slide
{
    position: relative;

    visibility: hidden;

    transition: opacity .2s linear, visibility .3s linear;
    pointer-events: none;

    opacity: 0;
}

.hike_program .swiper-slide.visible
{
    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}


.hike_program .swiper-button-next,
.hike_program .swiper-button-prev
{
    color: #ff6b00;

    top: 0;
    bottom: 0;

    width: 43px;
    height: 36px;
    margin: auto;

    border-radius: 0;
    background: none;
}

.hike_program .swiper-button-prev
{
    right: auto;
    left: -53px;
}

.hike_program .swiper-button-next
{
    right: -53px;
}


.hike_program .swiper .image
{
    color: var(--text_color);

    position: relative;

    display: block;
    overflow: hidden;

    padding-bottom: 100%;

    text-decoration: none;

    border-radius: 4px;
    background: #ddd;
}

.hike_program .swiper .image img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    border-radius: inherit;

    object-fit: cover;
}


.hike_program .notice
{
    font-weight: 600;
    font-style: italic;
    line-height: 24px;

    position: relative;

    margin-top: 60px;
    padding-left: 30px;
}

.hike_program .notice:before
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 4px;
    height: 100%;

    content: '';

    border-radius: 4px;
    background: #ff6b00;
}



/*---------------
    Equipment
---------------*/
.equipment .block_title
{
    font-size: 40px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 40px;
}


.equipment .print_btn
{
    color: #1da7e2;
    line-height: 19px;

    margin-bottom: 40px;
    margin-left: auto;

    align-self: flex-end;
}


.equipment .accordion_item
{
    margin-left: 0;

    border-color: #f6f7fa;
    background: #f6f7fa;
}

.equipment .accordion_item:before
{
    display: none;
}

.equipment .accordion_item .head
{
    padding-left: 94px;
}

.equipment .accordion_item .data
{
    padding-bottom: 42px;
}

.equipment .accordion_item.active
{
    box-shadow: none;
}


.equipment .item + .item
{
    border-top: 1px solid rgba(199, 204, 215, .5);
}


.equipment .item .val
{
    font-size: 14px;
    line-height: 17px;

    position: relative;

    padding: 11px 0;
}

.equipment .item .val.spoler
{
    cursor: pointer;
}

.equipment .item .val.spoler:before
{
    position: absolute;
    top: 2px;
    bottom: 0;
    left: -26px;

    display: block;

    width: 14px;
    height: 9px;
    margin: auto;

    content: '';
    transition: transform .3s linear;

    border-top: 9px solid #c7ccd7;
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
}


.equipment .item .val.active
{
    font-weight: 600;
}

.equipment .item .val.active.spoler:before
{
    transform: rotate(180deg);
}


.equipment .text_block
{
    font-size: 14px;
    line-height: 17px;

    display: none;

    padding-bottom: 30px;
}

.equipment .text_block * + h2,
.equipment .text_block * + h3,
.equipment .text_block * + h4,
.equipment .text_block * + h5,
.equipment .text_block * + h6
{
    margin-top: 30px;
}


.equipment .notice
{
    font-weight: 600;
    font-style: italic;
    line-height: 24px;

    position: relative;

    margin-top: 40px;
    padding-left: 30px;
}

.equipment .notice:before
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 4px;
    height: 100%;

    content: '';

    border-radius: 4px;
    background: #ff6b00;
}



/*-------------
    Tickets
-------------*/
.tickets .block_title
{
    font-size: 40px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 40px;
}



/*-----------------
    Video block
-----------------*/
.video_block .block_title
{
    font-size: 40px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 20px;
}


.video_block .author
{
    font-style: italic;
    line-height: 24px;

    margin-bottom: 30px;
}


.video_block .link
{
    color: var(--text_color);

    position: relative;

    display: block;
    overflow: hidden;

    text-decoration: none;
}


.video_block .link .thumb
{
    position: relative;

    overflow: hidden;

    padding-bottom: 63.41%;

    background: #ddd;
}

.video_block .link .thumb img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.video_block .link .btn
{
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: 120px;
    height: 120px;
    margin: auto;

    border-radius: 50%;
    background: #fff;
}

.video_block .link .btn:before
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 4px;

    display: block;

    width: 12px;
    height: 14px;
    margin: auto;

    content: '';
    transition: transform .3s linear;

    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 12px solid #ff6b00;
}



/*-----------------
    Travel cost
-----------------*/
.travel_cost .block_title
{
    font-size: 40px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 30px;
}

.travel_cost .block_title span
{
    color: #ff6b00;

    display: block;

    margin-top: 12px;
}


.travel_cost .exp
{
    color: rgba(0, 0, 0, .5);
    font-size: 14px;
    font-style: italic;
    line-height: 17px;

    margin-bottom: 40px;
}


.travel_cost .row
{
    align-items: stretch;
    align-content: stretch;
}


.travel_cost .col
{
    width: 50%;
}

.travel_cost .col.bg
{
    padding: 40px 30px 60px;

    border-radius: 6px;
    background: #f6f7fa;
}

.travel_cost .col + .col
{
    padding: 40px 0 60px 40px;
}


.travel_cost .title
{
    font-size: 24px;
    font-weight: 600;
    line-height: 29px;

    display: flex;

    margin-bottom: 30px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.travel_cost .title .check
{
    color: #fff;

    display: flex;

    width: 24px;
    height: 24px;
    margin-left: 10px;

    border-radius: 50%;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.travel_cost .title .check.green
{
    background: #74cc36;
}

.travel_cost .title .check.green svg
{
    display: block;

    width: 10px;
    height: 10px;
}


.travel_cost .title .check.red
{
    background: #f00;
}

.travel_cost .title .check.red svg
{
    display: block;

    width: 20px;
    height: 20px;
}


.travel_cost .items
{
    font-size: 14px;
    line-height: 17px;
}


.travel_cost .items > *
{
    position: relative;

    padding-left: 20px;
}

.travel_cost .items > * + *
{
    margin-top: 20px;
}


.travel_cost .bg .items > *:before
{
    position: absolute;
    top: 6px;
    left: 0;

    display: block;

    width: 5px;
    height: 5px;

    content: '';

    border-radius: 50%;
    background: #74cc36;
}

.travel_cost .col + .col .items > *:before
{
    position: absolute;
    top: 9px;
    left: 0;

    display: block;

    width: 10px;
    height: 2px;

    content: '';

    background: #f00;
}



/*--------------------
    Contacts block
--------------------*/
.contacts_block .data
{
    position: relative;

    display: flex;

    padding: 70px 60px 60px;

    border-radius: 10px;
    background: #f6f7fa;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.contacts_block .info
{
    width: 350px;
    max-width: 100%;
}

.contacts_block .info .title
{
    font-size: 30px;
    font-weight: 600;
    line-height: 36px;
}

.contacts_block .info .desc
{
    font-size: 14px;
    line-height: 17px;

    margin-top: 20px;
}


.contacts_block .btn
{
    color: #fff;
    font-size: 14px;
    line-height: 17px;

    display: block;

    width: 100%;
    margin-top: 30px;
    padding: 22px 22px 21px;

    border-radius: 100px;
    background: #ff6b00;
}



.contacts_block .manager
{
    width: 300px;
    max-width: 100%;
    margin-left: auto;
}


.contacts_block .manager .photo
{
    position: relative;
    z-index: 3;

    width: 120px;
    height: 120px;
    margin-bottom: 21px;

    border-radius: 100px 100px 100px 6px;
    background: #ddd;
}

.contacts_block .manager .photo img
{
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    border-radius: inherit;

    object-fit: cover;
}


.contacts_block .manager .shadow
{
    position: absolute;
    top: 0;
    left: 50%;

    width: 100%;
    height: 100%;

    border-radius: inherit;
    background: #e0e4ef;
}

.contacts_block .manager .shadow:before,
.contacts_block .manager .shadow:after
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 50%;

    width: 100%;
    height: 100%;

    content: '';

    border-radius: inherit;
    background: #e9ecf3;
}

.contacts_block .manager .shadow:after
{
    z-index: -2;
    left: 100%;

    background: #edeff5;
}


.contacts_block .manager .name
{
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;
}


.contacts_block .manager .desc
{
    color: rgba(0, 0, 0, .5);
    font-size: 14px;
    line-height: 17px;

    margin-top: 6px;
}


.contacts_block .manager .contacts
{
    display: flex;

    margin-top: 20px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.contacts_block .manager .phone
{
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;
}

.contacts_block .manager .phone a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    white-space: nowrap;
    text-decoration: none;
}



.contacts_block .manager .messengers
{
    display: flex;

    margin-left: 20px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.contacts_block .manager .messengers a
{
    color: var(--text_color);

    display: block;

    width: 26px;
    height: 26px;

    text-decoration: none;

    opacity: .2;
}

.contacts_block .manager .messengers a + a
{
    margin-left: 10px;
}

.contacts_block .manager .messengers .icon
{
    display: block;

    width: 26px;
    height: 26px;
}


.contacts_block .manager + .btn
{
    display: none;
}



.contacts_block .links
{
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;

    display: flex;

    width: 100%;
    margin-top: 44px;
    padding-top: 35px;

    border-top: 1px solid rgba(0, 0, 0, .12);

    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.contacts_block .links .name
{
    margin-right: 20px;
}


.contacts_block .links .row
{
    margin-bottom: -20px;
    margin-left: -20px;
}

.contacts_block .links .row > *
{
    margin-bottom: 20px;
    margin-left: 20px;
}


.contacts_block .links a
{
    color: #1da7e2;
    font-weight: 400;
}



/*-------------
    How buy
-------------*/
.how_buy .block_title
{
    font-size: 40px;
    font-weight: 600;
    line-height: 100%;

    margin-bottom: 40px;
}


.how_buy .spoler
{
    font-size: 20px;
    font-weight: 600;
    line-height: 22px;

    display: flex;

    width: 100%;
    margin-bottom: 30px;

    cursor: pointer;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.how_buy .spoler .icon
{
    color: #ff6b00;

    display: block;

    width: 16px;
    height: 16px;
    margin-left: auto;
}

.how_buy .spoler.active .icon
{
    transform: rotate(180deg);
}

.how_buy .spoler + .steps
{
    display: none;
}


.how_buy .steps
{
    position: relative;
    z-index: 3;

    width: 570px;
    max-width: 100%;
}


.how_buy .step
{
    position: relative;

    width: calc(100% - 60px);
    padding-left: 60px;
}

.how_buy .step + .step
{
    margin-top: 50px;
}


.how_buy .step .icon
{
    position: absolute;
    top: 0;
    left: 0;

    display: flex;

    width: 40px;
    height: 40px;

    border-radius: 4px;
    background: #ff6b00;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.how_buy .step .icon img
{
    display: block;

    max-width: 100%;
    max-height: 100%;
}


.how_buy .step .name
{
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;
}


.how_buy .step .desc
{
    font-size: 12px;
    line-height: 145%;

    margin-top: 10px;
}


.how_buy .step:nth-child(2n)
{
    margin-left: auto;
    padding-right: 60px;
    padding-left: 0;

    text-align: right;
}

.how_buy .step:nth-child(2n) .icon
{
    right: 0;
    left: auto;
}


.how_buy .bg
{
    position: absolute;
    z-index: -1;
    top: 16px;
    right: 0;
    left: 0;

    display: block;

    width: 542px;
    height: 869px;
    margin: auto;

    pointer-events: none;
}


.how_buy .bg2
{
    position: absolute;
    z-index: -1;
    top: 40px;
    right: 0;
    left: 0;

    display: block;

    width: 549px;
    height: 1024px;
    margin: auto;

    pointer-events: none;
}



/*------------------
    Booking head
------------------*/
.booking_head
{
    color: var(--text_color);

    min-height: 0;
    margin-bottom: 50px;
    padding-bottom: 40px;
}

.booking_head:after
{
    display: none;
}


.booking_head .breadcrumbs
{
    color: rgba(0, 0, 0, .4);

    margin-bottom: 63px;
}

.booking_head .breadcrumbs a
{
    color: var(--text_color);
}


.booking_head .page_title
{
    color: currentColor;
}


.booking_head .desc
{
    color: rgba(0, 0, 0, .4);
    font-size: 14px;
    line-height: 145%;

    width: 600px;
    max-width: 100%;
    margin-top: 30px;
}



/*-------------
    Booking
-------------*/
.booking
{
    margin-bottom: 100px;
}


.booking .cont
{
    align-items: stretch;
    align-content: stretch;
}


.booking .col_main
{
    width: calc(50% - 70px);
}


.booking .col_right
{
    position: relative;
    z-index: 5;

    width: calc(50% + 28px);
    margin-top: -227px;
    margin-right: -24px;
    margin-left: auto;
}


.booking .form
{
    margin-top: 30px;
    padding-bottom: 19px;

    border-bottom: 1px solid rgba(0, 0, 0, .12);

    --form_border_color: rgba(0, 0, 0, .12);
    --form_focus_color: #ff6b00;
    --form_placeholder_color: rgba(0, 0, 0, .3);
}


.booking .form .section
{
    padding-bottom: 29px;

    border-bottom: 1px solid rgba(0, 0, 0, .12);
}

.booking .form .section + .section
{
    margin-top: 29px;
}


.booking .form .title
{
    font-size: 20px;
    font-weight: 600;
    line-height: 22px;

    margin-bottom: 20px;
}


.booking .form .input,
.booking .form textarea
{
    height: 54px;
    padding: 0 19px;

    transition: .3s linear;

    border: 1px solid var(--form_border_color);
    border-radius: 8px;
}

.booking .form textarea
{
    height: 80px;
    padding: 18px 19px;
    ;
}


.booking .form .columns
{
    margin-bottom: -10px;
    margin-left: calc(var(--form_columns_offset) * -1);

    --form_columns_offset: 10px;
}

.booking .form .columns > *
{
    width: calc(50% - var(--form_columns_offset));
    margin-left: var(--form_columns_offset);
}


.booking .form .line
{
    margin-bottom: 10px;
}


.booking .form .field + .field
{
    margin-top: 17px;
}


.booking .form .input:focus,
.booking .form textarea:focus
{
    border-color: var(--form_focus_color);
    box-shadow: inset 0 0 0 1px var(--form_focus_color);
}


.booking .form input[type=radio]
{
    display: none;
}

.booking .form input[type=radio] + label
{
    color: rgba(0, 0, 0, .4);
    font-size: 14px;
    line-height: 17px;

    position: relative;

    display: flex;

    min-height: 20px;
    padding-left: 28px;

    cursor: pointer;
    transition: color .3s linear;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.booking .form input[type=radio] + label:before
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 20px;
    height: 20px;

    content: '';
    transition: opacity .3s linear;

    opacity: .4;
    border: 2px solid #ff6b00;
    border-radius: 50%;
}

.booking .form input[type=radio] + label:after
{
    position: absolute;
    top: 4px;
    left: 4px;

    display: block;

    width: 12px;
    height: 12px;

    content: '';
    transition: opacity .3s linear;

    opacity: 0;
    border-radius: 50%;
    background: #ff6b00;
}

.booking .form input[type=radio]:checked + label
{
    color: var(--text_color);
}

.booking .form input[type=radio]:checked + label:before,
.booking .form input[type=radio]:checked + label:after
{
    opacity: 1;
}


.booking .form .amount
{
    position: relative;
}


.booking .form .amount button
{
    color: #ff6b00;

    position: absolute;
    z-index: 3;
    top: 0;
    bottom: 0;
    left: 15px;

    display: flex;

    width: 24px;
    height: 24px;
    margin: auto;

    transform: rotate(90deg);

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.booking .form .amount button.plus
{
    right: 15px;
    left: auto;

    transform: rotate(-90deg);
}


.booking .form .amount button .icon
{
    display: block;

    width: 16px;
    height: 16px;
}


.booking .form .amount .input
{
    text-align: center;
}


.booking .form select
{
    display: none;
}

.booking .form .nice-select
{
    position: relative;

    display: block;
}


.booking .form .nice-select .current
{
    color: var(--text_color);
    font-size: 14px;
    line-height: 52px;

    position: relative;

    display: block;
    overflow: hidden;

    height: 54px;
    padding: 0 54px 0 19px;

    cursor: pointer;
    transition: .3s linear;
    white-space: nowrap;
    text-overflow: ellipsis;

    border: 1px solid var(--form_border_color);
    border-radius: 8px;
}


.booking .form .nice-select .list
{
    position: absolute;
    z-index: 9;
    top: calc(100% + 30px);
    left: 0;

    visibility: hidden;
    overflow: hidden;

    min-width: 100%;
    padding: 5px;

    transition: .3s linear;

    opacity: 0;
    border: 1px solid #f2f3f5;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 50px 80px rgba(0, 0, 0, .2);
}

.booking .form .nice-select.open .list
{
    top: calc(100% + 4px);

    visibility: visible;

    opacity: 1;
}


.booking .form .nice-select .scrollbar
{
    overflow: auto;

    max-height: 132px;

    scrollbar-color: #d9d9d9 transparent;
    scrollbar-width: thin;
}

.booking .form .nice-select .scrollbar::-webkit-scrollbar
{
    width: 4px;
    height: 4px;

    border-radius: 2px;
    background-color: transparent;
}

.booking .form .nice-select .scrollbar::-webkit-scrollbar-thumb
{
    border-radius: 2px;
    background-color: #d9d9d9;
}


.booking .form .nice-select .list .list_item
{
    font-size: 14px;
    line-height: 17px;

    padding: 8px 25px;

    cursor: pointer;
    transition: background .3s linear;
}

.booking .form .nice-select .list .list_item:empty
{
    display: none;
}

.booking .form .nice-select .list .list_item:hover,
.booking .form .nice-select .list .list_item.selected
{
    background: #f2f3f5;
}


.booking .form .nice-select + .arr
{
    color: #ff6b00;

    position: absolute;
    z-index: 9;
    top: 0;
    right: 20px;
    bottom: 0;

    display: block;

    width: 16px;
    height: 16px;
    margin: auto;

    pointer-events: none;
}



.booking .tour
{
    padding: 40px;

    border-radius: 8px;
    background: #fff;
    box-shadow: 0 20px 50px rgba(0, 0, 0, .12);
}


.booking .tour .info
{
    position: relative;

    display: flex;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.booking .tour .info .thumb
{
    position: relative;

    overflow: hidden;

    width: 180px;
    padding-bottom: 180px;

    border-radius: 8px;
    background: #ddd;
}

.booking .tour .info .thumb img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.booking .tour .info .thumb + div
{
    width: calc(100% - 200px);
}


.booking .tour .info .location
{
    color: #ff6b00;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
}


.booking .tour .info .name
{
    font-size: 20px;
    font-weight: 600;
    line-height: 22px;

    margin-top: 6px;
}

.booking .tour .info .name a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    text-decoration: none;
}


.booking .tour .info .features
{
    font-size: 14px;
    line-height: 20px;

    margin-top: 20px;
}


.booking .tour .info .features > *
{
    position: relative;

    padding-left: 14px;
}

.booking .tour .info .features > *:before
{
    position: absolute;
    top: 7px;
    left: 0;

    display: block;

    width: 6px;
    height: 6px;

    content: '';

    border-radius: 50%;
    background: #ff6b00;
}

.booking .tour .info .features > * + *
{
    margin-top: 8px;
}


.booking .tour .buy
{
    display: flex;

    margin-top: 20px;
    padding: 19px 0 0;

    border-top: 1px solid rgba(0, 0, 0, .12);

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.booking .tour .price
{
    color: rgba(0, 0, 0, .5);
    font-size: 14px;
    line-height: 17px;
}

.booking .tour .price .val
{
    color: var(--text_color);
    font-size: 40px;
    font-weight: 600;
    line-height: 48px;

    white-space: nowrap;
}


.booking .tour .buy_btn
{
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;

    display: block;

    width: 280px;
    max-width: 100%;
    height: 54px;

    border-radius: 8px;
    background: #ff6b00;
}


.booking .tour .agree
{
    color: rgba(0, 0, 0, .5);
    font-size: 12px;
    line-height: 15px;

    margin-top: 12px;

    text-align: center;
}

.booking .tour .agree a
{
    color: currentColor;
}


.booking .tour .options
{
    display: flex;

    margin-top: 20px;
    padding: 29px 0 0;

    border-top: 1px solid rgba(0, 0, 0, .12);

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.booking .tour .options .col
{
    width: calc(50% - 32px);
}


.booking .tour .options .title
{
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;

    margin-bottom: 20px;
}


.booking .tour .options .items
{
    font-size: 12px;
    line-height: 145%;
}


.booking .tour .options .items > *
{
    position: relative;

    padding-left: 20px;
}

.booking .tour .options .items > *:before
{
    position: absolute;
    top: 6px;
    left: 0;

    display: block;

    width: 12px;
    height: 12px;

    content: '';

    border: 3px solid #ff6b00;
    border-radius: 50%;
}

.booking .tour .options .items > * + *
{
    margin-top: 10px;
}



/*----------------------
    Booking mob info
----------------------*/
.booking_mob_info
{
    display: none;

    margin-bottom: 50px;
}


.booking_mob_info .spoler_btn
{
    font-size: 16px;
    font-weight: 600;
    line-height: 125%;

    display: flex;

    width: 100%;

    justify-content: space-between;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}


.booking_mob_info .spoler_btn .icon
{
    color: #ff6b00;

    display: block;

    width: 20px;
    height: 20px;

    transition: transform .3s linear;
}

.booking_mob_info .spoler_btn.active .icon
{
    transform: rotate(180deg);
}


.booking_mob_info .data
{
    display: none;

    padding-top: 24px;
}


.booking_mob_info .options
{
    display: flex;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}


.booking_mob_info .options .col
{
    width: calc(50% - 23px);
}


.booking_mob_info .options .title
{
    font-size: 11px;
    font-weight: 600;
    line-height: 13px;

    margin-bottom: 10px;
}


.booking_mob_info .options .items
{
    color: rgba(0, 0, 0, .4);
    font-size: 10px;
    line-height: 135%;
}


.booking_mob_info .options .items > *
{
    position: relative;

    padding-left: 13px;
}

.booking_mob_info .options .items > *:before
{
    position: absolute;
    top: 4px;
    left: 0;

    display: block;

    width: 8px;
    height: 8px;

    /*content: '';*/

    border: 2px solid #ff6b00;
    border-radius: 50%;
}

.booking_mob_info .options .items > * + *
{
    margin-top: 14px;
}



.booking_mob_info .buy
{
    margin-top: 30px;
    padding: 29px 0 0;

    text-align: center;

    border-top: 1px solid rgba(0, 0, 0, .12);
}


.booking_mob_info .price
{
    color: rgba(0, 0, 0, .5);
    font-size: 14px;
    line-height: 17px;
}

.booking_mob_info .price .val
{
    color: var(--text_color);
    font-size: 40px;
    font-weight: 600;
    line-height: 48px;

    white-space: nowrap;
}


.booking_mob_info .buy_btn
{
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    line-height: 17px;

    display: block;

    width: 100%;
    height: 52px;
    margin-top: 20px;

    border-radius: 8px;
    background: #ff6b00;
}


.booking_mob_info .agree
{
    color: rgba(0, 0, 0, .5);
    font-size: 11px;
    line-height: 13px;

    margin-top: 14px;
}

.booking_mob_info .agree a
{
    color: currentColor;
}



/*------------
    Footer
------------*/
footer
{
    position: relative;
    z-index: 9;

    background: #060f21;
}


footer .cont
{
    position: relative;

    justify-content: space-between;
}


footer .info
{
    padding: 100px 0 31px;
}


footer .bottom
{
    color: rgba(255, 255, 255, .5);
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    padding: 24px 0;
}


footer .bottom .cont
{
    align-items: center;
    align-content: center;
    justify-content: flex-start;
}

footer .bottom .cont:before
{
    position: absolute;
    top: -24px;
    right: 0;
    left: 0;

    display: block;

    width: calc(100% - 48px);
    height: 1px;
    margin: auto;

    content: '';

    background: rgba(255, 255, 255, .12);
}



footer .col_left
{
    margin-right: auto;
}



footer .contacts
{
    display: flex;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}



footer .phone
{
    color: #fff;
    font-size: 36px;
    font-weight: 600;
    line-height: 44px;
}

footer .phone a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
    white-space: nowrap;
    text-decoration: none;
}



footer .messengers
{
    display: flex;

    margin-left: 20px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

footer .messengers a
{
    color: #fff;

    display: block;

    width: 30px;
    height: 30px;

    transition: opacity .2s linear;
    text-decoration: none;

    opacity: .2;
}

footer .messengers a + a
{
    margin-left: 10px;
}

footer .messengers .icon
{
    display: block;

    width: 30px;
    height: 30px;
}

footer .messengers a:hover
{
    opacity: 1;
}



footer .time
{
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    margin-top: 10px;
}

footer .time > * + *
{
    margin-top: 8px;
}

footer .time span
{
    color: rgba(255, 255, 255, .5);

    display: inline-block;

    width: 47px;
    margin-right: 6px;

    vertical-align: top;
}



footer .email
{
    color: #fff;
    font-size: 18px;
    line-height: 22px;

    margin-top: 30px;
}

footer .email a
{
    color: currentColor;

    display: inline-block;

    padding-bottom: 8px;

    vertical-align: top;
    white-space: nowrap;
    text-decoration: none;

    border-bottom: 2px solid #ff6b00;
}



footer .instagram
{
    color: #fff;
    font-size: 18px;
    line-height: 22px;

    display: flex;

    margin-top: 20px;
}

footer .instagram a
{
    color: currentColor;

    display: flex;

    white-space: nowrap;
    text-decoration: none;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

footer .instagram .icon
{
    color: #ff6b00;

    display: block;

    width: 30px;
    height: 30px;
    margin-right: 12px;
}

footer .instagram span
{
    padding-bottom: 2px;

    border-bottom: 2px solid #ff6b00;
}



footer .vk_widget
{
    overflow: hidden;

    width: 258px;
    max-width: 100%;
    margin-top: 32px;

    border-radius: 5px;
}

footer .vk_widget img
{
    display: block;

    width: 100%;
}



footer .links
{
    width: 180px;
    margin-left: 72px;
}


footer .links .title
{
    color: #fff;
    font-size: 18px;
    line-height: 22px;

    margin-bottom: 20px;
}


footer .links .items > * + *
{
    margin-top: 14px;
}

footer .links .items a
{
    color: rgba(255, 255, 255, .5);
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    display: inline-block;

    transition: color .3s linear;
    vertical-align: top;
    text-decoration: none;
}

footer .links .items a:hover,
footer .links .items a.active
{
    color: #fff;
}



footer .privacy_policy_link
{
    margin-left: 40px;
}

footer .privacy_policy_link a
{
    color: #fff;

    text-decoration: none;
}



footer .creator
{
    margin-left: 40px;
}

footer .creator a
{
    color: #fff;

    text-decoration: none;
}



footer .gift_cert_link
{
    margin-left: auto;
}


footer .gift_cert_link a
{
    color: var(--text_color);
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    display: flex;

    width: 300px;
    max-width: 100%;
    height: 70px;

    text-decoration: none;

    border-radius: 100px;
    background: #fff;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

footer .gift_cert_link .icon
{
    color: #ff6b00;

    width: 30px;
    height: 30px;
    margin-right: 14px;
}



/*-----------
    PopUp
-----------*/
.modal
{
    display: none;
    visibility: visible !important;

    width: 580px;
    max-width: 100%;
    padding: 60px 60px 65px;

    border-radius: 20px;
    background: #fff;
}


.modal_title
{
    font-size: 34px;
    font-weight: 600;
    line-height: 41px;
}


.modal_desc
{
    line-height: 24px;

    margin-top: 10px;
}


.modal a
{
    outline: none !important;
}


.modal_data
{
    margin-top: 25px;
}

.modal_data.scroll
{
    overflow: auto;

    width: calc(100% + 32px);
    max-height: 557px;
    margin-right: -32px;
    padding-right: 32px;

    scrollbar-color: #d9d9d9 transparent;
    scrollbar-width: thin;
}

.modal_data.scroll::-webkit-scrollbar
{
    width: 4px;
    height: 4px;

    border-radius: 2px;
    background-color: transparent;
}

.modal_data.scroll::-webkit-scrollbar-thumb
{
    border-radius: 2px;
    background-color: #d9d9d9;
}



#pick_up_modal
{
    width: 1180px;
    padding: 80px 60px 60px;
}


#pick_up_modal .col
{
    width: calc(50% - 30px);
}

#pick_up_modal .col + .col
{
    margin-left: auto;
}


#pick_up_modal .modal_title
{
    font-size: 60px;
    line-height: 73px;

    text-align: right;
}


#pick_up_modal .modal_desc
{
    margin-top: 20px;

    text-align: right;
}


#pick_up_modal .directions
{
    position: relative;
    z-index: 3;

    margin-top: 55px;
    margin-bottom: 0;
}


#pick_up_modal .directions .row > *:nth-child(1)
{
    margin-top: 120px;
}

#pick_up_modal .directions .row > *:nth-child(2)
{
    margin-top: 80px;
}

#pick_up_modal .directions .row > *:nth-child(3)
{
    margin-top: 40px;
}


#pick_up_modal .directions .item .thumb
{
    margin: 0;
}


#pick_up_modal .directions .circles
{
    position: absolute;
    z-index: -1;
    top: -40px;
    right: 0;
    bottom: 0;
    left: 0;

    width: 228px;
    height: 228px;
    margin: auto;

    border: 1px solid #ff6b00;
    border-radius: 50%;
}

#pick_up_modal .directions .circles:before,
#pick_up_modal .directions .circles:after
{
    position: absolute;
    top: 50%;
    left: 50%;

    display: block;

    width: 296px;
    height: 296px;

    content: '';
    transform: translate(-50%, -50%);

    border: 1px solid rgba(255, 107, 0, .6);
    border-radius: inherit;
}

#pick_up_modal .directions .circles:after
{
    width: 350px;
    height: 350px;

    border: 1px solid rgba(255, 107, 0, .2);
}


#pick_up_modal .form2
{
    display: none;
}


#pick_up_modal .back_btn
{
    margin-bottom: 37px;
}

#pick_up_modal .back_btn .btn
{
    color: #ff6b00;
    font-weight: 500;
    line-height: 19px;

    display: flex;

    height: auto;
    padding: 0;

    border: none;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

#pick_up_modal .back_btn .icon
{
    display: block;

    width: 41px;
    height: 12px;
    margin-right: 16px;
}



#watched_modal .tour
{
    display: flex;

    padding: 19px 0;

    border-top: 1px solid rgba(0, 0, 0, .12);
    border-bottom: 1px solid rgba(0, 0, 0, .12);

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

#watched_modal .tour + .tour
{
    margin-top: -1px;
}


#watched_modal .tour .thumb
{
    position: relative;

    display: block;
    overflow: hidden;

    width: 100px;
    height: 100px;

    border-radius: 6px;
    background: #ddd;
}

#watched_modal .tour .thumb img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

#watched_modal .tour .thumb + div
{
    width: calc(100% - 120px);
}


#watched_modal .tour .location
{
    color: rgba(0, 0, 0, .5);
    line-height: 24px;

    margin-bottom: 6px;
}


#watched_modal .tour .name
{
    color: #1da7e2;
    line-height: 22px;
}

#watched_modal .tour .name a
{
    color: currentColor;

    display: inline-block;

    vertical-align: top;
}



#add_review_modal .form .bottom .submit
{
    width: 220px;
}
/*start*/
/*вывод первой даты тура*/
.tours .tour .features div div {display: initial;}
.tours .tour .features span.date_vyezda {color: black; display: none;}
.tours .tour .features div div :first-child {display: initial;}
/*замена div на пункты ричТекст*/
.travel_cost .bg .items li:before
{
    position: absolute;
    top: 6px;
    left: -20px;

    display: block;

    width: 5px;
    height: 5px;

    content: '';

    border-radius: 50%;
    background: #74cc36;
}
.travel_cost .bg .items li 
{
    position: relative;
	margin-top: 20px;
	list-style-type: none; /* Убираем маркеры */
}

   .travel_cost .bg .items ul:before
   {
	   display:none;
   }
   .travel_cost .col + .col .items li:before
   {
	       position: absolute;
    top: 9px;
    left: -20px;

    display: block;

    width: 10px;
    height: 2px;

    content: '';

    background: #f00;
   }
   .travel_cost .col + .col .items li
   {
	   position: relative;
	   margin-top: 20px;
	   list-style-type: none; /* Убираем маркеры */
   }
   
/*вывод первого оставшегося места тура
.tours .tour .hot span.ostalos {display: none;}
.tours .tour .hot div  :first-child {display: initial;}
*/  
/*цитата в content*\\
.text_block blockquote
{
	font-size: 24px;
  font-weight: 600;
  font-style: italic;
  line-height: 34px;
  position: relative;
  padding-left: 60px;
}
.text_block blockquote::before
{
	position: absolute;
top: 6px;
left: 0;
display: block;
width: 29px;
height: 20px;
content: '';
background: url(../images/ic_quote.svg) 0 0 no-repeat;
}*/

/*Развернуть первый день*/
/*.accordion_item :last-child {display: initial;}*/


/*Каталог ближайшая дата и количество мест*/
.tours .date .selected .catalog_mest {display: none;}
.tours .date .val div.selected :first-child {display: inherit;}

/*Каталог ближайшая цена
.tours .price .val {display: none;}
.tours div.price_all :first-child {display: inherit;}
*/
.departure_dates .item .btn 
{
	text-align: center;
	line-height: 48px;
}

.departure_dates .item a:hover 
{
text-decoration: none;
}
/*
.booking .tour .options .items ul> ::marker
{
position: absolute;
top: 6px;
left: 0;
display: block;
width: 12px;
height: 12px;
content: '';
border: 3px solid #ff6b00;
border-radius: 50%;
}
*/
.form .oplataForm
{
display: none
}
/*Календарь, период*/
 .dp-highlight .ui-state-default {
          background: #484 !important;
          color: #FFF !important;
        }
        .ui-datepicker.ui-datepicker-multi  {
          width: 100% !important;
        }
        .ui-datepicker-multi .ui-datepicker-group {
        float:none;
        }
        #datepicker {
          height: 300px;
          overflow-x: scroll;
        }
.ui-widget { font-size: 100% }

/*кружки на сложности главная*/
form div.mini_modal input[type=checkbox] + label .circle.active
{
    background: #ff6b00;
}

form div.mini_modal input[type=checkbox] + label .circle
{
    display: block;

    width: 10px;
    height: 10px;

    border: 2px solid #ff6b00;
    border-radius: 50%;
}
.catalog_head .months
{
/*width: 1260px;*/
height: 60px;
}
.catalog_head .months .icluchen
{
	display: none;
}
p.kuda_skrit
{
	display:none;
}
form div.mini_modal .slojnost
{
	display:none;
}
/*Отключить маркеры в бронировании тура*/
.booking .tour .options .items li
{
	margin-top: 20px;
	position: relative;
	list-style-type: none;
}
.booking .tour .options .items div:before
{
	display:none;
}
.booking .tour .options .items li:before
{
   position: absolute;
  top: 6px;
  left: -20px;
  display: block;
  width: 12px;
  height: 12px;
  content: '';
  border: 3px solid #ff6b00;
  border-radius: 50%;
}
header .all_tours a.btn
{
color: #fff;
font-size: 14px;
font-weight: 500;
line-height: 17px;
display: flex;
width: 160px;
height: 50px;
padding-bottom: 2px;
border-radius: 100px;
background: #1da7e2;
justify-content: center;
align-items: center;
align-content: center;
flex-wrap: wrap;	
text-decoration: none;
}
.intrucrory
{
	padding: 30px 0;
}
.intrucrory .breadcrumbs
{
	color: rgba(0, 0, 0, .4);
}
.intrucrory .breadcrumbs a
{
	color: var(--text_color);
}
/* Изображение на странице тура главное сделать по высоте шире раза так в полтора*/
.service_head 
{
	min-height:550px;
}
.service_head .params 
{
	margin-top:280px;
}
/*Стиль Фильтра от-по*/
label.filter input
{
	font-size: 14px;
	border:none;
	margin: 10px;
	padding-left: 10px;
}
label.filter
{
	font-size: 14px;
	border-bottom: 1px solid rgba(0, 0, 0, .12);
	padding-bottom: 7px;
}
aside .filter .S_PO
{
	overflow: none;
	
}
/*ЗАглавие интруктора*/
section.intrucrory .article_head
{
	color: #ff6b00;
	
	font-weight: 600;
}
section.intrucrory .article_head span
{
	font-size: 50px;
}



.departure_dates .item .price span{
    font-size: 12px;
    color: #8f8f8f;
    display: block;
    font-weight: 600;
	    text-decoration: line-through;
    
}
.departure_dates .item .price.discount{
	line-height:17px;
	padding-top:7px;
}
.departure_dates .item .tooltip .icon
{
font-size: 14px;
font-weight: 600;
line-height: 20px;
position: relative;
top: -1px;
display: block;
width: 20px;
height: 20px;
margin-left: 4px;
cursor: help;
transition: .2s linear;
text-align: center;
border-radius: 50%;
background: rgba(0, 0, 0, .12);
}
.departure_dates .item
{
	display: flex;
}
/*Вопрос-ответ*/
.accordion .ui-accordion-header {
	font-size: 16px;
	text-decoration: underline;
	line-height: 1.2;
	margin: 0;
	padding: 10px 0;
	outline: none;
	cursor: pointer;
}
.accordion .ui-accordion-header:after {
	content: '';
	display: inline-block;
	vertical-align: middle;
	margin-left: 10px;
	width: 16px;
	position: relative;
	top: 2px;
	height: 16px;
	background: url(/502/down.png) 0 0 no-repeat;
}
.accordion .ui-state-active:after {
	background-image: url(/up.png);
}
.accordion .ui-accordion-content {
	padding: 0;
	font-size: 14px;
	line-height: 1.4;
	color: #444;
}

.partner
{
margin-bottom: 120px;
}
.reviews .tab_content.active
{
	padding: 30px 0;
}

.content_flex .instr_text
{
	  width: 50%;
	  padding: 90px 0px;
}
/*Иконки банка*/
footer .instagram img
{
	margin-right:10px;
}
/*фото инструктора в туре*/
.hike_instructors .items a img
{
	margin-right: 10px;
	border-radius:99px;
}
.booking .form
 {
	 border-bottom: none;
	   margin-top: 0px;
 }
 footer .gift_cert_link button
{
    color: var(--text_color);
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;

    display: flex;

    width: 300px;
    max-width: 100%;
    height: 70px;

    text-decoration: none;

    border-radius: 100px;
    background: #fff;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}
/*Всплывашка подарочного сертификата*/
#popups_gift
{
    width: 1180px;
    padding: 80px 60px 60px;
}


#popups_gift .col
{
    width: calc(50% - 30px);
}

#popups_gift .col + .col
{
    margin-left: auto;
}


#popups_gift .modal_title
{
    font-size: 60px;
    line-height: 73px;

    text-align: right;
}


#popups_gift .modal_desc
{
    margin-top: 20px;

    text-align: right;
}


#popups_gift .directions
{
    position: relative;
    z-index: 3;

    margin-top: 55px;
    margin-bottom: 0;
}


#popups_gift .directions .row > *:nth-child(1)
{
    margin-top: 120px;
}

#popups_gift .directions .row > *:nth-child(2)
{
    margin-top: 80px;
}

#popups_gift .directions .row > *:nth-child(3)
{
    margin-top: 40px;
}


#popups_gift .directions .item .thumb
{
    margin: 0;
}


#popups_gift .directions .circles
{
    position: absolute;
    z-index: -1;
    top: -40px;
    right: 0;
    bottom: 0;
    left: 0;

    width: 228px;
    height: 228px;
    margin: auto;

    border: 1px solid #ff6b00;
    border-radius: 50%;
}

#popups_gift .directions .circles:before,
#popups_gift .directions .circles:after
{
    position: absolute;
    top: 50%;
    left: 50%;

    display: block;

    width: 296px;
    height: 296px;

    content: '';
    transform: translate(-50%, -50%);

    border: 1px solid rgba(255, 107, 0, .6);
    border-radius: inherit;
}

#popups_gift .directions .circles:after
{
    width: 350px;
    height: 350px;

    border: 1px solid rgba(255, 107, 0, .2);
}

#popups_gift .back_btn
{
    margin-bottom: 37px;
}

#popups_gift .back_btn .btn
{
    color: #ff6b00;
    font-weight: 500;
    line-height: 19px;

    display: flex;

    height: auto;
    padding: 0;

    border: none;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

#popups_gift .back_btn .icon
{
    display: block;

    width: 41px;
    height: 12px;
    margin-right: 16px;
}
#pick_up_modal .modal_title.thank
{
	font-size: 60px;
	line-height: 73px;
	text-align: center;

}
#pick_up_modal .modal_desc.thank
{
	margin-top: 20px;
	text-align: center;
}
#popups_gift .modal_title.thank
{
	font-size: 60px;
	line-height: 73px;
	text-align: center;

}
#popups_gift .modal_desc.thank
{
	margin-top: 20px;
	text-align: center;
}
#popups_gift .form2
{
    display: none;
}
/*Вывод занчка ? в фильтре сложность на главной */
.search_form .line .icon_home
{
	top: -11px;
}

.search_form .line .tooltip .item
{
    display: flex;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}
.search_form .line .item + .item
{
	margin-top: 20px;
padding-top: 20px;
border-top: 1px solid rgba(0, 0, 0, .12);
}

.search_form .line .tooltip .item + .item
{
    margin-top: 16px;
    padding-top: 15px;
}


.search_form .line .tooltip .circles
{
    display: flex;

    padding: 5px 0;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.search_form .line .tooltip .circle
{
    display: block;

    width: 10px;
    height: 10px;

    border: 2px solid #ff6b00;
    border-radius: 50%;
}

.search_form .line .tooltip .circle.active
{
    background: #ff6b00;
}

.search_form .line .tooltip .circle + .circle
{
    margin-left: 2px;
}


.search_form .line .tooltip .desc
{
    width: calc(100% - 70px);
    margin-left: auto;
	color: var(--text_color);
font: var(--font_size) var(--font_family);
margin-top: 0px;
text-align: left;
}
.search_form .line .tooltip:hover .text
{
bottom: auto;
}
/*end вывод ?*/
/*Вывод занчка ? в фильтре сложность на туре */
.service_head .params .icon_tur
{
	color: #ff6b00;
display: flex;
width: 30px;
height: 30px;
margin-right: 12px;
justify-content: center;
align-items: center;
align-content: center;
flex-wrap: wrap;
top: -45px;
left: 78px;
}
.icon_tur
{
	top: -11px;
}

.params .tooltip .item
{
    display: flex;

    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}
.params .item + .item
{
	margin-top: 20px;
padding-top: 20px;
border-top: 1px solid rgba(0, 0, 0, .12);
}

.params .tooltip .item + .item
{
    margin-top: 16px;
    padding-top: 15px;
}


.params .tooltip .circles
{
    display: flex;

    padding: 5px 0;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.params .tooltip .circle
{
    display: block;

    width: 10px;
    height: 10px;

    border: 2px solid #ff6b00;
    border-radius: 50%;
}

.params .tooltip .circle.active
{
    background: #ff6b00;
}

.params .tooltip .circle + .circle
{
    margin-left: 2px;
}


.params .tooltip .desc
{
    width: calc(100% - 70px);
    margin-left: auto;
	color: var(--text_color);
font: var(--font_size) var(--font_family);
margin-top: 0px;
text-align: left;
}
.params .tooltip:hover .text
{
bottom: auto;
}
.tooltip_tur
{
position: inherit;
display: inline-block;
vertical-align: middle;
}
/*end вывод ?*/
/*Всплывашка вопрос по туру*/
#problem_tur
{
    width: 1180px;
    padding: 80px 60px 60px;
}


#problem_tur .col
{
    width: calc(50% - 30px);
}

#problem_tur .col + .col
{
    margin-left: auto;
}


#problem_tur .modal_title
{
    font-size: 60px;
    line-height: 73px;

    text-align: right;
}


#problem_tur .modal_desc
{
    margin-top: 20px;

    text-align: right;
}


#problem_tur .directions
{
    position: relative;
    z-index: 3;

    margin-top: 55px;
    margin-bottom: 0;
}


#problem_tur .directions .row > *:nth-child(1)
{
    margin-top: 120px;
}

#problem_tur .directions .row > *:nth-child(2)
{
    margin-top: 80px;
}

#problem_tur .directions .row > *:nth-child(3)
{
    margin-top: 40px;
}


#problem_tur .directions .item .thumb
{
    margin: 0;
}


#problem_tur .directions .circles
{
    position: absolute;
    z-index: -1;
    top: -40px;
    right: 0;
    bottom: 0;
    left: 0;

    width: 228px;
    height: 228px;
    margin: auto;

    border: 1px solid #ff6b00;
    border-radius: 50%;
}

#problem_tur .directions .circles:before,
#problem_tur .directions .circles:after
{
    position: absolute;
    top: 50%;
    left: 50%;

    display: block;

    width: 296px;
    height: 296px;

    content: '';
    transform: translate(-50%, -50%);

    border: 1px solid rgba(255, 107, 0, .6);
    border-radius: inherit;
}

#problem_tur .directions .circles:after
{
    width: 350px;
    height: 350px;

    border: 1px solid rgba(255, 107, 0, .2);
}

#problem_tur .back_btn
{
    margin-bottom: 37px;
}

#problem_tur .back_btn .btn
{
    color: #ff6b00;
    font-weight: 500;
    line-height: 19px;

    display: flex;

    height: auto;
    padding: 0;

    border: none;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

#problem_tur .back_btn .icon
{
    display: block;

    width: 41px;
    height: 12px;
    margin-right: 16px;
}

#problem_tur .modal_title.thank
{
	font-size: 60px;
	line-height: 73px;
	text-align: center;

}
#problem_tur .modal_desc.thank
{
	margin-top: 20px;
	text-align: center;
}
#problem_tur .form2
{
    display: none;
}
aside .filter .reset_btn{
	display: inline-block;
	text-align: center;
}
}
/*end*/