/* ==========================================================================
   AGENT 24 INDIA - COMPREHENSIVE MASTER MOBILE RESPONSIVE ENGINE
   Fully optimizes the entire website for mobile, tablet, and all screen sizes
   Breakpoints: 1200px, 991px, 768px, 576px, 420px, 360px
   ========================================================================== */

/* 1. Global Viewport & Container Normalization */
html, body {
    overflow-x: hidden !important;
    width: 100% !important;
    max-width: 100vw !important;
    position: relative;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
}

*, *::before, *::after {
    box-sizing: border-box !important;
}

img, svg, video, canvas, audio, iframe, embed, object {
    max-width: 100% !important;
    height: auto;
}

.section-container,
.container,
.container-fluid,
.page-container,
.vl-layout-wrap,
.vd-container,
.contact-container,
.profile-page-container,
.login-main-container,
.reg-hero-banner-container,
.reg-split-wrapper,
.terms-hero-banner-container,
.price-hero-container {
    width: 100% !important;
    box-sizing: border-box !important;
    max-width: 1280px;
}

/* Ensure all flex and grid items don't overflow */
.row, .grid, [class*="grid-"], [class*="-grid"] {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* 2. Responsive Breakpoint: <= 1200px (Laptops & Desktops) */
@media (max-width: 1200px) {
    .header-container {
        padding: 10px 18px;
    }
    .main-nav .nav-list {
        gap: 16px;
    }
    .vl-3col-grid {
        grid-template-columns: 220px 1fr 240px;
        gap: 16px;
    }
    .pricing-cards-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
    }
    .blue-banner-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px !important;
    }
    .our-goal-cards-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px !important;
    }
}

/* 3. Responsive Breakpoint: <= 991px (Tablets & Medium Screens) */
@media (max-width: 991px) {
    /* Header */
    .header-search-capsule {
        display: none !important;
    }
    .main-nav {
        display: none !important;
    }
    .header-menu-drawer-btn {
        display: inline-flex !important;
    }
    .hamburger-menu {
        display: none !important;
    }
    .header-actions {
        gap: 10px;
    }

    /* Layout Grids */
    .vl-3col-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    .vl-filter-sidebar {
        display: none;
    }
    .vl-filter-sidebar.is-open {
        display: block !important;
        margin-bottom: 20px;
    }
    .vl-visiting-sidebar {
        order: 3;
        width: 100% !important;
    }
    .vd-layout-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    .contact-middle-grid,
    .contact-office-card,
    .login-split-grid,
    .reg-split-wrapper,
    .profile-card-layout,
    .contact-grid-wrapper {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    .trust-badges-row,
    .pf-features-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 14px !important;
    }
    .categories-grid {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 14px !important;
    }
    .hero-stats-bar,
    .white-stats-card,
    .dark-stats-card,
    .price-white-stats-card,
    .contact-dark-stats-bar {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 14px !important;
        padding: 16px 14px !important;
    }
    .stat-divider,
    .ws-divider,
    .dark-stat-divider,
    .pws-divider,
    .contact-dark-divider {
        display: none !important;
    }
    .footer-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 28px !important;
    }
}

/* 4. Responsive Breakpoint: <= 768px (Large Mobile & Portrait Tablets) */
@media (max-width: 768px) {
    /* Header Items */
    .site-header {
        position: sticky !important;
        top: 0 !important;
        z-index: 1000 !important;
    }
    .header-container {
        padding: 8px 14px !important;
    }
    .brand-name {
        font-size: 16px !important;
    }
    .brand-tagline {
        font-size: 9.5px !important;
    }
    .site-header-logo-img {
        height: 34px !important;
        max-height: 36px !important;
        max-width: 145px !important;
    }
    .header-actions {
        gap: 6px !important;
    }
    .saved-btn span,
    .login-btn span {
        display: none !important;
    }
    .saved-btn,
    .login-btn {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        padding: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 8px !important;
        background: #F8FAFC !important;
        border: 1px solid #E2E8F0 !important;
    }
    .btn-register {
        padding: 6px 12px !important;
        font-size: 12.5px !important;
        height: 36px !important;
        border-radius: 8px !important;
        white-space: nowrap !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    .header-menu-drawer-btn,
    .hamburger-menu {
        width: 36px !important;
        height: 36px !important;
        border-radius: 8px !important;
        margin-left: 2px !important;
    }

    /* Index Hero Banner */
    .index-hero-banner-section {
        padding: 8px 12px 0 12px !important;
    }
    .index-hero-banner-container {
        padding: 0 !important;
        border-radius: 12px !important;
        overflow: hidden !important;
    }
    .index-hero-banner-img {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 130px !important;
        max-height: 220px !important;
        height: auto !important;
        object-fit: cover !important;
        object-position: center !important;
        margin: 0 !important;
        border-radius: 12px !important;
        display: block !important;
    }

    /* Search Card */
    .search-card-container {
        margin-top: 12px !important;
        padding: 18px 14px !important;
        border-radius: 14px !important;
    }
    .search-card-header {
        font-size: 15px !important;
        margin-bottom: 12px !important;
    }
    .form-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }
    .btn-field {
        grid-column: span 1 !important;
        margin-top: 4px !important;
    }
    .btn-search-agent {
        width: 100% !important;
        height: 48px !important;
        font-size: 15px !important;
        justify-content: center !important;
    }

    /* Stats Bars */
    .hero-stats-bar,
    .white-stats-card,
    .dark-stats-card,
    .price-white-stats-card,
    .contact-dark-stats-bar {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
        padding: 14px 10px !important;
    }
    .stat-item,
    .ws-col,
    .dark-stat-col,
    .pws-col,
    .contact-dark-col {
        justify-content: flex-start !important;
        padding: 6px !important;
    }
    .stat-number,
    .ws-number,
    .dark-stat-number,
    .pws-number,
    .contact-dark-number {
        font-size: 17px !important;
    }
    .stat-label,
    .ws-label,
    .dark-stat-label,
    .pws-label,
    .contact-dark-label {
        font-size: 11.5px !important;
    }

    /* Categories Grid */
    .categories-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }
    .category-card {
        padding: 14px 10px !important;
        border-radius: 12px !important;
    }
    .category-icon-box {
        width: 44px !important;
        height: 44px !important;
        margin-bottom: 6px !important;
    }
    .category-title {
        font-size: 13px !important;
        line-height: 1.25 !important;
    }
    .category-subtitle {
        font-size: 11px !important;
    }

    /* Vendor List Agent Cards */
    .vl-top-filter-bar {
        position: static !important;
        padding: 10px 14px !important;
    }
    .vl-filter-bar-container {
        padding: 0 !important;
        gap: 8px !important;
    }
    .vl-card {
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 16px 14px !important;
        gap: 12px !important;
    }
    .vl-card-photo-box {
        width: 100% !important;
        height: 130px !important;
    }
    .vl-card-actions {
        width: 100% !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 8px !important;
        border-top: 1px solid #F1F5F9 !important;
        padding-top: 12px !important;
        min-width: unset !important;
    }
    .vl-card-btn-call,
    .vl-card-btn-wa {
        flex: 1 !important;
        height: 38px !important;
        font-size: 12.5px !important;
        padding: 0 10px !important;
        justify-content: center !important;
    }

    /* Price Page Hero & Cards */
    .price-hero-section {
        padding: 24px 0 32px 0 !important;
    }
    .price-hero-container {
        flex-direction: column !important;
        text-align: center !important;
        gap: 16px !important;
        padding: 0 16px !important;
    }
    .price-hero-title {
        font-size: 26px !important;
    }
    .price-hero-subtitle {
        font-size: 15px !important;
    }
    .price-hero-desc {
        font-size: 13.5px !important;
        margin-bottom: 16px !important;
    }
    .pricing-cards-grid {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }
    .price-why-join-card,
    .price-ready-grow-card {
        flex-direction: column !important;
        text-align: center !important;
        padding: 20px 16px !important;
        gap: 16px !important;
    }
    .why-join-features-row {
        flex-direction: column !important;
        align-items: center !important;
        gap: 8px !important;
    }
    .btn-why-join-register,
    .ready-grow-btn {
        width: 100% !important;
        justify-content: center !important;
    }

    /* Vendor Detail Page */
    .vd-hero-inner {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 14px !important;
    }
    .vd-title-row,
    .vd-rating-row,
    .vd-address-row {
        justify-content: center !important;
    }
    .vd-hero-actions {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }
    .vd-tabs-nav {
        overflow-x: auto !important;
        white-space: nowrap !important;
        -webkit-overflow-scrolling: touch !important;
        display: flex !important;
        gap: 8px !important;
    }

    /* Forms on Mobile */
    .contact-form-grid-2,
    .form-grid-2col,
    .reg-fields-grid,
    .profile-form-grid,
    .profile-form-grid.grid-3col {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }
    .reg-field-full {
        grid-column: span 1 !important;
    }

    /* Modals & Popups */
    .auth-popup {
        width: 95vw !important;
        max-width: 95vw !important;
        padding: 22px 16px !important;
        border-radius: 14px !important;
    }

    /* Testimonials on Mobile */
    .testimonials-grid,
    .happy-customers-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    /* Districts Grid */
    .districts-grid,
    .vl-categories-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }

    /* Sliders & Tracks */
    .agents-slider-track {
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        -webkit-overflow-scrolling: touch !important;
        padding-bottom: 8px !important;
        gap: 12px !important;
    }
    .agent-card {
        min-width: 230px !important;
        max-width: 250px !important;
        scroll-snap-align: start !important;
    }
}

/* 5. Responsive Breakpoint: <= 576px (Mobile Phones) */
@media (max-width: 576px) {
    .header-container {
        padding: 6px 10px !important;
    }
    .site-header-logo-img {
        height: 32px !important;
        max-width: 130px !important;
    }
    .brand-name {
        font-size: 15px !important;
    }
    .brand-tagline {
        display: none !important;
    }
    .btn-register {
        padding: 5px 9px !important;
        font-size: 11.5px !important;
        height: 34px !important;
    }
    .saved-btn,
    .login-btn,
    .header-menu-drawer-btn,
    .hamburger-menu {
        width: 34px !important;
        height: 34px !important;
        min-width: 34px !important;
    }

    /* Section Spacing */
    .section-container {
        padding: 0 12px !important;
    }
    .categories-section,
    .why-choose-section,
    .rajasthan-districts-section,
    .about-cta-section,
    .terms-content-section,
    .reg-page-section,
    .contact-page-wrapper,
    .vd-page-wrapper {
        padding: 16px 0 !important;
    }

    /* Cards */
    .contact-card-box,
    .contact-talk-card,
    .contact-message-card,
    .contact-office-card,
    .login-card,
    .why-agent-card,
    .reg-form-card,
    .why-reg-card,
    .profile-section-card,
    .listing-card-box,
    .banner-card-box,
    .payment-history-card,
    .terms-card,
    .vd-hero-card,
    .vd-section-card {
        padding: 18px 12px !important;
        border-radius: 14px !important;
    }

    /* Social Buttons */
    .social-login-grid {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    /* Trust Badges */
    .trust-badges-row,
    .pf-features-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    /* Tables */
    .custom-payment-table,
    table {
        display: block !important;
        width: 100% !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    /* Footer on Mobile */
    .site-footer {
        padding: 28px 0 16px 0 !important;
        background: #0B1948 !important;
    }
    .footer-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 20px 14px !important;
    }
    .footer-col.brand-col {
        grid-column: span 2 !important;
        margin-bottom: 4px !important;
    }
    .footer-heading {
        font-size: 14px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
        margin-bottom: 10px !important;
    }
    .footer-links li a,
    .footer-contact-list li {
        font-size: 12.5px !important;
        color: #94A3B8 !important;
        line-height: 1.6 !important;
    }
    .footer-bottom {
        padding: 14px 0 6px 0 !important;
        border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
        text-align: center !important;
        font-size: 11px !important;
        color: #64748B !important;
    }
}

/* 6. Responsive Breakpoint: <= 380px (Small Mobile Phones e.g. iPhone SE) */
@media (max-width: 380px) {
    .site-header-logo-img {
        height: 28px !important;
        max-width: 110px !important;
    }
    .brand-name {
        font-size: 13.5px !important;
    }
    .btn-register {
        padding: 4px 7px !important;
        font-size: 11px !important;
        height: 32px !important;
    }
    .saved-btn,
    .login-btn,
    .header-menu-drawer-btn,
    .hamburger-menu {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
    }
    .category-title {
        font-size: 10px !important;
    }
    .stat-number,
    .ws-number,
    .dark-stat-number,
    .pws-number {
        font-size: 14px !important;
    }
    .pricing-price-wrap .price-amount {
        font-size: 28px !important;
    }
}

/* ==========================================================================
   EXACT MOBILE UI EXTENSIONS (MATCHING USER SCREENSHOTS 1 TO 5)
   ========================================================================== */

/* Visibility Utilities */
.d-none-mobile {
    display: block;
}
.d-block-mobile {
    display: none;
}

@media (max-width: 768px) {
    .d-none-mobile {
        display: none !important;
    }
    .d-block-mobile {
        display: block !important;
    }

    /* Mobile Header Icons */
    .mobile-header-search-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 36px !important;
        height: 36px !important;
        border-radius: 8px !important;
        background: transparent !important;
        border: none !important;
        color: #0F172A !important;
        cursor: pointer;
    }
    .saved-btn,
    .login-btn,
    .btn-register,
    .header-menu-drawer-btn {
        display: none !important;
    }
    .hamburger-menu {
        display: inline-flex !important;
        background: transparent !important;
        border: none !important;
        color: #0F172A !important;
    }
    .header-actions {
        display: flex !important;
        align-items: center !important;
        gap: 6px !important;
    }

    /* Mobile Hero Vector Section (Screenshot 1) */
    .mobile-hero-wrapper {
        text-align: center;
        background: linear-gradient(180deg, #F0F6FF 0%, #FFFFFF 100%);
        padding: 20px 14px 10px 14px;
    }
    .mobile-hero-badge {
        display: inline-flex;
        background: #EFF6FF;
        border: 1px solid #BFDBFE;
        color: #004BEE;
        font-size: 13px;
        font-weight: 700;
        padding: 5px 16px;
        border-radius: 20px;
        margin-bottom: 12px;
    }
    .mobile-hero-title {
        font-size: 26px;
        font-weight: 800;
        line-height: 1.25;
        color: #0B1948;
        margin: 0 0 8px 0;
    }
    .mobile-hero-title .highlight-blue {
        color: #004BEE;
        font-weight: 800;
    }
    .mobile-hero-subtitle {
        font-size: 13px;
        color: #475569;
        line-height: 1.4;
        max-width: 320px;
        margin: 0 auto 16px auto;
    }

    /* Phone Mockup Illustration */
    .mobile-hero-illustration {
        position: relative;
        width: 220px;
        height: 140px;
        margin: 0 auto 14px auto;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .skyline-silhouette {
        position: absolute;
        bottom: 10px;
        left: 0;
        right: 0;
        height: 40px;
        background: repeating-linear-gradient(90deg, #CBD5E1, #CBD5E1 18px, transparent 18px, transparent 24px);
        opacity: 0.6;
        border-radius: 4px;
    }
    .phone-map-mockup {
        position: relative;
        z-index: 2;
        width: 110px;
        height: 135px;
        background: #1E293B;
        border-radius: 16px;
        padding: 5px;
        box-shadow: 0 8px 24px rgba(0, 75, 238, 0.2);
        transform: rotate(6deg);
    }
    .phone-screen-inner {
        width: 100%;
        height: 100%;
        background: #F8FAFC;
        border-radius: 12px;
        position: relative;
        overflow: hidden;
    }
    .map-grid-lines {
        position: absolute;
        inset: 0;
        background-image: linear-gradient(#E2E8F0 1px, transparent 1px), linear-gradient(90deg, #E2E8F0 1px, transparent 1px);
        background-size: 16px 16px;
        opacity: 0.7;
    }
    .map-route-line {
        position: absolute;
        width: 70px;
        height: 40px;
        border-left: 2.5px solid #004BEE;
        border-bottom: 2.5px solid #004BEE;
        top: 35px;
        left: 20px;
        border-radius: 0 0 0 10px;
    }
    .map-location-pin {
        position: absolute;
        top: 24px;
        left: 36px;
        width: 28px;
        height: 28px;
        background: #004BEE;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 4px 10px rgba(0, 75, 238, 0.4);
    }
    .map-dot {
        position: absolute;
        width: 7px;
        height: 7px;
        border-radius: 50%;
    }
    .dot-green {
        background: #16A34A;
        top: 30px;
        left: 15px;
    }
    .dot-orange {
        background: #EA580C;
        bottom: 25px;
        right: 20px;
    }
    .dot-purple {
        background: #9333EA;
        bottom: 15px;
        left: 25px;
    }

    /* Trust Pill Strip */
    .mobile-trust-strip {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
        gap: 12px;
        background: #EFF6FF;
        border: 1px solid #DBEAFE;
        border-radius: 30px;
        padding: 8px 12px;
        margin-top: 6px;
    }
    .trust-pill-item {
        display: inline-flex;
        align-items: center;
        gap: 4px;
        font-size: 11.5px;
        font-weight: 700;
        color: #0F172A;
    }

    /* Categories Header & 4-Column Grid (Screenshot 2) */
    .categories-header-flex {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 12px !important;
    }
    .categories-header-flex .section-title {
        font-size: 17px !important;
        font-weight: 800 !important;
        color: #0F172A !important;
        margin: 0 !important;
    }
    .view-all-header-link {
        font-size: 13px !important;
        font-weight: 700 !important;
        color: #004BEE !important;
        text-decoration: none !important;
    }
    .categories-grid {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 8px !important;
    }
    .category-card {
        background: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 12px !important;
        padding: 10px 4px !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-decoration: none !important;
        box-shadow: 0 1px 4px rgba(0,0,0,0.02) !important;
    }
    .category-icon-box {
        width: 38px !important;
        height: 38px !important;
        border-radius: 10px !important;
        margin-bottom: 4px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    .category-title {
        font-size: 10.5px !important;
        font-weight: 700 !important;
        color: #0F172A !important;
        line-height: 1.15 !important;
        text-align: center !important;
        margin: 0 !important;
    }

    /* Stats Bar 1 (4 columns) */
    .hero-stats-bar {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 4px !important;
        background: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 14px !important;
        padding: 10px 6px !important;
        box-shadow: 0 2px 8px rgba(0,0,0,0.03) !important;
        margin-top: 14px !important;
    }
    .hero-stats-bar .stat-item {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        padding: 2px !important;
    }
    .hero-stats-bar .stat-icon-wrapper {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-bottom: 2px !important;
    }
    .hero-stats-bar .stat-number {
        font-size: 13.5px !important;
        font-weight: 800 !important;
        color: #004BEE !important;
        margin-bottom: 1px !important;
    }
    .hero-stats-bar .stat-label {
        font-size: 9px !important;
        font-weight: 600 !important;
        color: #64748B !important;
        line-height: 1.15 !important;
        text-align: center !important;
    }

    /* Why Choose Agent 24 India (Exact Image Match - Solid Royal Navy Card & List View) */
    .why-choose-section {
        padding: 16px 0 !important;
    }
    .custom-why-choose-banner {
        background: #0e2868 !important;
        background: linear-gradient(180deg, #0e2a6d 0%, #0a1f52 100%) !important;
        border-radius: 20px !important;
        padding: 22px 18px !important;
        box-shadow: 0 10px 30px rgba(10, 31, 82, 0.28) !important;
        border: 1px solid rgba(255, 255, 255, 0.08) !important;
        margin: 0 auto !important;
    }
    .custom-why-header {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        text-align: left !important;
        padding-bottom: 16px !important;
        margin-bottom: 16px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    }
    .custom-why-line {
        display: none !important;
    }
    .custom-why-title {
        font-size: 20px !important;
        font-weight: 800 !important;
        color: #FFFFFF !important;
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        margin: 0 !important;
        line-height: 1.2 !important;
        text-align: left !important;
    }
    .why-title-badge-icon {
        width: 24px !important;
        height: 24px !important;
        stroke: #60A5FA !important;
        flex-shrink: 0 !important;
    }
    .custom-why-main-row {
        display: block !important;
        width: 100% !important;
    }
    .custom-why-features-grid {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
        margin: 0 !important;
        width: 100% !important;
    }
    .custom-why-col {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 14px !important;
        background: transparent !important;
        padding: 0 !important;
        border-radius: 0 !important;
        border: none !important;
        box-shadow: none !important;
        text-align: left !important;
        width: 100% !important;
    }
    .custom-why-col:first-child,
    .custom-why-col.last-col {
        background: transparent !important;
        border: none !important;
        padding: 0 !important;
    }
    .custom-why-icon-wrap {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        border-radius: 12px !important;
        background: rgba(255, 255, 255, 0.08) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-shrink: 0 !important;
        margin: 0 !important;
    }
    .custom-why-icon-wrap svg {
        width: 22px !important;
        height: 22px !important;
        display: block !important;
    }
    .custom-why-text {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: flex-start !important;
        text-align: left !important;
        flex: 1 !important;
        min-width: 0 !important;
    }
    .custom-why-head {
        font-size: 14.5px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
        margin: 0 0 3px 0 !important;
        line-height: 1.25 !important;
        text-align: left !important;
    }
    .custom-why-sub {
        font-size: 12px !important;
        color: #94A3B8 !important;
        margin: 0 !important;
        line-height: 1.3 !important;
        font-weight: 400 !important;
        text-align: left !important;
    }

    /* How It Works Flow (Image 2 Match - 4 Horizontal Steps on Mobile) */
    .how-it-works-section {
        padding: 16px 0 !important;
    }
    .how-it-works-section .section-header {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 12px !important;
        margin-bottom: 14px !important;
    }
    .how-it-works-section .header-line {
        display: block !important;
        height: 1.5px !important;
        width: 35px !important;
        background: #CBD5E1 !important;
    }
    .how-it-works-section .section-title {
        font-size: 19px !important;
        font-weight: 800 !important;
        color: #0F172A !important;
        margin: 0 !important;
    }
    .steps-flow-wrapper {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        background: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 18px !important;
        padding: 16px 8px 18px 8px !important;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04) !important;
        gap: 2px !important;
        margin: 0 auto !important;
        max-width: 100% !important;
    }
    .step-card {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        padding: 0 1px !important;
        margin: 0 !important;
        width: auto !important;
        max-width: 78px !important;
        transform: none !important;
        background: transparent !important;
    }
    .step-card:hover {
        transform: none !important;
    }
    .step-icon-wrapper {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin-bottom: 8px !important;
        width: 100% !important;
    }
    .step-number-badge {
        position: absolute !important;
        top: -4px !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        width: 20px !important;
        height: 20px !important;
        border-radius: 50% !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        color: #FFFFFF !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 2px solid #FFFFFF !important;
        box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15) !important;
        z-index: 3 !important;
    }
    .step-number-badge.badge-blue {
        background: #2563EB !important;
    }
    .step-number-badge.badge-orange {
        background: #F97316 !important;
    }
    .step-number-badge.badge-green {
        background: #22C55E !important;
    }
    .step-number-badge.badge-purple {
        background: #A855F7 !important;
    }
    .step-icon-circle {
        width: 46px !important;
        height: 46px !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-top: 8px !important;
    }
    .step-icon-circle.circle-blue {
        background: #EFF6FF !important;
        border: 1px solid #DBEAFE !important;
    }
    .step-icon-circle.circle-orange {
        background: #FFF7ED !important;
        border: 1px solid #FFEDD5 !important;
    }
    .step-icon-circle.circle-green {
        background: #F0FDF4 !important;
        border: 1px solid #DCFCE7 !important;
    }
    .step-icon-circle.circle-purple {
        background: #FAF5FF !important;
        border: 1px solid #F3E8FF !important;
    }
    .step-icon-circle svg {
        width: 22px !important;
        height: 22px !important;
    }
    .step-title {
        font-size: 11px !important;
        font-weight: 700 !important;
        color: #0F172A !important;
        line-height: 1.25 !important;
        text-align: center !important;
        margin: 0 !important;
        word-break: normal !important;
    }
    .step-title.title-blue,
    .step-title.title-orange,
    .step-title.title-green,
    .step-title.title-purple {
        color: #0F172A !important;
    }
    .step-arrow {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 14px !important;
        flex-shrink: 0 !important;
        margin-top: 24px !important;
        transform: none !important;
    }
    .step-arrow svg {
        width: 12px !important;
        height: 12px !important;
        display: block !important;
    }

    /* Top Verified Agents Slider (Image 2 Match) */
    .verified-agents-section {
        padding: 16px 0 !important;
        background: transparent !important;
    }
    .verified-agents-card {
        background: transparent !important;
        border: none !important;
        border-radius: 0 !important;
        padding: 0 !important;
        box-shadow: none !important;
    }
    .verified-agents-header {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        margin-bottom: 12px !important;
    }
    .verified-title {
        font-size: 19px !important;
        font-weight: 800 !important;
        color: #0F172A !important;
        margin: 0 !important;
    }
    .view-all-link {
        font-size: 13px !important;
        font-weight: 700 !important;
        color: #004BEE !important;
        text-decoration: none !important;
    }
    .carousel-relative-wrapper {
        position: relative !important;
        padding: 0 !important;
    }
    .agents-slider-track {
        display: flex !important;
        flex-direction: row !important;
        gap: 12px !important;
        overflow-x: auto !important;
        scroll-behavior: smooth !important;
        scroll-snap-type: x mandatory !important;
        -webkit-overflow-scrolling: touch !important;
        padding: 4px 4px 12px 4px !important;
        width: 100% !important;
    }
    .agent-card {
        flex: 0 0 280px !important;
        min-width: 280px !important;
        max-width: 290px !important;
        background: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 16px !important;
        padding: 14px !important;
        box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04) !important;
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        text-align: left !important;
        scroll-snap-align: start !important;
        margin: 0 !important;
        transform: none !important;
    }
    .agent-card:hover {
        transform: none !important;
    }
    .verified-badge {
        position: absolute !important;
        top: 10px !important;
        left: 10px !important;
        background-color: #16A34A !important;
        color: #FFFFFF !important;
        font-size: 9px !important;
        font-weight: 800 !important;
        padding: 2px 7px !important;
        border-radius: 4px !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 3px !important;
        letter-spacing: 0.3px !important;
        z-index: 2 !important;
    }
    .agent-card-top-content {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 12px !important;
        margin-top: 10px !important;
        margin-bottom: 2px !important;
        width: 100% !important;
        text-align: left !important;
    }
    .agent-avatar-wrapper {
        width: 62px !important;
        height: 62px !important;
        min-width: 62px !important;
        border-radius: 50% !important;
        overflow: hidden !important;
        margin: 0 !important;
        border: 2px solid #F1F5F9 !important;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06) !important;
        flex-shrink: 0 !important;
    }
    .agent-avatar-wrapper img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }
    .agent-info-wrapper {
        flex: 1 !important;
        min-width: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        text-align: left !important;
    }
    .agent-name {
        font-size: 15px !important;
        font-weight: 800 !important;
        color: #0F172A !important;
        line-height: 1.25 !important;
        margin: 0 0 2px 0 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        min-height: auto !important;
        display: block !important;
    }
    .agent-category {
        font-size: 12px !important;
        font-weight: 500 !important;
        color: #64748B !important;
        margin: 0 0 1px 0 !important;
        line-height: 1.2 !important;
    }
    .agent-location {
        font-size: 11.5px !important;
        font-weight: 500 !important;
        color: #64748B !important;
        margin: 0 0 3px 0 !important;
        line-height: 1.2 !important;
    }
    .agent-rating-row {
        display: flex !important;
        align-items: center !important;
        gap: 4px !important;
        margin: 0 !important;
    }
    .agent-rating-row .rating-stars {
        color: #F59E0B !important;
        font-size: 11.5px !important;
        letter-spacing: 0.5px !important;
    }
    .agent-rating-row .rating-score {
        font-size: 11.5px !important;
        font-weight: 800 !important;
        color: #0F172A !important;
    }
    .agent-rating-row .rating-count {
        color: #64748B !important;
        font-size: 11px !important;
        font-weight: 500 !important;
    }
    .agent-card-actions {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        margin-top: 14px !important;
    }
    .btn-agent-outlined {
        flex: 1 !important;
        height: 38px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #FFFFFF !important;
        border: 1.5px solid #2563EB !important;
        border-radius: 10px !important;
        color: #2563EB !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        padding: 0 !important;
        text-decoration: none !important;
    }
    .btn-agent-filled {
        flex: 1 !important;
        height: 38px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #2563EB !important;
        border: none !important;
        border-radius: 10px !important;
        color: #FFFFFF !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        padding: 0 !important;
        text-decoration: none !important;
    }
    .slider-btn {
        width: 32px !important;
        height: 32px !important;
        border-radius: 50% !important;
        background: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
        color: #1E293B !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: absolute !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        z-index: 10 !important;
    }
    .slider-btn svg {
        width: 16px !important;
        height: 16px !important;
    }
    .slider-btn.prev-btn {
        left: -8px !important;
    }
    .slider-btn.next-btn {
        right: -8px !important;
    }

    /* Districts 2-Column Mobile Grid (Screenshots 3 & 4) */
    .districts-mobile-grid {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }
    .district-photo-card {
        background: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        text-decoration: none !important;
        display: block !important;
        box-shadow: 0 1px 4px rgba(0,0,0,0.02) !important;
    }
    .district-photo-box {
        width: 100% !important;
        height: 95px !important;
        overflow: hidden !important;
    }
    .district-cover-img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
    }
    .district-meta-box {
        padding: 8px 10px !important;
    }
    .district-card-name {
        font-size: 13.5px !important;
        font-weight: 700 !important;
        color: #0F172A !important;
        margin: 0 0 2px 0 !important;
    }
    .district-card-count {
        font-size: 11px !important;
        font-weight: 600 !important;
        color: #004BEE !important;
    }
    .btn-all-districts-pill {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 1.5px solid #004BEE !important;
        color: #004BEE !important;
        background: #FFFFFF !important;
        border-radius: 20px !important;
        padding: 8px 24px !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        text-decoration: none !important;
    }

    /* Agent Registration CTA (Screenshot 4) */
    .agent-cta-card {
        background: #0A1B44 !important;
        border-radius: 16px !important;
        padding: 20px 16px !important;
        color: #FFFFFF !important;
    }
    .cta-main-title {
        font-size: 18px !important;
        font-weight: 800 !important;
        color: #FFFFFF !important;
        margin-bottom: 6px !important;
    }
    .cta-subtitle {
        font-size: 12px !important;
        color: #94A3B8 !important;
        line-height: 1.35 !important;
        margin-bottom: 14px !important;
    }
    .cta-feature-list {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        padding: 0 !important;
        margin: 0 !important;
        list-style: none !important;
    }
    .cta-feature-item {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
    }
    .btn-register-white-pill {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #FFFFFF !important;
        color: #004BEE !important;
        border-radius: 24px !important;
        padding: 10px 24px !important;
        font-size: 13.5px !important;
        font-weight: 800 !important;
        text-decoration: none !important;
    }

    /* Welcome Promo Banner (Screenshot 5) */
    .welcome-promo-section {
        padding: 14px 0 !important;
    }
    .welcome-promo-card {
        background: linear-gradient(135deg, #004BEE 0%, #002B9E 100%) !important;
        border-radius: 14px !important;
        padding: 14px !important;
        color: #FFFFFF !important;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 10px !important;
    }
    .welcome-tag {
        background: rgba(255,255,255,0.2) !important;
        font-size: 10px !important;
        font-weight: 800 !important;
        padding: 2px 8px !important;
        border-radius: 10px !important;
        display: inline-block !important;
        margin-bottom: 4px !important;
    }
    .welcome-promo-head {
        font-size: 13.5px !important;
        font-weight: 700 !important;
        color: #FFFFFF !important;
        margin: 0 0 2px 0 !important;
    }
    .welcome-promo-sub {
        font-size: 11px !important;
        color: #E0E7FF !important;
        margin: 0 !important;
    }
    .btn-promo-login {
        background: #FFFFFF !important;
        color: #004BEE !important;
        font-weight: 700 !important;
        font-size: 12px !important;
        padding: 7px 14px !important;
        border-radius: 20px !important;
        text-decoration: none !important;
        white-space: nowrap !important;
    }

    /* Why We Are Best Section (Screenshot 5) */
    .why-best-section {
        padding: 16px 0 !important;
    }
    .why-best-title {
        font-size: 18px !important;
        font-weight: 800 !important;
        color: #0F172A !important;
        margin: 0 0 12px 0 !important;
    }
    .why-best-card {
        background: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 14px !important;
        padding: 12px 14px !important;
        box-shadow: 0 2px 8px rgba(0,0,0,0.03) !important;
    }
    .why-best-item {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 10px 0 !important;
        border-bottom: 1px solid #F1F5F9 !important;
    }
    .why-best-item:last-child {
        border-bottom: none !important;
    }
    .why-best-icon {
        width: 36px !important;
        height: 36px !important;
        border-radius: 8px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-shrink: 0 !important;
    }
    .icon-bg-blue {
        background: #EFF6FF !important;
    }
    .icon-bg-gold {
        background: #FEF3C7 !important;
    }
    .why-best-head {
        font-size: 13.5px !important;
        font-weight: 700 !important;
        color: #0F172A !important;
        margin: 0 0 1px 0 !important;
    }
    .why-best-desc {
        font-size: 11.5px !important;
        color: #64748B !important;
        margin: 0 !important;
    }

    /* Stats Bar 2 (Light Blue Container - Screenshot 5) */
    .light-stats-strip {
        background: #EFF6FF !important;
        border: 1px solid #DBEAFE !important;
        border-radius: 14px !important;
        padding: 12px 6px !important;
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 4px !important;
    }
    .lstat-item {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
    }
    .lstat-num {
        font-size: 13px !important;
        font-weight: 800 !important;
        color: #004BEE !important;
        margin-bottom: 1px !important;
    }
    .lstat-lbl {
        font-size: 9px !important;
        font-weight: 600 !important;
        color: #475569 !important;
        line-height: 1.15 !important;
    }

    /* About Us Box (Screenshot 5) */
    .homepage-about-box {
        background: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 14px !important;
        padding: 16px 14px !important;
        box-shadow: 0 2px 8px rgba(0,0,0,0.03) !important;
    }
    .about-box-title {
        font-size: 17px !important;
        font-weight: 800 !important;
        color: #0F172A !important;
        margin: 0 0 8px 0 !important;
    }
    .about-box-text {
        font-size: 12.5px !important;
        color: #475569 !important;
        line-height: 1.5 !important;
        margin: 0 0 12px 0 !important;
    }
    .btn-about-pill {
        display: inline-flex !important;
        align-items: center !important;
        border: 1.5px solid #004BEE !important;
        color: #004BEE !important;
        background: #FFFFFF !important;
        border-radius: 20px !important;
        padding: 6px 18px !important;
        font-size: 12.5px !important;
        font-weight: 700 !important;
        text-decoration: none !important;
    }
}

