body{background:#f7f9fc;color:#172033}.hero{background:linear-gradient(135deg,#0d6efd,#5b8def);color:#fff;border-radius:0 0 32px 32px}.hero-card{margin-top:-65px;position:relative}.property-card{transition:.2s;overflow:hidden}.property-card:hover{transform:translateY(-4px);box-shadow:0 1rem 2rem rgba(0,0,0,.08)}.property-img{height:220px;object-fit:cover;background:#e9eef5}.stat-card{border:0;border-radius:18px}.dashboard-card{border:0;border-radius:18px}.table-responsive{border-radius:14px}.badge-status{text-transform:capitalize}.filter-box{border-radius:18px}.detail-img{max-height:480px;object-fit:cover}.form-control, .form-select{padding:.7rem .85rem}.btn{border-radius:10px}.empty{padding:60px 20px;text-align:center;color:#6c757d}
.property-gallery{background:#eef3f9}.property-main-image{height:430px;object-fit:cover}.gallery-thumb{height:205px;overflow:hidden;border-radius:10px;background:#dee8f4}.gallery-thumb img{height:100%;object-fit:cover;transition:.2s}.gallery-thumb:hover img{transform:scale(1.04)}.property-placeholder{height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6c8bb5;font-size:1.1rem}.property-placeholder i{font-size:8rem}.feature-box{height:100%;background:#fff;border:1px solid #e8edf4;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:4px}.feature-box i{color:#0d6efd;font-size:1.25rem}.feature-box small{color:#6c757d}.feature-box strong{font-size:1.05rem}.amenity{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;background:#f7f9fc}.amenity i{font-size:1.2rem;color:#0d6efd}.map-placeholder{height:190px;border-radius:14px;background:linear-gradient(135deg,#e8f0fb,#f7f9fc);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#718096}.map-placeholder i{font-size:2.5rem}.owner-avatar{width:46px;height:46px;border-radius:50%;background:#e9f1ff;color:#0d6efd;display:flex;align-items:center;justify-content:center;font-weight:700}.property-booking-card{top:90px}
@media(max-width:991.98px){.property-main-image{height:320px}.gallery-thumb{height:120px}.property-booking-card{position:static!important}}

.hm-view-all{
    text-align: center;
    padding: 5% 0 2%;
}

.hm-view-all a{
    background-color: #0a58ca;
    color: #fff;
    width: 150px;
    display: inline-block;
    height: 45px;
    line-height: 45px;
    text-decoration: none;
    border-radius: 5px;
}

.hm-view-all a:hover{
    background-color: #103a76;
}

.glogo img{
    width: 215px;
}



/* =====================================================
   CONTACT
===================================================== */

.contact-item{
    display: flex;
    align-items: flex-start;

    gap: 12px;

    margin-bottom: 0;
}

.contact-item > span{
    flex-shrink: 0;

    width: 34px;
    height: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #1e293b;

    border-radius: 9px;

    font-size: 15px;
}

.contact-item p{
    margin: 5px 0 0;

    color: #111;

    font-size: 14px;
    line-height: 1.5;
}


/* =====================================================
   NEWSLETTER
===================================================== */







.newsletter-form{
    display: flex;

    width: min(430px, 100%);
}

.newsletter-form input{
    flex: 1;

    min-width: 0;

    height: 46px;

    padding: 0 16px;

    background: #0f172a;

    border: 1px solid #334155;
    border-right: 0;

    border-radius: 9px 0 0 9px;

    outline: none;

    color: #ffffff;

    font-size: 14px;
}

.newsletter-form input::placeholder{
    color: #64748b;
}

.newsletter-form input:focus{
    border-color: #3b82f6;
}

.newsletter-form button{
    height: 46px;

    padding: 0 22px;

    border: 0;

    border-radius: 0 9px 9px 0;

    background: #2563eb;

    color: #ffffff;

    font-size: 14px;
    font-weight: 600;

    cursor: pointer;

    transition:
        background 0.2s ease,
        transform 0.2s ease;
}

.newsletter-form button:hover{
    background: #1d4ed8;
}















/* =====================================================
   TABLET
===================================================== */

@media (max-width: 900px) {.newsletter-form{
        width: 100%;
    }}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 600px) {.newsletter-form{
        display: flex;
    }

    .newsletter-form input{
        width: 100%;
    }

    .newsletter-form button{
        padding: 0 16px;
    }}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 400px) {.newsletter-form{
        flex-direction: column;
        gap: 10px;
    }

    .newsletter-form input{
        border-right: 1px solid #334155;
        border-radius: 9px;
    }

    .newsletter-form button{
        width: 100%;
        border-radius: 9px;
    }}



.subscription-message{
    padding: 12px 16px;
    margin-bottom: 15px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
}

.subscription-message.success{
    background: #dcfce7;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.subscription-message.error{
    background: #fee2e2;
    color: #991b1b;
    border: 1px solid #fecaca;
}

/* =========================================
   PREMIUM HERO SECTION
========================================= */

.hero-section{
    position: relative;
    min-height: 450px;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #ffffff;
    isolation: isolate;
}


/* =========================================
   BACKGROUND IMAGE
========================================= */

.hero-background{
    position: absolute;
    inset: 0;
    z-index: -3;
}

.hero-background img{
    width: 100%;
    height: 100%;

    object-fit: cover;

    object-position: center;

    animation: heroZoom 12s ease-in-out infinite alternate;
}

@keyframes heroZoom {

    from {
        transform: scale(1);
    }

    to {
        transform: scale(1.06);
    }
}


/* =========================================
   DARK GRADIENT OVERLAY
========================================= */

.hero-overlay{
    position: absolute;
    inset: 0;

    z-index: -2;

    background: linear-gradient(to right top, #8e44ad 0%, #0d6efd 100%);

}


/* Bottom fade */

.hero-overlay::after{
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    height: 150px;

    background: linear-gradient(
        transparent,
        rgba(2, 6, 23, 0.55)
    );
}


/* =========================================
   HERO CONTENT
========================================= */

.hero-content{
    width: min(1200px, 92%);

    margin: 0 auto;

    padding: 0 0 50px;

    animation: heroContentIn 0.8s ease both;
}

@keyframes heroContentIn {

    from {
        opacity: 0;
        transform: translateY(25px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* =========================================
   BADGE
========================================= */

.hero-badge{
    display: inline-flex;
    align-items: center;
    gap: 8px;

    padding: 8px 14px;

    margin-bottom: 20px;

    background: rgba(255,255,255,0.12);

    border: 1px solid rgba(255,255,255,0.2);

    border-radius: 50px;

    backdrop-filter: blur(10px);

    color: #e2e8f0;

    font-size: 13px;
    font-weight: 600;
}

.hero-badge span{
    color: #38bdf8;

    font-size: 10px;

    animation: pulseDot 1.6s infinite;
}

@keyframes pulseDot {

    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.35;
    }
}


/* =========================================
   HEADING
========================================= */

.hero-content h1{
    margin: 0;
    font-size: clamp(42px, 6vw, 76px);
    line-height: 1.03;
    letter-spacing: -2.5px;
    font-weight: 800;
}

.hero-content h1 span{
    display: inline-block;
    background: #fff;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-style: italic;
    text-shadow: ;
    animation: pulseDot 5s infinite;
}


/* =========================================
   DESCRIPTION
========================================= */

.hero-description{
    margin: 2px 0 30px;
    color: #fff;
    font-size: 17px;
    line-height: 1.7;
}


/* =========================================
   SEARCH BOX
========================================= */

.hero-search{
    width: min(100%, 1050px);

    display: flex;
    align-items: center;

    padding: 8px;

    background: rgba(255,255,255,0.98);

    border: 1px solid rgba(255,255,255,0.5);

    border-radius: 16px;

    box-shadow:
        0 20px 60px rgba(0,0,0,0.25),
        0 5px 20px rgba(0,0,0,0.1);

    color: #0f172a;
}


/* Search field */

.search-field{
    flex: 1;

    display: flex;
    align-items: center;

    gap: 12px;

    min-width: 0;

    padding: 9px 16px;
}

.search-icon{
    width: 38px;
    height: 38px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    background: #eff6ff;

    border-radius: 10px;

    color: #2563eb;

    font-weight: 700;
}

.search-field label{
    display: block;

    margin-bottom: 2px;

    color: #64748b;

    font-size: 11px;

    font-weight: 600;

    text-transform: uppercase;

    letter-spacing: .5px;
}

.search-field input, .search-field select{
    width: 100%;
    padding: 5px 10px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
    min-width: 150px;
}

.search-field input::placeholder{
    color: #334155;
}

.search-field select{
    cursor: pointer;
}


/* Divider */

.search-divider{
    width: 1px;
    height: 38px;

    background: #e2e8f0;
}


/* Search button */

.hero-search-btn{
    min-width: 135px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 12px;

    border: 0;
    border-radius: 12px;

    background: #2563eb;

    color: #ffffff;

    font-size: 15px;
    font-weight: 700;

    cursor: pointer;

    box-shadow: 0 8px 20px rgba(37,99,235,.25);

    transition:
        transform .2s ease,
        background .2s ease,
        box-shadow .2s ease;
}

.hero-search-btn:hover{
    background: #1d4ed8;

    transform: translateY(-2px);

    box-shadow:
        0 12px 25px rgba(37,99,235,.35);
}


/* =========================================
   POPULAR LOCATIONS
========================================= */

.hero-quick-links{
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 10px;

    margin-top: 18px;

    font-size: 13px;
}

.hero-quick-links > span{
    color: #fff;
}

.hero-quick-links a{
    padding: 6px 12px;
    border-radius: 50px;
    background: #fff;
    border: 1px solid rgba(255,255,255,.14);
    color: #000;
    text-decoration: none;
    transition: .2s ease;
}

.hero-quick-links a:hover{
    background: rgba(255,255,255,.18);

    color: #ffffff;

    transform: translateY(-1px);
}


/* =========================================
   HERO STAT BAR
========================================= */

.hero-stats{
    position: absolute;
    right: 4%;
    bottom: 35px;
    display: flex;
    padding: 18px 22px;
    background: #fff;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 16px;
    backdrop-filter: blur(14px);
}

.hero-stat{
    min-width: 120px;

    padding: 0 20px;

    border-right: 1px solid rgba(255,255,255,.15);
}

.hero-stat:last-child{
    border-right: 0;
}

.hero-stat strong{
    display: block;
    color: #000;
    font-size: 22px;
    font-weight: 800;
}

.hero-stat span{
    display: block;
    margin-top: 3px;
    color: #000;
    font-size: 11px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {.hero-section{
        min-height: 720px;
    }

    .hero-content{
        padding-top: 90px;
    }

    .hero-stats{
        position: absolute;

        left: 4%;
        right: 4%;

        justify-content: center;
    }

    .hero-stat{
        flex: 1;
        min-width: 0;
    }}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 650px) {.hero-section{
        min-height: 780px;
    }

    .hero-content{
        padding-top: 70px;
        padding-bottom: 170px;
    }

    .hero-content h1{
        font-size: 44px;
        letter-spacing: -1.5px;
    }

    .hero-description{
        font-size: 15px;
    }

    .hero-search{
        flex-direction: column;

        align-items: stretch;

        padding: 10px;

        border-radius: 14px;
    }

    .search-field{
        padding: 10px;
    }

    .search-divider{
        width: 100%;
        height: 1px;
    }

    .hero-search-btn{
        width: 100%;
    }

    .hero-stats{
        bottom: 20px;

        padding: 14px 5px;
    }

    .hero-stat{
        padding: 0 8px;
    }

    .hero-stat strong{
        font-size: 16px;
    }

    .hero-stat span{
        font-size: 9px;
    }}

.property-img{height:220px;object-fit:cover}.property-main-image{max-height:520px;object-fit:cover}.gallery-thumb{height:150px;overflow:hidden;border-radius:10px;background:#eef3f9}.gallery-thumb img{height:100%;object-fit:cover}.property-placeholder{height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6c757d;background:#eef3f9}.property-placeholder i{font-size:6rem}

/* =========================================================
   homeofindiaY HOMEPAGE - REFERENCE SCREENSHOT UI
========================================================= */
:root{
    --homeofindiay-blue:#2455f5;
    --homeofindiay-dark:#0b1733;
    --homeofindiay-muted:#5d6678;
    --homeofindiay-soft:#f4f7ff;
}

body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:#fff;color:var(--homeofindiay-dark)}

.homeofindiay-hero{position:relative;min-height:600px;overflow:visible;background:#f5f7ff}
.homeofindiay-hero-bg{position:absolute;inset:0 0 165px 0;background-image:url("../images/hero-banner-reference.jpg");background-size:cover;background-position:center right}
.homeofindiay-hero-fade{position:absolute;inset:0 0 165px 0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.98) 31%,rgba(255,255,255,.68) 49%,rgba(255,255,255,0) 68%),linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0))}
.homeofindiay-hero-inner{position:relative;z-index:2;max-width:1370px;margin:0 auto;min-height:450px;padding:20px 36px 0;display:flex;align-items:flex-start}
.homeofindiay-copy{padding:0 0 0 36px;}
.homeofindiay-eyebrow{display:inline-flex;align-items:center;gap:11px;padding:11px 18px;border-radius:999px;background:#fff;box-shadow:0 8px 25px rgba(16,32,70,.08);font-size:15px;font-weight:600;color:#1c2940}
.homeofindiay-eyebrow i{color:var(--homeofindiay-blue);font-size:21px}
.homeofindiay-copy h1{font-size:72px;line-height:1.04;letter-spacing:-3px;margin:28px 0 22px;font-weight:800;color:#0b1733}
.homeofindiay-copy h1 span{color:var(--homeofindiay-blue);position:relative}
.homeofindiay-copy h1 span:after{content:"";position:absolute;left:8%;right:-5%;bottom:-13px;height:12px;border-top:7px solid var(--homeofindiay-blue);border-radius:50%;transform:rotate(-2deg)}
.homeofindiay-copy>p{font-size:18px;line-height:1.7;color:#556077;margin-bottom:36px}
.homeofindiay-benefits{display:flex;gap:28px;flex-wrap:wrap}
.homeofindiay-benefit{display:flex;align-items:center;gap:12px}
.benefit-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--homeofindiay-blue);box-shadow:0 7px 20px rgba(20,46,100,.10);font-size:23px}
.homeofindiay-benefit strong, .homeofindiay-benefit small{display:block}.homeofindiay-benefit strong{font-size:14px}.homeofindiay-benefit small{font-size:12px;color:#677188;margin-top:4px}
.homeofindiay-search{position:absolute;z-index:4;left:50%;transform:translateX(-50%);bottom:85px;width:min(1365px,calc(100% - 72px));background:#fff;border-radius:18px;padding:28px 30px;display:grid;grid-template-columns:1.18fr 1fr 1fr .72fr auto;gap:28px;box-shadow:0 16px 38px rgba(26,46,91,.13);border:1px solid #e7ebf4}
.homeofindiay-search-field label{display:block;font-size:14px;font-weight:600;margin:0 0 10px;color:#101b31}
.field-control{height:55px;border:1px solid #dfe4ed;border-radius:8px;display:flex;align-items:center;gap:12px;padding:0 14px;color:#657086;background:#fff}
.field-control>i:first-child{font-size:19px;color:#647087}.field-control input, .field-control select{border:0;outline:0;width:100%;font:inherit;color:#586378;background:transparent}.field-control select{appearance:none}.field-chevron{font-size:12px!important;color:#0c1730!important}.homeofindiay-search-btn{align-self:end;height:55px;border:0;border-radius:10px;background:var(--homeofindiay-blue);color:#fff;padding:0 27px;font-size:16px;font-weight:700;display:flex;align-items:center;gap:12px;box-shadow:0 9px 20px rgba(36,85,245,.25)}.homeofindiay-search-btn:hover{background:#1744dc;color:#fff}
.homeofindiay-stats{position:absolute;z-index:3;bottom:0;left:0;right:0;height:165px;background:#f1f4ff;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;padding:0 max(40px,calc((100% - 1230px)/2));gap:35px}
.homeofindiay-stat{display:flex;align-items:center;gap:18px;justify-content:center;position:relative}.homeofindiay-stat:not(:last-child):after{content:"";position:absolute;right:-18px;height:55px;width:1px;background:#cfd7eb}.homeofindiay-stat>span{width:74px;height:74px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--homeofindiay-blue);font-size:29px;box-shadow:0 4px 15px rgba(20,40,90,.04)}.homeofindiay-stat strong{display:block;color:var(--homeofindiay-blue);font-size:30px;line-height:1}.homeofindiay-stat small{display:block;font-size:15px;margin-top:8px;color:#1a2438}
.homeofindiay-featured{padding:70px 0 90px;background:#fff}.homeofindiay-section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:34px}.homeofindiay-section-heading span{font-size:12px;font-weight:800;letter-spacing:1px;color:var(--homeofindiay-blue)}.homeofindiay-section-heading h2{font-size:31px;margin:7px 0 0;letter-spacing:-1px}.homeofindiay-section-heading a{color:var(--homeofindiay-blue);font-weight:700;text-decoration:none}.homeofindiay-section-heading a i{margin-left:5px}

/* Screenshot-style header */
.navbar{height:70px;background:rgba(255,255,255,.98)!important;border:1px solid #e6e8ee!important;box-shadow:0 1px 8px rgba(20,30,50,.04);padding:0!important}
.navbar .container{max-width:1390px}.navbar-brand{font-size:30px!important;font-weight:800!important;letter-spacing:-1px;display:flex;align-items:center;gap:10px}.navbar-brand i{font-size:43px;color:var(--homeofindiay-blue)}.navbar-nav .nav-link{color:#101827;font-weight:600;padding:15px 16px!important;position:relative}.navbar-nav .nav-link:hover{color:var(--homeofindiay-blue)}.navbar-nav .nav-link:first-child{color:var(--homeofindiay-blue)}.navbar-nav .nav-link:first-child:after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:3px;background:var(--homeofindiay-blue);border-radius:3px 3px 0 0}.navbar .btn-primary{background:var(--homeofindiay-blue);border-color:var(--homeofindiay-blue);padding:13px 22px;border-radius:10px;font-weight:700}

@media(max-width:1100px){.homeofindiay-copy h1{font-size:58px}.homeofindiay-search{grid-template-columns:1fr 1fr;bottom:95px}.homeofindiay-search-btn{width:100%;justify-content:center}.homeofindiay-hero{min-height:980px}.homeofindiay-hero-bg, .homeofindiay-hero-fade{bottom:320px}.homeofindiay-stats{height:320px;grid-template-columns:repeat(2,1fr);padding:30px}.homeofindiay-stat:nth-child(2):after{display:none}}
@media(max-width:767.98px){.navbar{height:auto;padding:10px 0!important}.navbar .nav-link{padding:10px 0!important}.navbar .nav-link:first-child:after{display:none}.homeofindiay-hero{min-height:1120px}.homeofindiay-hero-bg{inset:0 0 520px}.homeofindiay-hero-fade{inset:0 0 520px;background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.92) 46%,rgba(255,255,255,.35) 75%,rgba(255,255,255,0) 100%)}.homeofindiay-hero-inner{padding:42px 20px 0;min-height:600px}.homeofindiay-copy{padding:0}.homeofindiay-copy h1{font-size:48px;letter-spacing:-2px}.homeofindiay-copy>p{font-size:16px}.desktop-only{display:none}.homeofindiay-benefits{gap:14px}.homeofindiay-benefit{width:100%}.homeofindiay-search{bottom:335px;width:calc(100% - 30px);grid-template-columns:1fr;padding:22px;gap:16px}.homeofindiay-stats{height:335px;grid-template-columns:1fr 1fr;padding:20px 15px;gap:12px}.homeofindiay-stat{justify-content:flex-start;gap:10px}.homeofindiay-stat>span{width:52px;height:52px;font-size:22px}.homeofindiay-stat strong{font-size:21px}.homeofindiay-stat small{font-size:12px}.homeofindiay-stat:after{display:none!important}.homeofindiay-featured{padding-top:45px}.homeofindiay-section-heading{align-items:flex-start;gap:15px}.homeofindiay-section-heading h2{font-size:25px}.homeofindiay-section-heading a{white-space:nowrap}.navbar-brand{font-size:25px!important}.navbar-brand i{font-size:34px}}


/* =========================================================
   homeofindiaY PROFESSIONAL UI SYSTEM
   ========================================================= */
:root{
  --rf-primary:#2563eb;
  --rf-primary-dark:#1d4ed8;
  --rf-navy:#0f172a;
  --rf-slate:#475569;
  --rf-muted:#64748b;
  --rf-bg:#f6f8fc;
  --rf-card:#ffffff;
  --rf-border:#e6ebf2;
  --rf-success:#16a34a;
  --rf-warning:#f59e0b;
  --rf-danger:#dc2626;
  --rf-radius:18px;
  --rf-shadow:0 12px 35px rgba(15,23,42,.07);
  --rf-shadow-lg:0 20px 55px rgba(15,23,42,.11);
}

html{scroll-behavior:smooth}
body{
  background:var(--rf-bg);
  color:var(--rf-navy);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.6;
}

a{transition:all .2s ease}


.navbar{
  min-height:76px;
  background:rgba(255,255,255,.96)!important;
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--rf-border)!important;
  box-shadow:0 4px 20px rgba(15,23,42,.04);
}
.navbar-brand{
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--rf-navy)!important;
  font-size:1.35rem;
  letter-spacing:-.4px;
}
.navbar-brand i{
  width:38px;height:38px;
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--rf-primary),#60a5fa);
  color:#fff;border-radius:12px;
}
.navbar .nav-link{
  color:#475569!important;
  font-weight:600;
  padding:.65rem .85rem!important;
  border-radius:10px;
}
.navbar .nav-link:hover{
  color:var(--rf-primary)!important;
  background:#eff6ff;
}
.navbar .btn-primary{
  border:0;
  background:var(--rf-primary);
  box-shadow:0 7px 18px rgba(37,99,235,.2);
}
.navbar .btn-primary:hover{background:var(--rf-primary-dark);transform:translateY(-1px)}
.navbar .btn-outline-danger{border-radius:10px}

.btn{
  border-radius:11px;
  font-weight:700;
  padding:.68rem 1rem;
}
.btn-primary{
  background:var(--rf-primary);
  border-color:var(--rf-primary);
}
.btn-primary:hover{
  background:var(--rf-primary-dark);
  border-color:var(--rf-primary-dark);
  transform:translateY(-1px);
}
.btn-outline-primary{
  border-color:#bfdbfe;
  color:var(--rf-primary);
}
.btn-outline-primary:hover{
  background:#eff6ff;
  border-color:#93c5fd;
  color:var(--rf-primary-dark);
}


.card{
  border:1px solid var(--rf-border)!important;
  border-radius:var(--rf-radius)!important;
  box-shadow:var(--rf-shadow);
}
.card-header{
  border-bottom:1px solid var(--rf-border)!important;
  border-radius:var(--rf-radius) var(--rf-radius) 0 0!important;
}
.form-control, .form-select{
  border:1px solid #dbe2ea;
  border-radius:11px;
  min-height:46px;
  padding:.7rem .9rem;
  box-shadow:none!important;
}
.form-control:focus, .form-select:focus{
  border-color:#93c5fd;
  box-shadow:0 0 0 4px rgba(37,99,235,.09)!important;
}
.form-label{font-weight:700;color:#334155}
.table{--bs-table-bg:transparent}
.table thead th{
  background:#f8fafc;
  color:#64748b;
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-weight:800;
  border-bottom:1px solid var(--rf-border);
}
.table td{padding:1rem .8rem;border-color:#edf1f5}
.badge{font-weight:700;border-radius:999px;padding:.45rem .7rem}

.stat-card{
  position:relative;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--rf-border)!important;
  box-shadow:var(--rf-shadow)!important;
}
.stat-card:before{
  content:"";
  position:absolute;right:-28px;top:-28px;
  width:90px;height:90px;border-radius:50%;
  background:#eff6ff;
}

.stat-card h2{font-weight:800;letter-spacing:-.8px;margin:.35rem 0 0}


.dashboard-title{
  font-size:2rem;font-weight:800;letter-spacing:-.8px;
}

.quick-action{
  display:flex;align-items:center;gap:12px;
  padding:14px 16px;border:1px solid var(--rf-border);
  background:#fff;border-radius:14px;color:var(--rf-navy);
  text-decoration:none;font-weight:700;
}
.quick-action:hover{border-color:#bfdbfe;background:#eff6ff;color:var(--rf-primary)}
.quick-action i{color:var(--rf-primary);font-size:1.2rem}

.homeofindiay-hero{
  position:relative;
  min-height:450px;
  overflow:hidden;
  background:#0b1220;
}
.homeofindiay-hero-inner{position:relative;z-index:2;padding-top:20px;}
.homeofindiay-copy h1{
  font-size:clamp(2.7rem,6vw,5.2rem);
  line-height:1.02;
  letter-spacing:-.055em;
  font-weight:850;
}
.homeofindiay-copy h1 span{color:#60a5fa}
.homeofindiay-copy p{max-width:650px;color:#dbeafe;font-size:1.08rem}
.homeofindiay-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 13px;border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);border-radius:999px;
  color:#dbeafe;font-weight:700;margin-bottom:18px;
}
.homeofindiay-search{
  background:#fff;
  border:1px solid rgba(255,255,255,.35);
  border-radius:20px;
  box-shadow:var(--rf-shadow-lg);
  padding:12px;
  margin-top:42px;
}
.homeofindiay-search-field{padding:10px 15px;border-right:1px solid #e5e7eb}
.homeofindiay-search-field label{
  display:block;color:#64748b;font-size:.75rem;font-weight:800;
  text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px
}
.field-control{display:flex;align-items:center;gap:9px}
.field-control>i:first-child{color:var(--rf-primary)}
.field-control input, .field-control select{
  border:0;outline:0;background:transparent;width:100%;min-width:0;
  color:#0f172a;font-weight:600;
}
.homeofindiay-search-btn{
  border:0;border-radius:13px;background:var(--rf-primary);color:#fff;
  font-weight:800;padding:0 22px;min-height:58px;white-space:nowrap;
}
.homeofindiay-search-btn:hover{background:var(--rf-primary-dark)}
.homeofindiay-stats{position:relative;z-index:2}
.homeofindiay-stat{border-color:rgba(255,255,255,.12)!important}

.property-card{
  overflow:hidden;
  border:1px solid var(--rf-border);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--rf-shadow);
  transition:transform .25s ease,box-shadow .25s ease;
}
.property-card:hover{
  transform:translateY(-5px);
  box-shadow:var(--rf-shadow-lg);
}
.property-card img{transition:transform .35s ease}
.property-card:hover img{transform:scale(1.03)}




.newsletter-form input{
  min-height:48px;
  border-radius:10px 0 0 10px;
  border:0;
}
.newsletter-form button{
  border:0;background:var(--rf-primary);color:#fff;
  font-weight:800;padding:0 20px;border-radius:0 10px 10px 0;
}

@media(max-width:991px){.navbar{min-height:68px}
  .homeofindiay-hero-inner{padding-top:70px}
  .homeofindiay-search{margin:30px 12px 0}
  .homeofindiay-search-field{border-right:0;border-bottom:1px solid #edf1f5}
  .homeofindiay-search-btn{width:100%;margin-top:8px}}
@media(max-width:575px){.dashboard-shell{padding:25px 0 50px}
  .dashboard-title{font-size:1.65rem}
  .homeofindiay-copy h1{font-size:2.8rem}
  .homeofindiay-hero{min-height:760px}}


/* =========================================================
   homeofindiaY MASTER UI â€” OWNER DASHBOARD DESIGN LANGUAGE
   Applied globally so public, auth, tenant, owner and admin
   screens share the same spacing, surfaces, typography and states.
   ========================================================= */
:root{
  --rf-primary:#2563eb;
  --rf-primary-dark:#1d4ed8;
  --rf-navy:#0f172a;
  --rf-text:#172033;
  --rf-slate:#475569;
  --rf-muted:#64748b;
  --rf-bg:#f6f8fc;
  --rf-surface:#fff;
  --rf-border:#e6ebf2;
  --rf-border-strong:#d7e0eb;
  --rf-success:#16a34a;
  --rf-warning:#d97706;
  --rf-danger:#dc2626;
  --rf-radius:18px;
  --rf-radius-sm:12px;
  --rf-shadow:0 8px 28px rgba(15,23,42,.055);
  --rf-shadow-lg:0 18px 50px rgba(15,23,42,.09);
}

*{box-sizing:border-box}
body.rf-body{
  background:var(--rf-bg);
  color:var(--rf-text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.55;
}
main{min-height:65vh}
.container{max-width:1200px}
a{transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}

/* Header */
.rf-navbar{
  min-height:76px!important;
  background:rgba(255,255,255,.96)!important;
  backdrop-filter:blur(16px);
  border:0!important;
  border-bottom:1px solid var(--rf-border)!important;
  box-shadow:0 4px 22px rgba(15,23,42,.045);
}
.rf-navbar .container{max-width:1320px}
.rf-navbar .navbar-brand{
  color:var(--rf-navy)!important;
  font-size:1.38rem!important;
  font-weight:850!important;
  letter-spacing:-.6px;
}
.rf-brand-mark{
  width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:13px;background:linear-gradient(135deg,#1d4ed8,#60a5fa);color:#fff;
  box-shadow:0 7px 18px rgba(37,99,235,.2);
}
.rf-brand-mark i{font-size:20px}
.rf-navbar .nav-link{
  color:#475569!important;font-weight:650!important;padding:.68rem .85rem!important;
  border-radius:10px;position:relative;
}
.rf-navbar .nav-link:hover, .rf-navbar .nav-link.active{
  color:var(--rf-primary)!important;background:#eff6ff;
}
.rf-navbar .nav-link.active:after{
  content:"";position:absolute;left:14px;right:14px;bottom:2px;height:2px;
  background:var(--rf-primary);border-radius:99px;
}
.rf-user-pill{
  color:#334155;font-size:.9rem;font-weight:700;padding:.25rem .65rem .25rem .3rem;
  border:1px solid var(--rf-border);background:#f8fafc;border-radius:999px;
}
.rf-avatar{
  width:31px;height:31px;border-radius:50%;display:grid;place-items:center;
  background:#eaf1ff;color:var(--rf-primary);
}

/* Shared surfaces */
.card{
  border:1px solid var(--rf-border)!important;
  border-radius:var(--rf-radius)!important;
  box-shadow:var(--rf-shadow)!important;
  background:#fff;
}
.card-header{
  background:#fff;border-bottom:1px solid var(--rf-border)!important;
  padding:1.05rem 1.25rem;
}
.btn{border-radius:11px;font-weight:750;padding:.68rem 1rem}
.btn-primary{background:var(--rf-primary);border-color:var(--rf-primary);box-shadow:0 6px 16px rgba(37,99,235,.16)}
.btn-primary:hover{background:var(--rf-primary-dark);border-color:var(--rf-primary-dark);transform:translateY(-1px)}
.btn-outline-primary{color:var(--rf-primary);border-color:#bfdbfe}
.btn-outline-primary:hover{background:#eff6ff;border-color:#93c5fd;color:var(--rf-primary-dark)}
.btn-success{background:var(--rf-success);border-color:var(--rf-success)}
.btn-danger{background:var(--rf-danger);border-color:var(--rf-danger)}
.form-label, label{font-weight:700;color:#334155;margin-bottom:.4rem}
.form-control, .form-select, .input-group-text{
  border:1px solid var(--rf-border-strong);border-radius:11px;min-height:46px;
  padding:.7rem .9rem;box-shadow:none!important;
}
.form-control:focus, .form-select:focus{
  border-color:#93c5fd;box-shadow:0 0 0 4px rgba(37,99,235,.09)!important;
}
textarea.form-control{min-height:110px}
.alert{border:1px solid transparent;border-radius:13px}
.badge{font-weight:750;border-radius:999px;padding:.45rem .7rem}

/* Master dashboard rhythm */
.dashboard-shell{padding:40px 0 70px}
.dashboard-title{font-size:clamp(1.8rem,3vw,2.2rem);font-weight:850;letter-spacing:-.8px}
.dashboard-subtitle{color:var(--rf-muted)}
.stat-card{
  position:relative;overflow:hidden;background:#fff;
  border:1px solid var(--rf-border)!important;box-shadow:var(--rf-shadow)!important;
}
.stat-card:before{
  content:"";position:absolute;right:-28px;top:-28px;width:90px;height:90px;border-radius:50%;background:#eff6ff;
}
.stat-card small{color:var(--rf-muted);font-weight:700}
.stat-card h2{font-weight:850;letter-spacing:-.8px;margin:.35rem 0 0}
.quick-action{
  display:flex;align-items:center;gap:12px;min-height:56px;padding:13px 16px;
  border:1px solid var(--rf-border);background:#fff;border-radius:14px;
  color:var(--rf-navy);text-decoration:none;font-weight:700;box-shadow:0 3px 12px rgba(15,23,42,.025);
}
.quick-action:hover{transform:translateY(-2px);border-color:#bfdbfe;background:#eff6ff;color:var(--rf-primary)}
.quick-action i{color:var(--rf-primary);font-size:1.15rem}

/* Tables */
.table-responsive{border:1px solid var(--rf-border);border-radius:14px;background:#fff}
.table{margin-bottom:0;--bs-table-bg:transparent}
.table thead th{
  background:#f8fafc;color:#64748b;font-size:.72rem;text-transform:uppercase;
  letter-spacing:.06em;font-weight:800;border-bottom:1px solid var(--rf-border);
  padding:.85rem .9rem;white-space:nowrap;
}
.table td{padding:1rem .9rem;border-color:#edf1f5;vertical-align:middle}
.table tbody tr:hover{background:#fbfdff}

/* Public listing/property cards */
.property-card, .browse-card{
  border:1px solid var(--rf-border)!important;
  border-radius:17px!important;
  background:#fff;
  box-shadow:var(--rf-shadow);
}
.property-card:hover, .browse-card:hover{box-shadow:var(--rf-shadow-lg);transform:translateY(-3px)}
.property-img{background:#eef2f7}
.filter-box, .browse-filter{
  border:1px solid var(--rf-border)!important;border-radius:17px!important;
  background:#fff;box-shadow:var(--rf-shadow);
}

/* Auth screens */
.rf-role-guest main > .container.py-5{
  padding-top:56px!important;padding-bottom:72px!important;
}
.rf-role-guest main > .container.py-5 .card{
  overflow:hidden;
  box-shadow:var(--rf-shadow-lg)!important;
}
.rf-role-guest main > .container.py-5 h2{
  font-weight:850;letter-spacing:-.6px;color:var(--rf-navy);
}

/* Owner master responsive behavior */
.owner-dashboard{background:var(--rf-bg)!important}
@media(max-width:1100px){.rf-navbar .nav-link.active:after{display:none}
  .dashboard-shell{padding-top:30px}}
@media(max-width:767.98px){.rf-navbar{padding:8px 0!important}
  .rf-navbar .navbar-brand{font-size:1.2rem!important}
  .rf-brand-mark{width:36px;height:36px}
  .dashboard-shell{padding:26px 0 52px}
  .dashboard-title{font-size:1.7rem}
  .card{border-radius:15px!important}}












/* =========================================================
   HOMEOFINDIA CAPTCHA
   ========================================================= */

.captcha-box{
    margin-top: 18px;
    margin-bottom: 18px;
}

.captcha-box > label{
    display: block;
    margin-bottom: 8px;
    color: #344054;
    font-size: 13px;
    font-weight: 700;
}

.captcha-row{
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 9px;
}

.captcha-code{
    flex: 1;
    min-height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 10px 15px;

    border: 1px solid #dbe3ef;
    border-radius: 10px;

    background:
        linear-gradient(
            135deg,
            #eef4ff,
            #f7f2ff
        );

    color: #1e3a8a;

    font-size: 19px;
    font-weight: 900;

    letter-spacing: 6px;

    user-select: none;
}

.captcha-refresh{
    width: 48px;
    height: 48px;

    border: 1px solid #dbe3ef;
    border-radius: 10px;

    background: #fff;

    color: #2563eb;

    font-size: 21px;
    font-weight: 700;

    cursor: pointer;

    transition: .18s ease;
}

.captcha-refresh:hover{
    background: #eff6ff;
    border-color: #93c5fd;
    transform: rotate(20deg);
}

.captcha-box input[name="captcha"]{
    height: 46px;
}

.captcha-error{
    margin-top: 8px;
    padding: 10px 12px;

    border: 1px solid #fecdd3;
    border-radius: 9px;

    background: #fff1f2;

    color: #be123c;

    font-size: 12px;
    font-weight: 600;
}

@media (max-width: 480px) {.captcha-code{
        font-size: 16px;
        letter-spacing: 4px;
    }

    .captcha-refresh{
        width: 44px;
        height: 44px;
    }}

/* =========================================================
   HOMEOFINDIA AUTH CAPTCHA
   ========================================================= */
.captcha-box{margin:18px 0}.captcha-label{display:block;margin-bottom:8px;color:#334155;font-size:.86rem;font-weight:700}.captcha-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.captcha-code{flex:1;min-height:50px;display:flex;align-items:center;justify-content:center;padding:9px 14px;border:1px solid #cbd5e1;border-radius:12px;background:repeating-linear-gradient(135deg,#eff6ff 0,#eff6ff 10px,#f8fafc 10px,#f8fafc 20px);color:#1e3a8a;font-size:1.08rem;font-weight:900;letter-spacing:.32em;text-indent:.32em;user-select:none}.captcha-refresh{width:50px;height:50px;display:grid;place-items:center;flex:0 0 50px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#2563eb;font-size:1.05rem;cursor:pointer;transition:.18s ease}.captcha-refresh:hover{background:#eff6ff;border-color:#93c5fd;transform:rotate(18deg)}.captcha-input{min-height:49px;border-radius:12px!important}.captcha-input:focus{border-color:#2563eb!important;box-shadow:0 0 0 4px rgba(37,99,235,.1)!important}@media(max-width:480px){.captcha-code{font-size:.95rem;letter-spacing:.22em;text-indent:.22em}.captcha-refresh{width:46px;height:46px;flex-basis:46px}}

/* =====================================================
   HOME PAGE — migrated from index.php
   ===================================================== */

/* Home page — aligned with the Owner Dashboard master UI */
.home-page{
    --ui-primary:#2563eb;
    --ui-primary-dark:#1d4ed8;
    --ui-ink:#101828;
    --ui-muted:#667085;
    --ui-border:#e4e7ec;
    --ui-surface:#fff;
    --ui-bg:#f8fafc;
    background:var(--ui-bg);
    color:var(--ui-ink);
}
.home-hero{
    position:relative;
    padding:44px 0 76px;
    background:#f8fafc;
    overflow:hidden;
}
.home-hero:before{
    content:"";
    position:absolute;
    width:520px;height:520px;
    right:-180px;top:-260px;
    border-radius:50%;
    background:rgba(37,99,235,.08);
}
.home-hero:after{
    content:"";
    position:absolute;
    width:280px;height:280px;
    left:-150px;bottom:-180px;
    border-radius:50%;
    background:rgba(37,99,235,.045);
}
.home-hero-grid{
    position:relative;z-index:1;
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);
    gap:42px;
    align-items:center;
}
.home-kicker{
    display:inline-flex;align-items:center;gap:8px;
    padding:7px 11px;
    border:1px solid #dbe5f5;
    border-radius:8px;
    background:#fff;
    color:var(--ui-primary);
    font-size:11px;font-weight:800;
    text-transform:uppercase;letter-spacing:.08em;
}
.home-kicker i{font-size:14px}
.home-hero h1{
    max-width:720px;
    margin:17px 0 13px;
    font-size:32px;line-height:120%;
    letter-spacing:-.045em;font-weight:800;
}
.home-hero h1 span{color:var(--ui-primary)}
.home-hero-copy{
    max-width:620px;margin:0;
    color:var(--ui-muted);font-size:15px;line-height:120%;
}
.home-trust{
    display:flex;flex-wrap:wrap;gap:18px;
    margin-top:19px;
    color:#475467;font-size:12px;font-weight:600;
}
.home-trust span{display:flex;align-items:center;gap:7px}
.home-trust i{color:var(--ui-primary);font-size:14px}
.home-search-card{
    position:relative;z-index:2;
    padding:22px;
    border:1px solid var(--ui-border);
    border-radius:14px;
    background:#fff;
    box-shadow:0 12px 32px rgba(16,24,40,.08);
}
.home-search-title{font-size:15px;font-weight:800;margin:0 0 3px}
.home-search-subtitle{font-size:11px;color:var(--ui-muted);margin:0 0 18px}
.home-search-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.home-field label{
    display:block;margin:0 0 6px;
    color:#344054;font-size:10px;font-weight:800;
    text-transform:uppercase;letter-spacing:.05em;
}
.home-field .control{position:relative}
.home-field .control>i{
    position:absolute;left:12px;top:50%; right:auto;
    transform:translateY(-50%);color:#98a2b3;z-index:1;
}
.home-field input, .home-field select{
    width:100%;height:44px;
    padding:0 34px 0 34px;
    border:1px solid #d0d5dd;border-radius:9px;
    background:#fff;color:#344054;font-size:12px;
    outline:0;
}
.home-field input:focus, .home-field select:focus{
    border-color:#84adff;box-shadow:0 0 0 3px rgba(37,99,235,.10)
}
.home-field .chevron{left:auto;right:12px;font-size:10px}
.home-search-button{
    grid-column:1/-1;height:45px;
    border:0;border-radius:9px;
    background:var(--ui-primary);color:#fff;
    font-size:12px;font-weight:800;
    transition:.18s ease;
}
.home-search-button:hover{background:var(--ui-primary-dark);transform:translateY(-1px)}
.home-stat-wrap{position:relative;margin-top:-34px;z-index:5}
.home-stats{
    display:grid;grid-template-columns:repeat(4,1fr);
    border:1px solid var(--ui-border);border-radius:12px;
    background:#fff;box-shadow:0 8px 24px rgba(16,24,40,.07);
}
.home-stat{
    min-height:88px;padding:18px 20px;
    display:flex;align-items:center;gap:13px;
}
.home-stat + .home-stat{border-left:1px solid #eaecf0}
.home-stat-icon{
    width:40px;height:40px;flex:0 0 40px;
    display:flex;align-items:center;justify-content:center;
    border-radius:9px;background:#eff6ff;color:var(--ui-primary);font-size:17px;
}
.home-stat strong{display:block;font-size:18px;line-height:1.2}
.home-stat small{display:block;margin-top:3px;color:var(--ui-muted);font-size:10px}
.home-section{padding:58px 0}
.home-section-header{
    display:flex;align-items:flex-end;justify-content:space-between;
    gap:20px;margin-bottom:22px;
}
.home-eyebrow{
    color:var(--ui-primary);font-size:10px;font-weight:800;
    letter-spacing:.09em;text-transform:uppercase;
}
.home-section-title{margin:5px 0 3px;font-size:26px;line-height:1.2;font-weight:800;letter-spacing:-.025em}
.home-section-description{margin:0;color:var(--ui-muted);font-size:12px}
.home-section-link{
    display:inline-flex;align-items:center;gap:6px;
    color:var(--ui-primary);font-size:11px;font-weight:800;text-decoration:none;
}
.home-section-link:hover{color:var(--ui-primary-dark)}
.home-featured .property-card{
    overflow:hidden;border:1px solid var(--ui-border)!important;
    border-radius:12px!important;
    box-shadow:0 5px 18px rgba(16,24,40,.045)!important;
    transition:.18s ease;
}
.home-featured .property-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(16,24,40,.09)!important}
.home-featured .property-img{height:205px;object-fit:cover}
.home-featured .property-card .card-body{padding:16px}
.home-featured .property-card h5{font-size:15px;font-weight:800;color:#101828}
.home-featured .property-card .card-footer{padding:0 16px 16px!important}
.home-featured .property-card .btn{border-radius:8px;font-size:10px;font-weight:800}
.home-featured .property-card .card-footer strong{font-size:14px;color:var(--ui-primary)}
.home-most-viewed .property-card{
    overflow:hidden;
    border:1px solid var(--ui-border)!important;
    border-radius:12px!important;
    box-shadow:0 5px 18px rgba(16,24,40,.045)!important;
    transition:.18s ease;
}
.home-most-viewed .property-card:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 28px rgba(16,24,40,.09)!important
}
.home-most-viewed .property-img{height:205px;object-fit:cover}
.home-most-viewed .property-card .card-body{padding:16px}
.home-most-viewed .property-card .card-footer{padding:0 16px 16px!important}
.home-popular-wrap{position:relative;height:100%}
.home-view-badge{
    position:absolute;
    left:12px;
    top:12px;
    z-index:15;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 10px;
    border-radius:999px;
    background:rgba(15,23,42,.86);
    color:#fff;
    font-size:10px;
    font-weight:800;
    box-shadow:0 5px 15px rgba(15,23,42,.18)
}

.home-type-section{
    position:relative;
}
.home-type-section .home-section-header{
    margin-bottom:18px;
}
.home-type-grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:10px;
}
.home-type{
    position:relative;
    min-width:0;
    min-height:126px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:9px;
    padding:16px 10px 14px;
    border:1px solid #e4e7ec;
    border-radius:13px;
    background:#fff;
    color:#101828;
    text-align:center;
    text-decoration:none;
    box-shadow:0 4px 14px rgba(16,24,40,.035);
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}
.home-type:hover{
    color:#101828;
    border-color:#b8cef3;
    background:#fbfdff;
    transform:translateY(-3px);
    box-shadow:0 10px 24px rgba(16,24,40,.075);
}
.home-type-icon{
    width:46px;
    height:46px;
    flex:0 0 46px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:#eff6ff;
    color:var(--ui-primary);
    font-size:20px;
    transition:transform .18s ease,background .18s ease;
}
.home-type:hover .home-type-icon{
    transform:scale(1.05);
    background:#e6f0ff;
}
.home-type strong{
    display:block;
    font-size:12px;
    line-height:1.2;
    font-weight:850;
}
.home-type small{
    display:block;
    margin-top:3px;
    color:var(--ui-muted);
    font-size:11px;
    line-height:1.35;
}
.home-type:nth-child(2) .home-type-icon{background:#f0fdf4;color:#16a34a}
.home-type:nth-child(3) .home-type-icon{background:#fff7ed;color:#ea580c}
.home-type:nth-child(4) .home-type-icon{background:#f5f3ff;color:#7c3aed}
.home-type:nth-child(5) .home-type-icon{background:#ecfeff;color:#0891b2}
.home-type:nth-child(6) .home-type-icon{background:#f8fafc;color:#475569}
.home-cta{
    position:relative;overflow:hidden;
    display:flex;align-items:center;justify-content:space-between;
    gap:25px;padding:28px 30px;
    border:1px solid #dbe5f5;border-radius:13px;
    background:#eff6ff;
}
.home-cta:after{
    content:"";position:absolute;width:240px;height:240px;
    right:-90px;top:-130px;border-radius:50%;
    background:rgba(37,99,235,.08)
}
.home-cta h2{position:relative;z-index:1;margin:0 0 6px;font-size:21px;font-weight:800}
.home-cta p{position:relative;z-index:1;margin:0;max-width:600px;color:#667085;font-size:12px;line-height:1.6}
.home-cta .btn{position:relative;z-index:2;border-radius:8px;padding:10px 16px;font-size:11px;font-weight:800}
@media (max-width:1000px){.home-hero-grid{grid-template-columns:1fr}
    .home-search-card{max-width:720px}}
@media (max-width:700px){.home-hero{padding:30px 0 65px}
    .home-hero h1{font-size:35px}
    .home-search-grid{grid-template-columns:1fr}
    .home-search-button{grid-column:auto}
    .home-stat-wrap{margin-top:-25px}
    .home-stats{grid-template-columns:1fr 1fr}
    .home-stat:nth-child(3){border-left:0;border-top:1px solid #eaecf0}
    .home-stat:nth-child(4){border-top:1px solid #eaecf0}
    .home-section{padding:45px 0}
    .home-section-header{align-items:flex-start;flex-direction:column}
    .home-cta{align-items:flex-start;flex-direction:column}}


@media (max-width:1000px){.home-type-grid{
        display:flex;
        gap:10px;
        overflow-x:auto;
        padding:2px 2px 10px;
        scroll-snap-type:x proximity;
        scrollbar-width:thin;
    }
    .home-type{
        flex:0 0 165px;
        scroll-snap-align:start;
    }}
@media (max-width:700px){.home-type{
        flex-basis:150px;
        min-height:116px;
        padding:14px 9px 12px;
    }
    .home-type-icon{
        width:42px;
        height:42px;
        flex-basis:42px;
        font-size:18px;
    }}


.home-city-section{
    position:relative;
}
.home-city-grid{
    display:grid;
    grid-template-columns:repeat(9,minmax(0,1fr));
    gap:9px;
}
.home-city{
    min-width:0;
    min-height:106px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:14px 8px;
    border:1px solid #e4e7ec;
    border-radius:12px;
    background:#fff;
    color:#101828;
    text-align:center;
    text-decoration:none;
    box-shadow:0 4px 14px rgba(16,24,40,.035);
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.home-city:hover{
    color:#101828;
    border-color:#b8cef3;
    transform:translateY(-3px);
    box-shadow:0 10px 24px rgba(16,24,40,.075);
}
.home-city-icon{
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:#eff6ff;
    color:var(--ui-primary);
    font-size:17px;
}
.home-city:nth-child(2) .home-city-icon{background:#f0fdf4;color:#16a34a}
.home-city:nth-child(3) .home-city-icon{background:#fff7ed;color:#ea580c}
.home-city:nth-child(4) .home-city-icon{background:#f5f3ff;color:#7c3aed}
.home-city:nth-child(5) .home-city-icon{background:#ecfeff;color:#0891b2}
.home-city:nth-child(6) .home-city-icon{background:#fff1f2;color:#e11d48}
.home-city:nth-child(7) .home-city-icon{background:#fefce8;color:#ca8a04}
.home-city:nth-child(8) .home-city-icon{background:#eef2ff;color:#4f46e5}
.home-city:nth-child(9) .home-city-icon{background:#f0fdfa;color:#0f766e}
.home-city strong{
    display:block;
    font-size:11px;
    line-height:1.2;
    font-weight:850;
}
.home-city small{
    display:block;
    margin-top:2px;
    color:var(--ui-muted);
    font-size:10px;
}
@media(max-width:1100px){.home-city-grid{
        display:flex;
        gap:9px;
        overflow-x:auto;
        padding:2px 2px 10px;
        scroll-snap-type:x proximity;
        scrollbar-width:thin;
    }
    .home-city{
        flex:0 0 135px;
        scroll-snap-align:start;
    }}


/* Horizontal homepage property listings */
.home-horizontal-list{
    display:grid;
    gap:16px;
}

.home-property-horizontal{
    position:relative;
    display:grid;
    grid-template-columns:300px minmax(0,1fr);
    overflow:hidden;
    border:1px solid var(--ui-border);
    border-radius:16px;
    background:#fff;
    box-shadow:0 7px 22px rgba(16,24,40,.05);
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}

.home-property-horizontal:hover{
    transform:translateY(-3px);
    border-color:#c9d8ef;
    box-shadow:0 14px 32px rgba(16,24,40,.09);
}

.home-property-horizontal-image{
    position:relative;
    display:block;
    height:230px;
    min-height:230px;
    max-height:230px;
    overflow:hidden;
    background:#e9eef5;
    align-self:center;
}

.home-property-horizontal-image-link{display:block;width:100%;height:100%;color:inherit;text-decoration:none;}

.home-property-horizontal-image img{
    width:100%;
    height:230px;
    min-height:230px;
    max-height:230px;
    display:block;
    object-fit:cover;
    object-position:center;
    transition:transform .35s ease;
}

.home-property-horizontal:hover .home-property-horizontal-image img{
    transform:scale(1.035);
}

.home-property-horizontal-placeholder{
    width:100%;
    height:230px;
    min-height:230px;
    display:grid;
    place-items:center;
    color:#94a3b8;
    font-size:3rem;
}


.home-horizontal-favorite-form{
    position:absolute;
    top:12px;
    right:12px;
    z-index:20;
    margin:0;
}
.home-horizontal-favorite{
    position:absolute;
    top:12px;
    right:12px;
    z-index:20;
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid rgba(255,255,255,.92);
    border-radius:50%;
    background:rgba(255,255,255,.96);
    color:#64748b;
    text-decoration:none;
    box-shadow:0 6px 18px rgba(15,23,42,.18);
    font-size:1rem;
    cursor:pointer;
    transition:transform .18s ease,color .18s ease,background .18s ease;
}
.home-horizontal-favorite-form .home-horizontal-favorite{
    position:static;
}
.home-horizontal-favorite:hover{
    color:#e11d48;
    background:#fff;
    transform:scale(1.07);
}
.home-horizontal-favorite.is-favorite{
    color:#fff;
    background:#e11d48;
    border-color:#e11d48;
}
.home-horizontal-favorite.is-favorite:hover{
    color:#fff;
    background:#be123c;
}

.home-horizontal-premium, .home-horizontal-views{
    position:absolute;
    top:12px;
    z-index:5;
    display:inline-flex;
    align-items:center;
    gap:5px;
    padding:7px 10px;
    border-radius:999px;
    font-size:10px;
    line-height:1;
    font-weight:850;
    box-shadow:0 5px 14px rgba(15,23,42,.14);
}

.home-horizontal-verified{left:9px;top:43px;background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
.home-horizontal-premium{
    left:12px;
    color:#92400e;
    background:rgba(255,251,235,.96);
    border:1px solid #fde68a;
}

.home-horizontal-views{
    right:60px;
    color:#fff;
    background:rgba(15,23,42,.85);
}

.home-property-horizontal-content{
    display:grid;
    grid-template-columns:minmax(0,1fr) 185px;
    gap:22px;
    padding:22px 24px;
}

.home-property-horizontal-main{
    min-width:0;
}

.home-horizontal-kicker{
    margin-bottom:6px;
    color:#fff;
    font-size:10px;
    font-weight:850;
    letter-spacing:.075em;
    text-transform:uppercase;
}

.home-horizontal-title{
    margin:0;
    font-size:20px;
    line-height:1.25;
    font-weight:850;
    letter-spacing:-.025em;
}

.home-horizontal-title a{
    color:#101828;
    text-decoration:none;
}

.home-horizontal-title a:hover{
    color:var(--ui-primary);
}

.home-horizontal-location{
    display:flex;
    align-items:flex-start;
    gap:6px;
    margin-top:7px;
    color:#667085;
    font-size:11px;
}

.home-horizontal-location i{
    margin-top:1px;
    color:#ef4444;
}

.home-horizontal-description{
    max-width:680px;
    margin:13px 0 15px;
    color:#667085;
    font-size:12px;
    line-height:1.7;
}

.home-horizontal-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.home-horizontal-meta span{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 9px;
    border:1px solid #e4e7ec;
    border-radius:8px;
    background:#f8fafc;
    color:#475467;
    font-size:10px;
    font-weight:700;
}

.home-horizontal-meta i{
    color:var(--ui-primary);
    font-size:12px;
}

.home-property-horizontal-side{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    justify-content:center;
    padding-left:20px;
    border-left:1px solid #eaecf0;
    text-align:right;
}

.home-horizontal-price{
    color:var(--ui-primary);
    font-size:22px;
    font-weight:900;
    white-space:nowrap;
}

.home-horizontal-price small{
    display:inline-block;
    margin-top:2px;
    color:#667085;
    font-size:10px;
    font-weight:650;
}

.home-horizontal-date{
    margin:13px 0 16px;
    color:#667085;
    font-size:10px;
}

.home-horizontal-btn{
    min-width:132px;
    border-radius:5px;
    font-size:11px;
    font-weight:800;
}

@media(max-width:991.98px){.home-property-horizontal{
        grid-template-columns:250px minmax(0,1fr);
    }

    .home-property-horizontal-content{
        grid-template-columns:1fr;
        gap:15px;
    }

    .home-property-horizontal-side{
        flex-direction:row;
        align-items:center;
        justify-content:space-between;
        gap:14px;
        padding:14px 0 0;
        border-left:0;
        border-top:1px solid #eaecf0;
        text-align:left;
    }

    .home-horizontal-date{
        margin:0;
    }}

@media(max-width:767.98px){.home-property-horizontal{
        grid-template-columns:1fr;
    }

    .home-property-horizontal-image, .home-property-horizontal-image img, .home-property-horizontal-placeholder{
        min-height:220px;
        height:220px;
    }

    .home-property-horizontal-content{
        padding:18px;
    }}

@media(max-width:575.98px){.home-property-horizontal-side{
        align-items:flex-start;
        flex-direction:column;
    }

    .home-horizontal-btn{
        width:100%;
    }

    .home-horizontal-title{
        font-size:18px;
    }}


/* Compact Featured + Most Viewed property sections */
.home-featured, .home-most-viewed{padding-top:34px;padding-bottom:34px}
.home-most-viewed.pt-0{padding-top:0!important}
.home-featured .home-section-header, .home-most-viewed .home-section-header{margin-bottom:14px}
.home-featured .home-horizontal-list, .home-most-viewed .home-horizontal-list{gap:10px}
.home-featured .home-property-horizontal, .home-most-viewed .home-property-horizontal{
    grid-template-columns:250px minmax(0,1fr);border-radius:12px
}
.home-featured .home-property-horizontal-image, .home-featured .home-property-horizontal-image img, .home-featured .home-property-horizontal-placeholder, .home-most-viewed .home-property-horizontal-image, .home-most-viewed .home-property-horizontal-image img, .home-most-viewed .home-property-horizontal-placeholder{
    height:225px;min-height:225px;max-height:225px
}
.home-featured .home-property-horizontal-content, .home-most-viewed .home-property-horizontal-content{
    grid-template-columns:minmax(0,1fr) 165px;gap:10px;padding:14px 18px
}
.home-featured .home-horizontal-title, .home-most-viewed .home-horizontal-title{font-size:17px}
.home-featured .home-horizontal-location, .home-most-viewed .home-horizontal-location{margin-top:4px}
.home-featured .home-horizontal-description, .home-most-viewed .home-horizontal-description{
    margin:2px 0 9px;font-size:11px;line-height:1.45
}
.home-featured .home-horizontal-meta, .home-most-viewed .home-horizontal-meta{gap:6px}
.home-featured .home-horizontal-meta span, .home-most-viewed .home-horizontal-meta span{
    padding:5px 7px;font-size:9px
}
.home-featured .home-property-horizontal-side, .home-most-viewed .home-property-horizontal-side{padding-left:15px}
.home-featured .home-horizontal-price, .home-most-viewed .home-horizontal-price{font-size:19px}
.home-featured .home-horizontal-date, .home-most-viewed .home-horizontal-date{margin:8px 0 10px}
.home-featured .home-horizontal-btn, .home-most-viewed .home-horizontal-btn{
    min-width:120px;padding:6px 10px;font-size:10px
}
.home-featured .home-horizontal-favorite, .home-most-viewed .home-horizontal-favorite{
    width:34px;height:34px;top:9px;right:9px
}
.home-featured .home-horizontal-favorite-form, .home-most-viewed .home-horizontal-favorite-form{top:9px;right:9px}
.home-featured .home-horizontal-premium, .home-featured .home-horizontal-views, .home-most-viewed .home-horizontal-premium, .home-most-viewed .home-horizontal-views{
    top:9px;padding:5px 8px;font-size:9px
}
.home-featured .home-horizontal-premium, .home-most-viewed .home-horizontal-premium{left:9px}
.home-featured .home-horizontal-views, .home-most-viewed .home-horizontal-views{right:50px}
@media(max-width:991.98px){.home-featured .home-property-horizontal, .home-most-viewed .home-property-horizontal{
        grid-template-columns:220px minmax(0,1fr)
    }
    .home-featured .home-property-horizontal-content, .home-most-viewed .home-property-horizontal-content{
        grid-template-columns:1fr
    }}
@media(max-width:767.98px){.home-featured, .home-most-viewed{padding-bottom:28px}
    .home-featured .home-property-horizontal, .home-most-viewed .home-property-horizontal{grid-template-columns:1fr}
    .home-featured .home-property-horizontal-image, .home-featured .home-property-horizontal-image img, .home-featured .home-property-horizontal-placeholder, .home-most-viewed .home-property-horizontal-image, .home-most-viewed .home-property-horizontal-image img, .home-most-viewed .home-property-horizontal-placeholder{
        height:180px;min-height:180px;max-height:180px
    }}

/* Featured + Most Viewed: two listings per row (50% each) */
.home-featured .home-horizontal-list, .home-most-viewed .home-horizontal-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.home-featured .home-property-horizontal, .home-most-viewed .home-property-horizontal{
    grid-template-columns:190px minmax(0,1fr);
    min-width:0;
}
.home-featured .home-property-horizontal-content, .home-most-viewed .home-property-horizontal-content{
    grid-template-columns:minmax(0,1fr);
}
.home-featured .home-property-horizontal-side, .home-most-viewed .home-property-horizontal-side{
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:10px 0 0;
    border-left:0;
    border-top:1px solid #eaecf0;
    text-align:left;
}
.home-featured .home-horizontal-date, .home-most-viewed .home-horizontal-date{display:none}
@media(max-width:1199.98px){.home-featured .home-horizontal-list, .home-most-viewed .home-horizontal-list{grid-template-columns:1fr}}


.home-horizontal-kicker{
    position: relative;
    height: 20px;
    line-height: 20px;
    background: #168d42;
    padding: 0 8px;
    width: auto;
    display: inline-block;
}

.home-horizontal-kicker:before{
    content: "";
    width: 0;
    height: 0;
    border-width: 10px 5px;
    border-style: solid;
    border-color: #168d42 #168d42 #168d42 transparent;
    position: absolute;
    left: -10px;
}

.home-horizontal-kicker:after{
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-left: 10px solid #168d42;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    right: -10px;
}


/* =========================================================
   HOME PAGE — FULL RESPONSIVE PATCH
   Keeps all existing PHP/database functionality unchanged.
   ========================================================= */

/* Prevent horizontal overflow caused by long titles, badges or controls */
.home-page, .home-page *{
    box-sizing:border-box;
}
.home-page{
    overflow-x:hidden;
}
.home-page img{
    max-width:100%;
}
.home-page .container, .home-page .container-fluid{
    min-width:0;
}

/* Large tablets / small laptops */
@media(max-width:1199.98px){.home-hero-grid{
        grid-template-columns:minmax(0,1fr) minmax(330px,.82fr);
        gap:28px;
    }
    .home-hero h1{
        font-size:30px;
    }
    .home-type-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
    .home-featured .home-horizontal-list, .home-most-viewed .home-horizontal-list{
        grid-template-columns:1fr;
    }}

/* Tablet */
@media(max-width:991.98px){.home-hero{
        padding:46px 0 72px;
    }
    .home-hero-grid{
        grid-template-columns:1fr;
        gap:26px;
    }
    .home-search-card{
        width:100%;
        max-width:none;
    }
    .home-stats{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .home-stat:nth-child(3){
        border-left:0;
        border-top:1px solid #eaecf0;
    }
    .home-stat:nth-child(4){
        border-top:1px solid #eaecf0;
    }
    .home-type-grid{
        display:grid;
        grid-template-columns:repeat(3,minmax(0,1fr));
        overflow:visible;
        padding:0;
    }
    .home-type{
        min-width:0;
        width:100%;
        flex:auto;
    }

    .home-property-horizontal, .home-featured .home-property-horizontal, .home-most-viewed .home-property-horizontal{
        grid-template-columns:220px minmax(0,1fr);
        height:auto!important;
        min-height:0!important;
    }

    .home-property-horizontal-content, .home-featured .home-property-horizontal-content, .home-most-viewed .home-property-horizontal-content{
        grid-template-columns:1fr;
        gap:10px;
    }

    .home-property-horizontal-side, .home-featured .home-property-horizontal-side, .home-most-viewed .home-property-horizontal-side{
        flex-direction:row;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        padding:10px 0 0;
        border-left:0;
        border-top:1px solid #eaecf0;
        text-align:left;
    }

    .home-featured .home-property-horizontal-image, .home-featured .home-property-horizontal-image img, .home-featured .home-property-horizontal-placeholder, .home-most-viewed .home-property-horizontal-image, .home-most-viewed .home-property-horizontal-image img, .home-most-viewed .home-property-horizontal-placeholder{
        height:100%!important;
        min-height:190px!important;
        max-height:none!important;
    }}

/* Mobile / landscape phone */
@media(max-width:767.98px){.home-hero{
        padding:30px 0 58px;
    }
    .home-hero:before{
        width:330px;
        height:330px;
        right:-180px;
        top:-170px;
    }
    .home-kicker{
        padding:6px 9px;
        font-size:9px;
        letter-spacing:.05em;
    }
    .home-hero h1{
        margin:14px 0 10px;
        font-size:27px;
        line-height:1.14;
        letter-spacing:-.035em;
    }
    .home-hero-copy{
        font-size:13px;
        line-height:1.55;
    }
    .home-trust{
        gap:10px 14px;
        margin-top:15px;
        font-size:10px;
    }
    .home-search-card{
        padding:16px;
        border-radius:12px;
    }
    .home-search-subtitle{
        margin-bottom:14px;
    }
    .home-search-grid{
        grid-template-columns:1fr;
        gap:10px;
    }
    .home-search-button{
        grid-column:auto;
        width:100%;
    }

    .home-stat-wrap{
        margin-top:-22px;
    }
    .home-stat{
        min-height:78px;
        padding:13px 12px;
        gap:10px;
    }
    .home-stat-icon{
        width:36px;
        height:36px;
        flex-basis:36px;
        font-size:15px;
    }
    .home-stat strong{
        font-size:16px;
    }
    .home-stat small{
        font-size:9px;
    }

    .home-section, .home-featured, .home-most-viewed{
        padding-top:34px;
        padding-bottom:34px;
    }
    .home-section-header{
        align-items:flex-start;
        flex-direction:column;
        gap:8px;
        margin-bottom:15px;
    }
    .home-section-title{
        font-size:21px;
    }
    .home-section-description{
        font-size:11px;
        line-height:1.5;
    }

    .home-type-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:9px;
    }
    .home-type{
        min-height:108px;
        padding:12px 8px;
    }
    .home-type-icon{
        width:40px;
        height:40px;
        flex-basis:40px;
        font-size:17px;
    }

    .home-horizontal-list, .home-featured .home-horizontal-list, .home-most-viewed .home-horizontal-list{
        grid-template-columns:1fr;
        gap:12px;
    }

    .home-property-horizontal, .home-featured .home-property-horizontal, .home-most-viewed .home-property-horizontal{
        display:grid;
        grid-template-columns:1fr!important;
        width:100%;
        height:auto!important;
        min-height:0!important;
        overflow:hidden;
    }

    .home-property-horizontal-image, .home-property-horizontal-image img, .home-property-horizontal-placeholder, .home-featured .home-property-horizontal-image, .home-featured .home-property-horizontal-image img, .home-featured .home-property-horizontal-placeholder, .home-most-viewed .home-property-horizontal-image, .home-most-viewed .home-property-horizontal-image img, .home-most-viewed .home-property-horizontal-placeholder{
        width:100%;
        height:190px!important;
        min-height:190px!important;
        max-height:190px!important;
        object-fit:cover;
    }

    .home-property-horizontal-content, .home-featured .home-property-horizontal-content, .home-most-viewed .home-property-horizontal-content{
        padding:14px!important;
        grid-template-columns:1fr!important;
    }
    .home-horizontal-title, .home-featured .home-horizontal-title, .home-most-viewed .home-horizontal-title{
        font-size:16px;
        line-height:1.35;
        overflow-wrap:anywhere;
    }
    .home-horizontal-description{
        margin:8px 0 10px;
        font-size:10.5px;
        line-height:1.55;
    }
    .home-horizontal-meta{
        gap:5px;
    }
    .home-horizontal-meta span{
        padding:5px 7px;
        font-size:9px;
    }
    .home-property-horizontal-side, .home-featured .home-property-horizontal-side, .home-most-viewed .home-property-horizontal-side{
        flex-direction:row;
        align-items:center;
        justify-content:space-between;
        gap:10px;
        padding:10px 0 0!important;
        border-left:0;
        border-top:1px solid #eaecf0;
    }
    .home-horizontal-price, .home-featured .home-horizontal-price, .home-most-viewed .home-horizontal-price{
        font-size:17px;
    }
    .home-horizontal-btn, .home-featured .home-horizontal-btn, .home-most-viewed .home-horizontal-btn{
        width:auto;
        min-width:108px;
    }

    .home-cta{
        padding:21px 18px;
        border-radius:12px;
        align-items:flex-start;
        flex-direction:column;
        gap:15px;
    }
    .home-cta h2{
        font-size:18px;
    }
    .home-cta .btn{
        width:100%;
        text-align:center;
    }}

/* Small mobile */
@media(max-width:575.98px){.home-page .container{
        padding-left:14px;
        padding-right:14px;
    }
    .home-hero{
        padding-top:24px;
    }
    .home-hero h1{
        font-size:24px;
    }
    .home-trust{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:9px;
    }
    .home-trust span{
        min-width:0;
        align-items:flex-start;
    }

    .home-search-card{
        padding:14px;
    }
    .home-field input, .home-field select{
        height:42px;
        font-size:11px;
    }

    .home-stats{
        grid-template-columns:1fr 1fr;
    }
    .home-stat{
        min-width:0;
        padding:11px 9px;
    }
    .home-stat-icon{
        width:32px;
        height:32px;
        flex-basis:32px;
        font-size:14px;
    }
    .home-stat strong{
        font-size:14px;
    }
    .home-stat small{
        line-height:1.3;
    }

    .home-type-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .home-property-horizontal-side, .home-featured .home-property-horizontal-side, .home-most-viewed .home-property-horizontal-side{
        align-items:flex-start;
        flex-direction:column;
    }
    .home-horizontal-btn, .home-featured .home-horizontal-btn, .home-most-viewed .home-horizontal-btn{
        width:100%;
    }

    .home-horizontal-premium, .home-horizontal-views, .home-horizontal-favorite, .home-featured .home-horizontal-premium, .home-featured .home-horizontal-views, .home-most-viewed .home-horizontal-premium, .home-most-viewed .home-horizontal-views{
        font-size:8px;
    }}

/* Very small phones */
@media(max-width:390px){.home-hero h1{
        font-size:22px;
    }
    .home-trust{
        grid-template-columns:1fr;
    }
    .home-stats{
        grid-template-columns:1fr;
    }
    .home-stat + .home-stat{
        border-left:0!important;
        border-top:1px solid #eaecf0;
    }
    .home-type-grid{
        grid-template-columns:1fr 1fr;
    }
    .home-section-title{
        font-size:19px;
    }}



/* =========================================================
   HomeofIndia — Production Colorful Hero Override
   CSS only / no hero image
   ========================================================= */
.home-hero{
    position:relative;
    padding:48px 0 78px;
    overflow:hidden;
    isolation:isolate;
    background:
        radial-gradient(circle at 8% 20%,rgba(255,153,51,.20) 0,rgba(255,153,51,.08) 18%,transparent 36%),
        radial-gradient(circle at 88% 15%,rgba(37,99,235,.20) 0,rgba(37,99,235,.07) 22%,transparent 42%),
        radial-gradient(circle at 78% 92%,rgba(22,163,74,.15) 0,rgba(22,163,74,.05) 22%,transparent 40%),
        linear-gradient(135deg,#fffaf3 0%,#f5f9ff 42%,#f2fbf6 100%);
}
.home-hero:before{
    content:"";
    position:absolute;
    z-index:-1;
    width:430px;
    height:430px;
    right:-145px;
    top:-230px;
    border-radius:50%;
    background:linear-gradient(135deg,rgba(37,99,235,.14),rgba(79,70,229,.05));
    border:1px solid rgba(37,99,235,.08);
}
.home-hero:after{
    content:"";
    position:absolute;
    z-index:-1;
    width:310px;
    height:310px;
    left:-165px;
    bottom:-175px;
    border-radius:50%;
    background:linear-gradient(135deg,rgba(255,153,51,.16),rgba(22,163,74,.10));
    border:1px solid rgba(22,163,74,.07);
}
.home-hero-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);
    gap:42px;
    align-items:center;
}
.home-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 12px;
    border:1px solid rgba(37,99,235,.18);
    border-radius:999px;
    background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(239,246,255,.92));
    color:#1d4ed8;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.07em;
    box-shadow:0 5px 16px rgba(37,99,235,.07);
}
.home-kicker i{color:#f97316;font-size:14px}
.home-hero h1{
    max-width:720px;
    margin:18px 0 14px;
    color:#101828;
    font-size:34px;
    line-height:1.15;
    letter-spacing:-.045em;
    font-weight:850;
}
.home-hero h1 span{
    color:#2563eb;
    background:linear-gradient(90deg,#2563eb 0%,#4f46e5 45%,#16a34a 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}
.home-hero-copy{
    max-width:620px;
    margin:0;
    color:#475467;
    font-size:15px;
    line-height:1.65;
}
.home-trust{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:20px;
    color:#344054;
    font-size:11px;
    font-weight:700;
}
.home-trust span{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:7px 10px;
    border:1px solid rgba(37,99,235,.10);
    border-radius:8px;
    background:rgba(255,255,255,.72);
    box-shadow:0 3px 10px rgba(16,24,40,.035);
}
.home-trust span:nth-child(1) i{color:#2563eb}
.home-trust span:nth-child(2) i{color:#16a34a}
.home-trust span:nth-child(3) i{color:#f97316}
.home-trust span:nth-child(4) i{color:#7c3aed}
.home-trust i{font-size:14px}
.home-search-card{
    position:relative;
    z-index:3;
    padding:23px;
    border:1px solid rgba(255,255,255,.90);
    border-radius:16px;
    background:rgba(255,255,255,.90);
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
    box-shadow:0 20px 50px rgba(16,24,40,.10),0 4px 12px rgba(37,99,235,.05);
}
.home-search-card:before{
    content:"";
    position:absolute;
    left:20px;
    right:20px;
    top:0;
    height:3px;
    border-radius:0 0 10px 10px;
    background:linear-gradient(90deg,#ff9933 0%,#2563eb 48%,#16a34a 100%);
}
.home-search-title{margin:0 0 3px;color:#101828;font-size:16px;font-weight:850}
.home-search-subtitle{margin:0 0 18px;color:#667085;font-size:11px}
.home-field .control>i{color:#2563eb}
.home-field input, .home-field select{
    border-color:#d7deea;
    transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.home-field input:hover, .home-field select:hover{border-color:#a9bde0}
.home-field input:focus, .home-field select:focus{
    border-color:#60a5fa;
    background:#fff;
    box-shadow:0 0 0 3px rgba(37,99,235,.10);
}
.home-field .chevron{color:#667085}
.home-search-button{
    grid-column:1/-1;
    height:46px;
    border:0;
    border-radius:9px;
    background:linear-gradient(90deg,#2563eb 0%,#4f46e5 55%,#16a34a 100%);
    color:#fff;
    font-size:12px;
    font-weight:850;
    box-shadow:0 8px 20px rgba(37,99,235,.20);
    transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.home-search-button:hover{
    color:#fff;
    background:linear-gradient(90deg,#1d4ed8 0%,#4338ca 55%,#15803d 100%);
    transform:translateY(-2px);
    filter:saturate(1.08);
    box-shadow:0 12px 25px rgba(37,99,235,.25);
}
@media(max-width:1000px){.home-hero-grid{grid-template-columns:1fr;gap:28px}
    .home-search-card{width:100%;max-width:720px}}
@media(max-width:767.98px){.home-hero{padding:32px 0 60px}
    .home-hero:before{width:300px;height:300px;right:-160px;top:-150px}
    .home-hero:after{width:220px;height:220px;left:-130px;bottom:-130px}
    .home-hero h1{margin:14px 0 11px;font-size:28px;line-height:1.15}
    .home-hero-copy{font-size:13px;line-height:1.55}
    .home-trust{margin-top:16px;gap:8px}
    .home-search-card{padding:17px;border-radius:13px}
    .home-search-grid{grid-template-columns:1fr;gap:10px}
    .home-search-button{grid-column:auto;width:100%}}
@media(max-width:575.98px){.home-hero{padding-top:25px}
    .home-hero h1{font-size:25px}
    .home-kicker{padding:6px 9px;font-size:9px;letter-spacing:.05em}
    .home-trust{display:grid;grid-template-columns:1fr 1fr}
    .home-trust span{min-width:0;padding:6px 8px}
    .home-search-card{padding:14px}
    .home-field input, .home-field select{height:42px;font-size:11px}
    .home-search-button{height:44px}}
@media(max-width:390px){.home-hero h1{font-size:23px}
    .home-trust{grid-template-columns:1fr}}

/* HomeofIndia — colorful professional white footer */
.rf-footer{
    margin-top:18px;
    background:
        radial-gradient(circle at 8% 12%,rgba(37,99,235,.08),transparent 24%),
        radial-gradient(circle at 92% 10%,rgba(124,58,237,.08),transparent 22%),
        #ffffff;
    color:#475467;
    border-top:1px solid #dfe7f3;
    box-shadow:0 -8px 28px rgba(16,24,40,.035);
}
.rf-footer .footer-container{
    width:min(100% - 32px,1240px);
    margin:auto;
    padding:28px 0 0;
}
.rf-footer .footer-grid{
    display:grid;
    grid-template-columns:1.45fr .75fr .9fr 1.05fr;
    gap:32px;
    align-items:start;
}
.rf-footer .footer-column{
    position:relative;
}
.rf-footer .footer-column h3,
.rf-footer .footer-newsletter h3{
    position:relative;
    margin:0 0 10px;
    padding-bottom:6px;
    color:#101828;
    font-size:14px;
    font-weight:850;
}
.rf-footer .footer-column h3:after,
.rf-footer .footer-newsletter h3:after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:34px;
    height:3px;
    border-radius:999px;
    background:linear-gradient(90deg,#2563eb,#7c3aed);
}
.rf-footer .footer-column p,
.rf-footer .footer-newsletter p,
.rf-footer .contact-item p{
    margin:0;
    color:#475467;
    font-size:11px;
    line-height:1.7;
}

/* Brand */
.rf-footer .footer-brand{
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
}
.rf-footer .footer-logo{
    display:inline-flex;
    align-items:center;
    width:auto;
    max-width:230px;
    text-decoration:none;
}
.rf-footer .footer-logo-img{
    display:block;
    width:auto;
    max-width:195px;
    height:52px;
    object-fit:contain;
    object-position:left center;
}
.rf-footer .footer-brand p{
    max-width:350px;
    margin-top:7px;
}

/* Social */
.rf-footer .footer-social{
    display:flex;
    gap:8px;
    margin-top:11px;
}
.rf-footer .footer-social a{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border-radius:10px;
    font-size:11px;
    font-weight:850;
    text-decoration:none;
    transition:.18s ease;
}
.rf-footer .footer-social a:nth-child(1){background:#eef4ff;color:#175cd3;border:1px solid #c7d7fe}
.rf-footer .footer-social a:nth-child(2){background:#fff0f6;color:#c11574;border:1px solid #fbcfe8}
.rf-footer .footer-social a:nth-child(3){background:#f2f4f7;color:#101828;border:1px solid #d0d5dd}
.rf-footer .footer-social a:nth-child(4){background:#ecfdf3;color:#067647;border:1px solid #abefc6}
.rf-footer .footer-social a:hover{
    transform:translateY(-2px);
    box-shadow:0 6px 14px rgba(16,24,40,.08);
}

/* Navigation */
.rf-footer ul{list-style:none;margin:0;padding:0}
.rf-footer li + li{margin-top:0}
.rf-footer li a,
.rf-footer .footer-legal a{
    position:relative;
    color:#344054;
    font-size:11px;
    text-decoration:none;
    transition:.15s ease;
}
.rf-footer li a:before{
    content:"›";
    margin-right:6px;
    color:#2563eb;
    font-weight:900;
}
.rf-footer li a:hover,
.rf-footer .footer-legal a:hover{color:#175cd3}

/* Contact */
.rf-footer .contact-item{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:5px 0;
}
.rf-footer .contact-item span{
    width:25px;
    height:25px;
    flex:0 0 25px;
    display:grid;
    place-items:center;
    border-radius:10px;
    font-size:12px;
}
.rf-footer .contact-item:nth-child(2) span{background:#eef4ff;color:#2563eb}
.rf-footer .contact-item:nth-child(3) span{background:#ecfdf3;color:#16a34a}
.rf-footer .contact-item:nth-child(4) span{background:#fff7ed;color:#ea580c}

/* Newsletter */
.rf-footer .footer-newsletter{
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:minmax(220px,.75fr) minmax(340px,1.25fr);
    align-items:center;
    gap:28px;
    margin-top:22px;
    padding:15px 18px;
    border:1px solid #d7e3fb;
    border-radius:16px;
    background:linear-gradient(115deg,#eef5ff 0%,#fff 46%,#f7f1ff 100%);
    box-shadow:0 8px 24px rgba(37,99,235,.06);
}
.rf-footer .footer-newsletter:after{
    content:"";
    position:absolute;
    width:150px;
    height:150px;
    right:-55px;
    top:-80px;
    border-radius:50%;
    background:rgba(124,58,237,.06);
}
.rf-footer .footer-newsletter h3{margin-bottom:5px}
.rf-footer .newsletter-form{
    position:relative;
    z-index:1;
    display:flex;
    gap:8px;
}
.rf-footer .newsletter-form input{
    flex:1;
    min-height:43px;
    padding:10px 13px;
    border:1px solid #cfd8e6;
    border-radius:10px;
    outline:none;
    background:#fff;
    color:#101828;
    font-size:11px;
    box-shadow:0 2px 6px rgba(16,24,40,.03);
}
.rf-footer .newsletter-form input:focus{
    border-color:#84adff;
    box-shadow:0 0 0 3px rgba(37,99,235,.08);
}
.rf-footer .newsletter-form button{
    min-width:114px;
    min-height:43px;
    padding:9px 15px;
    border:0;
    border-radius:10px;
    background:linear-gradient(135deg,#2563eb,#7c3aed);
    color:#fff;
    font-size:11px;
    font-weight:850;
    box-shadow:0 7px 16px rgba(37,99,235,.18);
    transition:.18s ease;
}
.rf-footer .newsletter-form button:hover{
    transform:translateY(-1px);
    box-shadow:0 9px 20px rgba(37,99,235,.22);
}
.rf-footer .subscription-message{
    grid-column:1/-1;
    position:relative;
    z-index:1;
    padding:9px 11px;
    border-radius:9px;
    font-size:10px;
}
.rf-footer .subscription-message.success{
    border:1px solid #abefc6;
    background:#ecfdf3;
    color:#067647;
}
.rf-footer .subscription-message.error{
    border:1px solid #fecdca;
    background:#fef3f2;
    color:#b42318;
}

/* Bottom */
.rf-footer .footer-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-top:18px;
    padding:13px 0 15px;
    border-top:1px solid #e4e7ec;
}
.rf-footer .footer-bottom p{
    margin:0;
    color:#667085;
    font-size:10px;
}
.rf-footer .footer-legal{
    display:flex;
    gap:20px;
}
.rf-footer .footer-legal a{
    padding:5px 0;
    border-radius:7px;
}
.rf-footer .footer-legal a:hover{
    background:#eef4ff;
}

@media(max-width:980px){
    .rf-footer .footer-grid{
        grid-template-columns:1.2fr 1fr 1fr;
        gap:30px;
    }
    .rf-footer .footer-contact{grid-column:1/-1}
}
@media(max-width:700px){
    .rf-footer .footer-container{
        width:min(100% - 22px,1240px);
        padding-top:22px;
    }
    .rf-footer .footer-grid{
        grid-template-columns:1fr 1fr;
        gap:20px 18px;
    }
    .rf-footer .footer-brand,
    .rf-footer .footer-contact{grid-column:1/-1}
    .rf-footer .footer-logo-img{
        max-width:180px;
        height:50px;
    }
    .rf-footer .footer-newsletter{
        grid-template-columns:1fr;
        gap:14px;
        padding:14px;
    }
    .rf-footer .newsletter-form{flex-direction:column}
    .rf-footer .newsletter-form button{width:100%}
    .rf-footer .footer-bottom{
        align-items:flex-start;
        flex-direction:column;
    }
}
@media(max-width:430px){
    .rf-footer .footer-grid{grid-template-columns:1fr}
    .rf-footer .footer-brand,
    .rf-footer .footer-contact{grid-column:auto}
}

/* Decorative top border */
footer.site-footer.rf-footer {
    position: relative;
}

.site-footer::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(
        90deg,
        #2563eb,
        #38bdf8,
        #2563eb
    );
}