/*
Theme Name: boutiquelodges
Theme URI: http://boutiquelodges.com
Author: Pemba Sherpa
Author URI: http://boutiquelodges.com
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: boutiquelodges
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

boutiquelodges is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.
*/


body{
    font-family: 'Montserrat', sans-serif;
    background:#e9e6e2;
    color:#222;
}

/* Headings */
.section-title{
    font-family: 'Cormorant Garamond', serif;
    font-size: 42px;
    letter-spacing: 6px;
    text-align:center;
    margin-bottom:60px;
}
.navbar{background: #f8f9f4}

/* Header Style 1 (Home + Contact) */
.header-light{
    background:#f8f9f4;
    position:relative;
    padding:15px 0;
}

/* Header Style 2 (Other Pages) */
.header-transparent{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    z-index:99;
}

/* Mobile */
@media (max-width:991px){
    .header-transparent{
    position:relative;
    background:#fff;
    }
}

.hero-section{
    height:350px;
    background-size:cover;
    background-position:center;
    position:relative;
    display:flex;
    align-items:flex-start;
}

.header-transparent .navbar{
    background: none;
}

.header-transparent .navbar-nav .menu-item a{
    color: #fff;
}

.header-transparent .navbar-nav .menu-item a:hover{
    text-decoration: none;color#dd7f00;
}

.header-transparent .bi-search::before{
    color: #fff;
}

.header .navbar-brand img{ margin-left: -15px;}

/* Mobile */
@media (max-width:991px){
    .header-transparent .bi-search::before{
        color: #000;
    }
    .header-transparent .navbar-nav .menu-item a{
        color: #000;
    }
    .search-wrapper input{
        right: 0px !important;
        width: 180px;
    }
}

/* Navbar */
/*.navbar{
    background:#f2f1ef;
}*/
.navbar-nav .nav-link{
    font-family: 'Cormorant Garamond', serif;
    font-size:20px;
    margin:0 20px;
}
.navbar-nav .menu-item {
    line-height: 50px;
}

.navbar-nav .menu-item a{
    font-family: 'Cormorant Garamond', serif;
    font-size:20px;
    margin:0 20px;
    text-decoration: none;
    color: #000000a6;
}
.navbar-nav .menu-item a:hover{
    text-decoration: underline;
}

.navbar .justify-content-center{
    justify-content: right !important;
}

/* Search  */ 
.search-wrapper{
    position: relative;  
}
.search-wrapper form{margin-left: 30px;}
.search-wrapper input{
    position: absolute;
    right: 0;
    top: 35px;
    width: 200px;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
    border: 1px solid #000;
    background: #fff;
    border-radius: 5px;
    z-index: 10;
}

.search-wrapper:hover input{
    opacity: 1;
    visibility: visible;
}

.search-wrapper .bi-search::before{
    font-weight: 900 !important;
}

.search-results #searchsubmit{
    padding: 11px 15px;
    background:#dec6a4;
    color:#000;
    border:none;
    margin-left: -5px;
}
.search-results #searchsubmit:hover{
   text-decoration: underline;
}
.searchform input[type=text]{
    border: 1px solid #dec6a4;
    width: 24%;
}
.search-results h1{margin-bottom: 40px;}

.search-results h2 a{color: #444;text-decoration: none;font-size: 26px;}
.search-results h2 a:hover{text-decoration: underline;}

@media (max-width: 768px){}

.search-line{
    margin: 20px 0px 35px 0px;
}

/* Top Slider */ 
.carousel-item{
    height:90vh;
    min-height:500px;
    background:no-repeat center center scroll;
    background-size:cover;
    position:relative;
}

.carousel-overlay{
    position:absolute;
    top:50%;
    /*left:8%;*/
    transform:translateY(-50%);
    color:white;
    max-width:600px;
}


#heroSlider a{
    background:#dd7f00;
    color:white;
    padding:12px 28px;
    border-radius:10px;
    margin-top:20px;
    font-family: Cormorant Grand;
    font-size: 20px;
}
#heroSlider a:hover{
    text-decoration: none;
    color: #f0dabb;
}

#heroSlider .carousel-overlay h5{font-family: Martel Sans; font-size: 9px;letter-spacing: 1px;margin-bottom: 0px;}
#heroSlider .carousel-overlay h1{font-family: Black Mango; font-size: 50px;margin-bottom: 0px;}
#heroSlider .carousel-overlay h3{font-family: Black Mango;font-size: 30px;margin-bottom: 0px;}

@media(max-width:768px){
    .carousel-overlay h1{
        font-size:36px;
    }
    .carousel-overlay{
        left:5%;
    }
}


.feature_3_img{
    margin: 140px 0px 0px -8px;
}    
.about{
    margin-top: 135px !important;
}

.about .section-title{
    margin-bottom: 0px;
    font-family: Cormorant Garamond;
    font-size: 45px;
}
.about p{font-family: Cormorant Garamond;font-size: 13.3px;}

@media(max-width:768px){
    .feature_img img{
        height: 40%;
        display: block;
    }
    .about{
        margin-top: 0px !important;
    }
    .feature_3_img{
        margin: 20px 0px;
    }  
}
.btn_url{
   
}
.about a{
    background: #dd7f00;
    color: #fff !important;
    padding: 15px 15px;
    border: none;
    margin: 0px 15px 0px 0px;
    text-decoration: none;
    font-family: Cormorant Garamond;
    font-size: 13px;
}
.about a:hover{
    text-decoration: none;
    color: #f0dabb !important;
}

/* Mobile */
@media(max-width: 414px) {
    .about a{display:block;margin-bottom:10px;}
	.swiper-pagination-bullet{margin-bottom:5px !important;}
}


/* Map */
.map_img img{
    width: 100%;
}

/* Hero */
.hero{
    background:url('hero.jpg') center/cover no-repeat;
    height:85vh;
    display:flex;
    align-items:center;
    color:#fff;
}
.hero-overlay{
    background:rgba(0,0,0,0.4);
    padding:80px;
}
.hero h1{
    font-family: 'Cormorant Garamond', serif;
    font-size:60px;
}
.btn-gold{
    background:#c77800;
    color:#fff;
    padding:12px 30px;
    border:none;
}
.btn-gold:hover{
    background:#a96400;
}

/* Lodge Slider */
.lodge_title{
    font-size:48px;
    letter-spacing:4px;
    font-family: Cormorant Garamond;
}
.lodgeSlider {
    width: 100%;
}
.swiper-wrapper{
    height: auto;
}
.swiper-slide {
  width: auto;
}
.lodge-card{
    position:relative;
    overflow:hidden;
    border-radius:6px;
}

.lodge-card img{
    width:100%;
    height:420px;
    object-fit:cover;
}

.overlay{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.55);
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    color:#fff;
    opacity:0;
    transition:0.4s;
}

.lodge-card:hover .overlay{
    opacity:1;
}

.stars{
    color:#FFD700;
    font-size:26px;
}

a.lodge-card-btn{
    background: #d57a00;
    border: none;
    color: white;
    padding: 10px;
    border-radius: 6px;
    margin-top: 15px;
    width: 100%;
    text-decoration: none;
    display: block;
    text-align: center;
    font-family: Cormorant Garamond;
    font-size: 17px;
    letter-spacing: 1px;
}
a.lodge-card-btn:hover{
    text-decoration: none;
    color: #f0dabb;
}

/* NAVIGATION STYLE */

.slider-nav{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
    margin-top:40px;
}

.swiper-button-next,
.swiper-button-prev{
    position:relative;
    top:auto;
    color:#333;
    width:auto;
    height:auto;
}

.swiper-pagination{
    z-index: 0 !important;
    position: unset !important;
}

.swiper-pagination-bullet{
    width:40px;
    height:40px;
    line-height:40px;
    border-radius:50%;
    background:transparent;
    border:2px solid #333;
    color:#333;
    font-weight:600;
    opacity:1;
}

.swiper-pagination-bullet-active{
    background:#fff;
}

.swiper-pagination-bullets.swiper-pagination-horizontal{
    width: auto !important;
}
.swiper-button-next, .swiper-button-prev{
    position: unset !important;
    color: #000 !important;
    margin: 0px !important;
}
.swiper-pagination-bullet{
    width: 30px !important;
    height: 30px !important;
    background: none !important;
    line-height: 27px;
}

.swiper-button-next::after,.swiper-button-prev::after {
    font-size: 20px !important;
}

/* CONTACT SECTION */

.contact-section{
    display:flex;
    justify-content:space-between;
    padding:70px 1%;
    gap:60px;
    flex-wrap:wrap;
    background: #f9f8f4;
}

/* LEFT TEXT */

.contact-text{
    flex:1;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.contact-text h1{
    font-size:56px;
    margin-bottom:20px;
}

.contact-text p{
    max-width:420px;
    line-height:1.6;
    color:#555;
}

.no-width p{
    max-width:none;
}
/* FORM */

.form-container{
    flex:1;
    min-width:320px;
}
.form-container .form-title p{text-align: left !important;}
.contact-section .form-container .form-title p{text-align: left !important;}


.contact-section .form-container p{text-align: left !important;font-size: 16px;}

.form-title{
    font-size:18px;
    letter-spacing:1px;
    margin-bottom:25px;
    padding-left: 12px;
}

.form-row{
    display:flex;
    gap:20px;
    margin-bottom:18px;
    flex-wrap:wrap;
}

.form-group{
    flex:1;
    display:flex;
    flex-direction:column;
}

input, select, textarea{
    border:none;
    border-bottom:2px solid #d38719;
    background:transparent;
    padding:10px 5px;
    font-size:14px;
    outline:none;
}

textarea{
    border:1px solid #d9c2a2;
    background:#e7d2b2;
    padding:12px;
    margin-top:8px;
    resize:none;
}

.checkbox{
    font-size:13px;
    margin-top:6px;
}

button{
    margin-top:25px;
    background:#d38719;
    color:white;
    border:none;
    padding:14px 30px;
    font-size:14px;
    letter-spacing:2px;
    cursor:pointer;
    border-radius:4px;
}

/*button:hover{
    background:#b87314;
}*/


/* FOOTER */

footer{
    background:#f0dabb;
    padding:50px 0%;
}

.footer-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px;
    max-width:900px;
}

.footer-grid h3{
    margin-bottom:15px;
    font-size:18px;
    font-family: Cormorant Garamond;
}

.footer-grid li{
    list-style: none;
}

.footer-grid a{
    display:block;
    text-decoration:none;
    color:#333;
    margin-bottom:10px;
    font-family: Cormorant Garamond;
}

.footer-grid a:hover{
    text-decoration:none;
}

.footer-grid a.subscribe-btn:hover{
    text-decoration:none;
    color: #f0dabb !important;
}

.navbar-nav .menu-item a:hover{color: #dd7f00;text-decoration: none;}
.footer-grid .menu-item a:hover{color: #dd7f00;}

.subscribe-btn{
    background:#dd7f00 !important;
    color: #fff !important;
    padding:12px 22px;
    border:none;
    cursor:pointer;
    width: 45%;
    text-align: center;
}

.copyright{
    text-align:center;
    margin-top:40px;
    font-size:14px;
    color:#444;
}


/* RESPONSIVE */

@media(max-width:900px){

    .contact-section{
    flex-direction:column;
    }

    .contact-text h1{
    font-size:40px;
    }

    .footer-grid{
    grid-template-columns:1fr;
    }

    .subscribe-btn{
        width: 40%;
    }

}

.content-page{
    padding: 30px 0px;
}

h1.entry-title{
     padding:0px 0px 30px 0px;
}

html {
  scroll-behavior: smooth;
}

/* Lodge page  */
.hero-img{ width: 100%; height: 400px; object-fit: cover; }
.accent-color{ color: #d4a373; }
.btn-book{ background-color: #e67e22 !important; border: none !important; color: #fff !important; padding: 12px 40px !important; text-transform: uppercase; font-weight: bold; border-radius: 5px !important; }
.btn-book:hover{color: #f0dabb !important;}
.info-card{ border: 1px solid #ddd; padding: 20px; text-align: center; height: 100%; transition: 0.3s; }
.info-card:hover{ border-color: #e67e22; }
.footer-lodge-img{ width: 100%; height: 250px; object-fit: cover; }
.lodge-label{ background-color: #e67e22; color: white; padding: 5px; text-align: center; display: block; font-size: 0.8rem;}


.lodge-inner .p-5{padding: 0rem 3rem !important;}
.lodge-inner h1{font-family:Cormorant Garamond;font-size: 30px;letter-spacing: 1px;}
.lodge-inner .stars{font-size: 16px;}
.lodge-inner p{font-family:Cormorant Garamond;font-size: 13.8px;margin: 0px;text-align: justify;}
.lodge-inner h5{font-size: 22px;font-weight: 100;}
.box {border: 1px solid #444;padding: 5px 20px;text-align: center;background: #fff;transition: 0.3s;height: 100%;cursor: pointer;}
.box i {font-size: 30px;display: block;}
.box p{font-size: 8px;text-align: center;}
.box:hover {border: 1px solid #c88a2b;color: #c88a2b;}
.lodge-inner .lodge-desc{margin: 0px;}

@media (min-width: 992px) {
    .col-lg-3 {flex: 0 0 auto; width: 20% !important;}
}

.lodge-inner .title_ff{margin: 20px 0px 0px 0px !important;font-family: Cormorant Garamond;}
.lodge-inner .col_ff{}
.lodge-inner .mb-4{margin-bottom: 0rem !important;}
.mg-20{margin-top: 20px;}
.box-no-color .box{cursor: default;}
.box-no-color .box:hover{border: 1px solid #444;color:#444;}
.ft-25{font-size: 25px;}

#SubscribeModal .modal-content{padding: 40px 20px} 
#SubscribeModal .modal-content .btn-close{position:absolute;right: 20px;}


.form-container .form-row{margin-bottom: 0px;}
.form-container select{width: 100%;border-bottom: 2px solid #d38719; border-top:none;border-right:none;border-left:none; border-radius: 0px; }
.form-container input{
    border-bottom: 2px solid #d38719 !important;
    border-top:none !important;
    border-right:none !important;
    border-left:none !important; 
    border-radius: 0px !important;
    width: 100%;
}
.form-container textarea{
    border-bottom: 2px solid #d38719 !important; 
    border-top:none !important;
    border-right:none !important;
    border-left:none !important; 
    border-radius: 0px !important;
    background: #dec6a4;
    color: #000;
    width: 100%;
}
.form-container textarea:focus{
    background: #dec6a4;
    color: #000;
}
.form-container input[type="checkbox"]{
    border: 2px solid #d38719 !important;
    width: 15%;
}

.form-container  span{
    width: 160px;
    margin-left: 10px;
}

.form-container .wpcf7-list-item{
   display: inline-flex;
   line-height: 2.5; 
}

.enquire-btn{
    background:#dd7f00 !important;
    color: #fff !important;
    padding:12px 22px;
    border:none;
    cursor:pointer;
    width: auto !important;
    text-align: center;
    margin-left: 11px;
}

.lodge-inner .g-4{--bs-gutter-y: 0;}



/* Room Inner Details */

/* Move modal to right */
.modal-right {
    position: fixed !important;
    right: 0;
    top: 0;
    height: auto;  
    margin: 0;
    overflow-y: auto;
}

/* Optional: make it full height like a sidebar */
.modal-right .modal-content {
    border-radius: 0;
    height: auto;       /* remove full height */
    max-height: 100vh;   /* prevent overflow */
    overflow-y: auto; 
}

/* Transparent background (modal box) */
.modal-content {
    background-color: transparent;
    box-shadow: none;
    border: none;
}

/* Optional: keep text readable */
.modal-body, 
.modal-header, 
.modal-footer {
    background: rgba(255, 255, 255, 0.9);
    border: none;
}
.modal-backdrop.show {
    opacity: 0;
}


/* Align modal with Bootstrap container */
@media (min-width: 576px) {
  .modal-right {
    right: calc((100% - 540px) / 2);
  }
}

@media (min-width: 768px) {
  .modal-right {
    right: calc((100% - 720px) / 2);
  }
}

@media (min-width: 992px) {
  .modal-right {
    right: calc((100% - 960px) / 2);
  }
}

@media (min-width: 1200px) {
  .modal-right {
    right: calc((100% - 1140px) / 2);
  }
}

@media (min-width: 1400px) {
  .modal-right {
    right: calc((100% - 1320px) / 2);
  }
}

/* Mobile: full width */
@media (max-width: 575px) {
  .modal-right {
    right: 0;
    width: 100%;
  }
}

.serif-heading { font-family: 'Playfair Display', serif; text-transform: uppercase; letter-spacing: 3px; font-weight: 400; }
        
/* Header & Navigation */
.header-nav { border-bottom: 1px solid #f0f0f0; padding: 20px 0; position: relative; }
.back-arrow { position: absolute; right: 25px; top: 22px; text-decoration: none; color: #333; font-size: 1.2rem; }

/* Carousel Customization */
.carousel-item img { height: 400px; object-fit: cover; width: 100%; }
.carousel-control-prev-icon, .carousel-control-next-icon { filter: invert(1); } /* Dark arrows if image is light */

/* Room Info */
.info-bar { font-size: 0.85rem; color: #777; margin: 25px 0; border-bottom: 1px solid #f9f9f9; padding-bottom: 15px; width: 500px;}
.info-bar span { margin-right: 20px; display: inline-flex; align-items: center; gap: 8px; }

/* Feature Grid */
.feature-grid { font-size: 0.8rem; line-height: 2.5; color: #555; margin-bottom: 30px; }

/* Package Table (Thin Orange Borders) */
.package-row { 
    border: 1px solid #e2bc94; 
    margin-bottom: 8px; 
    padding: 12px 18px; 
    display: flex; 
    justify-content: space-between; 
    align-items: center;
    font-family: 'Playfair Display', serif;
    font-style: italic;
    background-color: #fff;
}
.price-tag { color: #d4a373; font-family: 'Montserrat', sans-serif; font-style: normal; font-size: 0.9rem; }
.asterisk { color: #d4a373; font-size: 0.7rem; margin-left: 2px; }

/* Button */
.btn-book { 
    background-color: #df8522; 
    color: white; 
    border: none; 
    padding: 14px 45px; 
    text-transform: uppercase; 
    font-family: 'Playfair Display', serif; 
    letter-spacing: 2px;
    font-weight: 600;
    border-radius: 6px;
    transition: 0.3s;
}
.btn-book:hover { background-color: #c7741a; box-shadow: 0 4px 12px rgba(223, 133, 34, 0.2); }
.footer-note { font-size: 0.65rem; color: #b0b0b0; margin-top: 25px; line-height: 1.4; }

.map_img span{font-size: 28px;}


.contact-section h1{font-family: Black Mango;font-size: 40px;margin-bottom: 5px;text-align: center;}
.contact-section p{font-family: Cormorant Garamond ;font-size: 10px;text-align: center}


.content-page{background: #f9f8f4;}


.modal .carousel{height: 400px}

.modal .show .modal-dialog{background: #f9f8f4;}

.search-results{padding-bottom: 30px;}

.form-container span.wpcf7-spinner{width: 24px;background: #dd7f00;}

.book-page{background: #f9f8f4}


