/* CSS Variables for Palette */
        :root {
            --primary-gold: #bca374;
            --dark-gold: #9a845e;
            --bg-dark: #0d0d0d;
            --bg-medium-dark: #161616;
            --sage-green: #3f5243;
            --text-light: #ffffff;
            --text-muted: #a9a9a9;
            /* --font-serif: 'Playfair Display', serif; */
            --font-sans: 'Montserrat', sans-serif;
        }

        /* General & Reset */
        body {
            font-family: var(--font-sans);
            
            color: var(--text-light);
            margin: 0;
            padding: 0;
            overflow-x: hidden;
            -webkit-font-smoothing: antialiased;
        }
        body.home{
            background-color: var(--bg-dark);
        }
        a, a:hover, a:focus {
            color: inherit;
            text-decoration: none;
            transition: all 0.3s ease;
        }

        h1, h2, h3, h4, h5, h6 {
            font-family: var(--font-serif);
            font-weight: 400;
            margin: 0 0 20px 0;
        }

        p {
            font-size: 14px;
            line-height: 1.8;
            color: var(--text-muted);
            font-weight: 300;
        }

        .btn-gold-outline {
            font-family: var(--font-sans);
            font-size: 11px;
            font-weight: 600;
            letter-spacing: 2px;
            text-transform: uppercase;
            border: 1px solid var(--primary-gold);
            padding: 12px 28px;
            background: transparent;
            color: var(--text-light);
            transition: all 0.3s ease;
            border-radius: 0;
            display: inline-block;
        }

        .btn-gold-outline:hover {
            background-color: var(--primary-gold);
            color: var(--bg-dark);
        }

        /* Top utility bar */
        .top-bar {
            border-bottom: 1px solid rgba(255, 255, 255, 0.1);
            padding: 10px 0;
            font-size: 10px;
            font-weight: 500;
            letter-spacing: 1.5px;
            text-transform: uppercase;
            color: #fff;
            position: absolute;
            width: 100%;
            margin-top: 10px;
        }

        .top-bar .info-left {
            text-align: left;
        }

        .top-bar .info-right {
            text-align: right;
        }

        .top-bar span {
            margin-left: 20px;
        }

        /* Header Navigation */
        .navbar-custom {
            background: transparent;
            border: none;
            border-radius: 0;
            margin-bottom: 0;
            padding: 20px 0;
            position: absolute;
            width: 100%;
            margin-top: 50px;
        }

        .navbar-custom .navbar-nav > li > a {
            color: var(--text-light);
            font-size: 11px;
            text-transform: uppercase;
            letter-spacing: 2.5px;
            font-weight: 600;
            padding: 15px 15px;
        }

        .navbar-custom .navbar-nav > li > a:hover {
            color: var(--primary-gold);
            background: transparent;
        }

        .navbar-brand-logo {
            display: flex;
            align-items: center;
            justify-content: center;
            height: 50px;
        }

        .navbar-brand-logo img {
            max-height: 40px;
        }

        .logo-text {
            font-family: var(--font-sans);
            font-weight: 700;
            font-size: 20px;
            letter-spacing: 3px;
            color: #fff;
            text-transform: uppercase;
        }

        .logo-text span {
            color: #d12c2c;
        }

        .btn-nav-book {
            border: 1px solid var(--primary-gold);
            padding: 10px 20px !important;
            margin-top: 5px;
            font-size: 11px;
            letter-spacing: 2px;
            text-transform: uppercase;
        }

        /* Hero Banner */
        .hero-section {
            background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), 
                        url('https://images.unsplash.com/photo-1566073771259-6a8506099945?auto=format&fit=crop&w=1920&q=80') no-repeat center center;
            background-size: cover;
            min-height: 80vh;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            text-align: center;
            padding: 170px 0;
        }

        .hero-subtitle {
            font-size: 11px;
            letter-spacing: 3px;
            text-transform: uppercase;
            color: var(--primary-gold);
            margin-bottom: 20px;
            font-weight: 500;
        }

        .hero-title {
            font-size: 70px;
            letter-spacing: 2px;
            line-height: 1.2;
            margin-bottom: 50px;
            max-width: 800px;
        }

        /* Booking Widget Bar */
        .booking-widget-container {
            width: 100%;
            max-width: 1000px;
            padding: 0 15px;
        }

        .booking-widget {
            background: rgba(13, 13, 13, 0.85);
            border: 1px solid rgba(188, 163, 116, 0.3);
            padding: 15px 30px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            flex-wrap: wrap;
        }

        .booking-field {
            flex: 1;
            min-width: 150px;
            margin: 10px;
            text-align: left;
            border-right: 1px solid rgba(255, 255, 255, 0.1);
            padding-right: 20px;
        }

        .booking-field:last-of-type {
            border-right: none;
        }

        .booking-field label {
            display: block;
            font-size: 9px;
            letter-spacing: 1.5px;
            text-transform: uppercase;
            color: var(--text-muted);
            margin-bottom: 5px;
            font-weight: 400;
        }

        .booking-field input, .booking-field select {
            background: transparent;
            border: none;
            color: var(--text-light);
            font-size: 13px;
            width: 100%;
            outline: none;
            font-family: var(--font-sans);
        }

        .booking-field select option {
            background: var(--bg-dark);
            color: var(--text-light);
        }

        .btn-booking-submit {
            background: transparent;
            border: 1px solid var(--primary-gold);
            color: var(--text-light);
            font-size: 11px;
            text-transform: uppercase;
            letter-spacing: 2px;
            font-weight: 600;
            padding: 15px 25px;
            transition: all 0.3s ease;
            height: 100%;
            min-height: 50px;
        }

        .btn-booking-submit:hover {
            background: var(--primary-gold);
            color: var(--bg-dark);
        }

        /* Section Standard */
        .section-padding {
            padding: 100px 0;
        }

        .section-tag {
            font-size: 10px;
            letter-spacing: 3px;
            text-transform: uppercase;
            color: var(--primary-gold);
            margin-bottom: 15px;
            display: block;
            font-weight: 600;
        }

        .section-heading {
            font-size: 38px;
            line-height: 1.3;
            margin-bottom: 25px;
        }

        /* Custom Collage Layout for Section 1 */
        .collage-container {
            position: relative;
            height: 500px;
            margin-bottom: 50px;
        }

        .collage-img-1 {
            width: 75%;
            height: 100%;
            object-fit: cover;
            position: absolute;
            left: 0;
            top: 0;
            z-index: 1;
        }

        .collage-img-2 {
            width: 50%;
            height: 60%;
            object-fit: cover;
            position: absolute;
            right: 0;
            bottom: -30px;
            z-index: 2;
            border: 10px solid var(--bg-dark);
        }

        /* Full-width Video Section styling */
        .video-banner-section {
            position: relative;
            height: 500px;
            background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), 
                        url('https://images.unsplash.com/photo-1583847268964-b28dc8f51f92?auto=format&fit=crop&w=1200&q=80') no-repeat center center;
            background-size: cover;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .play-btn {
            width: 80px;
            height: 80px;
            border-radius: 50%;
            border: 1px solid var(--text-light);
            background: rgba(0, 0, 0, 0.4);
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--text-light);
            font-size: 24px;
            cursor: pointer;
            transition: all 0.3s ease;
            padding-left: 5px; /* Alignment visual fix */
        }

        .play-btn:hover {
            transform: scale(1.1);
            background: var(--primary-gold);
            border-color: var(--primary-gold);
            color: var(--bg-dark);
        }

        /* Section: Choose Your Apartment Type */
        .apartment-card {
            position: relative;
            height: 420px;
            margin-bottom: 30px;
            overflow: hidden;
        }

        .apartment-card-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s ease;
        }

        .apartment-card:hover .apartment-card-img {
            transform: scale(1.05);
        }

        .apartment-card-overlay {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            padding: 25px;
            background: linear-gradient(to top, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.5) 60%, rgba(0,0,0,0) 100%);
            display: flex;
            align-items: flex-end;
        }

        .apartment-card-title {
            font-size: 20px;
            color: var(--text-light);
            margin: 0;
            font-family: var(--font-serif);
        }

        /* Experience Exquisite Cuisine Section */
        .cuisine-img {
            width: 100%;
            height: 500px;
            object-fit: cover;
        }

        .cuisine-text-block {
            background-color: var(--sage-green);
            padding: 80px 60px;
            height: 500px;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        /* Testimonial Section Custom CSS */
.hospitality-testimonial-section {
    background-color: #0d0d0d;
}

/* Remove default Bootstrap column padding to let images touch edges */
.no-gutters-custom [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}
.thankyou-page{
    margin:auto;
    margin-top:300px !important;
    color: #333;
}
.thankyou-page .thankyou-buttons{
    display:none !important;
}
/* Equal-height alignment on desktop screens */
@media (min-width: 992px) {
    .no-gutters-custom {
        display: flex;
        flex-wrap: wrap;
    }
    .right-split-container {
        display: flex;
        flex-direction: column;
        height: 100%;
        width: 100%;
    }
    .decor-image-block, .testimonial-green-block {
        flex: 1; /* Splits top and bottom exactly 50/50 */
    }
}

/* Left side main block styling */
.hospitality-block {
    position: relative;
    height: 550px;
    background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), 
                url('./images/le-quan-H2NpsZJe2IA-unsplash.jpg') no-repeat center center;
    background-size: cover;
    display: flex;
    align-items: flex-start;
    padding: 80px 60px;
}

.hospitality-content {
    max-width: 500px;
    z-index: 2;
}

.section-tag-gold {
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #bca374; /* Classic Gold Accent */
    margin-bottom: 20px;
    display: block;
    font-weight: 600;
}

.hospitality-title {
    font-family: 'Playfair Display', serif;
    font-size: 38px;
    line-height: 1.35;
    color: #ffffff;
    margin: 0;
}
.right-split-container{
    width: 1000px;
    position: relative;
    right: 0;
    float: right;
    min-height: 320px;
    top: -50%;
}
/* Right side decorative image block */
.decor-image-block {
    height: 320px;
    width: 320px;
    background: url('./images/jason-wang-NxAwryAbtIw-unsplash.jpg') no-repeat center center;
    background-size: cover;
    position: absolute;
    top: 0;
    z-index: 1;
}

/* Right side green testimonial container */
.testimonial-green-block {
    height: 320px;
    background-color: #435245; /* Dark sage-green */
    padding: 70px 70px 70px 400px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.stars-container {
    color: #bca374;
    font-size: 11px;
    margin-bottom: 15px;
}

.stars-container i {
    margin-right: 4px;
}

.testimonial-quote {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    line-height: 1.7;
    color: #e0e0e0;
    border: none;
    padding: 0;
    margin: 0 0 20px 0;
    font-style: normal;
    font-weight: 300;
    background: transparent;
}

.testimonial-author-info {
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    font-weight: 600;
    color: #ffffff;
    margin-bottom: 25px;
}

.author-source {
    display: block;
    font-size: 9px;
    color: #bca374;
    margin-top: 3px;
    font-weight: 400;
}

.pagination-dots {
    display: flex;
}

.p-dot {
    width: 6px;
    height: 6px;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    margin-right: 8px;
    cursor: pointer;
}

.p-dot.active {
    background-color: #ffffff;
}

/* Tablet & Mobile responsive fallback */
@media (max-width: 991px) {
    .hospitality-block {
        height: 450px;
        padding: 60px 30px;
    }
    .hospitality-title {
        font-size: 30px;
    }
    .decor-image-block {
        height: 250px;
    }
    .testimonial-green-block {
        height: auto;
        padding: 50px 30px;
    }
}

        /* Dual Info Blocks */
        .info-col-box {
            position: relative;
            height: 380px;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            text-align: center;
            padding: 40px;
        }

        .info-col-box.box-left {
            background: linear-gradient(rgba(13, 13, 13, 0.8), rgba(13, 13, 13, 0.8)), 
                        url('https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?auto=format&fit=crop&w=800&q=80') no-repeat center center;
            background-size: cover;
        }

        .info-col-box.box-right {
            background: linear-gradient(rgba(13, 13, 13, 0.8), rgba(13, 13, 13, 0.8)), 
                        url('https://images.unsplash.com/photo-1578683010236-d716f9a3f461?auto=format&fit=crop&w=800&q=80') no-repeat center center;
            background-size: cover;
            border-left: 1px solid rgba(255, 255, 255, 0.05);
        }

        /* Footer & Newsletter */
        .footer-section {
            background-color: #060606;
            padding: 80px 0 40px 0;
            border-top: 1px solid rgba(255,255,255,0.05);
        }

        .newsletter-title {
            font-size: 28px;
            line-height: 1.3;
            margin-top: 10px;
        }

        .newsletter-form {
            position: relative;
            margin-bottom: 20px;
        }

        .newsletter-input {
            width: 100%;
            background: transparent;
            border: none;
            border-bottom: 1px solid rgba(255, 255, 255, 0.2);
            padding: 15px 0;
            color: var(--text-light);
            font-size: 14px;
            outline: none;
        }

        .newsletter-submit-btn {
            position: absolute;
            right: 0;
            top: 15px;
            background: transparent;
            border: none;
            color: var(--text-light);
            font-size: 11px;
            text-transform: uppercase;
            letter-spacing: 2px;
            font-weight: 600;
            outline: none;
            cursor: pointer;
        }

        .newsletter-submit-btn i {
            margin-left: 8px;
        }

        .privacy-checkbox {
            margin-top: 15px;
            display: flex;
            align-items: center;
            font-size: 11px;
            color: var(--text-muted);
        }

        .privacy-checkbox input {
            margin-right: 10px;
            margin-top: 0;
        }

        .footer-divider {
            border-top: 1px solid rgba(255,255,255,0.05);
            margin: 60px 0 30px 0;
        }

        .footer-bottom {
            font-size: 11px;
            color: var(--text-muted);
            display: flex;
            align-items: center;
            justify-content: space-between;
            flex-wrap: wrap;
        }

        .payment-icons {
            margin: 10px 0;
        }

        .payment-icons i {
            font-size: 24px;
            margin-right: 15px;
            color: rgba(255,255,255,0.4);
            vertical-align: middle;
        }

        .social-icons a {
            color: rgba(255,255,255,0.4);
            margin-left: 15px;
            font-size: 14px;
        }

        .social-icons a:hover {
            color: var(--primary-gold);
        }

        /* Mobile Responsive Adjustments */
        @media (max-width: 991px) {
            .booking-widget {
                flex-direction: column;
                align-items: stretch;
            }
            .booking-field {
                border-right: none;
                padding-right: 0;
                margin-bottom: 20px;
            }
            .collage-container {
                height: 400px;
                margin-bottom: 80px;
            }
            .cuisine-text-block, .cuisine-img,
            .hospitality-text-block, .testimonial-block {
                height: auto;
                padding: 60px 30px;
            }
            .info-col-box.box-right {
                border-left: none;
                border-top: 1px solid rgba(255, 255, 255, 0.05);
            }
        }

        @media (max-width: 767px) {
            .top-bar .info-right {
                text-align: left;
                margin-top: 5px;
            }
            .top-bar span {
                margin-left: 0;
                margin-right: 15px;
            }
            .hero-title {
                font-size: 36px;
            }
            .section-heading {
                font-size: 30px;
            }
            .footer-bottom {
                flex-direction: column;
                text-align: center;
            }
            .social-icons {
                margin-top: 15px;
            }
            .social-icons a {
                margin: 0 10px;
            }
        }
.eb-page-header{
    background-repeat: no-repeat !important;
    background-position: center !important;
    min-height: 300px;
    background: url('../images/abt.jpg') !important;
    position: absolute;
    top: 0;
    z-index: -1;
    width: 100%;
}  
.eb-page-header .title{
    margin-top: 120px;
}
.eb-page-header .title h1{
    font-size: 50px;
    color: #fff !important;
}
.eb-breadcrumbs, .eb-breadcrumbs li a{
    color: #fff !important;
}
.eb-archive-rooms{
    margin-top: 300px;
}
.room-list-item{
    background: #f3f3f3;
    color: #000;
}      
.eb-room-page.eb-right-sidebar{
    color: #000;
}
.eb-widget .btn, .eb-widget button{
    background-color: #976f24;
    border: 0;
}
.eb-page main.room-page{
    margin-top: 250px;
    background-color: transparent !important;
}
.eb-page-header .room-price{
    margin-top: 100px;
    color: #fff !important;
}
.eb-page-header.eb-room-header .normal-price{
    color: #fff !important;
}
.page-id-37 .entry-header, .page-id-39 .entry-header, .page-id-43 .entry-header{
    position: absolute;
    background-image: url('../images/abt.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    z-index: -1;
    height: 300px;
    margin-bottom: 50px;
    top: 0;
}
.eb-checkout-page, .eb-search-page, .checkout-details{
    margin-top: 350px;
    padding-left: 100px;
    padding-right: 100px;
    color: #000;
}
.eb-page .checkout-payment-tabs{
    margin-top: 0;
    margin-right: 100px;
    margin-left: 100px;
}
.entry-title{
    margin-top: 170px;
    margin-left: 100px;
    position: relative;
}
.search-filters {
    border: 1px solid #3333332e;
    border-radius: 5px;
    padding: 10px 15px;
    height: fit-content;
}
.page-id-39 .entry-header:before, .page-id-37 .entry-header:before, .page-id-43 .entry-header:before{
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #00000070;
    top: 0;
    content: "";
}
.eb-alert.eb-alert-error{
    margin-top: 300px;
    margin-bottom: 70px;
}
.backface{
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: #000000c2;
    z-index: 1;
    top: 0;
    left: -100%;
}
.sidenav{
    position: absolute;
    width: 70%;
    height: 100%;
    background-color: #fff;
    left: -100%;
    transition: ease-in-out 0.3s;
}
.sidenav ul li{
    border-bottom: 1px solid #33333330;
    line-height: 2.8;
}
.sidenav ul li a{
    color: #262626;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 1px;
    padding-left: 10px;
    display: block;
}
.sidenav .close{
    position: absolute;
    right: -32px;
    background-color: #006262;
    opacity: 1;
    color: #fff;
    font-size: 12px;
    padding: 10px;
    top: 0;
}
.terms{
    margin-top:300px;
    color:#000;
}
.terms p{
    color:#333;
    font-weight: normal;
    font-size:16px;
}
@media screen and (max-width:450px){
    .decor-image-block{
        display: none;
    }
    .right-split-container{
        width: auto;
        position: unset;
        min-height: auto;
        float: none;
    }
    .collage-container{
        height: 320px;
    }
    .collage-img-1 {
        width: 100%;
        height: 100%;
        object-fit: cover;
        position: unset;
    }
    .eb-archive-rooms {
        margin-top: 150px;
    }
    .eb-page-header .title {
        margin-top: 160px;
    }
    .eb-page-header .room-price {
        margin-top: 150px;
    }
    .eb-checkout-page, .eb-search-page, .checkout-details {
        padding-left: 30px;
        padding-right: 30px;
        color: #000;
    }
    .eb-page .checkout-payment-tabs{
        margin-right: 30px;
        margin-left: 30px;
    }
    .navbar-collapse{
        display: none;
    }
}