.size-72 { font-size: 72px; }
.size-48, .size-48 * { font-size: 48px; }
.size-42, .size-42 * { font-size: 42px; }
.size-36{ font-size: 36px; }
.size-34{ font-size: 34px; }
.size-32{ font-size: 32px; }
.size-30{ font-size: 30px; }
.size-28{ font-size: 28px; }
.size-26{ font-size: 26px; }
.size-24{ font-size: 24px; }
.size-22{ font-size: 22px; }
.size-20{ font-size: 20px; }
.size-18{ font-size: 18px; }
.size-17{ font-size: 17px; }
.size-16{ font-size: 16px; }
.size-15{ font-size: 15px !important; }
.size-14{ font-size: 14px; }
.size-13{ font-size: 13px; }
.size-11{ font-size: 11px; }
.size-10{ font-size: 10px; }
.color-0{ color: #ffffff !important; }
.color-1{ color: #505050; }
.color-2{ color: #707070; }
.color-3{ color: #c1af77; }
.color-4{ color: #84a798; }
.color-5{ color: #f1f1f1; }
.color-6{ color: #b5b5b5; }
.color-7{ color: #1e2b31; }
/* .font-noto, .font-noto *{ font-family: 'Noto Serif', serif !important; } */
.font-Commissioner, .font-Commissioner *{ font-family: 'Commissioner', sans-serif !important; }
.font-openSans{ font-family: 'Open Sans', sans-serif !important; }
.weight-bold{ font-weight: 700; }
.weight-semi{ font-weight: 600; }
.weight-medium{ font-weight: 500; }
.weight-regular{ font-weight: 400; }
.weight-light{ font-weight: 300; }

.pl-0-mine{
    padding-left: 0;
}
.pr-0-mine{
    padding-right: 0;
}
.pl-custom{
    padding-left: 60px !important;
}
.more-btn{
    display: block;
    width: 200px;
    height: 45px;
    line-height: 43px;
    border: solid 1px #707070;
    text-align: center;
    color: #707070 !important;
    text-decoration: none !important;
    background: #ffffff;
}
.more-btn.auto-width{
    height: 35px;
    line-height: 34px;
    color: #84a798 !important;
    display: inline-block;
    width: auto;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 25px;
    margin-bottom: 60px;
}
.more-btn.light-dark{
    border: solid 1px #84a798;
    vertical-align: middle;
}
.more-btn.dark{
    color: #fff !important;
    height: 50px !important;
    line-height: 48px !important;
    border: solid 1px #84a798;
    background: #84a798;
    vertical-align: middle;
}
#book-now.map:hover{
    background: #fff;
    color: #b46b59;
    border: solid 1px #b46b59;
}
#book-now.map{
    text-decoration: none;
    display: inline-block;
    height: 35px;
    line-height: 34px;
    border: solid 1px #b46b59;
    background: #b46b59;
    color: #fff;
    text-align: center;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 30px;
    -webkit-transition: all 0.3s cubic-bezier(.5, .24, 0, 1);
    transition: all 0.3s cubic-bezier(.5, .24, 0, 1);
}
.section-map .title{
    padding-bottom: 30px;
}
.section-map{
    padding-top: 80px;
}
.section-map .map-back{
    z-index: 0;
    margin-top: -250px;
    height: 500px;
    background: #c5a279;
    position: relative;
}
.section-map .map-wrap{
    padding-left: 60px;
    padding-right: 60px;
}
.section-map .map-list ul li::before {
    background: transparent url("../images/pointer.png") center left no-repeat;
    content: "";
    width: 15px;
    height: 20px;
    position: absolute;
    margin-left: -25px;
    top: 0;
}
.section-map .map-distance{
    margin-bottom: 26px;
    max-width: 225px;
}
.section-map .map-distance{
    vertical-align: middle;
}
.section-map .map-distance-wrap{
    padding-bottom: 54px;
}
.map-text{
    height: 115px;
    line-height: 115px;
    position: relative;
    background: #F2F2F2;
    z-index: 1;
}
.wap-shadow{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 15px;
    -webkit-box-shadow: 0 14px 32px rgba(29,15,77,.19);
    box-shadow: 0 14px 32px rgba(29,15,77,.19);
    z-index: 0;
}
#map{
    width: 100%;
    height: 490px;
    z-index: 0;
    border: none;
}
.underline {
    position: relative;
    width: 200px;
    height: 1px;
    margin: 28px auto 34px auto;
}
.underline .left{
    background: #e6a879a6;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 50%;
}
.underline .right{
    background: #e6a879a6;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    right: 0;
}
.underline.sm {
    background-color: rgba(197,162,121,1) !important;
    margin: 20px auto 40px 0;
    width: 100px;
}
.justify-center{
    text-align: justify;
    text-align-last: center;
}
.decoration-none{
    text-decoration: none !important;
}
.pulse-btn{
    position: relative;
}
.pulse-btn::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    border:solid 1px #999999;
    -webkit-transition: all 0.3s cubic-bezier(.5, .24, 0, 1);
    transition: all 0.3s cubic-bezier(.5, .24, 0, 1);
}
.light-dark.pulse-btn::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    border:solid 1px #84a798 !important;
    -webkit-transition: all 0.3s cubic-bezier(.5, .24, 0, 1);
    transition: all 0.3s cubic-bezier(.5, .24, 0, 1);
}
.pulse-btn:hover::before {
    top: -15px;
    left: -15px;
    right: -15px;
    bottom: -15px;
    opacity: 0.01;
}
.l-height-28{
    line-height: 28px;
}
.vertical-line:before{
    content: '';
    position: absolute;
    height: 1px;
    background: #e1e1e1;
    left: 0;
    right: 0;
}
.vertical-line:after{
    content: '';
    position: absolute;
    width: 1px;
    height: 75px;
    background: #e1e1e1;
    left: 50%;
}
.vertical-line{
    position: absolute;
    height: 75px;
    left: 0;
    right: 0;
    top: 18px;
}
.vertical-line.colored-1{
    background: #84a798 !important;
}

.vertical-line.colored-2{
    background: #b46b59 !important;
}
/* WELCOME */
.welcome_01{
    height: 600px;
    background: url(../images/welcome_01.jpg) center center no-repeat;
    background-size: cover;
    position: relative;
    box-shadow: -20px -19px 0px 0px #e0e0e0;
}
.welcome_01 div{
   position: absolute;
    top: -35px;
    left: -35px;
    bottom: 35px;
    right: 35px;
    border: solid 2px #84a798;
}
.welcome-more{
    margin-top: 30px;
}
#welcome .section-01 {
    padding-top: 130px;
    padding-bottom: 100px;
    background: url(../images/tree-white2.png) bottom right no-repeat;
}
#welcome .section-01 .text {
    margin-top: 35px;
}
#welcome .section-01 .text .welcome_01_block{
    margin-bottom: 60px;
}
#welcome .section-02 {
    position: relative;
    background: #f4f0ed;
    height: 200px;
}
#welcome .section-04{
    background: #9fc0ca;
    padding-top: 100px;
    padding-bottom: 100px;
}
#welcome .section-04 .why-book-elem{
    background: #fff;
    margin-bottom: 30px;
    height: 210px;
    padding-left: 20px;
    padding-right: 20px;
}
#welcome .section-04 .why-book-elem .text{
    padding-left: 20px;
    padding-right: 20px;
}
#welcome .section-04 .how-to-elem{
    background: #556670;
    height: 168px;
}
#welcome .section-04 .how-to-elem .text{

}
#welcome .section-04 .header{
    background: #fff;
    padding-right: 40px;
    position: relative;
    z-index: 1;
    display: inline-block;
}
#welcome .section-04 .line{
    height: 2px;
    background: #84a798;
    position: absolute;
    top: 50%;
    left: 15px;
    right: 0;
    z-index: 0;
}
#welcome .section-04 .title{
    max-width: 260px;
    line-height: 25px;
    margin-bottom: 20px;
}
#welcome .section-04 .section-title{
    margin-top: 0 !important;
}
#welcome .section-05 {
    padding-top: 70px;
    padding-bottom: 100px;
    background: #f4f4f4;
}
#welcome .section-05 .more-btn {
    display: inline-block !important;
    margin-left: 20px !important;
    margin-right: 20px !important;
}
#welcome .section-05 .title{
    margin-bottom: 20px !important;
    padding-top: 50px !important;
}
#welcome .section-05 .more{
    margin-top: 50px;
}
#welcome .section-06 {
}
#welcome .section-06 .header{
    height: 100px;
}
#welcome .section-06 .square{
    position: absolute;
    top: 70px;
    bottom: 70px;
    right: -90px;
    left: 15px;
    width: 500px;
    background: #eac181;
    z-index: 1;
}
#welcome .section-06 .sub-square{
    position: absolute;
    top: 30px;
    bottom: 30px;
    left: 30px;
    width: 520px;
    background: #fff;
    z-index: 2;
    padding-left: 50px;
    padding-right: 50px;
}
#welcome .section-06 .sub-square .text{
    margin-bottom: 40px;
}
#welcome .item {
    border: solid 2px #fff;
    background-size: cover !important;
    position: relative;
}
#welcome .section-09 {
    padding-top: 50px;
    padding-bottom: 30px;
    background: #f4f4f4;
}    
.gallery-elem-wrap{
    padding-left: 2px !important;
    padding-right: 2px !important;
    margin-bottom: 4px;
}
.gallery-elem-block{
    margin-bottom: 8px;
    padding-left: 4px;
    padding-right: 4px;
}
.gallery-elem{
    background-size: cover;
    display: block;
    text-decoration: none !important;
}
.gallery-elem-padding{
    padding-right: 5px !important;
    padding-left: 5px !important;
    margin-bottom: 10px;
}
.gallery-elem .thumb{
    display:none !important;
}
.gallery-elem-p1{
    height: 570px;
}
.gallery-elem-p2{;
    height: 280px;
}
.gallery-elem-p3{;

}
.gallery-elem-p23{;
    height: 280px;
}
.gallery-cover{
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    opacity: 0;
    z-index: 1;
    background: rgba(0,0,0,.3);
    -webkit-transition: all 300ms linear;
    -moz-transition: all 300ms linear;
    -ms-transition: all 300ms linear;
    -o-transition: all 300ms linear;
    transition: all 300ms linear;
}
.gallery-elem:hover .gallery-cover{
    opacity: 1;
    z-index: 1;
}
#welcome .section-03{
    background: #f4f0ed;
    padding-bottom: 1px;
}
#welcome .section-03 .see-more{
    text-decoration: none;
    color: #707070;
    line-height: 34px;
}
#welcome .section-03 .see-more .arrow-more{
    opacity: 0;
    transform: scale(.7);
    -webkit-transition: all 150ms linear;
    -moz-transition: all 150ms linear;
    -ms-transition: all 150ms linear;
    -o-transition: all 150ms linear;
    transition: all 150ms linear;
}
#welcome .section-03 .see-more:hover > .arrow-more{
    opacity: 1;
    margin-left: 8px;
    transform: scale(1);
}
#welcome .section-03 .invert .see-more:hover > .arrow-more{
    margin-left: auto !important;
    margin-right: 8px !important;
}
#welcome .section-03 .welcome-room-elem{
    margin-bottom: 140px;
    background: #f4f0ed;
}
#welcome .section-03 .welcome-room-elem .slider-counter{
    position: absolute;
    z-index: 2;
    bottom: 25px;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
#welcome .section-03 .welcome-room-gallery-elem{
    height: 550px;
    background-size: cover !important;
}
#welcome .section-03 .welcome-room-info-container{
    background: #fff;
    height: 100%;
}
#welcome .section-03 .welcome-room-info{
    padding-left: 40px;
    padding-right: 40px;
}
#welcome .section-03 .invert .welcome-room-info{
    margin-left: auto;
}
#welcome .section-03 .welcome-room-feature{
    align-items: center;
    margin-right: 40px;
}
#welcome .section-03 .invert .welcome-room-feature{
    margin-right: 0 !important;
    margin-left: 40px;
}
#welcome .section-03 .attributes{
    position: absolute;
    top: 0;
    left: 50px;
}
#welcome .section-03 .invert .attributes{
    left: auto;
    right: 50px;
}
#welcome .section-03 .invert .welcome-room-info{
    text-align: right !important;
    width: 100%;
}
#welcome .section-03 .invert .book{
    justify-content: end;
    display: flex;
}
#welcome .section-03 .welcome-room-info .more-btn.auto-width {
    width: 180px;
    height: 35px;
    line-height: 34px;
    color: #707070 !important;
    display: block;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 0;
    margin-bottom: 0;
}
.studio-navs{
    cursor: pointer;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 1;
}
.studio-navs.carouselNextBtn{
    right: 25px;
}
.studio-navs.carouselPrevBtn{
    left: 25px;
}
#welcome .section-07 .weather-container .line{
    background: #e7e2dd;
    height: 1px;
    position: absolute;
    left: 15px;
    right: 15px;
    top: 50%
}
#welcome .section-07 .weather-container .back{
    background: #fff;
    position: relative;
    z-index: 1;
}
#welcome .section-07 .weather-container .left{
    padding-right: 50px;
}
#welcome .section-07 .weather-container .center{
    padding-right: 40px;
    padding-left: 40px;
}
#welcome .section-07 .weather-container .right{
    padding-left: 50px;
}
#welcome .section-07 .weather-container{
    height: 75px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
}
#welcome .section-07{
    padding-bottom: 120px;
}
/* GALLERY */
#gallery{
    padding-top: 200px;
}
.content-width {
    margin: 0 auto;
    max-width: 1800px;
    position: relative;
}
.content-padding {
    padding: 0;
}
#welcome-gallery-container {
    display: block;
    width: 100%;
    overflow: hidden;
    margin: 0 auto;
}
#gallery #welcome .item{
    float: left;
    position: relative;
    display: inline-block;
    margin: 5px;
    clear: both;
    overflow: hidden;
}

#gallery #gallery-container .item-1 {
    width: 430px !important;
    /*width: calc((97%) / 4);*/
    height: 310px;
}
#gallery #gallery-container .item-2 {
    width:430px !important;
    /*width: calc((97%) / 4);*/
    height: 510px;
}
@media only screen and (max-width: 992px) {
     #gallery {
        padding-top: 80px;
    }
    #gallery #gallery-container .item-1 {
        width: 350px !important;
        /*width: calc((97%) / 4);*/
        height: auto;
    }
    #gallery #gallery-container .item-2 {
        width:350px !important;
        /*width: calc((97%) / 4);*/
        height: auto;
    }
}
/*#gallery #welcome .item-1 {*/
/*    width: calc((100%) / 4) !important;*/
/*    height: 760px;*/
/*}*/
/*#gallery #welcome .item-2 {*/
/*    width: calc((100%) / 4) !important;*/
/*    height: 360px;*/
/*}*/
#gallery #welcome{
    padding-top: 60px;
    padding-bottom: 100px
}
/* LOCATION */
#location .section-01 {
    padding-top: 120px;
    padding-bottom: 50px;
}
#location .section-02 {
    padding-top: 50px;
    padding-bottom: 50px;
    background-color: #fcfcfc;
}
#location .section-02 .map-location{
    height: 400px;
    -webkit-box-shadow: 0 5px 10px rgba(29,15,77,.19);
    box-shadow: 0 5px 10px rgba(29,15,77,.19);
}
#location .section-02 .location-elem{
    margin-bottom: 100px;
}
#location .section-02 .location-elem-info{
    padding-left: 30px;
}
#location .section-02 .location-elem-info{
    padding-left: 30px;
}
#location #map{
    height: 500px;
}
#location .section-03 {
    padding-top: 50px;
    padding-bottom: 50px;
    background: #f6f5f4;
}
#location .section-03 .elem{
    min-width: 295px;
}
#location .section-03 .elem-dist{
    text-align:right;
    min-width: 65px;
}
/* ACCOMMODATION */
#accommodation .section-01 {
    padding-top: 120px;
    padding-bottom: 120px;
}
#accommodation .section-03 {
    background:#c0c0aa30;
    padding-top: 80px;
    padding-bottom: 80px;
}
/* ROOM */
#room .section-01{
    padding-top: 120px;
    padding-bottom: 120px;
}
#room .section-01 .room-details:last-child:after{
    content: none !important;
}
#room .section-01 .room-details:after{
    content: '';
    position: absolute;
    top: 20px;
    bottom: 20px;
    right: 0;
    width: 1px;
    background: #b5bcc1;
}
#room .section-01 .room-details{
    position: relative;
    margin-top: 30px;
    width: 210px;
    height: 85px;
    background: #f4f4f4;
}
#room .section-02{
    padding-top: 70px;
    padding-bottom: 70px;
    background-color: #f4f4f4;
}
#room .section-02 .header{
    width: 260px;
    height: 35px;
    line-height: 35px;
    background: #7aa793;
    margin-left: auto;
    margin-right: auto;
}
#room .section-02 .header.absolute{
    position: absolute;
    top: -20px;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
#room .section-02 .level-wrap{
    padding-left: 5px !important;
    padding-right: 5px !important;
}
#room .section-02 .level{
    position: relative;
    border: solid 2px #ebe0e0;
    height: 210px;
    padding-left: 30px;
    padding-right: 30px;
    background-color: #fff;
}
#room .section-03{
    padding-top: 80px;
    padding-bottom: 0px;
}
#room .section-03 .room-features-wrap {
    margin-bottom: 40px;
}
#room .section-03 .room-features {
    max-width: 330px;
    width: 92%;
}
#room .section-03 .room-features .list {
    min-height: 230px;
}
#room .section-03 .room-features .list ul{
    padding-left: 15px;
    margin-top: 30px;
}
#room .section-03 .room-features .list ul li{
    padding-left: 10px;
    margin-bottom: 3px;
}
#room .section-03 .header-color{
    background: #78a0ac;
    position: relative;
    height: 46px;
    display: flex;
    align-items: center;
    color: #fff;
    width: 100%;
    max-width: 330px;
    padding-left: 10px;
    font-weight: 600;
}
#room .section-03 .header-color:after{
    content: '';
    position: absolute;
    right: -20px;
    top: 0;
    border-top: solid 23px #78a0ac;
    border-right: solid 20px #fff;
    border-bottom: solid 23px #78a0ac;
}
.gallery-cover img{
    width: auto !important;
}
#room .section-05{
    padding-top: 80px;
    padding-bottom: 80px;
    min-height: auto;
}
#room .section-05 .welcome-room-feature{
    margin-top: 15px;
    margin-bottom: 15px;
}
#room .section-05 .other-elem .wrap{
    height: 280px;
    border-left: solid 1px #d6d6d6;
    padding-left: 35px;
}
#room .section-05 .other-elem .info{
    background: #fff;
    padding: 20px;
}
/* FAQ */
#faq .section-01 {
    padding-top: 120px;
    padding-bottom: 60px;
}
#faq .section-02 .card-faq{
    width: 100% !important;
    border: solid 1px #c5c9c8;
    border-radius: 20px;
    margin-bottom: 40px;
}
#faq .section-02 .faq-title .faq-btn{
    height: 90px;
    display: flex;
    align-items: center;
}
#faq .section-02 .faq-title.open{
    border-bottom: solid 1px #c5c9c8;
    border-radius: 20px;
}
#faq .section-02 .faq-title{
    background: #dfe8e5;
    height: 90px;
    padding: 0 50px 0 50px;
    border-radius: 20px;
    border: none;
}
#faq .section-02 .faq-text{

}
#faq .section-02 .faq-text .text{
    padding: 30px;
}
#faq .section-02 .faq-title .faq-arrow{
    -webkit-transition: all 0.3s cubic-bezier(.5, .24, 0, 1);
    transition: all 0.3s cubic-bezier(.5, .24, 0, 1);
}
#faq .section-02 .faq-title .faq-arrow.open{
    transform: rotate(180deg);
}

/* SIGHTSEEING */
#sightseeing .section-01 {
    padding-top: 120px;
    padding-bottom: 120px;
}
#sightseeing .section-02 {
    padding-top: 120px;
    padding-bottom: 120px;
    background: #f6f5f4;
}
#sightseeing .section-02 .header{
    line-height: 38px;
    position: relative;
}
#sightseeing .section-02 .header:after{
    content: '';
    position: absolute;
    height: 3px;
    width: 80px;
    bottom: -20px;
    left: 0;
    background: #505050;
}
#sightseeing .section-03 {
    padding-top: 120px;
    padding-bottom: 120px;
    background-color: #fcfcfc;
}
#sightseeing .section-03 .sightseeing{
    margin-bottom: 60px;
}
#sightseeing .section-03 .text{
    margin-bottom: 60px;
}

/* SERVICES */
#services .section-01 {
    padding-top: 120px;
    padding-bottom: 100px;
}
#services .section-02{
    padding-top: 100px;
    padding-bottom: 60px;
    background: #f4f0ed;
}
#services .section-02 .header{
    margin-bottom: 50px;
}
#services .section-02 .service-elem{
    margin-bottom: 30px;
    background: #fff;
    height: 340px;
    padding: 30px 40px 30px 40px;
}
#services .section-03 .back{
    background: url(../images/services_back.jpg) center center no-repeat;
    background-size: auto;
    background-size: cover;
    height: 500px;
}
#services .section-03 .back-text{
    max-width: 600px;
    padding: 40px;
    position: absolute;
    bottom: 80px;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background: rgb(132 167 152 / 60%);
    border: 1px solid #fff;
}

/* CONTACT */
#contact .section-011{
    padding-top: 150px;
    padding-bottom: 80px;
}
#contact .section-012{
    padding-top: 0;
    background: #fcfcfc;
}
#contact .section-01 .pr-30{
    padding-right: 30px !important;
}
#contact .section-01 .contact-form-wrap {
    padding-top: 50px;
    padding-bottom: 30px;
}
#contact .section-01 .contact-icon-wrap{
    display: flex;
    align-items: center;
    flex-direction: row;
}
#contact .section-01 .contact-icon{
    min-width: 25px;
}
#contact .input {
    height: 55px;
}
#contact .section-01 .field-wrap label{
    z-index: 0;
    position: absolute;
    width: 170px;
    height: 56px;
    line-height: 52px;
    top: 2px;
    left: 15px;
    color: #707070;
    padding-left: 15px;
    margin-bottom: 0;
    -webkit-transition: all 150ms linear;
    -moz-transition: all 150ms linear;
    -ms-transition: all 150ms linear;
    -o-transition: all 150ms linear;
    transition: all 150ms linear;
}
#contact .field-wrap.open label{
    opacity: .4;
    left: 3px;
    top: -16px !important;
    transform: scale(.8);
}
#contact .input, #contact .textarea {
    position: relative;
    z-index: 1;
    width: 100%;
    background: transparent;
    padding-left: 15px;
    border: none;
    margin-bottom: 25px;
    -webkit-box-shadow: 0 14px 32px rgba(29,15,77,.19);
    box-shadow: 0 14px 32px rgba(29,15,77,.19);
}
#contact .textarea {
    padding-top: 15px;
    height: 200px;
}
#contact .contact-submit {
    width: 100%;
    height: 56px;
    background: #c1af77;
    border: none;
    color: #fff;
}
#captcha{
    background: url(../captcha/captcha.php) center right no-repeat !important;
    height: 37px;
}
#contact #welcome .section-04 {
    padding-top: 120px;
    padding-bottom: 150px;
}
#contact #welcome .section-04 .title img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
#how-to-block{
    margin-bottom: 90px;
    margin-top: 120px;
}
#how-to-block .how-to .elem img{
    border: solid 6px #fff;
    border-radius: 50%;
    position: absolute;
    top: -24px;
}
#how-to-block .how-to .elem{
    text-decoration: none;
    background: #e6a879;
    height: 140px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding-top: 15px;
}
#how-to-block .how-to .elem div{
    margin-top: 5px;
}


@media (max-width: 1600px) {
    #welcome .section-02 .title {
        margin-bottom: 45px;
    }
    #welcome .section-02 .back-color {
        top: 45px;
        bottom: 45px;
    }
}
@media (max-width: 1200px) {
    #welcome .section-03 .welcome-room-info {
      padding-left: 20px;
      padding-right: 20px;
    }
    #room .section-01 .room-details:nth-child(3):after{
        content: none !important;
    }
    #welcome .section-02 .section_02_block{
        margin-bottom: 30px;
    }
}
@media (max-width: 992px) {
    #welcome .section-01 {
        background: none;
    }
    #welcome .section-03 .invert .welcome-room-info {
      margin-left: auto;
      margin-right: auto;
    }
    #services .section-03 .back-text {
        max-width: none;
        bottom: 80px;
    }
    #location .section-02 .location-elem-info {
        padding-left: 0;
        padding-top: 30px;
    }
    #room .section-05 .other-elem{
        max-width: 650px;
        margin: 0 auto;
    }
    #room .section-05 .other-elem .wrap{
        height: auto;
        border-left: none;
        padding-left: 0 !important;
    }
    #room .section-05 .other-elem .more-btn{
        margin-left: auto;
        margin-right: auto;
    }
    #room .section-05 .other-elem .info{
        text-align: center !important;
    }
    #room .section-05 .welcome-room-feature {
        margin: 50px 15px 15px 15px;
        width: 90px;
        display: block !important;
    }
    .other-features {
        flex-direction: row !important;
    }
    #room .section-03 .room-features-wrap {
        align-items: center !important;
    }
    #welcome .section-03 .welcome-room-feature {
        align-items: center;
        margin-right: 15px;
        margin-left: 15px;
    }
    #welcome .section-03 .welcome-room-info *,
    #welcome .section-03 .welcome-room-info {
        text-align: center !important;
    }
    #welcome .section-03 .pl-0 {
        padding-left: 15px !important;
    }
    #welcome .section-03 .pr-0 {
        padding-right: 15px !important;
    }
    .removed{
        display: none;
    }
    #welcome-gallery-container {
        max-width: 655px;
    }
    .center-col{
        display: none !important;
    }
    #welcome .section-03 .welcome-room-info-container {
        justify-content: center !important;
    }
    #welcome .section-03 .welcome-room-info {
        padding: 30px !important;
    }
    #welcome .section-03 .welcome-room-info .more-container,
    #welcome .section-03 .welcome-room-info .more-btn{
        margin-left: auto !important;
        margin-right: auto !important;
    }
    #welcome .section-03 .welcome-room-feature-container {
        justify-content: center !important;
    }
    #map {
        height: 450px;
    }
    #welcome .section-06 .square {
        margin-top: 40px;
        position: relative;
        top: auto;
        bottom: auto;
        right: auto;
        left: auto;
        width: 500px;
        background: #b46b59;
        z-index: 0;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }
    #welcome .section-06 .sub-square {
        position: relative;
        top: auto;
        bottom: auto;
        left: auto;
        width: 520px;
        background: #fff;
        z-index: 2;
        padding-left: 50px;
        padding-right: 50px;
    }
     .gallery-elem .thumb{
        display:block !important;
    }
    .gallery-elem{
        background: none !important;
        height: auto !important;
    }
}
@media (max-width: 768px) {
    #room .section-02 .level{
        height: auto;
        padding-top: 30px;
padding-bottom: 20px;
    }
    #location .section-02 .location-elem {
      margin-bottom: 30px;
    }
    #location .section-02 .location-elem-info {
        margin: 0 auto;
    }
    #services .section-03 .back{
        height: 350px;
    }
    #services .section-03 .back-text{
        max-width: 100%;
        padding: 40px;
        position: relative;
        bottom: auto;
        left: auto;
        -ms-transform: none;
        -webkit-transform: none;
        transform: none;
        background: rgba(132, 167, 152, 0.9);
    }
    #services .section-02 .service-elem-wrap{
        margin-bottom: 30px;
    }
    #services .section-02 .service-elem{
        height: 100%;
    }
    #faq .section-02 .faq-title{
        height: auto;
        padding: 15px;
    }
    #faq .section-02 .faq-title,
    #faq .section-02 .faq-title .faq-btn {
        height: auto;
    }
    #faq .section-02 {
        padding-bottom: 30px;
    }
    #faq .section-02 .card-faq {
        margin-bottom: 25px;
    }
    #sightseeing .section-02 .text {
        text-align: center;
    }
    #sightseeing .section-02 .header {
        text-align: center;
        margin-bottom: 50px;
    }
    #sightseeing .section-02 .header::after {
        left: 50%;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    #sightseeing .section-02 {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    #sightseeing .section-03 {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    #sightseeing .section-03 .text,
    #sightseeing .section-03 .sightseeing {
        margin-bottom: 30px;
        text-align: center;
    }
    #faq .section-01,
    #sightseeing .section-01 {
        padding-top: 60px;
        padding-bottom: 40px;
    }
    #room .section-05 {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    #contact .section-01 .contact-form-wrap {
        padding-top: 0;
    }
    #contact .section-01 .contact-form-wrap .header{
        text-align: center;
    }
    #contact .section-01 .contact-info{
        text-align: center;
    }
    #contact .section-01 .contact-info *{
        align-items: center !important;
    }
    .vertical-line::after {
        height: 25px;
    }
    #welcome .section-04 .why-book .order_3{
        order: 1 !important;
    }
    #welcome .section-03 .welcome-room-feature-container{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        width: 100%;
    }
    #welcome .section-03 .invert .welcome-room-feature{
        margin-right: 10px !important;
        margin-left: 10px !important;
    }
    #welcome .section-03 .welcome-room-feature{
        margin-bottom: 20px;
        min-width: 92px;
        align-items: center;
        margin-right: 20px;
        display: flex;
        flex-direction: column;
        flex-basis: 100%;
        flex: 1;
    }
    #welcome .section-03 .welcome-room-feature.last-two{
        display: block !important;
    }
    #welcome .section-03 .welcome-room-info {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
    #welcome .section-05 .more {
        margin-top: 15px;
    }
    #welcome .section-04 .how-to-elem {
        max-width: 350px;
        margin: 20px auto;
    }
    #welcome .section-04 .size-36{
        font-size: 30px !important;
    }
    #room .section-03 {
        padding-top: 40px;
        padding-bottom: 20px;
    }
    #room .section-01 {
        padding-top: 50px;
        padding-bottom: 40px;
    }
    #room .section-02 {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    #accommodation .section-03 {
        padding-bottom: 10px !important;
    }
    #accommodation .section-01 {
        padding-top: 60px;
        padding-bottom: 40px;
    }
    #location .section-01 {
        padding-top: 60px;
        padding-bottom: 40px;
    }
    #gallery #welcome{
        padding-top: 40px;
        padding-bottom: 40px
    }
    .weather-elem{
        flex-direction: column !important;
    }
    #welcome .section-07 .weather-container .back{
        margin-bottom: 20px;
    }
    #welcome .section-07 .weather-container{
        text-align: center;
        margin-top: 40px;
        margin-bottom: 40px;
    }
    #welcome .section-07 .weather-container .line {
        display: none;
    }
    #welcome .section-07 .weather-container .center,
    #welcome .section-07 .weather-container .left,
    #welcome .section-07 .weather-container .right {
        padding-right: 40px;
        padding-left: 40px;
    }
    #welcome .section-07 .weather-container {
        justify-content: center;
        flex-direction: column;
    }
    #welcome .section-06 .square,
    #welcome .section-06 .sub-square {
        width: auto !important;
    }
    #contact #welcome .section-04 {
        padding-top: 10px;
        padding-bottom: 40px;
    }
    #how-to-block .how-to .elem {
        margin-bottom: 40px;
    }
    #how-to-block {
        margin-bottom: 40px;
        margin-top: 30px;
    }
    #contact .section-01 {
        padding-top: 60px;
    }
    #contact .section-01 .pr-30 {
        padding-right: 15px !important;
        margin-top: 40px;
    }
    #welcome .section-06 .more-btn.auto-width {
        margin-top: 15px;
        margin-bottom: 20px;
    }
    #welcome .section-03 .fa-right-long{
        display: inline-block !important;
    }
    #welcome .section-03 .fa-left-long,
    #welcome .section-03 .first {
        display: none !important;
    }
    #welcome .section-03 .more {
        margin-left: auto;
        margin-right: auto;
    }
    #welcome .section-03 .see-more {
        padding-left: 15px;
    }
    #welcome .section-03 .links {
        margin-top: 20px !important;
    }
    #welcome .section-03 .welcome-room-info .more-btn.auto-width {
        margin: 10px auto 0 auto;
    }
    #welcome .section-03 .welcome-room-gallery-elem {
        height: 400px;
    }
    #welcome .section-03 .welcome-room-info {
        padding-top: 40px;
        padding-left: 20px;
        padding-right: 20px;
    }
    #welcome .section-03 .attributes,
    #welcome .section-03 .invert .attributes {
        position: absolute;
        top: 15px;
        left: 50%;
        right: auto;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    #welcome .section-02 .back-color {
        top: 10px;
        bottom: 10px;
    }
    .vertical-line {
        height: 30px;
    }
    #welcome .section-02 .list ul {
        padding-left: 0;
    }
    #welcome .section-02 .list ul li::before {
        content: none;
    }
    #welcome .section-02 * {
        text-align: center;
    }
    #welcome .section-04 .title {
        max-width: none;
        line-height: 25px;
        margin-bottom: 20px;
    }
    #welcome .section-01 .text-wrap{
        margin-left: 0;
    }
    #welcome .section-01 {
        padding-top: 60px;
        padding-bottom: 40px;
    }
    #welcome .section-01 * {
        text-align: center;
    }
    .welcome_01{
        height: auto;
        background: none !important;
    }
    .welcome_01 div{
        display: none;
    }
    .welcome_01 img{
        margin: 0 auto 50px auto;
        max-width: 600px;
        display: block !important;
    }
    #welcome .section-02 {
        padding-top: 50px;
        padding-bottom: 40px;
        height: 150px;
    }
    #welcome .section-02 .section_02_block{
        max-width: 260px;
        margin-left: auto;
        margin-right: auto;
    }
    #welcome .section-03 {
        padding-top: 0;
        padding-bottom: 30px;
    }
    #welcome .section-03 *{
        text-align: center;
    }
    #welcome .section-03 .block {
        margin-bottom: 30px;
    }
    #welcome .section-03 .mb-30 {
        margin-bottom: 0 !important;
    }
    #welcome .section-04 *, #welcome .section-05 * {
        text-align: center;
    }
    #welcome .section-05 .info-elem {
        margin-left: auto;
        margin-right: auto;
        max-width: 250px;
    }
    #welcome .section-04 .welcome_05 {
        background: url(../slider/yposkafon-concept001.jpg) center center no-repeat;
        background-size: auto;
        background-size: cover;
        position: relative;
        height: 350px;
        margin-bottom: 30px;
    }
    #welcome .section-07 {
        padding-bottom: 40px;
        margin-top: 50px;
    }
    #welcome .section-07 .nav-btns .more {
        position: absolute;
        bottom: -70px;
        right: auto;
        left: 50%;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .map-wrap {
        margin-top: 30px;
    }
    #map{
        height: 300px;
    }
    #welcome .section-05 {
        padding-top: 0;
        padding-bottom: 30px;
    }
    #welcome .section-05 .info-wrap {
        max-width: none;
    }
    #welcome .section-04 {
        padding-top: 30px;
        padding-bottom: 40px;
    }
    #welcome .section-03 .welcome-room-info .more-btn.auto-width {
        margin: 30px auto 0 auto;
    }
    #welcome .section-04 .header {
        background: #fff;
        padding-left: 40px;
        padding-right: 40px;
    }
    #welcome .section-04 .line {
        left: 15px;
        right: 15px;
    }
    #welcome .section-03 .welcome-room-elem {
        margin-bottom: 40px;
    }
    #room .section-02 .level-wrap {
        padding-left: 15px !important;
        padding-right: 15px !important;
        margin-top: 40px !important;
    }
}
@media (max-width: 575px) {
    #room .section-01 .room-details:nth-child(2):after,
    #room .section-01 .room-details:nth-child(4):after{
        content: none !important;
    }
    #room .section-01 .room-details:nth-child(3):after{
        content: '' !important;
    }
    #room .section-01 .room-details:nth-child(2):after{
        content: none !important;
    }
    #room .section-03 .room-features .list {
      min-height: auto;
    }
    #btn-close {
      font-size: 24px;
    }
}
@media (max-width: 500px) {
    #room .section-05 .welcome-room-feature {
        margin: 50px 5px 5px 5px;
    }
    #welcome .section-05 .more a{
        display:block;
        margin-bottom: 20px;
    }
    #welcome .section-07 .back {
        height: 250px;
    }
    #welcome .section-07 .back-text {
        margin-top: 0;
    }
}
@media (max-width: 380px) {
    #location .distance-elem{
        flex-direction: column;
        align-items: start;
        padding-left: 75px;
    }
    #location .section-03 .elem {
      min-width: auto;
    }
    #location .section-03 .elem-dist {
      text-align: left;
      min-width: 65px;
      margin-left: 25px;
    }
}