/* ═══════════════════════════════════════════════════════════
 *  css/pages/index.css — Land of Profits
 *  Page-specific styles for index.html.
 * ═══════════════════════════════════════════════════════════ */

/* ─── RESET & BASE ─────────────────────────────────────────── */
      *,
      *::before,
      *::after {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
      }
      
      html {
        scroll-behavior: smooth;
      }
      body {
        font-family: var(--sans);
        background: var(--white);
        color: var(--ink);
        font-size: 16px;
        line-height: 1.6;
        overflow-x: hidden;
      }
      a {
        text-decoration: none;
        color: inherit;
      }
      img {
        max-width: 100%;
        display: block;
      }

      /* ─── HERO ──────────────────────────────────────────────────── */
      #hero {
        min-height: 100vh;
        background: var(--navy);
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 120px 5% 80px;
        position: relative;
        overflow: hidden;
      }
      /* Geometric background accent */
      #hero::before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        width: 55%;
        height: 100%;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 900'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0%25' y1='0%25' x2='100%25' y2='100%25'%3E%3Cstop offset='0%25' stop-color='%23162236' stop-opacity='1'/%3E%3Cstop offset='100%25' stop-color='%230D1B2E' stop-opacity='1'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='800' height='900' fill='url(%23g)'/%3E%3Crect x='60' y='60' width='680' height='780' rx='24' fill='none' stroke='%23C9A96E' stroke-width='0.6' stroke-opacity='0.25'/%3E%3Crect x='120' y='120' width='560' height='660' rx='18' fill='none' stroke='%23C9A96E' stroke-width='0.4' stroke-opacity='0.15'/%3E%3Ccircle cx='400' cy='450' r='280' fill='none' stroke='%23C9A96E' stroke-width='0.5' stroke-opacity='0.12'/%3E%3Ccircle cx='400' cy='450' r='180' fill='none' stroke='%23C9A96E' stroke-width='0.4' stroke-opacity='0.10'/%3E%3C/svg%3E")
          center/cover;
        opacity: 0.6;
      }
      /* Gold diagonal accent */
      #hero::after {
        content: '';
        position: absolute;
        top: -20%;
        right: 28%;
        width: 1px;
        height: 140%;
        background: linear-gradient(
          180deg,
          transparent,
          rgba(201, 169, 110, 0.3) 30%,
          rgba(201, 169, 110, 0.15) 70%,
          transparent
        );
        transform: rotate(12deg);
      }
      .hero-inner {
        max-width: 1240px;
        margin: 0 auto;
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 80px;
        align-items: center;
        position: relative;
        z-index: 2;
      }
      .hero-eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        background: rgba(201, 169, 110, 0.12);
        border: 1px solid rgba(201, 169, 110, 0.3);
        color: var(--gold);
        font-size: 11px;
        font-weight: 500;
        letter-spacing: 2px;
        text-transform: uppercase;
        padding: 6px 14px;
        border-radius: 20px;
        margin-bottom: 24px;
      }
      .hero-eyebrow::before {
        content: '';
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: var(--gold);
      }
      .hero-left h1 {
        font-family: var(--serif);
        font-size: clamp(44px, 5vw, 68px);
        font-weight: 600;
        line-height: 1.05;
        letter-spacing: -0.5px;
        color: var(--white);
        margin-bottom: 10px;
      }
      .hero-left h1 em {
        font-style: italic;
        color: var(--gold);
      }
      .hero-left h1 .line2 {
        display: block;
      }
      .hero-tagline {
        font-family: var(--serif);
        font-size: clamp(16px, 2vw, 20px);
        font-weight: 400;
        font-style: italic;
        color: rgba(255, 255, 255, 0.5);
        margin-bottom: 28px;
        letter-spacing: 0.3px;
      }
      .hero-desc {
        font-size: 15px;
        font-weight: 300;
        color: rgba(255, 255, 255, 0.6);
        line-height: 1.75;
        max-width: 460px;
        margin-bottom: 40px;
      }
      .hero-actions {
        display: flex;
        align-items: center;
        gap: 16px;
        flex-wrap: wrap;
        margin-bottom: 52px;
      }
      .btn-hero-primary {
        background: var(--gold);
        color: var(--navy);
        padding: 14px 32px;
        border-radius: var(--r6);
        font-size: 14px;
        font-weight: 600;
        letter-spacing: 0.3px;
        transition: all 0.2s;
        border: none;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        gap: 8px;
      }
      .btn-hero-primary:hover {
        background: var(--gold2);
        transform: translateY(-2px);
        box-shadow: 0 8px 24px rgba(201, 169, 110, 0.3);
      }
      .btn-hero-primary svg {
        width: 16px;
        height: 16px;
        stroke: var(--navy);
        fill: none;
        stroke-width: 2;
      }
      .btn-hero-outline {
        background: transparent;
        color: rgba(255, 255, 255, 0.8);
        padding: 13px 28px;
        border-radius: var(--r6);
        font-size: 14px;
        font-weight: 400;
        border: 1px solid rgba(255, 255, 255, 0.2);
        transition: all 0.2s;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        gap: 8px;
      }
      .btn-hero-outline:hover {
        border-color: rgba(255, 255, 255, 0.5);
        color: var(--white);
      }
      .btn-hero-outline svg {
        width: 16px;
        height: 16px;
        stroke: currentColor;
        fill: none;
        stroke-width: 2;
      }
      .hero-trust {
        display: flex;
        align-items: center;
        gap: 20px;
        padding-top: 32px;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
      }
      .trust-item {
        text-align: center;
      }
      .trust-num {
        font-family: var(--serif);
        font-size: 28px;
        font-weight: 600;
        color: var(--gold);
        line-height: 1;
      }
      .trust-lbl {
        font-size: 11px;
        color: rgba(255, 255, 255, 0.4);
        letter-spacing: 0.5px;
        margin-top: 3px;
      }
      .trust-div {
        width: 1px;
        height: 36px;
        background: rgba(255, 255, 255, 0.1);
      }

      /* Search card */
      .hero-search-card {
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(201, 169, 110, 0.2);
        border-radius: 20px;
        padding: 32px;
        backdrop-filter: blur(10px);
      }
      .search-tabs {
        display: flex;
        gap: 4px;
        margin-bottom: 28px;
        background: rgba(255, 255, 255, 0.05);
        border-radius: 10px;
        padding: 4px;
      }
      .stab {
        flex: 1;
        padding: 10px;
        text-align: center;
        font-size: 13px;
        font-weight: 500;
        color: rgba(255, 255, 255, 0.45);
        border-radius: 8px;
        cursor: pointer;
        transition: all 0.2s;
      }
      .stab.active {
        background: var(--gold);
        color: var(--navy);
      }
      .search-field {
        display: flex;
        flex-direction: column;
        gap: 5px;
        margin-bottom: 14px;
      }
      .search-field label {
        font-size: 11px;
        letter-spacing: 1px;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.35);
        font-weight: 500;
      }
      .search-field select,
      .search-field input {
        background: rgba(255, 255, 255, 0.06);
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: var(--r6);
        padding: 12px 14px;
        color: rgba(255, 255, 255, 0.8);
        font-family: var(--sans);
        font-size: 14px;
        outline: none;
        width: 100%;
        transition: border-color 0.2s;
        appearance: none;
      }
      .search-field select:focus,
      .search-field input:focus {
        border-color: rgba(201, 169, 110, 0.5);
      }
      .search-field select option {
        background: var(--navy2);
        color: var(--white);
      }
      .search-row {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
      }
      .btn-search {
        width: 100%;
        background: var(--gold);
        color: var(--navy);
        padding: 14px;
        border-radius: var(--r6);
        font-size: 14px;
        font-weight: 600;
        letter-spacing: 0.3px;
        border: none;
        cursor: pointer;
        margin-top: 8px;
        transition: all 0.2s;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
      }
      .btn-search:hover {
        background: var(--gold2);
      }
      .btn-search svg {
        width: 16px;
        height: 16px;
        stroke: var(--navy);
        fill: none;
        stroke-width: 2.5;
      }
      .search-hint {
        font-size: 11px;
        color: rgba(255, 255, 255, 0.3);
        text-align: center;
        margin-top: 14px;
      }
      .search-hint a {
        color: rgba(201, 169, 110, 0.7);
      }

      /* ─── COUNTRIES STRIP ─────────────────────────────────────── */
      #countries {
        background: var(--mocha);
        padding: 22px 5%;
        overflow: hidden;
      }
      .countries-inner {
        max-width: 1240px;
        margin: 0 auto;
        display: flex;
        align-items: center;
        gap: 32px;
      }
      .countries-label {
        font-size: 10px;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.5);
        white-space: nowrap;
        flex-shrink: 0;
      }
      .countries-list {
        display: flex;
        align-items: center;
        gap: 24px;
        flex-wrap: wrap;
      }
      .country-pill {
        display: flex;
        align-items: center;
        gap: 7px;
        font-size: 13px;
        color: rgba(255, 255, 255, 0.75);
        font-weight: 300;
        white-space: nowrap;
      }
      .country-pill .flag {
        width: 22px;
        height: 16px;
        border-radius: 3px;
        overflow: hidden;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 16px;
        line-height: 1;
      }
      .c-div {
        width: 1px;
        height: 14px;
        background: rgba(255, 255, 255, 0.15);
      }

      /* ─── SECTION COMMON ─────────────────────────────────────── */
      .section {
        padding: 96px 5%;
      }
      .section-inner {
        max-width: 1240px;
        margin: 0 auto;
      }
      .section-header {
        margin-bottom: 56px;
      }
      .sec-eyebrow {
        display: inline-block;
        font-size: 11px;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: var(--mocha);
        font-weight: 600;
        margin-bottom: 14px;
      }
      .sec-eyebrow.light {
        color: var(--gold);
      }
      h2.sec-title {
        font-family: var(--serif);
        font-size: clamp(32px, 3.5vw, 48px);
        font-weight: 600;
        letter-spacing: -0.5px;
        line-height: 1.1;
        color: var(--ink);
        margin-bottom: 16px;
      }
      h2.sec-title.light {
        color: var(--white);
      }
      h2.sec-title em {
        font-style: italic;
        color: var(--mocha);
      }
      h2.sec-title.light em {
        color: var(--gold);
      }
      .sec-sub {
        font-size: 16px;
        font-weight: 300;
        color: #6a7585;
        max-width: 520px;
        line-height: 1.7;
      }
      .sec-sub.light {
        color: rgba(255, 255, 255, 0.55);
      }

      /* ─── PROPERTY TYPES ──────────────────────────────────────── */
      #services {
        background: var(--cream);
      }
      .services-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 16px;
      }
      .service-card {
        background: var(--white);
        border: 1px solid #e8e2da;
        border-radius: var(--r20);
        padding: 36px 28px;
        transition: all 0.25s;
        cursor: pointer;
        position: relative;
        overflow: hidden;
      }
      .service-card::before {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        height: 3px;
        background: var(--gold);
        transform: scaleX(0);
        transform-origin: left;
        transition: transform 0.3s;
      }
      .service-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
        border-color: rgba(201, 169, 110, 0.3);
      }
      .service-card:hover::before {
        transform: scaleX(1);
      }
      .sc-icon {
        width: 52px;
        height: 52px;
        background: var(--sand);
        border-radius: 14px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 22px;
        transition: background 0.25s;
      }
      .service-card:hover .sc-icon {
        background: rgba(201, 169, 110, 0.15);
      }
      .sc-icon svg {
        width: 24px;
        height: 24px;
        stroke: var(--mocha);
        fill: none;
        stroke-width: 1.8;
      }
      .sc-title {
        font-family: var(--serif);
        font-size: 21px;
        font-weight: 600;
        color: var(--ink);
        margin-bottom: 10px;
      }
      .sc-desc {
        font-size: 14px;
        color: #6a7585;
        line-height: 1.65;
        font-weight: 300;
        margin-bottom: 20px;
      }
      .sc-link {
        font-size: 13px;
        font-weight: 500;
        color: var(--mocha);
        display: flex;
        align-items: center;
        gap: 5px;
      }
      .sc-link svg {
        width: 14px;
        height: 14px;
        stroke: var(--mocha);
        fill: none;
        stroke-width: 2;
        transition: transform 0.2s;
      }
      .service-card:hover .sc-link svg {
        transform: translateX(4px);
      }

      /* ─── FEATURED PROPERTIES TABS ──────────────────────────── */
      #properties {
        background: var(--white);
      }
      .prop-tabs {
        display: flex;
        gap: 4px;
        margin-bottom: 40px;
        border-bottom: 1px solid #ede8e0;
        padding-bottom: 0;
      }
      .ptab {
        padding: 12px 22px;
        font-size: 13px;
        font-weight: 500;
        color: #8a9aa8;
        cursor: pointer;
        border-bottom: 2px solid transparent;
        margin-bottom: -1px;
        transition: all 0.15s;
        letter-spacing: 0.3px;
      }
      .ptab.active {
        color: var(--mocha);
        border-bottom-color: var(--mocha);
      }
      .ptab:hover:not(.active) {
        color: var(--ink);
      }
      .props-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
      }
      .prop-card {
        background: var(--white);
        border: 1px solid #ede8e0;
        border-radius: 16px;
        overflow: hidden;
        transition: all 0.25s;
        cursor: pointer;
      }
      .prop-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 20px 48px rgba(0, 0, 0, 0.09);
        border-color: rgba(201, 169, 110, 0.3);
      }
      .prop-img {
        height: 200px;
        background: var(--mist);
        position: relative;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
      }
      .prop-img-bg {
        position: absolute;
        inset: 0;
        background: linear-gradient(135deg, #1a2840 0%, #243352 50%, #1a3028 100%);
      }
      .prop-img-pattern {
        position: absolute;
        inset: 0;
        opacity: 0.15;
        background-image: repeating-linear-gradient(
          45deg,
          rgba(201, 169, 110, 0.3) 0,
          rgba(201, 169, 110, 0.3) 1px,
          transparent 0,
          transparent 50%
        );
        background-size: 20px 20px;
      }
      .prop-img-label {
        position: relative;
        z-index: 2;
        text-align: center;
        padding: 20px;
      }
      .prop-img-label .city-name {
        font-family: var(--serif);
        font-size: 32px;
        font-weight: 600;
        color: rgba(255, 255, 255, 0.9);
        letter-spacing: -0.5px;
      }
      .prop-img-label .country-name {
        font-size: 12px;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: var(--gold);
        margin-top: 4px;
      }
      .prop-badge {
        position: absolute;
        top: 14px;
        left: 14px;
        z-index: 3;
        padding: 4px 10px;
        border-radius: 20px;
        font-size: 10px;
        font-weight: 600;
        letter-spacing: 0.5px;
        text-transform: uppercase;
      }
      .badge-new {
        background: var(--gold);
        color: var(--navy);
      }
      .badge-offplan {
        background: rgba(22, 34, 54, 0.85);
        color: var(--gold);
        border: 1px solid rgba(201, 169, 110, 0.4);
      }
      .badge-ready {
        background: rgba(20, 80, 40, 0.85);
        color: #7eeaaa;
        border: 1px solid rgba(126, 234, 170, 0.3);
      }
      .prop-body {
        padding: 20px 22px 22px;
      }
      .prop-name {
        font-family: var(--serif);
        font-size: 18px;
        font-weight: 600;
        color: var(--ink);
        margin-bottom: 6px;
      }
      .prop-loc {
        font-size: 13px;
        color: #8a9aa8;
        margin-bottom: 14px;
        display: flex;
        align-items: center;
        gap: 5px;
      }
      .prop-loc svg {
        width: 13px;
        height: 13px;
        stroke: #8a9aa8;
        fill: none;
        stroke-width: 2;
        flex-shrink: 0;
      }
      .prop-specs {
        display: flex;
        gap: 14px;
        margin-bottom: 16px;
        padding-bottom: 16px;
        border-bottom: 1px solid #f0ebe3;
      }
      .prop-spec {
        font-size: 12px;
        color: #8a9aa8;
        display: flex;
        align-items: center;
        gap: 5px;
      }
      .prop-spec svg {
        width: 13px;
        height: 13px;
        stroke: #8a9aa8;
        fill: none;
        stroke-width: 2;
      }
      .prop-spec strong {
        color: var(--ink);
        font-weight: 500;
      }
      .prop-footer {
        display: flex;
        align-items: center;
        justify-content: space-between;
      }
      .prop-price {
        font-family: var(--serif);
        font-size: 22px;
        font-weight: 600;
        color: var(--mocha);
      }
      .prop-price span {
        font-family: var(--sans);
        font-size: 12px;
        color: #8a9aa8;
        font-weight: 300;
      }
      .prop-cta {
        font-size: 12px;
        font-weight: 500;
        color: var(--mocha);
        border: 1px solid rgba(76, 55, 36, 0.2);
        border-radius: 6px;
        padding: 7px 14px;
        transition: all 0.15s;
      }
      .prop-cta:hover {
        background: var(--mocha);
        color: var(--white);
      }
      .props-more {
        text-align: center;
        margin-top: 44px;
      }
      .btn-outline-dark {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 13px 32px;
        border: 1px solid var(--mocha);
        color: var(--mocha);
        border-radius: var(--r6);
        font-size: 14px;
        font-weight: 500;
        transition: all 0.2s;
      }
      .btn-outline-dark:hover {
        background: var(--mocha);
        color: var(--white);
      }
      .btn-outline-dark svg {
        width: 15px;
        height: 15px;
        stroke: currentColor;
        fill: none;
        stroke-width: 2;
      }

      /* ─── WHY CHOOSE US ─────────────────────────────────────── */
      #why {
        background: var(--navy);
      }
      .why-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 80px;
        align-items: center;
      }
      .why-left {
      }
      .why-features {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 24px;
        margin-top: 44px;
      }
      .why-feat {
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 14px;
        padding: 24px 22px;
        transition: all 0.2s;
      }
      .why-feat:hover {
        background: rgba(201, 169, 110, 0.06);
        border-color: rgba(201, 169, 110, 0.2);
      }
      .wf-icon {
        width: 40px;
        height: 40px;
        background: rgba(201, 169, 110, 0.1);
        border-radius: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 14px;
      }
      .wf-icon svg {
        width: 20px;
        height: 20px;
        stroke: var(--gold);
        fill: none;
        stroke-width: 1.8;
      }
      .wf-title {
        font-size: 15px;
        font-weight: 500;
        color: var(--white);
        margin-bottom: 7px;
      }
      .wf-desc {
        font-size: 13px;
        color: rgba(255, 255, 255, 0.45);
        line-height: 1.65;
        font-weight: 300;
      }
      /* Stats panel */
      .why-stats {
        background: rgba(255, 255, 255, 0.03);
        border: 1px solid rgba(201, 169, 110, 0.15);
        border-radius: 20px;
        padding: 40px 36px;
      }
      .ws-title {
        font-family: var(--serif);
        font-size: 24px;
        font-weight: 600;
        color: var(--white);
        margin-bottom: 28px;
      }
      .ws-row {
        display: flex;
        gap: 20px;
        margin-bottom: 20px;
      }
      .ws-stat {
        flex: 1;
      }
      .ws-num {
        font-family: var(--serif);
        font-size: 40px;
        font-weight: 600;
        color: var(--gold);
        line-height: 1;
        margin-bottom: 5px;
      }
      .ws-num sup {
        font-size: 22px;
      }
      .ws-label {
        font-size: 12px;
        color: rgba(255, 255, 255, 0.4);
        letter-spacing: 0.3px;
      }
      .ws-divider {
        height: 1px;
        background: rgba(255, 255, 255, 0.07);
        margin: 28px 0;
      }
      .ws-bar-row {
        margin-bottom: 18px;
      }
      .ws-bar-label {
        display: flex;
        justify-content: space-between;
        margin-bottom: 7px;
      }
      .ws-bar-label span {
        font-size: 12px;
        color: rgba(255, 255, 255, 0.5);
      }
      .ws-bar-label strong {
        font-size: 12px;
        color: var(--gold);
        font-weight: 500;
      }
      .ws-bar-track {
        height: 4px;
        background: rgba(255, 255, 255, 0.08);
        border-radius: 2px;
        overflow: hidden;
      }
      .ws-bar-fill {
        height: 100%;
        background: linear-gradient(90deg, var(--mocha), var(--gold));
        border-radius: 2px;
      }
      .ws-verified {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-top: 24px;
      }
      .ws-verified-icon {
        width: 32px;
        height: 32px;
        background: rgba(201, 169, 110, 0.15);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
      }
      .ws-verified-icon svg {
        width: 16px;
        height: 16px;
        stroke: var(--gold);
        fill: none;
        stroke-width: 2;
      }
      .ws-verified-text {
        font-size: 12px;
        color: rgba(255, 255, 255, 0.45);
        line-height: 1.5;
      }

      /* ─── BROKERS SECTION ──────────────────────────────────── */
      #brokers {
        background: var(--sand);
      }
      .brokers-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 80px;
        align-items: center;
      }
      .broker-cards {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 16px;
      }
      .broker-card {
        background: var(--white);
        border: 1px solid #e8e2da;
        border-radius: 14px;
        padding: 24px 20px;
        transition: all 0.2s;
      }
      .broker-card:hover {
        border-color: rgba(76, 55, 36, 0.25);
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
      }
      .bc-avatar {
        width: 48px;
        height: 48px;
        border-radius: 12px;
        margin-bottom: 14px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: var(--serif);
        font-size: 18px;
        font-weight: 600;
      }
      .bc-name {
        font-size: 14px;
        font-weight: 500;
        color: var(--ink);
        margin-bottom: 3px;
      }
      .bc-role {
        font-size: 12px;
        color: #8a9aa8;
        margin-bottom: 12px;
      }
      .bc-rating {
        display: flex;
        align-items: center;
        gap: 5px;
      }
      .bc-stars {
        display: flex;
        gap: 2px;
      }
      .bc-stars svg {
        width: 12px;
        height: 12px;
        fill: var(--gold);
      }
      .bc-count {
        font-size: 11px;
        color: #8a9aa8;
      }
      .bc-verified {
        display: flex;
        align-items: center;
        gap: 4px;
        margin-top: 10px;
      }
      .bc-verified svg {
        width: 13px;
        height: 13px;
        fill: #3a9a5a;
      }
      .bc-verified span {
        font-size: 11px;
        color: #3a9a5a;
        font-weight: 500;
      }
      .broker-info h3 {
        font-family: var(--serif);
        font-size: 30px;
        font-weight: 600;
        color: var(--ink);
        margin-bottom: 16px;
        line-height: 1.1;
      }
      .broker-info p {
        font-size: 15px;
        color: #6a7585;
        line-height: 1.75;
        font-weight: 300;
        margin-bottom: 24px;
      }
      .broker-pills {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-bottom: 32px;
      }
      .broker-pill {
        padding: 6px 14px;
        background: var(--white);
        border: 1px solid #e8e2da;
        border-radius: 20px;
        font-size: 12px;
        color: var(--mocha);
        font-weight: 500;
      }

      /* ─── NEWSLETTER ─────────────────────────────────────────── */
      #newsletter {
        background: var(--mocha);
        padding: 72px 5%;
        text-align: center;
      }
      .nl-inner {
        max-width: 560px;
        margin: 0 auto;
      }
      .nl-inner h2 {
        font-family: var(--serif);
        font-size: 38px;
        font-weight: 600;
        color: var(--white);
        margin-bottom: 12px;
      }
      .nl-inner p {
        font-size: 15px;
        color: rgba(255, 255, 255, 0.55);
        font-weight: 300;
        margin-bottom: 32px;
      }
      .nl-form {
        display: flex;
        gap: 10px;
      }
      .nl-input {
        flex: 1;
        padding: 13px 18px;
        background: rgba(255, 255, 255, 0.1);
        border: 1px solid rgba(255, 255, 255, 0.2);
        border-radius: var(--r6);
        color: var(--white);
        font-family: var(--sans);
        font-size: 14px;
        outline: none;
      }
      .nl-input::placeholder {
        color: rgba(255, 255, 255, 0.35);
      }
      .nl-input:focus {
        border-color: rgba(201, 169, 110, 0.5);
      }
      .btn-nl {
        background: var(--gold);
        color: var(--navy);
        padding: 13px 28px;
        border-radius: var(--r6);
        font-size: 14px;
        font-weight: 600;
        border: none;
        cursor: pointer;
        white-space: nowrap;
        transition: all 0.15s;
      }
      .btn-nl:hover {
        background: var(--gold2);
      }
      .nl-fine {
        font-size: 11px;
        color: rgba(255, 255, 255, 0.3);
        margin-top: 12px;
      }

      /* ─── FOOTER ──────────────────────────────────────────────── */
      footer {
        background: var(--navy);
        padding: 72px 5% 0;
        border-top: 1px solid rgba(201, 169, 110, 0.12);
      }
      .footer-inner {
        max-width: 1240px;
        margin: 0 auto;
      }
      .footer-top {
        display: grid;
        grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
        gap: 48px;
        padding-bottom: 56px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.06);
      }
      .footer-brand p {
        font-size: 14px;
        color: rgba(255, 255, 255, 0.4);
        line-height: 1.75;
        margin-top: 16px;
        font-weight: 300;
        max-width: 260px;
      }
      .footer-social {
        display: flex;
        gap: 10px;
        margin-top: 24px;
      }
      .social-btn {
        width: 36px;
        height: 36px;
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: rgba(255, 255, 255, 0.4);
        transition: all 0.15s;
        cursor: pointer;
      }
      .social-btn:hover {
        border-color: var(--gold);
        color: var(--gold);
      }
      .social-btn svg {
        width: 15px;
        height: 15px;
        stroke: currentColor;
        fill: none;
        stroke-width: 2;
      }
      .footer-col h5 {
        font-size: 11px;
        letter-spacing: 1.8px;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.25);
        font-weight: 500;
        margin-bottom: 20px;
      }
      .footer-col a {
        display: block;
        font-size: 13px;
        color: rgba(255, 255, 255, 0.45);
        margin-bottom: 11px;
        transition: color 0.15s;
        font-weight: 300;
      }
      .footer-col a:hover {
        color: rgba(255, 255, 255, 0.85);
      }
      .footer-bottom {
        padding: 24px 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 12px;
      }
      .footer-bottom p {
        font-size: 12px;
        color: rgba(255, 255, 255, 0.25);
      }
      .footer-reg {
        font-size: 11px;
        color: rgba(255, 255, 255, 0.2);
      }
      .footer-badges {
        display: flex;
        gap: 8px;
      }
      .fbadge {
        padding: 4px 10px;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 5px;
        font-size: 10px;
        color: rgba(255, 255, 255, 0.3);
        letter-spacing: 0.5px;
      }

      /* ─── UTILITIES ─────────────────────────────────────────── */
      .text-center {
        text-align: center;
      }
      .text-center .sec-sub {
        margin: 0 auto;
      }
      @keyframes fadeUp {
        from {
          opacity: 0;
          transform: translateY(20px);
        }
        to {
          opacity: 1;
          transform: none;
        }
      }
      .fade-up {
        animation: fadeUp 0.6s ease forwards;
      }

      /* ─── RESPONSIVE ─────────────────────────────────────────── */
      @media (max-width: 1024px) {
        .hero-inner {
          grid-template-columns: 1fr;
          gap: 48px;
        }
        .hero-search-card {
          max-width: 520px;
        }
        .services-grid {
          grid-template-columns: repeat(2, 1fr);
        }
        .props-grid {
          grid-template-columns: repeat(2, 1fr);
        }
        .why-grid {
          grid-template-columns: 1fr;
          gap: 48px;
        }
        .brokers-grid {
          grid-template-columns: 1fr;
          gap: 48px;
        }
        .footer-top {
          grid-template-columns: 1fr 1fr 1fr;
        }
        .footer-brand {
          grid-column: span 3;
        }
      }
      @media (max-width: 768px) {
        .nav-links {
          display: none;
        }
        .services-grid {
          grid-template-columns: 1fr;
        }
        .props-grid {
          grid-template-columns: 1fr;
        }
        .why-features {
          grid-template-columns: 1fr;
        }
        .ws-row {
          flex-direction: column;
          gap: 12px;
        }
        .broker-cards {
          grid-template-columns: 1fr;
        }
        .footer-top {
          grid-template-columns: 1fr 1fr;
        }
        .footer-brand {
          grid-column: span 2;
        }
        .nl-form {
          flex-direction: column;
        }
      }