/*
Theme Name: PropertyConsultant4U
Theme URI: https://propertyconsultant4u.com/
Author: PropertyConsultant4U
Author URI: https://propertyconsultant4u.com/
Description: A modern, responsive real-estate WordPress theme for PropertyConsultant4U. Built with an orange-and-green palette, custom property listings, advanced search, city/area pages and full responsive design. Designed for the Pakistani real-estate market.
Version: 1.0.0
Requires at least: 5.8
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: propertyconsultant4u
Tags: real-estate, property, responsive, custom-menu, custom-logo, featured-images, threaded-comments, translation-ready
*/

:root{
    --pc-orange:#f57c00; --pc-orange-dark:#e65100; --pc-orange-light:#ffb74d;
    --pc-green:#2e7d32; --pc-green-dark:#1b5e20; --pc-green-light:#66bb6a;
    --pc-white:#fff; --pc-bg:#fafafa; --pc-text:#222831; --pc-muted:#6c757d;
    --pc-border:#e5e7eb; --pc-shadow:0 4px 18px rgba(0,0,0,.08);
    --pc-radius:10px; --pc-transition:all .25s ease-in-out; --pc-container:1200px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Segoe UI',system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;color:var(--pc-text);background:var(--pc-bg);line-height:1.6;font-size:16px;-webkit-font-smoothing:antialiased;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--pc-orange);text-decoration:none;transition:var(--pc-transition);}
a:hover{color:var(--pc-green);}
h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.25;color:#1a1a1a;margin-bottom:.6em;}
h1{font-size:2.4rem;}h2{font-size:1.9rem;}h3{font-size:1.4rem;}h4{font-size:1.15rem;}
p{margin-bottom:1em;}
.container{max-width:var(--pc-container);margin:0 auto;padding:0 20px;}

.site-header{background:var(--pc-white);box-shadow:0 2px 10px rgba(0,0,0,.06);position:sticky;top:0;z-index:1000;}
.topbar{background:linear-gradient(90deg,var(--pc-green) 0%,var(--pc-green-dark) 100%);color:#fff;font-size:.85rem;padding:8px 0;}
.topbar .container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;}
.topbar a{color:#fff;}
.topbar a:hover{color:var(--pc-orange-light);}
.topbar .topbar-info span{margin-right:18px;}
.topbar .topbar-social a{margin-left:10px;}

.header-main{padding:14px 0;}
.header-main .container{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.site-branding .site-title{font-size:1.6rem;margin:0;}
.site-branding .site-title a{color:var(--pc-green-dark);font-weight:800;letter-spacing:-.5px;}
.site-branding .site-title a span{color:var(--pc-orange);}
.site-branding .site-description{font-size:.78rem;color:var(--pc-muted);}

.main-navigation{flex-grow:1;}
.main-navigation ul{list-style:none;display:flex;justify-content:center;gap:6px;margin:0;padding:0;flex-wrap:wrap;}
.main-navigation li{position:relative;}
.main-navigation a{display:block;padding:10px 16px;color:#1a1a1a;font-weight:600;font-size:.95rem;border-radius:6px;}
.main-navigation a:hover,.main-navigation .current-menu-item > a,.main-navigation .current_page_item > a{background:var(--pc-orange);color:#fff;}
.main-navigation li:hover > ul{display:block;}
.main-navigation ul ul{display:none;position:absolute;top:100%;left:0;background:#fff;box-shadow:var(--pc-shadow);border-radius:8px;min-width:220px;padding:8px;z-index:99;flex-direction:column;}
.main-navigation ul ul li{width:100%;}
.main-navigation ul ul a{padding:8px 12px;font-weight:500;}
.header-cta .btn{background:var(--pc-orange);color:#fff;padding:10px 22px;border-radius:30px;font-weight:600;}
.header-cta .btn:hover{background:var(--pc-green);color:#fff;}
.menu-toggle{display:none;background:none;border:0;font-size:1.6rem;color:var(--pc-green-dark);cursor:pointer;}

.hero{background:linear-gradient(135deg,rgba(46,125,50,.92) 0%,rgba(245,124,0,.85) 100%);color:#fff;padding:90px 0 110px;text-align:center;}
.hero h1{font-size:3rem;color:#fff;margin-bottom:.4em;text-shadow:0 2px 8px rgba(0,0,0,.2);}
.hero .lead{font-size:1.2rem;max-width:700px;margin:0 auto 30px;color:#fff;opacity:.95;}

.property-search{background:#fff;border-radius:var(--pc-radius);box-shadow:var(--pc-shadow);padding:18px;max-width:980px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);gap:10px;}
.property-search select,.property-search input{width:100%;padding:12px 14px;border:1px solid var(--pc-border);border-radius:8px;background:#fff;font-size:.95rem;color:#222;}
.property-search button{background:var(--pc-orange);color:#fff;border:0;padding:12px;border-radius:8px;font-weight:700;cursor:pointer;font-size:1rem;}
.property-search button:hover{background:var(--pc-green);}

.section{padding:70px 0;}
.section-light{background:#fff;}
.section-title{text-align:center;margin-bottom:40px;}
.section-title h2{position:relative;display:inline-block;}
.section-title h2:after{content:"";display:block;height:4px;width:70px;background:var(--pc-orange);border-radius:2px;margin:10px auto 0;}
.section-title p{color:var(--pc-muted);max-width:680px;margin:6px auto 0;}

.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.property-card{background:#fff;border-radius:var(--pc-radius);overflow:hidden;box-shadow:var(--pc-shadow);transition:var(--pc-transition);position:relative;display:flex;flex-direction:column;}
.property-card:hover{transform:translateY(-6px);box-shadow:0 10px 25px rgba(0,0,0,.12);}
.property-card .thumb{position:relative;height:220px;overflow:hidden;background:linear-gradient(135deg,var(--pc-green-light),var(--pc-orange-light));}
.property-card .thumb img{height:100%;width:100%;object-fit:cover;transition:transform .4s;}
.property-card:hover .thumb img{transform:scale(1.05);}
.property-card .badge{position:absolute;top:12px;left:12px;background:var(--pc-orange);color:#fff;padding:5px 12px;border-radius:20px;font-size:.78rem;font-weight:600;text-transform:uppercase;}
.property-card .badge.rent{background:var(--pc-green);}
.property-card .price{position:absolute;bottom:12px;left:12px;background:rgba(0,0,0,.75);color:#fff;padding:6px 14px;border-radius:20px;font-weight:700;font-size:.95rem;}
.property-card .body{padding:18px;flex-grow:1;display:flex;flex-direction:column;}
.property-card h3{font-size:1.15rem;margin-bottom:6px;}
.property-card h3 a{color:#1a1a1a;}
.property-card h3 a:hover{color:var(--pc-orange);}
.property-card .location{color:var(--pc-muted);font-size:.88rem;margin-bottom:12px;}
.property-card .meta{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid var(--pc-border);padding-top:12px;margin-top:auto;font-size:.85rem;color:#444;}
.property-card .meta span{display:inline-flex;align-items:center;gap:4px;}
.property-card .view-link{margin-top:12px;display:inline-block;color:var(--pc-green);font-weight:600;font-size:.9rem;}
.property-card .view-link:hover{color:var(--pc-orange);}

.types-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.type-card{background:#fff;border-radius:var(--pc-radius);padding:30px 20px;text-align:center;box-shadow:var(--pc-shadow);transition:var(--pc-transition);border-top:4px solid var(--pc-orange);}
.type-card:nth-child(even){border-top-color:var(--pc-green);}
.type-card:hover{transform:translateY(-4px);}
.type-card .icon{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,var(--pc-orange),var(--pc-green));color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin:0 auto 14px;}
.type-card h3{margin-bottom:6px;}
.type-card a{color:#1a1a1a;}
.type-card .count{color:var(--pc-muted);font-size:.85rem;}

.areas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.area-card{position:relative;border-radius:var(--pc-radius);overflow:hidden;height:200px;box-shadow:var(--pc-shadow);transition:var(--pc-transition);background:linear-gradient(135deg,var(--pc-green) 0%,var(--pc-orange) 100%);color:#fff;display:flex;align-items:flex-end;padding:18px;}
.area-card:hover{transform:translateY(-4px);}
.area-card .area-overlay{position:relative;z-index:2;}
.area-card h3{color:#fff;margin:0;font-size:1.3rem;}
.area-card p{color:rgba(255,255,255,.9);margin:4px 0 0;font-size:.85rem;}
.area-card a{position:absolute;inset:0;z-index:3;}

.cta-strip{background:linear-gradient(90deg,var(--pc-green-dark),var(--pc-orange-dark));color:#fff;text-align:center;padding:50px 20px;border-radius:var(--pc-radius);margin:50px 0;}
.cta-strip h2{color:#fff;margin-bottom:8px;}
.cta-strip p{margin-bottom:18px;opacity:.92;}
.cta-strip .btn{background:#fff;color:var(--pc-orange-dark);padding:12px 28px;border-radius:30px;font-weight:700;display:inline-block;}
.cta-strip .btn:hover{background:var(--pc-green-light);color:#fff;}

.features{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.feature{text-align:center;padding:28px 18px;background:#fff;border-radius:var(--pc-radius);box-shadow:var(--pc-shadow);}
.feature .icon{width:60px;height:60px;background:var(--pc-orange);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;font-size:1.4rem;}
.feature:nth-child(even) .icon{background:var(--pc-green);}
.feature h4{margin-bottom:6px;}
.feature p{color:var(--pc-muted);font-size:.92rem;margin:0;}

.single-property .property-hero{height:420px;background:#1a1a1a center/cover no-repeat;border-radius:var(--pc-radius);margin-bottom:30px;}
.single-property .property-meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;background:#fff;padding:18px;border-radius:var(--pc-radius);box-shadow:var(--pc-shadow);margin-bottom:30px;}
.single-property .property-meta-grid .item{text-align:center;padding:8px;border-right:1px solid var(--pc-border);}
.single-property .property-meta-grid .item:last-child{border-right:0;}
.single-property .property-meta-grid .label{color:var(--pc-muted);font-size:.85rem;}
.single-property .property-meta-grid .value{font-weight:700;color:var(--pc-green-dark);}
.single-property .property-content{background:#fff;padding:26px;border-radius:var(--pc-radius);box-shadow:var(--pc-shadow);display:grid;grid-template-columns:2fr 1fr;gap:30px;}
.single-property .sidebar-card{background:linear-gradient(135deg,var(--pc-green),var(--pc-orange));color:#fff;padding:24px;border-radius:var(--pc-radius);}
.single-property .sidebar-card h3{color:#fff;}
.single-property .sidebar-card a.btn{display:block;text-align:center;background:#fff;color:var(--pc-orange-dark);padding:12px;border-radius:8px;font-weight:700;margin-top:10px;}
.single-property .sidebar-card a.btn:hover{background:var(--pc-green-light);color:#fff;}

.page-header-banner{background:linear-gradient(135deg,var(--pc-green-dark),var(--pc-orange-dark));color:#fff;text-align:center;padding:60px 20px;margin-bottom:40px;}
.page-header-banner h1{color:#fff;}
.page-header-banner .breadcrumbs{color:rgba(255,255,255,.85);font-size:.9rem;}
.page-header-banner .breadcrumbs a{color:#fff;text-decoration:underline;}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;}
.contact-info{background:#fff;padding:30px;border-radius:var(--pc-radius);box-shadow:var(--pc-shadow);}
.contact-info .item{margin-bottom:18px;border-left:4px solid var(--pc-orange);padding-left:14px;}
.contact-info .item:nth-child(even){border-left-color:var(--pc-green);}
.contact-info h4{margin-bottom:4px;color:var(--pc-green-dark);}
.contact-form{background:#fff;padding:30px;border-radius:var(--pc-radius);box-shadow:var(--pc-shadow);}
.contact-form input,.contact-form textarea,.contact-form select{width:100%;padding:12px 14px;border:1px solid var(--pc-border);border-radius:8px;margin-bottom:14px;font-size:.95rem;font-family:inherit;}
.contact-form button{background:var(--pc-orange);color:#fff;border:0;padding:14px 28px;border-radius:30px;font-weight:700;cursor:pointer;font-size:1rem;}
.contact-form button:hover{background:var(--pc-green);}

.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.post-card{background:#fff;border-radius:var(--pc-radius);overflow:hidden;box-shadow:var(--pc-shadow);transition:var(--pc-transition);}
.post-card:hover{transform:translateY(-4px);}
.post-card .thumb{height:200px;background:linear-gradient(135deg,var(--pc-orange),var(--pc-green));}
.post-card .body{padding:18px;}
.post-card h3{font-size:1.1rem;}
.post-card h3 a{color:#1a1a1a;}
.post-card h3 a:hover{color:var(--pc-orange);}
.post-card .meta{font-size:.82rem;color:var(--pc-muted);margin-bottom:8px;}

.pagination{display:flex;justify-content:center;gap:8px;margin-top:40px;flex-wrap:wrap;}
.pagination a,.pagination span{padding:9px 14px;background:#fff;border:1px solid var(--pc-border);border-radius:6px;color:#222;font-weight:600;}
.pagination .current,.pagination a:hover{background:var(--pc-orange);color:#fff;border-color:var(--pc-orange);}

.site-footer{background:#1a1a1a;color:#cfcfcf;padding:60px 0 0;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px;}
.site-footer h4{color:#fff;margin-bottom:14px;border-bottom:2px solid var(--pc-orange);padding-bottom:6px;display:inline-block;}
.site-footer ul{list-style:none;padding:0;margin:0;}
.site-footer ul li{margin-bottom:8px;}
.site-footer a{color:#cfcfcf;}
.site-footer a:hover{color:var(--pc-orange-light);}
.footer-brand p{margin-top:10px;color:#9a9a9a;}
.footer-bottom{background:#000;color:#999;text-align:center;padding:14px;margin-top:40px;font-size:.88rem;}
.footer-bottom a{color:var(--pc-orange-light);}

.btn{display:inline-block;padding:10px 22px;background:var(--pc-orange);color:#fff;border-radius:30px;font-weight:600;border:0;cursor:pointer;}
.btn:hover{background:var(--pc-green);color:#fff;}
.btn-outline{background:transparent;border:2px solid var(--pc-orange);color:var(--pc-orange);}
.btn-outline:hover{background:var(--pc-orange);color:#fff;}
.text-center{text-align:center;}
.mt-30{margin-top:30px;}

@media (max-width:1024px){
    .property-grid,.posts-grid,.areas-grid{grid-template-columns:repeat(2,1fr);}
    .types-grid,.features{grid-template-columns:repeat(2,1fr);}
    .footer-grid{grid-template-columns:1fr 1fr;}
    .property-search{grid-template-columns:repeat(2,1fr);}
    .single-property .property-content{grid-template-columns:1fr;}
    .single-property .property-meta-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:768px){
    h1{font-size:1.9rem;}h2{font-size:1.5rem;}.hero h1{font-size:2.1rem;}
    .menu-toggle{display:block;}
    .main-navigation{order:3;flex-basis:100%;display:none;}
    .main-navigation.toggled{display:block;}
    .main-navigation ul{flex-direction:column;align-items:stretch;}
    .main-navigation ul ul{position:static;box-shadow:none;padding-left:14px;}
    .header-cta{display:none;}
    .property-grid,.posts-grid,.areas-grid,.types-grid,.features,.contact-grid,.footer-grid{grid-template-columns:1fr;}
    .property-search{grid-template-columns:1fr;}
    .topbar{display:none;}
    .section{padding:50px 0;}
}
@media (max-width:480px){
    .hero{padding:60px 0 70px;}
    .hero h1{font-size:1.7rem;}
    .hero .lead{font-size:1rem;}
}


/* =============================================================
   THEME V2 STYLES — New Homepage Design
   ============================================================= */

/* ---- Section label pill ---- */
.section-label-pill {
    display: inline-block;
    background: var(--pc-orange);
    color: #fff;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: 1.5px;
    padding: 6px 18px;
    border-radius: 30px;
    margin-bottom: 14px;
    text-transform: uppercase;
}
.section-label-left { display: block; }

/* ---- Header V2 ---- */
.topbar-left span,
.topbar-right span { margin-right: 18px; font-size: .82rem; }
.topbar-left a { color: #fff; }
.topbar .container { justify-content: space-between; }
.topbar-right { display: flex; align-items: center; gap: 0; color: rgba(255,255,255,.9); }

.brand-link { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.brand-icon {
    width: 46px; height: 46px;
    background: var(--pc-orange);
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.5rem; color: #fff; flex-shrink: 0;
}
.brand-text { display: flex; flex-direction: column; }
.brand-name { font-size: 1.2rem; font-weight: 800; color: var(--pc-green-dark); line-height: 1.1; }
.brand-orange { color: var(--pc-orange); }
.brand-tagline { font-size: .62rem; font-weight: 700; letter-spacing: 1.5px; color: var(--pc-muted); text-transform: uppercase; margin-top: 2px; }

.btn-whatsapp {
    background: var(--pc-orange) !important;
    color: #fff !important;
    padding: 10px 22px;
    border-radius: 30px;
    font-weight: 700;
    font-size: .88rem;
    letter-spacing: .5px;
}
.btn-whatsapp:hover { background: var(--pc-green) !important; }

/* ---- Hero V2 ---- */
.hero-v2 {
    background: linear-gradient(135deg, var(--pc-green-dark) 0%, #3e5e1e 40%, #b56a00 100%);
    padding: 70px 0 80px;
    position: relative;
    overflow: hidden;
}
.hero-v2::before {
    content: '';
    position: absolute; inset: 0;
    background-image: radial-gradient(circle, rgba(255,255,255,.04) 1px, transparent 1px);
    background-size: 28px 28px;
    pointer-events: none;
}
.hero-v2-layout {
    display: grid;
    grid-template-columns: 1fr 420px;
    gap: 50px;
    align-items: center;
}

/* Hero left */
.hero-v2-content { color: #fff; }
.hero-badge-pill {
    display: inline-flex; align-items: center; gap: 8px;
    background: rgba(255,255,255,.15);
    border: 1px solid rgba(255,255,255,.3);
    color: #fff;
    padding: 8px 18px;
    border-radius: 30px;
    font-size: .85rem;
    font-weight: 600;
    margin-bottom: 20px;
    backdrop-filter: blur(4px);
}
.hero-v2-title {
    font-size: 3rem;
    color: #fff;
    font-weight: 800;
    line-height: 1.15;
    margin-bottom: 18px;
    text-shadow: 0 2px 10px rgba(0,0,0,.2);
}
.hero-highlight { color: var(--pc-orange-light); }
.hero-v2-lead {
    font-size: 1.05rem;
    color: rgba(255,255,255,.88);
    max-width: 520px;
    margin-bottom: 28px;
    line-height: 1.7;
}
.hero-v2-btns { display: flex; gap: 14px; flex-wrap: wrap; margin-bottom: 40px; }
.btn-hero-primary {
    background: var(--pc-orange);
    color: #fff;
    padding: 13px 28px;
    border-radius: 30px;
    font-weight: 700;
    font-size: .95rem;
    display: inline-flex; align-items: center; gap: 8px;
}
.btn-hero-primary:hover { background: var(--pc-orange-dark); color: #fff; }
.btn-hero-outline {
    background: transparent;
    border: 2px solid rgba(255,255,255,.7);
    color: #fff;
    padding: 11px 26px;
    border-radius: 30px;
    font-weight: 600;
    font-size: .95rem;
    display: inline-flex; align-items: center; gap: 8px;
}
.btn-hero-outline:hover { background: rgba(255,255,255,.15); color: #fff; }

.hero-stats-row {
    display: flex; gap: 32px; flex-wrap: wrap;
    border-top: 1px solid rgba(255,255,255,.2);
    padding-top: 24px;
}
.hero-stat { display: flex; flex-direction: column; align-items: flex-start; }
.stat-num { font-size: 1.9rem; font-weight: 800; color: var(--pc-orange-light); line-height: 1; }
.stat-lbl { font-size: .7rem; font-weight: 700; letter-spacing: 1.5px; color: rgba(255,255,255,.7); margin-top: 4px; }

/* Hero right: search widget */
.search-widget-card {
    background: #fff;
    border-radius: 14px;
    padding: 28px 24px;
    box-shadow: 0 16px 48px rgba(0,0,0,.2);
}
.swc-title {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 16px;
    color: #1a1a1a;
}
.swc-tabs {
    display: flex;
    background: #f5f5f5;
    border-radius: 8px;
    padding: 4px;
    margin-bottom: 20px;
    gap: 2px;
}
.swc-tab {
    flex: 1;
    padding: 9px 0;
    border: none;
    background: transparent;
    border-radius: 6px;
    font-size: .88rem;
    font-weight: 600;
    color: #666;
    cursor: pointer;
    transition: var(--pc-transition);
}
.swc-tab.active { background: var(--pc-orange); color: #fff; }
.swc-tab:hover:not(.active) { background: #e8e8e8; }

.swc-group { margin-bottom: 14px; }
.swc-group label { display: block; font-size: .8rem; font-weight: 600; color: #555; margin-bottom: 6px; }
.swc-select-wrap { position: relative; }
.swc-select-wrap select {
    width: 100%;
    padding: 11px 36px 11px 14px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fff;
    font-size: .9rem;
    color: #444;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
}
.swc-select-wrap select:focus { outline: none; border-color: var(--pc-orange); }
.swc-arrow {
    position: absolute; right: 12px; top: 50%;
    transform: translateY(-50%);
    pointer-events: none; color: #888; font-size: .8rem;
}
.swc-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.swc-search-btn {
    width: 100%;
    background: var(--pc-green-dark);
    color: #fff;
    border: none;
    padding: 14px;
    border-radius: 8px;
    font-size: .95rem;
    font-weight: 700;
    cursor: pointer;
    display: flex; align-items: center; justify-content: center; gap: 10px;
    margin-top: 6px;
    transition: var(--pc-transition);
    letter-spacing: .5px;
}
.swc-search-btn:hover { background: var(--pc-green); }
.swc-dot {
    width: 10px; height: 10px;
    border-radius: 50%;
    background: rgba(255,255,255,.6);
    display: inline-block;
}

/* ---- Features Bar V2 ---- */
.features-bar-v2 {
    background: var(--pc-orange);
    padding: 26px 0;
}
.fb-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
}
.fb-item {
    display: flex; align-items: center; gap: 14px;
    padding: 10px 24px;
    border-right: 1px solid rgba(255,255,255,.25);
}
.fb-item:last-child { border-right: none; }
.fb-icon-wrap {
    width: 44px; height: 44px; flex-shrink: 0;
    background: rgba(255,255,255,.2);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.2rem; color: #fff; font-weight: 800;
}
.fb-free-badge {
    font-size: .72rem !important;
    letter-spacing: 1px;
    background: #fff !important;
    color: var(--pc-orange) !important;
    border: 2px solid rgba(255,255,255,.6);
}
.fb-text { display: flex; flex-direction: column; }
.fb-text strong { color: #fff; font-size: .95rem; }
.fb-text span { color: rgba(255,255,255,.85); font-size: .8rem; margin-top: 2px; }

/* ---- Property Cards V2 ---- */
.property-grid-v2 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 26px;
}
.pcard-v2 {
    background: #fff;
    border-radius: var(--pc-radius);
    overflow: hidden;
    box-shadow: var(--pc-shadow);
    transition: var(--pc-transition);
    display: flex; flex-direction: column;
}
.pcard-v2:hover { transform: translateY(-6px); box-shadow: 0 14px 32px rgba(0,0,0,.13); }
.pcard-thumb {
    position: relative;
    height: 210px;
    overflow: hidden;
    display: flex; align-items: center; justify-content: center;
}
.pcard-img {
    width: 100%; height: 100%; object-fit: cover;
    display: block;
}
.pcard-placeholder { opacity: .5; width: 80px; height: 80px; object-fit: contain; }
.pcard-badge {
    position: absolute; top: 12px; left: 12px;
    padding: 5px 12px; border-radius: 4px;
    font-size: .72rem; font-weight: 700; letter-spacing: .5px; color: #fff;
    text-transform: uppercase;
}
.badge-sale { background: var(--pc-orange); }
.badge-rent { background: var(--pc-green); }
.pcard-price {
    position: absolute; bottom: 10px; right: 10px;
    background: rgba(0,0,0,.82);
    color: #fff; padding: 6px 12px; border-radius: 6px;
    font-weight: 700; font-size: .9rem;
}
.pcard-body { padding: 16px; flex-grow: 1; display: flex; flex-direction: column; }
.pcard-title { font-size: 1rem; margin-bottom: 6px; }
.pcard-title a { color: #1a1a1a; }
.pcard-title a:hover { color: var(--pc-orange); }
.pcard-loc { color: var(--pc-muted); font-size: .84rem; margin-bottom: 10px; }
.pcard-meta {
    display: flex; flex-wrap: wrap; gap: 10px;
    border-top: 1px solid var(--pc-border);
    padding-top: 10px;
    font-size: .82rem; color: #555;
    margin-bottom: 12px;
}
.pcard-footer {
    display: flex; align-items: center; justify-content: space-between;
    margin-top: auto; border-top: 1px solid var(--pc-border); padding-top: 10px;
}
.pcard-agent { display: flex; flex-direction: column; }
.agent-name { font-weight: 600; font-size: .82rem; color: #333; }
.agent-date { font-size: .76rem; color: var(--pc-muted); }
.pcard-view-btn {
    background: var(--pc-orange);
    color: #fff;
    padding: 7px 20px;
    border-radius: 6px;
    font-size: .85rem;
    font-weight: 600;
    transition: var(--pc-transition);
}
.pcard-view-btn:hover { background: var(--pc-green); color: #fff; }

/* ---- About V2 ---- */
.about-v2-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}
.about-img-wrap { position: relative; }
.about-img-inner {
    border-radius: 16px;
    overflow: hidden;
    height: 420px;
    background: linear-gradient(135deg, var(--pc-green), var(--pc-orange));
    display: flex; align-items: center; justify-content: center;
}
.about-img-inner img { width: 180px; height: 180px; object-fit: contain; opacity: .5; }
.about-float {
    position: absolute;
    background: #fff;
    border-radius: 12px;
    padding: 14px 20px;
    box-shadow: 0 8px 24px rgba(0,0,0,.12);
    display: flex; flex-direction: column; align-items: center;
    min-width: 120px;
    text-align: center;
}
.about-float-tr { top: 20px; right: -20px; }
.about-float-bl { bottom: 30px; left: -20px; }
.af-num { font-size: 1.5rem; font-weight: 800; color: var(--pc-orange); line-height: 1; }
.af-lbl { font-size: .75rem; color: var(--pc-muted); margin-top: 4px; font-weight: 600; }

.about-v2-content h2 { margin-top: 12px; margin-bottom: 16px; }
.about-v2-content p { color: #555; margin-bottom: 12px; }

.about-features-list { margin: 22px 0; display: flex; flex-direction: column; gap: 16px; }
.about-feat-item { display: flex; gap: 14px; align-items: flex-start; }
.afi-icon {
    width: 38px; height: 38px; flex-shrink: 0;
    background: var(--pc-orange);
    border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
    color: #fff; font-weight: 700; font-size: .9rem;
}
.afi-text strong { display: block; font-size: .95rem; color: #222; margin-bottom: 3px; }
.afi-text p { font-size: .85rem; color: var(--pc-muted); margin: 0; }

/* ---- Services V2 ---- */
.services-grid-v2 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.svc-card {
    background: #fff;
    border-radius: var(--pc-radius);
    padding: 32px 24px;
    text-align: center;
    box-shadow: var(--pc-shadow);
    transition: var(--pc-transition);
    border-bottom: 3px solid transparent;
}
.svc-card:hover { transform: translateY(-5px); border-bottom-color: var(--pc-orange); }
.svc-icon-wrap {
    width: 72px; height: 72px;
    border-radius: 50%;
    background: #fff5e6;
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 16px;
    font-size: 1.8rem;
    border: 2px solid #ffe0b2;
}
.svc-card:nth-child(even) .svc-icon-wrap { background: #e8f5e9; border-color: #c8e6c9; }
.svc-card h4 { font-size: 1rem; margin-bottom: 10px; color: #1a1a1a; }
.svc-card p { font-size: .88rem; color: var(--pc-muted); margin: 0; }
.svc-card-highlight { border-bottom-color: var(--pc-orange); }
.svc-free-wrap { background: var(--pc-orange) !important; border-color: var(--pc-orange-dark) !important; }
.svc-free-txt { color: #fff; font-size: .8rem; font-weight: 800; letter-spacing: 1px; }

/* ---- Projects V2 ---- */
.projects-grid-v2 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.proj-card {
    position: relative;
    border-radius: var(--pc-radius);
    overflow: hidden;
    height: 200px;
    display: flex; align-items: flex-end;
    transition: var(--pc-transition);
}
.proj-card:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(0,0,0,.2); }
.proj-img {
    position: absolute; inset: 0;
    width: 100%; height: 100%; object-fit: cover;
    opacity: .3;
}
.proj-overlay {
    position: relative; z-index: 2;
    padding: 16px;
    width: 100%;
}
.proj-badge {
    display: inline-block;
    background: var(--pc-orange);
    color: #fff;
    font-size: .72rem;
    font-weight: 700;
    padding: 4px 12px;
    border-radius: 20px;
    margin-bottom: 8px;
    text-transform: capitalize;
}
.proj-overlay h4 { color: #fff; font-size: 1rem; margin: 0 0 4px; text-shadow: 0 1px 4px rgba(0,0,0,.4); }
.proj-loc { color: rgba(255,255,255,.85); font-size: .82rem; }
.proj-link-cover { position: absolute; inset: 0; z-index: 3; }

/* ---- Societies V2 ---- */
.societies-grid-v2 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}
.soc-card {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    background: #fff;
    border: 2px solid var(--pc-border);
    border-radius: var(--pc-radius);
    padding: 24px 16px;
    text-align: center;
    text-decoration: none;
    transition: var(--pc-transition);
    gap: 6px;
}
.soc-card:hover { border-color: var(--pc-orange); transform: translateY(-3px); box-shadow: var(--pc-shadow); }
.soc-active { border-color: var(--pc-orange); background: #fff8f0; }
.soc-icon { font-size: 1.8rem; margin-bottom: 4px; }
.soc-card strong { font-size: .9rem; color: #1a1a1a; display: block; }
.soc-card span { font-size: .78rem; color: var(--pc-orange); font-weight: 600; }

/* ---- Testimonials V2 ---- */
.testi-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 26px;
}
.testi-card {
    background: #fff;
    border-radius: var(--pc-radius);
    padding: 28px 24px;
    box-shadow: var(--pc-shadow);
    transition: var(--pc-transition);
    border-top: 4px solid var(--pc-border);
    display: flex; flex-direction: column;
}
.testi-card:hover { transform: translateY(-4px); border-top-color: var(--pc-orange); }
.testi-card-featured { border-top-color: var(--pc-orange); }
.testi-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.testi-stars { color: var(--pc-orange); font-size: 1.1rem; letter-spacing: 2px; }
.testi-quote { font-size: 2.2rem; color: var(--pc-orange); opacity: .35; line-height: 1; font-family: Georgia, serif; }
.testi-card p { font-size: .9rem; color: #555; font-style: italic; flex-grow: 1; line-height: 1.7; }
.testi-author {
    display: flex; align-items: center; gap: 12px;
    margin-top: 18px; padding-top: 14px;
    border-top: 1px solid var(--pc-border);
}
.testi-avatar {
    width: 42px; height: 42px; border-radius: 50%;
    color: #fff; font-weight: 700; font-size: 1rem;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.testi-author strong { display: block; font-size: .9rem; color: #1a1a1a; }
.testi-author span { font-size: .78rem; color: var(--pc-muted); }

/* ---- Responsive V2 ---- */
@media (max-width:1024px) {
    .hero-v2-layout { grid-template-columns: 1fr; gap: 36px; }
    .hero-v2-title { font-size: 2.2rem; }
    .about-v2-layout { grid-template-columns: 1fr; }
    .about-float { display: none; }
    .services-grid-v2 { grid-template-columns: repeat(2,1fr); }
    .projects-grid-v2 { grid-template-columns: repeat(2,1fr); }
    .societies-grid-v2 { grid-template-columns: repeat(2,1fr); }
    .fb-grid { grid-template-columns: repeat(2,1fr); }
    .fb-item { border-right: none; border-bottom: 1px solid rgba(255,255,255,.2); }
    .testi-grid { grid-template-columns: 1fr; max-width: 540px; margin: 0 auto; }
    .property-grid-v2 { grid-template-columns: repeat(2,1fr); }
}
@media (max-width:768px) {
    .hero-v2 { padding: 50px 0 60px; }
    .hero-v2-title { font-size: 1.8rem; }
    .hero-stats-row { gap: 18px; }
    .stat-num { font-size: 1.5rem; }
    .fb-grid { grid-template-columns: 1fr 1fr; }
    .property-grid-v2 { grid-template-columns: 1fr; }
    .services-grid-v2 { grid-template-columns: 1fr; }
    .projects-grid-v2 { grid-template-columns: 1fr 1fr; }
    .societies-grid-v2 { grid-template-columns: repeat(2,1fr); }
    .topbar-right { display: none; }
    .hero-v2-btns { flex-direction: column; align-items: flex-start; }
    .swc-row { grid-template-columns: 1fr; }
}
@media (max-width:480px) {
    .projects-grid-v2 { grid-template-columns: 1fr; }
    .fb-grid { grid-template-columns: 1fr; }
    .societies-grid-v2 { grid-template-columns: 1fr 1fr; }
}


/* ---- City / Area Cards: image support ---- */

/* Old homepage area-card with photo */
.area-card {
    transition: var(--pc-transition);
}
.area-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,.65) 0%, rgba(0,0,0,.1) 60%, transparent 100%);
    z-index: 1;
    border-radius: inherit;
}
.area-card .area-overlay { position: relative; z-index: 2; }

/* New homepage soc-card with photo */
.soc-card.soc-has-img {
    position: relative;
    border-color: transparent;
    overflow: hidden;
    color: #fff;
}
.soc-card.soc-has-img strong,
.soc-card.soc-has-img span { color: #fff; }
.soc-card.soc-has-img span { color: rgba(255,255,255,.85); }
.soc-img-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,.65) 0%, rgba(0,0,0,.25) 100%);
    z-index: 1;
    border-radius: inherit;
}
.soc-card.soc-has-img .soc-icon,
.soc-card.soc-has-img strong,
.soc-card.soc-has-img span { position: relative; z-index: 2; }
.soc-card.soc-has-img:hover { transform: translateY(-4px); box-shadow: 0 10px 28px rgba(0,0,0,.25); }
