@-webkit-keyframes swiper-preloader-spin{
    0%{
        transform:rotate(0deg)
    }
    to{
        transform:rotate(360deg)
    }
}
@keyframes swiper-preloader-spin{
    0%{
        transform:rotate(0deg)
    }
    to{
        transform:rotate(360deg)
    }
}
.tippy-box[data-animation=fade][data-state=hidden]{
    opacity:0
}
[data-tippy-root]{
    max-width:calc(100vw - 10px)
}
.tippy-box{
    position:relative;
    background-color:#333;
    color:#fff;
    border-radius:4px;
    font-size:14px;
    line-height:1.4;
    white-space:normal;
    outline:0;
    transition-property:transform,visibility,opacity
}
.tippy-box[data-placement^=top]>.tippy-arrow{
    bottom:0
}
.tippy-box[data-placement^=top]>.tippy-arrow:before{
    bottom:-7px;
    left:0;
    border-width:8px 8px 0;
    border-top-color:initial;
    transform-origin:center top
}
.tippy-box[data-placement^=bottom]>.tippy-arrow{
    top:0
}
.tippy-box[data-placement^=bottom]>.tippy-arrow:before{
    top:-7px;
    left:0;
    border-width:0 8px 8px;
    border-bottom-color:initial;
    transform-origin:center bottom
}
.tippy-box[data-placement^=left]>.tippy-arrow{
    right:0
}
.tippy-box[data-placement^=left]>.tippy-arrow:before{
    border-width:8px 0 8px 8px;
    border-left-color:initial;
    right:-7px;
    transform-origin:center left
}
.tippy-box[data-placement^=right]>.tippy-arrow{
    left:0
}
.tippy-box[data-placement^=right]>.tippy-arrow:before{
    left:-7px;
    border-width:8px 8px 8px 0;
    border-right-color:initial;
    transform-origin:center right
}
.tippy-box[data-inertia][data-state=visible]{
    transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)
}
.tippy-arrow{
    width:16px;
    height:16px;
    color:#333
}
.tippy-arrow:before{
    content:"";
    position:absolute;
    border-color:transparent;
    border-style:solid
}
.tippy-content{
    position:relative;
    padding:5px 9px;
    z-index:1
}
.tippy-box[data-theme~=custom]{
    background:#ede8dd;
    border-radius:.5em;
    font-size:1rem
}
.tippy-box[data-theme~=custom][data-placement^=bottom]{
    transform:translateY(.5em)
}
.tippy-box[data-theme~=custom][data-placement^=top]{
    transform:translateY(-.5em)
}
.tippy-box[data-theme~=custom] .tippy-content{
    max-width:22em;
    padding:1em;
    text-align:center;
    color:#000
}
.tippy-box[data-theme~=custom] .tippy-arrow{
    color:#ede8dd
}
@font-face{
    font-family:"swiper-icons";
    src:url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
    font-weight:400;
    font-style:normal
}
:root{
    --swiper-theme-color: #007aff
}
.swiper,.swiper-wrapper{
    position:relative;
    z-index:1
}
.swiper{
    margin-left:auto;
    margin-right:auto;
    overflow:hidden;
    list-style:none;
    padding:0
}
.swiper-vertical>.swiper-wrapper{
    flex-direction:column
}
.swiper-wrapper{
    width:100%;
    height:100%;
    display:flex;
    transition-property:transform;
    box-sizing:content-box
}
.swiper-android .swiper-slide,.swiper-wrapper{
    transform:translate3d(0,0,0)
}
.swiper-pointer-events{
    touch-action:pan-y
}
.swiper-pointer-events.swiper-vertical{
    touch-action:pan-x
}
.swiper-slide{
    flex-shrink:0;
    width:100%;
    height:100%;
    position:relative;
    transition-property:transform
}
.swiper-slide-invisible-blank{
    visibility:hidden
}
.swiper-autoheight,.swiper-autoheight .swiper-slide{
    height:auto
}
.swiper-autoheight .swiper-wrapper{
    align-items:flex-start;
    transition-property:transform,height
}
.swiper-backface-hidden .swiper-slide{
    transform:translateZ(0);
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden
}
.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{
    perspective:1200px
}
.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{
    transform-style:preserve-3d
}
.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    pointer-events:none;
    z-index:10
}
.swiper-3d .swiper-slide-shadow{
    background:rgba(0,0,0,.15)
}
.swiper-3d .swiper-slide-shadow-left{
    background-image:linear-gradient(to left,rgba(0,0,0,.5),transparent)
}
.swiper-3d .swiper-slide-shadow-right{
    background-image:linear-gradient(to right,rgba(0,0,0,.5),transparent)
}
.swiper-3d .swiper-slide-shadow-top{
    background-image:linear-gradient(to top,rgba(0,0,0,.5),transparent)
}
.swiper-3d .swiper-slide-shadow-bottom{
    background-image:linear-gradient(to bottom,rgba(0,0,0,.5),transparent)
}
.swiper-css-mode>.swiper-wrapper{
    overflow:auto;
    scrollbar-width:none;
    -ms-overflow-style:none
}
.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{
    display:none
}
.swiper-css-mode>.swiper-wrapper>.swiper-slide{
    scroll-snap-align:start start
}
.swiper-horizontal.swiper-css-mode>.swiper-wrapper{
    scroll-snap-type:x mandatory
}
.swiper-vertical.swiper-css-mode>.swiper-wrapper{
    scroll-snap-type:y mandatory
}
.swiper-centered>.swiper-wrapper::before{
    content:"";
    flex-shrink:0;
    order:9999
}
.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{
    -webkit-margin-start:var(--swiper-centered-offset-before);
    margin-inline-start:var(--swiper-centered-offset-before)
}
.swiper-centered.swiper-horizontal>.swiper-wrapper::before{
    height:100%;
    min-height:1px;
    width:var(--swiper-centered-offset-after)
}
.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{
    -webkit-margin-before:var(--swiper-centered-offset-before);
    margin-block-start:var(--swiper-centered-offset-before)
}
.swiper-centered.swiper-vertical>.swiper-wrapper::before{
    width:100%;
    min-width:1px;
    height:var(--swiper-centered-offset-after)
}
.swiper-centered>.swiper-wrapper>.swiper-slide{
    scroll-snap-align:center center
}
.swiper-virtual .swiper-slide{
    -webkit-backface-visibility:hidden;
    transform:translateZ(0)
}
.swiper-virtual.swiper-css-mode .swiper-wrapper::after{
    content:"";
    position:absolute;
    left:0;
    top:0;
    pointer-events:none
}
.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{
    height:1px;
    width:var(--swiper-virtual-size)
}
.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{
    width:1px;
    height:var(--swiper-virtual-size)
}
:root{
    --swiper-navigation-size: 44px
}
.swiper-button-next,.swiper-button-prev{
    position:absolute;
    top:50%;
    width:calc(var(--swiper-navigation-size)/44*27);
    height:var(--swiper-navigation-size);
    margin-top:calc(0px - (var(--swiper-navigation-size)/2));
    z-index:10;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--swiper-navigation-color, var(--swiper-theme-color))
}
.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{
    opacity:.35;
    cursor:auto;
    pointer-events:none
}
.swiper-button-next:after,.swiper-button-prev:after{
    font-family:swiper-icons;
    font-size:var(--swiper-navigation-size);
    text-transform:none!important;
    letter-spacing:0;
    font-variant:initial;
    line-height:1
}
.swiper-button-prev,.swiper-rtl .swiper-button-next{
    left:10px;
    right:auto
}
.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{
    content:"prev"
}
.swiper-button-next,.swiper-rtl .swiper-button-prev{
    right:10px;
    left:auto
}
.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{
    content:"next"
}
.swiper-button-lock{
    display:none
}
.swiper-pagination{
    position:absolute;
    text-align:center;
    transition:300ms opacity;
    transform:translate3d(0,0,0);
    z-index:10
}
.swiper-pagination.swiper-pagination-hidden{
    opacity:0
}
.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{
    bottom:10px;
    left:0;
    width:100%
}
.swiper-pagination-bullets-dynamic{
    overflow:hidden;
    font-size:0
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{
    transform:scale(.33);
    position:relative
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{
    transform:scale(1)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{
    transform:scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{
    transform:scale(.33)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{
    transform:scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{
    transform:scale(.33)
}
.swiper-pagination-bullet{
    width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
    height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
    display:inline-block;
    border-radius:50%;
    background:var(--swiper-pagination-bullet-inactive-color, #000);
    opacity:var(--swiper-pagination-bullet-inactive-opacity, 0.2)
}
button.swiper-pagination-bullet{
    border:0;
    margin:0;
    padding:0;
    box-shadow:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none
}
.swiper-pagination-clickable .swiper-pagination-bullet{
    cursor:pointer
}
.swiper-pagination-bullet:only-child{
    display:none!important
}
.swiper-pagination-bullet-active{
    opacity:var(--swiper-pagination-bullet-opacity, 1);
    background:var(--swiper-pagination-color, var(--swiper-theme-color))
}
.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{
    right:10px;
    top:50%;
    transform:translate3d(0,-50%,0)
}
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{
    margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display:block
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{
    top:50%;
    transform:translateY(-50%);
    width:8px
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{
    display:inline-block;
    transition:200ms transform,200ms top
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{
    margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}
.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{
    left:50%;
    transform:translateX(-50%);
    white-space:nowrap
}
.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{
    transition:200ms transform,200ms left
}
.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{
    transition:200ms transform,200ms right
}
.swiper-pagination-progressbar{
    background:rgba(0,0,0,.25);
    position:absolute
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{
    background:var(--swiper-pagination-color, var(--swiper-theme-color));
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    transform:scale(0);
    transform-origin:left top
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{
    transform-origin:right top
}
.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{
    width:100%;
    height:4px;
    left:0;
    top:0
}
.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{
    width:4px;
    height:100%;
    left:0;
    top:0
}
.swiper-pagination-lock{
    display:none
}
.swiper-scrollbar{
    border-radius:10px;
    position:relative;
    -ms-touch-action:none;
    background:rgba(0,0,0,.1)
}
.swiper-horizontal>.swiper-scrollbar{
    position:absolute;
    left:1%;
    bottom:3px;
    z-index:50;
    height:5px;
    width:98%
}
.swiper-vertical>.swiper-scrollbar{
    position:absolute;
    right:3px;
    top:1%;
    z-index:50;
    width:5px;
    height:98%
}
.swiper-scrollbar-drag{
    height:100%;
    width:100%;
    position:relative;
    background:rgba(0,0,0,.5);
    border-radius:10px;
    left:0;
    top:0
}
.swiper-scrollbar-cursor-drag{
    cursor:move
}
.swiper-scrollbar-lock{
    display:none
}
.swiper-zoom-container{
    width:100%;
    height:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center
}
.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{
    max-width:100%;
    max-height:100%;
    -o-object-fit:contain;
    object-fit:contain
}
.swiper-slide-zoomed{
    cursor:move
}
.swiper-lazy-preloader{
    width:42px;
    height:42px;
    position:absolute;
    left:50%;
    top:50%;
    margin-left:-21px;
    margin-top:-21px;
    z-index:10;
    transform-origin:50%;
    box-sizing:border-box;
    border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius:50%;
    border-top-color:transparent
}
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{
    -webkit-animation:swiper-preloader-spin 1s infinite linear;
    animation:swiper-preloader-spin 1s infinite linear
}
.swiper-lazy-preloader-white{
    --swiper-preloader-color: #fff
}
.swiper-lazy-preloader-black{
    --swiper-preloader-color: #000
}
.swiper .swiper-notification{
    position:absolute;
    left:0;
    top:0;
    pointer-events:none;
    opacity:0;
    z-index:-1000
}
.swiper-free-mode>.swiper-wrapper{
    transition-timing-function:ease-out;
    margin:0 auto
}
.swiper-grid>.swiper-wrapper{
    flex-wrap:wrap
}
.swiper-grid-column>.swiper-wrapper{
    flex-wrap:wrap;
    flex-direction:column
}
.swiper-fade.swiper-free-mode .swiper-slide{
    transition-timing-function:ease-out
}
.swiper-fade .swiper-slide{
    pointer-events:none;
    transition-property:opacity
}
.swiper-fade .swiper-slide .swiper-slide{
    pointer-events:none
}
.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{
    pointer-events:auto
}
.swiper-cards,.swiper-cube,.swiper-flip{
    overflow:visible
}
.swiper-cube .swiper-slide{
    pointer-events:none;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    z-index:1;
    visibility:hidden;
    transform-origin:0 0;
    width:100%;
    height:100%
}
.swiper-cube .swiper-slide .swiper-slide{
    pointer-events:none
}
.swiper-cube.swiper-rtl .swiper-slide{
    transform-origin:100% 0
}
.swiper-cube .swiper-slide-active .swiper-slide-active{
    pointer-events:auto
}
.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{
    pointer-events:auto;
    visibility:visible
}
.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{
    z-index:0;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden
}
.swiper-cube .swiper-cube-shadow{
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    height:100%;
    opacity:.6;
    z-index:0
}
.swiper-cube .swiper-cube-shadow:before{
    content:"";
    background:#000;
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    right:0;
    filter:blur(50px)
}
.swiper-flip .swiper-slide{
    pointer-events:none;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    z-index:1
}
.swiper-flip .swiper-slide .swiper-slide{
    pointer-events:none
}
.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{
    pointer-events:auto
}
.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{
    z-index:0;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden
}
.swiper-cards .swiper-slide,.swiper-creative .swiper-slide{
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    overflow:hidden
}
.swiper-creative .swiper-slide{
    transition-property:transform,opacity,height
}
.swiper-cards .swiper-slide{
    transform-origin:center bottom
}
/*!
 * Datepicker for Bootstrap v1.9.0 (https://github.com/uxsolutions/bootstrap-datepicker)
 *
 * Licensed under the Apache License v2.0 (http://www.apache.org/licenses/LICENSE-2.0)
 */
@-webkit-keyframes textRotating{
    0%{
        transform:translateY(-50%) rotate(0deg)
    }
    to{
        transform:translateY(-50%) rotate(-360deg)
    }
}
@keyframes textRotating{
    0%{
        transform:rotate(0deg)
    }
    to{
        transform:rotate(-360deg)
    }
}
.datepicker{
    padding:4px;
    border-radius:4px;
    direction:ltr
}
.datepicker-inline{
    width:220px
}
.datepicker-rtl{
    direction:rtl
}
.datepicker-rtl.dropdown-menu{
    left:auto
}
.datepicker-rtl table tr td span{
    float:right
}
.datepicker-dropdown{
    top:0;
    left:0
}
.datepicker-dropdown:after,.datepicker-dropdown:before{
    content:"";
    display:inline-block;
    border-top:0;
    position:absolute
}
.datepicker-dropdown:before{
    border-bottom-color:rgba(0,0,0,.2);
    border-left:7px solid transparent;
    border-right:7px solid transparent;
    border-bottom:7px solid #999
}
.datepicker-dropdown:after{
    border-left:6px solid transparent;
    border-right:6px solid transparent;
    border-bottom:6px solid #fff
}
.datepicker-dropdown.datepicker-orient-left:before{
    left:6px
}
.datepicker-dropdown.datepicker-orient-left:after{
    left:7px
}
.datepicker-dropdown.datepicker-orient-right:before{
    right:6px
}
.datepicker-dropdown.datepicker-orient-right:after{
    right:7px
}
.datepicker-dropdown.datepicker-orient-bottom:before{
    top:-7px
}
.datepicker-dropdown.datepicker-orient-bottom:after{
    top:-6px
}
.datepicker-dropdown.datepicker-orient-top:before{
    bottom:-7px;
    border-bottom:0;
    border-top:7px solid #999
}
.datepicker-dropdown.datepicker-orient-top:after{
    bottom:-6px;
    border-bottom:0;
    border-top:6px solid #fff
}
.datepicker table{
    margin:0;
    -webkit-touch-callout:none;
    -webkit-user-select:none;
    -moz-user-select:none;
    user-select:none
}
.datepicker td,.datepicker th{
    text-align:center;
    width:20px;
    height:20px;
    border-radius:4px;
    border:0
}
.table-striped .datepicker table tr td,.table-striped .datepicker table tr th{
    background-color:transparent
}
.datepicker table tr td.day.focused,.datepicker table tr td.day:hover{
    background:#eee;
    cursor:pointer
}
.datepicker table tr td.new,.datepicker table tr td.old{
    color:#999
}
.datepicker table tr td.disabled,.datepicker table tr td.disabled:hover{
    background:0 0;
    color:#999;
    cursor:default
}
.datepicker table tr td.highlighted{
    background:#d9edf7;
    border-radius:0
}
.datepicker table tr td.today{
    background-color:#fde19a
}
.datepicker table tr td.today,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today:hover{
    background-image:linear-gradient(to bottom,#fdd49a,#fdf59a);
    background-repeat:repeat-x;
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#fdd49a", endColorstr="#fdf59a", GradientType=0);
    border-color:#fdf59a #fdf59a #fbed50;
    border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);
    filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);
    color:#000
}
.datepicker table tr td.today.active,.datepicker table tr td.today.disabled,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled.disabled,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled:hover.disabled,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today.disabled:hover:hover,.datepicker table tr td.today.disabled:hover[disabled],.datepicker table tr td.today.disabled[disabled],.datepicker table tr td.today:active,.datepicker table tr td.today:hover,.datepicker table tr td.today:hover.active,.datepicker table tr td.today:hover.disabled,.datepicker table tr td.today:hover:active,.datepicker table tr td.today:hover:hover,.datepicker table tr td.today:hover[disabled],.datepicker table tr td.today[disabled]{
    background-color:#fdf59a
}
.datepicker table tr td.today.active,.datepicker table tr td.today.disabled.active,.datepicker table tr td.today.disabled:active,.datepicker table tr td.today.disabled:hover.active,.datepicker table tr td.today.disabled:hover:active,.datepicker table tr td.today:active,.datepicker table tr td.today:hover.active,.datepicker table tr td.today:hover:active{
    background-color:#fbf069 \9 
}
.datepicker table tr td.today:hover:hover{
    color:#000
}
.datepicker table tr td.today.active:hover{
    color:#fff
}
.datepicker table tr td.range,.datepicker table tr td.range.disabled,.datepicker table tr td.range.disabled:hover,.datepicker table tr td.range:hover{
    background:#eee;
    border-radius:0
}
.datepicker table tr td.range.today{
    background-color:#f3d17a
}
.datepicker table tr td.range.today,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today:hover{
    background-image:linear-gradient(to bottom,#f3c17a,#f3e97a);
    background-repeat:repeat-x;
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#f3c17a", endColorstr="#f3e97a", GradientType=0);
    border-color:#f3e97a #f3e97a #edde34;
    border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);
    filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);
    border-radius:0
}
.datepicker table tr td.range.today.active,.datepicker table tr td.range.today.disabled,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled.disabled,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled:hover.disabled,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today.disabled:hover:hover,.datepicker table tr td.range.today.disabled:hover[disabled],.datepicker table tr td.range.today.disabled[disabled],.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today:hover.disabled,.datepicker table tr td.range.today:hover:active,.datepicker table tr td.range.today:hover:hover,.datepicker table tr td.range.today:hover[disabled],.datepicker table tr td.range.today[disabled]{
    background-color:#f3e97a
}
.datepicker table tr td.range.today.active,.datepicker table tr td.range.today.disabled.active,.datepicker table tr td.range.today.disabled:active,.datepicker table tr td.range.today.disabled:hover.active,.datepicker table tr td.range.today.disabled:hover:active,.datepicker table tr td.range.today:active,.datepicker table tr td.range.today:hover.active,.datepicker table tr td.range.today:hover:active{
    background-color:#efe24b \9 
}
.datepicker table tr td.selected{
    background-color:#9e9e9e
}
.datepicker table tr td.selected,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected:hover{
    background-image:linear-gradient(to bottom,#b3b3b3,gray);
    background-repeat:repeat-x;
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#b3b3b3", endColorstr="#808080", GradientType=0);
    border-color:gray gray #595959;
    border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);
    filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);
    color:#fff;
    text-shadow:0 -1px 0 rgba(0,0,0,.25)
}
.datepicker table tr td.selected.active,.datepicker table tr td.selected.disabled,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled.disabled,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled:hover.disabled,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected.disabled:hover:hover,.datepicker table tr td.selected.disabled:hover[disabled],.datepicker table tr td.selected.disabled[disabled],.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected:hover.disabled,.datepicker table tr td.selected:hover:active,.datepicker table tr td.selected:hover:hover,.datepicker table tr td.selected:hover[disabled],.datepicker table tr td.selected[disabled]{
    background-color:gray
}
.datepicker table tr td.selected.active,.datepicker table tr td.selected.disabled.active,.datepicker table tr td.selected.disabled:active,.datepicker table tr td.selected.disabled:hover.active,.datepicker table tr td.selected.disabled:hover:active,.datepicker table tr td.selected:active,.datepicker table tr td.selected:hover.active,.datepicker table tr td.selected:hover:active{
    background-color:#666 \9 
}
.datepicker table tr td.active{
    background-color:#006dcc
}
.datepicker table tr td.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active:hover{
    background-image:linear-gradient(to bottom,#08c,#04c);
    background-repeat:repeat-x;
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#08c", endColorstr="#0044cc", GradientType=0);
    border-color:#04c #04c #002a80;
    border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);
    filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);
    color:#fff;
    text-shadow:0 -1px 0 rgba(0,0,0,.25)
}
.datepicker table tr td.active.active,.datepicker table tr td.active.disabled,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled.disabled,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled:hover.disabled,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active.disabled:hover:hover,.datepicker table tr td.active.disabled:hover[disabled],.datepicker table tr td.active.disabled[disabled],.datepicker table tr td.active:active,.datepicker table tr td.active:hover,.datepicker table tr td.active:hover.active,.datepicker table tr td.active:hover.disabled,.datepicker table tr td.active:hover:active,.datepicker table tr td.active:hover:hover,.datepicker table tr td.active:hover[disabled],.datepicker table tr td.active[disabled]{
    background-color:#04c
}
.datepicker table tr td.active.active,.datepicker table tr td.active.disabled.active,.datepicker table tr td.active.disabled:active,.datepicker table tr td.active.disabled:hover.active,.datepicker table tr td.active.disabled:hover:active,.datepicker table tr td.active:active,.datepicker table tr td.active:hover.active,.datepicker table tr td.active:hover:active{
    background-color:#039 \9 
}
.datepicker table tr td span{
    display:block;
    width:23%;
    height:54px;
    line-height:54px;
    float:left;
    margin:1%;
    cursor:pointer;
    border-radius:4px
}
.datepicker .datepicker-switch:hover,.datepicker .next:hover,.datepicker .prev:hover,.datepicker table tr td span.focused,.datepicker table tr td span:hover,.datepicker tfoot tr th:hover{
    background:#eee
}
.datepicker table tr td span.disabled,.datepicker table tr td span.disabled:hover{
    background:0 0;
    color:#999;
    cursor:default
}
.datepicker table tr td span.active{
    background-color:#006dcc
}
.datepicker table tr td span.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active:hover{
    background-image:linear-gradient(to bottom,#08c,#04c);
    background-repeat:repeat-x;
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#08c", endColorstr="#0044cc", GradientType=0);
    border-color:#04c #04c #002a80;
    border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);
    filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);
    color:#fff;
    text-shadow:0 -1px 0 rgba(0,0,0,.25)
}
.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled.disabled,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover.disabled,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active.disabled:hover:hover,.datepicker table tr td span.active.disabled:hover[disabled],.datepicker table tr td span.active.disabled[disabled],.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover.disabled,.datepicker table tr td span.active:hover:active,.datepicker table tr td span.active:hover:hover,.datepicker table tr td span.active:hover[disabled],.datepicker table tr td span.active[disabled]{
    background-color:#04c
}
.datepicker table tr td span.active.active,.datepicker table tr td span.active.disabled.active,.datepicker table tr td span.active.disabled:active,.datepicker table tr td span.active.disabled:hover.active,.datepicker table tr td span.active.disabled:hover:active,.datepicker table tr td span.active:active,.datepicker table tr td span.active:hover.active,.datepicker table tr td span.active:hover:active{
    background-color:#039 \9 
}
.datepicker table tr td span.new,.datepicker table tr td span.old{
    color:#999
}
.datepicker .datepicker-switch{
    width:145px;
    cursor:pointer
}
.datepicker .next,.datepicker .prev,.datepicker tfoot tr th{
    cursor:pointer
}
.datepicker .next.disabled,.datepicker .prev.disabled{
    visibility:hidden
}
.datepicker .cw{
    font-size:10px;
    width:12px;
    padding:0 2px 0 5px;
    vertical-align:middle
}
.input-append.date .add-on,.input-prepend.date .add-on{
    cursor:pointer
}
.input-append.date .add-on i,.input-prepend.date .add-on i{
    margin-top:3px
}
.input-daterange input{
    text-align:center
}
.input-daterange input:first-child{
    border-radius:3px 0 0 3px
}
.input-daterange input:last-child{
    border-radius:0 3px 3px 0
}
.input-daterange .add-on{
    display:inline-block;
    width:auto;
    min-width:16px;
    height:20px;
    padding:4px 5px;
    font-weight:400;
    line-height:20px;
    text-align:center;
    text-shadow:0 1px 0 #fff;
    vertical-align:middle;
    background-color:#eee;
    border:1px solid #ccc;
    margin-left:-5px;
    margin-right:-5px
}
.datepicker.dropdown-menu{
    position:absolute;
    top:100%;
    left:0;
    z-index:1000;
    float:left;
    display:none;
    min-width:160px;
    list-style:none;
    background-color:#fff;
    border:1px solid #ccc;
    border:1px solid rgba(0,0,0,.2);
    border-radius:5px;
    box-shadow:0 5px 10px rgba(0,0,0,.2);
    -webkit-background-clip:padding-box;
    -moz-background-clip:padding;
    background-clip:padding-box;
    *border-right-width:2px;
    *border-bottom-width:2px;
    color:#333;
    font-size:13px;
    line-height:20px
}
.datepicker.datepicker-inline td,.datepicker.datepicker-inline th,.datepicker.dropdown-menu td,.datepicker.dropdown-menu th{
    padding:4px 5px
}
.swiper-slide{
    box-sizing:border-box;
    height:auto;
    display:flex;
    flex-direction:column
}
.lazyload,.lazyloading{
    opacity:0
}
.lazyloaded{
    opacity:1;
    transition:opacity 300ms
}
@font-face{
    font-family:"ZharPtitza";
    src:url(../assets/fonts/ZharPtitza.woff2) format("woff2"),url(../assets/fonts/ZharPtitza.woff) format("woff");
    font-weight:700;
    font-style:normal;
    font-display:swap
}
@font-face{
    font-family:"Avenir Next Cyr";
    src:url(../assets/fonts/AvenirNextCyr-Bold.woff2) format("woff2"),url(../assets/fonts/AvenirNextCyr-Bold.woff) format("woff");
    font-weight:700;
    font-style:normal;
    font-display:swap
}
@font-face{
    font-family:"Avenir Next Cyr";
    src:url(../assets/fonts/AvenirNextCyr-Light.woff2) format("woff2"),url(../assets/fonts/AvenirNextCyr-Light.woff) format("woff");
    font-weight:300;
    font-style:normal;
    font-display:swap
}
@font-face{
    font-family:"Avenir Next Cyr";
    src:url(../assets/fonts/AvenirNextCyr-Medium.woff2) format("woff2"),url(../assets/fonts/AvenirNextCyr-Medium.woff) format("woff");
    font-weight:500;
    font-style:normal;
    font-display:swap
}
@font-face{
    font-family:"Avenir Next Cyr";
    src:url(../assets/fonts/AvenirNextCyr-Demi.woff2) format("woff2"),url(../assets/fonts/AvenirNextCyr-Demi.woff) format("woff");
    font-weight:700;
    font-style:normal;
    font-display:swap
}
@font-face{
    font-family:"Avenir Next Cyr";
    src:url(../assets/fonts/AvenirNextCyr-Thin.woff2) format("woff2"),url(../assets/fonts/AvenirNextCyr-Thin.woff) format("woff");
    font-weight:100;
    font-style:normal;
    font-display:swap
}
@font-face{
    font-family:"Avenir Next Cyr";
    src:url(../assets/fonts/AvenirNextCyr-Regular.woff2) format("woff2"),url(../assets/fonts/AvenirNextCyr-Regular.woff) format("woff");
    font-weight:400;
    font-style:normal;
    font-display:swap
}
*,::after,::before{
    box-sizing:inherit;
    margin:0;
    padding:0
}
:root{
    --max-container-width: 138rem;
    --content-padding: 3rem;
    --primary-color: #ede8dd;
    --text-color: black;
    --zhar-ptitza: "ZharPtitza", serif;
    --avenir: "Avenir Next Cyr", sans-serif
}
@media only screen and (max-width:640px){
    :root{
        --content-padding: 1.5rem
    }
}
html{
    box-sizing:border-box;
    font-size:9px;
    -webkit-text-size-adjust:100%;
    -webkit-tap-highlight-color:transparent
}
@media screen and (max-width:1439px){
    html{
        font-size:clamp(4.2px,.7vw,25px)
    }
}
@media only screen and (max-width:640px){
    html{
        font-size:12px
    }
}
@media only screen and (max-width:370px){
    html{
        font-size:10px
    }
}
body{
    font-size:1.6rem;
    line-height:1.2;
    min-height:100vh;
    display:flex;
    flex-direction:column;
    font-family:var(--avenir);
    color:var(--text-color)
}
input,main{
    display:block
}
ol,ul{
    list-style:none
}
ol{
    counter-reset:ordered-list
}
ol>li{
    counter-increment:ordered-list
}
ol>li::before{
    content:counter(ordered-list,decimal-leading-zero) "."
}
input{
    box-shadow:none;
    width:100%
}
input,textarea{
    border:0;
    font:inherit;
    outline:0;
    border-radius:0;
    background-color:transparent
}
input:not([type=checkbox]):not([type=radio]){
    -moz-appearance:none;
    appearance:none;
    -webkit-appearance:none
}
textarea{
    resize:none;
    box-shadow:none;
    display:block;
    width:100%;
    overflow:auto;
    height:20rem;
    scrollbar-color:var(--primary-color) white;
    scrollbar-width:thin
}
textarea::-webkit-scrollbar{
    background-color:#fff;
    width:.6rem
}
textarea::-webkit-scrollbar-thumb{
    background-color:var(--primary-color)
}
textarea::-webkit-scrollbar-button{
    display:none
}
textarea::-webkit-scrollbar-track{
    background-color:#fff
}
input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{
    -webkit-appearance:none;
    appearance:none;
    margin:0
}
input[type=number]{
    -moz-appearance:textfield
}
input[type=search]{
    outline-offset:-2px;
    -webkit-appearance:textfield
}
input[type=search]::-webkit-search-decoration{
    -webkit-appearance:none
}
input[type=search]::-webkit-search-cancel-button{
    -webkit-appearance:none;
    display:none
}
a,button{
    background-color:transparent;
    transition:color .2s
}
button{
    border:0;
    cursor:pointer;
    -webkit-user-select:none;
    -moz-user-select:none;
    user-select:none;
    -webkit-appearance:none;
    font:inherit;
    outline:0;
    display:inline-flex;
    position:relative
}
a{
    text-decoration:none
}
a:link,a:visited,button{
    color:inherit
}
a:where(:not[class]):link,a:where(:not[class]):visited{
    color:var(--primary-color)
}
svg{
    flex-shrink:0;
    fill:currentColor;
    transition:fill .2s
}
img{
    border-style:none;
    max-width:100%;
    display:block
}
img[data-sizes=auto]{
    display:block;
    width:100%
}
img.lazyload:not([src]){
    visibility:hidden
}
table,td,th{
    text-align:left
}
table{
    width:100%;
    border-collapse:collapse
}
th{
    font-weight:400
}
td,th{
    vertical-align:top
}
::-moz-selection{
    color:var(--text-color);
    background-color:var(--primary-color);
    -webkit-text-fill-color:var(--text-color)
}
::selection{
    color:var(--text-color);
    background-color:var(--primary-color);
    -webkit-text-fill-color:var(--text-color)
}
input:-webkit-autofill,input:-webkit-autofill:focus,input:-webkit-autofill:hover,select:-webkit-autofill,select:-webkit-autofill:focus,select:-webkit-autofill:hover,textarea:-webkit-autofill,textarea:-webkit-autofill:focus,textarea:-webkit-autofill:hover{
    background-color:transparent
}
[class*=ymaps-2][class*=-ground-pane]{
    filter:grayscale(100%)
}
[class*=ymaps-2][class*=-copyrights-pane]{
    display:none
}
@media only screen and (max-width:640px){
    .apartments__slider-card-image-container::after,.booking__room-slider-card-image-container::after,.rooms-catalog__card-image-container::after{
        content:"";
        width:3rem;
        height:3rem;
        position:absolute;
        right:1rem;
        bottom:1rem;
        background-size:contain;
        background-repeat:no-repeat;
        background-position:center;
        z-index:10;
        transition:opacity .2s;
        background-image:url(../img/play.svg)
    }
    .apartments__slider-card-image-container.video-shown::after,.booking__room-slider-card-image-container.video-shown::after,.rooms-catalog__card-image-container.video-shown::after{
        background-image:url(../img/pause.svg)
    }
}
.visually-hidden{
    border:0;
    clip:rect(0 0 0 0);
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px;
    white-space:nowrap
}
.no-scroll{
    overflow-y:scroll;
    position:fixed;
    width:100%;
    height:100%;
    left:0;
    top:0
}
.no-scroll body{
    height:auto;
    overflow:hidden
}
@media only screen and (max-width:640px){
    .hide-on-mobile{
        display:none!important
    }
}
@media only screen and (min-width:641px){
    .show-on-mobile{
        display:none!important
    }
}
.nice-link{
    background-image:linear-gradient(currentColor,currentColor);
    background-position:0 100%;
    background-repeat:no-repeat;
    background-size:100% 1px;
    transition:background-size .25s ease-out,color .2s
}
.nice-link:hover{
    background-size:0 1px
}
.m-0{
    margin:0!important
}
.mb-0{
    margin-bottom:0!important
}
@media only screen and (max-width:640px){
    .d-mobile-none{
        display:none!important
    }
}
@media only screen and (min-width:639.98px){
    .d-tablet-none{
        display:none!important
    }
}
.container{
    width:100%;
    max-width:calc(var(--max-container-width) + 2*var(--content-padding));
    margin:0 auto;
    padding:0 var(--content-padding)
}
@supports (width:max(20vw,100px)){
    .container{
        padding-left:max(env(safe-area-inset-left,1.4rem),var(--content-padding));
        padding-right:max(env(safe-area-inset-right,1.4rem),var(--content-padding))
    }
}
.page-content{
    overflow:hidden
}
.page-content,.page-main{
    flex-grow:1;
    display:flex;
    flex-direction:column
}
.mobile-menu-open .page-header,.mobile-menu-open section,.modal-open .page-header{
    padding-right:var(--sb-width, 0)
}
.page-header{
    position:fixed;
    left:0;
    top:0;
    width:100%;
    height:auto;
    z-index:300
}
.page-header::before,.page-header__row{
    transition:clip-path .5s ease;
    transition:clip-path .5s ease,-webkit-clip-path .5s ease
}
.page-header::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    right:0;
    height:100%;
    background:#fff;
    -webkit-clip-path:polygon(0 100%,100% 100%,100% 100%,0 100%);
    clip-path:polygon(0 100%,100% 100%,100% 100%,0 100%)
}
.page-header.fixed::before{
    -webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
    clip-path:polygon(0 0,100% 0,100% 100%,0 100%)
}
.page-header__mobile-order-link{
    display:none
}
.page-header__row{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(0,1fr);
    grid-gap:2rem;
    min-height:8rem;
    align-items:center;
    color:#fff
}
@media only screen and (max-width:640px){
    .page-header__row{
        min-height:5.2rem
    }
}
.page-header__row:nth-child(1){
    -webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
    clip-path:polygon(0 0,100% 0,100% 100%,0 100%)
}
.page-header__row:nth-child(2){
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    color:var(--text-color);
    -webkit-clip-path:polygon(0 100%,100% 100%,100% 100%,0 100%);
    clip-path:polygon(0 100%,100% 100%,100% 100%,0 100%)
}
.page-header__row:nth-child(2) .page-header__logo{
    opacity:1
}
@media only screen and (min-width:641px){
    .page-header__row:nth-child(2) .page-header__order-link:hover{
        color:#fff;
        background-color:#000;
        border-color:#000
    }
}
@media only screen and (max-width:640px){
    .page-header__row:nth-child(2) .page-header__order-link{
        display:none
    }
    .page-header__row:nth-child(2) .page-header__mobile-order-link{
        display:block;
        justify-self:flex-end
    }
    .page-header__row:nth-child(2) .page-header__mobile-order-link svg{
        display:block;
        width:2.5rem;
        height:2.8rem;
        fill:#1c1c1c
    }
}
.page-header.dark .page-header__row:nth-child(1),.page-header.fixed .page-header__row:nth-child(1){
    -webkit-clip-path:polygon(0 0,100% 0,100% 0%,0 0%);
    clip-path:polygon(0 0,100% 0,100% 0%,0 0%)
}
.page-header.dark .page-header__row:nth-child(2),.page-header.fixed .page-header__row:nth-child(2){
    opacity:1;
    -webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
    clip-path:polygon(0 0,100% 0,100% 100%,0 100%)
}
.page-header__logo{
    font-size:3rem;
    font-family:var(--zhar-ptitza);
    line-height:1;
    text-transform:uppercase;
    opacity:0
}
@media only screen and (max-width:640px){
    .page-header__logo{
        font-size:1.5rem;
        grid-row:1/2;
        grid-column:2/3;
        margin-top:.3rem
    }
}
.page-header__nav-wrapper{
    display:flex;
    align-items:center
}
@media only screen and (max-width:640px){
    .page-header__nav-wrapper{
        grid-column:1/2;
        grid-row:1/2
    }
}
.page-header__wrapper{
    position:relative
}
.page-header__burger{
    display:inline-flex;
    flex-direction:column;
    width:3rem;
    flex-shrink:0;
    margin-right:4rem;
    align-items:center;
    justify-content:center
}
@media only screen and (max-width:640px){
    .page-header__burger{
        width:2.5rem
    }
}
.page-header__burger>span{
    width:100%;
    height:1.5px;
    margin-bottom:8px;
    background-color:currentColor;
    transition:transform .2s,opacity .2s;
    transform-origin:left center
}
@media only screen and (max-width:640px){
    .page-header__burger>span{
        height:1px
    }
}
.page-header__burger>span:last-child{
    margin-bottom:0
}
.page-header__burger>span:nth-child(3){
    transform:scaleX(.7)
}
@media only screen and (max-width:640px){
    .page-header__nav{
        display:none
    }
}
.page-header__nav>ul{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:3rem
}
.page-header__nav>ul>li>a,.page-header__order-link{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    letter-spacing:.05em;
    text-transform:uppercase
}
.page-header__nav>ul>li>a{
    display:inline;
    background-image:linear-gradient(currentColor,currentColor);
    background-position:0 100%;
    background-repeat:no-repeat;
    background-size:0 1px;
    transition:background-size .25s ease-out,color .2s
}
.page-header__nav>ul>li>a:hover{
    background-size:100% 1px
}
.page-header__order-link{
    margin-left:auto;
    flex-shrink:0;
    white-space:nowrap;
    text-align:center;
    border:.15rem solid currentColor;
    padding:1.5rem 2rem;
    gap:1rem;
    transition:color .2s,background-color .2s,border-color .2s;
    display:inline-flex;
    align-items:center;
    color:#fff
}
@media only screen and (max-width:640px){
    .page-header__order-link{
        font-style:normal;
        font-weight:700;
        font-size:.8rem;
        line-height:120%;
        gap:1rem;
        padding:1.1rem 1.6rem 1.1rem 2.4rem;
        border-width:1px;
        grid-column:2/-1;
        grid-row:1/2;
        justify-self:flex-end
    }
}
.page-header__order-link svg{
    flex-shrink:0;
    width:2.4rem;
    height:1.8rem;
    fill:currentColor;
    transition:fill .2s,transform .4s
}
@media only screen and (max-width:640px){
    .page-header__order-link svg{
        width:1.3rem;
        height:1rem
    }
}
.page-header__order-link:hover{
    background-color:#fff;
    color:var(--text-color);
    border-color:#fff
}
.page-header__order-link:hover svg{
    transform:translateX(.3rem)
}
.page-footer{
    padding-top:5.5rem;
    background:#332927;
    color:#fff;
    position:relative;
    z-index:1
}
.mobile-menu-open .page-footer,.modal-open .page-footer{
    padding-right:var(--sb-width, 0)
}
@media only screen and (max-width:640px){
    .page-footer{
        padding-top:3rem
    }
}
.page-footer::after{
    content:"";
    height:52.8rem;
    width:100%;
    display:block;
    background-image:url(../img/footer-pattern.svg);
    background-repeat:repeat-x;
    background-size:auto 120%;
    background-position:center top
}
@media only screen and (max-width:640px){
    .page-footer::after{
        height:30rem;
        background-size:auto 130%
    }
}
.page-footer__top-row{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-gap:2rem
}
@media only screen and (max-width:640px){
    .page-footer__top-row{
        grid-template-columns:minmax(0,1fr);
        grid-gap:0
    }
}
@media only screen and (min-width:641px){
    .page-footer__nav{
        grid-column:span 3
    }
    .page-footer__nav>ul{
        -moz-column-count:3;
        column-count:3;
        -moz-column-gap:2rem;
        column-gap:2rem
    }
    .page-footer__nav>ul>li{
        -moz-column-break-inside:avoid;
        break-inside:avoid;
        margin-bottom:4.5rem
    }
}
@media only screen and (max-width:640px){
    .page-footer__nav>ul>li{
        border-bottom:1px solid rgba(206,193,163,.2)
    }
}
.page-footer__contacts-title,.page-footer__nav>ul>li>a{
    font-style:normal;
    font-weight:500;
    font-size:2.8rem;
    line-height:120%;
    letter-spacing:.02em
}
.page-footer__nav>ul>li>a:link,.page-footer__nav>ul>li>a:visited{
    color:#fff
}
@media only screen and (min-width:641px){
    .page-footer__nav>ul>li>a{
        display:inline;
        text-decoration:none;
        background-image:linear-gradient(#fff,#fff);
        background-position:0 100%;
        background-repeat:no-repeat;
        background-size:0 1px;
        transition:background-size .25s ease-out,color .2s
    }
    .page-footer__nav>ul>li>a:hover{
        color:#fff;
        background-size:100% 1px
    }
}
@media only screen and (max-width:640px){
    .page-footer__nav>ul>li>a{
        font-style:normal;
        font-weight:500;
        font-size:1.6rem;
        line-height:120%;
        display:flex;
        align-items:center;
        gap:2rem;
        justify-content:space-between;
        padding:1.7rem 0
    }
    .page-footer__nav>ul>li>a::after{
        content:"";
        width:1.7rem;
        height:1.7rem;
        flex-shrink:0;
        background-image:url(../img/diamond-shape.svg);
        background-size:contain;
        background-repeat:no-repeat;
        background-position:center;
        transition:transform .3s
    }
}
.page-footer__nav>ul>li>ul{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-gap:1rem;
    margin-top:1.2rem
}
@media only screen and (max-width:640px){
    .page-footer__nav>ul>li>ul{
        margin:0;
        height:0;
        overflow:hidden
    }
    .page-footer__nav>ul>li>ul>li:last-child{
        padding-bottom:2.5rem
    }
}
.page-footer__nav>ul>li>ul>li>a{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    color:#cec1a3;
    display:inline;
    text-decoration:none
}
.page-footer__bottom-link:link,.page-footer__bottom-link:visited,.page-footer__nav>ul>li>ul>li>a:link,.page-footer__nav>ul>li>ul>li>a:visited{
    color:#cec1a3
}
.page-footer__bottom-link:hover,.page-footer__contacts-content a:hover,.page-footer__nav>ul>li>ul>li>a:hover{
    color:#fff;
    background-size:100% 1px
}
@media only screen and (max-width:640px){
    .page-footer__nav>ul>li>ul>li>a{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:130%
    }
    .page-footer__nav .js-accordion.active .js-accordion-btn::after{
        transform:rotate(45deg)
    }
}
.page-footer__contacts-title{
    margin-bottom:1.2rem
}
@media only screen and (max-width:640px){
    .page-footer__contacts-title{
        font-style:normal;
        font-weight:500;
        font-size:1.6rem;
        line-height:120%;
        display:flex;
        align-items:center;
        gap:2rem;
        justify-content:space-between;
        padding:1.7rem 0;
        margin:0
    }
    .page-footer__contacts-title::after{
        content:"";
        width:1.7rem;
        height:1.7rem;
        flex-shrink:0;
        background-image:url(../img/diamond-shape.svg);
        background-size:contain;
        background-repeat:no-repeat;
        background-position:center
    }
}
.page-footer__contacts-content{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:150%;
    color:#cec1a3
}
@media only screen and (max-width:640px){
    .page-footer__contacts-content{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:150%;
        height:0;
        overflow:hidden
    }
}
.page-footer__contacts-content a,.page-footer__nav>ul>li>ul>li>a{
    background-image:linear-gradient(#fff,#fff);
    background-position:0 100%;
    background-repeat:no-repeat;
    background-size:0 1px;
    transition:background-size .25s ease-out,color .2s
}
@media only screen and (max-width:640px){
    .page-footer__contacts-content-inner{
        padding-bottom:2.5rem
    }
}
.page-footer__social-list{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:2.8rem;
    row-gap:1.4rem;
    margin-top:5rem
}
@media only screen and (max-width:640px){
    .page-footer__social-list{
        margin-top:3.7rem;
        gap:2.4rem;
        row-gap:1.2rem
    }
}
.page-footer__social-link{
    display:block
}
.page-footer__social-link-icon{
    height:2.5rem;
    width:auto;
    display:block;
    max-width:none;
    -o-object-fit:contain;
    object-fit:contain
}
@media only screen and (max-width:640px){
    .page-footer__social-link-icon{
        height:2.2rem
    }
}
.page-footer__bottom-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:2rem;
    padding-top:1.2rem;
    border-top:1px solid rgba(206,193,163,.5);
    padding-bottom:6.2rem
}
@media only screen and (max-width:640px){
    .page-footer__bottom-row{
        display:none
    }
}
.page-footer__bottom-links{
    display:flex;
    align-items:center;
    gap:4.7rem;
    row-gap:2.4rem;
    flex-wrap:wrap
}
.page-footer__bottom-link{
    display:inline;
    text-decoration:none;
    background-image:linear-gradient(#fff,#fff);
    background-position:0 100%;
    background-repeat:no-repeat;
    background-size:0 1px;
    transition:background-size .25s ease-out,color .2s
}
.page-footer__bottom-link,.page-footer__copyright{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    color:#cec1a3
}
.page-footer__copyright:link,.page-footer__copyright:visited{
    color:#cec1a3
}
.page-footer__arrow-wrapper{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    padding-bottom:4rem
}
@media only screen and (max-width:640px){
    .page-footer__arrow-wrapper{
        padding-bottom:2.7rem;
        padding-bottom:0
    }
    .page-footer__contacts-wrapper{
        border-bottom:1px solid rgba(206,193,163,.2)
    }
}
.page-footer__arrow-up{
    display:inline-flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:9.2rem;
    height:9.2rem;
    border-radius:50%;
    border:1px solid #cec1a3
}
@media only screen and (max-width:640px){
    .page-footer__arrow-up{
        width:6.6rem;
        height:6.6rem
    }
}
.page-footer__arrow-up svg{
    width:3.7rem;
    height:5rem;
    fill:#cec1a3;
    transition:fill .3s,transform .3s
}
@media only screen and (max-width:640px){
    .page-footer__arrow-up svg{
        width:2.7rem;
        height:3.5rem
    }
}
.no-touch .page-footer__arrow-up:hover svg,.touch .page-footer__arrow-up:active svg{
    transform:translateY(-.5rem);
    transition:fill .3s,transform .3s ease-out
}
.intro{
    position:relative;
    color:#fff
}
.intro .container{
    pointer-events:none
}
.intro__bg{
    overflow:hidden
}
.intro__bg,.intro__parallax-wrapper{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%
}
.intro__bg-slider{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column
}
.intro__bg-slider .swiper{
    flex-grow:1;
    display:flex;
    flex-direction:column;
    margin:0;
    width:100%
}
.intro__bg-slider .swiper-wrapper{
    flex-grow:1
}
.intro__bg-slider .swiper-slide{
    position:relative
}
.intro__bg-slider .swiper-slide::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,.5))
}
.intro__bg-image,.intro__bg-video,.news__slider-card-image-container img{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.intro__bg-video{
    opacity:0;
    visibility:hidden;
    transition:opacity .3s,visibility 0s linear .3s
}
.intro__bg-video.playing{
    opacity:1;
    visibility:inherit;
    transition:opacity .3s,visibility .3s
}
.intro__content{
    padding:10rem 0;
    min-height:min(100vh,108rem);
    display:flex;
    flex-direction:column;
    justify-content:center;
    position:relative
}
@media only screen and (max-width:640px){
    .intro__content{
        padding:2rem 0;
        min-height:100vh;
        min-height:50rem;
        min-height:var(--client-height, 100vh)
    }
}
.intro__content-slider{
    margin:auto 0;
    position:relative;
    z-index:1
}
.intro__controls{
    display:contents
}
@media only screen and (max-width:640px){
    .intro__controls{
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:1.5rem;
        z-index:100;
        max-width:100%;
        padding-bottom:7rem
    }
}
.intro__contacts{
    pointer-events:all
}
@media only screen and (min-width:641px){
    .intro__contacts{
        position:fixed;
        z-index:120;
        top:50%;
        transform:translateY(-50%);
        right:1.5rem
    }
    .mobile-menu-open .intro__contacts{
        right:calc(var(--sb-width, 0) + 1.5rem)
    }
}
@media only screen and (max-width:640px){
    .intro__contacts{
        position:fixed;
        z-index:100;
        left:0;
        width:100%;
        display:flex;
        justify-content:center;
        bottom:1.8rem
    }
}
.intro__contacts-list{
    display:flex;
    flex-direction:column
}
@media only screen and (max-width:640px){
    .intro__contacts-list{
        flex-direction:row
    }
}
.intro__contacts-list-item:last-child{
    margin-bottom:0
}
.intro__contacts-link{
    width:6rem;
    height:6rem;
    border-top:1px solid #bbae9b;
    display:inline-flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    background-color:#e2d8c0;
    transition:background-color .2s,border-color .2s
}
@media only screen and (max-width:640px){
    .intro__contacts-link{
        width:5rem;
        height:5rem;
        border:0;
        border-right:1px solid #bbae9b
    }
}
.intro__contacts-link svg{
    width:3rem;
    height:3rem;
    transition:fill .2s,stroke .2s;
    stroke:#3a241f;
    stroke-width:1px
}
@media only screen and (max-width:640px){
    .intro__contacts-link svg{
        width:2.5rem;
        height:2.5rem
    }
}
.intro__contacts-list-item:first-child .intro__contacts-link{
    border-top-left-radius:3rem;
    border-top-right-radius:3rem;
    padding-top:.5rem
}
@media only screen and (min-width:641px){
    .intro__contacts-list-item:first-child .intro__contacts-link{
        border:0
    }
}
@media only screen and (max-width:640px){
    .intro__contacts-list-item:first-child .intro__contacts-link{
        padding:0;
        border-radius:0;
        border-top-left-radius:3rem;
        border-bottom-left-radius:3rem
    }
}
.intro__contacts-list-item:last-child .intro__contacts-link{
    border-bottom-left-radius:3rem;
    border-bottom-right-radius:3rem;
    padding-bottom:.5rem
}
@media only screen and (max-width:640px){
    .intro__contacts-list-item:last-child .intro__contacts-link{
        padding:0;
        border-radius:0;
        border-top-right-radius:3rem;
        border-bottom-right-radius:3rem;
        border:0
    }
}
.no-touch .intro__contacts-link:hover,.touch .intro__contacts-link:active{
    background-color:#bbae9b;
    border-color:#bbae9b
}
.no-touch .intro__contacts-link:hover svg,.touch .intro__contacts-link:active svg{
    stroke:#fff
}
.intro__pagination{
    position:absolute;
    left:50%!important;
    transform:translateX(-50%);
    z-index:40;
    bottom:3.5rem!important;
    display:flex;
    align-items:center;
    justify-content:center;
    width:auto!important;
    gap:1.8rem;
    pointer-events:all
}
@media only screen and (max-width:640px){
    .intro__pagination{
        position:static;
        gap:1.4rem;
        transform:none;
        order:-1
    }
}
.intro__pagination .swiper-pagination-bullet{
    margin:0!important;
    width:.8rem;
    height:.8rem;
    opacity:1!important;
    background:rgba(255,255,255,.36);
    position:relative
}
@media only screen and (max-width:640px){
    .intro__pagination .swiper-pagination-bullet{
        width:.6rem;
        height:.6rem
    }
}
.intro__pagination .swiper-pagination-bullet::before{
    content:"";
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%) scale(0);
    width:1.9rem;
    height:1.9rem;
    background-image:url(../img/diamond-shape.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    transition:transform .2s
}
@media only screen and (max-width:640px){
    .intro__pagination .swiper-pagination-bullet::before{
        width:1.4rem;
        height:1.4rem
    }
}
.intro__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active::before{
    transform:translate(-50%,-50%) scale(1)
}
.intro__content-slider-card{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    -webkit-user-select:none;
    -moz-user-select:none;
    user-select:none
}
.intro__content-slider-card-logo{
    width:11rem;
    height:auto;
    margin-bottom:3.8rem
}
@media only screen and (max-width:640px){
    .intro__content-slider-card-logo{
        width:4.4rem;
        margin-bottom:1.6rem
    }
}
.intro__content-slider-card-title{
    font-style:normal;
    font-weight:700;
    font-size:6.4rem;
    line-height:120%;
    text-align:center;
    letter-spacing:.05em;
    text-transform:uppercase;
    font-family:var(--zhar-ptitza)
}
@media only screen and (max-width:640px){
    .intro__content-slider-card-title{
        font-style:normal;
        line-height:120%;
        font-size:2.8rem
    }
}
.intro__content-slider-card-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    text-align:center;
    letter-spacing:.05em;
    text-transform:uppercase;
    max-width:53rem;
    margin-top:.6rem
}
@media only screen and (max-width:640px){
    .intro__content-slider-card-text{
        font-style:normal;
        font-weight:600;
        font-size:1rem;
        line-height:120%
    }
}
.subscribe{
    padding-bottom:5.5rem;
    background:#332927;
    color:#fff;
    padding-top:6.4rem;
    position:relative;
    z-index:1
}
@media only screen and (max-width:640px){
    .subscribe{
        padding-top:4rem;
        padding-bottom:0
    }
}
.subscribe__content{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center
}
.subscribe__logo{
    width:9rem;
    height:auto;
    margin-bottom:2.7rem
}
@media only screen and (max-width:640px){
    .subscribe__logo{
        width:5rem;
        margin-bottom:3rem
    }
}
.subscribe__heading{
    font-style:normal;
    font-weight:700;
    font-size:4rem;
    line-height:140%;
    text-align:center;
    text-transform:uppercase;
    font-family:var(--zhar-ptitza)
}
@media only screen and (max-width:640px){
    .subscribe__heading{
        font-style:normal;
        font-weight:400;
        font-size:2rem;
        line-height:140%;
        text-align:center;
        letter-spacing:.05em;
        text-transform:uppercase
    }
}
.subscribe__heading-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    text-align:center;
    letter-spacing:.05em;
    margin-top:.2rem
}
@media only screen and (max-width:640px){
    .subscribe__heading-text{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        margin-top:1.5rem
    }
}
.subscribe__form{
    width:100%;
    max-width:45rem;
    margin:0 auto;
    margin-top:5rem
}
@media only screen and (max-width:640px){
    .subscribe__form{
        max-width:none;
        margin-top:4rem;
        display:flex;
        flex-direction:column;
        align-items:stretch;
        padding:0;
        border:0;
        gap:0
    }
}
.subscribe__form .parsley-errors-list.filled{
    color:#cec1a3;
    font-size:1.2rem;
    line-height:1.2;
    margin-top:.5rem;
    text-align:left
}
@media only screen and (max-width:640px){
    .subscribe__form .parsley-errors-list.filled{
        text-align:center
    }
}
.subscribe__form-row{
    display:flex;
    align-items:center;
    gap:2rem;
    padding:1rem 0;
    border-bottom:1px solid #cec1a3
}
@media only screen and (max-width:640px){
    .subscribe__form-row{
        flex-direction:column;
        align-items:stretch;
        padding:0;
        border:0;
        gap:1.5rem;
        display:contents
    }
}
.subscribe__form-input{
    width:50%;
    flex-grow:1;
    font-style:normal;
    font-weight:400;
    font-size:2rem;
    line-height:120%;
    letter-spacing:.05em;
    text-transform:uppercase;
    color:#cec1a3
}
@media only screen and (max-width:640px){
    .subscribe__form-input{
        width:100%;
        flex-grow:0;
        font-style:normal;
        font-weight:400;
        font-size:1.6rem;
        height:3.5rem;
        text-align:center;
        line-height:120%;
        border-bottom:1px solid #cec1a3
    }
}
.subscribe__form-input::-webkit-input-placeholder{
    color:#cec1a3
}
.subscribe__form-input:-moz-placeholder,.subscribe__form-input::-moz-placeholder{
    color:#cec1a3
}
.subscribe__form-input:-ms-input-placeholder{
    color:#cec1a3
}
.subscribe__form-submit{
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .subscribe__form-submit{
        align-self:center;
        order:10;
        margin-top:1.5rem
    }
}
.subscribe__form-submit svg{
    width:3.2rem;
    height:2.5rem;
    fill:#cec1a3;
    display:block;
    transition:transform .4s
}
@media only screen and (max-width:640px){
    .subscribe__form-submit svg{
        width:3.8rem;
        height:2.8rem
    }
}
.no-touch .about__link:hover svg,.no-touch .subscribe__form-submit:hover svg,.touch .about__link:active svg,.touch .subscribe__form-submit:active svg{
    transform:translateX(.3rem)
}
.gallery{
    padding-top:8rem;
    background:#332927;
    color:#fff;
    position:relative;
    z-index:1
}
@media only screen and (max-width:640px){
    .gallery{
        padding-top:3rem
    }
}
.gallery:last-child{
    padding-bottom:6rem
}
@media only screen and (max-width:640px){
    .gallery:last-child{
        padding-bottom:3rem
    }
}
.programs+.gallery{
    background:0 0;
    padding-top:0;
    padding-bottom:12rem
}
@media only screen and (max-width:640px){
    .programs+.gallery{
        padding-bottom:5rem
    }
}
.about-intro+.gallery{
    background:0 0;
    padding-top:0;
    padding-bottom:12rem
}
@media only screen and (max-width:640px){
    .about-intro+.gallery{
        padding-bottom:4.5rem
    }
}
.spa+.gallery{
    background:#fff;
    color:var(--text-color);
    padding-top:2.2rem;
    padding-bottom:16rem
}
@media only screen and (max-width:640px){
    .spa+.gallery{
        padding-bottom:9rem;
        padding-top:6rem
    }
}
.gallery__slider .swiper{
    overflow:visible
}
.gallery__slider .swiper-slide{
    width:-webkit-max-content;
    width:-moz-max-content;
    width:max-content;
    margin:0 3.6rem
}
@media only screen and (max-width:640px){
    .gallery__slider .swiper-slide{
        margin:0 1.2rem
    }
}
.gallery__slider-card{
    position:relative;
    overflow:hidden
}
.gallery__slider-card--type-1{
    width:32.8rem
}
@media only screen and (max-width:640px){
    .gallery__slider-card--type-1{
        width:18.9rem
    }
}
.gallery__slider-card--type-1::before{
    content:"";
    display:block;
    padding-bottom:100%
}
.gallery__slider-card--type-2{
    width:28rem;
    margin-top:5.4rem
}
@media only screen and (max-width:640px){
    .gallery__slider-card--type-2{
        width:16.2rem;
        margin-top:3rem
    }
}
.gallery__slider-card--type-2::before{
    content:"";
    display:block;
    padding-bottom:140%
}
.gallery__slider-card--type-3{
    width:40rem;
    margin-top:10rem
}
@media only screen and (max-width:640px){
    .gallery__slider-card--type-3{
        width:23.4rem;
        margin-top:6rem
    }
}
.gallery__slider-card--type-3::before{
    content:"";
    display:block;
    padding-bottom:60%
}
.gallery__slider-card-image{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover;
    -webkit-user-drag:none;
    -webkit-user-select:none;
    -moz-user-select:none;
    user-select:none
}
.spa{
    background-color:#fff;
    position:relative;
    z-index:1
}
.spa__content{
    padding:8rem 0;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center
}
@media only screen and (max-width:640px){
    .spa__content{
        padding:0;
        padding-top:4.7rem;
        align-items:stretch;
        text-align:left
    }
}
.spa__main-wrapper{
    position:relative;
    z-index:1
}
@media only screen and (min-width:641px){
    .spa__main-wrapper::after,.spa__main-wrapper::before{
        content:"";
        bottom:0;
        background-size:contain;
        background-position:right center;
        background-repeat:no-repeat;
        position:absolute;
        z-index:-1
    }
    .spa__main-wrapper::after{
        right:0;
        width:26.6rem;
        height:47.5rem;
        background-image:url(../img/spa-right-pattern.svg)
    }
    .spa__main-wrapper::before{
        width:29.2rem;
        height:61rem;
        left:0;
        background-image:url(../img/spa-left-pattern.svg)
    }
}
@media only screen and (max-width:640px){
    .spa__main-wrapper::before{
        content:"";
        right:0;
        top:0;
        background-image:url(../img/spa-mobile-pattern.svg);
        background-size:contain;
        background-position:right center;
        background-repeat:no-repeat;
        position:absolute;
        z-index:-1;
        width:17rem;
        height:18rem;
        margin-top:-4rem
    }
}
.spa__heading{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:140%;
    text-align:center;
    text-transform:uppercase;
    font-family:var(--zhar-ptitza)
}
@media only screen and (min-width:641px){
    .spa__heading br{
        display:none
    }
}
@media only screen and (max-width:640px){
    .spa__heading{
        font-style:normal;
        font-weight:700;
        text-align:left;
        margin-bottom:1rem;
        font-size:3.8rem;
        line-height:1.2
    }
}
.spa__text{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:150%;
    max-width:75rem;
    margin:0 auto;
    margin-bottom:2.5rem
}
@media only screen and (max-width:640px){
    .spa__text{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:150%;
        margin-bottom:2rem;
        text-align:left
    }
}
.spa__list{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:center;
    gap:2rem;
    margin-bottom:3rem
}
@media only screen and (max-width:640px){
    .spa__list{
        gap:1.5rem;
        margin-bottom:2.5rem;
        justify-content:flex-start
    }
}
.spa__list-item{
    flex-shrink:0
}
.spa__item-link{
    border:1px solid #ead7ca;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:1rem;
    font-style:normal;
    font-weight:500;
    font-size:1.2rem;
    line-height:1.5rem;
    gap:.6rem;
    flex-shrink:0;
    white-space:nowrap;
    transition:border-color .2s
}
@media only screen and (max-width:640px){
    .spa__item-link{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:1.7rem;
        padding:1rem
    }
}
.about__text-content::before,.spa__item-link::before{
    content:"";
    background-image:url(../img/diamond-shape-black.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center
}
.spa__item-link::before{
    flex-shrink:0;
    width:1.4rem;
    height:1.4rem
}
.no-touch .spa__item-link:hover,.touch .spa__item-link:active{
    border-color:var(--text-color)
}
.spa__link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-style:normal;
    font-weight:700;
    font-size:1.6rem;
    line-height:2rem;
    padding:1.4rem 2.8rem;
    width:27rem;
    background:#000;
    color:#fff;
    transition:background-color .2s,color .2s
}
@media only screen and (max-width:640px){
    .spa__link{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:1.7rem;
        width:100%;
        padding:1.3rem 2.6rem
    }
}
.spa__link:link,.spa__link:visited{
    color:#fff
}
.no-touch .apartments__slider-card-btn:hover .apartments__slider-card-btn-text,.no-touch .rest-together__link:hover .rest-together__link-text,.no-touch .room__order-link:hover .room__order-link-text,.no-touch .rooms-catalog__card-btn:hover .rooms-catalog__card-btn-text,.no-touch .rooms__card-btn:hover .rooms__card-btn-text,.no-touch .spa__link:hover .spa__link-text,.no-touch .zone__btn:hover .zone__btn-text{
    transform:translateX(-1rem)
}
.no-touch .spa__link:hover .spa__link-text svg{
    opacity:1;
    visibility:inherit;
    transition:opacity .2s,visibility .2s
}
.spa__link-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.spa__link-text svg{
    position:absolute;
    left:100%;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s;
    fill:currentColor;
    width:2rem;
    height:2rem;
    margin-left:1rem;
    top:50%;
    transform:translateY(-50%);
    margin-top:.2rem
}
.spa__image-wrapper{
    position:relative;
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0);
    z-index:10
}
.spa__image{
    display:block;
    width:100%;
    height:auto
}
.about{
    padding-top:6.2rem;
    padding-bottom:14rem;
    position:relative;
    background-color:#fff;
    z-index:1
}
@media only screen and (max-width:640px){
    .about{
        padding-top:4rem;
        padding-bottom:4rem
    }
}
@media only screen and (min-width:641px){
    .about__row{
        display:grid;
        grid-template-columns:repeat(12,minmax(0,1fr));
        grid-gap:2rem;
        align-content:flex-start;
        align-items:flex-start
    }
}
@media only screen and (max-width:640px){
    .about__row{
        grid-template-columns:minmax(0,1fr);
        display:grid;
        grid-gap:2.8rem
    }
}
@media only screen and (min-width:641px){
    .about__col:nth-child(1){
        grid-column:1/8
    }
    .about__col:nth-child(2){
        grid-column:9/-1;
        display:grid;
        grid-template-columns:repeat(4,minmax(0,1fr));
        grid-gap:2rem;
        padding-top:7rem
    }
    .about__col:nth-child(2) .about__image-wrapper{
        grid-column:1/4;
        margin-bottom:7rem
    }
}
@media only screen and (max-width:640px){
    .about__col:nth-child(2) .about__image-wrapper{
        display:none
    }
}
.about__heading{
    font-style:normal;
    font-weight:400;
    font-size:9rem;
    line-height:120%;
    letter-spacing:.05em;
    color:#3a241f;
    font-family:var(--zhar-ptitza);
    margin-bottom:4rem
}
@media only screen and (max-width:640px){
    .about__heading{
        font-style:normal;
        font-weight:400;
        line-height:120%;
        margin-bottom:1rem;
        font-size:3.5rem
    }
}
.about__image-wrapper{
    position:relative;
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0)
}
.about__image-parallax{
    display:block
}
.about__image{
    display:block;
    width:100%;
    height:auto
}
.about__text-content{
    grid-column:1/-1;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    margin-bottom:4.5rem;
    max-width:33rem
}
@media only screen and (max-width:640px){
    .about__text-content{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        margin-bottom:2.5rem;
        max-width:none
    }
}
.about__text-content::before{
    width:2.4rem;
    height:2.4rem;
    display:block;
    margin-bottom:3rem
}
@media only screen and (max-width:640px){
    .about__text-content::before{
        width:2.1rem;
        height:2.1rem;
        margin-bottom:1.5rem
    }
}
.about__link{
    display:inline-flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.8rem;
    line-height:120%;
    gap:1.5rem;
    grid-column:1/-1
}
@media only screen and (max-width:640px){
    .about__link{
        font-style:normal;
        font-weight:500;
        font-size:1.6rem;
        line-height:120%;
        gap:1.1rem
    }
}
.about__link svg{
    flex-shrink:0;
    fill:currentColor;
    width:2.7rem;
    height:2.1rem;
    transition:fill .2s,transform .3s;
    margin-top:.15rem
}
@media only screen and (max-width:640px){
    .about__link svg{
        width:2.5rem;
        height:1.8rem;
        margin-top:.1rem
    }
}
.about__link,.about__link:link,.about__link:visited{
    color:#968a71
}
.news{
    padding-top:4.8rem;
    padding-bottom:7.4rem;
    position:relative;
    z-index:1;
    background:#fff
}
.rooms+.news{
    padding-top:0
}
@media only screen and (max-width:640px){
    .news{
        padding-top:4rem;
        padding-bottom:4rem
    }
    .rooms+.news{
        padding-top:0
    }
}
.news__top-row{
    display:flex;
    align-items:center;
    gap:3rem;
    margin-bottom:4rem;
    justify-content:space-between
}
@media only screen and (max-width:640px){
    .news__top-row{
        display:contents
    }
}
.news__heading{
    font-style:normal;
    font-weight:700;
    font-size:9rem;
    line-height:120%;
    letter-spacing:.05em;
    font-family:var(--zhar-ptitza)
}
@media only screen and (max-width:640px){
    .news__heading{
        font-style:normal;
        font-weight:700;
        color:#000;
        text-align:center;
        font-size:3.8rem;
        line-height:1;
        margin-bottom:1.7rem
    }
}
.news__arrows{
    display:flex;
    align-items:center;
    gap:2.8rem;
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .news__arrows{
        display:none
    }
}
.news__arrows-btn{
    flex-shrink:0;
    transition:opacity .2s
}
.news__arrows-btn.swiper-button-disabled{
    opacity:.5;
    cursor:default
}
.news__arrows-btn svg{
    width:5rem;
    height:3.7rem;
    fill:#000;
    transition:fill .2s
}
.no-touch .news__arrows-btn:not(.swiper-button-disabled):hover svg,.touch .news__arrows-btn:not(.swiper-button-disabled):active svg{
    fill:#968a71
}
.news__slider .swiper-slide{
    width:25%
}
@media only screen and (max-width:640px){
    .news__slider .swiper-slide{
        width:18.8rem;
        margin-right:3.3rem
    }
    .news__slider .swiper-slide:last-child{
        margin-right:0
    }
    .news__slider .swiper{
        overflow:visible
    }
}
.news__slider-card{
    display:flex;
    flex-direction:column
}
.no-touch .apartments__slider-card-mobile-btn:hover svg,.no-touch .features__link:hover svg,.no-touch .features__slider-card-link:hover svg,.no-touch .menu__mobile-order-link:hover svg,.no-touch .menu__order-link:hover svg,.no-touch .menu__submenu-link:hover svg,.no-touch .news__slider-card:hover .news__slider-card-link svg,.touch .apartments__slider-card-mobile-btn:active svg,.touch .features__link:active svg,.touch .features__slider-card-link:active svg,.touch .menu__mobile-order-link:active svg,.touch .menu__order-link:active svg,.touch .menu__submenu-link:active svg{
    transform:translateX(.3rem)
}
.news__slider-card-image-container{
    position:relative;
    background:#ede8dd;
    margin-bottom:2.2rem
}
@media only screen and (max-width:640px){
    .news__slider-card-image-container{
        margin-bottom:2rem
    }
}
.news__slider-card-image-container::before{
    content:"";
    display:block;
    padding-bottom:120%
}
.news__slider-card-title{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:120%;
    margin-bottom:1.2rem
}
@media only screen and (max-width:640px){
    .news__slider-card-title{
        font-style:normal;
        font-weight:700;
        font-size:1.8rem;
        line-height:120%
    }
}
.news__slider-card-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    margin-bottom:1.4rem
}
@media only screen and (max-width:640px){
    .news__slider-card-text{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:170%
    }
}
.features__slider-card-text p:last-child,.features__slider-card-text ul>li:last-child,.features__text p:last-child,.features__text ul>li:last-child,.news__slider-card-text:last-child{
    margin-bottom:0
}
.news__slider-card-link{
    display:inline-flex;
    align-items:center;
    align-self:flex-start;
    font-style:normal;
    font-weight:500;
    font-size:1.8rem;
    color:#968a71;
    line-height:120%;
    gap:1.5rem
}
@media only screen and (max-width:640px){
    .news__slider-card-link{
        font-style:normal;
        font-weight:500;
        font-size:1.6rem;
        line-height:120%;
        gap:1.1rem
    }
}
.news__slider-card-link svg{
    width:2.7rem;
    height:2.1rem;
    flex-shrink:0;
    fill:currentColor;
    transition:transform .2s
}
@media only screen and (max-width:640px){
    .news__slider-card-link svg{
        width:2.4rem;
        height:1.8rem
    }
}
.apartments{
    padding-top:3.5rem;
    padding-bottom:4rem;
    background:#ede8dd;
    position:relative;
    z-index:1
}
@media only screen and (max-width:640px){
    .apartments{
        padding-top:3.4rem;
        padding-bottom:4rem
    }
}
.apartments__heading{
    text-align:center;
    font-style:normal;
    font-weight:400;
    font-size:9rem;
    line-height:100%;
    letter-spacing:.05em;
    font-family:var(--zhar-ptitza);
    color:#3a241f;
    margin-bottom:3.8rem
}
@media only screen and (max-width:640px){
    .apartments__heading{
        font-style:normal;
        font-weight:700;
        margin-bottom:3rem;
        color:#000;
        font-size:3.8rem;
        line-height:1
    }
}
.apartments__slider{
    max-width:1264rem;
    margin:0 auto;
    width:100%
}
@media only screen and (min-width:641px){
    .apartments__slider .swiper-slide{
        width:50%
    }
    .apartments__slider .swiper-slide:nth-child(even){
        padding-top:6rem
    }
}
@media only screen and (max-width:640px){
    .apartments__slider{
        margin:0;
        max-width:none
    }
    .apartments__slider .swiper{
        overflow:visible
    }
    .apartments__slider .swiper-slide{
        width:27.7rem;
        margin-right:1.3rem;
        width:90%
    }
    .apartments__slider .swiper-slide:last-child{
        margin-right:0
    }
}
.apartments__slider-card{
    display:flex;
    flex-direction:column
}
@media only screen and (max-width:640px){
    .apartments__slider-card{
        flex-grow:1
    }
}
.apartments__slider-card-image-container{
    position:relative;
    margin-bottom:2rem;
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0)
}
@media only screen and (max-width:640px){
    .apartments__slider-card-image-container{
        margin-bottom:1.2rem
    }
}
.apartments__slider-card-image-container::before{
    content:"";
    display:block;
    padding-bottom:56.25%
}
.apartments__slider-card-image-parallax-wrapper{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%
}
.apartments__slider-card-image,.apartments__slider-card-video-wrapper video{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.apartments__slider-card-video-wrapper{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    z-index:10;
    opacity:0;
    visibility:hidden;
    transition:opacity .3s,visibility 0s linear .3s
}
.video-shown .apartments__slider-card-video-wrapper{
    opacity:1;
    visibility:inherit;
    transition:opacity .3s,visibility .3s
}
.apartments__slider-card-title{
    font-style:normal;
    font-weight:400;
    font-size:4rem;
    line-height:140%;
    text-transform:uppercase;
    font-family:var(--zhar-ptitza);
    margin-bottom:.5rem
}
@media only screen and (max-width:640px){
    .apartments__slider-card-title{
        font-style:normal;
        font-weight:700;
        font-size:2rem;
        line-height:140%
    }
}
.apartments__slider-card-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    margin-bottom:1.5rem
}
@media only screen and (max-width:640px){
    .apartments__slider-card-text{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:170%;
        margin-bottom:.7rem
    }
}
.apartments__slider-card-features{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:3rem;
    row-gap:1.5rem;
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .apartments__slider-card-features{
        gap:2.5rem;
        row-gap:1.2rem
    }
}
.apartments__slider-card-features-item{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    display:inline-flex;
    align-items:center;
    gap:.8rem
}
@media only screen and (max-width:640px){
    .apartments__slider-card-features-item{
        font-style:normal;
        font-weight:500;
        font-size:1rem;
        line-height:1.2rem;
        gap:.6rem
    }
}
.apartments__slider-card-features-item::before{
    content:"";
    display:block;
    width:1.4rem;
    height:1.4rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    background-image:url(../img/diamond-shape-black.svg);
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .apartments__slider-card-features-item::before{
        width:1.4rem;
        height:1.4rem
    }
}
.apartments__slider-card-btns{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:2rem;
    margin-top:auto
}
@media only screen and (max-width:640px){
    .apartments__slider-card-btns{
        grid-gap:1rem;
        grid-template-columns:minmax(0,1fr);
        margin:0
    }
}
.apartments__slider-card-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #000;
    transition:background-color .2s,color .2s,border-color .2s;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:2rem;
    text-align:center;
    padding:1.4rem 2.8rem;
    color:#000
}
@media only screen and (max-width:640px){
    .apartments__slider-card-btn{
        font-style:normal;
        font-weight:500;
        font-size:1.1rem;
        line-height:140%;
        padding:1rem 2rem
    }
    .apartments__slider-card-btn:not(.apartments__slider-card-btn--filled){
        display:none
    }
}
.apartments__slider-card-btn:link,.apartments__slider-card-btn:visited{
    color:#000
}
.apartments__slider-card-btn--filled{
    background-color:#000;
    color:#fff;
    font-weight:700
}
.apartments__slider-card-btn--filled:link,.apartments__slider-card-btn--filled:visited{
    color:#fff
}
.no-touch .apartments__slider-card-btn:hover .apartments__slider-card-btn-text svg,.no-touch .rest-together__link:hover .rest-together__link-text svg,.no-touch .rooms__card-btn:hover .rooms__card-btn-text svg,.no-touch .zone__btn:hover .zone__btn-text svg{
    opacity:1;
    visibility:inherit;
    transition:opacity .2s,visibility .2s
}
.apartments__slider-card-btn-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.apartments__slider-card-btn-text svg{
    position:absolute;
    left:100%;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s;
    fill:currentColor;
    width:2rem;
    height:2rem;
    margin-left:1rem;
    top:50%;
    transform:translateY(-50%);
    margin-top:.2rem
}
.apartments__slider-controls{
    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:6rem
}
@media only screen and (max-width:640px){
    .apartments__slider-controls{
        display:none
    }
}
.apartments__slider-arrow{
    flex-shrink:0;
    transition:opacity .2s
}
.apartments__slider-arrow.swiper-button-disabled{
    opacity:.5;
    cursor:default
}
.apartments__slider-arrow svg{
    flex-shrink:0;
    fill:#000;
    transition:fill .2s,transform .2s;
    width:2.7rem;
    height:2rem
}
.apartments__slider-pagination{
    width:6rem;
    flex-shrink:0;
    text-align:center;
    font-style:normal;
    font-weight:500;
    font-size:1.8rem;
    line-height:2.2rem
}
@media only screen and (max-width:640px){
    .apartments__slider-pagination{
        display:none
    }
}
.apartments__slider-card-mobile-btn{
    display:none
}
@media only screen and (max-width:640px){
    .apartments__slider-card-mobile-btn{
        display:inline-flex;
        align-items:center;
        color:#968a71;
        font-style:normal;
        font-weight:500;
        font-size:1.6rem;
        line-height:120%;
        gap:1.1rem;
        margin-bottom:2rem;
        margin-top:auto
    }
}
.apartments__slider-card-mobile-btn svg{
    flex-shrink:0;
    fill:currentColor;
    width:2.7rem;
    height:2.1rem;
    transition:fill .2s,transform .3s;
    margin-top:.15rem
}
@media only screen and (max-width:640px){
    .apartments__slider-card-mobile-btn svg{
        width:2.5rem;
        height:1.8rem;
        margin-top:.1rem
    }
}
.apartments__slider-card-mobile-btn:link,.apartments__slider-card-mobile-btn:visited{
    color:#968a71
}
.rooms{
    position:relative;
    background-color:#fff;
    z-index:2;
    padding-bottom:30rem
}
.rooms--short-padding{
    padding-bottom:15rem
}
@media only screen and (max-width:640px){
    .rooms{
        padding-bottom:6rem
    }
}
.rooms__content{
    width:100%;
    margin:0 auto;
    max-width:126rem
}
.rooms__list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:13rem
}
@media only screen and (max-width:640px){
    .rooms__list{
        grid-template-columns:minmax(0,1fr);
        grid-gap:6rem
    }
}
.rooms__list-item{
    display:flex;
    flex-direction:column
}
.rooms__card{
    flex-grow:1;
    text-align:center
}
.rooms__card,.rooms__card-content-wrapper{
    display:flex;
    flex-direction:column
}
.rooms__card-image-container{
    position:relative;
    margin-bottom:2rem;
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0)
}
@media only screen and (max-width:640px){
    .rooms__card-image-container{
        width:100vw;
        left:50%;
        transform:translateX(-50%)
    }
}
.rooms__card-image-container::before{
    content:"";
    display:block;
    padding-bottom:56.25%
}
.rooms__card-image,.rooms__card-parallax-wrapper{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%
}
.rooms__card-image{
    -o-object-fit:cover;
    object-fit:cover
}
.rooms__card-title{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:140%;
    text-align:center;
    text-transform:uppercase;
    font-family:var(--zhar-ptitza)
}
@media only screen and (max-width:640px){
    .rooms__card-title{
        font-style:normal;
        font-weight:700;
        font-size:3.2rem;
        line-height:100%;
        letter-spacing:.05em
    }
}
.rooms__card-title-text{
    font-style:normal;
    font-weight:500;
    font-size:2.4rem;
    line-height:140%;
    text-align:center;
    text-transform:uppercase;
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .rooms__card-title-text{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        margin-bottom:1rem
    }
}
.rooms__card-list{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:2.4rem;
    row-gap:1.2rem;
    margin:0 auto;
    width:100%;
    margin-bottom:3.5rem;
    justify-content:center;
    max-width:70%
}
@media only screen and (max-width:640px){
    .rooms__card-list{
        gap:1.8rem;
        row-gap:.9rem;
        margin-bottom:2.2rem
    }
}
.rooms__card-list-item{
    font-style:normal;
    font-weight:500;
    display:inline-flex;
    align-items:center;
    font-size:1.4rem;
    line-height:1.7rem;
    gap:.8rem
}
@media only screen and (max-width:640px){
    .rooms__card-list-item{
        gap:.5rem;
        font-style:normal;
        font-weight:500;
        font-size:1rem;
        line-height:1.2rem
    }
}
.rooms__card-list-item::before{
    content:"";
    width:1.4rem;
    height:1.4rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    background-image:url(../img/diamond-shape-black.svg);
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .rooms__card-list-item::before{
        width:1rem;
        height:1rem
    }
}
.rooms__card-btns{
    grid-gap:2rem;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin-top:auto
}
@media only screen and (max-width:640px){
    .rooms__card-btns{
        grid-gap:1rem
    }
}
.rooms__card-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #000;
    transition:background-color .2s,color .2s,border-color .2s;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:2rem;
    text-align:center;
    padding:1.4rem 2.8rem;
    color:#000
}
@media only screen and (max-width:640px){
    .rooms__card-btn{
        font-style:normal;
        font-weight:500;
        font-size:1.1rem;
        line-height:140%;
        padding:1rem 2rem
    }
}
.rooms__card-btn:link,.rooms__card-btn:visited{
    color:#000
}
.rooms__card-btn--filled{
    background-color:#000;
    color:#fff;
    font-weight:700
}
.rooms__card-btn--filled:link,.rooms__card-btn--filled:visited{
    color:#fff
}
.rooms__card-btn-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.rooms__card-btn-text svg,.zone__btn-text svg{
    position:absolute;
    left:100%;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s;
    fill:currentColor;
    width:2rem;
    height:2rem;
    margin-left:1rem;
    top:50%;
    transform:translateY(-50%);
    margin-top:.2rem
}
.zone{
    padding-bottom:10rem;
    position:relative;
    background-color:#fff;
    z-index:1
}
@media only screen and (max-width:640px){
    .zone{
        padding-bottom:4rem
    }
    .zone--goods .container{
        display:flex;
        flex-direction:column
    }
}
.zone__heading{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:140%;
    text-align:center;
    text-transform:uppercase;
    font-family:var(--zhar-ptitza);
    margin-bottom:1rem
}
@media only screen and (min-width:641px){
    .rooms+.zone .zone__heading{
        opacity:0;
        visibility:hidden
    }
}
@media only screen and (max-width:640px){
    .zone__heading{
        font-style:normal;
        font-weight:700;
        font-size:3.2rem;
        line-height:120%;
        letter-spacing:.05em
    }
}
.zone__heading-text{
    width:100%;
    margin:0 auto;
    margin-bottom:2.5rem;
    max-width:60rem;
    text-align:center;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%
}
@media only screen and (min-width:641px){
    .rooms+.zone .zone__heading-text{
        opacity:0;
        visibility:hidden
    }
}
@media only screen and (max-width:640px){
    .zone__heading-text{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:150%;
        margin-bottom:2rem
    }
}
.zone__image-zoom-wrapper{
    margin-bottom:3.5rem
}
@media only screen and (max-width:640px){
    .zone__image-zoom-wrapper{
        margin-bottom:2rem
    }
    .zone--goods .zone__image-zoom-wrapper{
        order:-10
    }
}
.zone__image-wrapper{
    position:relative;
    left:50%;
    width:100vw;
    transform:translateX(-50%) translateZ(0);
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform-origin:center top
}
@media only screen and (min-width:641px){
    .rooms+.zone .zone__image-zoom-wrapper-inner{
        transform-origin:center top;
        transform:scale(.5)
    }
}
.zone__image{
    width:100%;
    height:auto
}
.zone__features-list{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:4rem;
    row-gap:2rem;
    margin-bottom:3.5rem
}
@media only screen and (max-width:640px){
    .zone__features-list{
        gap:1.4rem;
        row-gap:1rem;
        margin-bottom:2.5rem
    }
}
.zone__features-list-item{
    display:inline-flex;
    align-items:center;
    gap:.6rem;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .zone__features-list-item{
        font-style:normal;
        font-weight:500;
        font-size:1rem;
        line-height:1.2rem;
        gap:.4rem
    }
}
.zone__features-list-item::before{
    content:"";
    width:1.4rem;
    height:1.4rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    background-image:url(../img/diamond-shape-black.svg);
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .zone__features-list-item::before{
        width:1rem;
        height:1rem
    }
}
.zone__btns{
    width:100%;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:2rem;
    max-width:56rem
}
@media only screen and (max-width:640px){
    .zone__btns{
        grid-gap:1rem
    }
}
.zone__btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #000;
    transition:background-color .2s,color .2s,border-color .2s;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:2rem;
    text-align:center;
    padding:1.4rem 2.8rem;
    color:#000
}
.zone__btn:only-child{
    grid-column:1/-1
}
@media only screen and (min-width:641px){
    .zone__btn:only-child{
        justify-self:center;
        width:27rem
    }
}
@media only screen and (max-width:640px){
    .zone__btn{
        font-style:normal;
        font-weight:500;
        font-size:1.1rem;
        line-height:140%;
        padding:1rem 2rem
    }
}
.zone__btn:link,.zone__btn:visited{
    color:#000
}
.zone__btn--filled{
    background-color:#000;
    color:#fff;
    font-weight:700
}
.zone__btn--filled:link,.zone__btn--filled:visited{
    color:#fff
}
.zone__btn-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.contacts{
    padding-top:1.5rem;
    padding-bottom:10rem;
    background-color:#fff;
    position:relative;
    z-index:1
}
.news+.contacts{
    padding-top:4rem
}
.promo-detail+.news+.contacts{
    padding-top:16rem
}
@media only screen and (max-width:640px){
    .contacts{
        padding-top:6.4rem;
        padding-bottom:4.4rem
    }
    .news+.contacts{
        padding-top:1rem
    }
    .gallery+.contacts{
        padding-top:0
    }
    .promo-detail+.news+.contacts{
        padding-top:2rem
    }
}
.contacts__content{
    width:100%;
    margin:0 auto;
    max-width:114.6rem
}
@media only screen and (max-width:640px){
    .contacts__content{
        margin:0;
        max-width:none;
        display:flex;
        flex-direction:column
    }
}
.contacts__row{
    display:flex;
    align-items:flex-start;
    gap:2rem
}
@media only screen and (max-width:640px){
    .contacts__row{
        display:contents
    }
}
.contacts__info{
    width:44.5rem;
    flex-shrink:0;
    display:flex;
    flex-direction:column
}
@media only screen and (max-width:640px){
    .contacts__info{
        width:100%;
        flex-shrink:1;
        display:contents
    }
}
.contacts__map-wrapper{
    position:relative;
    width:50%;
    flex-grow:1
}
@media only screen and (max-width:640px){
    .contacts__map-wrapper{
        width:100%;
        flex-grow:0;
        width:100vw;
        left:50%;
        transform:translateX(-50%);
        order:-9;
        margin-bottom:3.2rem
    }
}
.contacts__map-wrapper::before{
    content:"";
    display:block;
    padding-bottom:65%
}
@media only screen and (max-width:640px){
    .contacts__map-wrapper::before{
        padding-bottom:120%
    }
}
.contacts__map{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background:#ede8dd
}
.contacts__heading{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:140%;
    font-family:var(--zhar-ptitza);
    margin-bottom:2.5rem;
    margin-top:-1rem;
    color:#332927
}
@media only screen and (max-width:640px){
    .contacts__heading{
        font-style:normal;
        font-weight:400;
        font-size:4.2rem;
        line-height:120%;
        margin:0;
        margin-bottom:1rem;
        order:-10
    }
}
.contacts__closest{
    display:flex;
    flex-direction:column;
    grid-gap:.5rem;
    margin-bottom:6rem
}
@media only screen and (max-width:640px){
    .contacts__closest{
        margin-bottom:3rem
    }
}
.contacts__closest-item{
    display:flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:120%;
    gap:.9rem
}
.contacts__closest-item svg{
    width:1.4rem;
    height:1.4rem;
    fill:currentColor
}
.contacts__phone-link{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:170%
}
@media only screen and (max-width:640px){
    .contacts__phone-link{
        font-style:normal;
        font-weight:700;
        font-size:1.6rem;
        line-height:120%;
        position:relative;
        align-self:flex-start;
        margin-bottom:2rem
    }
    .contacts__phone-link::before{
        content:"";
        position:absolute;
        left:0;
        top:100%;
        height:1px;
        background-color:currentColor;
        width:100%
    }
}
.contacts__text{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:170%;
    margin-bottom:3rem
}
@media only screen and (max-width:640px){
    .contacts__text{
        font-style:normal;
        font-weight:700;
        font-size:1.4rem;
        line-height:150%;
        margin-bottom:2rem
    }
}
.contacts__location,.contacts__plan{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:170%;
    margin-bottom:2rem
}
.contacts__plan{
    align-self:flex-start;
    font-size:2rem;
    line-height:140%;
    text-transform:uppercase;
    transition:all .2s;
    margin-bottom:4.5rem;
    position:relative
}
.contacts__plan::before{
    content:"";
    position:absolute;
    left:0;
    height:1px;
    top:100%;
    width:100%;
    background-color:currentColor;
    transition:transform .2s;
    transform-origin:left center
}
@media only screen and (max-width:640px){
    .contacts__plan{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:120%;
        margin-bottom:3rem
    }
}
.no-touch .contacts__plan:hover,.touch .contacts__plan:active{
    -webkit-text-decoration-color:transparent;
    text-decoration-color:transparent
}
.no-touch .contacts__plan:hover::before,.no-touch .menu__show-on-map:hover::before,.touch .contacts__plan:active::before,.touch .menu__show-on-map:active::before{
    transform:scaleX(0)
}
.contacts__social-list{
    display:flex;
    align-items:center;
    gap:2.4rem;
    row-gap:1.2rem;
    flex-wrap:wrap
}
.contacts__social-link{
    display:block
}
.contacts__social-link-icon{
    display:block;
    height:2rem;
    width:auto;
    max-width:none
}
.menu,.menu__inner{
    display:flex;
    flex-direction:column
}
.menu{
    position:fixed;
    left:0;
    top:0;
    right:0;
    bottom:0;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    background:#e2d8c0;
    color:#3a241f;
    z-index:600;
    opacity:0;
    visibility:hidden;
    transition:opacity .4s,visibility 0s linear .4s
}
.mobile-menu-open .menu{
    opacity:1;
    visibility:inherit;
    transition:opacity .4s,visibility .4s;
    padding-right:var(--sb-width, 0)
}
.menu__inner{
    flex-shrink:0;
    flex-grow:1
}
@media only screen and (min-width:641px){
    .menu__content{
        display:flex;
        flex-direction:column;
        flex-grow:1;
        position:relative;
        align-items:center;
        align-content:flex-start
    }
}
@media only screen and (max-width:640px){
    .menu__content{
        display:flex;
        flex-direction:column;
        align-items:stretch
    }
}
.menu__rotating-text{
    top:50%;
    width:60rem;
    height:60rem;
    transform:translateY(-50%);
    left:100%;
    margin-left:-20rem;
    position:absolute;
    pointer-events:none;
    z-index:-1;
    -webkit-animation-name:textRotating;
    animation-name:textRotating;
    -webkit-animation-duration:40s;
    animation-duration:40s;
    -webkit-animation-iteration-count:infinite;
    animation-iteration-count:infinite;
    -webkit-animation-timing-function:linear;
    animation-timing-function:linear
}
@media only screen and (max-width:640px){
    .menu__rotating-text{
        display:none
    }
}
.menu__close svg,.menu__rotating-text svg,.menu__rotating-text-image{
    display:block;
    width:100%;
    height:100%
}
.menu__top-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(0,1fr);
    grid-gap:2rem;
    align-items:center;
    min-height:8rem;
    border-bottom:1px solid rgba(183,169,138,.5)
}
@media only screen and (max-width:640px){
    .menu__top-row{
        display:contents;
        grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
        display:grid;
        grid-template-areas:"close logo empty" "lang account account";
        grid-template-rows:minmax(5.2rem,auto) auto;
        grid-gap:2rem;
        border:0;
        align-items:center
    }
    .menu__top-row::after{
        content:"";
        height:1px;
        background-color:rgba(183,169,138,.5);
        grid-column:1/-1;
        grid-row:1/2;
        pointer-events:none;
        align-self:flex-end
    }
}
.menu__controls{
    display:flex;
    align-items:center
}
@media only screen and (max-width:640px){
    .menu__controls{
        display:contents
    }
}
.menu__close{
    flex-shrink:0;
    width:3rem;
    height:3rem;
    margin-right:2.4rem
}
@media only screen and (max-width:640px){
    .menu__close{
        width:2rem;
        height:2rem;
        grid-area:close;
        margin:0
    }
}
.menu__close svg{
    fill:#3a241f
}
.menu__languages{
    display:flex;
    align-items:center;
    gap:2rem;
    margin-right:5.5rem
}
@media only screen and (max-width:640px){
    .menu__languages{
        margin-right:3rem;
        grid-area:lang
    }
}
.menu__languages-link{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    text-transform:uppercase;
    color:#b7a98a;
    position:relative;
    letter-spacing:.05em
}
@media only screen and (max-width:640px){
    .menu__languages-link{
        font-style:normal;
        font-weight:500;
        font-size:1.6rem;
        line-height:120%
    }
}
.menu__languages-link::before{
    content:"";
    position:absolute;
    top:100%;
    left:0;
    width:100%;
    height:1px;
    background-color:currentColor
}
.menu__languages-link:link,.menu__languages-link:visited{
    color:#b7a98a
}
.menu__account:link,.menu__account:visited,.menu__languages-link.active{
    color:#3a241f
}
.menu__account{
    display:inline-flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    letter-spacing:.05em;
    text-transform:uppercase;
    color:#3a241f;
    gap:1.4rem
}
@media only screen and (max-width:640px){
    .menu__account{
        font-style:normal;
        font-weight:500;
        font-size:1.6rem;
        line-height:120%;
        letter-spacing:.05em;
        -webkit-text-decoration-line:underline;
        text-decoration-line:underline;
        text-transform:uppercase;
        gap:1rem;
        grid-area:account;
        justify-self:flex-end
    }
}
.menu__account svg{
    flex-shrink:0;
    width:2rem;
    height:2rem;
    fill:#b7a98a
}
@media only screen and (max-width:640px){
    .menu__account svg{
        width:1.5rem;
        height:1.5rem;
        fill:currentColor
    }
}
.menu__logo{
    font-size:3rem;
    font-family:var(--zhar-ptitza);
    line-height:1;
    text-transform:uppercase;
    text-align:center
}
@media only screen and (max-width:640px){
    .menu__logo{
        font-size:1.5rem;
        grid-area:logo;
        white-space:nowrap;
        margin-top:.4rem
    }
}
.menu__order-link{
    margin-left:auto;
    flex-shrink:0;
    white-space:nowrap;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    text-align:center;
    letter-spacing:.05em;
    text-transform:uppercase;
    border:.15rem solid currentColor;
    padding:1.5rem 2rem;
    gap:1rem;
    transition:color .2s,background-color .2s,border-color .2s;
    display:inline-flex;
    align-items:center;
    color:#000
}
@media only screen and (max-width:640px){
    .menu__order-link{
        display:none
    }
}
.menu__mobile-order-link:link,.menu__mobile-order-link:visited,.menu__order-link:link,.menu__order-link:visited{
    color:#000
}
.menu__mobile-order-link svg,.menu__order-link svg{
    flex-shrink:0;
    width:2.4rem;
    height:1.8rem;
    fill:currentColor;
    transition:fill .2s,transform .4s
}
.no-touch .menu__order-link:hover,.touch .menu__order-link:active{
    color:#fff;
    background-color:#000;
    border-color:#000
}
.menu__mobile-order-link{
    margin-left:auto;
    flex-shrink:0;
    white-space:nowrap;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    text-align:center;
    letter-spacing:.05em;
    text-transform:uppercase;
    border:.15rem solid currentColor;
    padding:1.5rem 2rem;
    gap:1rem;
    transition:color .2s,background-color .2s,border-color .2s;
    display:inline-flex;
    align-items:center;
    color:#000;
    display:none
}
@media only screen and (max-width:640px){
    .menu__mobile-order-link{
        display:flex;
        margin-top:3.5rem;
        border-width:1px;
        width:100%;
        justify-content:center
    }
}
.menu__content{
    padding-top:3.8rem;
    padding-bottom:3.8rem;
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    grid-gap:2rem;
    position:relative;
    z-index:1
}
@media only screen and (max-width:640px){
    .menu__content{
        padding-top:2.7rem;
        padding-bottom:2.7rem;
        display:flex;
        flex-direction:column
    }
}
.menu__left-col{
    padding-left:4.5rem
}
@media only screen and (max-width:640px){
    .menu__left-col{
        padding:0
    }
}
@media only screen and (min-width:641px){
    .menu__left-col,.menu__right-col{
        grid-column:span 6
    }
    .menu__right-col{
        align-self:center;
        display:grid;
        grid-template-columns:minmax(0,1fr);
        align-items:center
    }
    .menu__contacts{
        padding-left:4rem;
        grid-column:1/-1;
        grid-row:1/2;
        display:flex;
        flex-direction:column
    }
}
@media only screen and (max-width:640px){
    .menu__contacts{
        display:flex;
        flex-direction:column
    }
}
.menu__images-list{
    grid-column:1/-1;
    grid-row:1/2;
    position:relative;
    opacity:0;
    visibility:hidden;
    transition:opacity .4s,visibility 0s linear .4s;
    display:grid;
    grid-template-columns:minmax(0,1fr)
}
@media only screen and (max-width:640px){
    .menu__images-list{
        display:none
    }
}
.menu__images-card.active,.menu__images-list.active{
    opacity:1;
    visibility:inherit;
    transition:opacity .4s,visibility .4s
}
@media only screen and (min-width:641px){
    .menu__images-list-item{
        grid-column:1/2;
        grid-row:1/2
    }
}
.menu__images-card{
    position:relative;
    opacity:0;
    visibility:hidden;
    transition:opacity .4s ease .4s,visibility 0s linear .8s
}
.menu__images-card::before{
    content:"";
    display:block;
    padding-bottom:70%
}
.menu__images-card-image{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.menu__phone{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:180%
}
@media only screen and (max-width:640px){
    .menu__phone{
        align-self:flex-start;
        font-style:normal;
        font-weight:700;
        font-size:1.6rem;
        -webkit-text-decoration-line:underline;
        text-decoration-line:underline;
        line-height:120%;
        margin-bottom:2.5rem
    }
}
.menu__address{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:180%;
    margin-bottom:2.7rem
}
@media only screen and (max-width:640px){
    .menu__address{
        font-style:normal;
        font-weight:700;
        font-size:1.4rem;
        line-height:150%;
        margin-bottom:2rem
    }
}
.menu__closest{
    display:flex;
    flex-direction:column;
    grid-gap:.5rem;
    margin-bottom:4rem
}
@media only screen and (max-width:640px){
    .menu__closest{
        margin-bottom:3rem
    }
}
.menu__closest-item{
    display:flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:120%;
    gap:.9rem
}
@media only screen and (max-width:640px){
    .menu__closest-item{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:120%
    }
}
.menu__closest-item svg{
    width:1.4rem;
    height:1.4rem;
    fill:currentColor
}
.menu__show-on-map{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    position:relative;
    line-height:120%;
    margin-bottom:3.8rem;
    text-transform:uppercase;
    align-self:flex-start
}
@media only screen and (max-width:640px){
    .menu__show-on-map{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:120%;
        margin-bottom:3.5rem
    }
}
.menu__show-on-map::before{
    content:"";
    position:absolute;
    left:0;
    top:100%;
    width:100%;
    height:1px;
    background-color:currentColor;
    transition:transform .2s;
    transform-origin:left center
}
.menu__social-list{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:2.4rem
}
.menu__social-list-item{
    flex-shrink:0
}
.menu__social-link{
    display:block
}
.menu__social-link-icon{
    height:2.2rem;
    display:block;
    width:auto;
    max-width:none
}
.menu__nav-list{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    margin-top:-.5rem
}
@media only screen and (max-width:640px){
    .menu__nav-list{
        margin:0;
        gap:1.5rem
    }
}
.menu__nav-list-item{
    padding:.5rem 0
}
@media only screen and (max-width:640px){
    .menu__nav-list-item{
        padding:0
    }
}
.menu__nav-list-item.active .menu__nav-link::before{
    transform:translateY(-50%) scale(1)
}
.menu__nav-link{
    position:relative;
    font-style:normal;
    font-weight:400;
    font-size:4rem;
    line-height:120%;
    letter-spacing:.05em;
    text-transform:uppercase;
    font-family:var(--zhar-ptitza)
}
@media only screen and (max-width:640px){
    .menu__nav-link{
        font-style:normal;
        font-weight:700;
        font-size:3rem;
        line-height:1.1
    }
}
.menu__nav-link::before{
    content:"";
    position:absolute;
    top:50%;
    transform:translateY(-50%) scale(0);
    width:3.3rem;
    height:3.3rem;
    background-image:url(../img/diamond-shape-brown.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    transition:opacity .2s,transform .2s;
    pointer-events:none;
    right:100%;
    margin-right:1.5rem;
    margin-top:-.6rem
}
@media only screen and (max-width:640px){
    .menu__nav-link::before{
        display:none
    }
}
.menu__submenu-list{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:2.8rem;
    padding-bottom:3rem;
    padding-top:1.5rem
}
@media only screen and (max-width:640px){
    .menu__submenu-list{
        display:none
    }
}
.menu__submenu-list-item{
    flex-shrink:0
}
.menu__submenu-link{
    display:inline-flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    letter-spacing:.05em;
    text-transform:uppercase;
    gap:1.2rem;
    color:#000
}
.menu__submenu-link:link,.menu__submenu-link:visited{
    color:#000
}
.menu__submenu-link svg{
    width:2.5rem;
    height:2rem;
    fill:currentColor;
    transition:transform .4s
}
.baths{
    padding-top:10rem;
    padding-bottom:16rem;
    position:relative;
    background-color:#fff;
    z-index:1
}
@media only screen and (max-width:640px){
    .baths{
        padding-top:6.4rem;
        padding-bottom:5.3rem
    }
}
.baths__content{
    width:100%;
    margin:0 auto;
    max-width:126rem
}
@media only screen and (min-width:641px){
    .baths__content{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        grid-template-rows:repeat(3,minmax(0,auto));
        grid-gap:13rem;
        grid-row-gap:8rem;
        align-content:flex-start;
        align-items:flex-start
    }
    .baths__slider,.baths__slider .swiper,.baths__slider .swiper-slide,.baths__slider .swiper-wrapper{
        display:contents
    }
}
@media only screen and (max-width:640px){
    .baths__slider{
        margin-bottom:2.5rem
    }
    .baths__slider .swiper{
        overflow:visible
    }
    .baths__slider .swiper-slide{
        width:80%;
        margin-right:1rem
    }
    .baths__slider .swiper-slide:last-child{
        margin-right:0
    }
}
.baths__text-content{
    display:flex;
    flex-direction:column
}
@media only screen and (min-width:641px){
    .baths__text-content{
        grid-column:2/3;
        grid-row:2/3
    }
}
.baths__heading{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:140%;
    text-transform:uppercase;
    font-family:var(--zhar-ptitza);
    margin-bottom:1.5rem
}
@media only screen and (max-width:640px){
    .baths__heading{
        font-style:normal;
        line-height:120%;
        margin-bottom:.5rem;
        font-size:3.8rem
    }
}
.baths__text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    margin-bottom:2.5rem
}
@media only screen and (max-width:640px){
    .baths__text{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:170%;
        margin-bottom:2rem
    }
}
.baths__list{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:2.5rem;
    row-gap:1.25rem
}
@media only screen and (max-width:640px){
    .baths__list{
        gap:1rem;
        row-gap:1rem
    }
}
.baths__list-item{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    display:inline-flex;
    align-items:center;
    line-height:140%;
    gap:1rem
}
@media only screen and (max-width:640px){
    .baths__list-item{
        font-style:normal;
        font-weight:500;
        font-size:1rem;
        line-height:1.2rem;
        gap:.6rem
    }
}
.baths__list-item::before{
    content:"";
    width:1.5rem;
    height:1.5rem;
    flex-shrink:0;
    background-size:contain;
    background-image:url(../img/diamond-shape-black.svg);
    background-repeat:no-repeat;
    background-position:center
}
@media only screen and (max-width:640px){
    .baths__list-item::before{
        width:1rem;
        height:1rem
    }
}
.baths__image-wrapper{
    position:relative;
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0);
    width:100%
}
.baths__image-wrapper::before{
    content:"";
    display:block;
    padding-bottom:56.25%
}
@media only screen and (max-width:640px){
    .baths__image-wrapper::before{
        padding-bottom:130%
    }
}
@media only screen and (min-width:641px){
    .swiper-slide:nth-child(1) .baths__image-wrapper{
        grid-column:1/2;
        grid-row:1/4;
        align-self:center
    }
    .swiper-slide:nth-child(1) .baths__image-wrapper::before{
        padding-bottom:130%
    }
    .swiper-slide:nth-child(2) .baths__image-wrapper{
        max-width:44rem;
        grid-column:2/3;
        grid-row:1/2
    }
    .swiper-slide:nth-child(2) .baths__image-wrapper::before{
        padding-bottom:56.25%
    }
    .swiper-slide:nth-child(3) .baths__image-wrapper{
        max-width:21rem;
        grid-column:2/3;
        grid-row:3/4;
        order:10
    }
    .swiper-slide:nth-child(3) .baths__image-wrapper::before{
        padding-bottom:130%
    }
}
.baths__image,.baths__image-parallax{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%
}
.baths__image{
    -o-object-fit:cover;
    object-fit:cover
}
.rest-together{
    padding-top:8rem;
    padding-bottom:7rem;
    position:relative;
    background-color:#fff;
    z-index:1
}
@media only screen and (max-width:640px){
    .rest-together{
        padding-top:2.5rem;
        padding-bottom:4.7rem
    }
}
.rest-together__content{
    display:flex;
    flex-direction:column
}
.rest-together__heading{
    font-style:normal;
    font-weight:400;
    font-size:6rem;
    font-family:var(--zhar-ptitza);
    line-height:140%;
    color:#332927;
    text-align:center
}
@media only screen and (max-width:640px){
    .rest-together__heading{
        font-style:normal;
        font-weight:400;
        font-size:3.8rem;
        line-height:100%;
        order:-3;
        text-align:center;
        margin-top:2.5rem;
        color:#332927
    }
}
.rest-together__heading-text{
    max-width:71rem;
    width:100%;
    margin:0 auto;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    text-align:center
}
@media only screen and (max-width:640px){
    .rest-together__heading-text{
        font-style:normal;
        max-width:none;
        font-size:1.4rem;
        line-height:140%;
        margin-top:2.5rem
    }
}
.rest-together__slider{
    margin-top:3.5rem
}
@media only screen and (min-width:641px){
    .rest-together__slider{
        display:grid;
        grid-gap:2rem;
        grid-template-columns:repeat(12,minmax(0,1fr));
        align-items:center
    }
}
@media only screen and (max-width:640px){
    .rest-together__slider{
        order:-2;
        margin-top:2rem
    }
}
.rest-together__slider-arrow{
    flex-shrink:0;
    display:inline-flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:100%;
    position:relative;
    transition:opacity .2s
}
@media only screen and (max-width:640px){
    .rest-together__slider-arrow{
        display:none
    }
}
.rest-together__slider-arrow::before{
    content:"";
    display:block;
    padding-bottom:100%
}
.rest-together__slider-arrow.swiper-button-disabled{
    opacity:.5;
    cursor:default
}
.rest-together__slider-arrow svg{
    width:5rem;
    height:5rem;
    fill:#000;
    transform:translate(-50%,-50%);
    left:50%;
    top:50%;
    position:absolute
}
@media only screen and (min-width:641px){
    .rest-together__slider-wrapper{
        grid-column:2/12
    }
}
@media only screen and (max-width:640px){
    .rest-together__slider-wrapper .swiper{
        overflow:visible;
        margin:0;
        width:100%
    }
    .rest-together__slider-wrapper .swiper-slide{
        width:90%
    }
}
.rest-together__slider-card{
    position:relative;
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0)
}
.rest-together__slider-card::before{
    content:"";
    display:block;
    padding-bottom:56.25%
}
@media only screen and (max-width:640px){
    .rest-together__slider-card::before{
        padding-bottom:60%
    }
}
.rest-together__slider-card-image,.rest-together__slider-card-parallax{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%
}
.rest-together__slider-card-image{
    -o-object-fit:cover;
    object-fit:cover
}
.rest-together__list{
    margin-top:3.5rem;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:3rem;
    row-gap:1.5rem
}
@media only screen and (max-width:640px){
    .rest-together__list{
        margin-top:2.5rem;
        gap:1.5rem
    }
}
.rest-together__list-item{
    display:inline-flex;
    align-items:center;
    gap:.6rem;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .rest-together__list-item{
        font-style:normal;
        font-size:1rem;
        line-height:1.2rem;
        gap:.4rem
    }
}
.rest-together__list-item::before{
    content:"";
    width:1.4rem;
    height:1.4rem;
    background-image:url(../img/diamond-shape-black.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .rest-together__list-item::before{
        width:1rem;
        height:1rem
    }
}
.rest-together__link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-style:normal;
    font-weight:700;
    font-size:1.6rem;
    line-height:2rem;
    padding:1.4rem 2.8rem;
    width:26rem;
    background:#000;
    color:#fff;
    transition:background-color .2s,color .2s;
    margin-top:3.5rem;
    align-self:center
}
@media only screen and (max-width:640px){
    .rest-together__link{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:1.7rem;
        padding:1.3rem 2.6rem;
        width:100%;
        margin-top:2.5rem
    }
}
.rest-together__link:link,.rest-together__link:visited{
    color:#fff
}
.rest-together__link-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.rest-together__link-text svg{
    position:absolute;
    left:100%;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s;
    fill:currentColor;
    width:2rem;
    height:2rem;
    margin-left:1rem;
    top:50%;
    transform:translateY(-50%);
    margin-top:.2rem
}
.features{
    padding-top:0;
    padding-bottom:7.5rem;
    position:relative;
    background-color:#fff;
    z-index:1
}
.about-space+.features{
    background-color:transparent
}
.intro+.features{
    padding-top:10rem
}
@media only screen and (max-width:640px){
    .intro+.features{
        padding-top:4.4rem
    }
}
.bath-rest+.features{
    padding-top:13rem
}
@media only screen and (max-width:640px){
    .bath-rest+.features{
        padding-top:5rem
    }
    .features{
        padding-bottom:6rem
    }
}
.features__content{
    width:100%;
    margin:0 auto;
    max-width:102.5rem;
    display:grid;
    grid-template-columns:minmax(0,1.26fr) minmax(0,1fr);
    grid-gap:13.7rem
}
@media only screen and (max-width:640px){
    .features__content{
        max-width:none;
        display:grid;
        grid-template-columns:minmax(0,1fr);
        grid-gap:4.5rem
    }
}
.features__left-col{
    padding-top:5.4rem
}
@media only screen and (max-width:640px){
    .features__left-col{
        padding-left:4rem;
        padding-top:0
    }
    .features__left-col--mobile-fullwidth{
        padding:0
    }
    .features__left-col--mobile-last{
        order:12
    }
    .features__right-col{
        padding-right:5rem
    }
    .features__right-col--mobile-right-aligned{
        padding-right:0;
        padding-left:5rem
    }
}
.features__slider{
    position:relative
}
.features__slider .swiper-slide{
    width:50%
}
@media only screen and (max-width:640px){
    .features__slider .swiper-slide{
        width:100%
    }
}
.features__slider-arrows{
    gap:2.2rem;
    display:flex;
    align-items:center;
    z-index:20;
    margin-bottom:1.8rem;
    justify-content:flex-end
}
@media only screen and (max-width:640px){
    .features__slider-arrows{
        gap:1.6rem;
        padding-left:4rem;
        margin-bottom:1rem
    }
}
.features__slider-arrow{
    flex-shrink:0;
    transition:opacity .2s
}
.features__slider-arrow.swiper-button-disabled{
    opacity:.5;
    cursor:default
}
.features__slider-arrow svg{
    width:4rem;
    height:3rem;
    display:block;
    fill:#000;
    transition:fill .2s
}
@media only screen and (max-width:640px){
    .features__slider-arrow svg{
        width:2.8rem;
        height:2.1rem
    }
}
.no-touch .features__slider-arrow:not(.swiper-button-disabled):hover svg,.touch .features__slider-arrow:not(.swiper-button-disabled):active svg{
    fill:#968a71
}
.features__slider-card{
    display:flex;
    flex-direction:column
}
.features__image-wrapper{
    position:relative;
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0);
    margin-bottom:2.5rem;
    margin-top:5.4rem
}
.features__image-wrapper::before{
    content:"";
    display:block;
    padding-bottom:75%
}
@media only screen and (max-width:640px){
    .features__image-wrapper{
        margin-bottom:2rem;
        margin-top:0
    }
}
.features__image-parallax{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%
}
.features__slider-card-image-container{
    position:relative;
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0);
    margin-bottom:2.5rem
}
@media only screen and (max-width:640px){
    .features__slider-card-image-container{
        margin-bottom:2rem
    }
}
.features__slider-card-image-container::before{
    content:"";
    display:block;
    padding-bottom:130%
}
.features__slider-card-image,.features__slider-card-parallax{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%
}
.features__slider-card-image{
    -o-object-fit:cover;
    object-fit:cover
}
.features__slider-card-title,.features__title{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:1.3rem
}
@media only screen and (max-width:640px){
    .features__slider-card-title,.features__title{
        font-style:normal;
        font-weight:700;
        font-size:1.8rem;
        line-height:120%;
        margin-bottom:1rem
    }
}
.features__slider-card-text,.features__text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    margin-bottom:2rem;
    max-width:34rem
}
.features__slider-card-text--fullwidth,.features__text--fullwidth{
    max-width:none
}
.features__slider-card-text p,.features__text p{
    margin-bottom:1.5rem
}
.features__slider-card-text ul>li,.features__text ul>li{
    margin-bottom:1rem;
    padding-left:2.5rem;
    position:relative
}
@media only screen and (max-width:640px){
    .features__slider-card-text ul>li,.features__text ul>li{
        padding-left:2rem;
        margin-bottom:1rem
    }
}
.features__slider-card-text ul>li::before,.features__text ul>li::before{
    content:"";
    position:absolute;
    left:0;
    width:1.5rem;
    height:1.5rem;
    top:.3rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    background-image:url(../img/diamond-shape-black.svg)
}
@media only screen and (max-width:640px){
    .features__slider-card-text ul>li::before,.features__text ul>li::before{
        width:1rem;
        height:1rem;
        top:.35rem
    }
}
.features__slider-card-text:last-child,.features__text:last-child{
    margin-bottom:0
}
@media only screen and (max-width:640px){
    .features__slider-card-text,.features__text{
        max-width:none;
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:1.4;
        margin-bottom:2rem;
        max-width:25rem
    }
    .features__slider-card-text--fullwidth,.features__text--fullwidth{
        max-width:none
    }
}
.features__link,.features__slider-card-link{
    display:inline-flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.8rem;
    line-height:120%;
    color:#968a71;
    gap:1.6rem
}
@media only screen and (max-width:640px){
    .features__link,.features__slider-card-link{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:120%;
        gap:1rem
    }
}
.features__link svg,.features__slider-card-link svg{
    width:2.7rem;
    height:2rem;
    fill:currentColor;
    flex-shrink:0;
    transition:transform .3s;
    margin-top:.2rem
}
@media only screen and (max-width:640px){
    .features__link svg,.features__slider-card-link svg{
        width:1.6rem;
        height:1.2rem
    }
}
.features__link:link,.features__link:visited,.features__slider-card-link:link,.features__slider-card-link:visited{
    color:#968a71
}
.features__mobile-order-link{
    font-style:normal;
    font-weight:700;
    font-size:1.6rem;
    line-height:2rem;
    text-align:center;
    display:block;
    width:100%;
    padding:1.2rem 2.4rem;
    color:#fff;
    background:#000;
    margin-top:4rem
}
@media only screen and (min-width:641px){
    .features__mobile-order-link{
        display:none
    }
}
.features__mobile-order-link:link,.features__mobile-order-link:visited{
    color:#fff
}
.bath-rest{
    position:relative;
    background-color:#fff;
    z-index:1
}
.intro+.bath-rest{
    padding-top:10rem
}
@media only screen and (max-width:640px){
    .intro+.bath-rest{
        padding-top:4rem
    }
}
.bath-rest__content{
    display:flex
}
@media only screen and (max-width:640px){
    .bath-rest__content{
        flex-direction:column
    }
}
@media only screen and (min-width:641px){
    .bath-rest__slider{
        width:50%;
        flex-grow:1;
        height:63rem;
        display:flex;
        flex-direction:column
    }
}
@media only screen and (max-width:640px){
    .bath-rest__slider{
        margin:0 calc((100vw - 100% - var(--sb-width, 0))/2*-1);
        margin-bottom:2rem
    }
}
@media only screen and (min-width:641px){
    .bath-rest__slider-inner{
        position:relative;
        margin-left:calc((100vw - 100% - 39rem - var(--sb-width, 0))/2*-1);
        flex-grow:1;
        display:flex;
        flex-direction:column
    }
    .bath-rest__slider-inner .swiper{
        width:100%;
        margin:0;
        flex-grow:1;
        display:flex;
        flex-direction:column
    }
    .bath-rest__slider-inner .swiper-wrapper{
        flex-grow:1
    }
}
@media only screen and (max-width:640px){
    .bath-rest__slider-inner .swiper-slide{
        width:80%;
        margin-right:1.4rem
    }
    .bath-rest__slider-inner .swiper-slide:last-child{
        margin-right:0
    }
    .bath-rest__slider-inner .swiper{
        overflow:visible
    }
}
@media only screen and (min-width:641px){
    .bath-rest__text-content{
        flex-shrink:0;
        width:39rem;
        display:flex;
        flex-direction:column;
        justify-content:center;
        padding:0 6rem;
        padding-right:4rem
    }
}
@media only screen and (max-width:640px){
    .bath-rest__text-content{
        display:contents
    }
}
.bath-rest__heading{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:100%;
    font-family:var(--zhar-ptitza);
    margin-bottom:2.5rem
}
@media only screen and (max-width:640px){
    .bath-rest__heading{
        font-style:normal;
        font-size:3.8rem;
        line-height:110%;
        order:-1;
        margin-bottom:1.5rem
    }
    .bath-rest__heading--mobile-centered{
        text-align:center
    }
}
.bath-rest__text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    margin-bottom:3rem
}
@media only screen and (max-width:640px){
    .bath-rest__text{
        font-style:normal;
        font-size:1.6rem;
        line-height:140%
    }
}
.bath-rest__arrows{
    display:flex;
    align-items:center;
    gap:2.2rem
}
@media only screen and (max-width:640px){
    .bath-rest__arrows{
        display:none
    }
}
.bath-rest__arrow{
    transition:opacity .2s;
    flex-shrink:0
}
.bath-rest__arrow.swiper-button-disabled{
    opacity:.5;
    cursor:default
}
.bath-rest__arrow svg{
    display:block;
    width:4rem;
    height:3rem;
    fill:#000
}
.bath-rest__slider-card{
    position:relative;
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0);
    flex-grow:1
}
@media only screen and (max-width:640px){
    .bath-rest__slider-card::before{
        content:"";
        display:block;
        padding-bottom:65%
    }
}
.bath-rest__slider-card-image,.bath-rest__slider-card-parallax{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%
}
.bath-rest__slider-card-image{
    -o-object-fit:cover;
    object-fit:cover
}
.bath-rest__slider-pagination{
    position:absolute;
    left:50%!important;
    transform:translateX(-50%);
    z-index:40;
    bottom:3.5rem!important;
    display:flex;
    align-items:center;
    justify-content:center;
    width:auto!important;
    gap:1.8rem;
    pointer-events:all
}
@media only screen and (max-width:640px){
    .bath-rest__slider-pagination{
        position:static;
        gap:1.4rem;
        transform:none;
        order:-1
    }
}
.bath-rest__slider-pagination .swiper-pagination-bullet{
    margin:0!important;
    width:.8rem;
    height:.8rem;
    opacity:1!important;
    background:rgba(255,255,255,.4);
    position:relative
}
@media only screen and (max-width:640px){
    .bath-rest__slider-pagination .swiper-pagination-bullet{
        width:.6rem;
        height:.6rem
    }
}
.bath-rest__list-item::before,.bath-rest__slider-pagination .swiper-pagination-bullet::before{
    content:"";
    position:absolute;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center
}
.bath-rest__slider-pagination .swiper-pagination-bullet::before{
    top:50%;
    transform:translate(-50%,-50%) scale(0);
    transition:transform .2s;
    left:50%;
    width:1.9rem;
    height:1.9rem;
    background-image:url(../img/diamond-shape.svg)
}
@media only screen and (max-width:640px){
    .bath-rest__slider-pagination .swiper-pagination-bullet::before{
        width:1.4rem;
        height:1.4rem
    }
}
.bath-rest__slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active::before{
    transform:translate(-50%,-50%) scale(1)
}
.bath-rest__list{
    display:flex;
    flex-direction:column;
    gap:2rem;
    margin-bottom:3rem
}
@media only screen and (max-width:640px){
    .bath-rest__list{
        gap:1.5rem
    }
}
.bath-rest__list-item{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    padding-left:2.5rem;
    position:relative
}
@media only screen and (max-width:640px){
    .bath-rest__list-item{
        font-style:normal;
        font-size:1rem;
        line-height:1.2rem;
        padding-left:2rem
    }
}
.bath-rest__list-item::before{
    left:0;
    top:.4rem;
    width:1.4rem;
    height:1.4rem;
    background-image:url(../img/diamond-shape-black.svg)
}
@media only screen and (max-width:640px){
    .bath-rest__list-item::before{
        width:1rem;
        height:1rem;
        top:.05rem
    }
}
.bath-rest__mobile-link{
    font-style:normal;
    font-weight:700;
    font-size:1.6rem;
    line-height:2rem;
    text-align:center;
    display:block;
    width:100%;
    padding:1.2rem 2.4rem;
    color:#fff;
    background:#000
}
@media only screen and (min-width:641px){
    .bath-rest__mobile-link{
        display:none
    }
}
.bath-rest__mobile-link:link,.bath-rest__mobile-link:visited{
    color:#fff
}
.visit{
    padding-top:10rem;
    padding-bottom:15rem;
    position:relative;
    background-color:#fff;
    z-index:1
}
.visit::before{
    content:"";
    position:absolute;
    z-index:-1;
    width:26rem;
    height:48rem;
    left:0;
    top:50%;
    transform:translateY(-50%);
    background-image:url(../img/visit-left-pattern.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:left center;
    pointer-events:none
}
@media only screen and (max-width:640px){
    .visit::before{
        width:11.5rem;
        height:20rem;
        top:auto;
        transform:none;
        bottom:2.4rem;
        background-image:url(../img/visit-left-pattern-mobile.svg)
    }
}
.visit::after{
    content:"";
    position:absolute;
    z-index:-1;
    width:28rem;
    height:50rem;
    background-image:url(../img/visit-right-pattern.svg);
    pointer-events:none;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:right center;
    top:-9rem;
    right:0
}
@media only screen and (max-width:640px){
    .visit::after{
        width:10rem;
        height:17rem;
        top:-2rem;
        background-image:url(../img/visit-right-pattern-mobile.svg)
    }
    .visit{
        padding-top:12rem;
        padding-bottom:10rem
    }
}
.visit__content{
    text-align:center;
    display:flex;
    flex-direction:column
}
.visit__heading{
    font-style:normal;
    font-weight:700;
    font-size:4rem;
    line-height:140%;
    font-family:var(--zhar-ptitza);
    margin-bottom:1rem
}
@media only screen and (max-width:640px){
    .visit__heading{
        font-style:normal;
        font-size:3.2rem;
        line-height:100%;
        letter-spacing:.05em
    }
}
.visit__text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    max-width:82rem;
    width:100%;
    margin:0 auto;
    margin-bottom:2.5rem
}
@media only screen and (max-width:640px){
    .visit__text{
        font-size:1.2rem;
        line-height:170%;
        margin-bottom:2rem
    }
}
.visit__arrow{
    align-self:center
}
.visit__arrow svg{
    width:5rem;
    height:7rem;
    transform:scaleY(-1)
}
@media only screen and (max-width:640px){
    .visit__arrow svg{
        width:3.8rem;
        height:5rem
    }
}
.rooms-catalog{
    padding-top:10rem;
    padding-bottom:11rem;
    position:relative;
    background-color:#fff;
    z-index:1
}
@media only screen and (max-width:640px){
    .rooms-catalog{
        padding-top:5rem;
        padding-bottom:6.4rem
    }
}
.rooms-catalog__content{
    width:100%;
    margin:0 auto;
    max-width:123.6rem;
    display:flex;
    flex-direction:column
}
.rooms-catalog__heading{
    font-style:normal;
    font-weight:400;
    font-size:9rem;
    line-height:120%;
    letter-spacing:.05em;
    font-family:var(--zhar-ptitza);
    color:#3a241f;
    text-align:center
}
@media only screen and (min-width:641px){
    .rooms-catalog__heading{
        text-transform:uppercase
    }
}
@media only screen and (max-width:640px){
    .rooms-catalog__heading{
        font-style:normal;
        font-weight:400;
        font-size:3.8rem;
        line-height:120%
    }
}
.rooms-catalog__heading-text{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin:0 auto;
    margin-top:2.5rem;
    text-align:center;
    max-width:70rem
}
.rooms-catalog__heading-text p{
    margin-top:2rem
}
.rooms-catalog__heading-text p:first-child{
    margin-top:0
}
@media only screen and (max-width:640px){
    .rooms-catalog__heading-text{
        font-style:normal;
        margin-top:1.5rem;
        font-size:1.4rem;
        line-height:140%;
        font-weight:500
    }
}
.rooms-catalog__features-list{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:2.5rem;
    row-gap:1.7rem;
    margin:0 auto;
    width:100%;
    justify-content:center;
    margin-top:2.5rem;
    max-width:70rem
}
@media only screen and (max-width:640px){
    .rooms-catalog__features-list{
        gap:1.2rem
    }
}
.rooms-catalog__features-list-item{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:1.7rem;
    display:flex;
    align-items:center;
    gap:.6rem
}
@media only screen and (max-width:640px){
    .rooms-catalog__features-list-item{
        font-size:1rem;
        line-height:1.2rem;
        gap:.4rem
    }
}
.rooms-catalog__features-list-item::before{
    content:"";
    width:1.4rem;
    height:1.4rem;
    background-image:url(../img/diamond-shape-black.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .rooms-catalog__features-list-item::before{
        width:1rem;
        height:1rem
    }
}
.rooms-catalog__arrow{
    align-self:center;
    margin-top:6.5rem
}
.no-touch .rooms-catalog__arrow:hover svg{
    transform:scaleY(-1) translateY(-.2rem)
}
@media only screen and (max-width:640px){
    .rooms-catalog__arrow{
        margin-top:3.5rem
    }
}
.rooms-catalog__arrow svg{
    width:5.2rem;
    height:7rem;
    display:block;
    fill:#000;
    transform:scaleY(-1);
    transition:transform .2s
}
@media only screen and (max-width:640px){
    .rooms-catalog__arrow svg{
        width:3.6rem;
        height:4.9rem
    }
}
.rooms-catalog__list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-column-gap:10rem;
    margin-top:5rem
}
@media only screen and (max-width:640px){
    .rooms-catalog__list{
        grid-template-columns:minmax(0,1fr);
        grid-gap:3.4rem
    }
}
@media only screen and (min-width:641px){
    .rooms-catalog__list-item:nth-child(even){
        padding-top:11rem
    }
}
.rooms-catalog__card{
    display:flex;
    flex-direction:column
}
.rooms-catalog__card-image-container{
    position:relative;
    margin-bottom:2rem;
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0)
}
@media only screen and (max-width:640px){
    .rooms-catalog__card-image-container{
        margin-bottom:1.2rem
    }
}
.rooms-catalog__card-image-container::before{
    content:"";
    display:block;
    padding-bottom:56.25%
}
.rooms-catalog__card-image-parallax{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%
}
.rooms-catalog__card-image,.rooms-catalog__card-video-wrapper video{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.rooms-catalog__card-video-wrapper{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    z-index:10;
    opacity:0;
    visibility:hidden;
    transition:opacity .3s,visibility 0s linear .3s
}
.video-shown .rooms-catalog__card-video-wrapper{
    opacity:1;
    visibility:inherit;
    transition:opacity .3s,visibility .3s
}
.rooms-catalog__card-title{
    font-style:normal;
    font-weight:400;
    font-size:4rem;
    line-height:140%;
    text-transform:uppercase;
    font-family:var(--zhar-ptitza);
    margin-bottom:.5rem
}
@media only screen and (max-width:640px){
    .rooms-catalog__card-title{
        font-style:normal;
        font-weight:700;
        font-size:2rem;
        line-height:140%
    }
}
.rooms-catalog__card-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    margin-bottom:1.5rem
}
@media only screen and (max-width:640px){
    .rooms-catalog__card-text{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:170%;
        margin-bottom:.7rem
    }
}
.rooms-catalog__card-features{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:3rem;
    row-gap:1.5rem;
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .rooms-catalog__card-features{
        gap:2.5rem;
        row-gap:1.2rem
    }
}
.rooms-catalog__card-feature{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    display:inline-flex;
    align-items:center;
    gap:.8rem
}
@media only screen and (max-width:640px){
    .rooms-catalog__card-feature{
        font-style:normal;
        font-weight:500;
        font-size:1rem;
        line-height:1.2rem;
        gap:.6rem
    }
}
.rooms-catalog__card-feature::before{
    content:"";
    display:block;
    width:1.4rem;
    height:1.4rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    background-image:url(../img/diamond-shape-black.svg);
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .rooms-catalog__card-feature::before{
        width:1.4rem;
        height:1.4rem
    }
}
.rooms-catalog__card-btns{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:2rem;
    margin-top:auto
}
@media only screen and (max-width:640px){
    .rooms-catalog__card-btns{
        grid-gap:1rem;
        margin:0
    }
}
.rooms-catalog__card-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #000;
    transition:background-color .2s,color .2s,border-color .2s;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:2rem;
    text-align:center;
    padding:1.4rem 2.8rem;
    color:#000
}
@media only screen and (max-width:640px){
    .rooms-catalog__card-btn{
        font-style:normal;
        font-weight:500;
        font-size:1.1rem;
        line-height:140%;
        padding:1rem 2rem
    }
}
.rooms-catalog__card-btn:link,.rooms-catalog__card-btn:visited{
    color:#000
}
.rooms-catalog__card-btn--filled{
    background-color:#000;
    color:#fff;
    font-weight:700
}
.rooms-catalog__card-btn--filled:link,.rooms-catalog__card-btn--filled:visited{
    color:#fff
}
.no-touch .room__order-link:hover .room__order-link-text svg,.no-touch .rooms-catalog__card-btn:hover .rooms-catalog__card-btn-text svg{
    opacity:1;
    visibility:inherit;
    transition:opacity .2s,visibility .2s
}
.rooms-catalog__card-btn-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.rooms-catalog__card-btn-text svg{
    position:absolute;
    left:100%;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s;
    fill:currentColor;
    width:2rem;
    height:2rem;
    margin-left:1rem;
    top:50%;
    transform:translateY(-50%);
    margin-top:.2rem
}
.room{
    padding-top:13rem;
    padding-bottom:16rem;
    position:relative;
    background-color:#fff;
    z-index:1
}
@media only screen and (max-width:640px){
    .room{
        padding-top:5rem;
        padding-bottom:6.5rem
    }
}
.room__top-row{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:2rem;
    margin-bottom:1.7rem
}
@media only screen and (max-width:640px){
    .room__top-row{
        display:none
    }
}
.room__breadcrumbs{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    color:rgba(150,138,113,.5)
}
.room__breadcrumbs a:not(:last-child)::after{
    content:" / "
}
.room__slider-arrows{
    gap:2.2rem;
    display:flex;
    align-items:center;
    justify-content:flex-end
}
@media only screen and (max-width:640px){
    .room__slider-arrows{
        gap:1.6rem
    }
}
.room__slider-arrow{
    flex-shrink:0;
    transition:opacity .2s
}
.room__slider-arrow.swiper-button-disabled{
    opacity:.5;
    cursor:default
}
.room__slider-arrow svg{
    width:4rem;
    height:3rem;
    display:block;
    fill:#000
}
@media only screen and (max-width:640px){
    .room__slider-arrow svg{
        width:2.8rem;
        height:2.1rem
    }
}
.room__slider{
    margin-bottom:5rem
}
@media only screen and (max-width:640px){
    .room__slider{
        width:100vw;
        left:50%;
        transform:translateX(-50%);
        margin-bottom:2rem;
        position:relative
    }
}
.room__slider .swiper{
    overflow:visible
}
.room__slider .swiper-slide{
    width:61rem;
    margin:0 1.5rem
}
@media only screen and (max-width:640px){
    .room__slider .swiper-slide{
        width:80%;
        margin:0;
        margin-right:1rem
    }
}
.room__slider-card{
    position:relative;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0);
    overflow:hidden
}
.room__slider-card::before{
    content:"";
    display:block;
    padding-bottom:65%
}
@media only screen and (max-width:640px){
    .room__slider-card::before{
        padding-bottom:100%
    }
}
.room__slider-card-image,.room__slider-card-parallax{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%
}
.room__slider-card-image{
    -o-object-fit:cover;
    object-fit:cover
}
@media only screen and (min-width:641px){
    .room__content{
        width:100%;
        margin:0 auto;
        max-width:100rem;
        display:flex;
        gap:5rem;
        justify-content:space-between
    }
}
@media only screen and (max-width:640px){
    .room__content{
        display:flex;
        flex-direction:column
    }
}
@media only screen and (min-width:641px){
    .room__left-col{
        width:50%;
        flex-grow:1
    }
}
@media only screen and (max-width:640px){
    .room__left-col{
        display:contents
    }
}
@media only screen and (min-width:641px){
    .room__right-col{
        flex-shrink:0;
        width:16rem;
        padding-top:7rem
    }
}
@media only screen and (max-width:640px){
    .room__right-col{
        display:contents
    }
}
.room__heading-block{
    margin-bottom:1.5rem
}
@media only screen and (max-width:640px){
    .room__heading-block{
        order:-10;
        margin-bottom:.4rem
    }
}
.room__heading-block-text{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .room__heading-block-text{
        font-style:normal;
        font-weight:700;
        font-size:1.6rem;
        line-height:120%
    }
}
.room__heading-block-title{
    font-size:9rem;
    font-weight:700;
    line-height:1.2;
    font-family:var(--zhar-ptitza);
    margin-left:-.02em
}
@media only screen and (max-width:640px){
    .room__heading-block-title{
        font-style:normal;
        font-size:3.8rem;
        line-height:120%
    }
}
.room__desc{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:190%;
    margin-left:11rem;
    max-width:50rem
}
@media only screen and (max-width:640px){
    .room__desc{
        max-width:none;
        margin:0;
        padding-left:4rem;
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        margin-top:4rem
    }
}
.room__schedule{
    display:flex;
    align-items:flex-start;
    flex-wrap:wrap;
    gap:7.2rem;
    row-gap:3rem;
    margin-left:11rem;
    margin-top:3rem
}
@media only screen and (max-width:640px){
    .room__schedule{
        gap:2.5rem;
        row-gap:1.2rem;
        margin:0;
        margin-top:1.2rem;
        order:-8
    }
}
.room__schedule-item-key{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:.5rem
}
@media only screen and (max-width:640px){
    .room__schedule-item-key{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:120%;
        margin-bottom:0
    }
}
.room__schedule-item-value{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .room__schedule-item-value{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:170%
    }
}
.room__order-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-style:normal;
    font-weight:700;
    font-size:1.6rem;
    line-height:2rem;
    padding:1.4rem 2.8rem;
    width:27rem;
    background:#000;
    color:#fff;
    transition:background-color .2s,color .2s;
    margin-top:4rem
}
@media only screen and (max-width:640px){
    .room__order-link{
        padding:1.1rem 0;
        text-align:center;
        width:100%;
        font-style:normal;
        font-weight:700;
        font-size:1.6rem;
        line-height:2rem;
        order:-7;
        margin:0;
        margin-top:1.5rem
    }
}
.room__order-link:link,.room__order-link:visited{
    color:#fff
}
.room__order-link-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.room__order-link-text svg{
    position:absolute;
    left:100%;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s;
    fill:currentColor;
    width:2rem;
    height:2rem;
    margin-left:1rem;
    top:50%;
    transform:translateY(-50%);
    margin-top:.2rem
}
.room__features-list{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-gap:2.5rem
}
@media only screen and (max-width:640px){
    .room__features-list{
        display:flex;
        align-items:center;
        gap:1rem;
        flex-wrap:wrap;
        order:-9
    }
    .room__features-card{
        display:flex;
        align-items:center;
        gap:.5rem
    }
}
.room__features-card svg{
    width:2rem;
    height:2rem;
    flex-shrink:0;
    fill:#b7a98a;
    margin-bottom:.5rem
}
@media only screen and (max-width:640px){
    .room__features-card svg{
        width:1.4rem;
        height:1.4rem;
        margin:0
    }
}
.room__features-card-title{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    color:#b7a98a;
    margin-bottom:.3rem
}
@media only screen and (max-width:640px){
    .room__features-card-title{
        display:none
    }
}
.room__features-card-text{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .room__features-card-text{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        color:#b7a98a
    }
}
@media only screen and (min-width:641px){
    .room__desc-title{
        display:none
    }
}
@media only screen and (max-width:640px){
    .room__desc-title{
        font-style:normal;
        font-weight:700;
        font-size:2rem;
        line-height:140%;
        margin-bottom:.4rem
    }
}
.room-advantages{
    padding-top:0;
    padding-bottom:12rem;
    position:relative;
    background-color:#fff;
    z-index:2
}
@media only screen and (max-width:640px){
    .room-advantages{
        padding-bottom:5rem
    }
}
.room-advantages::before{
    content:"";
    position:absolute;
    z-index:-1;
    left:0;
    top:50%;
    transform:translateY(-50%);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:left center;
    pointer-events:none;
    width:30rem;
    height:60rem;
    background-image:url(../img/ra-bottom-pattern.svg)
}
@media only screen and (max-width:640px){
    .room-advantages::before{
        display:none
    }
}
.room-advantages::after{
    content:"";
    position:absolute;
    z-index:-1;
    pointer-events:none;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:right center;
    top:-22rem;
    right:0;
    width:33rem;
    height:50rem;
    background-image:url(../img/ra-top-pattern.svg)
}
@media only screen and (max-width:640px){
    .room-advantages::after{
        display:none
    }
}
.room-advantages__content{
    text-align:center;
    display:flex;
    flex-direction:column
}
.room-advantages__heading{
    font-style:normal;
    font-weight:700;
    font-size:4rem;
    line-height:140%;
    font-family:var(--zhar-ptitza);
    margin-bottom:2.5rem
}
@media only screen and (max-width:640px){
    .room-advantages__heading{
        font-style:normal;
        color:#3a241f;
        font-size:3.2rem;
        line-height:100%;
        margin-bottom:2.5rem
    }
}
.room-advantages__list{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    max-width:90rem;
    margin:0 auto;
    margin-bottom:4rem;
    gap:3rem;
    row-gap:2.5rem;
    justify-content:center
}
@media only screen and (max-width:640px){
    .room-advantages__list{
        max-width:none;
        margin:0;
        margin-bottom:3.5rem;
        gap:1rem
    }
}
.room-advantages__list-item{
    display:flex;
    align-items:center;
    flex-shrink:0;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    gap:.8rem
}
@media only screen and (max-width:640px){
    .room-advantages__list-item{
        gap:.4rem;
        font-style:normal;
        font-weight:500;
        font-size:1rem;
        line-height:1.2rem
    }
}
.room-advantages__list-item::before{
    content:"";
    flex-shrink:0;
    width:2rem;
    height:2rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    background-image:url(../img/diamond-shape-black.svg)
}
@media only screen and (max-width:640px){
    .room-advantages__list-item::before{
        width:1rem;
        height:1rem
    }
}
.room-advantages__links{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4rem
}
@media only screen and (max-width:640px){
    .room-advantages__links{
        flex-direction:column;
        align-items:center;
        gap:1.5rem
    }
}
.room-advantages__link{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    position:relative
}
@media only screen and (max-width:640px){
    .room-advantages__link{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:140%
    }
}
.room-advantages__link::before{
    content:"";
    position:absolute;
    left:0;
    top:100%;
    height:1px;
    background-color:currentColor;
    transition:transform .2s;
    width:100%;
    pointer-events:none;
    transform-origin:left center
}
.no-touch .room-advantages__link:hover::before{
    transform:scaleX(0)
}
.contacts-page{
    padding-top:16rem;
    padding-bottom:11rem;
    position:relative;
    background-color:#fff;
    z-index:1
}
@media only screen and (max-width:640px){
    .contacts-page{
        padding-top:7.5rem;
        padding-bottom:3rem
    }
}
.contacts-page__heading{
    font-style:normal;
    font-weight:700;
    font-size:9rem;
    line-height:100%;
    letter-spacing:.05em;
    font-family:var(--zhar-ptitza);
    text-align:center
}
@media only screen and (max-width:640px){
    .contacts-page__heading{
        font-style:normal;
        font-weight:400;
        font-size:3.8rem;
        line-height:120%
    }
}
.contacts-page__heading-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    margin:0 auto;
    margin-top:2rem;
    max-width:50rem;
    text-align:center
}
.contacts-page__heading-text p{
    margin-bottom:1rem
}
.contacts-page__heading-text p:last-child{
    margin-bottom:0
}
@media only screen and (max-width:640px){
    .contacts-page__heading-text{
        max-width:none;
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:170%;
        margin-top:.8rem
    }
    .contacts-page__heading-text p{
        margin-bottom:.5rem
    }
}
.contacts-page__info{
    width:33rem;
    background:#ede8dd;
    color:#000;
    padding:4rem;
    display:flex;
    flex-direction:column;
    margin:7rem 0
}
@media only screen and (min-width:641px){
    .contacts-page__info{
        grid-column:1/-1;
        grid-row:1/2;
        justify-self:flex-end;
        z-index:5
    }
}
@media only screen and (max-width:640px){
    .contacts-page__info{
        margin:0;
        width:auto;
        text-align:center;
        align-items:center;
        padding:4.5rem 3rem 2.8rem;
        margin-top:-1rem;
        position:relative;
        z-index:10
    }
}
.contacts-page__info-text{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:170%
}
@media only screen and (max-width:640px){
    .contacts-page__info-text{
        font-style:normal;
        font-weight:700;
        font-size:1.4rem;
        line-height:150%;
        margin-top:2rem
    }
}
.contacts-page__phone-link{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:180%;
    position:relative;
    align-self:flex-start
}
@media only screen and (max-width:640px){
    .contacts-page__phone-link{
        align-self:center;
        font-style:normal;
        font-weight:700;
        font-size:1.6rem;
        line-height:120%
    }
}
.contacts-page__phone-link::before{
    content:"";
    position:absolute;
    left:0;
    top:100%;
    height:1px;
    width:100%;
    background-color:currentColor;
    transition:transform .2s;
    transform-origin:left center;
    transform:scaleX(0);
    margin-top:-.6rem
}
@media only screen and (max-width:640px){
    .contacts-page__phone-link::before{
        transform:scaleX(1);
        margin:0
    }
}
.contacts-page__offices-card-contacts-value[href]:hover::before,.no-touch .contacts-page__phone-link:hover::before{
    transform:scaleX(1)
}
.contacts-page__closest{
    display:flex;
    flex-direction:column;
    grid-gap:.5rem;
    margin-top:3.5rem
}
@media only screen and (max-width:640px){
    .contacts-page__closest{
        align-items:center;
        margin-top:2rem
    }
}
.contacts-page__closest-item{
    display:flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:120%;
    gap:.9rem
}
.contacts-page__closest-item svg{
    width:1.4rem;
    height:1.4rem;
    fill:currentColor
}
.contacts-page__social-list{
    display:flex;
    align-items:center;
    gap:2.4rem;
    row-gap:1.2rem;
    flex-wrap:wrap;
    margin-top:3.5rem
}
@media only screen and (max-width:640px){
    .contacts-page__social-list{
        margin-top:3.5rem
    }
}
.contacts-page__social-list-item{
    flex-shrink:0
}
.contacts-page__social-link{
    display:block
}
.contacts-page__social-link-icon{
    display:block;
    height:2rem;
    width:auto;
    max-width:none
}
@media only screen and (min-width:641px){
    .contacts-page__map{
        display:grid;
        grid-template-columns:minmax(0,1fr);
        margin-top:4rem
    }
}
@media only screen and (max-width:640px){
    .contacts-page__map{
        margin-top:2rem
    }
}
@media only screen and (min-width:641px){
    .contacts-page__map-wrapper{
        grid-column:1/2;
        grid-row:1/2;
        display:flex;
        flex-direction:column
    }
}
.contacts-page__map-wrapper-inner{
    width:calc(100vw - var(--sb-width, 0));
    position:relative;
    left:50%;
    transform:translateX(-50%);
    flex-grow:1
}
@media only screen and (max-width:640px){
    .contacts-page__map-wrapper-inner{
        height:38rem
    }
}
.contacts-page__map-element{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background:#d3d3d3
}
.contacts-page__offices{
    width:100%;
    margin:0 auto;
    margin-top:8rem;
    max-width:102.5rem
}
@media only screen and (max-width:640px){
    .contacts-page__offices{
        margin:0;
        max-width:none;
        margin-top:2.5rem
    }
}
.contacts-page__offices-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:13rem;
    grid-row-gap:3.2rem
}
@media only screen and (max-width:640px){
    .contacts-page__offices-list{
        grid-template-columns:minmax(0,1fr);
        grid-gap:0
    }
}
.contacts-page__offices-list-item{
    display:flex;
    flex-direction:column;
    border-bottom:1px solid rgba(150,138,113,.5)
}
.contacts-page__offices-card{
    padding-bottom:3rem;
    flex-grow:1
}
@media only screen and (max-width:640px){
    .contacts-page__offices-card{
        padding:2.4rem 0
    }
}
.contacts-page__offices-card-title{
    font-style:normal;
    font-weight:700;
    font-size:4rem;
    line-height:140%;
    font-family:var(--zhar-ptitza);
    margin-bottom:1.2rem
}
@media only screen and (max-width:640px){
    .contacts-page__offices-card-title{
        font-style:normal;
        font-size:2rem;
        line-height:140%;
        letter-spacing:.05em;
        text-transform:uppercase
    }
}
.contacts-page__offices-card-contacts-list{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-gap:.7rem
}
.contacts-page__offices-card-contacts-list-item{
    display:grid;
    grid-template-columns:minmax(0,9rem) minmax(0,1fr);
    grid-gap:2rem;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .contacts-page__offices-card-contacts-list-item{
        font-style:normal;
        grid-template-columns:minmax(0,6rem) minmax(0,1fr);
        font-size:1.4rem;
        line-height:140%
    }
}
.contacts-page__offices-card-contacts-value{
    justify-self:flex-start
}
.contacts-page__offices-card-contacts-value[href]{
    position:relative
}
.contacts-page__offices-card-contacts-value[href]::before,.contacts-page__plan::before{
    content:"";
    position:absolute;
    left:0;
    height:1px;
    top:100%;
    width:100%;
    background-color:currentColor;
    transform-origin:left center
}
.contacts-page__offices-card-contacts-value[href]::before{
    transform:scaleX(0);
    margin-top:-.2rem;
    transition:transform .4s
}
@media only screen and (max-width:640px){
    .contacts-page__offices-card-contacts-value[href^="tel:"]::before{
        transform:scaleX(1)
    }
}
.contacts-page__plan{
    align-self:flex-start;
    font-style:normal;
    font-weight:500;
    font-size:1.8rem;
    line-height:140%;
    text-transform:uppercase;
    transition:all .2s;
    margin-top:3rem;
    position:relative
}
.contacts-page__plan::before{
    transition:transform .2s
}
@media only screen and (max-width:640px){
    .contacts-page__plan{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:120%;
        margin-top:2rem;
        align-self:center
    }
}
.form-page__form-policy-checkbox-text a:hover,.no-touch .contacts-page__plan:hover,.touch .contacts-page__plan:active{
    -webkit-text-decoration-color:transparent;
    text-decoration-color:transparent
}
.no-touch .contacts-page__plan:hover::before,.touch .contacts-page__plan:active::before{
    transform:scaleX(0)
}
.write-us{
    background:#332927;
    color:#fff;
    padding-top:10rem;
    position:relative;
    z-index:1;
    padding-bottom:5rem
}
@media only screen and (max-width:640px){
    .write-us{
        padding-top:3.8rem;
        padding-bottom:3rem
    }
}
.write-us__content{
    width:100%;
    margin:0 auto;
    max-width:68rem
}
@media only screen and (max-width:640px){
    .write-us__content{
        max-width:none;
        margin:0
    }
}
.write-us__heading{
    font-style:normal;
    font-weight:700;
    font-size:4rem;
    line-height:140%;
    text-align:center;
    font-family:var(--zhar-ptitza);
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .write-us__heading{
        font-style:normal;
        font-weight:400;
        font-size:3.2rem;
        text-align:center;
        letter-spacing:.05em;
        line-height:100%;
        margin-bottom:2.5rem
    }
}
.write-us__form{
    display:flex;
    flex-direction:column
}
.write-us__form .parsley-errors-list.filled{
    font-size:1.2rem;
    line-height:1.2;
    margin-top:.5rem;
    font-weight:500
}
.write-us__form-fields{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:2rem;
    grid-row-gap:3rem
}
@media only screen and (max-width:640px){
    .write-us__form-fields{
        grid-template-columns:minmax(0,1fr);
        grid-gap:1rem
    }
}
.write-us__form-field--fullwidth{
    grid-column:1/-1
}
@media only screen and (max-width:640px){
    .write-us__form-field--fullwidth{
        margin-top:2.5rem
    }
}
.write-us__form-input{
    height:3.7rem;
    width:100%;
    font:inherit;
    color:#fff;
    display:block;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:120%;
    padding:0 .5rem;
    border-bottom:1px solid rgba(206,193,163,.5)
}
@media only screen and (max-width:640px){
    .write-us__form-input{
        font-style:normal;
        height:4.2rem;
        font-size:2rem;
        line-height:120%;
        padding:0
    }
}
.write-us__form-input--name{
    background-image:url(../img/name.svg);
    background-size:2.4rem 2.4rem;
    background-repeat:no-repeat;
    background-position:right .5rem center
}
@media only screen and (max-width:640px){
    .write-us__form-input--name{
        background-size:2.7rem 2.7rem;
        background-position:right center
    }
}
.write-us__form-input--email{
    background-image:url(../img/email.svg);
    background-size:2.4rem 2.4rem;
    background-repeat:no-repeat;
    background-position:right .5rem center
}
@media only screen and (max-width:640px){
    .write-us__form-input--email{
        background-size:2.7rem 2.7rem;
        background-position:right center
    }
}
.write-us__form-input::-webkit-input-placeholder{
    color:#fff
}
.write-us__form-input:-moz-placeholder,.write-us__form-input::-moz-placeholder{
    color:#fff
}
.write-us__form-input:-ms-input-placeholder{
    color:#fff
}
textarea.write-us__form-input{
    border:1px solid rgba(206,193,163,.5);
    height:18rem;
    padding:1.7rem;
    resize:none
}
textarea.write-us__form-input::-webkit-input-placeholder{
    color:rgba(150,138,113,.5)
}
textarea.write-us__form-input:-moz-placeholder,textarea.write-us__form-input::-moz-placeholder{
    color:rgba(150,138,113,.5)
}
textarea.write-us__form-input:-ms-input-placeholder{
    color:rgba(150,138,113,.5)
}
@media only screen and (max-width:640px){
    textarea.write-us__form-input{
        height:16rem;
        font-style:normal;
        font-weight:450;
        font-size:1.4rem;
        line-height:120%;
        padding:1.1rem 1.8rem
    }
    textarea.write-us__form-input::-webkit-input-placeholder{
        color:#cec1a3
    }
    textarea.write-us__form-input:-moz-placeholder,textarea.write-us__form-input::-moz-placeholder{
        color:#cec1a3
    }
    textarea.write-us__form-input:-ms-input-placeholder{
        color:#cec1a3
    }
}
.write-us__form-submit{
    align-self:center;
    font-style:normal;
    font-weight:500;
    text-align:center;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:1.4rem;
    line-height:140%;
    width:30rem;
    border:1px solid #cec1a3;
    padding:1.2rem 2.4rem;
    color:#fff;
    transition:background-color .2s,color .2s,border-color .2s;
    margin-top:3.5rem
}
@media only screen and (max-width:640px){
    .write-us__form-submit{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        margin-top:2.4rem;
        padding:1.2rem 2.4rem;
        text-align:center;
        width:100%
    }
}
.no-touch .write-us__form-submit:hover,.touch .write-us__form-submit:active{
    background:#cec1a3
}
.form-page{
    background:#ede8dd;
    padding-top:13rem;
    padding-bottom:13rem
}
@media only screen and (max-width:640px){
    .form-page{
        background:0 0;
        padding-top:9rem;
        padding-bottom:8rem
    }
}
.form-page__content{
    margin:0 auto;
    width:100%;
    max-width:92rem;
    background:#fff;
    padding:3rem 11.8rem
}
.form-page__content--wide{
    max-width:116.4rem
}
.form-page__content--success{
    max-width:116.4rem;
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:58rem;
    align-items:center
}
@media only screen and (max-width:640px){
    .form-page__content{
        max-width:none;
        margin:0;
        padding:0;
        background:0 0;
        min-height:auto
    }
    .form-page__content--success{
        padding:8rem 0
    }
}
.form-page__heading{
    text-align:center;
    font-style:normal;
    font-weight:700;
    font-size:4rem;
    line-height:140%;
    margin-bottom:1.8rem;
    font-family:var(--zhar-ptitza);
    color:#3a241f
}
@media only screen and (max-width:640px){
    .form-page__heading{
        font-style:normal;
        font-weight:700;
        font-size:3rem;
        line-height:100%;
        text-align:center;
        letter-spacing:.05em;
        margin-bottom:1.7rem
    }
}
.form-page__heading-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    text-align:center;
    margin:0 auto;
    margin-bottom:4rem;
    max-width:43rem
}
@media only screen and (max-width:640px){
    .form-page__heading-text{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:140%;
        margin:0;
        max-width:none;
        margin-bottom:3rem
    }
}
.form-page__form{
    display:flex;
    flex-direction:column
}
.form-page__form .parsley-errors-list.filled{
    font-size:1.2rem;
    line-height:1.2;
    margin-top:.5rem;
    font-weight:500
}
.form-page__form-fields{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:2.8rem;
    grid-row-gap:3.2rem
}
@media only screen and (max-width:640px){
    .form-page__form-fields{
        grid-template-columns:minmax(0,1fr);
        grid-gap:2rem
    }
}
.form-page__form-field--fullwidth{
    grid-column:1/-1
}
.form-page__form-input{
    height:3.7rem;
    width:100%;
    font:inherit;
    color:#000;
    display:block;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:120%;
    padding:0 .5rem;
    border-bottom:1px solid rgba(150,138,113,.5)
}
@media only screen and (max-width:640px){
    .form-page__form-input{
        height:4.2rem;
        font-style:normal;
        font-size:1.4rem;
        line-height:120%;
        padding:0
    }
}
.form-page__form-input--name{
    background-image:url(../img/name-dark.svg);
    background-size:2.4rem 2.4rem;
    background-repeat:no-repeat;
    background-position:right .5rem center
}
@media only screen and (max-width:640px){
    .form-page__form-input--name{
        background-size:2.4rem 2.4rem;
        background-position:right center
    }
}
.form-page__form-input--phone{
    background-image:url(../img/phone-dark.svg);
    background-size:2.4rem 2.4rem;
    background-repeat:no-repeat;
    background-position:right .5rem center
}
@media only screen and (max-width:640px){
    .form-page__form-input--phone{
        background-size:2.4rem 2.4rem;
        background-position:right center
    }
}
.form-page__form-input::-webkit-input-placeholder{
    color:#000
}
.form-page__form-input:-moz-placeholder,.form-page__form-input::-moz-placeholder{
    color:#000
}
.form-page__form-input:-ms-input-placeholder{
    color:#000
}
textarea.form-page__form-input{
    border:1px solid rgba(150,138,113,.5);
    height:8rem;
    padding:1.2rem 1.7rem;
    resize:none
}
textarea.form-page__form-input::-webkit-input-placeholder{
    color:rgba(150,138,113,.5)
}
textarea.form-page__form-input:-moz-placeholder,textarea.form-page__form-input::-moz-placeholder{
    color:rgba(150,138,113,.5)
}
textarea.form-page__form-input:-ms-input-placeholder{
    color:rgba(150,138,113,.5)
}
@media only screen and (max-width:640px){
    textarea.form-page__form-input{
        height:16rem;
        padding:1rem 1.4rem;
        border:1px solid rgba(150,138,113,.5)
    }
    textarea.form-page__form-input::-webkit-input-placeholder{
        color:#968a71
    }
    textarea.form-page__form-input:-moz-placeholder,textarea.form-page__form-input::-moz-placeholder{
        color:#968a71
    }
    textarea.form-page__form-input:-ms-input-placeholder{
        color:#968a71
    }
}
.form-page__form-policy{
    margin-top:3rem
}
@media only screen and (max-width:640px){
    .form-page__form-policy{
        order:10;
        margin-top:2.4rem
    }
}
.form-page__form-policy-checkbox{
    display:flex;
    align-items:center;
    gap:1.5rem;
    cursor:pointer;
    -webkit-user-select:none;
    -moz-user-select:none;
    user-select:none
}
.booking__common-search-field .datepicker-dropdown:after,.booking__common-search-field .datepicker-dropdown:before,.form-page__form-policy-checkbox-input{
    display:none
}
.form-page__form-policy-checkbox-mark{
    display:inline-flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    width:1.8rem;
    height:1.8rem;
    border:1px solid #968a71
}
.form-page__form-policy-checkbox-mark svg{
    width:1rem;
    height:.7rem;
    fill:#968a71;
    transition:opacity .2s;
    opacity:0
}
.form-page__form-policy-checkbox-input:checked~.form-page__form-policy-checkbox-mark svg{
    opacity:1
}
.form-page__form-policy-checkbox-text{
    font-style:normal;
    font-weight:500;
    font-size:1rem;
    line-height:140%;
    color:#968a71
}
@media only screen and (max-width:640px){
    .form-page__form-policy-checkbox-text{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:170%
    }
}
.booking__checkout-form-policy-checkbox-text a,.form-page__form-policy-checkbox-text a{
    text-decoration:underline;
    transition:all .2s
}
@media only screen and (max-width:640px){
    .form-page__form-policy-checkbox-text--desktop{
        display:none
    }
}
@media only screen and (min-width:641px){
    .form-page__form-policy-checkbox-text--mobile{
        display:none
    }
}
.form-page__form-submit{
    font-style:normal;
    font-weight:450;
    font-size:1.4rem;
    line-height:140%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    align-self:center;
    padding:1.4rem 2.8rem;
    background-color:#000;
    color:#fff;
    width:30rem;
    margin-top:3rem
}
@media only screen and (max-width:640px){
    .form-page__form-submit{
        margin-top:2.4rem;
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        padding:1.2rem 2.4rem;
        width:auto;
        align-self:stretch
    }
}
.form-page__social-list{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:2.8rem;
    row-gap:1.4rem
}
@media only screen and (max-width:640px){
    .form-page__social-list{
        gap:2.4rem;
        row-gap:1.2rem
    }
}
.booking__common-search-field table,.booking__common-search-field tbody,.booking__common-search-field td,.booking__common-search-field th,.booking__common-search-field thead,.booking__common-search-field tr,.form-page__social-link{
    display:block
}
.no-touch .form-page__social-link:hover .form-page__social-link-icon{
    transform:scale(1.2)
}
.form-page__social-link-icon{
    height:2.5rem;
    width:auto;
    display:block;
    max-width:none;
    -o-object-fit:contain;
    object-fit:contain;
    transition:transform .4s
}
@media only screen and (max-width:640px){
    .form-page__social-link-icon{
        height:2.2rem
    }
}
.spa-services{
    background:#fff;
    padding:7.5rem 0;
    position:relative
}
@media only screen and (max-width:640px){
    .spa-services{
        padding:4.5rem 0
    }
}
.spa-services::after{
    content:"";
    position:absolute;
    width:25rem;
    height:50rem;
    right:0;
    top:0;
    background-image:url(../img/spa-services-right-pattern.svg);
    background-repeat:no-repeat;
    background-position:right center;
    background-size:contain
}
@media only screen and (max-width:640px){
    .spa-services::after{
        display:none
    }
}
.spa-services::before{
    content:"";
    position:absolute;
    background-image:url(../img/spa-services-left-pattern.svg);
    background-repeat:no-repeat;
    background-position:left center;
    background-size:contain;
    width:25rem;
    height:60rem;
    left:0;
    top:-13rem
}
@media only screen and (max-width:640px){
    .spa-services::before{
        display:none
    }
}
.spa-services__content{
    display:flex;
    flex-direction:column;
    align-items:center
}
.spa-services__heading{
    font-style:normal;
    font-weight:700;
    font-size:9rem;
    line-height:100%;
    letter-spacing:.05em;
    color:#3a241f;
    font-family:var(--zhar-ptitza);
    margin-bottom:3rem;
    text-align:center
}
@media only screen and (max-width:640px){
    .spa-services__heading{
        font-size:3.8rem;
        margin-bottom:2rem
    }
}
.spa-services__heading-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    text-align:center;
    margin-bottom:3rem;
    max-width:90rem
}
@media only screen and (max-width:640px){
    .spa-services__heading-text{
        font-size:1.4rem;
        line-height:140%;
        margin-bottom:2rem
    }
    .spa-services__heading-text p{
        margin-bottom:1.5rem
    }
    .spa-services__heading-text p:last-child{
        margin-bottom:0
    }
}
.spa-services__list{
    display:flex;
    align-items:center;
    gap:1.6rem;
    flex-wrap:wrap;
    margin-bottom:3.5rem;
    justify-content:center
}
@media only screen and (max-width:640px){
    .spa-services__list{
        gap:2rem;
        row-gap:1.5rem;
        margin-bottom:2.2rem
    }
}
.spa-services__list-item{
    flex-shrink:0
}
.spa-services__link{
    display:flex;
    align-items:center;
    flex-shrink:0;
    font-style:normal;
    font-weight:500;
    font-size:1.2rem;
    line-height:1.5rem;
    gap:.6rem;
    border:1px solid #ead7ca;
    padding:1rem;
    transition:color .2s,border-color .2s
}
.no-touch .spa-services__link:hover{
    border-color:#000
}
@media only screen and (max-width:640px){
    .spa-services__link{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:1.7rem;
        padding:1rem
    }
}
.spa-services__link::before{
    content:"";
    width:1.4rem;
    height:1.4rem;
    background-image:url(../img/diamond-shape-black.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center
}
@media only screen and (max-width:640px){
    .spa-services__link::before{
        width:1.4rem;
        height:1.4rem
    }
}
.no-touch .spa-services__arrow:hover svg{
    transform:scaleY(-1) translateY(-.2rem)
}
.spa-services__arrow svg{
    display:block;
    width:5.2rem;
    height:6.9rem;
    fill:#000;
    transform:scaleY(-1);
    transition:transform .2s
}
@media only screen and (max-width:640px){
    .spa-services__arrow svg{
        width:3.6rem;
        height:4.9rem
    }
}
.spa-slider{
    background:#fff;
    position:relative;
    padding-bottom:5rem
}
@media only screen and (max-width:640px){
    .spa-slider{
        padding-bottom:4.5rem
    }
}
.spa-slider__content{
    display:flex;
    flex-direction:column
}
@media only screen and (max-width:640px){
    .spa-slider__content .swiper{
        overflow:visible
    }
    .spa-slider__content .swiper-slide{
        margin-right:3.2rem;
        width:75%
    }
    .spa-slider__content .swiper-slide:last-child{
        margin-right:0
    }
}
.spa-slider__top-row{
    display:flex;
    align-items:center;
    gap:2rem;
    justify-content:space-between;
    margin-bottom:6rem
}
@media only screen and (max-width:640px){
    .spa-slider__top-row{
        display:contents
    }
}
.spa-slider__heading{
    font-style:normal;
    font-weight:700;
    font-size:9rem;
    line-height:120%;
    letter-spacing:.05em;
    font-family:var(--zhar-ptitza)
}
@media only screen and (max-width:640px){
    .spa-slider__heading{
        font-style:normal;
        font-weight:700;
        font-size:3.2rem;
        margin-bottom:2.5rem
    }
}
.spa-slider__arrows{
    display:flex;
    align-items:center;
    gap:2.8rem;
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .spa-slider__arrows{
        display:none
    }
}
.spa-slider__arrow{
    flex-shrink:0;
    transition:opacity .2s
}
.spa-slider__arrow.swiper-button-disabled{
    opacity:.5;
    cursor:default
}
.spa-slider__arrow svg{
    width:5rem;
    height:3.7rem;
    fill:#000;
    transition:fill .2s
}
.no-touch .spa-slider__arrow:not(.swiper-button-disabled):hover svg,.touch .spa-slider__arrow:not(.swiper-button-disabled):active svg{
    fill:#968a71
}
.spa-slider__card{
    display:flex;
    flex-direction:column;
    flex-grow:1;
    border-top:.4rem solid #ede8dd;
    padding-top:1.2rem
}
@media only screen and (max-width:640px){
    .spa-slider__card{
        border-top:.3rem solid #ede8dd
    }
}
.spa-slider__card-title{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:1.2rem
}
@media only screen and (max-width:640px){
    .spa-slider__card-title{
        font-style:normal;
        font-weight:700;
        font-size:1.8rem;
        line-height:120%
    }
}
.spa-slider__card-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .spa-slider__card-text{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:170%;
        margin-bottom:2rem
    }
}
.spa-slider__card-bottom-row{
    margin-top:auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    font-style:normal;
    font-weight:500;
    font-size:1.8rem;
    line-height:120%;
    color:#968a71
}
@media only screen and (max-width:640px){
    .spa-slider__card-bottom-row{
        font-style:normal;
        font-weight:500;
        font-size:1.6rem;
        line-height:120%
    }
}
.spa-slider__link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-style:normal;
    font-weight:700;
    font-size:1.6rem;
    line-height:2rem;
    padding:1.4rem 2.8rem;
    width:25rem;
    background:#000;
    color:#fff;
    transition:background-color .2s,color .2s;
    margin-top:9rem;
    align-self:center
}
@media only screen and (max-width:640px){
    .spa-slider__link{
        font-style:normal;
        font-weight:700;
        font-size:1.4rem;
        line-height:1.7rem;
        align-self:stretch;
        padding:1.4rem 2.8rem;
        margin-top:4rem;
        width:100%
    }
}
.spa-slider__link:link,.spa-slider__link:visited{
    color:#fff
}
.no-touch .spa-slider__link:hover .spa-slider__link-text{
    transform:translateX(-1rem)
}
.no-touch .spa-slider__link:hover .spa-slider__link-text svg{
    opacity:1;
    visibility:inherit;
    transition:opacity .2s,visibility .2s
}
.spa-slider__link-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.spa-slider__link-text svg{
    position:absolute;
    left:100%;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s;
    fill:currentColor;
    width:2rem;
    height:2rem;
    margin-left:1rem;
    top:50%;
    transform:translateY(-50%);
    margin-top:.2rem
}
.booking{
    background:#ede8dd;
    padding-top:13rem;
    padding-bottom:13rem
}
@media only screen and (max-width:640px){
    .booking{
        background:0 0;
        padding-top:7rem;
        padding-bottom:3rem
    }
}
.booking__heading{
    font-style:normal;
    font-weight:700;
    font-size:4rem;
    font-family:var(--zhar-ptitza);
    line-height:140%;
    margin-bottom:3rem;
    text-align:center;
    color:#3a241f
}
@media only screen and (max-width:640px){
    .booking__heading{
        font-style:normal;
        font-weight:700;
        font-size:3.2rem;
        line-height:100%;
        margin-bottom:.5rem
    }
}
.booking__content{
    margin:0 auto;
    width:100%;
    max-width:92rem
}
.booking__content--wide{
    max-width:116.4rem
}
@media only screen and (max-width:640px){
    .booking__content{
        display:flex;
        flex-direction:column;
        max-width:none;
        margin:0;
        align-items:stretch
    }
}
.booking__inner{
    padding:5rem 12rem 8rem;
    background-color:#fff
}
.booking__inner--checkout{
    padding:3.5rem 5rem 3.5rem 7rem
}
@media only screen and (max-width:640px){
    .booking__inner{
        padding:0;
        background:0 0
    }
}
.booking__inner-heading{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    color:#968a71;
    margin-bottom:1rem
}
@media only screen and (max-width:640px){
    .booking__inner-heading{
        text-align:center;
        font-style:normal;
        font-weight:700;
        font-size:1.8rem;
        line-height:120%;
        color:#968a71;
        margin-bottom:1rem
    }
}
.booking__variants-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:2rem
}
@media only screen and (max-width:640px){
    .booking__variants-list{
        grid-template-columns:minmax(0,1fr);
        grid-gap:1.4rem
    }
}
.booking__card,.booking__variants-list-item{
    display:flex;
    flex-direction:column
}
.booking__card{
    flex-grow:1;
    background-color:#fff
}
.booking__card:hover .booking__card-content{
    background:#ede8dd
}
.booking__card-image-container{
    position:relative
}
.booking__card-image-container::before{
    content:"";
    display:block;
    padding-bottom:56.25%
}
.booking__card-image-container::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(0deg,rgba(0,0,0,.3),rgba(0,0,0,.3))
}
.booking__card-image{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.booking__card-content{
    padding:1rem 2rem 1.5rem;
    border:1px solid #ede8dd;
    border-top:none;
    transition:border-color .2s,background-color .2s
}
@media only screen and (max-width:640px){
    .booking__card-content{
        padding:1rem
    }
}
.booking__card-title{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:.8rem
}
@media only screen and (max-width:640px){
    .booking__card-title{
        font-style:normal;
        font-weight:700;
        font-size:1.8rem;
        line-height:120%
    }
}
.booking__card-text{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .booking__card-text{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:170%;
        margin-bottom:1rem
    }
}
.booking__card-price{
    display:flex;
    align-items:center;
    gap:1rem;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    color:#968a71
}
@media only screen and (max-width:640px){
    .booking__card-price{
        font-style:normal;
        font-weight:500;
        color:#968a71;
        font-size:1rem;
        line-height:1.2rem
    }
}
.booking__card-price::before{
    content:"";
    flex-shrink:0;
    width:1.4rem;
    height:1.4rem;
    background-image:url(../img/diamond-shape-biege.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center
}
@media only screen and (max-width:640px){
    .booking__card-price::before{
        display:none
    }
}
.booking__common-search{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:2rem;
    margin-bottom:2.5rem
}
@media only screen and (max-width:640px){
    .booking__common-search{
        grid-template-columns:minmax(0,1fr);
        grid-gap:1rem;
        margin-bottom:2.5rem
    }
}
.booking__common-search-field{
    position:relative
}
.booking__common-search-field .datepicker.dropdown-menu{
    width:100%!important;
    min-width:none;
    box-shadow:none!important;
    border-radius:0!important;
    background:#ede8dd;
    padding:1.7rem .6rem 3rem;
    border:0!important
}
.booking__common-search-field .datepicker .datepicker-switch{
    color:#3a241f;
    text-align:center
}
@media only screen and (max-width:640px){
    .booking__common-search-field .datepicker .datepicker-switch{
        font-size:1.6rem!important
    }
}
.booking__common-search-field .datepicker td{
    color:#968a71
}
.booking__common-search-field .datepicker .datepicker-switch,.booking__common-search-field .datepicker td,.booking__common-search-field .datepicker th{
    font-style:normal;
    font-weight:500;
    font-size:2rem;
    line-height:120%
}
@media only screen and (max-width:640px){
    .booking__common-search-field .datepicker td,.booking__common-search-field .datepicker th{
        font-size:1.6rem
    }
}
.booking__common-search-field .datepicker th{
    color:#3a241f
}
.booking__common-search-field .datepicker td,.booking__common-search-field .datepicker th{
    padding:0;
    width:auto;
    height:auto;
    transition:border-color .2s;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    border-radius:0
}
.booking__common-search-field .datepicker-days tbody td,.booking__common-search-field .datepicker-days tbody th,.booking__common-search-field .dow{
    aspect-ratio:1.1/1
}
.booking__common-search-field .datepicker-days tr{
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    grid-gap:.5rem
}
.booking__common-search-field [colspan="5"]{
    grid-column:span 5
}
.booking__common-search-field .day{
    border:1px solid transparent;
    transition:color .2s,border-color .2s!important
}
.booking__common-search-field .day:hover,.booking__common-search-field .month:hover{
    color:#3a241f!important;
    background:0 0!important
}
.booking__common-search-field .month{
    display:block;
    width:auto;
    height:auto;
    float:none;
    margin:0;
    cursor:pointer;
    border-radius:0;
    padding:.5rem;
    font-style:normal;
    font-weight:500;
    font-size:2rem;
    line-height:120%;
    color:#968a71;
    text-align:center;
    border:1px solid transparent;
    transition:border-color .2s,color .2s
}
@media only screen and (max-width:640px){
    .booking__common-search-field .month{
        font-size:1.6rem
    }
}
.booking__common-search-field .month.active,.booking__common-search-field .month.focused{
    background:0 0!important;
    border-color:#3a241f!important;
    color:#3a241f!important;
    text-shadow:none!important;
    font-weight:700
}
.booking__common-search-field .year{
    display:block;
    width:auto;
    height:auto;
    float:none;
    margin:0;
    cursor:pointer;
    border-radius:0;
    padding:.5rem;
    font-style:normal;
    font-weight:500;
    font-size:2rem;
    line-height:120%;
    color:#968a71;
    text-align:center;
    border:1px solid transparent;
    transition:border-color .2s,color .2s
}
@media only screen and (max-width:640px){
    .booking__common-search-field .year{
        font-size:1.6rem
    }
}
.booking__common-search-field .year:hover{
    color:#3a241f!important;
    background:0 0!important
}
.booking__common-search-field .year.active,.booking__common-search-field .year.focused{
    background:0 0!important;
    border-color:#3a241f!important;
    color:#3a241f!important;
    text-shadow:none!important;
    font-weight:700
}
.booking__common-search-field .year.new,.booking__common-search-field .year.old{
    color:rgba(150,138,113,.3)
}
.booking__common-search-field .day.active{
    background:0 0!important;
    text-shadow:none!important;
    color:#3a241f!important;
    border-color:#3a241f!important;
    font-weight:700
}
.booking__common-search-field .day.new,.booking__common-search-field .day.old{
    color:rgba(150,138,113,.3)
}
.booking__common-search-field .datepicker .datepicker-switch:hover,.booking__common-search-field .datepicker .next:hover,.booking__common-search-field .datepicker .prev:hover,.booking__common-search-field .datepicker table tr td span.focused,.booking__common-search-field .datepicker table tr td span:hover,.booking__common-search-field .datepicker tfoot tr th:hover{
    background-color:transparent
}
.booking__common-search-field thead tr:nth-child(2){
    margin-bottom:2rem
}
.booking__common-search-field .datepicker-months thead tr{
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    grid-gap:.5rem
}
.booking__common-search-field .datepicker-months tbody tr td,.booking__common-search-field .datepicker-years tbody tr td{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-gap:1rem;
    grid-row-gap:2rem
}
.booking__common-search-field .datepicker-years thead tr:nth-child(2){
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    grid-gap:.5rem
}
.booking__common-search-field-label{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    color:#968a71
}
@media only screen and (max-width:640px){
    .booking__common-search-field-label{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        margin-bottom:0
    }
}
.booking__common-search-input{
    display:block;
    height:3.8rem;
    border-bottom:1px solid #968a71;
    font-style:normal;
    font-weight:500;
    font-size:2rem;
    line-height:120%
}
@media only screen and (max-width:640px){
    .booking__common-search-input{
        font-style:normal;
        font-weight:700;
        font-size:1.6rem;
        line-height:120%
    }
}
.booking__common-search-input--calendar{
    background-size:3rem 3rem;
    background-repeat:no-repeat;
    background-position:right center;
    background-image:url(../img/calendar.svg)
}
@media only screen and (max-width:640px){
    .booking__common-search-input--calendar{
        background-size:2.2rem 2.2rem
    }
}
.booking__common-search-input--time{
    background-size:3rem 3rem;
    background-repeat:no-repeat;
    background-position:right center;
    background-image:url(../img/clock.svg)
}
@media only screen and (max-width:640px){
    .booking__common-search-input--time{
        background-size:2.2rem 2.2rem
    }
}
.booking__common-search-dropdown{
    position:absolute;
    left:0;
    top:100%;
    width:100%;
    height:auto;
    background:#ede8dd;
    z-index:70;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s
}
.booking__common-search-dropdown.active{
    opacity:1;
    visibility:inherit;
    transition:opacity .2s,visibility .2s
}
.booking__common-search-dropdown-inner{
    background:#ede8dd;
    padding:0 2.6rem;
    padding-bottom:3.5rem
}
@media only screen and (max-width:640px){
    .booking__common-search-dropdown-inner{
        padding:1.5rem;
        padding-top:0
    }
}
.booking__common-search-dropdown-header{
    height:5.2rem;
    display:flex;
    align-items:center;
    justify-content:space-between;
    border-bottom:1px solid rgba(150,138,113,.2)
}
@media only screen and (max-width:640px){
    .booking__common-search-dropdown-header{
        height:4rem
    }
}
.booking__common-search-dropdown-header-title{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    color:#968a71
}
@media only screen and (max-width:640px){
    .booking__common-search-dropdown-header-title{
        font-size:1.2rem
    }
}
.booking__common-search-dropdown-scroll-wrapper{
    height:auto
}
.booking__common-search-dropdown-checkbox{
    display:block;
    -webkit-user-select:none;
    -moz-user-select:none;
    user-select:none
}
.booking__common-search-dropdown-checkbox-input{
    display:none
}
.booking__common-search-dropdown-checkbox-content{
    display:flex;
    align-items:center;
    padding:1.7rem 0;
    justify-content:space-between;
    gap:2rem;
    border-bottom:1px solid rgba(150,138,113,.2);
    cursor:pointer
}
@media only screen and (max-width:640px){
    .booking__common-search-dropdown-checkbox-content{
        padding:1.2rem 0
    }
}
.booking__common-search-dropdown-checkbox-text{
    color:#968a71;
    font-style:normal;
    font-weight:500;
    font-size:2rem;
    line-height:120%;
    transition:color .2s
}
@media only screen and (max-width:640px){
    .booking__common-search-dropdown-checkbox-text{
        font-size:1.6rem;
        line-height:1.2
    }
}
.booking__common-search-dropdown-checkbox-items{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    align-items:center;
    grid-gap:2rem;
    flex-shrink:0;
    width:11rem
}
@media only screen and (max-width:640px){
    .booking__common-search-dropdown-checkbox-items{
        grid-gap:1rem;
        width:10rem
    }
}
.booking__common-search-dropdown-checkbox-item{
    display:flex;
    align-items:center;
    gap:.5rem;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    color:#968a71;
    transition:color .2s
}
.booking__common-search-dropdown-checkbox-item:only-child{
    grid-column:2/3
}
.booking__common-search-dropdown-checkbox-item-icon{
    flex-shrink:0;
    width:2.2rem;
    height:2.2rem;
    color:transparent;
    transition:color .2s
}
@media only screen and (max-width:640px){
    .booking__common-search-dropdown-checkbox-item-icon{
        width:1.8rem;
        height:1.8rem
    }
}
.booking__common-search-dropdown-checkbox-item-icon svg{
    display:block;
    width:100%;
    height:100%;
    fill:#968a71;
    transition:fill .2s
}
.booking__common-search-dropdown-checkbox-input:checked~.booking__common-search-dropdown-checkbox-content .booking__common-search-dropdown-checkbox-item,.booking__common-search-dropdown-checkbox-input:checked~.booking__common-search-dropdown-checkbox-content .booking__common-search-dropdown-checkbox-item-icon,.booking__common-search-dropdown-checkbox-input:checked~.booking__common-search-dropdown-checkbox-content .booking__common-search-dropdown-checkbox-text{
    color:#3a241f
}
.booking__common-search-dropdown-checkbox-input:checked~.booking__common-search-dropdown-checkbox-content .booking__common-search-dropdown-checkbox-item-icon svg{
    fill:#3a241f
}
.booking__common-search-dropdown-checkbox-input[disabled]~.booking__common-search-dropdown-checkbox-content{
    cursor:default
}
.booking__common-search-dropdown-checkbox-input[disabled]~.booking__common-search-dropdown-checkbox-content .booking__common-search-dropdown-checkbox-item,.booking__common-search-dropdown-checkbox-input[disabled]~.booking__common-search-dropdown-checkbox-content .booking__common-search-dropdown-checkbox-item-icon,.booking__common-search-dropdown-checkbox-input[disabled]~.booking__common-search-dropdown-checkbox-content .booking__common-search-dropdown-checkbox-text{
    color:rgba(150,138,113,.3)
}
.booking__common-search-dropdown-checkbox-input[disabled]~.booking__common-search-dropdown-checkbox-content .booking__common-search-dropdown-checkbox-item-icon svg{
    fill:rgba(150,138,113,.3)
}
.booking__tickets-heading{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    color:#968a71;
    padding-bottom:.7rem;
    border-bottom:1px solid rgba(226,216,192,.5)
}
@media only screen and (max-width:640px){
    .booking__tickets-heading{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        padding-bottom:1rem
    }
}
.booking__tickets-list{
    display:flex;
    flex-direction:column
}
.booking__tickets-list-item{
    border-bottom:1px solid rgba(226,216,192,.5)
}
.booking__tickets-card{
    padding:1.2rem 0;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:2rem;
    align-items:center
}
@media only screen and (max-width:640px){
    .booking__tickets-card{
        grid-template-columns:auto minmax(0,1fr);
        grid-gap:0;
        grid-column-gap:1.7rem;
        grid-template-areas:"image title" "image title-text" "image price" "image link" "image amount";
        align-content:flex-start;
        align-items:stretch
    }
}
.booking__tickets-card-left-col{
    display:flex;
    align-items:center
}
@media only screen and (max-width:640px){
    .booking__tickets-card-left-col{
        display:contents
    }
}
.booking__tickets-card-image-container{
    position:relative;
    margin-right:2.4rem;
    flex-shrink:0;
    width:11.6rem
}
@media only screen and (max-width:640px){
    .booking__tickets-card-image-container{
        width:12.4rem;
        grid-area:image;
        margin:0
    }
}
.booking__tickets-card-image-container::before{
    content:"";
    display:block;
    padding-bottom:56.25%
}
@media only screen and (max-width:640px){
    .booking__tickets-card-image-container::before{
        padding-bottom:65%
    }
}
.booking__tickets-card-image{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.booking__tickets-card-title-wrapper{
    width:50%;
    flex-grow:1
}
@media only screen and (max-width:640px){
    .booking__tickets-card-title-wrapper{
        display:contents
    }
}
.booking__tickets-card-title{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:120%;
    margin-bottom:.3rem
}
@media only screen and (max-width:640px){
    .booking__tickets-card-title{
        font-style:normal;
        font-weight:700;
        font-size:1.6rem;
        line-height:120%;
        margin:0;
        grid-area:title;
        margin-bottom:1.2rem
    }
}
.about-food__text p:last-child,.booking__tickets-card-title:last-child{
    margin-bottom:0
}
.booking__tickets-card-title-text{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:150%
}
@media only screen and (max-width:640px){
    .booking__tickets-card-title-text{
        font-style:normal;
        font-weight:500;
        font-size:1rem;
        line-height:1.2rem;
        grid-area:title-text
    }
}
.booking__tickets-card-right-col{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-gap:2rem;
    align-items:center
}
@media only screen and (max-width:640px){
    .booking__tickets-card-right-col{
        display:contents
    }
}
.booking__tickets-card-price{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:130%;
    min-width: 170px;
}

.old_price {
    font-size: 1.2rem;
    color: #968a71;
    text-decoration: line-through;
    margin-left: 6px;
}

.discount_block {
    font-size: 1.2rem;
    line-height: 94%;
    margin-left: 6px;
    padding: 3px 5px;
    color: #fff;
    background-color: #b60000;
}

@media only screen and (max-width:640px){
    .booking__tickets-card-price{
        font-style:normal;
        font-weight:500;
        font-size:1rem;
        line-height:1.6rem;
        grid-area:price;
        min-width: auto;
    }
    .booking__tickets-card-price br{
        display:none
    }
    
    .old_price {
        font-size: 0.8rem;
    }
    
    .discount_block {
        font-size: 0.8rem;
        padding: 2px 4px;
    }
}

.booking__tickets-card-link{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    color:#968a71;
    text-decoration:underline;
    -webkit-text-decoration-color:#968a71;
    text-decoration-color:#968a71;
    transition:all .2s;
    justify-self:flex-start
}
@media only screen and (max-width:640px){
    .booking__tickets-card-link{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        grid-area:link;
        margin-top:1.2rem
    }
}
.booking__tickets-card-link:link,.booking__tickets-card-link:visited{
    color:#968a71
}
.booking__tickets-card-link:hover{
    -webkit-text-decoration-color:transparent;
    text-decoration-color:transparent
}
.booking__tickets-card-amount{
    display:flex
}
.booking__tickets-card-amount-with-text{
    display:block
}
.booking__tickets-card-amount-block{
    display:flex
}
.booking__tickets-card-amount-text{
    display:block;
    color:#b60000;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:120%;
    margin-top:0.4rem
}
.booking__tickets-card-amount-text.js-not-allow{
    color:#000000;
    margin-top:0
}
.js-tickets-item.disabled .booking__tickets-card-amount-with-text.js-ticket-amount-2{
    display:block
}
.js-tickets-item.disabled .booking__tickets-card-amount-with-text.js-ticket-amount-2 .booking__tickets-card-amount-block{
    display:none
}
@media only screen and (max-width:640px){
    .booking__tickets-card-amount{
        margin-top:1.2rem;
        justify-content:flex-start
    }
    .booking__tickets-card-amount-text{
        font-size:1rem;
        margin-top:0.2rem
    }
}
.booking__tickets-card-amount-btn{
    width:3rem;
    height:3rem;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border:1px solid #968a71;
    transition:border-color .2s,opacity .2s;
    flex-shrink:0;
    cursor:pointer
}
@media only screen and (max-width:640px){
    .booking__tickets-card-amount-btn{
        grid-area:amount;
        border-color:#000
    }
}
.booking__tickets-card-amount-btn svg{
    width:1.8rem;
    height:1.8rem;
    fill:#968a71;
    transition:fill .2s
}
@media only screen and (max-width:640px){
    .booking__tickets-card-amount-btn svg{
        fill:#000
    }
}
.booking__tickets-card-amount-btn svg.icon-plus{
    width:2rem;
    height:2rem
}
.booking__tickets-card-amount-btn[disabled]{
    opacity:.5;
    cursor:default
}
.booking__tickets-card-amount-btn:not([disabled]):hover{
    border-color:#000
}
.booking__tickets-card-amount-btn:not([disabled]):hover svg{
    fill:#000
}
.booking__tickets-card-amount-input{
    width:2rem;
    flex-grow:1;
    text-align:center;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    color:#000
}
@media only screen and (max-width:640px){
    .booking__tickets-card-amount-input{
        flex-grow:0;
        width:3.5rem
    }
}
.booking__bottom-row{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-gap:2rem;
    align-items:center;
    margin-top:2.8rem
}
@media only screen and (max-width:640px){
    .booking__bottom-row{
        grid-template-columns:repeat(2,minmax(0,1fr));
        grid-gap:1rem;
        grid-row-gap:1.5rem;
        margin-top:1.5rem
    }
}
.booking__back-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    color:#fff;
    padding:1.3rem 2.6rem;
    background:#968a71
}
.booking__back-btn:link,.booking__back-btn:visited{
    color:#fff
}
.no-touch .booking__back-btn:hover .booking__back-btn-text{
    transform:translateX(1rem)
}
.no-touch .booking__back-btn:hover .booking__back-btn-text svg,.no-touch .booking__submit-btn:hover .booking__submit-btn-text svg{
    opacity:1;
    visibility:inherit;
    transition:opacity .2s,visibility .2s
}
@media only screen and (max-width:640px){
    .booking__back-btn{
        font-style:normal;
        font-weight:500;
        font-size:1.1rem;
        line-height:140%;
        background:0 0;
        border:1px solid #000;
        color:#000;
        text-align:center;
        padding:1rem 1.5rem
    }
    .booking__back-btn:link,.booking__back-btn:visited{
        color:#000
    }
}
.booking__back-btn-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.booking__back-btn-text svg,.booking__submit-btn-text svg{
    position:absolute;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s;
    fill:currentColor;
    width:2rem;
    height:2rem;
    top:50%;
    margin-top:.1rem
}
.booking__back-btn-text svg{
    right:100%;
    margin-right:1rem;
    transform:translateY(-50%) scaleX(-1)
}
.booking__submit-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    color:#fff;
    padding:1.3rem 2.6rem;
    background:#000
}
.booking__submit-btn:link,.booking__submit-btn:visited{
    color:#fff
}
.no-touch .booking__submit-btn:hover .booking__submit-btn-text{
    transform:translateX(-1rem)
}
@media only screen and (max-width:640px){
    .booking__submit-btn{
        font-style:normal;
        font-weight:500;
        font-size:1.1rem;
        line-height:140%;
        background:0 0;
        border:1px solid #000;
        text-align:center;
        padding:1rem 1.5rem;
        background-color:#000
    }
}
.booking__submit-btn-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.booking__submit-btn-text svg{
    left:100%;
    margin-left:1rem;
    transform:translateY(-50%)
}
.booking__total{
    text-align:center;
    font-style:normal;
    font-weight:700;
    font-size:1.6rem;
    line-height:140%;
    color:#000
}
@media only screen and (max-width:640px){
    .booking__total{
        grid-column:1/-1;
        font-style:normal;
        font-weight:500;
        order:-5;
        font-size:1.4rem;
        line-height:140%
    }
}
.booking__heading-text{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    margin-bottom:2.5rem;
    text-align:center;
    margin-top:-2.5rem
}
@media only screen and (max-width:640px){
    .booking__heading-text{
        font-style:normal;
        font-weight:500;
        font-size:1rem;
        line-height:1.2rem;
        margin-top:0
    }
}
.booking__checkout{
    display:flex;
    align-items:center;
    gap:4.5rem
}
@media only screen and (max-width:640px){
    .booking__checkout{
        flex-direction:column;
        align-items:stretch;
        gap:0
    }
}
.booking__checkout-left-col{
    width:50%;
    flex-grow:1
}
@media only screen and (max-width:640px){
    .booking__checkout-left-col{
        width:100%;
        flex-grow:0
    }
}
.booking__checkout-right-col{
    width:36rem;
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .booking__checkout-right-col{
        width:100%;
        flex-shrink:1
    }
}
.booking__checkout-info-heading{
    font-style:normal;
    font-weight:500;
    font-size:2rem;
    line-height:140%;
    margin-bottom:2.5rem
}
@media only screen and (max-width:640px){
    .booking__checkout-info-heading{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        margin-bottom:2rem;
        text-align:center
    }
}
.booking__checkout-info-list-item{
    border-bottom:1px solid rgba(226,216,192,.5)
}
.booking__checkout-info-list-item:first-child{
    border-top:1px solid rgba(226,216,192,.5)
}
.booking__checkout-info-card{
    display:grid;
    align-items:center;
    grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);
    grid-gap:2rem;
    padding:1.2rem 0
}
@media only screen and (max-width:640px){
    .booking__checkout-info-card{
        grid-template-columns:minmax(0,12.4rem) minmax(0,1fr);
        grid-gap:1.6rem;
        grid-row-gap:0;
        grid-template-areas:"image title" "image title-text" "image summary" "image price";
        align-content:flex-start;
        align-items:stretch
    }
}
.booking__checkout-info-card-image-container{
    position:relative
}
@media only screen and (max-width:640px){
    .booking__checkout-info-card-image-container{
        grid-area:image
    }
}
.booking__checkout-info-card-image-container::before{
    content:"";
    display:block;
    padding-bottom:56.25%
}
@media only screen and (max-width:640px){
    .booking__checkout-info-card-image-container::before{
        padding-bottom:110%
    }
}
.booking__checkout-info-card-image{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.booking__checkout-info-card-title{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:120%;
    margin-bottom:.3rem
}
@media only screen and (max-width:640px){
    .booking__checkout-info-card-title{
        grid-area:title;
        font-style:normal;
        font-weight:700;
        font-size:1.6rem;
        line-height:120%;
        margin-bottom:.2rem
    }
}
.booking__checkout-info-card-text{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:150%
}
@media only screen and (max-width:640px){
    .booking__checkout-info-card-text{
        grid-area:title-text;
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:130%;
        margin-bottom:2rem;
        color:#3a241f
    }
}
.booking__checkout-info-card-summary{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:150%
}
@media only screen and (max-width:640px){
    .booking__checkout-info-card-summary{
        grid-area:summary;
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:130%;
        margin-bottom:2rem
    }
}
.booking__checkout-info-card-price{
    justify-self:flex-end;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .booking__checkout-info-card-price{
        grid-area:price;
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:170%;
        justify-self:flex-start
    }
}
.booking__checkout-info-card-left-wrapper{
    display:grid;
    grid-template-columns:minmax(0,12.5rem) 1fr;
    grid-gap:2.8rem
}
@media only screen and (max-width:640px){
    .booking__checkout-info-card-left-wrapper{
        display:contents
    }
}
.booking__checkout-info-card-right-wrapper{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-gap:2rem;
    align-items:flex-start
}
@media only screen and (max-width:640px){
    .booking__checkout-info-card-right-wrapper{
        display:contents
    }
}
.booking__checkout-actions{
    margin-top:4rem;
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);
    grid-gap:2rem
}
@media only screen and (max-width:640px){
    .booking__checkout-actions{
        margin-top:1.5rem;
        grid-template-columns:minmax(0,1fr);
        grid-gap:2rem
    }
}
.booking__checkout-back-link{
    display:flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    gap:1.1rem;
    line-height:140%;
    text-decoration:underline;
    transition:all .2s;
    color:#968a71
}
@media only screen and (max-width:640px){
    .booking__checkout-back-link{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        justify-content:center;
        order:5
    }
}
.booking__checkout-back-link:link,.booking__checkout-back-link:visited{
    color:#968a71
}
.booking__checkout-back-link svg{
    fill:currentColor;
    width:2.1rem;
    height:1.6rem;
    margin-top:.2rem
}
.booking__checkout-conditions-payment-info-link:hover,.booking__checkout-conditions-rules-link:hover,.booking__checkout-form-policy-checkbox-text a:hover,.no-touch .booking__checkout-back-link:hover{
    -webkit-text-decoration-color:transparent;
    text-decoration-color:transparent
}
.booking__checkout-total-discount{
    display:flex;
    align-items:center;
    gap:2rem;
    font-style:normal;
    font-weight:700;
    font-size:1.4rem;
    line-height:140%;
    color:#b7a98a;
    margin-bottom:.4rem;
    justify-content:space-between
}
@media only screen and (max-width:640px){
    .booking__checkout-total-discount{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%
    }
}
.booking__checkout-total-price{
    display:flex;
    align-items:center;
    justify-content:space-between;
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .booking__checkout-total-price{
        font-style:normal;
        font-weight:700;
        font-size:1.8rem;
        line-height:120%
    }
}
.booking__checkout-conditions{
    margin-top:6rem;
    display:flex;
    align-items:center
}
@media only screen and (max-width:640px){
    .booking__checkout-conditions{
        display:none
    }
}
.booking__checkout-conditions-cards{
    display:flex;
    align-items:center;
    gap:1.4rem
}
.booking__checkout-conditions-cards-title{
    font-style:normal;
    font-weight:500;
    font-size:1.2rem;
    line-height:140%
}
.booking__checkout-conditions-cards-list{
    display:flex;
    align-items:center;
    gap:1.2rem
}
.booking__checkout-conditions-cards-image{
    display:block;
    height:2.4rem;
    width:auto
}
.booking__checkout-conditions-rules-link{
    margin-right:2.5rem;
    margin-left:auto
}
.booking__checkout-conditions-payment-info-link,.booking__checkout-conditions-rules-link{
    font-style:normal;
    font-weight:500;
    text-decoration:underline;
    -webkit-text-decoration-color:#000;
    text-decoration-color:#000;
    font-size:1.2rem;
    line-height:140%;
    transition:all .2s
}
.booking__checkout-form{
    background:#ede8dd;
    color:#000;
    padding:3.6rem 2.6rem 2.6rem
}
@media only screen and (max-width:640px){
    .booking__checkout-form{
        margin:0 calc(-1*var(--content-padding));
        padding:0 var(--content-padding);
        padding-top:2.2rem;
        padding-bottom:3rem;
        margin-top:4rem
    }
}
.booking__checkout-form .parsley-errors-list.filled{
    margin-top:.5rem;
    font-size:1.4rem;
    line-height:1.2
}
@media only screen and (max-width:640px){
    .booking__checkout-form .parsley-errors-list.filled{
        font-size:1rem;
        margin-top:.3rem
    }
}
.booking__checkout-form-heading{
    font-style:normal;
    font-weight:700;
    font-size:2.4rem;
    text-align:center;
    line-height:140%;
    margin-bottom:3rem
}
@media only screen and (max-width:640px){
    .booking__checkout-form-heading{
        font-style:normal;
        font-weight:700;
        font-size:1.8rem;
        line-height:120%;
        margin-bottom:2.4rem
    }
}
.booking__checkout-form-fields{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-gap:1rem
}
.booking__checkout-form-input{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:120%;
    border-bottom:1px solid rgba(150,138,113,.5);
    color:#000;
    height:4rem
}
.booking__checkout-form-input--email,.booking__checkout-form-input--name,.booking__checkout-form-input--phone, .booking__checkout-form-input--calendar{
    background-image:url(../img/phone-dark.svg);
    background-position:right center;
    background-size:2rem 2rem;
    background-repeat:no-repeat
}
.booking__checkout-form-input--email,.booking__checkout-form-input--name{
    background-image:url(../img/name-dark.svg)
}
.booking__checkout-form-input--email{
    background-image:url(../img/email-dark.svg);
    background-size:1.8rem 1.8rem
}
.booking__checkout-form-input--calendar{
    background-image:url(../img/calendar.svg);
    background-size:1.8rem 1.8rem
}
.booking__checkout-form-input::-webkit-input-placeholder{
    color:#000
}
.booking__checkout-form-input:-moz-placeholder,.booking__checkout-form-input::-moz-placeholder{
    color:#000
}
.booking__checkout-form-input:-ms-input-placeholder{
    color:#000
}
.booking__checkout-form-promo{
    display:flex;
    align-items:center;
    gap:1rem;
    border:1px solid rgba(150,138,113,.2);
    padding:1.5rem;
    margin-top:3.4rem
}
@media only screen and (max-width:640px){
    .booking__checkout-form-promo{
        padding:1.3rem 1rem;
        margin-top:3rem;
        gap:.5rem
    }
}
.booking__checkout-form-promo-input{
    width:50%;
    flex-grow:1;
    font-style:normal;
    font-weight:500;
    font-size:1.2rem;
    line-height:140%;
    color:#968a71
}
@media only screen and (max-width:640px){
    .booking__checkout-form-promo-input{
        font-size:1.17rem
    }
}
.booking__checkout-form-promo-input::-webkit-input-placeholder{
    color:#968a71
}
.booking__checkout-form-promo-input:-moz-placeholder,.booking__checkout-form-promo-input::-moz-placeholder{
    color:#968a71
}
.booking__checkout-form-promo-input:-ms-input-placeholder{
    color:#968a71
}
.booking__checkout-form-promo-btn{
    flex-shrink:0;
    width:2.1rem;
    height:1.6rem
}
.booking__checkout-form-promo-btn svg{
    display:block;
    width:100%;
    height:100%;
    fill:#968a71
}
.booking__checkout-form-submit{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    background:#000;
    color:#fff;
    margin-top:3rem;
    display:block;
    padding:1.5rem 2.4rem;
    width:100%
}
@media only screen and (max-width:640px){
    .booking__checkout-form-submit{
        margin-top:1.5rem;
        padding:1rem 2.4rem
    }
}
.booking__checkout-form-submit:link,.booking__checkout-form-submit:visited{
    color:#fff
}
.booking__checkout-form-policy{
    margin-top:2.2rem
}
.booking__checkout-form-policy-checkbox{
    display:block;
    cursor:pointer;
    -webkit-user-select:none;
    -moz-user-select:none;
    user-select:none
}
.booking__checkout-form-policy-checkbox-input{
    display:none
}
.booking__checkout-form-policy-checkbox-content{
    display:flex;
    align-items:flex-start;
    gap:1rem
}
.booking__checkout-form-policy-checkbox-mark{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:1.8rem;
    height:1.8rem;
    border:1px solid #968a71;
    flex-shrink:0
}
.booking__checkout-form-policy-checkbox-mark svg{
    width:1rem;
    height:.8rem;
    fill:#968a71;
    transition:fill .2s,opacity .2s;
    opacity:0
}
.booking__checkout-form-policy-checkbox-input:checked~.booking__checkout-form-policy-checkbox-content .booking__checkout-form-policy-checkbox-mark svg{
    opacity:1
}
.booking__checkout-form-policy-checkbox-text,.booking__room-heading{
    font-style:normal;
    font-weight:500;
    font-size:1.2rem;
    line-height:140%;
    color:#968a71
}
.booking__room-heading{
    font-size:1.6rem;
    margin-bottom:1rem
}
@media only screen and (max-width:640px){
    .booking__room-heading{
        font-style:normal;
        font-size:1.4rem;
        line-height:140%
    }
}
.booking__room-slider{
    position:relative
}
.booking__room-slider .swiper-slide{
    width:50%
}
@media only screen and (max-width:640px){
    .booking__room-slider .swiper-slide{
        width:85%;
        margin-right:1.4rem
    }
    .booking__room-slider .swiper-slide:last-child{
        margin-right:0
    }
    .booking__room-slider .swiper{
        overflow:visible
    }
}
.booking__room-slider-arrow{
    top:50%;
    transform:translateY(-50%);
    width:3.3rem;
    height:2.5rem;
    transition:opacity .2s;
    position:absolute;
    z-index:20
}
@media only screen and (max-width:640px){
    .booking__room-slider-arrow{
        display:none
    }
}
.booking__room-slider-arrow--prev{
    right:100%;
    margin-right:5rem
}
.booking__room-slider-arrow--next{
    left:100%;
    margin-left:5rem
}
.booking__room-slider-arrow.swiper-button-disabled{
    opacity:.5;
    cursor:default
}
.no-touch .about-food__slider-next:not(.swiper-button-disabled):hover svg,.no-touch .about-food__slider-prev:not(.swiper-button-disabled):hover svg,.no-touch .about-space__arrows-btn:not(.swiper-button-disabled):hover svg,.no-touch .booking-room-modal__arrow:not(.swiper-button-disabled):hover svg,.no-touch .booking__room-slider-arrow:not(.swiper-button-disabled):hover,.touch .about-food__slider-next:not(.swiper-button-disabled):active svg,.touch .about-food__slider-prev:not(.swiper-button-disabled):active svg,.touch .about-space__arrows-btn:not(.swiper-button-disabled):active svg,.touch .booking-room-modal__arrow:not(.swiper-button-disabled):active svg,.touch .booking__room-slider-arrow:not(.swiper-button-disabled):active{
    fill:#968a71
}
.booking__room-slider-arrow svg{
    display:block;
    width:100%;
    height:100%;
    fill:#000;
    transition:fill .2s
}
.booking__room-slider-card{
    display:flex;
    flex-direction:column;
    flex-grow:1;
    background-color:#fff;
    transition:background-color .2s,color .2s
}
.booking__room-slider-card.selected{
    background:#ede8dd
}
.booking__room-slider-card-image-container{
    position:relative;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0)
}
.booking__room-slider-card-image-container::before{
    content:"";
    display:block;
    padding-bottom:56.25%
}
.booking__room-slider-card-image-overlay{
    position:absolute;
    inset:0;
    background-image:linear-gradient(0deg,rgba(0,0,0,.3),rgba(0,0,0,.3));
    display:none
}
@media only screen and (max-width:640px){
    .booking__room-slider-card-image-overlay{
        display:block
    }
}
.booking__room-slider-card-image,.booking__room-slider-card-video-wrapper video{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.booking__room-slider-card-video-wrapper{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    z-index:10;
    opacity:0;
    visibility:hidden;
    transition:opacity .3s,visibility 0s linear .3s
}
.video-shown .booking__room-slider-card-video-wrapper{
    opacity:1;
    visibility:inherit;
    transition:opacity .3s,visibility .3s
}
.booking__room-slider-card-content{
    display:flex;
    flex-direction:column;
    flex-grow:1;
    border:1px solid #ede8dd;
    border-top:none;
    padding:1rem 2rem 2rem
}
@media only screen and (max-width:640px){
    .booking__room-slider-card-content{
        padding:1.2rem
    }
}
.booking__room-slider-card-title{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:.5rem
}
@media only screen and (max-width:640px){
    .booking__room-slider-card-title{
        font-weight:700;
        font-size:1.8rem;
        line-height:120%
    }
}
.booking__room-slider-card-features-list{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:2rem;
    row-gap:1rem;
    margin-bottom:1.4rem
}
@media only screen and (max-width:640px){
    .booking__room-slider-card-features-list{
        gap:1rem;
        margin-bottom:1rem
    }
}
.booking__room-slider-card-features-list-item{
    display:inline-flex;
    align-items:center;
    flex-shrink:0;
    white-space:nowrap;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    gap:.6rem
}
@media only screen and (max-width:640px){
    .booking__room-slider-card-features-list-item{
        font-size:1rem;
        line-height:1.2rem
    }
}
.booking__room-slider-card-features-list-item::before{
    content:"";
    flex-shrink:0;
    width:1.4rem;
    height:1.4rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    background-image:url(../img/diamond-shape-black.svg)
}
.booking__room-slider-card-btns{
    margin-top:auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:2rem
}
.booking__room-slider-card-link{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    text-transform:uppercase;
    color:#968a71;
    -webkit-text-decoration-line:underline;
    text-decoration-line:underline;
    transition:all .2s;
    flex-shrink:0;
    white-space:nowrap
}
@media only screen and (max-width:640px){
    .booking__room-slider-card-link{
        font-size:1.2rem;
        line-height:140%
    }
}
.booking__room-slider-card-link:link,.booking__room-slider-card-link:visited{
    color:#968a71
}
.no-touch .booking__room-slider-card-link:hover,.touch .booking__room-slider-card-link:active{
    -webkit-text-decoration-color:transparent;
    text-decoration-color:transparent
}
.booking__room-slider-card-checkbox{
    -webkit-user-select:none;
    -moz-user-select:none;
    user-select:none;
    cursor:pointer;
    display:block;
    flex-shrink:0;
    white-space:nowrap
}
.booking__room-slider-card-checkbox-input,.selected .booking__room-slider-card-checkbox{
    display:none
}
.booking__room-slider-card-checkbox-content{
    display:flex;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    width:13.2rem;
    height:3.4rem;
    border:1px solid #000;
    text-align:center;
    justify-content:center;
    align-items:center
}
@media only screen and (max-width:640px){
    .booking__room-slider-card-checkbox-content{
        width:11.3rem;
        height:2.8rem;
        font-size:1.2rem;
        line-height:170%
    }
}
.booking__room-slider-card-checkbox-input:checked~.booking__room-slider-card-checkbox-content{
    display:none
}
.booking__room-slider-card-amount{
    display:flex;
    align-items:center;
    width:13.2rem;
    height:3.4rem;
    border:1px solid #000;
    flex-shrink:0;
    padding:0 .5rem;
    display:none
}
@media only screen and (max-width:640px){
    .booking__room-slider-card-amount{
        width:11.3rem;
        height:2.8rem
    }
}
.selected .booking__room-slider-card-amount{
    display:flex
}
.booking__room-slider-card-amount-btn{
    width:2rem;
    height:2rem;
    flex-shrink:0;
    transition:opacity .5s
}
@media only screen and (max-width:640px){
    .booking__room-slider-card-amount-btn{
        width:1.8rem;
        height:1.8rem
    }
}
.booking__room-slider-card-amount-btn svg{
    display:block;
    width:100%;
    height:100%;
    fill:#968a71
}
.booking__room-slider-card-amount-btn:not([disabled]){
    cursor:pointer
}
.booking__room-slider-card-amount-btn[disabled]{
    opacity:.5;
    cursor:default
}
.booking__room-slider-card-amount-input{
    width:20%;
    flex-grow:1;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    text-align:center;
    color:#000;
    pointer-events:none
}
@media only screen and (max-width:640px){
    .booking__room-slider-card-amount-input{
        font-size:1.2rem;
        line-height:170%
    }
}
.booking-room-modal{
    position:fixed;
    left:0;
    top:0;
    right:0;
    height:100%;
    -webkit-overflow-scrolling:touch;
    overflow-x:hidden;
    display:flex;
    flex-direction:column;
    z-index:200;
    background:#ede8dd;
    opacity:0;
    visibility:hidden;
    transition:opacity .4s,visibility 0s linear .4s;
    padding:var(--content-padding) 0
}
@media only screen and (max-width:640px){
    .booking-room-modal{
        background-color:#fff;
        padding-top:9rem;
        padding-bottom:3rem
    }
}
.booking-room-modal:not(.active){
    right:calc(-1*var(--sb-width, 0))
}
.booking-room-modal.active{
    opacity:1;
    visibility:inherit;
    transition:opacity .4s,visibility .4s
}
.booking-room-modal .container{
    margin-top:auto;
    margin-bottom:auto
}
.booking-room-modal__inner{
    width:100%;
    max-width:92rem;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    position:relative;
    right:calc(var(--sb-width, 0)/2)
}
.booking-room-modal__heading{
    text-align:center;
    font-style:normal;
    font-weight:400;
    font-size:4rem;
    font-family:var(--zhar-ptitza);
    line-height:140%;
    color:#3a241f;
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .booking-room-modal__heading{
        font-style:normal;
        font-weight:400;
        font-size:3.2rem;
        line-height:100%;
        letter-spacing:.05em;
        margin-bottom:2rem
    }
}
.booking-room-modal__content{
    background:#fff;
    color:#000;
    padding:4rem;
    padding-top:0;
    padding-bottom:3rem;
    overflow:hidden
}
@media only screen and (max-width:640px){
    .booking-room-modal__content{
        display:contents
    }
}
.booking-room-modal__top-row{
    display:flex;
    align-items:center;
    gap:3rem;
    justify-content:space-between;
    min-height:6rem
}
@media only screen and (max-width:640px){
    .booking-room-modal__top-row{
        display:contents
    }
}
.booking-room-modal__arrows{
    display:flex;
    align-items:center;
    gap:1.4rem;
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .booking-room-modal__arrows{
        display:none
    }
}
.booking-room-modal__arrow{
    flex-shrink:0;
    width:2.5rem;
    height:1.9rem;
    transition:opacity .2s
}
.booking-room-modal__arrow.swiper-button-disabled{
    opacity:.5
}
.booking-room-modal__arrow svg,.booking-room-modal__close svg{
    display:block;
    width:100%;
    height:100%;
    fill:#000;
    transition:fill .2s,transform .2s
}
.booking-room-modal__close{
    width:3.2rem;
    height:3.2rem;
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .booking-room-modal__close{
        position:absolute;
        right:.25rem;
        top:-3.5rem;
        width:2.8rem;
        height:2.8rem
    }
}
.booking-room-modal__close svg{
    fill:#968a71;
    transition:fill .2s
}
.no-touch .booking-room-modal__close:hover svg,.touch .booking-room-modal__close:active svg{
    fill:#000
}
@media only screen and (max-width:640px){
    .booking-room-modal__slider{
        margin:0 calc(-1*var(--content-padding))
    }
}
.booking-room-modal__slider .swiper{
    overflow:visible
}
.booking-room-modal__slider .swiper-slide{
    width:30rem;
    display:flex;
    flex-direction:column;
    margin:0 .8rem
}
@media only screen and (max-width:640px){
    .booking-room-modal__slider .swiper-slide{
        width:100%;
        margin:0
    }
}
.booking-room-modal__slider-card{
    position:relative
}
.booking-room-modal__slider-card::before{
    content:"";
    display:block;
    padding-bottom:65%
}
@media only screen and (max-width:640px){
    .booking-room-modal__slider-card::before{
        padding-bottom:70%
    }
}
.booking-room-modal__card-image{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.booking-room-modal__row{
    margin-top:4rem;
    display:flex;
    align-items:flex-start;
    gap:4rem
}
@media only screen and (max-width:640px){
    .booking-room-modal__row{
        display:flex;
        flex-direction:column;
        margin-top:2rem;
        gap:0
    }
}
.booking-room-modal__left-col{
    width:50%;
    flex-grow:1;
    display:flex;
    flex-direction:column
}
@media only screen and (max-width:640px){
    .booking-room-modal__left-col{
        width:100%;
        flex-grow:0;
        display:contents
    }
}
.booking-room-modal__right-col{
    width:26rem;
    flex-shrink:0;
    display:flex;
    flex-direction:column
}
@media only screen and (max-width:640px){
    .booking-room-modal__right-col{
        width:100%;
        flex-shrink:1;
        display:contents
    }
}
.booking-room-modal__type{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:150%
}
@media only screen and (max-width:640px){
    .booking-room-modal__type{
        font-size:1.4rem;
        line-height:140%;
        margin-bottom:1rem
    }
}
.booking-room-modal__inner-heading{
    font-style:normal;
    font-weight:400;
    font-size:4rem;
    line-height:140%;
    font-family:var(--zhar-ptitza);
    margin-bottom:1.2rem
}
@media only screen and (max-width:640px){
    .booking-room-modal__inner-heading{
        font-style:normal;
        font-weight:400;
        font-size:3rem;
        line-height:100%;
        letter-spacing:.05em
    }
}
.booking-room-modal__inner-text{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    max-width:48rem;
    margin-bottom:1.2rem
}
@media only screen and (max-width:640px){
    .booking-room-modal__inner-text{
        max-width:none;
        font-size:1.2rem;
        line-height:170%;
        order:9;
        margin-bottom:3rem
    }
}
.booking-room-modal__schedule{
    display:flex;
    flex-wrap:wrap;
    gap:8rem;
    row-gap:4rem;
    align-items:flex-start;
    margin-bottom:3rem
}
@media only screen and (max-width:640px){
    .booking-room-modal__schedule{
        gap:2rem;
        row-gap:1rem;
        margin-bottom:1.8rem
    }
}
.booking-room-modal__schedule-item-key{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:.2rem
}
@media only screen and (max-width:640px){
    .booking-room-modal__schedule-item-key{
        font-size:1.4rem;
        line-height:140%;
        font-weight:500
    }
}
.booking-room-modal__schedule-item-value{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .booking-room-modal__schedule-item-value{
        font-size:1.4rem;
        line-height:140%
    }
}
.booking-room-modal__back-btn{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%;
    -webkit-text-decoration-line:underline;
    text-decoration-line:underline;
    transition:all .2s
}
@media only screen and (max-width:640px){
    .booking-room-modal__back-btn{
        font-size:1.4rem;
        line-height:140%;
        order:10
    }
}
.booking-room-modal__back-btn:hover{
    -webkit-text-decoration-color:transparent;
    text-decoration-color:transparent
}
.booking-room-modal__list{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-gap:3.2rem
}
@media only screen and (max-width:640px){
    .booking-room-modal__list{
        display:flex;
        align-items:center;
        gap:1rem;
        flex-wrap:wrap;
        margin-bottom:2rem
    }
}
.booking-room-modal__card{
    display:flex;
    flex-direction:column
}
@media only screen and (max-width:640px){
    .booking-room-modal__card{
        flex-direction:row;
        align-items:center;
        gap:.6rem
    }
}
.booking-room-modal__card svg{
    width:2rem;
    height:2rem;
    flex-shrink:0;
    fill:#b7a98a;
    margin-bottom:1rem
}
@media only screen and (max-width:640px){
    .booking-room-modal__card svg{
        width:1.5rem;
        height:1.5rem;
        margin:0
    }
}
.booking-room-modal__card-title{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    color:#b7a98a;
    margin-bottom:.2rem
}
@media only screen and (max-width:640px){
    .booking-room-modal__card-title{
        display:none
    }
}
.booking-room-modal__card-text{
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .booking-room-modal__card-text{
        font-style:normal;
        font-size:1.2rem;
        color:#b7a98a;
        line-height:170%
    }
}
.about-intro{
    padding-bottom:5rem;
    position:relative;
    padding-top:15rem;
    z-index:1
}
@media only screen and (max-width:640px){
    .about-intro{
        padding-top:7.5rem;
        padding-bottom:2.5rem
    }
}
.about-intro::before{
    content:"";
    width:24rem;
    height:50rem;
    position:absolute;
    z-index:-1;
    pointer-events:none;
    top:13rem;
    left:0;
    background-image:url(../img/about-intro-left-pattern.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:left center
}
@media only screen and (max-width:640px){
    .about-intro::before{
        display:none
    }
}
.about-intro::after{
    content:"";
    position:absolute;
    pointer-events:none;
    z-index:-1;
    width:25rem;
    height:50rem;
    top:21rem;
    right:0;
    background-image:url(../img/about-intro-right-pattern.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:right center
}
@media only screen and (max-width:640px){
    .about-intro::after{
        display:none
    }
}
.about-intro__content{
    display:flex;
    flex-direction:column;
    padding-left:23rem;
    padding-right:23rem
}
@media only screen and (max-width:640px){
    .about-intro__content{
        padding:0
    }
}
.about-intro__main-heading{
    text-align:center;
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:2.8rem
}
@media only screen and (max-width:640px){
    .about-intro__main-heading{
        font-style:normal;
        font-weight:700;
        font-size:1.6rem;
        line-height:120%;
        margin-bottom:2rem
    }
}
.about-intro__main-heading::before{
    content:"";
    width:2.4rem;
    height:2.4rem;
    background-image:url(../img/diamond-shape-black.svg);
    flex-shrink:0;
    margin:0 auto;
    margin-bottom:1.5rem;
    display:block;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center
}
@media only screen and (max-width:640px){
    .about-intro__main-heading::before{
        width:1.8rem;
        height:1.8rem;
        margin-bottom:.6rem
    }
}
.about-intro__secondary-heading{
    font-style:normal;
    font-weight:700;
    font-size:9rem;
    line-height:100%;
    margin-bottom:3.5rem;
    font-family:var(--zhar-ptitza);
    text-align:center;
    color:#3a241f
}
@media only screen and (max-width:640px){
    .about-intro__secondary-heading{
        font-style:normal;
        font-weight:400;
        font-size:3.8rem;
        line-height:120%;
        margin-bottom:2rem;
        color:#332927
    }
}
.about-intro__text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    text-align:center
}
@media only screen and (max-width:640px){
    .about-intro__text{
        font-style:normal;
        font-weight:500;
        font-size:1.2rem;
        line-height:170%
    }
}
.about-space{
    padding-bottom:13rem
}
@media only screen and (max-width:640px){
    .about-space{
        padding-bottom:8rem
    }
}
.about-space__content{
    padding-right:10rem
}
@media only screen and (max-width:640px){
    .about-space__content{
        padding:0;
        position:relative;
        z-index:1
    }
}
.about-space__top-row{
    display:flex;
    align-items:flex-start;
    gap:3rem;
    justify-content:space-between;
    margin-bottom:3rem
}
@media only screen and (max-width:640px){
    .about-space__top-row{
        display:contents
    }
}
.about-space__heading{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:110%;
    color:#3a241f;
    font-family:var(--zhar-ptitza)
}
@media only screen and (max-width:640px){
    .about-space__heading{
        font-style:normal;
        font-weight:700;
        font-size:2rem;
        line-height:140%;
        margin-bottom:2rem
    }
}
.about-space__arrows{
    display:flex;
    align-items:center;
    flex-shrink:0;
    gap:2.8rem;
    margin-top:1rem
}
@media only screen and (max-width:640px){
    .about-space__arrows{
        display:none
    }
}
.about-space__arrows-btn{
    width:5rem;
    height:3.8rem;
    flex-shrink:0;
    transition:opacity .2s
}
.about-space__arrows-btn.swiper-button-disabled{
    opacity:.5;
    cursor:default
}
.about-space__arrows-btn svg{
    display:block;
    width:100%;
    height:100%;
    fill:#000;
    transition:fill .2s
}
.about-space__bottom-row{
    display:flex;
    align-items:flex-start
}
@media only screen and (max-width:640px){
    .about-space__bottom-row{
        flex-direction:column;
        align-items:stretch
    }
}
.about-space__left-col{
    width:48rem;
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .about-space__left-col{
        width:100%;
        flex-shrink:1;
        display:contents
    }
}
.about-space__right-col{
    width:50%;
    flex-grow:1
}
@media only screen and (max-width:640px){
    .about-space__right-col{
        width:100%;
        flex-grow:0;
        display:contents
    }
}
.about-space__list{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:2.4rem;
    margin-bottom:4.7rem
}
@media only screen and (max-width:640px){
    .about-space__list{
        gap:1rem;
        margin-bottom:1.7rem;
        order:-10
    }
}
.about-space__link{
    font-style:normal;
    font-weight:500;
    font-size:1.2rem;
    line-height:1.5rem;
    display:inline-flex;
    align-items:center;
    gap:.6rem;
    border:1px solid #ead7ca;
    transition:color .2s,border-color .2s,background-color .2s;
    padding:1rem
}
@media only screen and (max-width:640px){
    .about-space__link{
        padding:.7rem;
        font-size:1.2rem;
        line-height:1.5rem
    }
}
.about-space__link::before{
    content:"";
    width:1.4rem;
    height:1.4rem;
    flex-shrink:0;
    background-image:url(../img/diamond-shape-black.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center
}
@media only screen and (max-width:640px){
    .about-space__link::before{
        width:1rem;
        height:1rem
    }
}
.no-touch .about-space__link:hover,.touch .about-space__link:active{
    background:#ead7ca
}
.about-space__slider{
    margin-top:-7.5rem;
    position:relative;
    z-index:1
}
@media only screen and (max-width:640px){
    .about-space__slider{
        margin:0;
        order:-1;
        margin-bottom:2.5rem;
        position:static
    }
    .about-space__slider .swiper{
        overflow:visible
    }
    .about-space__slider .swiper-slide{
        width:90%;
        margin-right:1.7rem
    }
    .about-space__slider .swiper-slide:last-child{
        margin-right:0
    }
}
.about-space__rotating-text{
    position:absolute;
    right:0;
    bottom:0;
    width:29rem;
    height:29rem;
    transform:translateX(50%) translateY(50%);
    z-index:-1;
    pointer-events:none
}
@media only screen and (max-width:640px){
    .about-space__rotating-text{
        width:11rem;
        height:11rem
    }
}
.about-space__rotating-text-image{
    display:block;
    width:100%;
    height:100%;
    -o-object-fit:contain;
    object-fit:contain;
    -webkit-animation-name:textRotating;
    animation-name:textRotating;
    -webkit-animation-duration:40s;
    animation-duration:40s;
    -webkit-animation-iteration-count:infinite;
    animation-iteration-count:infinite;
    -webkit-animation-timing-function:linear;
    animation-timing-function:linear
}
.about-space__slider-card{
    position:relative
}
.about-space__slider-card::before{
    content:"";
    display:block;
    padding-bottom:65%
}
.about-space__slider-card-image{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.about-space__text-content-wrapper{
    padding:0 7.2rem;
    display:flex;
    flex-direction:column
}
@media only screen and (max-width:640px){
    .about-space__text-content-wrapper{
        padding:0;
        padding-right:3.5rem
    }
}
.about-space__text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:150%;
    margin-bottom:2.5rem
}
@media only screen and (max-width:640px){
    .about-space__text{
        font-size:1.2rem;
        line-height:170%;
        margin-bottom:1.7rem;
        position:relative;
        z-index:5
    }
}
.about-space__order-link{
    display:inline-flex;
    align-items:center;
    gap:.7rem;
    font-style:normal;
    font-weight:500;
    font-size:1.8rem;
    line-height:120%;
    color:#968a71
}
@media only screen and (max-width:640px){
    .about-space__order-link{
        font-size:1.4rem;
        line-height:120%;
        gap:1.2rem
    }
}
.about-space__order-link svg{
    flex-shrink:0;
    width:2.4rem;
    height:1.8rem;
    fill:currentColor;
    transition:transform .2s
}
@media only screen and (max-width:640px){
    .about-space__order-link svg{
        width:1.6rem;
        height:1.2rem
    }
}
.about-food__link:link,.about-food__link:visited,.about-space__order-link:link,.about-space__order-link:visited{
    color:#968a71
}
.about-space__order-link:hover svg,.no-touch .about-food__link:hover svg,.touch .about-food__link:active svg{
    transform:translateX(.2rem)
}
.about-food{
    padding-bottom:14rem
}
@media only screen and (max-width:640px){
    .about-food{
        padding-bottom:8.5rem
    }
}
.about-food__image-wrapper{
    position:relative;
    overflow:hidden;
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transform:translateZ(0);
    z-index:10;
    margin-bottom:6.5rem
}
@media only screen and (max-width:640px){
    .about-food__image-wrapper{
        margin-bottom:3rem
    }
}
.about-food__image{
    display:block;
    width:100%;
    height:auto
}
.about-food__content{
    width:100%;
    max-width:114.6rem;
    margin:0 auto
}
@media only screen and (max-width:640px){
    .about-food__content{
        display:flex;
        flex-direction:column;
        margin:0;
        max-width:none
    }
}
.about-food__row{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:2rem;
    align-items:flex-start;
    margin-bottom:8rem
}
@media only screen and (max-width:640px){
    .about-food__row{
        display:contents
    }
}
.about-food__heading{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:120%;
    font-family:var(--zhar-ptitza);
    margin-top:-.5rem
}
@media only screen and (max-width:640px){
    .about-food__heading{
        margin:0;
        font-size:2rem;
        line-height:140%;
        letter-spacing:.05em;
        margin-bottom:1.5rem;
        color:#3a241f
    }
}
.about-food__text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    margin-bottom:2.5rem
}
@media only screen and (max-width:640px){
    .about-food__text{
        font-size:1.2rem;
        line-height:170%;
        margin-bottom:2rem
    }
}
.about-food__text p{
    margin-bottom:1.7rem
}
.about-food__link{
    display:inline-flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.8rem;
    line-height:120%;
    color:#968a71;
    gap:1.1rem
}
@media only screen and (max-width:640px){
    .about-food__link{
        font-size:1.4rem;
        line-height:120%;
        gap:1rem
    }
}
.about-food__link svg{
    flex-shrink:0;
    transition:transform .2s;
    width:2.4rem;
    height:1.8rem;
    fill:currentColor;
    margin-top:.15rem
}
@media only screen and (max-width:640px){
    .about-food__link svg{
        margin:0;
        width:1.6rem;
        height:1.2rem
    }
}
.about-food__slider{
    position:relative
}
@media only screen and (max-width:640px){
    .about-food__slider{
        margin-top:5rem
    }
}
.about-food__slider .swiper-slide{
    width:33.33%
}
@media only screen and (max-width:640px){
    .about-food__slider .swiper-slide{
        width:15rem;
        margin:0 1rem
    }
}
.about-food__slider-prev{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:20;
    right:100%;
    margin-right:4.2rem;
    width:5rem;
    height:3.7rem;
    transition:opacity .2s
}
.about-food__slider-next svg,.about-food__slider-prev svg{
    display:block;
    width:100%;
    height:100%;
    transition:fill .2s
}
.about-food__slider-next.swiper-button-disabled,.about-food__slider-prev.swiper-button-disabled{
    opacity:.5
}
@media only screen and (max-width:640px){
    .about-food__slider-prev{
        display:none
    }
}
.about-food__slider-next{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    transition:opacity .2s;
    left:100%;
    margin-left:4.2rem;
    width:5rem;
    height:3.7rem;
    z-index:20
}
@media only screen and (max-width:640px){
    .about-food__slider-next{
        display:none
    }
}
.about-food__slider-card{
    position:relative
}
.about-food__slider-card::before{
    content:"";
    display:block;
    padding-bottom:60%
}
@media only screen and (max-width:640px){
    .about-food__slider-card::before{
        padding-bottom:65%
    }
}
.about-food__slider-card-image{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.about-new-age{
    padding-bottom:8.8rem
}
@media only screen and (max-width:640px){
    .about-new-age{
        padding-bottom:7rem
    }
}
.about-new-age__content{
    display:flex;
    flex-direction:column
}
.about-new-age__small-heading{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:140%;
    text-align:center;
    font-family:var(--zhar-ptitza);
    color:#3a241f;
    margin-bottom:3rem
}
@media only screen and (max-width:640px){
    .about-new-age__small-heading{
        font-size:2rem;
        line-height:140%;
        text-align:left;
        margin-bottom:2rem
    }
}
.about-new-age__large-heading{
    font-style:normal;
    font-weight:700;
    font-size:9rem;
    line-height:120%;
    text-align:center;
    letter-spacing:.05em;
    text-transform:uppercase;
    font-family:var(--zhar-ptitza);
    color:#3a241f;
    margin-bottom:6rem
}
@media only screen and (max-width:640px){
    .about-new-age__large-heading{
        font-weight:700;
        font-size:3.8rem;
        line-height:120%;
        margin-bottom:3rem;
        text-align:left
    }
}
.about-new-age__link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-style:normal;
    font-weight:700;
    font-size:1.6rem;
    line-height:2rem;
    padding:1.4rem 2.8rem;
    width:27rem;
    background:#000;
    color:#fff;
    transition:background-color .2s,color .2s;
    align-self:center
}
@media only screen and (max-width:640px){
    .about-new-age__link{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:1.2;
        width:100%;
        padding:1.3rem 2.6rem;
        align-self:stretch
    }
}
.about-new-age__link:link,.about-new-age__link:visited{
    color:#fff
}
.no-touch .about-new-age__link:hover .about-new-age__link-text,.no-touch .promo-detail__link:hover .promo-detail__link-text{
    transform:translateX(-1rem)
}
.no-touch .about-new-age__link:hover .about-new-age__link-text svg{
    opacity:1;
    visibility:inherit;
    transition:opacity .2s,visibility .2s
}
.about-new-age__link-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.about-new-age__link-text svg{
    position:absolute;
    left:100%;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s;
    fill:currentColor;
    width:2rem;
    height:2rem;
    margin-left:1rem;
    top:50%;
    transform:translateY(-50%);
    margin-top:.2rem
}
.programs{
    padding-bottom:12rem
}
@media only screen and (max-width:640px){
    .programs{
        padding-bottom:5rem
    }
}
.programs:first-child{
    padding-top:12rem
}
@media only screen and (max-width:640px){
    .programs:first-child{
        padding-top:8.5rem
    }
}
.programs__content{
    width:100%;
    margin:0 auto;
    max-width:114.9rem
}
.programs__block-heading{
    font-style:normal;
    font-weight:700;
    font-size:9rem;
    line-height:100%;
    letter-spacing:.05em;
    font-family:var(--zhar-ptitza);
    color:#3a241f;
    margin-bottom:7rem;
    text-align:center
}
@media only screen and (max-width:640px){
    .programs__block-heading{
        font-weight:400;
        font-size:3.8rem;
        line-height:1;
        margin-bottom:3rem
    }
}
.programs__inner-blocks{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-gap:6.5rem
}
@media only screen and (max-width:640px){
    .programs__inner-blocks{
        grid-gap:3rem
    }
}
@media only screen and (min-width:641px){
    .programs__inner-block-list{
        -moz-column-count:2;
        column-count:2;
        -moz-column-gap:12rem;
        column-gap:12rem
    }
}
@media only screen and (max-width:640px){
    .programs__inner-block-list{
        display:grid;
        grid-template-columns:minmax(0,1fr);
        grid-gap:3.5rem
    }
}
@media only screen and (min-width:641px){
    .programs__inner-block-list-item{
        -moz-column-break-inside:avoid;
        break-inside:avoid;
        border-top:1px solid rgba(226,216,192,.5)
    }
}
.programs__inner-block-card{
    padding:2.2rem 0;
    display:flex;
    align-items:flex-start;
    gap:8rem
}
@media only screen and (max-width:640px){
    .programs__inner-block-card{
        gap:3rem;
        padding:0
    }
}
.programs__inner-block-card-content{
    width:50%;
    flex-grow:1
}
.programs__inner-block-card-title{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:1rem
}
@media only screen and (max-width:640px){
    .programs__inner-block-card-title{
        font-weight:700;
        font-size:1.6rem;
        line-height:120%;
        margin-bottom:1rem
    }
}
.programs__inner-block-card-duration{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .programs__inner-block-card-duration{
        font-size:1.2rem;
        line-height:140%
    }
}
.programs__inner-block-card-desc{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:100%;
    margin-bottom:1rem
}
@media only screen and (max-width:640px){
    .programs__inner-block-card-desc{
        font-size:1.2rem;
        line-height:140%
    }
}
.programs__inner-block-card-price{
    flex-shrink:0;
    text-align:right;
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .programs__inner-block-card-price{
        font-size:1.6rem;
        line-height:120%
    }
}
.programs__inner-block-heading{
    font-style:normal;
    font-weight:700;
    font-size:4rem;
    line-height:140%;
    text-transform:uppercase;
    font-family:var(--zhar-ptitza);
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .programs__inner-block-heading{
        font-weight:700;
        font-size:2rem;
        line-height:140%;
        letter-spacing:.05em;
        text-transform:uppercase;
        margin-bottom:2.5rem
    }
}
.auth-panel{
    padding:13rem 0;
    background:#ede8dd
}
.auth-panel__body{
    max-width:93rem;
    padding:10rem 5rem;
    margin:0 auto;
    background:#fff
}
.auth-panel__title{
    margin-bottom:3rem;
    font-family:var(--zhar-ptitza);
    font-size:4rem;
    text-align:center;
    color:#3a241f
}
.auth-panel__desc{
    font-size:1.6rem;
    text-align:center;
    line-height:1.4
}
.auth-panel__desc p{
    margin-top:.8rem
}
.auth-panel__form{
    max-width:33rem;
    margin:0 auto
}
.auth-panel__code{
    margin-top:3rem;
    display:flex;
    justify-content:center;
    align-items:center
}
.auth-panel__code__input{
    margin-left:.5em;
    border-bottom:1px solid #968a7180;
    width:7rem;
    font-size:2.4rem;
    font-weight:500;
    text-align:center
}
.auth-panel__code__input::-moz-placeholder{
    color:#cec1a3
}
.auth-panel__code__input,.auth-panel__code__input::placeholder{
    color:#cec1a3
}
.auth-panel__btn-go{
    margin-top:3rem
}
.auth-panel__tip{
    margin:0 auto;
    margin-top:3rem;
    max-width:40rem;
    font-size:1rem;
    line-height:1.4;
    text-align:center;
    color:#968a71
}
.auth-panel__actions{
    margin-top:.5rem;
    font-size:1rem;
    text-align:center
}
.auth-panel__actions__item{
    display:inline-block;
    margin:0 1rem
}
.auth-panel__actions a{
    padding:.5rem 0;
    text-decoration:underline;
    color:#968a71
}
@media only screen and (max-width:640px){
    .auth-panel{
        padding-top:7rem;
        padding-bottom:3rem;
        background:0 0
    }
    .auth-panel__title{
        font-size:3.2rem
    }
    .auth-panel__body{
        padding:0
    }
    .auth-panel__desc{
        font-size:1.4rem
    }
    .auth-panel__actions{
        font-size:1.2rem
    }
    .auth-panel__actions__item{
        display:block;
        margin:1rem 0
    }
}
.my-content{
    padding:13rem 0
}
.my-content__row{
    display:flex
}
.my-content__left{
    flex:0 0 auto;
    width:38rem
}
.my-content__right{
    flex:0 0 auto;
    width:calc(100% - 38rem);
    padding-left:12rem
}
@media only screen and (max-width:640px){
    .my-content{
        padding-top:5rem;
        padding-bottom:3rem
    }
    .my-content>.container{
        padding:0
    }
    .my-content__row{
        display:block
    }
    .my-content__left{
        width:auto
    }
    .my-content__right{
        width:auto;
        padding:0 var(--content-padding)
    }
}
.my-menu{
    background:#ede8dd;
    padding:2.5rem 2rem
}
.my-menu__header{
    margin-bottom:2.2rem
}
.my-menu__title{
    font-family:var(--zhar-ptitza);
    font-size:4rem;
    line-height:1.4
}
.my-menu__name{
    font-size:2rem;
    line-height:1.4;
    color:#3a241f
}
.my-menu__links{
    border-top:1px solid rgba(206,193,163,.5);
    color:#968a71
}
.my-menu__link{
    position:relative;
    display:block;
    padding:2rem 3.6rem;
    font-size:2rem;
    font-weight:700;
    line-height:1.4;
    border-bottom:1px solid rgba(206,193,163,.5)
}
.my-menu__link.active,.my-menu__link:hover{
    color:#000
}
.my-menu__icon-diamond,.my-menu__icon-right{
    position:absolute;
    top:50%;
    transform:translateY(-50%)
}
.my-menu__icon-diamond{
    left:0;
    width:.9em
}
.my-menu__icon-right{
    width:1.35em;
    right:0
}
.my-menu__btn-quit{
    margin-top:3rem;
    display:block;
    align-items:center;
    justify-content:center;
    border:1px solid #000;
    transition:background-color .2s,color .2s,border-color .2s;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:2rem;
    text-align:center;
    padding:1.4rem 2.8rem;
    color:#000
}
.my-menu__btn-quit:hover{
    background:#000;
    color:#fff
}
@media only screen and (max-width:640px){
    .my-menu{
        padding:2.5rem var(--content-padding)
    }
    .my-menu__title{
        font-size:3.2rem
    }
    .my-menu__link,.my-menu__name{
        font-size:1.8rem
    }
    .my-menu__quit{
        font-size:1.4rem
    }
}
.my-orders{
    margin:5rem 0
}
.my-orders__header{
    display:flex;
    align-items:center;
    margin-bottom:2rem
}
.my-orders__title{
    font-size:4rem;
    font-family:var(--zhar-ptitza);
    line-height:1.4
}
.my-orders__filter{
    display:flex;
    padding-left:.5rem
}
.my-orders__btn-filter{
    margin-left:2rem;
    border:1px solid #ead7ca;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:1rem;
    font-style:normal;
    font-weight:500;
    font-size:1.2rem;
    line-height:1.5rem;
    gap:.6rem;
    flex-shrink:0;
    white-space:nowrap;
    transition:border-color .2s
}
.my-orders__btn-filter:hover:not(.active){
    border-color:var(--text-color)
}
.my-orders__btn-filter.active{
    background:rgba(226,216,192,.5)
}
.my-orders__btn-filter:before{
    content:"";
    background:url(../img/diamond-shape-black.svg) no-repeat 50% 50%;
    background-size:contain;
    flex-shrink:0;
    width:1.4rem;
    height:1.4rem
}
.my-orders__table{
    display:table;
    font-size:1.4rem;
    font-weight:450;
    line-height:1.4;
    color:rgba(0,0,0,.8);
    width:100%
}
.my-orders__row{
    display:table-row
}
.my-orders__row>div{
    display:table-cell;
    vertical-align:middle;
    padding:1.8rem 3.4rem 1.8rem 0;
    border-bottom:1px solid rgba(206,193,163,.5)
}
.my-orders__link,.my-orders__pending,.my-orders__row--names,.my-promo__arrow.swiper-button-disabled,.my-promo__arrow:hover{
    color:#968a71
}
.my-orders__row--names>div{
    padding:.8rem 0
}
@media only screen and (max-width:640px){
    .my-orders__title{
        font-size:3.2rem;
        line-height:1
    }
    .my-orders__filter{
        display:none
    }
    .my-orders__table{
        border-bottom:1px solid rgba(206,193,163,.5)
    }
    .my-orders__row{
        display:block;
        border-top:1px solid rgba(206,193,163,.5);
        padding:1.5rem 0
    }
    .my-orders__row--names{
        display:none
    }
    .my-orders__row>div{
        display:block;
        border:0;
        padding:0
    }
    .my-orders__row>div:nth-child(1){
        margin-bottom:1.1rem;
        display:flex;
        justify-content:space-between;
        color:#968a71
    }
    .my-orders__row>div:nth-child(4){
        margin-top:2rem
    }
}
.my-promo__header{
    margin-bottom:2.5rem;
    display:flex;
    align-items:flex-end
}
.my-promo__title{
    font-size:2rem;
    font-weight:700;
    line-height:1.4
}
.my-promo__arrows{
    margin-left:auto;
    display:flex;
    gap:2.5rem
}
.my-promo__arrow svg{
    width:3.3rem;
    height:auto
}
.my-promo__slider{
    overflow:hidden
}
.my-promo__slider .swiper{
    margin:0 -1rem
}
.my-promo__slider .swiper-slide{
    width:33.33%;
    padding:0 1rem
}
.my-promo__item{
    border-top:.5rem solid #ede8dd;
    padding:2rem 0
}
.my-promo__item:hover .my-promo__link svg,.no-touch .newsletter__form-submit:hover svg,.no-touch .promos-catalog__card-link:hover svg,.no-touch .promos-intro__slider-card-link:hover svg,.touch .newsletter__form-submit:active svg,.touch .promos-catalog__card-link:active svg,.touch .promos-intro__slider-card-link:active svg{
    transform:translateX(.3rem)
}
.my-promo__desc,.my-promo__name{
    font-size:1.6rem;
    font-weight:450;
    line-height:1.4
}
.my-promo__desc{
    margin:1.5rem 0 3rem;
    font-size:1.4rem
}
.my-promo__link{
    display:inline-flex;
    align-items:center;
    align-self:flex-start;
    font-style:normal;
    font-weight:500;
    font-size:1.8rem;
    color:#968a71;
    line-height:120%;
    gap:.8em
}
.my-promo__link svg{
    width:1.5em;
    height:auto;
    flex-shrink:0;
    fill:currentColor;
    transition:transform .2s
}
@media only screen and (max-width:640px){
    .my-promo__arrows{
        display:none
    }
    .my-promo__title{
        font-size:1.8rem;
        line-height:1.2
    }
    .my-promo__slider .swiper-slide{
        width:50%
    }
    .my-promo__name{
        font-size:1.4rem;
        font-weight:700
    }
    .my-promo__desc{
        margin:1.2rem 0;
        font-size:1.2rem
    }
    .my-promo__link{
        font-size:1.4rem
    }
}
.my-person{
    margin:5rem 0
}
.my-person__title{
    font-size:4rem;
    font-family:var(--zhar-ptitza);
    line-height:1.4;
    margin-bottom:.8rem
}
.my-person__data{
    border:1px solid rgba(206,193,163,.5);
    border-right:0;
    border-left:0;
    display:flex;
    flex-wrap:wrap;
    padding:1.25rem 0;
    font-weight:450;
    line-height:1.4
}
.my-person__item{
    margin:.75rem 0;
    flex:0 0 auto;
    width:33.33%
}
.my-person__label{
    color:#968a71
}
.my-person__value{
    margin-top:.4rem
}
.my-person__footer{
    margin-top:1.8rem;
    color:#968a71
}
.my-person__btn-edit{
    font-size:1.4rem;
    line-height:1.4
}
@media only screen and (max-width:640px){
    .my-person__title{
        margin-bottom:2rem;
        font-size:3.2rem;
        line-height:1
    }
    .my-person__item{
        flex:1 1 auto;
        width:auto
    }
    .my-person__item:nth-child(1){
        width:100%
    }
}
.my-bookings{
    margin:5rem 0
}
.my-bookings__title{
    font-size:2rem;
    font-weight:700;
    margin-bottom:1em
}
.my-bookings__item{
    margin-top:2rem;
    padding-right:2rem;
    font-size:1.6rem;
    font-weight:450;
    line-height:1.4
}
.my-bookings__item p{
    margin:.8rem 0
}
.my-bookings__code{
    font-weight:750
}
.my-bookings__footer{
    margin-top:2rem;
    color:#968a71
}
.my-bookings__btn-more{
    font-size:1.6rem;
    font-weight:450;
    line-height:1.4
}
@media only screen and (max-width:640px){
    .my-bookings__title{
        margin-bottom:2rem;
        font-size:1.8rem
    }
    .my-bookings__item{
        font-size:1.4rem
    }
}
.my-card{
    display:flex
}
.my-card__plastic{
    min-width:42rem;
    padding:2.5rem;
    border:1px solid #cec1a3;
    border-radius:28px
}
.my-card__title{
    font-size:4rem;
    font-family:var(--zhar-ptitza)
}
.my-card__props{
    display:flex;
    margin-top:.5rem
}
.my-card__prop{
    flex:0 0 auto;
    padding-right:2rem;
    width:50%
}
.my-card__prop__label{
    font-size:1.6rem;
    font-weight:500;
    white-space:nowrap
}
.my-card__prop__value{
    font-size:2rem;
    font-weight:700;
    margin-top:.2rem
}
.my-card__wallets{
    display:flex;
    margin:1.5rem 0
}
.my-card__wallet{
    flex:0 0 auto;
    width:50%;
    padding-right:2rem
}
.my-card__wallet__btn{
    display:flex;
    align-items:center
}
.my-card__wallet__img{
    width:4.7rem
}
.my-card__wallet__text{
    padding-left:1.16em;
    font-size:1.2rem;
    font-weight:500;
    line-height:1.4
}
.my-card__wallet__name{
    text-decoration:underline
}
.my-card__footer{
    color:#968a71
}
.my-card__btn-help{
    font-size:1.4rem;
    font-weight:500;
    line-height:1.4
}
@media only screen and (max-width:640px){
    .my-card{
        justify-content:center;
        margin:3.5rem 0
    }
    .my-card__plastic{
        min-width:auto;
        padding:1.2rem;
        border-radius:1.7rem
    }
    .my-card__title{
        margin-bottom:1rem;
        font-size:2.6rem
    }
    .my-card__prop{
        padding-right:1rem
    }
    .my-card__prop__label{
        font-size:1.2rem
    }
    .my-card__prop__value{
        font-size:1.8rem
    }
    .my-card__wallet{
        padding-right:1rem
    }
    .my-card__wallet__text{
        font-size:1rem
    }
    .my-card__btn-help{
        font-size:1.2rem
    }
}
@media only screen and (max-width:400px){
    .my-card{
        display:block
    }
}
.my-checkout__return{
    margin-bottom:4.6rem;
    color:#968a71
}
.my-checkout__btn-back{
    display:flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.4rem;
    gap:1.1rem;
    line-height:140%;
    transition:all .2s
}
.my-checkout__btn-back svg{
    fill:currentColor;
    width:1.5em;
    height:auto;
    margin-top:.2em
}
.my-checkout__header{
    display:flex;
    align-items:flex-end;
    margin-bottom:2.5rem
}
.my-checkout__code{
    margin-left:auto;
    padding-left:2rem
}
.my-checkout__code__label{
    font-size:1.4rem;
    font-weight:450;
    line-height:1.4
}
.my-checkout__code__value,.my-checkout__title{
    font-size:4rem;
    font-family:var(--zhar-ptitza);
    color:#3a241f
}
.my-checkout__code__value{
    margin-top:.5rem
}
.my-checkout__title{
    margin-bottom:.7rem;
    line-height:1.4
}
.my-checkout__props{
    display:flex;
    gap:2rem;
    font-size:2rem;
    font-weight:450;
    line-height:1.4
}
.my-checkout__props dl{
    display:inline-flex;
    gap:1rem
}
.my-checkout__props dd{
    font-weight:700
}
.my-checkout__footer{
    text-align:right;
    font-weight:700
}
.my-checkout__discount{
    margin-top:2.5rem;
    font-size:1.4rem
}
.my-checkout__total{
    margin-top:.5rem;
    font-size:2rem
}
.my-checkout__status{
    margin-top:2.3rem;
    font-size:1.4rem;
    color:#968a71
}
@media only screen and (max-width:640px){
    .my-checkout__return{
        margin-bottom:2.5rem
    }
    .my-checkout__btn-back{
        font-size:1.8rem;
        line-height:1.2
    }
    .my-checkout__btn-back svg{
        width:1em
    }
    .my-checkout__header{
        display:block
    }
    .my-checkout__title{
        margin-bottom:2rem;
        font-size:3.2rem;
        line-height:1
    }
    .my-checkout__code{
        margin-top:3rem;
        display:flex;
        align-items:flex-end;
        justify-content:right;
        gap:1.3rem
    }
    .my-checkout__code__label{
        font-size:2.2rem
    }
    .my-checkout__code__value{
        margin-top:0;
        font-size:3.2rem;
        line-height:1
    }
    .my-checkout__props{
        font-size:1.8rem;
        display:block;
        line-height:1.2
    }
    .my-checkout__props dl{
        margin-top:1.2rem
    }
    .my-checkout__props dl:first-child{
        margin-top:0
    }
    .my-checkout__total{
        font-size:1.8rem
    }
}
.promos-intro{
    background:#ede8dd;
    padding-top:14rem;
    padding-bottom:7rem;
    position:relative;
    z-index:1
}
@media only screen and (max-width:640px){
    .promos-intro{
        padding-top:6.4rem;
        padding-bottom:1.7rem
    }
}
.promos-intro::before{
    content:"";
    position:absolute;
    left:0;
    bottom:-5.6rem;
    width:24rem;
    height:50rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:left center;
    background-image:url(../img/promo-intro-left-pattern.svg);
    z-index:-1;
    pointer-events:none
}
@media only screen and (max-width:640px){
    .promos-intro::before{
        top:1.1rem;
        left:0;
        width:9rem;
        height:17rem;
        background-image:url(../img/promo-intro-left-pattern-mobile.svg)
    }
}
.promos-intro::after{
    content:"";
    position:absolute;
    right:0;
    bottom:-13rem;
    z-index:-1;
    pointer-events:none;
    width:45rem;
    height:45rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:right center;
    background-image:url(../img/promo-intro-right-pattern.svg)
}
@media only screen and (max-width:640px){
    .promos-intro::after{
        right:0;
        width:8rem;
        height:24.5rem;
        bottom:10rem;
        background-image:url(../img/promo-intro-right-pattern-mobile.svg)
    }
}
.promos-intro__slider{
    display:flex;
    align-items:center;
    gap:4.5rem
}
@media only screen and (max-width:640px){
    .promos-intro__slider{
        flex-direction:column;
        align-items:stretch;
        gap:0
    }
}
.promos-intro__slider-wrapper{
    width:50%;
    flex-grow:1
}
@media only screen and (max-width:640px){
    .promos-intro__slider-wrapper{
        width:100%;
        flex-grow:0
    }
}
.promos-intro__slider-arrow{
    flex-shrink:0;
    width:5rem;
    height:3.7rem;
    transition:opacity .2s
}
@media only screen and (max-width:640px){
    .promos-intro__slider-arrow{
        display:none
    }
}
.promos-intro__slider-arrow.swiper-button-disabled{
    opacity:.5;
    cursor:default
}
.promos-intro__slider-arrow svg{
    display:block;
    width:100%;
    height:100%;
    fill:#000;
    transition:fill .2s
}
.no-touch .promos-intro__slider-arrow:not(.swiper-button-disabled):hover svg,.touch .promos-intro__slider-arrow:not(.swiper-button-disabled):active svg{
    fill:#968a71
}
.promos-intro__slider-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);
    grid-gap:4rem;
    align-items:center
}
@media only screen and (max-width:640px){
    .promos-intro__slider-card{
        grid-template-columns:minmax(0,1fr);
        grid-gap:2.6rem
    }
}
.promos-intro__slider-card-text-content{
    display:flex;
    flex-direction:column
}
.promos-intro__slider-card-label{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:2.7rem
}
@media only screen and (max-width:640px){
    .promos-intro__slider-card-label{
        flex-direction:column;
        align-items:center;
        align-self:center;
        text-align:center;
        font-size:1.6rem;
        line-height:120%;
        display:flex;
        margin-bottom:2rem
    }
}
.promos-intro__slider-card-label::before{
    content:"";
    width:2.4rem;
    height:2.4rem;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    background-image:url(../img/diamond-shape-black.svg);
    display:block;
    margin-bottom:.7rem
}
@media only screen and (max-width:640px){
    .promos-intro__slider-card-label::before{
        width:1.6rem;
        height:1.6rem;
        margin-bottom:.2rem;
        align-self:center
    }
}
.promos-intro__slider-card-heading{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:120%;
    color:#3a241f;
    font-family:var(--zhar-ptitza);
    margin-bottom:2.7rem
}
@media only screen and (max-width:640px){
    .promos-intro__slider-card-heading{
        font-size:3.8rem;
        margin-bottom:2rem;
        text-align:center
    }
}
.promos-intro__slider-card-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    max-width:32rem
}
@media only screen and (max-width:640px){
    .promos-intro__slider-card-text{
        font-size:1.4rem;
        line-height:140%;
        text-align:center
    }
}
.promos-intro__slider-card-image-wrapper{
    position:relative
}
.promos-intro__slider-card-image-wrapper::before{
    content:"";
    display:block;
    padding-bottom:70%
}
@media only screen and (max-width:640px){
    .promos-intro__slider-card-image-wrapper::before{
        padding-bottom:60%
    }
}
.promos-catalog__card-image-container img,.promos-intro__slider-card-image{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.promos-intro__slider-card-link{
    display:inline-flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.8rem;
    line-height:120%;
    gap:1.5rem;
    color:#968a71;
    margin-top:2rem;
    align-self:flex-start
}
@media only screen and (max-width:640px){
    .promos-intro__slider-card-link{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:120%;
        gap:.8rem;
        align-self:center
    }
}
.promos-intro__slider-card-link svg{
    flex-shrink:0;
    fill:currentColor;
    width:2.7rem;
    height:2.1rem;
    transition:fill .2s,transform .3s;
    margin-top:.15rem
}
@media only screen and (max-width:640px){
    .promos-intro__slider-card-link svg{
        margin-top:.1rem;
        width:1.8rem;
        height:1.4rem
    }
}
.promos-intro__slider-card-link:link,.promos-intro__slider-card-link:visited{
    color:#968a71
}
.promos-intro__slider-pagination{
    display:flex;
    align-items:center;
    justify-content:center;
    width:auto!important;
    gap:1.4rem;
    transform:none;
    pointer-events:all;
    margin-top:1.8rem
}
@media only screen and (min-width:641px){
    .promos-intro__slider-pagination{
        display:none
    }
}
.promos-intro__slider-pagination .swiper-pagination-bullet{
    margin:0!important;
    width:.6rem;
    height:.6rem;
    opacity:1!important;
    background:rgba(1,1,1,.2);
    position:relative
}
.promos-catalog__tabs-nav-link::before,.promos-intro__slider-pagination .swiper-pagination-bullet::before{
    content:"";
    width:1.4rem;
    height:1.4rem;
    background-image:url(../img/diamond-shape-black.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center
}
.promos-intro__slider-pagination .swiper-pagination-bullet::before{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%) scale(0);
    transition:transform .2s
}
.newsletter__slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active::before,.promos-intro__slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active::before{
    transform:translate(-50%,-50%) scale(1)
}
.promos-catalog{
    padding-top:9rem;
    padding-bottom:17rem
}
@media only screen and (max-width:640px){
    .promos-catalog{
        padding-top:5rem;
        padding-bottom:5rem
    }
}
.promos-catalog__heading{
    text-align:center;
    font-family:var(--zhar-ptitza);
    margin-bottom:2.7rem;
    font-weight:700;
    font-size:4rem;
    line-height:1.4;
    color:#3a241f
}
@media only screen and (max-width:640px){
    .promos-catalog__heading{
        font-weight:700;
        font-size:2.8rem;
        line-height:140%;
        letter-spacing:.05em;
        margin-bottom:1.5rem;
        text-align:left
    }
}
.promos-catalog__tabs-nav{
    display:flex;
    align-items:center;
    gap:2.8rem;
    margin-bottom:6rem;
    justify-content:center;
    flex-wrap:wrap
}
@media only screen and (max-width:640px){
    .promos-catalog__tabs-nav{
        gap:1.1rem;
        justify-content:flex-start;
        margin-bottom:3.5rem
    }
}
.promos-catalog__tabs-nav-link{
    font-style:normal;
    font-weight:500;
    display:inline-flex;
    align-items:center;
    font-size:1.2rem;
    line-height:1.5rem;
    gap:.6rem;
    padding:1rem;
    border:1px solid #ead7ca;
    transition:background-color .2s,border-color .2s
}
@media only screen and (max-width:640px){
    .promos-catalog__tabs-nav-link{
        padding:.8rem
    }
}
.promos-catalog__tabs-nav-link.active{
    border-color:#000
}
.promos-catalog__tabs-nav-link::before{
    flex-shrink:0
}
.promos-catalog__tabs-items{
    position:relative
}
.promos-catalog__tabs-item{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:auto;
    opacity:0;
    visibility:hidden;
    transition:opacity .4s,visibility 0s linear .4s;
    z-index:5
}
.promos-catalog__tabs-item.active{
    opacity:1;
    visibility:inherit;
    transition:opacity .4s,visibility .4s;
    z-index:10;
    position:relative
}
.promos-catalog__list{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-gap:8rem;
    grid-row-gap:10rem
}
@media only screen and (max-width:640px){
    .promos-catalog__list{
        grid-template-columns:repeat(2,minmax(0,1fr));
        grid-gap:1rem;
        grid-row-gap:3.4rem
    }
}
.promos-catalog__card{
    display:flex;
    flex-direction:column
}
.promos-catalog__card-image-container{
    position:relative;
    background:#ede8dd;
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .promos-catalog__card-image-container{
        margin-bottom:1.2rem
    }
}
.promos-catalog__card-image-container::before{
    content:"";
    display:block;
    padding-bottom:120%
}
.promos-catalog__card-image-container--medium::before{
    padding-bottom:80%
}
.promos-catalog__card-image-container--empty{
    height:.5rem
}
.promos-catalog__card-image-container--empty::before{
    display:none
}
.promos-catalog__card-title{
    margin-bottom:1.2rem;
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%
}
@media only screen and (max-width:640px){
    .promos-catalog__card-title{
        font-weight:700;
        font-size:1.4rem;
        line-height:140%;
        margin-bottom:1rem
    }
}
.promos-catalog__card-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    margin-bottom:1.6rem
}
@media only screen and (max-width:640px){
    .promos-catalog__card-text{
        font-size:1.2rem;
        line-height:170%;
        margin-bottom:1.3rem
    }
}
.promos-catalog__card-link{
    display:inline-flex;
    align-items:center;
    font-style:normal;
    font-weight:500;
    font-size:1.8rem;
    line-height:120%;
    color:#968a71;
    gap:1.5rem
}
@media only screen and (max-width:640px){
    .promos-catalog__card-link{
        font-size:1.4rem;
        line-height:120%;
        gap:.8rem
    }
}
.promos-catalog__card-link:link,.promos-catalog__card-link:visited{
    color:#968a71
}
.promos-catalog__card-link svg{
    flex-shrink:0;
    width:2.7rem;
    height:2.1rem;
    fill:#968a71;
    transition:transform .2s
}
@media only screen and (max-width:640px){
    .promos-catalog__card-link svg{
        width:1.8rem;
        height:1.6rem
    }
}
.promo-detail{
    padding-top:14rem;
    padding-bottom:7rem
}
@media only screen and (max-width:640px){
    .promo-detail{
        padding-top:6rem;
        padding-bottom:2rem
    }
}
.promo-detail__breadcrumbs{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    color:rgba(150,138,113,.5);
    max-width:68rem;
    margin:0 auto;
    margin-bottom:2rem
}
.promo-detail--no-slider .promo-detail__breadcrumbs{
    max-width:92rem
}
@media only screen and (max-width:640px){
    .promo-detail__breadcrumbs{
        font-size:1.2rem;
        line-height:170%;
        margin-bottom:1rem
    }
}
.promo-detail__breadcrumbs a::after{
    content:" / "
}
.promo-detail__breadcrumbs a:last-child::after{
    display:none
}
.promo-detail__slider{
    margin-bottom:3.5rem
}
@media only screen and (max-width:640px){
    .promo-detail__slider{
        margin-bottom:2rem
    }
}
.promo-detail__slider .swiper{
    overflow:visible
}
.promo-detail__slider .swiper-slide{
    width:68rem;
    margin:0 1rem
}
@media only screen and (max-width:640px){
    .promo-detail__slider .swiper-slide{
        width:90%;
        margin:0;
        margin-right:1.7rem
    }
    .promo-detail__slider .swiper-slide:last-child{
        margin-right:0
    }
}
.promo-detail__slider-card{
    position:relative
}
.promo-detail__slider-card::before{
    content:"";
    display:block;
    padding-bottom:56.25%
}
@media only screen and (max-width:640px){
    .promo-detail__slider-card::before{
        padding-bottom:65%
    }
}
.promo-detail__slider-card-image{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.promo-detail__content{
    max-width:68rem;
    margin:0 auto;
    width:100%
}
.promo-detail--no-slider .promo-detail__content{
    max-width:92rem
}
.promo-detail__title{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:1.5rem
}
@media only screen and (max-width:640px){
    .promo-detail__title{
        font-style:normal;
        font-weight:700;
        font-size:1.8rem;
        line-height:120%;
        margin-bottom:1rem
    }
}
.promo-detail__heading{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:8.4rem;
    font-family:var(--zhar-ptitza);
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .promo-detail__heading{
        font-size:3.8rem;
        line-height:1.2;
        margin-bottom:1rem
    }
}
.promo-detail__text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:1.9;
    margin-bottom:3rem
}
@media only screen and (max-width:640px){
    .promo-detail__text{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:140%;
        margin-bottom:2rem
    }
}
.promo-detail__link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-style:normal;
    font-weight:700;
    font-size:1.6rem;
    line-height:2rem;
    padding:1.4rem 2.8rem;
    width:27rem;
    background:#000;
    color:#fff;
    transition:background-color .2s,color .2s
}
@media only screen and (max-width:640px){
    .promo-detail__link{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:1.7rem;
        width:100%;
        padding:1.3rem 2.6rem
    }
}
.promo-detail__link:link,.promo-detail__link:visited{
    color:#fff
}
.no-touch .newsletter__slider-card-link:hover .newsletter__slider-card-link-text svg,.no-touch .promo-detail__link:hover .promo-detail__link-text svg{
    opacity:1;
    visibility:inherit;
    transition:opacity .2s,visibility .2s
}
.promo-detail__link-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.promo-detail__link-text svg{
    position:absolute;
    left:100%;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s;
    fill:currentColor;
    width:2rem;
    height:2rem;
    margin-left:1rem;
    top:50%;
    transform:translateY(-50%);
    margin-top:.2rem
}
.promo-detail__image-wrapper{
    width:100%;
    max-width:92rem;
    margin:0 auto;
    margin-bottom:2.2rem
}
.promo-detail__image{
    display:block;
    width:100%;
    height:auto
}
.certificates-intro{
    background-color:#fff;
    padding-top:15rem;
    position:relative;
    z-index:1;
    padding-bottom:10rem
}
@media only screen and (max-width:640px){
    .certificates-intro{
        padding-top:7.5rem;
        padding-bottom:7rem
    }
}
.certificates-intro::before{
    content:"";
    width:25rem;
    height:50rem;
    position:absolute;
    left:0;
    top:5.7rem;
    background-image:url(../img/certificates-pattern-left.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:left center;
    z-index:-1;
    pointer-events:none
}
@media only screen and (max-width:640px){
    .certificates-intro::before{
        display:none
    }
}
.certificates-intro::after{
    content:"";
    width:25rem;
    height:46rem;
    position:absolute;
    right:0;
    z-index:-1;
    top:15.4rem;
    background-image:url(../img/certificates-pattern-right.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:right center;
    pointer-events:none
}
@media only screen and (max-width:640px){
    .certificates-intro::after{
        position:absolute;
        right:0;
        top:auto;
        width:10rem;
        height:20rem;
        background-image:url(../img/certificates-right-mobile-pattern.svg);
        bottom:-8.5rem
    }
}
.certificates-intro__row{
    width:100%;
    margin:0 auto;
    max-width:91rem;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:2rem;
    align-items:center
}
@media only screen and (max-width:640px){
    .certificates-intro__row{
        margin:0;
        grid-template-columns:minmax(0,1fr);
        grid-gap:2rem;
        align-items:stretch;
        max-width:none
    }
}
.certificates-intro__left-col{
    display:flex;
    flex-direction:column
}
.certificates-intro__label{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:2.8rem
}
@media only screen and (max-width:640px){
    .certificates-intro__label{
        font-weight:700;
        font-size:1.6rem;
        line-height:120%;
        margin-bottom:1.5rem;
        text-align:center
    }
}
.certificates-intro__label::before{
    content:"";
    display:block;
    margin-bottom:.7rem;
    width:2.4rem;
    height:2.4rem;
    background-image:url(../img/diamond-shape-black.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center
}
@media only screen and (max-width:640px){
    .certificates-intro__label::before{
        margin:0 auto;
        width:1.7rem;
        height:1.7rem;
        margin-bottom:.7rem
    }
}
.certificates-intro__heading{
    font-style:normal;
    font-weight:700;
    font-size:6rem;
    line-height:120%;
    color:#3a241f;
    font-family:var(--zhar-ptitza);
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .certificates-intro__heading{
        text-align:center;
        font-size:3.8rem;
        line-height:120%;
        margin-bottom:1.5rem
    }
}
.certificates-intro__text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    max-width:37rem
}
@media only screen and (max-width:640px){
    .certificates-intro__text{
        max-width:none;
        font-size:1.4rem;
        line-height:140%;
        text-align:center
    }
}
.certificates-intro__image{
    display:block;
    width:100%;
    height:auto
}
@media only screen and (max-width:640px){
    .certificates-intro__image{
        max-width:80%;
        margin:0 auto
    }
}
.certificates-gifts{
    padding-bottom:15rem
}
@media only screen and (max-width:640px){
    .certificates-gifts{
        padding-bottom:6rem
    }
}
.certificates-gifts__heading{
    text-align:center;
    font-style:normal;
    font-weight:700;
    font-size:4rem;
    line-height:140%;
    font-family:var(--zhar-ptitza);
    margin-bottom:2rem;
    color:#3a241f
}
@media only screen and (max-width:640px){
    .certificates-gifts__heading{
        font-weight:700;
        font-size:2.4rem;
        line-height:140%;
        letter-spacing:.05em;
        margin-bottom:1.5rem;
        text-align:left
    }
}
.certificates-gifts__tabs-nav{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:center;
    gap:2rem;
    margin-bottom:6rem
}
@media only screen and (max-width:640px){
    .certificates-gifts__tabs-nav{
        gap:1rem;
        margin-bottom:2.5rem;
        justify-content:flex-start
    }
}
.certificates-gifts__tabs-nav-btn{
    display:inline-flex;
    align-items:center;
    padding:1rem;
    border:1px solid #ead7ca;
    font-style:normal;
    font-weight:500;
    font-size:1.2rem;
    line-height:1.5rem;
    gap:.6rem;
    transition:border-color .2s;
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .certificates-gifts__tabs-nav-btn{
        padding:.7rem;
        font-size:1.2rem;
        line-height:1.7rem
    }
}
.certificates-gifts__tabs-nav-btn::before{
    content:"";
    width:1.4rem;
    height:1.4rem;
    flex-shrink:0;
    background-image:url(../img/diamond-shape-black.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center
}
@media only screen and (max-width:640px){
    .certificates-gifts__tabs-nav-btn::before{
        width:1.2rem;
        height:1.2rem
    }
}
.certificates-gifts__tabs-nav-btn.active,.no-touch .certificates-gifts__tabs-nav-btn:hover,.touch .certificates-gifts__tabs-nav-btn:active{
    border-color:#000
}
.certificates-gifts__list{
    width:100%;
    max-width:126.2rem;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-gap:5.5rem
}
@media only screen and (max-width:640px){
    .certificates-gifts__list{
        grid-template-columns:minmax(0,1fr);
        grid-gap:2.5rem
    }
}
.certificates-gifts__card,.certificates-gifts__list-item{
    display:flex;
    flex-direction:column
}
.certificates-gifts__card{
    flex-grow:1;
    border-radius:1.7rem;
    background-image:url(../img/certificates-card-bg.jpg);
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center;
    padding:3rem 3.5rem;
    min-height:26rem
}
@media only screen and (max-width:640px){
    .certificates-gifts__card{
        min-height:18rem;
        padding:1.5rem
    }
}
.certificates-gifts__card-title{
    font-style:normal;
    font-weight:700;
    font-size:4rem;
    line-height:140%;
    font-family:var(--zhar-ptitza);
    margin-bottom:1rem
}
@media only screen and (max-width:640px){
    .certificates-gifts__card-title{
        font-size:2.8rem;
        line-height:100%;
        letter-spacing:.05em
    }
}
.certificates-gifts__card-price{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:2rem
}
@media only screen and (max-width:640px){
    .certificates-gifts__card-price{
        font-size:1.6rem;
        line-height:120%
    }
}
.certificates-gifts__card-btn{
    margin-top:auto;
    margin-left:auto;
    padding:1.2rem 1.8rem;
    border:1px solid #000;
    display:inline-flex;
    align-items:center;
    gap:.9rem;
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:120%;
    letter-spacing:.05em;
    text-transform:uppercase;
    transition:all .2s
}
@media only screen and (max-width:640px){
    .certificates-gifts__card-btn{
        font-size:1.2rem;
        line-height:120%;
        padding:.8rem 1.6rem;
        gap:.4rem
    }
}
.certificates-gifts__card-btn svg{
    flex-shrink:0;
    width:2.4rem;
    height:1.8rem;
    fill:currentColor
}
@media only screen and (max-width:640px){
    .certificates-gifts__card-btn svg{
        width:1.8rem;
        height:1.4rem
    }
}
.no-touch .certificates-gifts__card-btn:hover,.touch .certificates-gifts__card-btn:active{
    background-color:#000;
    color:#fff
}
.certificates-gifts__tabs-item{
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:auto;
    z-index:5;
    opacity:0;
    visibility:hidden;
    transition:opacity .4s,visibility 0s linear .4s
}
.certificates-gifts__tabs-item.active{
    z-index:10;
    position:relative;
    opacity:1;
    visibility:inherit;
    transition:opacity .4s,visibility .4s
}
.certificates-rules{
    padding-bottom:13rem
}
@media only screen and (max-width:640px){
    .certificates-rules{
        padding-bottom:5.6rem
    }
}
.certificates-rules__heading{
    font-style:normal;
    font-weight:700;
    font-size:4rem;
    line-height:140%;
    text-align:center;
    margin-bottom:6rem;
    color:#3a241f;
    font-family:var(--zhar-ptitza)
}
@media only screen and (max-width:640px){
    .certificates-rules__heading{
        font-weight:400;
        font-size:2.8rem;
        line-height:100%;
        letter-spacing:.05em;
        color:#3a241f;
        margin-bottom:2.8rem
    }
}
.certificates-rules__accordions-row{
    width:100%;
    margin:0 auto;
    max-width:114.6rem;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-gap:12rem
}
@media only screen and (max-width:640px){
    .certificates-rules__accordions-row{
        display:flex;
        flex-direction:column;
        align-items:stretch;
        margin:0;
        grid-gap:0
    }
}
.certificates-rules__accordions-col{
    display:flex;
    flex-direction:column
}
.certificates-rules__accordion{
    border-top:1px solid rgba(106,106,106,.2)
}
@media only screen and (min-width:641px){
    .certificates-rules__accordion:last-child{
        border-bottom:1px solid rgba(106,106,106,.2)
    }
}
@media only screen and (max-width:640px){
    .certificates-rules__accordions-col:last-child .certificates-rules__accordion:last-child{
        border-bottom:1px solid rgba(106,106,106,.2)
    }
}
.certificates-rules__accordion-btn{
    display:flex;
    align-items:center;
    gap:2rem;
    justify-content:space-between;
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    padding:2.2rem 0;
    cursor:pointer;
    -webkit-user-select:none;
    -moz-user-select:none;
    user-select:none
}
@media only screen and (max-width:640px){
    .certificates-rules__accordion-btn{
        padding:1.8rem 0;
        align-items:flex-start;
        font-weight:700;
        font-size:1.6rem;
        line-height:120%
    }
}
.certificates-rules__accordion-btn::after{
    content:"";
    flex-shrink:0;
    width:2rem;
    height:2rem;
    background-image:url(../img/diamond-shape-black.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center
}
@media only screen and (max-width:640px){
    .certificates-rules__accordion-btn::after{
        width:1.6rem;
        height:1.6rem
    }
}
.certificates-rules__accordion-content{
    height:0;
    overflow:hidden
}
.certificates-rules__accordion-content-inner{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:100%;
    padding-bottom:3.2rem;
    padding-right:5rem
}
@media only screen and (max-width:640px){
    .certificates-rules__accordion-content-inner{
        padding-bottom:2.5rem;
        font-size:1.2rem;
        padding-right:1.5rem;
        line-height:140%
    }
}
.newsletter{
    position:fixed;
    z-index:150;
    bottom:2rem;
    right:10rem;
    width:33.5rem;
    background:#3a241f;
    color:#ede8dd;
    background-image:url(../img/newsletter-bg.svg);
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    padding:1.5rem 3rem;
    opacity:0;
    visibility:hidden;
    transition:opacity .3s,visibility 0s linear .3s
}
@media only screen and (max-width:640px){
    .newsletter{
        width:auto;
        left:0;
        right:0;
        bottom:0;
        padding:var(--content-padding)
    }
}
.newsletter.shown{
    opacity:1;
    visibility:inherit;
    transition:opacity .3s,visibility .3s
}
.newsletter__close{
    position:absolute;
    right:1.5rem;
    top:1.5rem;
    z-index:7;
    width:1.3rem;
    height:1.3rem
}
.newsletter__close svg{
    display:block;
    width:100%;
    height:100%;
    fill:currentColor
}
.newsletter__slider-card-title{
    font-style:normal;
    font-weight:700;
    font-size:2rem;
    line-height:140%;
    margin-bottom:.8rem
}
@media only screen and (max-width:640px){
    .newsletter__slider-card-title{
        font-size:1.6rem;
        line-height:1.4;
        margin-bottom:.5rem
    }
}
.newsletter__slider-card-text{
    font-style:normal;
    font-weight:500;
    font-size:1.6rem;
    line-height:140%;
    margin-bottom:1.5rem
}
@media only screen and (max-width:640px){
    .newsletter__slider-card-text{
        font-size:1.3rem;
        margin-bottom:1rem
    }
}
.newsletter__slider-card-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-style:normal;
    font-weight:700;
    font-size:1.6rem;
    line-height:2rem;
    padding:1.4rem 2.8rem;
    width:100%;
    border:1px solid #ede8dd;
    color:#ede8dd;
    transition:background-color .2s,color .2s
}
@media only screen and (max-width:640px){
    .newsletter__slider-card-link{
        font-style:normal;
        font-weight:500;
        font-size:1.4rem;
        line-height:1.7rem;
        width:100%;
        padding:1.3rem 2.6rem
    }
}
.newsletter__slider-card-link:link,.newsletter__slider-card-link:visited{
    color:#ede8dd
}
.no-touch .newsletter__slider-card-link:hover .newsletter__slider-card-link-text{
    transform:translateX(-1rem)
}
.newsletter__slider-card-link-text{
    position:relative;
    transition:transform .2s;
    display:block
}
.newsletter__slider-card-link-text svg{
    position:absolute;
    left:100%;
    opacity:0;
    visibility:hidden;
    transition:opacity .2s,visibility 0s linear .2s;
    fill:currentColor;
    width:2rem;
    height:2rem;
    margin-left:1rem;
    top:50%;
    transform:translateY(-50%);
    margin-top:.2rem
}
.newsletter__slider-pagination{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:1.8rem;
    margin-top:1.8rem;
    margin-bottom:.6rem
}
.newsletter__slider-pagination .swiper-pagination-bullet{
    margin:0!important;
    width:.8rem;
    height:.8rem;
    opacity:1!important;
    background:rgba(255,255,255,.5);
    position:relative
}
@media only screen and (max-width:640px){
    .newsletter__slider-pagination .swiper-pagination-bullet{
        width:.6rem;
        height:.6rem
    }
}
.newsletter__slider-pagination .swiper-pagination-bullet::before{
    content:"";
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%) scale(0);
    width:1.9rem;
    height:1.9rem;
    background-image:url(../img/diamond-shape.svg);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    transition:transform .2s
}
@media only screen and (max-width:640px){
    .newsletter__slider-pagination .swiper-pagination-bullet::before{
        width:1.4rem;
        height:1.4rem
    }
}
.newsletter__form{
    width:100%;
    max-width:45rem;
    margin:0 auto;
    margin-bottom:1rem;
    position:relative
}
@media only screen and (max-width:640px){
    .newsletter__form{
        max-width:none;
        display:flex;
        flex-direction:column;
        align-items:stretch;
        padding:0;
        border:0;
        gap:0
    }
}
.newsletter__form .parsley-errors-list.filled{
    color:#cec1a3;
    font-size:1.2rem;
    line-height:1.2;
    margin-top:.5rem;
    text-align:left
}
@media only screen and (max-width:640px){
    .newsletter__form .parsley-errors-list.filled{
        text-align:center
    }
}
.newsletter__form-row{
    display:flex;
    align-items:center;
    gap:2rem;
    padding:1rem 0;
    border-bottom:1px solid #cec1a3
}
@media only screen and (max-width:640px){
    .newsletter__form-row{
        flex-direction:column;
        align-items:stretch;
        padding:0;
        border:0;
        gap:1.5rem;
        display:contents
    }
}
.newsletter__form-input{
    width:50%;
    flex-grow:1;
    font-style:normal;
    font-weight:400;
    font-size:2rem;
    line-height:120%;
    letter-spacing:.05em;
    text-transform:uppercase;
    color:#cec1a3
}
@media only screen and (max-width:640px){
    .newsletter__form-input{
        width:100%;
        flex-grow:0;
        font-style:normal;
        font-weight:400;
        font-size:1.6rem;
        height:3.5rem;
        text-align:center;
        line-height:120%;
        border-bottom:1px solid #cec1a3
    }
}
.newsletter__form-input::-webkit-input-placeholder{
    color:#cec1a3
}
.newsletter__form-input:-moz-placeholder,.newsletter__form-input::-moz-placeholder{
    color:#cec1a3
}
.newsletter__form-input:-ms-input-placeholder{
    color:#cec1a3
}
.newsletter__form-submit{
    flex-shrink:0
}
@media only screen and (max-width:640px){
    .newsletter__form-submit{
        align-self:center;
        order:10;
        margin-top:1.5rem
    }
}
.newsletter__form-submit svg{
    width:3.2rem;
    height:2.5rem;
    fill:#cec1a3;
    display:block;
    transition:transform .4s
}
@media only screen and (max-width:640px){
    .newsletter__form-submit svg{
        width:3.8rem;
        height:2.8rem
    }
}