* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Master Section Layout Settings */
.page-02-listing-header-section {
    width: 100%;
    background-color: #ffffff;
    padding: 60px 16px;
    box-sizing: border-box;
    margin-top: 120px;
}

@media (min-width: 768px) {
    .page-02-listing-header-section {
        padding: 80px 32px;
    }
}

.page-02-main-header-container {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
}

/* 1. Large High Contrast Serif Heading Title */
.page-02-editorial-title {
    font-family: 'Playfair Display', Georgia, serif;
    color: #000000;
    font-weight: 400;
    line-height: 1.25;
    letter-spacing: -0.01em;
    margin: 0 0 110px 0;
    text-transform: uppercase;
    text-align: left;
    font-size: clamp(1.8rem, 4.8vw, 4.2rem); /* स्मूथ फ्लूइड रिस्पॉन्सिव स्केलिंग */
}

/* 2. Breadcrumb Navigation Bar Typography */
.page-02-breadcrumb-bar {
    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.page-02-crumb-active {
    color: #F7A707; /* आपका सिग्नेचर ब्रांड गोल्ड */
    cursor: pointer;
}

.page-02-crumb-separator {
    color: #F7A707;
    font-weight: 400;
}

.page-02-crumb-current {
    color: #F7A707;
}

/* 3. Solid Horizon Divider Rule */
.page-02-header-divider {
    width: 100%;
    height: 1.5px;
    background-color: #000000;
    margin-bottom: 60px;
}

/* 4. From Renowned Builders Area Layout Box */
.page-02-builders-showcase {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 50px;
    margin-bottom: 80px;
}

.page-02-builders-subtitle {
    font-family: 'Playfair Display', Georgia, serif;
    color: #000000;
    font-size: clamp(1.8rem, 3.5vw, 3.2rem);
    font-weight: 400;
    margin: 0;
    text-align: center;
}

/* 5-Column Brand Logo Grid Architecture for All Device Forms */
.page-02-builders-logos-grid {
    width: 100%;
    display: grid;
    /* मोबाइल डिफ़ॉल्ट: २ या ३ कॉलम */
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 40px 24px;
}

@media (min-width: 530px) {
    .page-02-builders-logos-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 860px) {
    .page-02-builders-logos-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr)); /* लैपटॉप/डेस्कटॉप पर इमेज की तरह परफेक्ट ५ कॉलम रो */
        gap: 30px;
    }
}

.page-02-builder-logo-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 16px;
}

/* पार्टनर लोगोज़ को गोल्ड टोन में रेंडर रखने के लिए */
.page-02-partner-logo {
    max-height: 80px;
    width: auto;
    object-fit: contain;
    /* अगर आपकी इमेजेस ब्लैक हैं, तो आप इसे इनेबल कर सकते हैं या ओरिजिनल गोल्ड पीएनजी अपलोड करें */
    /* filter: sepia(40%) saturate(120%) hue-rotate(5deg) commitment; */
}

.page-02-partner-title {
    font-family: 'Playfair Display', serif;
    color: #F7A707; /* इमेज के अनुसार लोगो के नीचे का गोल्ड फॉन्ट */
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
/* --- Showcase Container --- */
.page-02-builders-showcase {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 50px;
    margin-bottom: 80px;
    overflow: hidden; /* Screen overflow stop karne ke liye */
}

.page-02-builders-subtitle {
    font-family: 'Playfair Display', Georgia, serif;
    color: #000000;
    font-size: clamp(1.8rem, 3.5vw, 3.2rem);
    font-weight: 400;
    margin: 0;
    text-align: center;
}

/* --- Infinite Slider Setup --- */
.page-02-builders-slider-container {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 10px 0;
}

/* Side Gradients for Smooth Fade Effect */
.page-02-builders-slider-container::before,
.page-02-builders-slider-container::after {
    content: "";
    position: absolute;
    top: 0;
    width: 100px;
    height: 100%;
    z-index: 2;
    pointer-events: none;
}

.page-02-builders-slider-container::before {
    left: 0;
    background: linear-gradient(to right, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
}

.page-02-builders-slider-container::after {
    right: 0;
    background: linear-gradient(to left, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
}

/* Continuous Moving Track */
.page-02-builders-slider-track {
    display: flex;
    align-items: center;
    gap: 60px; /* Logos ke beech ka gap */
    width: max-content;
    
    /* Smooth & Lazy Infinite Loop Movement */
    animation: lazyInfiniteSlide 25s linear infinite;
}

/* Hover par Animation Pause ho jayegi taaki click karna aasan rahe */
.page-02-builders-slider-container:hover .page-02-builders-slider-track {
    animation-play-state: paused;
}

/* Individual Link Item */
.page-02-builder-logo-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 14px;
    text-decoration: none;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.page-02-builder-logo-item:hover {
    transform: translateY(-4px);
}

/* Black SVG Image ko Gold Color (#F7A707) me convert karne ke liye Filter */
.page-02-partner-logo {
    max-height: 80px;
    width: auto;
    object-fit: contain;
    
    /* Pure Black SVG -> Exact Gold Tone (#F7A707) Converter Filter */
    filter: invert(72%) sepia(85%) saturate(1495%) hue-rotate(355deg) brightness(101%) contrast(97%);
    transition: opacity 0.3s ease;
}

/* Title text with exact same Gold Color */
.page-02-partner-title {
    font-family: 'Playfair Display', serif;
    color: #F7A707; /* Logo aur Font dono ab same Gold color ke hain */
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

/* --- Infinite Animation Keyframes --- */
@keyframes lazyInfiniteSlide {
    0% {
        transform: translateX(0);
    }
    100% {
        /* Pura Track aadhe tak move hota hai seamlessly loop banane ke liye */
        transform: translateX(calc(-50% - 30px));
    }
}

.page-02-builders-showcase {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 50px;
    margin-bottom: 80px;
    overflow: hidden;
}

.page-02-builders-subtitle {
    font-family: 'Playfair Display', Georgia, serif;
    color: #000000;
    font-size: clamp(1.8rem, 3.5vw, 3.2rem);
    font-weight: 400;
    margin: 0;
    text-align: center;
}

.page-02-builders-slider-container {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 10px 0;
}

/* Side Fading Effects */
.page-02-builders-slider-container::before,
.page-02-builders-slider-container::after {
    content: "";
    position: absolute;
    top: 0;
    width: 80px;
    height: 100%;
    z-index: 2;
    pointer-events: none;
}

.page-02-builders-slider-container::before {
    left: 0;
    background: linear-gradient(to right, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
}

.page-02-builders-slider-container::after {
    right: 0;
    background: linear-gradient(to left, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
}

/* Track Setup */
.page-02-builders-slider-track {
    display: flex;
    align-items: center;
    gap: 60px;
    width: max-content;
    
    /* Smooth Continuous Infinite Loop */
    animation: seamlessLazyLoop 35s linear infinite;
}

.page-02-builders-slider-container:hover .page-02-builders-slider-track {
    animation-play-state: paused;
}

.page-02-builder-logo-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 14px;
    text-decoration: none;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.page-02-builder-logo-item:hover {
    transform: translateY(-4px);
}

/* Black SVG -> Pure Gold Filter (#F7A707) */
.page-02-partner-logo {
    max-height: 80px;
    width: auto;
    object-fit: contain;
   filter: invert(15%) sepia(34%) saturate(1630%) hue-rotate(128deg) brightness(95%) contrast(98%);
}

.page-02-partner-title {
    font-family: 'Playfair Display', serif;
    color: #063430;
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

/* Exact 50% shift ensures exact seamless reset with 0 blank space */
@keyframes seamlessLazyLoop {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}
/* 5. Bottom Action Bar: Clean Minimal Surf Search Field */
.page-02-search-input-wrapper {
    width: 100%;
    max-width: 750px;
    margin: 0 auto;
}

.page-02-search-form {
    width: 100%;
    position: relative;
    border-bottom: 2px solid #063430; /* सर्च बार के नीचे की थिक ब्लैक लाइन */
    padding-bottom: 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.page-02-keyword-input {
    width: 100%;
    border: none;
    background: transparent;
    outline: none;
     font-family: "Poppins", sans-serif;
    color: #063430;
    font-size: 16px;
    font-weight: 500;
    padding: 4px 40px 4px 4px;
    box-sizing: border-box;
}

.page-02-keyword-input::placeholder {
    color: #063430;
    opacity: 1; /* कुछ ब्राउज़र्स में डिफ़ॉल्ट ओपेसिटी हटाने के लिए */
}

.page-02-search-submit-btn {
    position: absolute;
    right: 4px;
    background: none;
    border: none;
    outline: none;
    width: 16px;
    height: 16px;
    color: #063430;
    cursor: pointer;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.2s ease;
}

.page-02-search-submit-btn svg {
    width: 100%;
    height: 100%;
}

.page-02-search-submit-btn:hover {
    transform: scale(1.15);
}


/* Master Section Layout Settings */
.page-02-listing-grid-section {
    width: 100%;
    background-color: #ffffff;
    padding: 0 16px 80px 16px;
    box-sizing: border-box;
}

@media (min-width: 768px) {
    .page-02-listing-grid-section {
        padding: 0 32px 100px 32px;
    }
}

.page-02-grid-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 50px;
}

/* --- Top Filter Bar Components Styling Context --- */
.page-02-filter-action-bar {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 30px;
    align-items: flex-start;
}

@media (min-width: 768px) {
    .page-02-filter-action-bar {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }
}

/* Left Recommended Badge Button Layer styling */
.page-02-recommended-badge-frame {
    border: 1px solid #063430;
    padding: 4px;
    display: inline-block;
}

.page-02-rec-badge-btn {
    background-color: #063430;
    color: #ffffff;
    border: none;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 600;
    padding: 14px 36px;
    cursor: default;
    letter-spacing: 0.3px;
}

/* Right Side Minimalist Custom Filters Group Input Box Setup */
.page-02-filters-selectors-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 35px;
    width: 100%;
}

@media (min-width: 768px) {
    .page-02-filters-selectors-group {
        width: auto;
        justify-content: flex-end;
    }
}

/* Filter Item Container Element Row */
.page-02-filter-dropdown-box {
    position: relative;
    border-bottom: 1.5px solid #063430; /* इमेज के अनुसार थिन अंडरलाइन */
    padding-bottom: 4px;
    min-width: 140px;
    box-sizing: border-box;
}

.page-02-limit-box {
    min-width: 60px; /* संख्या वाले फ़िल्टर का साइज छोटा रहेगा */
}

/* Date Selector Interactive Setup Overlay Logic */
.page-02-filter-inline-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    cursor: pointer;
}

.page-02-filter-label-text,
.page-02-select-trigger {
     font-family: "Poppins", sans-serif;
    color: #063430;
    font-size: 13.5px;
    font-weight: 500;
    white-space: nowrap;
}

.page-02-filter-icon-indicator,
.page-02-filter-arrow {
    width: 14px;
    height: 14px;
    color: #063430;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 10px;
}

.page-02-filter-icon-indicator svg,
.page-02-filter-arrow svg {
    width: 100%;
    height: 100%;
}

/* नेटिव इनपुट बॉक्स को इनविजिबल करके ऊपर स्टैक करने का लॉजिक */
.page-02-custom-date-input {
    position: absolute;
    inset: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    z-index: 10;
}

/* Price & Limit Dropdowns Select Panels UI Layout Rules */
.page-02-custom-select-wrapper {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    user-select: none;
}

.page-02-custom-options-panel {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    background-color: #ffffff;
    border: 1px solid #E0E0E0;
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
    z-index: 50;
    display: none; /* डिफ़ॉल्ट बंद */
    flex-direction: column;
}

.page-02-custom-options-panel.page-02-show {
    display: flex;
}

.page-02-option {
    padding: 10px 14px;
     font-family: "Poppins", sans-serif;
    font-size: 13px;
    color: #063430;
    transition: background-color 0.2s ease;
}

.page-02-option:hover {
    background-color: #F5F5F5;
}

/* --- 3-Column Symmetrical Grid Matrix Architecture --- */
.page-02-properties-layout-grid {
    display: grid;
    /* रिस्पॉन्सिव ग्रिड डिस्ट्रीब्यूशन नियमों का पालन */
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 50px 30px;
    width: 100%;
}

@media (min-width: 600px) {
    .page-02-properties-layout-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)); /* टैबलेट पर २ कॉलम */
    }
}

@media (min-width: 960px) {
    .page-02-properties-layout-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)); /* लैपटॉप/डेस्कटॉप स्क्रीन्स पर परफेक्ट ३ कॉलम रो */
    }
}

/* Individual Showcase Property Cards Styles */
.page-02-item-showcase-card {
    background-color: #ffffff;
    display: flex;
    flex-direction: column;
    width: 100%;
    box-sizing: border-box;
    transition: transform 0.3s ease;
}

/* डिफ़ॉल्ट कार्ड की नीचे की थिन लाइन डिज़ाइन इफ़ेक्ट */
.page-02-item-details-block {
    padding-bottom: 12px;
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.page-02-item-media-frame {
    width: 100%;
    aspect-ratio: 1.25 / 1; /* स्क्रीनशॉट के अनुसार इमेज का चौकोर से थोड़ा वाइड लेआउट */
    overflow: hidden;
    background-color: #f7f7f7;
}

.page-02-item-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Typography styles for labels */
.page-02-item-title {
     font-family: 'Playfair Display', Georgia, serif;
    color: #000000;
    font-size: 15px;
    font-weight: 700;
    margin: 0;
}

.page-02-item-footer-line {
    display: flex;
    justify-content: space-between;
    align-items: center;
     font-family: 'Playfair Display', Georgia, serif;
    color: #444444;
    font-size: 13.5px;
    font-weight: 500;
}

.page-02-item-price {
    font-weight: 600;
    color: #000000;
}

/* --- High Contrast Gold Highlighted Variation Variant Style --- */
.page-02-highlighted-gold-border {
    border: 2px solid #F7A707; /* आपका स्पेसिफिक ब्रांड गोल्ड आउटर फ़्रेम बॉर्डर */
    padding: 16px;
}

/* हाईलाइटेड कार्ड के अंदर की डिफ़ॉल्ट बॉटम बॉर्डर लाइन को हटाना */
.page-02-highlighted-gold-border .page-02-item-details-block {
    border-bottom: none;
    padding-bottom: 0;
    margin-top: 14px;
}

/* --- Dynamic Border Hover State Configuration --- */

/* 1. कार्ड के आउटर कंटेनर पर डिफ़ॉल्ट रूप से एक ट्रांसपेरेंट बॉर्डर सेटअप करें (ताकि होवर पर लेआउट हिले नहीं) */
.page-02-item-showcase-card {
    border: 2px solid transparent;
    padding: 16px; /* बॉर्डर के अंदर स्पेस देने के लिए */
    margin: -16px; /* ग्रिड अलाइनमेंट को बैलेंस रखने के लिए */
    box-sizing: border-box;
    transition: border-color 0.3s ease, transform 0.3s ease;
}

/* 2. होवर होने पर बॉर्डर का कलर बदलकर प्रीमियम गोल्ड करें */
.page-02-item-showcase-card:hover {
    border-color: #F7A707; /* आपका स्पेसिफिक ब्रांड गोल्ड कलर */
    transform: translateY(-2px); /* हल्का सा स्मूथ लिफ्ट इफ़ेक्ट */
}

/* 3. होवर होने पर डिफ़ॉल्ट नीचे वाली ग्रे लाइन को छुपाएं (जैसा स्क्रीनशॉट वाले सिलेक्टेड कार्ड में है) */
.page-02-item-showcase-card:hover .page-02-item-details-block {
    border-bottom-color: transparent !important;
    padding-bottom: 0;
}

/* --- Smooth Transitions Setup (यदि पहले से नहीं जोड़ा है) --- */
.page-02-item-details-block {
    transition: border-color 0.6s ease, padding 0.6s ease;
}


/* Master Layout Base Setup */
.page-02-ad-banner-section {
    width: 100%;
    background-color: #ffffff;
    padding: 60px 24px 120px 24px; /* बॉटम पैडिंग एक्स्ट्रा है ताकि ओवरलैपिंग बॉक्स नीचे वाले सेक्शन को न दबाए */
    box-sizing: border-box;
}

.page-02-banner-main-container {
    width: 100%;
    max-width: 1100px; /* प्रीमियम कॉम्पैक्ट ग्रिड अलाइनमेंट */
    margin: 0 auto;
    margin-left: 100px;
    position: relative;
}

/* --- Banner Ad Area Wireframe Box Structure --- */
.page-02-banner-space-viewport {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1.05; /* इमेज के अनुसार वर्टिकल रेक्टेंगल आस्पेक्ट रेशियो */
    background-color: #EAEAEA; /* लाइट ग्रे बैकग्राउंड */
    border: 1px solid #000000; /* थिन ब्लैक आउटर बॉर्डर */
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* स्क्रीनशॉट की तरह डायगोनल क्रॉस लाइन्स बनाने का लॉजिक */
.page-02-wireframe-cross-line {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.page-02-wireframe-cross-line.line-diagonal-1 {
    background: linear-gradient(to top right, transparent calc(50% - 0.5px), #000000 50%, transparent calc(50% + 0.5px));
}

.page-02-wireframe-cross-line.line-diagonal-2 {
    background: linear-gradient(to bottom right, transparent calc(50% - 0.5px), #000000 50%, transparent calc(50% + 0.5px));
}

/* Placeholder Text Centered Elements */
.page-02-banner-placeholder-text {
    position: relative;
    z-index: 5;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    background-color: #EAEAEA; /* लाइन्स के ऊपर टेक्स्ट को साफ दिखाने के लिए थोड़ा पैडिंग बैकग्राउंड */
    padding: 10px 20px;
    text-align: center;
}

.page-02-ad-label {
     font-family: 'Playfair Display', Georgia, serif;
    color: #000000;
    font-size: clamp(16px, 2.5vw, 24px);
    font-weight: 600;
    letter-spacing: 0.05em;
}

.page-02-ad-dimensions {
     font-family: 'Playfair Display', Georgia, serif;
    color: #000000;
    font-size: clamp(14px, 2vw, 20px);
    font-weight: 500;
}

/* --- Absolute Overlapping Solid Black Action Badge --- */
.page-02-banner-action-badge {
    background-color: #000000;
    box-sizing: border-box;
    padding: 35px 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 350px;
    height: 350px; 
    position: absolute;
    right: -250px;
    bottom: -250px;
    z-index: 20;
    box-shadow: 0 15px 35px rgba(0,0,0,0.15);
}

/* Badge Premium Typography Context */
.page-02-badge-gold-title {
     font-family: 'Playfair Display', Georgia, serif;
    color: #F7A707; /* आपका स्पेसिफिक ब्रांड गोल्ड कलर शेड */
    font-size: 2.6rem;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0.03em;
    margin: 0;
}

.page-02-badge-footer-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.page-02-badge-white-text {
     font-family: 'Playfair Display', Georgia, serif;
    color: #ffffff;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.05em;
    margin: 0;
}

.page-02-badge-action-link {
     font-family: 'Playfair Display', Georgia, serif;
    color: #ffffff;
    font-size: 18px;
    font-weight: 500;
    text-decoration: none;
    align-self: flex-start;
    transition: color 0.2s ease;
}

.page-02-badge-action-link:hover {
    color: #C4A77D;
}

/* --- Media Queries Handle All Form Factor Devices Fluidly --- */

@media (max-width: 1024px) {
    /* लैपटॉप और टैबलेट स्क्रीन पर ओवरलैप बाहर न भागे इसलिए राइट मार्जिन एडजस्टमेंट */
    .page-02-banner-action-badge {
        right: 0;
    }
}

@media (max-width: 640px) {
    .page-02-banner-space-viewport {
        aspect-ratio: 1 / 1; /* मोबाइल पर परफेक्ट स्क्वायर कस्टमाइज़ेशन */
    }
    
    .page-02-ad-banner-section {
        padding: 40px 16px 60px 16px; /* पैडिंग रीसेट */
    }



    /* मोबाइल स्क्रीन्स पर लेआउट टूटे नहीं, इसलिए इसे नीचे स्टैक्ड रिस्पॉन्सिव कर दिया गया है */
    .page-02-banner-action-badge {
        position: relative;
        right: 0;
        bottom: 0;
        margin: 24px auto 0 auto;
        width: 100%;
        height: auto;
        padding: 30px 24px;
        gap: 24px;
        text-align: center;
        align-items: center;
    }
    
    .page-02-badge-footer-group {
        align-items: center;
    }
    
    .page-02-badge-action-link {
        align-self: center;
    }

    .page-02-banner-main-container {
    width: 100%;
    max-width: 1100px; /* प्रीमियम कॉम्पैक्ट ग्रिड अलाइनमेंट */
    margin: 0 auto;
    position: relative;
}
}

/* Master Layout Setup Context */
.page-02-property-gallery-section {
    width: 100%;
    background-color: #ffffff;
    padding: 40px 16px 80px 16px;
    box-sizing: border-box;
    margin-top: 100px;
}

@media (min-width: 768px) {
    .page-02-property-gallery-section {
        padding: 150px 32px 100px 32px;
    }
}

.page-02-gallery-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 60px; /* ग्रिड और पेजिनेशन के बीच की दूरी */
}

/* --- 3-Column Symmetrical Architecture Layout Grid --- */
.page-02-gallery-layout-grid {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 60px 30px;
    width: 100%;
}

@media (min-width: 600px) {
    .page-02-gallery-layout-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)); /* टैबलेट पर २ कॉलम */
    }
}

@media (min-width: 960px) {
    .page-02-gallery-layout-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)); /* लैपटॉप/डेस्कटॉप स्क्रीन पर परफेक्ट ३ कॉलम रो */
    }
}

/* Individual Card Structural Construction Components */
.page-02-gallery-item-card {
    background-color: #ffffff;
    display: flex;
    flex-direction: column;
    width: 100%;
    box-sizing: border-box;
    border: 2px solid transparent;
    padding: 16px;
    margin: -16px;
    transition: border-color 0.3s ease, transform 0.3s ease;
}

/* जैसा हमने पिछले में जोड़ा था - होवर पर गोल्ड बॉर्डर */
.page-02-gallery-item-card:hover {
    border-color: #F7A707;
    transform: translateY(-2px);
}

.page-02-gallery-media-frame {
    width: 100%;
    aspect-ratio: 1.25 / 1; /* स्क्रीनशॉट का सटीक आस्पेक्ट रेशियो अनुपात */
    overflow: hidden;
    background-color: #f7f7f7;
}

.page-02-gallery-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Info Details Frame Block Layout Rules */
.page-02-gallery-details {
    padding-bottom: 12px;
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    transition: border-color 0.6s ease;
}

.page-02-gallery-item-card:hover .page-02-gallery-details {
    border-bottom-color: transparent !important;
    padding-bottom: 0;
}

.page-02-gallery-title {
    font-family: "Poppins", sans-serif;
    color: #063430;
    font-size: 15px;
    font-weight: 700;
    margin: 0;
}

.page-02-gallery-footer-line {
    display: flex;
    justify-content: space-between;
    align-items: center;
     font-family: "Poppins", sans-serif;
    color: #444444;
    font-size: 13.5px;
    font-weight: 500;
}

.page-02-gallery-price {
    font-weight: 600;
    color: #063430;
}

/* --- Bottom-Right Aligned Minimal Pagination Unit --- */
.page-02-gallery-pagination-wrapper {
    width: 100%;
    display: flex;
    justify-content: center; /* मोबाइल पर सेंटर अलाइन रहेगा */
}

@media (min-width: 600px) {
    .page-02-gallery-pagination-wrapper {
        justify-content: flex-end; /* टैबलेट और डेस्कटॉप पर स्क्रीनशॉट की तरह परफेक्ट दाईं ओर अलाइन */
    }
}

.page-02-pagination-controls {
    display: flex;
    align-items: center;
    gap: 8px; /* सभी सर्कल्स और एरोज के बीच का स्पेस */
}

/* Links Controls Basic Layout Spec */
.page-02-pag-arrow,
.page-02-pag-num {
     font-family: "Poppins", sans-serif;
    color: #063430;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    transition: all 0.25s ease;
}

/* Arrow labels style specs */
.page-02-pag-arrow {
    padding: 0 6px;
    font-size: 12px;
}

.page-02-pag-arrow:hover {
    color: #F7A707;
}

/* Circle numbers rules layout config */
.page-02-pag-num {
    width: 22px;
    height: 22px;
    border: 1px solid #063430;
    border-radius: 50%; /* परफेक्ट गोल सर्कल आकार */
}

.page-02-pag-num:hover {
    background-color: #000000;
    color: #ffffff;
}

/* Active Page State Block Override (सॉलिड ब्लैक फील सर्कल जैसा नंबर 3 पर है) */
.page-02-pag-active {
    background-color: #000000;
    color: #ffffff;
    cursor: default;
}
/* (बाकी पुराना CSS वैसे ही रहेगा, बस नीचे ये 3 लाइन्स अपडेट कर लें) */

.page-02-pag-arrow,
.page-02-pag-num {
    background: none;
    border: 1px solid #000000;
    cursor: pointer;
    outline: none;
}

.page-02-pag-arrow {
    border: none; /* एरोज पर सर्कल नहीं चाहिए */
}

/* एक्टिव स्टेट का बैकग्राउंड ब्लैक रहेगा */
.page-02-pag-num.page-02-pag-active {
    background-color: #000000 !important;
    color: #ffffff !important;
}


/* Master Grid Layout Context */
.page-01-enquiry-grid-section {
    width: 100%;
    background-color: #ffffff;
    padding: 150px 24px;
    box-sizing: border-box;
}

.page-01-enquiry-container {
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
    display: grid;
    /* डिफ़ॉल्ट रूप से मोबाइल पर १ कॉलम लेआउट रहेगा */
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 20px;
}

/* Screen Size Adaptations (Responsive Grid Columns split) */
@media (min-width: 640px) {
    .page-01-enquiry-container {
        grid-template-columns: repeat(2, minmax(0, 1fr)); /* टैबलेट पर २x२ का ग्रिड */
        gap: 24px;
    }
}

@media (min-width: 1024px) {
    .page-01-enquiry-container {
        grid-template-columns: repeat(4, minmax(0, 1fr)); /* डेस्कटॉप/लैपटॉप पर परफेक्ट ४ कॉलम रो */
        gap: 20px;
    }
}

/* Individual Grid Card Structure */
.page-01-enquiry-card {
    width: 100%;
    aspect-ratio: 1.15 / 1; /* स्क्रीनशॉट के रेक्टेंगल आस्पेक्ट रेशियो को मेंटेन करता है */
    display: flex;
    align-items: center;
    box-sizing: border-box;
    padding: 30px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.page-01-enquiry-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
}

.page-01-enquiry-content {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 28px; /* टेक्स्ट और लिंक बटन के बीच का स्पेस */
}

/* Typography Editorial Elements */
.page-01-enquiry-text {
    font-family: "Poppins", sans-serif;
    font-size: clamp(14px, 1.3vw, 16px);
    line-height: 1.55;
    margin: 0;
}

.page-01-enquiry-link {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 15px;
    text-decoration: none;
    align-self: flex-start;
    display: inline-block;
    position: relative;
}



/* --- Color Assignments Matching Reference Screenshot --- */

/* Off-White / Soft Gray Variant style definitions */
.page-01-bg-soft-gray {
    background-color: #F4F4F4; /* सॉफ़्ट न्यूट्रल ग्रे */
}

.text-dark {
    color: #000000;
}

/* Highlighted Signature Gold Variant style definitions */
.page-01-bg-brand-gold {
    background-color: #F7A707; /* आपका स्पेसिफिक प्रीमियम गोल्ड शेड */
}

.text-light {
    color: #ffffff;
}

.font-medium {
    font-weight: 500;
}

/* --- Dynamic Hover State Rules --- */

/* 1. जब ग्रे कार्ड पर होवर हो, तो उसका बैकग्राउंड गोल्ड करें */
.page-01-enquiry-card.page-01-bg-soft-gray:hover {
    background-color: #F7A707; /* आपका ब्रांड गोल्ड कलर */
}

/* 2. होवर होने पर ग्रे कार्ड के अंदर के टेक्स्ट को व्हाइट करें */
.page-01-enquiry-card.page-01-bg-soft-gray:hover .page-01-enquiry-text.text-dark {
    color: #ffffff !important;
}

/* 3. होवर होने पर ग्रे कार्ड के अंदर के 'Click Here' लिंक को व्हाइट करें */
.page-01-enquiry-card.page-01-bg-soft-gray:hover .page-01-enquiry-link.text-dark {
    color: #ffffff !important;
}


/* --- Smooth Transitions Setup (यदि पहले से नहीं जोड़ा है) --- */
.page-01-enquiry-card {
    /* बैकग्राउंड चेंज को स्मूथ बनाने के लिए */
    transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.35s ease;
}

.page-01-enquiry-text, 
.page-01-enquiry-link {
    /* टेक्स्ट का कलर बदलने वाले इफ़ेक्ट को स्मूथ बनाने के लिए */
    transition: color 0.3s ease;
}





.page-02-partner-title {
    color: #063430;
}



/* --- BANNER AD SECTION CONTAINER --- */
.agent-page-banner-ad-section {
    width: 100%;
    background-color: #ffffff;
    padding: 60px 40px 100px 40px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    font-family: 'Poppins', sans-serif;
}

.agent-page-banner-ad-container {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
}

/* --- MAIN BANNER AD PLACEHOLDER BOX --- */
.agent-page-banner-ad-box {
    width: 100%;
    aspect-ratio: 16 / 9; /* Standard banner aspect ratio */
    max-height: 820px;
    border: 1px solid #737373;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ffffff;
    box-sizing: border-box;
}

/* Background Cross Lines (Placeholder SVG) */
.agent-page-banner-svg-cross {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

/* Center Text Inside Banner */
.agent-page-banner-text-content {
    position: relative;
    z-index: 2;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    pointer-events: none;
}

.agent-page-banner-title {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(1.8rem, 4vw, 3.2rem);
    font-weight: 400;
    color: #a3a3a3;
    letter-spacing: 1px;
    line-height: 1.1;
    text-transform: uppercase;
}

.agent-page-banner-dimensions {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(1.6rem, 3.5vw, 2.8rem);
    font-weight: 400;
    color: #a3a3a3;
    letter-spacing: 0.5px;
    line-height: 1.1;
}

/* --- FLOATING BLACK BADGE CARD (Bottom-Right Offset) --- */
.agent-page-banner-badge-card-link {
    text-decoration: none !important;
    position: absolute;
    bottom: -60px;
    right: -40px;
    z-index: 10;
}

.agent-page-banner-badge-card {
    width: 250px;
    height: 250px;
    background-color: #0b0b0b;
    padding: 30px 25px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.agent-page-banner-badge-card-link:hover .agent-page-banner-badge-card {
    transform: translateY(-4px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.25);
}

.agent-page-badge-main-text {
    font-family: 'Times New Roman', Georgia, serif;
    font-size: 1.65rem;
    font-weight: 400;
    color: #c8a355; /* Gold Brand Tone */
    line-height: 1.25;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin: 0;
}

.agent-page-badge-sub-text {
    font-family: 'Poppins', sans-serif;
    font-size: 0.72rem;
    font-weight: 500;
    color: #ffffff;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    display: block;
    margin-top: auto;
    margin-bottom: 2px;
}

.agent-page-badge-action-text {
    font-family: 'Times New Roman', Georgia, serif;
    font-size: 0.95rem;
    font-weight: 400;
    color: #ffffff;
    display: block;
}

/* --- RESPONSIVE MEDIA QUERIES --- */
@media (max-width: 900px) {
    .agent-page-banner-badge-card-link {
        bottom: -40px;
        right: -20px;
    }
    .agent-page-banner-badge-card {
        width: 200px;
        height: 200px;
        padding: 20px;
    }
    .agent-page-badge-main-text {
        font-size: 1.3rem;
    }
}

@media (max-width: 600px) {
    .agent-page-banner-ad-section {
        padding: 40px 20px 80px 20px;
    }

    .agent-page-banner-ad-box {
        aspect-ratio: 4 / 3;
    }

    /* Mobile screen par offset overlap adjust */
    .agent-page-banner-badge-card-link {
        position: relative;
        bottom: 0;
        right: 0;
        margin-top: -30px;
        display: flex;
        justify-content: flex-end;
        width: 100%;
    }

    .agent-page-banner-badge-card {
        width: 170px;
        height: 170px;
        padding: 16px;
    }

    .agent-page-badge-main-text {
        font-size: 1.1rem;
    }

    .agent-page-badge-sub-text {
        font-size: 0.62rem;
    }

    .agent-page-badge-action-text {
        font-size: 0.85rem;
    }
}
/* --- MAIN BANNER AD PLACEHOLDER BOX (STRICT SQUARE) --- */
.agent-page-banner-ad-box {
    width:700px;           /* Fixed Width */
    height: 700px;          /* Fixed Height for exact Square */
    max-width: 100%;        /* Screen se bahar na jaye */
    margin: 0 auto;         /* Center Align */
    border: 1px solid #737373;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ffffff;
    box-sizing: border-box;
}

/* --- FLOATING BLACK BADGE CARD --- */
.agent-page-banner-badge-card-link {
    text-decoration: none !important;
    position: absolute;
    bottom: -35px;
    right: -35px;
    z-index: 10;
}

.agent-page-banner-badge-card {
    width: 180px;
    height: 180px;
    background-color: #0b0b0b;
    padding: 20px 16px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.agent-page-banner-badge-card-link:hover .agent-page-banner-badge-card {
    transform: translateY(-4px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.25);
}

/* --- RESPONSIVE ADJUSTMENTS --- */
@media (max-width: 600px) {
    .agent-page-banner-ad-box {
        width: 300px;       /* Mobile Par Perfect Small Square */
        height: 300px;
    }

    .agent-page-banner-badge-card-link {
        bottom: -20px;
        right: -10px;
    }

    .agent-page-banner-badge-card {
        width: 140px;
        height: 140px;
        padding: 12px;
    }

    .agent-page-badge-main-text {
        font-size: 1.1rem;
    }

    .agent-page-badge-sub-text {
        font-size: 0.6rem;
    }

    .agent-page-badge-action-text {
        font-size: 0.75rem;
    }
}

/* Individual Grid Card Structure */
.page-01-enquiry-card {
    width: 100%;
    aspect-ratio: 1 / 1; /* Pure Square Aspect Ratio (Width and Height Same) */
    display: flex;
    align-items: center;
    box-sizing: border-box;
    padding: 24px; /* Padding thoda adjust kiya taaki content fit rahe */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.page-01-enquiry-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
}

.page-01-enquiry-content {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px; /* Square shape ke mutabiq spacing adjust ki hai */
}

/* Typography Editorial Elements */
.page-01-enquiry-text {
    font-family: "Poppins", sans-serif;
    font-size: clamp(14px, 1.2vw, 16px);
    line-height: 1.5;
    margin: 0;
}

.page-01-enquiry-link {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 15px;
    text-decoration: none;
    align-self: flex-start;
    display: inline-block;
    position: relative;
}


/* Container & Section Setup */
.banner-ad-section {
    width: 100%;
    max-width: 700px; /* Layout Limit */
    margin: 40px auto;
    padding: 0 15px;
    box-sizing: border-box;
}

.banner-ad-wrapper {
    position: relative;
    width: 100%;
}

/* 1:1 Aspect Ratio Box (700px x 700px relative) */
.banner-slider-container {
    width: 100%;
    aspect-ratio: 1 / 1;
    position: relative;
    overflow: hidden;
    background-color: #e5e5e5;
    border: 1px solid #ccc;
    box-sizing: border-box;
}

/* Slide Transition Setup */
.banner-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 1s cubic-bezier(0.25, 1, 0.5, 1);
    z-index: 1;
}

.banner-slide.active {
    opacity: 1;
    z-index: 2;
}

.banner-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Size Spec Badge */
.banner-size-badge {
    position: absolute;
    top: -40px;
    right: 15px;
    background-color: rgba(6, 52, 48, 0.85); /* Premium Dark Teal Accent */
    color: #ffffff;
    font-family: "Poppins", sans-serif;
    font-size: 12px;
    letter-spacing: 0.5px;
    padding: 6px 14px;
    border-radius: 0;
    z-index: 10;
    backdrop-filter: blur(4px);
}

/* Bottom Right Deals Card Badge */
.deals-badge-card {
    position: absolute;
    bottom: -150px;
    right: -150px;
    width: 220px;
    aspect-ratio: 1 / 1;
    background-color: #063430;
    color: #ffffff;
    text-decoration: none;
    padding: 24px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 15;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    transition: transform 0.3s ease, background-color 0.3s ease;
}

.deals-badge-card:hover {
    transform: translateY(-4px);
    background-color: #08211f; /* Smooth Dark Teal Hover */
}

/* Deals Typography */
.deals-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.deals-title {
    font-family: 'Playfair Display', Georgia, serif;
    color: #F7A707; /* Gold Tone */
    font-size: 20px;
    font-weight: 600;
    line-height: 1.25;
    margin: 0;
    letter-spacing: 1px;
}

.deals-subtitle {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 10px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: #cccccc;
    margin: 6px 0 0 0;
}

.deals-link {
    font-family: 'Playfair Display', serif;
    font-size: 13px;
    color: #ffffff;
    text-decoration: underline;
    text-underline-offset: 3px;
    margin-top: 4px;
}

/* Responsive adjustments for Mobile Screen */
@media (max-width: 600px) {
    .deals-badge-card {
        position: relative;
        bottom: 0;
        right: 0;
        width: 100%;
        aspect-ratio: auto;
        margin-top: 15px;
    }
    
    .banner-ad-section {
        padding: 0 10px;
    }
}