.preloader {
    display: flex;
    position: fixed;
    z-index: 6000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: var(--light-background);
    transition: opacity .3s var(--default-transition-function) .2s
}

.preloader.animate-out .preloader_logo,.preloader.animate-out .preloader_percent,.preloader.need-animation .preloader_logo,.preloader.need-animation .preloader_percent {
    transform: translate3d(0,10px,0);
    opacity: 0
}

.preloader.animate-out .preloader__bar,.preloader.need-animation .preloader_bar {
    opacity: 0
}

.preloader.animate-out {
    opacity: 0;
    pointer-events: none
}

.preloader_inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%
}

.preloader_bar,.preloader_bar-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 1px
}

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

.preloader_logo {
    transition: opacity .1s 0.1s,transform .1s 0.1s;
    transition-timing-function: var(--default-transition-function)
}

.preloader_logo svg {
    width: 100%;
    height: 100%;
    color: var(--primary-color);
    transition: transform .3s;
    transition-timing-function: var(--default-bezier)
}

.preloader_percent {
    font-size: 15px;
    line-height: 125%;
    text-transform: uppercase;
    color: var(--primary-color);
    margin-top: 28px;
    overflow: hidden;
    width: 42px;
    transition: opacity .1s 0.1s,transform .1s 0.1s;
    transition-timing-function: var(--default-transition-function);
    display: none;
}

.preloader_numbers {
    width: auto;
    display: flex;
    animation: .6s steps(100) .4s alternate forwards countNumber
}

.preloader_number {
    text-align: center;
    flex: 0 0 42px
}

.preloader_bar {
    width: 100%;
    background-color: var(--black-bg-opacity-10);
    transition: opacity .1s var(--default-transition-function);
    transition-delay: 0.1s
}

.preloader_bar-progress {
    width: 0;
    background-color: var(--black-bg-opacity-50);
    animation: .6s linear .4s forwards preloader-bar
}

@keyframes preloader-bar {
    from {
        width: 0
    }

    to {
        width: 100%
    }
}

@keyframes countNumber {
    0% {
        margin-left: 0
    }

    100% {
        margin-left: -4200px
    }
}

@media (min-width: 768px) {
    .preloader__logo {
        height:72px;
        width: 282px
    }
}

@media (min-width: 1024px) {
    .preloader {
        padding:135px 165px
    }
}

@media (min-width: 768px) and (max-width:1023px) {
    .preloader {
        padding:137px var(--grid-spacer)
    }
}

@media (max-width: 767px) {
    .preloader {
        padding:130px var(--grid-spacer)
    }

    .preloader_logo {
        width: 150px;
        height: 45px;
    }
}

:root {
    --max-row-width: 1680px;
    --body-font-size: 15px;
    --body-line-height: 1.4;
    --font: "dubinin-sans",system,-apple-system,BlinkMacSystemFont,'Segoe UI','Segoe WP',Roboto Flex,Ubuntu,Oxygen,Cantarell,'Fira Sans','Helvetica Neue',Helvetica,'Lucida Grande','Droid Sans',Tahoma,'Microsoft Sans Serif',sans-serif;
    --t: transparent;
    --primary-color: #1d1d1f;
    --grey-font: #5b5856;
    --pozy: #00AAAD;
    --main-background: #f8604a;
    --light-background: #e6e0de;
    --dark-background: #dfdcd7;
    --default-transition-function: ease-in-out;
    --default-transition: all 0.4s var(--default-transition-function);
    --default-transition-function: ease-in-out;
    --default-bezier: cubic-bezier(0.25,0.1,0.25,1);
    --header-timing-function: cubic-bezier(.65,0,.25,1);
    --light-color-opacity-50: rgba(255, 255, 255, .5);
    --light-color-opacity-40: rgba(255, 255, 255, .4);
    --light-color-opacity-30: rgba(255, 255, 255, .3);
    --black-bg-opacity-05: rgba(0,0,0,.05);
    --black-bg-opacity-10: rgba(0,0,0,.10);
    --black-bg-opacity-20: rgba(0,0,0,.20);
    --black-bg-opacity-50: rgba(0, 0, 0, .5);
    --black-bg-opacity-80: rgba(0,0,0,.8);
    --grid-gap: 1px;
    --grid-indent: 0px;
    --grid-spacer: 60px;
    --grid-spacer-and-indent: calc(var(--grid-indent) + var(--grid-spacer));
    --grid-columns-number: 1;
    --grid-column: calc((var(--vw, 1vw)*100 - var(--grid-spacer-and-indent)*2 - (var(--grid-columns-number) - 1)*var(--grid-gap))/var(--grid-columns-number));
    --grid-column1: var(--grid-column);
    --grid-column2: calc((var(--grid-column) * 2) + var(--grid-gap));
    --grid-column3: calc((var(--grid-column) * 3) + (var(--grid-gap) * 2));
    --grid-column4: calc((var(--grid-column) * 4) + (var(--grid-gap) * 3));
    --grid-column5: calc((var(--grid-column) * 5) + (var(--grid-gap) * 4));
    --grid-column6: calc((var(--grid-column) * 6) + (var(--grid-gap) * 5));
    --grid-column7: calc((var(--grid-column) * 7) + (var(--grid-gap) * 6));
    --grid-column8: calc((var(--grid-column) * 8) + (var(--grid-gap) * 7));
    --grid-column9: calc((var(--grid-column) * 9) + (var(--grid-gap) * 8));
    --grid-column10: calc((var(--grid-column) * 10) + (var(--grid-gap) * 9));
    --grid-column11: calc((var(--grid-column) * 11) + (var(--grid-gap) * 10));
    --grid-column12: calc((var(--grid-column) * 12) + (var(--grid-gap) * 11));
    --grid-column13: calc((var(--grid-column) * 13) + (var(--grid-gap) * 12));
    --grid-column14: calc((var(--grid-column) * 14) + (var(--grid-gap) * 13));
    --grid-column15: calc((var(--grid-column) * 15) + (var(--grid-gap) * 14));
    --dividing-line-header: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 100%);
    --dividing-line-header-bottom: linear-gradient(to right, rgba(157, 147, 144, 0) 0%, rgba(157, 147, 144, 1) 50%, rgba(255, 255, 255, 0) 100%)
}

@media (max-width: 767px) {
    :root {
        --grid-spacer:20px;
        --grid-gap: 8px;
        --grid-columns-number: 10;
        --grid-indent: 0px;
        --height-slider: 320px;
        --height-slider-home: 300px
    }
}

@media (min-width: 768px) and (max-width:1023px) {
    :root {
        --grid-gap:18px;
        --grid-spacer: 30px;
        --grid-columns-number: 10;
        --grid-indent: 0px;
        --height-slider: 375px;
        --height-slider-home: 440px
    }
}

@media (min-width: 1024px) and (max-width:1299px) {
    :root {
        --grid-gap:28px;
        --grid-spacer: 60px;
        --grid-columns-number: 15;
        --grid-indent: 0px;
        --height-slider: 375px;
        --height-slider-home: 600px
    }
}

@media (min-width: 1300px) and (max-width:1599px) {
    :root {
        --grid-gap:28px;
        --grid-spacer: 60px;
        --grid-columns-number: 15;
        --grid-indent: 0px;
        --height-slider: 500px;
        --height-slider-home: 640px
    }
}

@media (min-width: 1600px) and (max-width:1799px) {
    :root {
        --grid-gap:28px;
        --grid-spacer: 100px;
        --grid-columns-number: 15;
        --grid-indent: 0px;
        --height-slider: 500px;
        --height-slider-home: 680px
    }
}

@media (min-width: 1800px) and (max-width:1920px) {
    :root {
        --grid-gap:28px;
        --grid-spacer: 100px;
        --grid-columns-number: 15;
        --grid-indent: 0px;
        --height-slider: 500px;
        --height-slider-home: 700px
    }
}

@media (min-width: 1921px) {
    :root {
        --grid-gap:28px;
        --grid-spacer: 150px;
        --grid-columns-number: 15;
        --grid-indent: 0px;
        --height-slider: 500px;
        --height-slider-home: 700px
    }
}

.button,a {
    text-decoration: none
}

a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block
}

body {
    line-height: 1
}

ol,ul {
    list-style: none
}

blockquote,q {
    quotes: none
}

blockquote:after,blockquote:before,q:after,q:before {
    content: "";
    content: none
}

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

* {
    box-sizing: border-box;
    outline: 0
}

img {
    max-width: 100%
}

a {
    color: inherit;
    -webkit-tap-highlight-color: var(--t);
}




button, input, textarea, select {
  font-family: inherit;
  font-size: 16px;
  border: none;
  outline: none;
}

input {
  width: 100%;
  padding: 1rem 1rem;
  border: 0;
  border-radius: 0;
  background-color: 0;
}




.user_select {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}


.button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    display: inline-block;
    font-family: inherit;
    font-style: normal;
    font-weight: 500;
    margin: 0;
    padding: 0;
    text-align: center;
    text-decoration: none;
    transition: var(--default-transition);
    white-space: nowrap;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.button._icon {
    align-items: center;
    display: flex;
    flex-direction: row;
}


.parallax-container-block {
    position: relative;
    overflow: hidden;
    display: flex;
    width: 100%;
    height: calc((var(--grid-column7) + var(--grid-spacer))* .71816)
}

.parallax-container-position {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.parallax-container-hidden,.ransom-parallax-container-hidden {
    transition: transform 1.85s cubic-bezier(.215,.61,.355,1)
}

.parallax-image {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    object-position: bottom
}

@media (min-width: 1600px) {
    .parallax-container-block {
        height:calc((var(--grid-column8) + var(--grid-spacer))* .71816);
        max-height: 516px
    }
}

@media (min-width: 1024px) and (max-width:1599px) {
    .parallax-container-block {
        height:calc((var(--grid-column7) + var(--grid-spacer))* .71816);
        max-height: 600px;
    }
}

@media (min-width: 768px) and (max-width:1023px) {
    .parallax-container-block {
        height:calc((var(--grid-column6) + var(--grid-spacer))*1.21856);
        max-height: 600px
    }
}

@media (max-width: 767px) {
    .parallax-container-block {
        height:calc((var(--grid-column6) + var(--grid-spacer))*1.21856);
        max-height: 500px
    }
}

@media (min-width: 900px) {
    .widget_booking {
        height:48px;
        inset: auto;
        z-index: 1;
        min-width: 802px
    }
}

@media (max-width: 899px) {
    .widget_booking {
        height:176px;
        inset: auto;
        z-index: 1
    }
}

body,button,form,input {
    font-family: var(--font)
}

html {
    overflow-x: clip;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overscroll-behavior: none
}

body {
    font-size: var(--body-font-size);
    line-height: var(--body-line-height);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    letter-spacing: -.2px;
    -webkit-tap-highlight-color: transparent
}

h1,h2,h3,h4,h5,h6 {
    font-family: var(--font);
    font-size: var(--h-size);
    font-style: normal;
    font-weight: bold;
    text-transform: uppercase;
}

h1,h6 {
    line-height: 130%;
}

h2 {
    line-height: 135%
}

h3,h4 {
    line-height: 140%
}

h5 {
    line-height: 130%
}

.line_bg {
    border-bottom: .5px solid var(--text-and-border-color-by-theme);
    width: 100%;
    margin-top: -1px
}

.layout {
    --layout-bg-by-theme: var(--light-background);
    --text-and-border-color-by-theme: var(--primary-color);
    --button-big-bg: var(--primary-color);
    background: var(--layout-bg-by-theme);
    color: var(--text-and-border-color-by-theme);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 100vh;
    transition: background-color .5s var(--default-bezier)
}

.grid-block {
    grid-gap: var(--grid-gap);
    display: grid;
    grid-template-columns: repeat(var(--grid-columns-number),var(--grid-column))
}

.name_block {
    display: flex;
    align-items: center;
    width: 100%
}

div.name_block>span:first-child {
    display: flex;
    position: relative;
    margin-right: 8px;
    color: #f8604a;
}

div.name_block>span:last-child {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.margin_top_10 {
    margin-top: 10px
}

.margin_top_20 {
    margin-top: 20px
}

.margin_top_30 {
    margin-top: 30px
}

.margin_top_40 {
    margin-top: 40px
}

.margin_top_50 {
    margin-top: 50px
}

.margin_top_60 {
    margin-top: 60px
}

.margin_top_70 {
    margin-top: 70px
}

.margin_top_80 {
    margin-top: 80px
}

.margin_top_90 {
    margin-top: 90px
}

.margin_top_100 {
    margin-top: 100px
}

.index-h2 {
    text-transform: inherit;
    font-size: 32px;
    max-width: 700px
}

@media (max-width: 767px) {
    h1 {
        --h-size: 22px;
    }

    .index-block {
        padding-bottom: 50px;
        padding-top: 40px
    }

    .index-h2 {
        font-size: 24px
    }
}

@media (min-width: 1024px) {
    .index-block {
        padding-bottom: 90px;
        padding-top: 80px;
    }
}

@media (min-width: 768px) and (max-width:1023px) {
    h1 {
        --h-size: 38px;
    }

    .index-block {
        padding-bottom: 70px;
        padding-top: 60px
    }
}

@media (min-width: 1024px) and (max-width:1599px) {
    h1 {
        --h-size: 48px;
    }

    .index-block {
        padding-bottom: 80px;
    }
}

@media (min-width: 1600px) {
    h1 {
        --h-size: 56px;
    }
}

@media (max-width: 324px) {
    h1 {
        --h-size:30px
    }
}

@keyframes blink {
    50% {
        opacity: .15
    }
}

@keyframes flip {
    0%,80% {
        transform: rotateY(360deg)
    }
}

.header {
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 400;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.header_container {
    position: relative;
    z-index: 4650
}

.header .header_container {
    pointer-events: auto
}

.header._transparent .header_inner {background-color: transparent;}

.header_inner {
    position: relative;
    transition: background-color .5s var(--header-timing-function),transform .5s var(--header-timing-function);
    transform: translateY(0);
    background-color: var(--light-background);
}

.header_inner::before {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    background: var(--t);
    content: "";
    transition: background .5s var(--header-timing-function);
}

@media (max-width: 767px) {
.header_inner::before {
    border-bottom: .5px solid var(--black-bg-opacity-20);
}
}

.header .header_link,.header .header_logo {
    text-transform: uppercase;
    transition: color .5s var(--header-timing-function)
}

.header._transparent .header_inner::before {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    background: var(--dividing-line-header);
    content: ""
}

.header_wrap {
    align-items: center;
    display: flex;
    height: var(--header-height);
    justify-content: space-between;
    position: relative
}

.header_contacts-list,.header_logo,.header_nav-list {
    align-items: center;
    display: flex;
    height: 100%
}

.header_menu {
    align-items: center;
    display: flex;
    height: 100%;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: 5500;
    cursor: pointer
}

.header_contacts-list,.header_nav-list {
    -moz-column-gap: 32px;
    column-gap: 32px;
    display: flex;
    flex-direction: row
}

.header .header_link {
    line-height: 115%;
    color: var(--primary-color);
    padding: 4px 0
}

.header._transparent .header_link,.header._transparent .header_logo {
    color: #fff
}

.header .header_logo {
    color: var(--main-background)
}

.header._transparent .header_logo svg {
    color: #fff;
}


.header .header_logo svg {
    color: var(--primary-color);
    transition: color .5s var(--header-timing-function);
}




.header_logo a,.header_logo div {
    display: flex;
    cursor: pointer
}

.header._transparent .header_logo .header_link {
    pointer-events: auto;
    cursor: pointer
}

@media (min-width: 1024px) {
    .header_wrap {
        -moz-column-gap:var(--grid-gap);
        column-gap: var(--grid-gap)
    }

    .layout {
        --header-height: 76px
    }

    .header_nav-list {
        margin-left: 64px
    }

    .header_contacts-list {
        justify-content: flex-end
    }
}

@media (min-width: 768px) and (max-width:1023px) {
    .layout {
        --header-height:74px
    }
}

@media (max-width: 1140px) {
    .header_link-item.rules {
        display:none
    }
}

@media (max-width: 1023px) {
    .header_wrap {
        justify-content:space-between
    }

    .layout {
        --header-height: 50px
    }

    ._modal_call,.header_nav-list {
        display: none
    }

    .header .header_logo svg {
        width: 88px;
        height: 24px;
    }
}








.hamburger {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: space-between;
}
.hamburger._opened .hamburger_top, .hamburger._opened .hamburger_bottom {
  width: 32px;
}
.hamburger._opened .hamburger_top {
  transform: translate(0, 4px) rotate(45deg);
}
.hamburger._opened .hamburger_bottom {
  transform: translate(0, -6px) rotate(-45deg);
}
.hamburger_top, .hamburger_bottom {
  position: relative;
  width: 100%;
  height: 2px;
}
.hamburger_top:before, .hamburger_top:after, .hamburger_bottom:before, .hamburger_bottom:after {
  right: 0;
  top: 0;
  content: "";
  width: 100%;
  height: 2px;
  display: block;
  position: absolute;
  transition: background 0.5s var(--header-timing-function);
  background-color: var(--primary-color);
}

.header._transparent .hamburger_top:before, .header._transparent .hamburger_top:after, .header._transparent .hamburger_bottom:before, .header._transparent .hamburger_bottom:after {
    background-color: white;
}


.hamburger_top:before, .hamburger_bottom:before {
  transform-origin: left;
}
.hamburger_top:after, .hamburger_bottom:after {
  transform-origin: right;
  transform: scaleX(0);
}


@media (min-width: 768px) {
.hamburger {
    height: 12px;
    width: 50px;
}

.hamburger:hover .hamburger_top:after {
  transition: transform 0.35s cubic-bezier(0.215, 0.61, 0.355, 1) 0.35s;
  transform: scaleX(1);
}
.hamburger:hover .hamburger_top:before {
  transition: transform 0.35s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: scaleX(0);
}
.hamburger:hover .hamburger_bottom:after {
  transition: transform 0.35s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transform: scaleX(1);
}
.hamburger:hover .hamburger_bottom:before {
  transition: transform 0.35s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transform: scaleX(0);
}

}


@media (max-width: 767px) {
.hamburger {
    height: 11px;
    width: 36px;
}
}












.container {
    margin: 0 auto;
    max-width: var(--max-row-width);
}

.container_spacer {
    padding: 0 var(--grid-spacer)
}

.breadcrumbs_link,.breadcrumbs_list svg {
    color: var(--grey-font)
}

.breadcrumbs {
    margin: calc(var(--header-height) - calc(var(--header-height)/ 1.5)) 0 calc(var(--header-height) - calc(var(--header-height)/ 1.5)) 0;
    display: inline-block;
    width: 100%
}

.breadcrumbs_box {
    display: flex
}

.breadcrumbs_list {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 12px;
    font-size: 14px
}

.breadcrumbs_list svg {
    display: flex
}

.breadcrumbs_item span, .breadcrumbs_item_end span {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
}


.breadcrumbs+.index-block {
    padding-top: 0;
    margin-top: -20px
}

.breadcrumbs+.index-block .name_block {
    display: none
}

.button_more-plus-wrap:after,.button_more-plus-wrap:before {
    background: var(--text-and-border-color-by-theme);
    position: absolute;
    transition: transform .3s ease-out;
    content: ""
}

.button_more-plus-wrap {
    position: relative;
    height: 12px;
    width: 12px;
    margin-right: 15px
}

.button_text-plus-wrap {
    font-size: 17px
}

.button_more-plus-wrap:before {
    transform-origin: center;
    height: 2px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 100%
}

.button_more-plus-wrap:after {
    transform-origin: center;
    height: 100%;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    width: 2px
}

.hero-slider_item._out-next-act,.hero-slider_item._out-prev-act {
    transition-duration: 0s,1.2s;
    width: 0;
    z-index: 15;
    transform: translateZ(0)
}

.hero-slider-block {
    position: relative;
    height: 100vh;
    background-color: var(--black-bg-opacity-10);
}

.hero-slider {
    position: relative;
    height: 100vh
}

.hero-slider_parallax-container {
    height: 100vh;
    overflow: hidden
}

.hero-slider_parallax-container-inner {
    height: 100vh
}

.parallax-container_box {
    transition: transform 1.5s cubic-bezier(0, 0, 0, 1);
    transform-origin: center center
}

.hero-slider_list {
    width: 100%;
    position: relative;
    z-index: 15;
    overflow: hidden;
    height: 100vh;
    touch-action: pan-y;
    display: block
}

.hero-slider_item {
    position: absolute;
    display: block;
    height: 100vh;
    z-index: 5;
    overflow: hidden;
    transition: transform,width;
    transition-timing-function: var(--default-bezier)
}

.hero-slider_item._out-prev-act {
    right: 0
}

.hero-slider_item._out-prev-act .hero-slider_picture {
    right: 0;
    transform: translate3d(40%,0,0) scale3d(1.2,1.2,1)
}

.hero-slider_item._out-next-act {
    left: 0
}

.hero-slider_item._active {
    transform: translateZ(0);
    width: 100%;
    z-index: 10
}

.hero-slider_item._in-prev-act {
    -webkit-animation: hero-image-prev 1.2s var(--default-bezier) forwards;
    animation: hero-image-prev 1.2s var(--default-bezier) forwards
}

.hero-slider_picture {
    position: absolute;
    display: flex;
    width: 100vw;
    height: 100vh;
    transition: transform 1.2s var(--default-bezier);
    transform: scale3d(1.2,1.2,1)
}

.hero-slider_picture::before {
    content: "";
    position: absolute;
    z-index: 35;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: var(--black-bg-opacity-20);
    mix-blend-mode: multiply
}

.hero-slider_item._in-next-act .hero-slider_picture:before,.hero-slider_item._in-prev-act .hero-slider_picture:before {
    -webkit-animation: hero-black-out 1.2s var(--default-bezier) forwards;
    animation: hero-black-out 1.2s var(--default-bezier) forwards
}

.hero-slider_item._out-next-act .hero-slider_picture {
    left: 0;
    transform: translate3d(-40%,0,0) scale3d(1.2,1.2,1)
}

.hero-slider_item._in-next-act {
    -webkit-animation: hero-image-next 1.2s var(--default-bezier) forwards;
    animation: hero-image-next 1.2s var(--default-bezier) forwards
}

.hero-slider_item._active .hero-slider_picture {
    transform: scaleX(1)
}

.hero-slider_image {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.hero-slider_description,.hero-slider_link,.hero-slider_title {
    color: #fff;
    opacity: 0;
    transform: translate3d(0,10px,0);
    transition: opacity 1s,transform 1s;
    transition-timing-function: var(--default-bezier);
    max-width: 720px;
}

@media (max-width: 767px) {
.hero-slider_description,.hero-slider_link,.hero-slider_title {
    max-width: 320px;
}
}


._active .hero-slider_description,._active .hero-slider_link,._active .hero-slider_title {
    opacity: 1;
    transform: translate3d(0,0,0)
}

.hero-slider_title-inner {
    display: block;
    overflow: hidden
}

.animation-item._opacity {
    transition: opacity .45s var(--animation-delay) linear
}

.animation-item._scale {
    transition: transform 1.25s var(--animation-delay) cubic-bezier(.215,.61,.355,1)
}

.animation-item._hero-slider {
    transform-origin: center center;
    transition: opacity .45s linear,transform 1.85s cubic-bezier(.215,.61,.355,1)
}

._animation {
    --scale: 1.5
}

.hero-slider_content-wrap {
    bottom: 0;
    position: absolute;
    width: 100%;
    z-index: 25
}

.hero-slider_content {
    grid-row-gap: 0
}

.hero-slider_title-slider {
    grid-column: 1/11;
    position: relative
}

.hero-slider_title-slide {
    left: 0;
    position: absolute;
    pointer-events: none
}

.hero-slider_title-slide._active {
    pointer-events: auto
}

.hero-slider_link {
    margin-top: 40px
}

._hero-slider-text {
    font-size: 15px;
    max-width: 400px;
}

@media (max-width: 1140px) {
._hero-slider-text {
    font-size: 13px;
    max-width: 100%;
}
}

.hero-slider_link .button_more-plus-wrap:after,.hero-slider_link .button_more-plus-wrap:before {
    background: #fff
}

@keyframes hero-image-next {
    from {
        transform: translate3d(50%,0,0)
    }

    to {
        transform: translate3d(0,0,0)
    }
}

@keyframes hero-image-prev {
    from {
        transform: translate3d(-50%,0,0)
    }

    to {
        transform: translate3d(0,0,0)
    }
}

@keyframes hero-black-out {
    17%,from {
        background: var(--black-bg-opacity-80)
    }

    to {
        background: var(--black-bg-opacity-20)
    }
}

@keyframes hero-pagination-next-in {
    from {
        transform: translate3d(0,100%,0)
    }

    to {
        transform: translate3d(0,0,0)
    }
}

@keyframes hero-pagination-next-out {
    from {
        transform: translate3d(0,0,0)
    }

    to {
        transform: translate3d(0,-100%,0)
    }
}

@keyframes hero-pagination-prev-in {
    from {
        transform: translate3d(0,-100%,0)
    }

    to {
        transform: translate3d(0,0,0)
    }
}

@keyframes hero-pagination-prev-out {
    from {
        transform: translate3d(0,0,0)
    }

    to {
        transform: translate3d(0,100%,0)
    }
}

@media (min-width: 768px) {
    .hero-slider_title-slide {
        bottom:0;
        padding-bottom: 100px;
    }

    .hero-slider_description-wrap {
        margin-top: 60px;
        max-width: 540px;
    }
}

@media (min-width: 1300px) {
    .hero-slider_title-slide {
        padding-bottom: 100px;
    }
}

@media (max-width: 767px) {
    .hero-slider_title-slider {
        grid-row:2;
        margin-top: 20px
    }

    .hero-slider_title-slide {
        padding-bottom: 100px;
        bottom: 0
    }

    .hero-slider_description-wrap {
        margin-top: 30px
    }
}

@media (max-width: 324px) {
    .hero-slider_description-wrap {
        margin-top:20px
    }

    .hero-slider_title-slide {
        padding-bottom: 80px
    }
}

.link {
    font-family: var(--font);
    font-style: normal;
    font-weight: 500;
    color: var(--primary-color);
    position: relative;
    font-size: 14px;
    width: fit-content;
    display: flex;
    align-items: center;
    cursor: pointer
}

.header .current_link {
}

._animation-start {
    opacity: 0;
    transform: scale(var(--scale))
}

._animation {
    transform-origin: center center;
    transition: opacity .45s linear,transform 1.85s cubic-bezier(.215,.61,.355,1)
}

.block_description {
    opacity: 0;
    transform: translate3d(0,10px,0);
    transition: opacity .65s,transform .65s;
    transition-timing-function: var(--default-bezier)
}

.block_description_animation {
    opacity: 1;
    transform: translate3d(0,0,0)
}

.about-block {
    background: var(--light-background);
    overflow: hidden;
}

.about-block_wrap {
    display: grid
}

.about-block_description {
    line-height: 145%;
    color: var(--grey-font);
    font-size: 15px;
}

.index-block_image-wrapper {
    position: relative;
}

.about-years {
  will-change: transform;
  transition: transform 1.85s cubic-bezier(.215,.61,.355,1);
}

.price-block {display: flex;}

.price-block-box {width: auto;display: flex;align-items: center;justify-content: space-between;padding: 10px;gap: 26px;background-color: var(--black-bg-opacity-05);border-radius: 100px;}


@media (max-width: 767px) {
    .price-block {
        width: 100%;
    }
    
.price-block-box {
   width: 100%; 
}

  .price-block-btn{
       width: 100%;   
  }  
    
}



.price-block-num {
    font-size: 18px;
    font-weight: bold;
    margin-right: 16px;
    white-space: nowrap;
}

.price-block-btn {
    font-size: 16px;
    background-color: var(--main-background);
    color: #fff;
    padding: 12px 24px;
    border-radius: 100px;
    cursor: pointer;
    text-align: center;
    min-width: 150px;
}




@media (min-width: 1024px) and (max-width:1599px) {
    .about-block_wrap {
        gap:80px;
        grid-template-columns: repeat(2,1fr)
    }
}



@media (min-width: 1024px) and (max-width:1199px) {

    .about-years {
        position: absolute;
        bottom: 100px;
        right: 30px;
        z-index: 2;
        display: flex;
    }
}


@media (min-width: 1200px) and (max-width:1299px) {

    .about-years {
        position: absolute;
        bottom: 10px;
        right: 30px;
        z-index: 2;
        display: flex;
    }
}

@media (min-width: 1300px) and (max-width:1599px) {
    .about-years {
        position: absolute;
        bottom: -10px;
        right: 30px;
        z-index: 2;
        display: flex;
    }
}



@media (min-width: 1600px) {
    .about-block_wrap {
        gap:80px;
        grid-template-columns: repeat(2,1fr)
    }
    .about-years {
        position: absolute;
        bottom: -20px;
        right: 30px;
        z-index: 2;
        display: flex;
    }
}

@media (min-width: 768px) and (max-width:1023px) {
    .about-block_wrap {
        gap:60px;
        grid-template-columns: repeat(1,1fr)
    }
    .about-years {
        position: absolute;
        bottom: -20px;
        right: 30px;
        z-index: 2;
        display: flex;
    }
}

@media (max-width: 767px) {
    .about-block_wrap {
        grid-column-gap:var(--grid-gap);
        grid-row-gap: 30px;
        grid-template-columns: var(--grid-column10)
    }
    .about-years {
        position: absolute;
        bottom: -20px;
        right: 30px;
        z-index: 2;
        display: flex;
    }

        .about-years svg {
    width: 100px;
    height: 56px;
    }
}

.ts_btn,.ts_paging_btn {
    cursor: pointer;
    display: block
}

.catalog-block {
    background: var(--light-background)
}

.home-block .ts_paging_btn,.slide_item {
    background-color: var(--black-bg-opacity-10)
}

.catalog-block_grid,.catalog-block_wrap {
    display: grid
}

.catalog-block_description {
    line-height: 145%;
    color: var(--grey-font);
    font-size: 17px
}

.catalog-block_item_link {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
}

.catalog-block_item-home {
    position: relative;
    line-height: 150%;
    color: var(--text-and-border-color-by-theme);
}

.slider-home {
    position: relative;
    line-height: 0;
    z-index: 8
}

.slide_wrapper {
    position: relative;
    overflow: hidden;
    height: var(--height-slider)
}

.banner_item,.ts_paging {
    position: absolute;
    left: 0
}

.home-block .catalog-block_item-pic,.home-block .slide_wrapper {
    height: var(--height-slider-home)
}

.banner_item {
    top: 0;
    overflow: hidden
}

.slide_item {
    display: flex;
    white-space: nowrap;
    will-change: transform
}

.catalog-block_item-pic {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: var(--height-slider);
    transition: transform 1.85s cubic-bezier(.215,.61,.355,1);
    transform: scale(1)
}

.catalog-block_item-box:hover [aria-hidden=false] img {
    transform: scale(1.1)
}

.ts_paging {
    bottom: 24px;
    display: flex;
    height: 12px;
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    backdrop-filter: saturate(180%) blur(20px);
    background-color: rgba(22, 22, 23, 0.6);
    border-radius: 100px;
    width: auto;
    justify-content: center;
    align-items: center;
    left: 24px;
}

.ts_paging_btn {
    background-color: var(--light-color-opacity-50);
    border-radius: 50%;
    height: 6px;
    margin: 3px;
    transition: .4s;
    width: 6px
}

.ts_paging_active {
    background-color: #fff
}

.ts_btn {
    -webkit-touch-callout: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: 0 0;
    border: none;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: 0;
    margin: 0;
    padding: 0;
    position: relative;
    text-decoration: none;
    white-space: normal;
    height: 80px;
    width: 40px;
    color: var(--primary-color);
}

.home-block .ts_btn {
    height: 50px;
    width: 50px
}

.home-block .ts_paging {
    bottom: -20px
}

.home-block .ts_paging_btn {
    height: 10px;
    width: 10px
}

.home-block .ts_paging_active {
    background-color: var(--main-background);
    opacity: .7
}

.ts_control_btn {
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    top: 50%
}

.ts_button {
    position: absolute;
    transform: translateY(-50%);
    display: inline-flex;
    border-radius: 0;
    background-color: var(--light-background);
}

.ts_left {
    left: -18px
}

.ts_right {
    right: -18px
}

.home-block .ts_left {
    left: -25px
}

.home-block .ts_right {
    right: -25px
}

.catalog-block_item-home-top {
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 9;
    align-items: center;
    display: inline-flex;
    flex-wrap: wrap;
    gap: 8px
}

.catalog-block_item-home-top-item {
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    backdrop-filter: saturate(180%) blur(20px);
    background-color: rgba(22, 22, 23, 0.6);
    padding: 4px 12px;
    border-radius: 100px;
    font-size: 13px;
    color: #fff
}

.catalog-block_item-home-bottom {
    margin-top: 16px
}

.catalog-block_item-home-block {
    font-size: 18px;
    font-weight: 400;
    display: flex;
}

.catalog-block_item-home-block-svg {
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--text-and-border-color-by-theme);
    border: 1px solid var(--button-big-bg);
    padding: 10px 24px 10px 24px;
    cursor: pointer;
    border-radius: 100px;
}

@media (max-width: 767px) {
    .catalog-block_item-home-block-svg {
        width: 100%;
        padding: 12px 24px;
    }
}



.fast_booking .catalog-block_item-home-block-svg {
    padding: 15px 17px 15px 15px
}

.catalog-block_item-home-block-svg span {
    text-transform: uppercase;
    font-size: 16px;
    font-weight: bold;
}

.price_home_grid {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: var(--grid-gap)
}

.price_home_item {
    padding: 22px 15px;
    background: var(--light-color-opacity-30);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    font-size: 17px
}

.price_home_item_date span {
    font-size: 10px;
    text-transform: uppercase;
    display: block;
    margin-top: 4px;
    color: var(--grey-font)
}

.price_home_item_price {
    white-space: nowrap;
    color: var(--main-background)
}

.characteristic {
    gap: 32px;
    display: grid
}

.shop-product {
    width: 100%;
}

.shop-product-gap {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
        display: grid;
        position: relative;
        overflow: hidden;
}

@media (max-width: 767px) {
.shop-product-gap {
        grid-template-columns: repeat(1, 1fr);
        gap: 22px;
}
}



.shop-product-item-img {
    display: flex;
    background-color: hsl(0deg 0% 100% / 50%);
    position: relative;
    overflow: hidden;
}

.shop-product-image {
    border: none;
    -ms-interpolation-mode: bicubic;
    user-drag: none;
    -moz-user-select: none;
    -webkit-user-drag: none;
    outline: none;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    max-height: 100%;
    mix-blend-mode: darken;
}


.team_grid_item .shop-product-image  {
    transition: transform 2.85s cubic-bezier(.215,.61,.355,1);
    transform: scale(1.1);
}

.team_grid_item_tr .shop-product-image  {
    transform: scale(1);
}



.charact_box,.charact_svg {
    display: flex;
    display: flex
}

.charact_box {
    justify-content: flex-start;
    align-items: center;
    text-align: center;
    flex-direction: column;
    gap: 12px
}

.charact_svg {
    color: var(--main-background);
    width: 48px;
    height: 48px;
    justify-content: center;
    align-items: center
}

.characteristic_name {
    font-size: 12px;
    line-height: 150%;
    text-transform: uppercase;
    font-weight: 500
}

.fast_booking {
    display: inline-block
}

.wrn_home_item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    color: var(--grey-font);
    text-transform: uppercase;
    font-size: 14px;
    padding: 8px 0
}

.block_home_gap {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: var(--grid-gap)
}

.block_home_item_flex {
    display: flex
}

.block_home_item-image {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.block_home_item_flex_text {
    padding: 18px 0 0
}

@media (min-width: 1600px) {
    .catalog-block_grid {
        grid-template-columns: repeat(2,1fr);
        gap: 60px
    }

    .characteristic {
        grid-template-columns: repeat(8,1fr);
        gap: 50px
    }
}

@media (min-width: 1024px) and (max-width:1599px) {
    .catalog-block_grid {
        grid-template-columns: repeat(2,1fr);
        gap: 60px
    }

    .characteristic {
        grid-template-columns: repeat(7,1fr);
        gap: 40px
    }
}

@media (min-width: 768px) and (max-width:1023px) {
    .catalog-block_grid {
        grid-template-columns:repeat(2,1fr);
        gap: 60px
    }

    .price_home_grid {
        grid-template-columns: 100%
    }

    .fast_booking {
        display: none
    }

    .block_home_gap {
        grid-template-columns: repeat(2,1fr)
    }

    .characteristic {
        grid-template-columns: repeat(4,1fr)
    }
}

@media (max-width: 767px) {
    .catalog-block_grid {
        grid-template-columns:repeat(1,1fr);
        gap: 60px
    }

    .catalog-block_item-home-top {
        left: 0
    }

    .home-block .ts_left,.ts_left {
        left: 10px
    }

    .home-block .ts_right,.ts_right {
        right: 10px
    }

    .fast_booking,.ts_control_btn {
        display: none
    }

    .home-block .ts_paging {
        bottom: -15px
    }

    .slider-home {
        margin: 0 calc(-1* var(--grid-spacer))
    }

    .block_home_gap,.price_home_grid {
        grid-template-columns: 100%
    }

    .block_home_item+.block_home_item {
        margin-top: 30px
    }

    .characteristic {
        grid-template-columns: repeat(3,1fr)
    }

    .characteristic_name {
        font-size: 10px
    }

    .charact_svg {
        width: 42px;
        height: 42px
    }
}

.ransom_img_wrap {
    background-color: var(--black-bg-opacity-05)
}

.ransom_img {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: left 80% top 50%;
    background-repeat: no-repeat
}

.ransom_item_box {
    position: relative;
    z-index: 2
}

.ransom_item_box_grid {
    align-items: self-start;
    padding-top: 100px;
    display: flex;
    flex-wrap: wrap
}

.ransom_item_box_flex {
    line-height: 160%;
    color: #fff;
    max-width: 540px;
}

.ransom_info_flex {
    margin-top: 50px
}

.ransom_info_grid {
    display: grid;
    grid-template-columns: repeat(4,1fr)
}

.ransom_info_item {
    background-color: var(--black-bg-opacity-05);
}

.ransom_info_item_padding {
    padding: 28px 24px
}

.ransom_info_item_text {
    display: flex;
    align-items: flex-start
}

.ransom_info_item_one {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
    color: var(--black-bg-opacity-50);
}

.ransom_info_item_two {
    line-height: 160%;
    font-size: 14px;
}

@media (min-width: 1600px) {
    .ransom_img {
        min-height:720px
    }

    .ransom_item_box_flex {
        font-size: 18px;
        width: 50%;
    }

    .ransom_info_grid {
        gap: 60px
    }

    .ransom_info_item_text {
        gap: 18px
    }
}

@media (min-width: 1024px) and (max-width:1599px) {
    .ransom_img {
        min-height:620px
    }

    .ransom_info_item_text {
        gap: 16px
    }

    .ransom_item_box_flex {
        font-size: 18px;
        width: 50%
    }

    .ransom_info_grid {
        gap: 40px
    }
}

@media (min-width: 1024px) and (max-width:1200px) {
    .ransom_info_grid {
        gap:20px
    }
}

@media (min-width: 768px) and (max-width:1023px) {
    .ransom_img {
        min-height:480px
    }

    .ransom_item_box_flex {
        font-size: 18px;
        width: 70%
    }

    .ransom_item_box_grid {
        padding-top: 60px
    }

    .ransom_info_item_text {
        gap: 18px
    }

    .ransom_info_grid {
        gap: 40px;
        grid-template-columns: repeat(2,1fr)
    }
}

@media (max-width: 768px) {
    .ransom_img {
        min-height:500px;
        background-position: left 50% top 50%;
    }

    .ransom_item_box_grid {
        padding-top: calc(var(--grid-spacer) + 10px);
        flex-wrap: wrap;
        align-items: flex-start;
        padding-left: 10px;
    }

    .ransom_info_item_text {
        gap: 10px;
    }

    .ransom_item_box_flex {
        font-size: 15px;
        width: 80%;
        max-width: 240px;
    }

    .ransom_info_grid {
        gap: 20px;
        grid-template-columns: repeat(1,1fr)
    }

    .ransom_info_item_padding {
        padding: 20px
    }
}

.gallery_grid {
    display: grid
}

.gallery_grid_item {
    background-color: var(--black-bg-opacity-10)
}

.gallery_grid_item .gallery_img {
    transition: transform 2.85s cubic-bezier(.215,.61,.355,1);
    transform: scale(1.1)
}

.gallery_grid_item:hover .gallery_img,.gallery_grid_item_tr .gallery_img {
    transform: scale(1)
}

.gallery_item_box {
    display: flex;
    overflow: hidden
}

.gallery_item_box_img {
    display: flex
}

.gallery_img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

@media (max-width: 768px) {
    .gallery_grid {
        grid-template-columns:repeat(2,1fr);
        gap: 10px
    }
}

@media (min-width: 768px) and (max-width:1023px) {
    .gallery_grid {
        grid-template-columns:repeat(2,1fr);
        gap: 16px
    }
}

@media (min-width: 1024px) and (max-width:1599px) {
    .gallery_grid {
        grid-template-columns:repeat(4,1fr);
        gap: 16px
    }
}

@media (min-width: 1600px) {
    .gallery_grid {
        grid-template-columns:repeat(4,1fr);
        gap: 16px
    }
}

.stories_blackout {
    cursor: pointer;
    height: 100%;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    background: rgba(0,0,0,.8);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    backdrop-filter: saturate(180%) blur(20px)
}

.stories_list_frame {
    padding-top: 40px
}

.stories_list_box {
    flex-direction: row;
    padding: 0;
    list-style: none;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    display: flex;
    align-items: center;
    gap: 28px
}

.stories_list_box::-webkit-scrollbar {
    display: none
}

.stories_list {
    display: flex;
    position: relative;
    width: 100%;
    min-width: auto;
    max-width: none;
    flex-direction: column;
    cursor: pointer
}

.stories_details,.stories_viewer {
    justify-content: center;
    width: 100%;
    display: flex
}

.stories_slide_wrapper {
    position: relative;
    width: 100%;
    height: 196px;
    border: 2px solid #fc0;
    border-radius: 15px;
    overflow: hidden
}

.stories_format_rectangle {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    padding: 2px
}

.stories_slide_image {
    width: 100%;
    height: 100%;
    position: relative;
    opacity: 1;
    transition: opacity .3s ease-in-out;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
    line-height: 0;
    border-radius: 12px;
    overflow: hidden
}

.stories_slide_bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background-size: cover;
    background-position: center;
    height: 100%;
    width: 100%
}

.stories_slide_image_thumbnail {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.stories_details {
    position: fixed;
    z-index: 1001;
    right: 50%;
    bottom: 50%;
    align-items: center;
    transform: translate(50%,50%);
    height: 100%
}

.stories_viewer {
    align-items: center;
    height: 100%
}

.stories_pager {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100px;
    background-image: linear-gradient(0deg,transparent,rgba(34,34,34,.2));
    z-index: 2;
    border-radius: 3px 3px 0 0;
    overflow: hidden
}

.stories_close {
    border: 0;
    padding: 0;
    background: 0 0;
    position: absolute;
    top: 25px;
    right: 10px;
    z-index: 1140;
    pointer-events: all;
    cursor: pointer;
    outline: 0;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center
}

.stories_pager_ticks {
    height: 3px;
    display: flex;
    margin: 8px 5px
}

.stories_pager_tick {
    background-color: rgba(255,255,255,.4);
    width: 100%;
    overflow: hidden;
    position: relative;
    margin: 0 2px;
    border-radius: 3px
}

.stories_pager_tick-progress {
    width: 100%;
    height: 3px
}

.stories_pager_tick_progress_loader {
    height: 3px;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(255,255,255,.9);
    width: 0%
}

.active_stories .stories_pager_tick_progress_loader {
    animation: 7s linear forwards progressAnimation;
    will-change: animation
}

.viewed_stories .stories_pager_tick_progress_loader {
    width: 100%
}

@keyframes progressAnimation {
    0% {
        width: 0%
    }

    100% {
        width: 100%
    }
}

.stories_viewer_box {
    position: relative;
    height: calc(100% - 30px);
    max-height: calc(100% - 30px);
    width: calc(100% - 30px);
    max-width: calc(100% - 30px);
    flex-shrink: 0;
    line-height: 0;
    display: flex;
    justify-content: center
}

.stories_viewer_box_flex {
    width: auto;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center
}

.stories_viewer_item {
    height: 100%;
    width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center
}

.stories_slide_image_orig {
    object-fit: contain;
    object-position: center;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    border-radius: 3px;
    overflow: hidden
}

.stories_button {
    position: absolute;
    transform: translateY(-50%);
    display: inline-flex
}

.navigation_stories {
    position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    top: 50%
}

.stories_left {
    left: 15px
}

.stories_right {
    right: 15px
}

.s_nav_btn {
    webkit-touch-callout: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: var(--black-bg-opacity-20);
    border: none;
    color: inherit;
    cursor: pointer;
    display: block;
    font-size: inherit;
    font-weight: inherit;
    line-height: 0;
    margin: 0;
    padding: 0;
    position: relative;
    text-decoration: none;
    white-space: normal;
    height: 60px;
    width: 60px;
    border-radius: 50%;
    overflow: hidden
}

.s_nav_btn svg {
    color: #fff
}

@media (max-width: 768px) {
    .stories_viewer_box {
        height:100%;
        max-height: 100%;
        width: 100%;
        max-width: 100%
    }

    .s_nav_btn,.stories_button {
        height: 100vh
    }

    .s_nav_btn {
        border-radius: 0;
        background: var(--t);
        opacity: 0
    }
}

.services-block_top {
    font-family: var(--font);
    font-size: 26px;
    text-transform: uppercase
}

.services-block_bottom {
    margin-top: 15px;
    max-width: 400px;
    line-height: 145%;
    color: var(--grey-font)
}

@media (min-width: 768px) {
    .services-block_box {
        gap:80px;
        display: grid;
        grid-template-columns: repeat(3,1fr)
    }
}

@media (max-width: 767px) {
    .services-block_box {
        gap:40px;
        display: grid;
        overflow: hidden
    }
}

.form_footer_button,.form_footer_button_line {
    display: flex;
    white-space: nowrap;
    height: 48px;
    color: #fff
}

.form-block_flex {
    background-size: cover;
    background-position: center;
    display: flex;
    width: 100%;
    flex-direction: column;
    position: relative;
    padding: 120px 60px
}

.form_head {
    text-transform: uppercase;
    font-size: 36px;
    color: #fff;
    font-family: var(--font)
}

.form_item {
    line-height: 140%;
    max-width: 268px;
    margin-top: 15px;
    color: #fff
}

.form_footer {
    margin-top: 32px
}

.form_footer_gap {
    display: flex;
    align-items: center;
    gap: 16px
}

.form_footer_button {
    padding: 14px 20px;
    background: #f8604a;
    border: 1px solid var(--t);
    align-items: center
}

.form_footer_button_line {
    border: 1px solid #fff;
    background: var(--t);
    padding: 0 20px;
    align-items: center
}

@media (max-width: 768px) {
    .form_footer_gap {
        flex-direction:column;
        align-items: flex-start
    }

    .form-block_flex {
        padding: 60px var(--grid-spacer);
        background-position: 42% 50%
    }

    .form_head {
        font-size: 28px
    }
}

@media (min-width: 768px) and (max-width:1023px) {
    .form_footer_gap {
        flex-direction:column;
        align-items: flex-start
    }

    .form-block_flex {
        padding: 120px 60px
    }
}

.footer_top_item_left_block,.footer_top_item_li_link {
    font-size: 14px;
    text-transform: uppercase;
    display: flex;
    color: #fff;
    line-height: 145%
}

.layout__footer {
    background: var(--primary-color);
    margin-top: auto;
}

.footer_top_box {
    padding: 42px 0
}

.footer_top_item {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.footer_top_item_left {
    gap: 20px;
    display: flex
}

.footer_top_item_left_block {
    align-items: center;
    font-weight: 500
}

.footer_top_item_right,.footer_top_item_right_li {
    display: flex
}

.footer_top_item_right_ul {
    gap: 10px;
    display: flex;
    align-items: center
}

.footer_top_item_li_link {
    gap: 8px
}

.footer_top_item_li_link svg {
    line-height: 0;
    color: var(--light-color-opacity-50);
    min-width: 20px;
    min-height: 22px;
    animation: 3s 6s infinite forwards flip
}

.footer_bottom_box {
    padding: 34px 0;
    border-top: 1px solid var(--light-color-opacity-30);
}

.footer_bottom_text {
    color: #fff;
    font-size: 12px;
    line-height: 145%;
    opacity: .5
}

@media (max-width: 767px) {
    .footer_bottom_box,.footer_top_box {
        padding:32px 0
    }

    .footer_bottom_text {
        font-size: 11px
    }

    .footer_top_item {
        flex-direction: column;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 26px
    }

    .footer_top_item_left_block,.footer_top_item_li_link,.footer_top_item_right_sep {
        font-size: 12px
    }

    .footer_top_item_left {
        gap: 12px
    }

    .footer_top_item_right_ul {
        gap: 6px
    }
}


.burger_menu {
    --drop-menu-timing: 0.3s;
    background: var(--primary-color);
    height: 100vh;
    pointer-events: none;
    position: fixed;
    top: -100vh;
    transition: transform;
    transition-duration: var(--drop-menu-timing);
    transition-timing-function: var(--header-timing-function);
    width: 100vw;
    z-index: 4700
}

.burger_menu_flex,.top_menu {
    position: relative
}

.burger_menu.open {
    pointer-events: auto;
    transform: translateY(100%);
    z-index: 5000
}

.burger_menu_flex {
    width: 100%;
    height: var(--header-height);
    display: flex;
    justify-content: space-between;
    align-items: center
}

.burger_close,.burger_logo {
    align-items: center;
    height: 100%;
    display: flex
}

.top_menu::before {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    background: var(--dividing-line-header);
    content: ""
}

.burger_logo a {
    display: flex
}

.burger_link,.burger_logo svg {
    color: #fff
}

.burger_close {
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: 5500;
    cursor: pointer;
    width: 48px;
    justify-content: center
}

.burger_btn {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.burger {
    position: relative;
    width: 36px;
    height: 36px
}

.burger:after,.burger:before {
    background-color: #fff;
    content: "";
    display: block;
    height: 2px;
    position: absolute;
    right: 0;
    top: 0;
    transition: background .5s var(--header-timing-function);
    width: 100%;
    transform: translateY(4px) rotate(45deg)
}

.burger:after {
    transform: translateY(4px) rotate(135deg)
}

.contacts_content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
    margin-top: 68px
}

.contacts_content_item+.contacts_content_item {
    margin-top: 30px
}

.contacts_content_text {
    font-size: 18px;
    opacity: 0;
    transform: translateY(20px);
    cursor: pointer;
    color: #fff;
    font-family: var(--font);
    text-transform: uppercase
}

.contacts_content_text-mini {
    font-size: 12px;
}


.open .contacts_content_text {
    opacity: 1;
    transform: translateY(0)
}

.open .contacts_content_item:first-child .contacts_content_text {
    transition: opacity .3s cubic-bezier(.25,.46,.45,.94) .2s,transform .3s cubic-bezier(.25,.46,.45,.94) .2s,-webkit-transform .3s cubic-bezier(.25,.46,.45,.94) .2s
}

.open .contacts_content_item:nth-child(2) .contacts_content_text {
    transition: opacity .3s cubic-bezier(.25,.46,.45,.94) .3s,transform .3s cubic-bezier(.25,.46,.45,.94) .3s,-webkit-transform .3s cubic-bezier(.25,.46,.45,.94) .3s
}

.open .contacts_content_item:nth-child(3) .contacts_content_text {
    transition: opacity .3s cubic-bezier(.25,.46,.45,.94) .4s,transform .3s cubic-bezier(.25,.46,.45,.94) .4s,-webkit-transform .3s cubic-bezier(.25,.46,.45,.94) .4s
}

.open .contacts_content_item:nth-child(4) .contacts_content_text {
    transition: opacity .3s cubic-bezier(.25,.46,.45,.94) .5s,transform .3s cubic-bezier(.25,.46,.45,.94) .5s,-webkit-transform .3s cubic-bezier(.25,.46,.45,.94) .5s
}

.open .contacts_content_item:nth-child(5) .contacts_content_text {
    transition: opacity .3s cubic-bezier(.25,.46,.45,.94) .6s,transform .3s cubic-bezier(.25,.46,.45,.94) .6s,-webkit-transform .3s cubic-bezier(.25,.46,.45,.94) .6s
}

.open .contacts_content_item:nth-child(6) .contacts_content_text {
    transition: opacity .3s cubic-bezier(.25,.46,.45,.94) .7s,transform .3s cubic-bezier(.25,.46,.45,.94) .7s,-webkit-transform .3s cubic-bezier(.25,.46,.45,.94) .7s
}

@media (min-width: 768px) {
    .burger_btn {
        height:10px;
        width: 50px
    }
}

@media (max-width: 768px) {
    .burger_btn {
        height:10px
    }

    .burger_menu.open {
        overflow: hidden;
        scrollbar-width: none
    }

    .burger {
        width: 20px;
        height: 20px
    }
}

@media (max-width: 1023px) {
    .burger_logo svg {
    width: 88px;
    height: 24px;
    }
}

.pages_dev {line-height: 160%;}
.contract {}
.box_contract {}
.zig_zag {
	background: #eee9e8;
	position: relative;
	padding: 25px;
}

.download_contract {
    display: inline-block;
    margin-bottom: 40px;
    font-size: 18px;
    text-decoration: underline;
}


.zig_zag:before {
	background: linear-gradient(-45deg, #eee9e8 10px, transparent 0), linear-gradient(45deg, #eee9e8 10px, transparent 0);
	background-position: left top;
	background-repeat: repeat-x;
	background-size: 20px 20px;
	content: " ";
	display: block;
	height: 20px;
	width: 100%;
	position: absolute;
	top: -20px;
	left: 0;
}

.zig_zag:after {
    background: linear-gradient(-45deg, transparent 20px, #eee9e8 0), linear-gradient(45deg, transparent 20px, #eee9e8 0);
    background-position: left bottom;
    background-size: 20px 20px;
    content: "";
    display: block;
    height: 20px;
    width: 100%;
    position: absolute;
    top: 100%;
    left: 0;
}



.zig_zag_item {
    display: flex;
    align-items: baseline;
}
.zig_zag_number {
    margin-right: 12px;
    color: var(--main-background);
    font-weight: 500;
}

.zig_zag_text {}

.red_contract {
    color: red;
}

@media (max-width: 1023px) {

.zig_zag {
    padding: 15px 15px 20px 15px;
}

.zig_zag_number {
    line-height: 150%;
}    
    
.zig_zag_text {
    font-size: 15px;
    line-height: 150%;
}
}

.id_check {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.float_id {
    flex-wrap: wrap;
    flex-direction: column;
    align-items: baseline;
}

.customer_link {
    color: var(--main-background);
    font-weight: 600;
}


.form_check {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 600px;
}
.form_check_box {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 6px;
}

.form_check_box_new {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 6px;
}


.form_check_box input[type="text"], .form_check_box input[type="number"] {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    background: #dad5d3;
    color: var(--primary-color);
    line-height: 1.2;
    letter-spacing: 0;
    font-size: 15px;
    margin: 0;
    padding: 0 16px;
    vertical-align: initial;
    border-radius: 0;
    -webkit-user-select: none;
    user-select: none;
    appearance: textfield;
    box-sizing: initial;
    border: 1px solid #0000;
    height: 46px;
    display: block;
    transition: all .3s;
}



.form_check_box textarea {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    background: #dad5d3;
    color: var(--primary-color);
    font-family: var(--font);
    line-height: 1.6;
    letter-spacing: 0;
    font-size: 15px;
    margin: 0;
    padding: 8px 16px;
    vertical-align: initial;
    border-radius: 0;
    -webkit-user-select: none;
    user-select: none;
    appearance: textfield;
    box-sizing: initial;
    border: 1px solid #0000;
    display: block;
    transition: all .3s;
    height: 106px;
}


.form_check_box input[type="checkbox"] {
    height: 22px;
    width: 22px;
    padding: 0;
    margin: 0;
}

.form_check_box input[type="checkbox"]+label {font-weight: 500;line-height: 22px;}




.form_check_box input[type="text"].error, .form_check_box input[type="number"].error {border-color: #ff610099;}

.form_check_box input[aria-invalid="false"], .form_check_box input[type="text"].valid, .form_check_box input[type="number"].valid, .form_check_box textarea.valid {border-color: var(--pozy);}


.form_check_info {
    font-size: 13px;
    line-height: 1.4;
}
 



.form_check_button {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: var(--main-background);
    cursor: pointer;
    font-size: 18px;
    height: 48px;
    border: none;
    transition: all .3s;
}

.form_check_box_new .form_check_button {padding: 0 24px;background: var(--main-background);}


.form_check_box_wrapper {
    display: flex;
    align-items: center;
    gap: 12px;
}



.form_check_button:disabled {
    background: var(--black-bg-opacity-20);
}

.line_form {
    padding-top: 20px;
    border-top: 1px solid var(--black-bg-opacity-20);
}











.specs-list {
}

.specs-list-wrapper {display: grid;grid-template-columns: repeat(2, 1fr);gap: 80px;}








.specs-group {display: flex;flex-direction: column;gap: 10px;}

.specs-group-info {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.specs-item {align-items: flex-end;display: flex;flex-wrap: wrap;width: 100%;min-height: 24px;}

.specs-item-name, .specs-item-value{
    display: block;
    word-break: break-word;
    position: relative;
}


.specs-item-name{width: 50%;}

.specs-item-name:before {
    bottom: 4px;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    background-image: linear-gradient(90deg, hsl(0, 0%, 50%) 33%, #0000 0);
    background-size: 3px 1px;
    height: 1px;
    width: 100%
}

.specs-item-name-block {
    background: var(--light-background);
    display: inline;
    padding-right: 10px;
    position: relative;
    color: var(--grey-font);
}

.specs-item-value{display: inline;padding-left: 10px;position: relative;width: 50%;}

.specs-item-value-fitting {
	
display: inline-block;
}

.specs-item-value-hint {display: flex;align-items: center;gap: var(--theme-gap-layer-01);}

.specs-item-value-hint svg {
	color: var(--theme-color-strict);
}


.specs-item-value a{
	
color: var(--theme-main-color);
}



@media (max-width: 1024px) {
.specs-list-wrapper {display: grid;grid-template-columns: repeat(1, 1fr);gap: 10px;}

.specs-group {font-size: 13px;}

  .specs-item-name {
    width: 45%;
}  
    
}















#tilt-container {
  position: relative;
  width: 100%;
  height: 700px;
  overflow: hidden;
  perspective: 700px;
  background: url('house.jpg') center/cover no-repeat;
}

.tilt-inner {
  position: absolute;
  top: -10%; left: -10%;
  width: 120%; height: 120%;
  background: url('/static/img/_block/slide_1.webp') center/cover no-repeat;
  transform-style: preserve-3d;
}



.tilt-inner::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: hsla(0, 0%, 0%, 0.30);
    pointer-events: none;
}


.overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
  width: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.overlay-box {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}


.overlay .text2 {
  margin: 16px 0;
  font-size: 18px;
}

.overlay .button-placeholder {
  margin-top: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}


.button-placeholder-btn {font-size: 16px;background-color: var(--main-background);color: #fff;padding: 12px 24px;border-radius: 100px;cursor: pointer;text-align: center;}




@media (max-width: 1024px) {
#tilt-container {
  height: 500px;
}


.overlay {
  width: 100%;
}


    
.tilt-inner {
  background: url('/static/img/_block/slide_1.webp') center/cover no-repeat;
}

  .overlay .text2 {
    font-size: 16px;
    max-width: 280px;
}  

}














.reviews-block {
    padding: 0;
}

.crv-top-gap {
	
display: flex;
	
justify-content: space-between;
	
align-items: center;
	
gap: 12px;
}

.crv-button-yandex {
	
display: flex;
	
align-items: center;
	
justify-content: flex-start;
}

.crv-button-yandex-btn {
	font-weight: 500;
	font-size: 14px;
	line-height: normal;
	color: var(--text-and-border-color-by-theme);
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 16px;
	height: 40px;
	text-align: center;
	border-radius: 20px;
	text-decoration: none;
	text-transform: uppercase;
	background-color: transparent;
	border: 1px solid var(--text-and-border-color-by-theme);
}

.crv-button-yandex-mobile {	
display: none;
}


.crv-inner {
  width: 100%;
  box-sizing: border-box;
}
.crv-head {
}
.crv-pretitle {
  font-size: 14px;
  color: #999;
  text-transform: uppercase;
  margin-bottom: 5px;
}
.crv-headrow {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.crv-headrow .crv-title {margin: 0;}
.crv-nav {
  display: flex;
  gap: 12px;
  align-items: center;
}
.crv-arr {
  background: transparent;
  width: 40px;
  height: 40px;
  min-width: 40px;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  cursor: pointer;
  border: 1px solid var(--text-and-border-color-by-theme);
  border-radius: 50%;
}
.crv-arr_prev {
}

.crv-arr_prev svg, .crv-arr_next svg {
    width: 21px;
    height: 18px;
    min-height: 18px;
    min-width: 21px;
    padding: 2px;
    fill: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s ease-in-out;
}

.crv-arr_next {
transform: scaleX(-1);
}

.no-more-left svg, .no-more-right svg {
	opacity: 0.5;
	cursor: default;
}


/* Слайдер */
.crv-slider {
  overflow: hidden;
  position: relative;
  margin-top: 32px;
}
.crv-list {
  display: flex;
  transition: transform 0.3s cubic-bezier(0.04, 0.81, 0.58, 1);
  will-change: transform;
  width: 100%;
}
.crv-item {
  flex: 0 0 calc(100% / 3);
  border-top: 1px solid var(--text-and-border-color-by-theme);
  border-right: 1px solid var(--text-and-border-color-by-theme);
}
.crv-iteminner {
  padding: 46px 32px;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Заголовок карточки */
.crv-header {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}
.crv-avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 15px;
}
.crv-avatar span {
  align-items: center;
  background: #fc3f1d;
  border-radius: 50%;
  display: flex;
  height: 36px;
  justify-content: center;
  width: 36px;
}
.crv-name-date {
  display: flex;
  flex-direction: column;
}
.crv-name {
  margin-bottom: 4px;
  text-transform: uppercase;
  font-size: 16px;
  font-weight: 500;
}

.crv-date-rating {display: flex;align-items: center;gap: 12px;}

.review-star-single {display: flex;align-items: center;gap: 2px;}



.crv-date {
  font-size: 14px;
  line-height: 1;
  color: var(--black-bg-opacity-50);
}

/* Текст и кнопка */
.crv-text {
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 25px;
  overflow: hidden;
}
.crv-iteminner.expanded .crv-text {
  max-height: none;
}
.crv-toggler {
  cursor: pointer;
}
.crv-togglertext_notactive,
.crv-togglertext_active {
  color: var(--color-grey);
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 500;
}
.crv-togglertext_active {
  display: none;
}

/* Дополнительный класс для видимых элементов */
.crv-item.additional {
  /* Здесь можно добавить стили для обозначения видимого блока, если нужно */
}

/* Адаптив */
@media (max-width: 1024px) {
  .crv-item {
    flex: 0 0 50%;
  }
}
@media (max-width: 768px) {
  .crv-item {
    flex: 0 0 100%;
    padding: 0;
    border-right: none !important;
  }
  .crv-title {
    font-size: 24px;
  }

.crv-button-yandex-mobile {display: flex;align-items: center;justify-content: center;width: 100%;}

.crv-button-yandex {
display: none;
}

.crv-iteminner {
    padding: 32px 0px;
}
	

.crv-button-yandex-btn {width: 100%;height: 50px;border-radius: 25px;font-size: 16px;}

.crv-text {margin-bottom: 0;}	
	
}






































