:root{--white:#fff;--black:#000;--brown:#2C100E;--gradient:linear-gradient(90deg,#9F5D5D 0%,#B5635A 100%);--gradient-hover:linear-gradient(90deg,#B5635A 0%,#9F5D5D 100%);--lbrown:#D9B5A9;--red:#D3271F;--blue:#299599;}
body{font-family:"Montserrat Alternates",sans-serif;font-size:15px;background:linear-gradient(90deg,#F7DFDF 0%,#FFDCC5 100%);background:var(--black);font-weight:500;line-height:1.5;color:var(--brown)}
a{color:var(--brown);text-decoration:none;display:inline-block}
a:hover{color:var(--lbrown);text-decoration:none}
p,a,span,ul,li{transition:.3s all linear;display:inline-block;position:relative}
div{transition:.3s all linear;position:relative}
.fs-12{font-size:12px}
.fs-17{font-size:17px}
.fs-20{font-size:20px}
.fs-22{font-size:22px}
.fs-27{font-size:27px}
.fs-37{font-size:37px}
.fs-52{font-size:52px}
.fw-300{font-weight:300}
.fw-400{font-weight:400}
.fw-600{font-weight:600}
.fw-700{font-weight:700}
.white{color:var(--white)}
.black{color:var(--black)}
.brown{color:var(--brown)}
.lbrown{color:var(--lbrown)}
.red{color:var(--red)}
.blue{color:var(--blue)}
img{
    max-width:100%;
}
.gradient-title{color:var(--brown);background-image:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
header .logo img{max-width:110px;width:100%}
.button{padding:10px 35px;color:var(--white);text-transform:uppercase;font-size:17px}
.button-lg{padding:20px 80px}
.button:hover{color:var(--white)}
.button-gradient{background:var(--gradient)}
.button-gradient:hover{background:var(--gradient-hover)}
header{padding:15px 0 25px; background: var(--black);}
#header.fixed{position:fixed;top:0;left:0;right:0;z-index:15;background:linear-gradient(90deg,#F7DFDF 0%,#FFDCC5 100%);padding:8px 0 12px;box-shadow: 1px 1px 10px #DBB7B1;background: var(--black);box-shadow: 1px 1px 10px #000000;}
body.scrolled{padding-top:150px}
header .logo .site-title{margin-top:10px}
header ul.mod-menu li{text-transform:uppercase;margin:0 15px}
#mainbanner img{max-width:300px}
#mainbanner{padding:50px 0 100px}
#mainbanner .banner-button{display:flex;clear:both;justify-content:space-evenly;align-items:center}
#mainbanner .maintitle{max-width:80%;margin-left:auto;margin-right:auto}
#mainbanner .banner-address{max-width:50%}
#mainbanner .banner-text{display:inline-block}
#mainbanner ul{padding:0;list-style:none}
#mainbanner .banner-text ul li{width:50%;float:left;padding-right:20px;margin-bottom:40px;padding-left:16px}
#mainbanner .banner-text ul li:before{content:"";width:4px;height:4px;background:var(--white);display:inline-block;position:absolute;top:13px;left:0;border-radius:50%}
.section{padding:80px 0}
.subheader svg,.subheader img{margin-right:10px}
.subheader .bordered{/*border-top:1px solid #DBB7B1;*/padding:20px 0}
.subheader .tg{margin-right:30px}
.subheader a span{text-decoration:underline}
.subheader a:hover span{text-decoration:none}
.master-item img,.master-item .master-photos a{width:100%}
.master-item .master-info{position:absolute;bottom:0;left:12px;right:12px;height:50%;z-index:9;padding:30px;background:linear-gradient(top,transparent,var(--black));background:-webkit-linear-gradient(top,transparent,var(--black));display:flex;flex-direction:column;justify-content:flex-end}
.master-item a{display:inline}
[class*="-photos"] .swiper-pagination{position:absolute;top:10px;left:0;right:13px;bottom:unset;display:flex;justify-content:space-between;padding:0 10px;flex-wrap:nowrap}
[class*="-photos"] .swiper-pagination .swiper-pagination-bullet{opacity:1;background:var(--white);width:100%;height:4px;border-radius:10px}
[class*="-photos"] .swiper-pagination .swiper-pagination-bullet:hover,[class*="-photos"] .swiper-pagination .swiper-pagination-bullet-active{background:var(--red)}
.master-item .master-photos img{width:100%;height:445px;object-fit:cover}
.service-info{padding:20px;background:var(--white)}
.vip-info{padding:20px;background:url(../images/pattern.png) no-repeat var(--brown) bottom center / 100%;    height: 100%;}
header .logo .site-title{margin-top:10px;color:var(--lbrown)}
.service-item .service-photos img{height:215px;width:100%;object-fit:cover}
.service-item .service-photos img,.service-item .service-photos a{width:100%}
#vip{/*background:url(../images/vipbg.jpg) no-repeat center center / cover;*/background:url(../images/programs.jpg) no-repeat center center / cover}
.button-gold{border:2px solid;border-width:2px;border-image-source:linear-gradient(to right,#735D15 0%,#D0B661 55%,#735D15 83%,#D0B661 100%);border-image-slice:1}
.button-gold:hover{background:linear-gradient(to right,#735D15 0%,#D0B661 55%,#735D15 83%,#D0B661 100%)}
.ba-gallery-slide-animation .ba-modal-body,.ba-gallery-fade-animation .ba-modal-body{bottom:unset!important;left:unset!important;right:unset!important;top:unset!important}
.reviews-wrap{width:750px;height:780px;margin:0 auto}
.top-footer{padding:40px;background:var(--white);margin-bottom:40px;background:var(--black);color:var(--white)}
.top-footer a{
    color:var(--white);
}
.top-footer a:hover{
    color:var(--lbrown);
}
.metro-flex{display:flex;flex-wrap:wrap}
.metro-flex .metro:not(last-child){margin-right:15px}
.top-footer img{width:36px;height:36px}
.top-footer .wood-icon{margin-left:-4px}
.bottom-footer .logo img{height:67px}
.flex-copyright{display:flex;align-items:center}
.flex-copyright .logo{padding-right:10px}
svg.separator {
    margin: 7px 10px;
}
ul.mod-breadcrumbs.breadcrumb {
    padding: 15px 0;
    margin: 0 0 40px;
    border-top: 1px solid #DBB7B1;
}
.menu-wrapper a, #contact-block a, #contact-block, #contact-block a.button:hover{
    color: var(--white);
}
.menu-wrapper a:hover, #contact-block a:hover {
    color: var(--lbrown);
}
#masters-page .grid-master .master-photos, #masters-page .grid-master .master-right-info{
    width:50%;
}
#masters-page .grid-master {
    display: flex;
    background: var(--white);
}
#masters-page .master-right-info {
    padding: 40px 30px;
}
#masters-page .master-item a {
    display: inline-block;
}
#masters-page .master-right-info .button {
    padding: 20px 40px;
}
#masters-page .master-item .gradient-title:hover{
    color:var(--brown);
background-image: none;
    -webkit-background-clip: unset;
    -webkit-text-fill-color: unset;
}
#masters-page [class*="-photos"] .swiper-pagination .swiper-pagination-bullet:hover, #masters-page [class*="-photos"] .swiper-pagination .swiper-pagination-bullet-active {
    background: #8B5948;
}
#master-item .photos-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 24px;
}
#master-item .master-info {
    background: var(--white);
    padding: 30px;
}
#master-item .master-info .master-params {
    display: flex;
    justify-content: space-between;
}
#master-item .master-info .bordered {
    border-bottom: 1px solid #2c100e33;
}
#master-item .video-anchor svg {
    margin-top: -3px;
    margin-right: 5px;
}
#related .master-item .master-info {
    left: 0;
    right: 0;
}
.flex-title {
    display: flex;
    justify-content: space-between;
    align-items:center;
}
div#related-prev, div#related-next {
    width: 50px;
    height: 50px;
    background: var(--gradient);
    border-radius: 50%;
    position:relative;
    left: unset;
    right: unset;
    top: unset;
    margin: 0;
}
div#related-prev:hover, div#related-next:hover{
    background:var(--gradient-hover)
}
div#related-prev:after, div#related-next:after{
    content:none;
}
div#related-prev svg, div#related-next svg{
    width:20px;
}
.related-pagination {
    display: flex;
}
div#related-prev {
    margin-right: 10px;
}
div#related h3 {
    margin-bottom: 0;
}
.videos-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 24px;
}
.videos-grid video {
    width: 100%;
    height: 100%;
}
.videos-grid p{
    display:inline-block;
    width:100%;
    height:100%;
}
.don-info {
    background: var(--blue);
    margin-top: 50px;
    padding: 10px 20px;
    position:relative;
}
.don-info svg {
    position: absolute;
    bottom: -11px;
    height:140%;
    width:unset;
}
#mainbanner video {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width:100%;
    height:100%;
    z-index: -1;
    object-fit:cover;
}
#mainbanner:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    background: #0000004f;
}

.mainpage .subheader {
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
   
    z-index:3
}
.subheader {
     color: var(--white);
}
.subheader a{
    color:var(--white)
}
.subheader a:hover{
    color:var(--lbrown)
}
#masters {
    background: url(../images/masters.jpg) no-repeat center center / cover;
}
#interiors {
    background: url(../images/interiors.jpg) no-repeat center center / cover;
}
.flex-copyright.notice span {
    padding-left: 20px;
    display: inline-block;
}
.mod-breadcrumbs__wrapper span, .mod-breadcrumbs__wrapper a{
    color: var(--white);
}
.mod-breadcrumbs__wrapper svg path{
    fill:var(--white) !important
}
.mod-breadcrumbs__wrapper a:hover{
    color:var(--lbrown)   
}
.vip-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 40px 30px;
}
@media(min-width:1200px) and (max-width:1399px) {
li.nav-item.item-107{display:none}
div#contact-block{width:19%}
div#menu-block{width:64%}
.master-item .master-photos img{height:528px}
.service-item .service-photos img{height:215px}
.metro-flex .metro:not(last-child){margin-right:0;margin-bottom:10px}
#masters-page .master-right-info .button {
    padding: 20px 30px;
}
#masters-page .master-right-info {
    padding: 30px 22px;
}
.master-right-info .param-item {
    font-size: 23px;
}
#masters-page .master-item .master-photos img {
        height: 420px;
    }
    .don-info svg {
    height: 125%;
    }

#mainbanner img {
    max-width: 200px;
    margin-top: 20px;
}
}
@media(max-width:1199px) {
.menu-wrapper{position:fixed;top:0;right:-100%;width:280px;bottom:0;padding:60px 30px 40px;z-index:4;background:#fff1f1;background:var(--black);box-shadow:-1px -1px 20px var(--black);transition:.3s all linear}
.menu-wrapper.opened{right:0}
.menu-wrapper .close{position:absolute;top:20px;right:20px}
header ul.mod-menu li{width:100%;margin:0 0 20px}
.top-footer [class*=col]{margin-bottom:30px}
.top-footer{padding:20px}
}
@media(min-width:992px) and (max-width:1199px) {
#mainbanner img{max-width:200px}
#mainbanner{padding:50px 0 80px}
.fs-20{font-size:18px}
.fs-22{font-size:20px}
.fs-52{font-size:44px}
.master-item .master-info{padding:20px}
.master-item .master-photos img{height:430px}
.service-item .service-photos img{height:230px}
.master-right-info .param-item {
    font-size: 20px;
}
#masters-page .master-right-info .button {
    padding: 15px 23px;
    margin-top: 10px !important;
    font-size:14px;
}
#masters-page .master-right-info {
    padding: 35px 30px;
}
    #masters-page .master-right-info {
        padding: 20px 20px;
    }
         #masters-page   .master-item .master-photos img {
        height: 320px;
    }
    #master-item .photos-grid {
    grid-template-columns: repeat(2, 1fr);
}
.videos-grid {
    grid-template-columns: repeat(3, 1fr);
}
.don-info svg {
    height: 132%;
}
.vip-grid {
    grid-template-columns: repeat(2, 1fr);
}
}
@media(min-width:768px) and (max-width:991px) {
#mainbanner img{max-width:200px}
#mainbanner{padding:50px 0 80px}
.fs-20{font-size:17px}
.fs-22{font-size:20px}
.fs-52{font-size:40px}
.master-item .master-photos img{height:490px}
.service-item .service-photos img{height:170px}
.videos-grid {
    grid-template-columns: repeat(3, 1fr);
}
.vip-grid {
    grid-template-columns: repeat(2, 1fr);
}
.mainpage .subheader {
        position: relative;
}

.subheader .bordered {
    /* border-top: 1px solid #DBB7B1; */
    padding: 0 0 15px;
}
}
@media(max-width:767px) {
.fs-52{font-size:32px}
.fs-20{font-size:17px}
.fs-22{font-size:19px}
.fs-37{font-size:30px}
#mainbanner img{max-width:160px}
#mainbanner .banner-text ul li{width:100%;float:left;padding-right:0;margin-bottom:20px}
#mainbanner .banner-button{justify-content:center;flex-wrap:wrap}
#mainbanner .banner-address{max-width:100%;margin-top:20px;text-align:center}
.button{padding:10px 25px;font-size:15px}
#mainbanner{padding:50px 0}
#mainbanner .banner-text{text-align:center}
#mainbanner .banner-text ul li:before{content:none}
.service-item .service-photos img{height:auto}
.reviews-wrap{width:100%;height:700px}
.videos-grid {
    grid-template-columns: repeat(2, 1fr);
}
.vip-grid {
    grid-template-columns: repeat(1, 1fr);
}
.mainpage .subheader {
        position: relative;
}

.subheader .bordered {
    /* border-top: 1px solid #DBB7B1; */
    padding: 0 0 15px;
}
div#mainbanner img {
    display: none;
}
}
@media(min-width:576px) and (max-width:767px) {
.master-item .master-info{padding:15px}
.master-item .master-photos img{height:348px}
.master-right-info .param-item {
    font-size: 20px;
}
#masters-page .master-right-info .button {
    padding: 15px 23px;
    margin-top: 10px !important;
}
#masters-page .master-right-info {
    padding: 35px 30px;
}
}
@media(max-width:575px) {
header .logo img{max-width:70px;width:100%}
header .logo{margin-bottom:15px}
header .schedule{display:none}
header .phone{margin-bottom:10px}
header .logo .site-title{display:none}
.subheader img{width:34px;margin-right:8px}
.master-item .master-photos img{height:auto}
.reviews-wrap{width:95%;height:130vw}
#masters-page .grid-master .master-photos, #masters-page .grid-master .master-right-info {
    width: 100%;
}
#masters-page .grid-master {
    flex-wrap: wrap;
}
#master-item .master-phone a {
    font-size: 24px;
}
#master-item .master-metro {
    font-size: 14px;
}
#master-item .master-info {
    padding: 15px;
}
.don-info{
display:none;
}
#master-item .photos-grid {
    grid-template-columns: repeat(2, 1fr);
}
}
@media(min-width:400px) and (max-width:575px) {
.master-item .master-info{height:70%;padding:15px}
.master-name{line-height:1;text-shadow:1px 1px 0 var(--brown),-1px -1px 0 var(--brown)}
}
@media(max-width:399px) {
.master-item{width:100%}
.master-item .master-photos img{height:auto}
.metro-flex .metro:not(last-child){margin-right:0;margin-bottom:10px}
.flex-title {
    flex-direction: column;
}
.related-pagination {
    margin-top: 15px;
}
}