/* */
.row.no-gutters { margin-right: 0; margin-left: 0; }
.row.no-gutters > [class^="col-"], .row.no-gutters > [class*=" col-"] { padding-right: 0; padding-left: 0; }

/* Page Header */
.page-header{ height: 400px; background-position: center; background-size: cover; padding-bottom: 0px; margin:0px; border: none; position: relative;}
.page-header .content{ position: relative; margin-top: 300px; }
.page-header .content h1{ color: #fff;  }

.page-title{ margin-bottom: 28px; }



.brand-block .logo-block {display: table; margin-top: 8px;}
.brand-block .logo-block .logo-image {width: 90px; display: table-cell; vertical-align: middle;}
.brand-block .logo-block .logo-content {display: table-cell; vertical-align: middle;}
.brand-block .logo-block .logo-content h3{ font-size: 16px; margin: 0px; color:#fff; }


.home-booking .input-group-addon:last-child { padding: 6px 12px; font-size: 14px; font-weight: 400; line-height: 1; color: #555; text-align: center; background-color: #f7c771; border: none; border-radius: 0px; }

.home-rooms .slick-prev { left: 7px; z-index: 16; }
.home-rooms .slick-next { right: 7px; z-index: 16; }

.home-rooms .room:hover .image{ transform: scale(1); }

.about-resort::before { content: ''; position: absolute; width: 100%; height: 100%; left: 0; top: 0; background: #000; z-index: 5; opacity: 0.7; }

.about-block { z-index: 20; position: absolute; color: #fff; text-align: justify; }

.about-block .section-title h2{ color: #fff; }

.btn-booknow span{ display: none; } 


/* ##################################
-------------------------------------
            ABOUT US PAGE
-------------------------------------
####################################*/

.about-page .page-header{ background-image: url('../images/about/about-top-image.jpg'); }

/* About Main */
.about-page .about-main { padding: 50px 0px; }

/* About Main Images */
.about-page .about-main a{ position: relative; display: block; }
.about-page .about-main a i{ color: #fff; background: #a3258e; position: absolute; z-index: 10; top: 50%; left: 50%; -moz-transform: translateX(-50%) translateY(-50%); -webkit-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); padding: 15px; font-size: 21px; border-radius: 50px; opacity: 0; transition: 300ms all ease; }

.about-page .about-main a::after{ content: ''; position: absolute; top : 0; left: 0; width: 100%; height: 100%; transition: 300ms all ease; }
.about-page .about-main a:hover::after{  background-color: rgba(0,0,0,0.5); }
.about-page .about-main a:hover i{opacity: 1}

/* About Main content */
.about-page .about-main .content{ font-size: 16px; }
.about-page .about-main .content > p { text-align: justify; }
.about-page .about-main .why-we-special{ display: table; width: 100%; }
.about-page .about-main .why-we-special div{ display: table-cell; width: 50%; margin: 10px; }
.about-page .about-main .why-we-special div p{ margin: 20px; text-align: center; color: #fff; background: #2d2c2d; padding: 15px; text-transform: uppercase; font-weight: 700; transition: 300ms all ease; }
.about-page .about-main .why-we-special div p:hover{ background : #a3258e; }


/* About Our Speciality */
.about-page .about-our-speciality { background: #333; color: #fff; padding: 50px 0px; }
.about-page .about-our-speciality .sec-title{ margin-bottom: 30px; }
.about-page .about-our-speciality .special-item{ position: relative; display: block; max-width: 400px; margin: auto; margin-bottom: 30px; } 
.about-page .about-our-speciality .special-item::after{ content: ''; position: absolute; top : 0; left: 0; width: 80px; height: 80px; background-size: cover; background-position: 0 0; background-image: url(../images/about/special.png); transition: 300ms all ease; }

.about-page .about-our-speciality .special-item a{ position: relative; display: block; }
.about-page .about-our-speciality .special-item a i{ color: #fff; background: #a3258e; position: absolute; z-index: 10; top: 50%; left: 50%; -moz-transform: translateX(-50%) translateY(-50%); -webkit-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); padding: 15px; font-size: 21px; border-radius: 50px; opacity: 0; transition: 300ms all ease; }

.about-page .about-our-speciality .special-item a::after{ content: ''; position: absolute; top : 0; left: 0; width: 100%; height: 100%; transition: 300ms all ease; }
.about-page .about-our-speciality .special-item a:hover::after{  background-color: rgba(0,0,0,0.5); }
.about-page .about-our-speciality .special-item a:hover i{opacity: 1; }
.about-page .about-our-speciality .special-item .title{ background: #a3258e; font-size: 16px; text-align: center; text-transform: uppercase; padding: 10px 4px; font-weight: 600; }

/* About Contact Us */
.about-page .contact-us{ padding: 150px 0px; background-position: center; background-size: cover; margin:0px; border: none; position: relative; background-image: url('../images/about/about-bottom-image.jpg');  }
.about-page .contact-us .contact-block{ display: table; position: relative; margin: 0px auto; }
.about-page .contact-us .contact-block .icon{ width: 130px;display: table-cell; vertical-align: top; }
.about-page .contact-us .contact-block .text{display: table-cell; vertical-align: top; padding-left: 20px; }
.about-page .contact-us .contact-block .text h3{ color: #fff; font-size: 50px; font-family: 'Open Sans', sans-serif; font-weight: 700; margin: 0px; text-align: center; }
.about-page .contact-us .contact-block .text h4{ color: #fff; font-size: 22px; margin: 0px; text-align: center; }
.about-page .contact-us .contact-block .text a{ display: block; text-align: center; background: #a42590; color: #fff; padding: 10px; margin-top: 9px; }



/* ##################################
-------------------------------------
            PACKAGES PAGE
-------------------------------------
####################################*/

.packages-page .page-header{ background-image: url('../images/packages/pacakges-top-image.jpg'); }

/* Packages Main */
.packages-page .packages-main { padding: 50px 0px; }

.packages-page .room-package{ display: block; margin-bottom: 30px; padding-bottom: 15px; overflow: hidden; box-shadow: 1px 1px 3px rgba(0,0,0,0.25); }
.packages-page .room-package .content{ display: block; }
.packages-page .room-package .content .title{ padding-bottom: 5px; margin-bottom: 10px; border-bottom: 1px dashed #a42590; padding-top: 15px; text-align: center; }
.packages-page .room-package .title h4, .packages-page .room-package .title p{ margin: 0px; }
.packages-page .room-package .title h4{ font-size: 24px; margin-bottom: 4px;  }
.packages-page .room-package .content a{ color: #a42590; display: table; margin: 0px auto; padding: 7px 15px; background: #fff; border: 1px solid #a42590; transition: 300ms all ease; }
.packages-page .room-package .content a:hover{ background : #a42590; color: #fff; }
.packages-page .room-package .content .text{ text-align: justify; padding: 0px 20px; }

.packages-page .facilities{ padding: 50px 0px; background-position: center; background-size: cover;  margin:0px; border: none; position: relative; background-image: url('../images/packages/packages-bottom-image.jpg'); }

.packages-page .facilities:after{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    background: rgba(0,0,0,0.4);
}
.packages-page .facilities .facility{ margin: 20px; background: rgba(255,255,255,0.6); padding: 20px; color: #fff; position: relative; z-index: 10; }
.packages-page .facilities .facility .content{ font-size: 14px; text-transform: uppercase; font-weight: 700; padding: 7px 0px; text-align: center; color: #414141; }
.packages-page .facilities .facility .icon{ max-width: 120px; display: block; margin: 0px auto; transition: 300ms all ease; filter: grayscale(100%); }
.packages-page .facilities .facility:hover .icon{ filter: grayscale(0%); }


.packages-page .slick-prev { left: 7px; z-index: 16; }
.packages-page .slick-next { right: 7px; z-index: 16; }


/* ##################################
-------------------------------------
           MY WEDDING PAGE
-------------------------------------
####################################*/

.mywedding-page .page-header{ background-image: url('../images/my-wedding/my-wedding-top-image.jpg'); }

.mywedding-page .mywedding-main { padding: 50px 0px; }

.wedding-hall .image{ width: 50px; display: block; margin: 0px auto; }
.wedding-hall .content h3{ font-size: 30px; text-align: center; margin: 0px; margin-top: 4px; color: #f1c260;  }
.wedding-hall{ display: block; background: #c585bb; padding: 21px 0px; }


.mywedding-gallery{ padding-bottom: 50px; }
.mywedding-gallery a{ position: relative; display: block; margin-bottom: 30px; box-shadow: 1px 1px 3px rgba(0,0,0,0.4); }
.mywedding-gallery a i{ color: #fff; background: #a3258e; position: absolute; z-index: 10; top: 50%; left: 50%; -moz-transform: translateX(-50%) translateY(-50%); -webkit-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); padding: 15px; font-size: 21px; border-radius: 50px; opacity: 0; transition: 300ms all ease; }

.mywedding-gallery a::after{ content: ''; position: absolute; top : 0; left: 0; width: 100%; height: 100%; transition: 300ms all ease; }
.mywedding-gallery a:hover::after{  background-color: rgba(0,0,0,0.5); }
.mywedding-gallery a:hover i{opacity: 1}





/* ##################################
-------------------------------------
           GALLERY PAGE
-------------------------------------
####################################*/

.gallery-page .page-header{ background-image: url('../images/gallery/gallery-top-image.jpg'); }

.gallery-page .gallery-main { padding: 50px 0px; }

.wedding-hall .image{ width: 50px; display: block; margin: 0px auto; }
.wedding-hall .content h3{ font-size: 30px; text-align: center; margin: 0px; margin-top: 4px; color: #f1c260;  }
.wedding-hall{ display: block; background: #c585bb; padding: 21px 0px; }


.main-gallery{ padding: 50px 0px; }
.main-gallery a{ position: relative; display: block; margin-bottom: 30px; box-shadow: 1px 1px 3px rgba(0,0,0,0.4); -webkit-box-shadow: 1px 1px 3px rgba(0,0,0,0.4); }
.main-gallery a i{ color: #fff; background: #a3258e; position: absolute; z-index: 10; top: 50%; left: 50%; -moz-transform: translateX(-50%) translateY(-50%); -webkit-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); padding: 15px; font-size: 21px; border-radius: 50px; opacity: 0; transition: 300ms all ease; }

.main-gallery a::after{ content: ''; position: absolute; top : 0; left: 0; width: 100%; height: 100%; transition: 300ms all ease; }
.main-gallery a:hover::after{  background-color: rgba(0,0,0,0.5); }
.main-gallery a:hover i{opacity: 1}



/* ##################################
-------------------------------------
           CONTACT US PAGE
-------------------------------------
####################################*/

.contact-page .page-header{ background-image: url('../images/contact/conatact-top-image.jpg'); }

.contact-us { color: #5e5e5e; padding-top: 50px; }
.contact-us .base-contact { padding-bottom: 40px; }
.contact-us .base-contact h3{ font-size: 24px; color: #a42590; }
.contact-us h2 { color: #f6253a; text-transform: uppercase; font-size: 27px; font-weight: 700; }
.contact-us .contact-details { margin-top: 0px; padding-top: 0px; padding: 20px; background: #f7f7f7; border: 1px solid #eaeaea; }

.contact-us .contact-details .contact-content h4 { margin-top: 12px; color: #ffffff; font-weight: 400; text-transform: uppercase; font-size: 15px; padding: 6px 15px; margin-bottom: 0px; position: relative; border-bottom: none; display: table; background: #a42590; }
.contact-us .contact-details .contact-content h4::after { content: ''; position: absolute; }
.contact-us .contact-details .contact-content .contact-box { display: table; width: 100%; margin-bottom: 5px; padding: 10px; transition: 300ms all ease; border: 1px solid #a42590; border-top: none; }
.contact-us .contact-details .contact-content .contact-box .icon { display: table-cell; width: 40px; vertical-align: top; }
.contact-us .contact-details .contact-content .contact-box .icon i { display: table; margin: 0px auto; color: #a42590; transition: 300ms all ease; margin-top: 4px; }
.contact-us .contact-details .contact-content .contact-box .details { display: inline-block; vertical-align: top; }
.contact-us .contact-details .contact-content .contact-box .details a, .contact-us .contact-details .contact-content .contact-box .details p { color: #a42590; transition: 300ms all ease; margin: 0px; font-size: 15px; }
.contact-us .contact-form { padding: 20px; padding-top: 40px; border-left: 4px solid #FFF; border-top: 4px solid #FFF; }
.contact-us .contact-form h2 { color: #fff; }
.contact-us .contact-form .form-group { position: relative; overflow: hidden; margin-bottom: 27px; }
.contact-us .contact-form .form-group label { margin-bottom: 0px; }
.contact-us .contact-form .form-control { border-radius: 0; border: 1px solid #a42590; border-top: none; -webkit-box-shadow: none; box-shadow: none; transition: 300ms all ease; }
.contact-us .contact-form .form-control:focus { box-shadow: unset; }
.contact-us .contact-form .form-control::placeholder { color: #444444; font-size: 15px; }
.contact-us .contact-form .btn-submit { background: #fff; border-radius: 0px; border: 1px solid #a42590; padding: 7px 40px; display: table; margin-left: auto; margin-right: 0px; color: #a42590; text-transform: uppercase; font-weight: 700; transition: 300ms all ease; }
.contact-us .contact-form .btn-submit.btn:hover { background: #a42590!important;  color: #fff;}
.contact-us .contact-form .btn.focus, .contact-us .contact-form .btn:focus { outline: 0; box-shadow: none; }
.contact-us .contact_map { display: block; }
.contact-us #map { border: 1px solid #8fc400; padding: 5px; }




/* ##################################
-------------------------------------
          BOOK NOW PAGE
-------------------------------------
####################################*/

.booking-page .page-header{ background-image: url('../images/contact/booking-top-image.jpg'); }

.booknow { color: #5e5e5e; padding-top: 50px; }
.booknow h3{ font-size: 30px; text-align: center; margin-bottom: 28px; }
.booknow .base-contact { padding-bottom: 40px; }
.booknow .base-contact h3{ font-size: 24px; color: #a42590; }
.booknow h2 { color: #f6253a; text-transform: uppercase; font-size: 27px; font-weight: 700; }
.booknow .contact-details { margin-top: 0px; padding-top: 0px; padding: 20px; background: #f7f7f7; border: 1px solid #eaeaea; }

.booknow .form-group { position: relative; overflow: hidden; margin-bottom: 27px; }
.booknow .form-group label { margin-bottom: 0px; }
.booknow .form-control { border-radius: 0; border: 1px solid #a42590; border-top: none; -webkit-box-shadow: none; box-shadow: none; transition: 300ms all ease; }
.booknow .form-control:focus { box-shadow: unset; }
.booknow .form-control::placeholder { color: #444444; font-size: 15px; }
.booknow  .btn-submit { background: #fff; border-radius: 0px; border: 1px solid #a42590; padding: 7px 40px; display: table; margin-left: auto; margin-right: 0px; color: #a42590; text-transform: uppercase; font-weight: 700; transition: 300ms all ease; }
.booknow .btn-submit.btn:hover { background: #a42590!important;  color: #fff;}
.booknow  .btn.focus, .booknow .contact-form .btn:focus { outline: 0; box-shadow: none; }
.booknow { display: block; }
.booknow #map { border: 1px solid #8fc400; padding: 5px; }

.input-group-addon:last-child{background: #fff; border: 1px solid #a3258e; border-left: none; border-radius: none; }


/* ##################################
-------------------------------------
           FACILITIES PAGE
-------------------------------------
####################################*/


.facilities-page .page-header{ background-image: url('../images/facilities/facilities-top-image.jpg');  }

.facilities-page .facilities-main { padding: 50px 0px; }

.facility-block{ display:block; background-color: #f7f7f7; padding: 10px 0px; margin-bottom: 30px; }
.facility-block .head{ display: table; width: 100%; padding-bottom: 10px; border-bottom: 1px solid #a42590; }
.facility-block .head .icon{ display: table-cell; width: 60px; vertical-align: top; padding-left: 20px; }
.facility-block .head .title{ display: table-cell;  vertical-align: top; }
.facility-block .head .title p { margin: 0px; font-size: 18px; padding-left: 10px; padding-top: 7px; text-transform: uppercase; }

.facility-block .body {margin-top: 10px;}
.facility-block .body .item{margin-bottom: 10px; transition: 300ms all ease; }
.facility-block .body .item:hover{ border-left: 5px solid #a42590; }
.facility-block .body .item .icon{ display: table-cell; width: 40px; vertical-align: middle; padding-left: 20px; }
.facility-block .body .item .title{ display: table-cell;  vertical-align: middle; }
.facility-block .body .item .title p { margin: 0px; font-size: 13px; padding-left: 10px; padding-top: 1px; text-transform: uppercase; }



.offer-page .page-header{ background-image: url('../images/offers/offers-top-bar.jpg');  }


.offer-page .main-offers { padding: 50px 0px;  }

.offer-page .offer-item{ display: table; width: 100%; padding: 10px; border: 1px dashed #a3258e; border-bottom: 3px solid #a3258e; margin-bottom: 30px; }

.offer-page .offer-item .image{ display: table-cell; vertical-align: middle; width: 40%; } 
.offer-page .offer-item .content{ display: table-cell; vertical-align: middle; width: 60%; padding-left: 20px; } 


.offer-page .offer-item .content h3{ color: #a3258e; font-size: 50px;}
.offer-page .offer-item .content h3 span{ display: inline-block; background: #a3258e; color: #fff; font-size: 23px; padding: 3px 16px; margin-bottom: -27px; position: relative; }


/* Phone button */

.phone_btn,
.phone_number {
    display: inline-block;
    background: #ac2e98;
    height: 40px;
    vertical-align: bottom
}

.contact_btn {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 9999
}

.phone_btn {
    width: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 30px;
    color: #fff;
    font-size: 15px;
    cursor: pointer;
    box-shadow: 0 0 0 rgba(255, 35, 220, 0.4);
    animation: pulse 2s infinite
}

.phone_number {
    margin: 0 -20px 0 0;
    line-height: 35px;
    padding-left: 10px;
    padding-right: 20px;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    font-weight: 600;
    opacity: 0
}

.phone_number a {
    color: #fff
}

.phone_btn:hover {
    animation: none
}

.contact_btn:hover>#phone_number {
    -webkit-transition: opacity 1s ease-in-out;
    -moz-transition: opacity 1s ease-in-out;
    -ms-transition: opacity 1s ease-in-out;
    -o-transition: opacity 1s ease-in-out;
    transition: opacity 1s ease-in-out;
    opacity: 1
}

@-webkit-keyframes pulse {
    0% {
        -webkit-box-shadow: 0 0 0 0 rgba(195, 54, 38, .4);
    }
    70% {
        -webkit-box-shadow: 0 0 0 20px rgba(195, 54, 38, 0);
    }
    100% {
        -webkit-box-shadow: 0 0 0 0 rgba(195, 54, 38, 0);
    }
}

@keyframes pulse {
    0% {
        -moz-box-shadow: 0 0 0 0 rgba(195, 54, 38, .4);
        box-shadow: 0 0 0 0 rgba(195, 54, 38, .4);
    }
    70% {
        -moz-box-shadow: 0 0 0 10px rgba(195, 54, 38, 0);
        box-shadow: 0 0 0 20px rgba(195, 54, 38, 0);
    }
    100% {
        -moz-box-shadow: 0 0 0 0 rgba(195, 54, 38, 0);
        box-shadow: 0 0 0 0 rgba(195, 54, 38, 0);
    }
}