:root{--mp-primary:#1a529b;--mp-primary-light:#2a6fbf;--mp-accent:#8bb341;--mp-accent-hover:#759a38;--mp-text:#1e2d3d;--mp-muted:#6b7280;--mp-border:#e2e8f0;--mp-bg:#f4f7fb;}

        :root {
            --mp-primary: #1a529b;
            --mp-primary-light: #2a6fbf;
            --mp-accent: #8bb341;
            --mp-accent-hover: #759a38;
            --mp-text: #1e2d3d;
            --mp-muted: #6b7280;
            --mp-border: #e2e8f0;
            --mp-bg: #f4f7fb;
        }

        body {
            font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
            color: var(--mp-text);
            background: var(--mp-bg);
        }

        .mp-badge {
            position: fixed;
            top: 80px;
            right: 16px;
            z-index: 1050;
            background: var(--mp-accent);
            color: #fff;
            font-size: .75rem;
            font-weight: 600;
            padding: 6px 12px;
            border-radius: 20px;
            box-shadow: 0 4px 12px rgba(0,0,0,.15);
        }

        .mp-navbar {
            background: #fff;
            box-shadow: 0 2px 12px rgba(0,0,0,.06);
        }

        .mp-navbar .navbar-brand {
            font-weight: 700;
            color: var(--mp-primary);
            font-size: 1.35rem;
        }

        .mp-navbar .navbar-brand span {
            color: var(--mp-accent);
        }

        .mp-navbar .navbar-brand img {
            height: 48px;
            width: auto;
            display: block;
        }

        @media (min-width: 992px) {
            .mp-navbar > .container {
                position: relative;
            }

            .mp-navbar .mp-nav-center {
                position: absolute;
                left: 50%;
                transform: translateX(-50%);
            }

            .mp-navbar .mp-nav-actions {
                margin-left: auto;
            }
        }

        .mp-navbar .nav-link {
            color: var(--mp-text);
            font-weight: 500;
            padding: .5rem 1rem !important;
        }

        .mp-navbar .nav-link:hover,
        .mp-navbar .nav-link.active {
            color: var(--mp-primary-light);
        }

        .btn-mp-primary {
            background: var(--mp-primary);
            border-color: var(--mp-primary);
            color: #fff;
        }

        .btn-mp-primary:hover {
            background: var(--mp-primary-light);
            border-color: var(--mp-primary-light);
            color: #fff;
        }

        .btn-mp-accent {
            background: var(--mp-accent);
            border-color: var(--mp-accent);
            color: #fff;
        }

        .btn-mp-accent:hover {
            background: var(--mp-accent-hover);
            border-color: var(--mp-accent-hover);
            color: #fff;
        }

        .property-card {
            background: #fff;
            border-radius: 12px;
            overflow: hidden;
            border: 1px solid var(--mp-border);
            transition: transform .2s, box-shadow .2s;
            height: 100%;
        }

        .property-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 12px 28px rgba(0,0,0,.1);
        }

        .property-card .card-img-wrap {
            position: relative;
            height: 200px;
            overflow: hidden;
        }

        .property-card .card-img-wrap img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .property-card .badge-type {
            position: absolute;
            top: 12px;
            left: 12px;
            background: var(--mp-primary);
            color: #fff;
            font-size: .7rem;
            padding: 4px 10px;
            border-radius: 4px;
        }

        .property-card .badge-featured {
            position: absolute;
            top: 12px;
            right: 12px;
            background: var(--mp-accent);
            color: #fff;
            font-size: .7rem;
            padding: 4px 10px;
            border-radius: 4px;
        }

        .property-card .price {
            color: var(--mp-primary);
            font-weight: 700;
            font-size: 1.15rem;
        }

        .property-card .meta {
            color: var(--mp-muted);
            font-size: .85rem;
        }

        .section-title {
            font-weight: 700;
            color: var(--mp-primary);
            margin-bottom: .5rem;
        }

        .section-subtitle {
            color: var(--mp-muted);
            margin-bottom: 2rem;
        }

        .mp-footer {
            background: var(--mp-primary);
            color: rgba(255,255,255,.85);
            padding: 48px 0 24px;
            margin-top: 60px;
        }

        .mp-footer h6 {
            color: #fff;
            font-weight: 600;
            margin-bottom: 1rem;
        }

        .mp-footer a {
            color: rgba(255,255,255,.75);
            text-decoration: none;
            display: block;
            margin-bottom: .5rem;
            font-size: .9rem;
        }

        .mp-footer a:hover {
            color: var(--mp-accent);
        }

        .filter-sidebar {
            background: #fff;
            border-radius: 12px;
            border: 1px solid var(--mp-border);
            padding: 1.5rem;
        }

        .filter-sidebar .form-label {
            font-weight: 600;
            font-size: .85rem;
            color: var(--mp-text);
        }

        .page-hero {
            background: linear-gradient(135deg, var(--mp-primary) 0%, var(--mp-primary-light) 100%);
            color: #fff;
            padding: 48px 0;
        }

        .form-section {
            background: #fff;
            border-radius: 12px;
            border: 1px solid var(--mp-border);
            padding: 1.75rem;
            margin-bottom: 1.5rem;
        }

        .form-section h5 {
            color: var(--mp-primary);
            font-weight: 600;
            margin-bottom: 1.25rem;
            padding-bottom: .75rem;
            border-bottom: 2px solid var(--mp-bg);
        }
    