/* --- Premium Navigation Bar Styles --- */
html {
    scroll-behavior: smooth; /* Ensures clicking navbar items glides smoothly down the page */
    scroll-padding-top: 80px; /* Prevents the sticky navbar from covering section titles */
    overflow-x: hidden;
}
body{
    font-family: "Manrope", sans-serif;
    overflow-x: hidden;
}

.premium-nav {
    background-color: rgba(255, 255, 255, 0.85); /* Semi-transparent white */
    backdrop-filter: blur(10px); /* Premium blurred glass effect */
    -webkit-backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    padding: 15px 0;
    z-index: 1040; /* Sits right below modals but above standard page assets */
}

/* Nav Link Typography */
.premium-nav .nav-link {
    font-size: 0.95rem;
    font-weight: 500;
    color: #444444 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    position: relative;
    transition: color 0.3s ease;
    padding: 5px 0;
}

/* Premium Hover Underline Animation Effect */
.premium-nav .nav-link::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: 0;
    left: 0;
    background-color: #c08940; /* Brand Accent Gold */
    transition: width 0.3s ease;
}

.premium-nav .nav-link:hover::after,
.premium-nav .nav-link.active::after {
    width: 100%;
}

.premium-nav .nav-link:hover,
.premium-nav .nav-link.active {
    color: #c08940 !important;
}

/* Nav Call To Action Button Styling */
.btn-nav-enquire {
    background-color: #c08940;
    color: #ffffff;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 10px 24px;
    border: none;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.btn-nav-enquire:hover {
    background-color: #44362a;
    color: #ffffff;
    transform: translateY(-1px);
}

/* Custom Minimalist Mobile Menu Icon */
.custom-toggler-icon {
    font-size: 1.5rem;
    color: #44362a;
    cursor: pointer;
}

/* Responsive Overrides for Mobile Drawers */
@media (max-width: 1199px) {
    .premium-nav {
        background-color: #ffffff; /* Solid background on mobile screens for crisp text clarity */
    }
    .navbar-collapse {
        padding-top: 20px;
    }
    .premium-nav .nav-link::after {
        display: none; /* Removes animations inside vertical layout menus */
    }
    .btn-nav-enquire {
        width: 100%;
        margin-top: 10px;
    }
}



.overview-section {
    background-color: #f3ece2; /* Warm beige luxury background */
    color: #121212;
    
}

.overview-main-heading {
    font-weight: 400;
    letter-spacing: -0.5px;
}

.heading-spacer {
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    opacity: 1;
}

.section-meta-tag {
    color: #8a8074; /* Soft editorial grey-brown */
    font-size: 0.85rem;
    letter-spacing: 1px;
    font-weight: 500;
}

.overview-body-text {
    font-size: 1.05rem;
    line-height: 1.7;
    color: #212121;
    font-weight: 400;
    text-align: justify;
}

/* Rounded Explore Button styling */
.btn-explore {
    border: 1px solid #c0a992;
    background: transparent;
    color: #333;
    font-size: 0.9rem;
    font-weight: 500;
    transition: all 0.3s ease;
}

.btn-explore:hover {
    background-color: #ffffff;
    border-color: #44362a;
    transform: translateY(-2px);
}

.gold-dot {
    color: #c08940;
    margin-right: 4px;
    font-size: 1.1rem;
}

.schedule-text {
    font-size: 1rem;
    color: #212121;
}

/* Right Sidebar Details */
.stat-value {
    font-size: 1.15rem;
    font-weight: 500;
    color: #1a1a1a;
}

.stat-divider {
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    margin: 15px 0;
    opacity: 1;
}

.overview-features-list {
    list-style: none;
    padding-left: 0;
}

.overview-features-list li {
    font-size: 1.05rem;
    position: relative;
    padding-left: 1.2rem;
    margin-bottom: 0.5rem;
    color: #212121;
}

/* Minimal hyphen or tiny bullet marker */
.overview-features-list li::before {
    content: "•";
    position: absolute;
    left: 0;
    color: #44362a;
    font-size: 0.8rem;
    top: 1px;
}

/* Responsiveness adjustments */
@media (max-width: 991px) {
    .overview-body-text {
        text-align: left;
    }
    .stat-divider {
        display: block;
    }
}

/* Brand Concept Component Layout */
/* Brand Concept Component Layout */
.brand-concept-section {
    background-color: #ffffff;
    color: #121212;
}

.brand-tagline-prefix {
    font-size: 1.1rem;
    color: #333333;
    font-weight: 400;
}

.brand-hashtag {
    color: #1d63b8; /* Royal corporate blue tone */
    font-weight: 500;
    letter-spacing: -0.5px;
}

/* Deep Navy/Charcoal Visual Card Block */
.dark-concept-card {
    background-color: #212b32; /* The dark cinematic background slate */
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 15px 40px rgba(0,0,0,0.15);
     background-image: url('images/gallery/true-blue-art.png'); /* UPDATE WITH SYSTEM IMAGE PATH */
     background-size: cover; /* Matches the graphic layout style inside your canvas banner mockup */
    background-position: center;
    background-repeat: no-repeat;
}

/* CSS Background Image Implementation */
.concept-bg-image-frame {
    width: 100%;
    height: 400px; /* Explicit height framework for the block background layout */
   
    
    border-radius: 4px;
    transition: transform 0.8s ease;
}

.concept-bg-image-frame:hover {
    transform: scale(1.03); /* Subtle dynamic feedback movement on frame interaction */
}

/* Typography treatments for luxury narrative spacing */
.concept-copy-container {
    max-width: 520px;
}

.concept-text-paragraph {
    color: #cbd5e0; /* Clean, highly legible soft gray overlay text */
    font-size: 0.95rem;
    line-height: 1.75;
    font-weight: 300;
    text-align: left;
    letter-spacing: 0.2px;
}

/* Smooth adjustments on viewport limits */
@media (max-width: 991px) {
    .concept-bg-image-frame {
        height: 300px; /* Reduces footprint on tablet viewports */
    }
    .concept-copy-container {
        max-width: 100%;
    }
    .concept-text-paragraph {
        font-size: 0.9rem;
    }
    .dark-concept-card {
        padding: 2rem 1.5rem !important;
    }
}

@media (max-width: 576px) {
    /* Blue Ridge Grid Section Formatting */
}
.blue-ridge-section {
    background-color: #f4eee6; /* The soft premium warm cream tone */
    overflow: hidden;
}

/* Left Side Background Framework */
.blue-ridge-bg-image {
    width: 100%;
    height: 100%;
    min-height: 600px; /* Provides consistent height on desktop layout scales */
    background-image: url('images/gallery/blue-ridge-view.png'); 
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* Right Side Content Panel Alignment */
.ridge-info-panel {
    background-color: #f4eee6;
}

.ridge-content-wrapper {
    max-width: 520px;
    width: 100%;
}

.ridge-logo {
    max-height: 70px;
    object-fit: contain;
}

/* Core Editorial Typography Treatments */
.sub-heading-prefix {
    color: #8c7f73; /* Muted stone-brown color tone */
    font-size: 1.1rem;
    letter-spacing: 1px;
    font-weight: 500;
}

.main-ridge-heading {
    color: #55443c; /* Distinct deep architectural brown */
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: -0.5px;
    margin-top: 5px;
}

.ridge-description-text {
    color: #665b55;
    font-size: 0.95rem;
    line-height: 1.75;
    font-weight: 400;
    text-align: justify;
}

/* Responsive Overrides */
@media (max-width: 991px) {
    .blue-ridge-bg-image {
        min-height: 350px; /* Shorter image height presentation format for mobile screens */
    }
    
    .ridge-info-panel {
        padding: 4rem 2rem !important;
    }
    
    .main-ridge-heading {
        font-size: 2.5rem;
    }
    
    .ridge-description-text {
        text-align: left;
    }

    .concept-bg-image-frame {
        height: 220px; /* Balanced ratio adaptation on compact smartphone interfaces */
    }
}

/* Amenities Luxury Slider Block Styles */
.amenities-slider-section {
    background-color: #ffffff;
    color: #121212;
    position: relative;
}

.amenities-section-title {
    font-weight: 400;
    color: #000000;
}

/* Image Frame Height Constraint Engine */
.amenity-slide-bg {
    width: 100%;
    height: 480px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

/* Editorial Content Block Properties */
.amenity-slide-title {
    font-size: 1.15rem;
    font-weight: 600;
    color: #111111;
    letter-spacing: 1.5px;
}

.amenity-slide-desc {
    font-size: 0.95rem;
    line-height: 1.7;
    color: #4a4a4a;
    font-weight: 400;
    text-align: justify;
}

/* Fine-tuned Inline Custom Features List Styling */
.keyword-list {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.keyword-list li {
    font-size: 1rem;
    font-weight: 500;
    color: #111111;
    position: relative;
    padding-left: 1.2rem;
    margin-bottom: 0.8rem;
}

/* Elegant minimalist bullet square/dash setup */
.keyword-list li::before {
    content: "•";
    position: absolute;
    left: 0;
    color: #44362a;
    font-weight: bold;
    font-size: 0.85rem;
    top: -1px;
}

/* Outer Minimalist Arrow Layout Position Mechanism */
.outer-nav-btn {
    width: 40px !important;
    height: 40px;
    position: absolute;
    top: 55%;
    transform: translateY(-50%);
    background: transparent !important;
    border: none;
    opacity: 0.5 !important;
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.outer-nav-btn:hover {
    opacity: 1 !important;
}

.carousel-control-prev.outer-nav-btn {
    left: -60px; /* Pushes the left arrow outward to desktop padding bounds */
}

.carousel-control-next.outer-nav-btn {
    right: -60px; /* Pushes the right arrow outward to desktop padding bounds */
}

.custom-arrow-icon {
    font-size: 2rem;
    color: #333333;
    font-weight: 300;
}

/* Responsive Structural Breakpoint Adaptations */
@media (max-width: 1200px) {
    /* Pull arrows closer inside on narrower layout windows to eliminate clipping */
    .carousel-control-prev.outer-nav-btn { left: -20px; }
    .carousel-control-next.outer-nav-btn { right: -20px; }
}

@media (max-width: 991px) {
    .amenity-slide-bg {
        height: 320px; /* Scaled down safe viewport representation height for tablets */
    }
    .amenity-slide-desc {
        text-align: left;
    }
    /* Hide the standalone outer absolute desktop side arrows on mobile layout scales */
    .outer-nav-btn {
        display: none !important;
    }
}
/* Update your existing arrow styles with these overrides */
.inner-nav-btn {
    width: 40px !important;
    height: 40px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.8) !important; /* Semi-transparent white backing for visibility */
    border: none;
    border-radius: 50%;
    z-index: 5;
    opacity: 0.7;
    transition: all 0.3s ease;
}

.inner-nav-btn:hover {
    opacity: 1;
    background: #ffffff !important;
}

.carousel-control-prev.inner-nav-btn {
    left: 15px; /* Positioned just inside the left edge of the image */
}

.carousel-control-next.inner-nav-btn {
    right: 15px; /* Positioned just inside the right edge of the image */
}

.custom-arrow-icon {
    font-size: 1.2rem;
    color: #111111;
    font-weight: bold;
}
/* Staggered Masonry-Style Gallery Component Formatting */
.gallery-staggered-section {
    background-color: #ffffff;
    color: #000000;
    overflow: hidden;
}

.gallery-title {
    font-weight: 400;
}

/* Individual Card Structural Constraints */
.gallery-item-wrapper {
    width: 100%;
    position: relative;
}

.gallery-bg-card {
    width: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 4px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.gallery-bg-card:hover {
    transform: scale(1.025);
}

/* Aspect-Ratio Controls matching your Figma mockup */
.left-top-block .gallery-bg-card {
    aspect-ratio: 4 / 5; /* Tall vertical format layout */
    max-width: 90%;
}

.left-bottom-block .gallery-bg-card {
    aspect-ratio: 4 / 3; /* Standard horizontal layout format */
    max-width: 75%;
}

.right-top-block .gallery-bg-card {
    aspect-ratio: 16 / 11; /* Wide large graphic frame format */
    width: 100%;
}

.right-bottom-block .gallery-bg-card {
    aspect-ratio: 4 / 3; /* Standard horizontal interior layout format */
    width: 60%; /* Pushes width tighter to preserve spacious whitespace gaps */
}

/* Layout Offset Engines (Desktop Stagger adjustments) */
@media (min-width: 768px) {
    .left-bottom-block {
        margin-top: 100px !important; /* Forces the bottom left image significantly downward */
    }
    
    .right-bottom-block {
        margin-top: -20px; /* Pulls interior visual elements upward to balance structural whitespace */
    }
}

/* Mobile Structural Adaptations */
@media (max-width: 767px) {
    .gallery-bg-card {
        aspect-ratio: 4 / 3 !important; /* Unifies proportional boxes on mobile displays */
        max-width: 100% !important;
        width: 100% !important;
    }
    
    .left-bottom-block {
        padding-left: 0 !important;
    }
}
/* Layout & Floor Plan Component Framework Rules */
/* Layout & Floor Plan Component Framework Rules */
.plans-interactive-section {
    background-color: #fcfcfc;
    color: #111111;
}

.plans-main-title {
    font-weight: 400;
    line-height: 1.15;
    letter-spacing: -0.5px;
    color: #000000;
    font-size: 2.5rem;
}

.plans-title-divider {
    border-top: 1px solid rgba(0, 0, 0, 0.15);
    opacity: 1;
}

.sub-label-box {
    max-width: 260px;
}

.plans-sub-label {
    font-size: 1.15rem;
    font-weight: 500;
    color: #000000;
}

.plans-arrow-icon {
    font-size: 1.5rem;
    color: #888888;
}

/* Bootstrap Tab Custom Layout Cleanup Engine */
.config-tabs-container {
    max-width: 160px;
}

.config-tab-item.nav-link {
    padding: 12px 0 !important;
    font-size: 1.1rem;
    font-weight: 500;
    color: #a0a0a0 !important; /* Inactive states are greyed out by default */
    border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
    border-radius: 0 !important;
    transition: all 0.3s ease;
}

/* Active Highlight Style Transformation */
.config-tab-item.nav-link.active {
    color: #000000 !important;
    border-bottom: 2px solid #000000 !important; /* Smooth solid underline selection bar toggle */
    background: transparent !important;
}

/* Floor Plan Display Presentation Container */
.floor-plan-display-card {
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.04);
}

.plan-render-img {
    width: 100%;
    max-height: 500px;
    object-fit: contain;
}

/* Slide Indicator Dot Elements */
.plan-indicators .dot {
    width: 8px;
    height: 8px;
    background-color: #e0e0e0;
    border-radius: 50%;
    display: inline-block;
}

.plan-indicators .dot.active {
    background-color: #c08940;
}

/* Responsive Fluid Adjustments */
@media (max-width: 991px) {
    .plans-main-title {
        font-size: 2rem;
    }
    .config-tabs-container.nav {
        max-width: 100%;
        flex-direction: row !important; /* Flattens to a side-by-side layout on mobile */
        gap: 20px;
        margin-bottom: 20px;
    }
    .config-tab-item.nav-link {
        flex: 1;
        text-align: center !important;
    }
    .sub-label-box {
        max-width: 100%;
    }
}

/* ==========================================
   SECTION 1: SPECIFICATIONS ACCORDION STYLES
   ========================================== */
.specs-section {
    background-color: #ffffff;
    color: #111111;
}

.specs-main-title {
    font-weight: 400;
    color: #000000;
}

/* Image Frame Height Constraint Engine */
.spec-image-frame {
    width: 100%;
    height: 520px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 4px;
}

/* Configuration Inline Layout Labels */
.spec-config-toggle .config-lbl {
    font-size: 1.05rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.spec-config-toggle .config-lbl.active {
    color: #000000;
    border-bottom: 2px solid #000000;
}

.spec-config-toggle .config-lbl.disabled {
    color: #b0b0b0;
}

/* Clean Bootstrap Accordion Resets */
.custom-specs-accordion .accordion-item {
    background-color: #fcfbf9 !important; /* Soft sand warm backdrop box */
}

.custom-specs-accordion .accordion-button {
    background-color: #fcfbf9 !important;
    color: #111111 !important;
    font-weight: 500;
    font-size: 1.05rem;
    box-shadow: none !important;
    padding: 18px 20px;
    border: none !important;
}

/* Custom indicator icon management (+ / - icons matching Figma layout) */
.custom-specs-accordion .accordion-button::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23111111'%3E%3Cpath d='M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z'/%3E%3C/svg%3E") !important;
    background-size: 1.25rem;
    transform: none !important;
}

.custom-specs-accordion .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23111111'%3E%3Cpath d='M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8z'/%3E%3C/svg%3E") !important;
}

.spec-details-list {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.spec-details-list li {
    font-size: 0.95rem;
    color: #555555;
    position: relative;
    padding-left: 1.2rem;
    margin-bottom: 0.6rem;
    line-height: 1.5;
}

.spec-details-list li::before {
    content: "•";
    position: absolute;
    left: 0;
    color: #8c7f73;
    font-weight: bold;
}


/* ==========================================
   SECTION 2: NEIGHBOURHOOD ACCORDION STYLES
   ========================================== */
.neighbourhood-section {
    background-color: #fbf9f6; /* Warm architectural light beige fill backdrop */
    color: #111111;
}

.neighbourhood-main-title {
    font-weight: 400;
    color: #72594a; /* Deep elegant bronze-tint title color */
    line-height: 1.2;
}

/* Minimalist borderless inline list triggers */
.custom-proximity-list .accordion-item {
    border: none;
    border-bottom: 1px solid rgba(114, 89, 74, 0.15) !important;
    border-radius: 0 !important;
}

.custom-proximity-list .accordion-button {
    background-color: transparent !important;
    color: #111111 !important;
    font-weight: 500;
    font-size: 1.1rem;
    box-shadow: none !important;
    padding: 15px 0;
}

/* Arrow indicator switch overrides (^ caret layouts) */
.custom-proximity-list .accordion-button::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2372594a'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E") !important;
    transform: rotate(180deg) !important; /* Default pointing upward as shown in mockup design */
    transition: transform 0.3s ease;
}

.custom-proximity-list .accordion-button.collapsed::after {
    transform: rotate(0deg) !important;
}

/* Tiny Custom Rounded Proximity CTA */
.btn-get-directions {
    border: 1px solid #72594a;
    background: transparent;
    color: #72594a;
    font-size: 0.85rem;
    font-weight: 500;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.btn-get-directions:hover {
    background-color: #72594a;
    color: #ffffff;
}

/* Dark Layout Map Box Framework Container */
.dark-vector-map-bg {
    width: 100%;
    height: 480px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 6px;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.08);
}

/* Responsive Adaptive Viewport Modifications */
@media (max-width: 991px) {
    .spec-image-frame, .dark-vector-map-bg {
        height: 340px;
    }
    .neighbourhood-main-title {
        font-size: 1.8rem;
    }
}

/* ==========================================
   ENQUIRE MODAL CUSTOM STYLES
   ========================================== */
.modal-content {
    background-color: #fdfcfb; /* Clean warm luxury paper surface tone tint */
    border-radius: 8px;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2);
}

.modal-close-override {
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 5;
    box-shadow: none !important;
}

.modal-form-title {
    font-family: 'Segoe UI', sans-serif;
    color: #44362a; /* Brand core bronze/brown configuration color */
    font-weight: 500;
    letter-spacing: 0.5px;
}

.custom-form-input {
    background-color: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 4px;
    padding: 10px 12px;
    font-size: 0.95rem;
    color: #111111;
    transition: border-color 0.3s ease;
}

.custom-form-input:focus {
    background-color: #ffffff;
    border-color: #c08940; /* Highlight gold focus indicator color frame */
    box-shadow: none;
    color: #000000;
}

.btn-modal-submit {
    background-color: #c08940;
    color: #ffffff;
    border: none;
    border-radius: 4px;
    font-size: 0.9rem;
    letter-spacing: 1px;
    transition: background-color 0.3s ease;
}

.btn-modal-submit:hover {
    background-color: #44362a;
    color: #ffffff;
}

/* ==========================================
   STICKY MOBILE FOOTER CONTAINER COMPONENT
   ========================================== */
.mobile-sticky-footer {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60px;
    background-color: #ffffff;
    z-index: 1030; /* Pinned right below standard interactive full backdrop models */
    box-shadow: 0 -4px 15px rgba(0, 0, 0, 0.1);
    border-top: 1px solid rgba(0, 0, 0, 0.05);
}

/* Individual Flexible Box Action Items Inside Footer Grid Line */
.mobile-footer-action-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    transition: background-color 0.2s ease;
}

.mobile-footer-action-item .footer-icon {
    font-size: 1.2rem;
    line-height: 1;
    margin-bottom: 2px;
}

.mobile-footer-action-item .footer-lbl {
    font-size: 0.75rem;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.5px;
}

/* Dynamic Panel Palette Accents */
.footer-enquire-trigger {
    /*background-color: #c08940; /* Matches Brand Corporate Highlights Color Layer */
   background-color: #fff; 
}

.footer-enquire-trigger:hover, .footer-enquire-trigger:active {
    background-color: #44362a;
}

/* Global Padding Safety Override: Prevents absolute webpage elements 
   from clipping behind the footer bar context at maximum scroll depth */
@media (max-width: 1199px) {
    body {
        padding-bottom: 60px !important; 
    }
}
/* ==========================================
   COMPLIANT WEBSITE FOOTER CUSTOM STYLES
   ========================================== */
/* ==========================================
   COMPLIANT WEBSITE FOOTER CUSTOM STYLES (LIGHT THEME)
   ========================================== */
.main-site-footer {
    background-color: #f7f4ef; /* Warm luxury off-white / light ivory backdrop canvas color */
    color: #4a4a4a; /* Muted deep slate grey text for soft, premium readability */
    font-family: "Baloo 2", sans-serif;
    border-top: 3px solid #c08940; /* Golden accent header line strip remaining static */
}

.footer-logo {
    /* REMOVED the invert filter tool so your original dark brand logo shows perfectly */
    max-height: 45px;
}

.footer-address-text {
    font-size: 0.9rem;
    line-height: 1.5;
    color: #555555;
}
.footer-address-text strong {
    color: #44362a; /* Deep elegant architectural brown accent */
}

/* MahaRERA Visual Text Frame Box */
.rera-compliance-badge {
    background-color: rgba(192, 137, 64, 0.05); /* Soft premium warm gold tint fill background */
    border-left: 3px solid #c08940;
    border-radius: 0 4px 4px 0;
}

.rera-label {
    font-size: 0.75rem;
    color: #72594a;
    letter-spacing: 0.5px;
    font-weight: 600;
}

.rera-number {
    font-family: 'Segoe UI', sans-serif;
    font-size: 1.3rem;
    font-weight: 600;
    color: #44362a; /* Dark solid bronze-brown value heading color asset */
    letter-spacing: 0.5px;
}

.rera-subtext {
    font-size: 0.8rem;
    color: #555555;
}
.rera-subtext a {
    color: #c08940;
    text-decoration: none;
    font-weight: 500;
}
.rera-subtext a:hover {
    text-decoration: underline;
}

/* QR Code Container Alignment Card */
.rera-qr-wrapper {
    background-color: #ffffff;
    padding: 12px !important;
    border-radius: 6px;
    border: 1px solid rgba(0, 0, 0, 0.05);
    box-shadow: 0 10px 25px rgba(68, 54, 42, 0.06); /* Highly muted structural box shadow frame */
}

.rera-qr-img {
    display: block;
}

.qr-caption {
    font-size: 0.7rem;
    color: #44362a;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.footer-horizontal-divider {
    border-top: 1px solid rgba(0, 0, 0, 0.06); /* Soft dark line divider */
    opacity: 1;
}

/* Disclaimer Component Box */
.footer-disclaimer-box {
    background-color: rgba(0, 0, 0, 0.02); /* Minimal soft gray ground layer */
    padding: 15px 20px;
    border-left: 2px solid #c08940;
    border-radius: 4px;
}

.disclaimer-title {
    font-size: 0.8rem;
    color: #44362a;
    font-weight: 600;
    letter-spacing: 0.5px;
}

.disclaimer-body-text {
    font-size: 0.75rem;
    line-height: 1.6;
    color: #666666;
    text-align: justify;
    font-weight: 300;
}

/* Legal Footer Links & Copyright Typography */
.copyright-text {
    font-size: 0.85rem;
    color: #777777;
}

.footer-legal-links a {
    font-size: 0.85rem;
    color: #555555;
    text-decoration: none;
    transition: color 0.3s ease;
    font-weight: 500;
}

.footer-legal-links a:hover {
    color: #c08940;
}

.link-separator {
    font-size: 0.85rem;
    color: #cccccc;
    user-select: none;
}

/* Responsive Safe Bottom Offset Cleanup */
@media (max-width: 1199px) {
    .main-site-footer {
        padding-bottom: 85px !important; /* Safety clearance so mobile sticky bars don't mask text views */
    }
    .disclaimer-body-text {
        text-align: left;
    }
}
.home{
    padding-top: 86px;
}