*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    :root {
      --bg: #080C1A; --gold: #F5C842; --jade: #4ECDC4; --violet: #8B5CF6;
      --text: #F0F4FF; --text-dim: rgba(240,244,255,0.55);
      --glass-bg: rgba(255,255,255,0.06); --glass-border: rgba(255,255,255,0.10);
      --glass-hover: rgba(255,255,255,0.10);
      --radius-card: 20px; --radius-pill: 100px; --blur: blur(24px);
      --font-display: 'Plus Jakarta Sans', sans-serif; --font-body: 'Inter', sans-serif;
    }
    html { scroll-behavior: smooth; }
    body { background: var(--bg); color: var(--text); font-family: var(--font-body); font-size: 15px; line-height: 1.6; overflow-x: hidden; }
    html[lang="my"] {
      --font-display: 'Noto Sans Myanmar', 'Myanmar Text', sans-serif;
      --font-body: 'Noto Sans Myanmar', 'Myanmar Text', sans-serif;
    }
    html[lang="my"] body { font-size: 15px; line-height: 1.75; }
    html[lang="my"] .nav-logo { font-family: 'Plus Jakarta Sans', sans-serif; }
    html[lang="my"] .hero h1 {
      max-width: 18ch;
      font-size: clamp(2.25rem, 4.6vw, 3.6rem);
      line-height: 1.32;
      letter-spacing: 0;
      text-wrap: balance;
    }
    html[lang="my"] .hero-sub {
      max-width: 52ch;
      font-size: clamp(0.95rem, 1.45vw, 1.08rem);
      line-height: 1.9;
      text-wrap: pretty;
    }
    html[lang="my"] .hero-eyebrow,
    html[lang="my"] .section-eyebrow,
    html[lang="my"] .field label,
    html[lang="my"] .search-field label {
      letter-spacing: 0;
      text-transform: none;
    }
    html[lang="my"] .btn-primary,
    html[lang="my"] .btn-ghost,
    html[lang="my"] .search-btn,
    html[lang="my"] .nav-cta {
      font-size: 0.92rem;
      line-height: 1.55;
    }
    html[lang="my"] .section-head h2,
    html[lang="my"] .cta-banner h2 {
      letter-spacing: 0;
      line-height: 1.5;
    }
    html[lang="my"] .cat-card h3,
    html[lang="my"] .listing-body h4,
    html[lang="my"] .step h4,
    html[lang="my"] .modal-head h3 {
      line-height: 1.65;
      letter-spacing: 0;
    }
    .aurora { position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
    .aurora-blob { position: absolute; border-radius: 50%; filter: blur(80px); opacity: 0.18; animation: drift 18s ease-in-out infinite alternate; }
    .blob-1 { width: 600px; height: 600px; background: var(--gold); top: -10%; left: -10%; animation-duration: 20s; }
    .blob-2 { width: 500px; height: 500px; background: var(--jade); top: 30%; right: -5%; animation-duration: 25s; animation-delay: -8s; }
    .blob-3 { width: 400px; height: 400px; background: var(--violet); bottom: 10%; left: 30%; animation-duration: 22s; animation-delay: -4s; }
    @keyframes drift { 0% { transform: translate(0,0) scale(1); } 50% { transform: translate(40px,-30px) scale(1.08); } 100% { transform: translate(-20px,50px) scale(0.95); } }
    @media (prefers-reduced-motion: reduce) { .aurora-blob { animation: none; } }
    nav {
      position: fixed; top: 0; left: 0; right: 0; z-index: 100;
      display: flex; align-items: center; justify-content: space-between;
      padding: 0 5vw; height: 64px;
      background: rgba(8,12,26,0.6); backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur);
      border-bottom: 1px solid var(--glass-border);
    }
    .nav-logo { font-family: var(--font-display); font-weight: 800; font-size: 1.25rem; letter-spacing: -0.02em; color:var(--text); text-decoration:none; }
    .nav-logo span { color: var(--gold); }
    .nav-logo img { display:block;width:auto;height:34px;object-fit:contain; }
    .nav-menu { display: flex; align-items: center; justify-content: space-between; flex: 1; margin-left: 2.5rem; }
    .nav-links { display: flex; gap: 2rem; list-style: none; }
    .nav-links a { color: var(--text-dim); text-decoration: none; font-size: 0.875rem; font-weight: 500; transition: color 0.2s; }
    .nav-links a:hover { color: var(--text); }
    .nav-right { display: flex; align-items: center; gap: 0.75rem; }
    .lang-select {
      background: var(--glass-bg); border: 1px solid var(--glass-border);
      color: var(--text); border-radius: var(--radius-pill);
      padding: 0.28rem 0.7rem; font-size: 0.78rem; font-weight: 700;
      cursor: pointer; outline: none; backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur);
    }
    .lang-select option { background: #101528; color: var(--text); }
    .nav-cta { display:inline-flex;align-items:center;justify-content:center;background:var(--gold);color:#080C1A;border:none;border-radius:var(--radius-pill);padding:.5rem 1.25rem;font-family:var(--font-display);font-weight:700;font-size:.875rem;line-height:1;text-decoration:none;cursor:pointer;transition:opacity .2s; }
    .nav-cta:hover { opacity: 0.88; }
    .nav-hamburger { display: none; background: none; border: none; cursor: pointer; padding: 4px; }
    .nav-hamburger span { display: block; width: 22px; height: 2px; background: var(--text); margin: 5px 0; border-radius: 2px; transition: 0.3s; }
    .mobile-header-language { display: none; }
    .mobile-drawer, .mobile-drawer-overlay, .mobile-bottom-nav { display: none; }

    .hero { position: relative; z-index: 1; min-height: 100svh; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 80px 5vw 60px; }
    .hero-eyebrow { display: inline-flex; align-items: center; gap: 0.5rem; background: var(--glass-bg); border: 1px solid var(--glass-border); backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur); border-radius: var(--radius-pill); padding: 0.35rem 1rem; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--jade); margin-bottom: 1.5rem; }
    .hero-eyebrow::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--jade); display: inline-block; }
    .hero h1 { font-family: var(--font-display); font-weight: 800; font-size: clamp(2.5rem, 7vw, 5.5rem); line-height: 1.05; letter-spacing: -0.03em; margin-bottom: 1.25rem; max-width: 14ch; }
    .hero h1 em { font-style: normal; color: var(--gold); }
    .hero-sub { color: var(--text-dim); font-size: clamp(1rem, 2vw, 1.2rem); max-width: 44ch; margin: 0 auto 2.5rem; }
    .hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; justify-content: center; }
    .btn-primary { background: var(--gold); color: #080C1A; border: none; border-radius: var(--radius-pill); padding: 0.85rem 2rem; font-family: var(--font-display); font-weight: 700; font-size: 1rem; cursor: pointer; transition: opacity 0.2s, transform 0.15s; }
    .btn-primary:hover { opacity: 0.88; transform: translateY(-1px); }
    .btn-ghost { background: var(--glass-bg); color: var(--text); border: 1px solid var(--glass-border); backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur); border-radius: var(--radius-pill); padding: 0.85rem 2rem; font-family: var(--font-display); font-weight: 600; font-size: 1rem; cursor: pointer; transition: background 0.2s, transform 0.15s; }
    .btn-ghost:hover { background: var(--glass-hover); transform: translateY(-1px); }
    .hero-stats { display: flex; gap: 3rem; margin-top: 4rem; flex-wrap: wrap; justify-content: center; }
    .stat { text-align: center; }
    .stat-num { font-family: var(--font-display); font-weight: 800; font-size: 2rem; color: var(--gold); }
    .stat-label { font-size: 0.8rem; color: var(--text-dim); margin-top: 0.2rem; }

    section.block { position: relative; z-index: 1; padding: 5rem 5vw; max-width: 1200px; margin: 0 auto; }
    .section-head { margin-bottom: 2.5rem; }
    .section-eyebrow { color: var(--jade); font-size: 0.8rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; }
    .section-head h2 { font-family: var(--font-display); font-weight: 800; font-size: clamp(1.8rem, 4vw, 2.75rem); letter-spacing: -0.02em; margin-top: 0.5rem; }

    .search-panel { position: relative; z-index: 2; max-width: 880px; margin: -2.5rem auto 0; background: var(--glass-bg); border: 1px solid var(--glass-border); backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur); border-radius: var(--radius-card); padding: 1rem; display: grid; grid-template-columns: 1.4fr 1fr 1fr auto; gap: 0.75rem; box-shadow: 0 20px 60px rgba(0,0,0,0.4); }
    .mobile-search-toggle { display: none; }
    .search-field { display: flex; flex-direction: column; gap: 0.2rem; padding: 0.4rem 0.75rem; text-align: left; }
    .search-field label { font-size: 0.7rem; color: var(--text-dim); font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; }
    .filter-field-icon { display:none; }
    .search-field select { background: transparent; border: none; color: var(--text); font-family: var(--font-body); font-size: 0.95rem; outline: none; cursor: pointer; }
    .search-field select option { background: #101528; color: var(--text); }
    .price-range-field { justify-content:center;gap:.45rem;min-width:0; }
    .price-range-heading { display:flex;align-items:center;justify-content:space-between;gap:.65rem;min-width:0; }
    .price-range-heading label { white-space:nowrap; }
    .price-range-heading output { overflow:hidden;color:var(--gold);font-size:.76rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap; }
    .price-range-selection { display:flex;align-items:center;min-width:0; }
    .price-range-selection button { display:none; }
    .price-range-field input[type="range"] { width:100%;min-width:0;margin:0;accent-color:var(--gold);cursor:pointer; }
    .price-range-scale { display:flex;justify-content:space-between;gap:1rem;color:var(--text-dim);font-size:.68rem;font-weight:600; }
    .search-btn { background: var(--gold); color: #080C1A; border: none; border-radius: 14px; padding: 0 1.5rem; font-family: var(--font-display); font-weight: 700; font-size: 0.95rem; cursor: pointer; transition: opacity 0.2s; }
    .search-btn:hover { opacity: 0.88; }

    .cat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
    .cat-card { background: var(--glass-bg); border: 1px solid var(--glass-border); backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur); border-radius: var(--radius-card); padding: 2rem 1.75rem; transition: transform 0.25s, border-color 0.25s, background 0.25s; cursor: pointer;color:var(--text);text-decoration:none; }
    .cat-card:hover { transform: translateY(-6px); border-color: rgba(245,200,66,0.4); background: var(--glass-hover); }
    .cat-icon { width: 52px; height: 52px; border-radius: 14px; display: grid; place-items: center; font-size: 1.5rem; margin-bottom: 1.25rem; background: linear-gradient(135deg, rgba(245,200,66,0.2), rgba(78,205,196,0.15)); border: 1px solid var(--glass-border); }
    .cat-card h3 { font-family: var(--font-display); font-weight: 700; font-size: 1.25rem; margin-bottom: 0.4rem; }
    .cat-card p { color: var(--text-dim); font-size: 0.9rem; margin-bottom: 1rem; }
    .cat-count { color: var(--gold); font-weight: 600; font-size: 0.85rem; }

    .listings-head { display: flex; align-items: end; justify-content: space-between; flex-wrap: wrap; gap: 1rem; }
    .listing-type-tabs { display: flex; flex-wrap: wrap; gap: 0.55rem; margin: -1rem 0 1.5rem; }
    .listing-type-tabs button { min-height: 40px; padding: 0.45rem 0.9rem; border: 1px solid var(--glass-border); border-radius: var(--radius-pill); background: var(--glass-bg); color: var(--text-dim); font: 600 0.82rem var(--font-body); cursor: pointer; }
    .listing-type-tabs button.active { border-color: var(--gold); background: rgba(245,200,66,0.12); color: var(--gold); }
    .listing-load-more-wrap { display: flex; justify-content: center; margin-top: 1.5rem; }
    #view-all-listings-btn { display: none; }
    #load-more-listings-btn { display: none; }
    .listing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
    .listing-state { grid-column:1/-1;color:var(--text-dim);padding:1rem 0; }
    .listing-state-error { color:#f87171; }
    .home-property-group + .home-property-group { margin-top:3.5rem; }
    .home-property-head { display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem; }
    .home-property-head h3 { font:800 1.65rem var(--font-display); }
    .home-property-head a,.clear-listing-filters { color:var(--gold);font-weight:700;text-decoration:none; }
    .home-preview-grid .listing:nth-child(n+4) { display:none; }
    .top-ads-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem; }
    .listings-page { position:relative;z-index:1;padding-top:64px; }
    .listings-page-head { max-width:1200px;margin:0 auto;padding:4rem 5vw 1.5rem; }
    .listings-page-head h1 { margin:.35rem 0 .5rem;font:800 clamp(2rem,5vw,3.5rem) var(--font-display);letter-spacing:-.03em; }
    .listings-page-head p { color:var(--text-dim);font-size:1rem; }
    .listings-filter-panel { position:relative;top:auto;max-width:1200px;margin:0 auto 1rem;grid-template-columns:1.1fr 1.1fr 1fr 1.1fr auto; }
    @media (min-width: 861px) {
      body[data-page="listings"] .listings-filter-panel { grid-template-columns:minmax(0,1.05fr) minmax(0,1.05fr) minmax(0,1.15fr) minmax(0,1fr) 158px;gap:0;min-height:94px;padding:8px;border-radius:22px;background:rgba(20,25,43,.82);box-shadow:0 22px 55px rgba(0,0,0,.32); }
      body[data-page="listings"] .listings-filter-panel .search-field { position:relative;justify-content:center;min-width:0;min-height:76px;padding:.7rem 1rem;gap:.34rem;border-radius:14px;transition:background .18s ease,box-shadow .18s ease; }
      body[data-page="listings"] .listings-filter-panel .search-field:not(:first-of-type)::before { content:"";position:absolute;left:0;top:16px;bottom:16px;width:1px;background:var(--glass-border); }
      body[data-page="listings"] .listings-filter-panel .search-field:hover { background:rgba(255,255,255,.045); }
      body[data-page="listings"] .listings-filter-panel .search-field:focus-within { background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(78,205,196,.45); }
      body[data-page="listings"] .listings-filter-panel .search-field:focus-within::before { opacity:0; }
      body[data-page="listings"] .listings-filter-panel label { display:flex;align-items:center;gap:.42rem;font-size:.66rem;line-height:1;color:rgba(240,244,255,.56); }
      body[data-page="listings"] .listings-filter-panel .filter-field-icon { display:inline-grid;place-items:center;width:18px;height:18px;color:var(--jade);font-size:.85rem;font-weight:800;line-height:1; }
      body[data-page="listings"] .listings-filter-panel select { width:100%;min-height:28px;padding:0 1.4rem 0 0;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,rgba(240,244,255,.65) 50%),linear-gradient(135deg,rgba(240,244,255,.65) 50%,transparent 50%);background-position:calc(100% - 7px) 11px,calc(100% - 2px) 11px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;font-size:.92rem;font-weight:650; }
      body[data-page="listings"] .listings-filter-panel .price-range-field { padding-inline:1rem;gap:.38rem; }
      body[data-page="listings"] .listings-filter-panel .price-range-heading { align-items:center; }
      body[data-page="listings"] .listings-filter-panel .price-range-heading output { max-width:90px;font-size:.7rem; }
      body[data-page="listings"] .listings-filter-panel .price-range-field input[type="range"] { height:14px;accent-color:var(--gold); }
      body[data-page="listings"] .listings-filter-panel .price-range-scale { margin-top:-.12rem;font-size:.61rem; }
      body[data-page="listings"] .listings-filter-panel .search-btn { align-self:stretch;min-width:0;margin-left:8px;padding:0 1rem;border-radius:16px;font-size:.9rem;box-shadow:0 8px 22px rgba(245,200,66,.15);transition:transform .18s ease,background .18s ease,box-shadow .18s ease; }
      body[data-page="listings"] .listings-filter-panel .search-btn:hover { opacity:1;background:#ffd657;transform:translateY(-1px);box-shadow:0 11px 27px rgba(245,200,66,.23); }
      body[data-page="listings"] .listings-filter-panel .search-btn:active { transform:translateY(0); }
    }
    .listings-results-block { padding-top:2.5rem!important;padding-bottom:2.5rem!important; }
    .top-ads-section { padding-bottom:1rem!important; }
    .mobile-results-tools,.mobile-filter-head,.listings-filter-overlay,.mobile-language-overlay,.mobile-language-sheet,.area-option-list,.sort-option-list { display:none; }
    body.listings-filter-open { overflow:hidden; }
    [hidden] { display:none!important; }
    .listing { background: var(--glass-bg); border: 1px solid var(--glass-border); backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur); border-radius: var(--radius-card); overflow: hidden; transition: transform 0.25s, border-color 0.25s; display: flex; flex-direction: column; min-width: 0; cursor: pointer; }
    .listing:focus-visible { outline: 2px solid var(--jade); outline-offset: 3px; }
    .listing:hover { transform: translateY(-6px); border-color: rgba(78,205,196,0.4); }
    .listing-img { height: 180px; flex: 0 0 180px; overflow: hidden; position: relative; display: grid; place-items: center; font-size: 3rem; }
    .listing-img > img { position: absolute; inset: 0; display: block; width: 100% !important; height: 100% !important; object-fit: cover; object-position: center; }
    .listing-badge { position: absolute; z-index: 1; top: 0.85rem; left: 0.85rem; background: rgba(8,12,26,0.65); backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur); border: 1px solid var(--glass-border); border-radius: var(--radius-pill); padding: 0.3rem 0.8rem; font-size: 0.7rem; font-weight: 600; letter-spacing: 0.04em; }
    .listing.top-ad { border-color: rgba(245,200,66,0.5); box-shadow: 0 12px 36px rgba(245,200,66,0.08); }
    .listing-top-ad-badge { position: absolute; z-index: 2; left: 0.85rem; bottom: 0.75rem; display: inline-flex; align-items: center; gap: 0.3rem; padding: 0.3rem 0.7rem; border: 1px solid rgba(245,200,66,0.65); border-radius: var(--radius-pill); background: rgba(8,12,26,0.88); color: var(--gold); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.03em; backdrop-filter: blur(12px); }
    .listing-save { position: absolute; z-index: 2; top: 0.7rem; right: 0.7rem; display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid rgba(255,255,255,0.22); border-radius: 50%; background: rgba(8,12,26,0.7); color: #fff; font-size: 1.25rem; line-height: 1; cursor: pointer; backdrop-filter: blur(12px); }
    .listing-save.saved { color: var(--gold); background: rgba(8,12,26,0.9); }
    .listing-body { padding: 1.25rem; flex: 1; display: flex; flex-direction: column; min-width: 0; }
    .listing-property { color: var(--jade); font-size: 0.75rem; font-weight: 700; margin-bottom: 0.2rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .listing-body h4 { font-family: var(--font-display); font-weight: 700; font-size: 1.05rem; margin-bottom: 0.25rem; overflow-wrap: anywhere; }
    .listing-loc { color: var(--text-dim); font-size: 0.85rem; margin-bottom: 0.9rem; overflow-wrap: anywhere; }
    .listing-feats { display: flex; flex-wrap: wrap; gap: 0.35rem 1rem; color: var(--text-dim); font-size: 0.8rem; margin-bottom: 1rem; overflow-wrap: anywhere; }
    .listing-availability { width: fit-content; margin-bottom: 0.75rem; padding: 0.2rem 0.55rem; border-radius: var(--radius-pill); background: rgba(78,205,196,0.1); color: var(--jade); font-size: 0.72rem; font-weight: 700; }
    .listing-availability.occupied { background: rgba(248,113,113,0.1); color: #f87171; }
    .listing-foot { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; margin-top: auto; padding-top: 0.9rem; border-top: 1px solid var(--glass-border); }
    .listing-price { min-width: 0; overflow-wrap: anywhere; font-family: var(--font-display); font-weight: 800; font-size: 1.15rem; }
    .listing-price span { color: var(--text-dim); font-weight: 500; font-size: 0.8rem; }
    .listing-view { flex: 0 0 auto; background: var(--glass-bg); border: 1px solid var(--glass-border); color: var(--text); border-radius: var(--radius-pill); padding: 0.45rem 1rem; font-size: 0.8rem; font-weight: 600; cursor: pointer; transition: background 0.2s; }
    .listing-view:hover { background: var(--gold); color: #080C1A; border-color: var(--gold); }
    .detail-meta { color: var(--text-dim); font-size: 0.8rem; margin: -0.35rem 0 1rem; }
    .detail-save { display: inline-flex; align-items: center; justify-content: center; gap: 0.35rem; min-height: 42px; margin: 0 0 1rem; padding: 0.55rem 1rem; border: 1px solid var(--glass-border); border-radius: var(--radius-pill); background: var(--glass-bg); color: var(--text); font: 700 0.85rem var(--font-body); cursor: pointer; }
    .detail-save.saved { border-color: rgba(245,200,66,0.55); color: var(--gold); background: rgba(245,200,66,0.08); }
    .detail-title { margin-bottom:.4rem;font-family:var(--font-display);font-size:1.4rem;font-weight:800;line-height:1.35;overflow-wrap:anywhere; }
    .detail-location { margin-bottom:.75rem;color:var(--text-dim);line-height:1.6;overflow-wrap:anywhere; }
    .detail-price { margin-bottom:1rem;color:var(--gold);font-family:var(--font-display);font-size:1.5rem;font-weight:800; }
    .detail-price span { color:var(--text-dim);font-size:.85rem;font-weight:500; }
    .detail-description { margin-bottom:1rem;color:var(--text-dim);line-height:1.75;overflow-wrap:anywhere;white-space:pre-line; }
    .detail-features { display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem; }
    .detail-features span { padding:.3rem .75rem;border:1px solid var(--glass-border);border-radius:var(--radius-pill);background:var(--glass-bg);font-size:.8rem;overflow-wrap:anywhere; }
    .detail-contact { margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--glass-border);color:var(--text-dim);overflow-wrap:anywhere; }
    .detail-contact-label { margin-bottom:.25rem;color:var(--text);font-weight:700; }
    .detail-report { display:block;margin:.9rem 0 0 auto;border:0;background:transparent;color:var(--text-dim);font:600 .78rem var(--font-body);text-decoration:underline;text-underline-offset:3px;cursor:pointer; }
    .detail-report:hover { color:#f87171; }
    .detail-gallery { margin-bottom:1rem; }
    .detail-gallery-main { position:relative;height:260px;overflow:hidden;border-radius:14px;background:var(--glass-bg); }
    .detail-gallery-main img { width:100%;height:100%;display:block;object-fit:cover; }
    .detail-gallery-nav { position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(8,12,26,.72);color:#fff;font-size:1.2rem;cursor:pointer; }
    .detail-gallery-nav.prev { left:.6rem; }
    .detail-gallery-nav.next { right:.6rem; }
    .detail-gallery-count { position:absolute;right:.65rem;bottom:.6rem;padding:.25rem .55rem;border-radius:99px;background:rgba(8,12,26,.75);color:#fff;font-size:.68rem;font-weight:700; }
    .detail-gallery-thumbs { display:flex;gap:.45rem;margin-top:.5rem;overflow-x:auto;scrollbar-width:none; }
    .detail-gallery-thumbs::-webkit-scrollbar { display:none; }
    .detail-gallery-thumb { flex:0 0 58px;width:58px;height:46px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:9px;background:var(--glass-bg);cursor:pointer; }
    .detail-gallery-thumb.active { border-color:var(--gold); }
    .detail-gallery-thumb img { width:100%;height:100%;display:block;object-fit:cover; }
    .detail-modal-panel { display:flex;flex-direction:column;max-height:88svh;overflow:hidden; }
    .detail-modal-panel .modal-head { position:relative;z-index:5;flex:0 0 auto;background:#101528; }
    #modal-detail-body { min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:.25rem;scrollbar-gutter:stable; }
    .detail-actions { flex:0 0 auto;display:grid;grid-template-columns:1fr;gap:.65rem;margin:1rem -2rem -2rem;padding:.85rem 2rem calc(.85rem + env(safe-area-inset-bottom));border-top:1px solid var(--glass-border);background:rgba(14,18,35,.98);box-shadow:0 -12px 30px rgba(4,6,14,.32); }
    .detail-action { display: flex; align-items: center; justify-content: center; min-height: 48px; border-radius: var(--radius-pill); border: 1px solid var(--glass-border); background: var(--glass-bg); color: var(--text); font-weight: 700; text-decoration: none; }
    .detail-action.primary { border-color: var(--gold); background: var(--gold); color: #080C1A; }
    .detail-action.disabled { border-color: var(--glass-border); background: var(--glass-bg); color: var(--text-dim); cursor: not-allowed; }
    .promotion-note { margin-bottom:1rem;padding:.8rem .9rem;border:1px solid rgba(245,200,66,.28);border-radius:12px;background:rgba(245,200,66,.07);color:var(--text-dim);font-size:.82rem; }
    .promotion-status { display:inline-flex;margin-top:.4rem;padding:.2rem .55rem;border-radius:var(--radius-pill);background:rgba(245,200,66,.1);color:var(--gold);font-size:.7rem;font-weight:700; }
    .promotion-status.active { background:rgba(78,205,196,.1);color:var(--jade); }
    #modal-detail { z-index: 220; }
    .saved-listing-grid { display: grid; gap: 0.75rem; }
    .saved-row { display: grid; grid-template-columns: 96px minmax(0,1fr) auto; align-items: center; gap: 0.85rem; padding: 0.65rem; border: 1px solid var(--glass-border); border-radius: 15px; background: rgba(255,255,255,0.035); cursor: pointer; }
    .saved-row:hover { border-color: rgba(78,205,196,0.4); background: var(--glass-hover); }
    .saved-row:focus-visible { outline: 2px solid var(--jade); outline-offset: 2px; }
    .saved-row-img { width: 96px; height: 78px; border-radius: 11px; overflow: hidden; display: grid; place-items: center; background: var(--glass-bg); font-size: 1.8rem; }
    .saved-row-img img { width: 100%; height: 100%; display: block; object-fit: cover; }
    .saved-row-info { min-width: 0; }
    .saved-row-info h4 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: var(--font-display); font-size: 0.95rem; line-height: 1.4; }
    .saved-row-info p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--text-dim); font-size: 0.78rem; margin-top: 0.2rem; }
    .saved-row-price { color: var(--gold) !important; font-weight: 800; }
    .saved-row-actions { display: grid; gap: 0.4rem; }
    .saved-row-actions button { width: 38px; height: 38px; border: 1px solid var(--glass-border); border-radius: 50%; background: var(--glass-bg); color: var(--text); cursor: pointer; }
    .saved-row-actions .saved-row-remove { color: var(--gold); }
    .saved-empty { padding: 2rem 0.5rem; color: var(--text-dim); text-align: center; }

    .steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
    .step { background: var(--glass-bg); border: 1px solid var(--glass-border); backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur); border-radius: var(--radius-card); padding: 2rem; }
    .step-num { font-family: var(--font-display); font-weight: 800; font-size: 2.5rem; color: rgba(245,200,66,0.35); line-height: 1; }
    .step h4 { font-family: var(--font-display); font-weight: 700; font-size: 1.1rem; margin: 0.75rem 0 0.4rem; }
    .step p { color: var(--text-dim); font-size: 0.9rem; }

    .cta-banner { position: relative; z-index: 1; max-width: 1000px; margin: 2rem auto 5rem; background: linear-gradient(135deg, rgba(245,200,66,0.12), rgba(139,92,246,0.12)); border: 1px solid var(--glass-border); backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur); border-radius: 28px; padding: 3.5rem 2rem; text-align: center; }
    .cta-banner h2 { font-family: var(--font-display); font-weight: 800; font-size: clamp(1.6rem, 4vw, 2.5rem); letter-spacing: -0.02em; margin-bottom: 0.75rem; }
    .cta-banner p { color: var(--text-dim); max-width: 46ch; margin: 0 auto 2rem; }

    footer { position: relative; z-index: 1; border-top: 1px solid var(--glass-border); padding: 3rem 5vw; }
    .footer-inner { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 2rem; }
    .footer-brand { max-width: 30ch; }
    .footer-brand .nav-logo { font-size: 1.4rem; margin-bottom: 0.75rem; display: inline-block; }
    .footer-brand .nav-logo img { width: auto; height: 40px; object-fit: contain; }
    .footer-brand p { color: var(--text-dim); font-size: 0.85rem; }
    .footer-cols { display: flex; gap: 4rem; flex-wrap: wrap; }
    .footer-col h5 { font-family: var(--font-display); font-weight: 700; font-size: 0.9rem; margin-bottom: 0.9rem; }
    .footer-col a { display: block; color: var(--text-dim); text-decoration: none; font-size: 0.85rem; margin-bottom: 0.55rem; transition: color 0.2s; }
    .footer-col a:hover { color: var(--text); }
    .footer-col p { color: var(--text-dim); font-size: 0.85rem; margin-bottom: 0.55rem; max-width: 30ch; }
    .footer-bottom { max-width: 1200px; margin: 2.5rem auto 0; padding-top: 1.5rem; border-top: 1px solid var(--glass-border); color: var(--text-dim); font-size: 0.8rem; text-align: center; }

    :focus-visible { outline: 2px solid var(--jade); outline-offset: 3px; }

    /* ── modals ── */
    .modal-backdrop { position: fixed; inset: 0; z-index: 200; display: none; align-items: flex-start; justify-content: center; padding: 6vh 1rem 2rem; background: rgba(4,6,14,0.6); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); overflow-y: auto; }
    .modal-backdrop.open { display: flex; }
    .modal { width: 100%; max-width: 460px; background: rgba(16,21,40,0.92); border: 1px solid var(--glass-border); backdrop-filter: var(--blur); -webkit-backdrop-filter: var(--blur); border-radius: var(--radius-card); padding: 2rem; box-shadow: 0 30px 80px rgba(0,0,0,0.5); animation: modalIn 0.25s ease; }
    .modal.wide { max-width: 560px; }
    @keyframes modalIn { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
    @media (prefers-reduced-motion: reduce) { .modal { animation: none; } }
    .modal-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.25rem; }
    .modal-head h3 { font-family: var(--font-display); font-weight: 800; font-size: 1.4rem; letter-spacing: -0.02em; }
    .modal-close { position:relative;z-index:6;flex:0 0 auto;pointer-events:auto;background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text);width:32px;height:32px;border-radius:50%;font-size:1.1rem;cursor:pointer;line-height:1;transition:background .2s;touch-action:manipulation; }
    .modal-close:hover { background: var(--glass-hover); }
    .my-listings-modal { max-width:760px;max-height:min(86vh,780px);overflow:hidden; }
    .my-listings-modal .modal-head { margin-bottom:1rem;padding-bottom:.9rem;border-bottom:1px solid var(--glass-border); }
    #my-listings-body { display:grid;gap:.8rem;max-height:calc(min(86vh,780px) - 96px);overflow-y:auto;overscroll-behavior:contain;padding-right:.25rem;scrollbar-gutter:stable; }
    .owner-listing-card { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0;overflow:visible;border:1px solid var(--glass-border);border-radius:18px;background:rgba(255,255,255,.035);transition:border-color .18s ease,background .18s ease; }
    .owner-listing-card:hover { border-color:rgba(78,205,196,.28);background:rgba(255,255,255,.045); }
    .owner-listing-copy { min-width:0;padding:1.05rem 1rem; }
    .owner-listing-property { overflow:hidden;color:var(--jade)!important;font-size:.7rem!important;font-weight:800!important;letter-spacing:.035em;text-overflow:ellipsis;white-space:nowrap; }
    .owner-listing-title { overflow:hidden;margin-top:.12rem;font:750 1rem/1.35 var(--font-display)!important;text-overflow:ellipsis;white-space:nowrap; }
    .owner-listing-copy > p:not(.owner-listing-property):not(.owner-listing-title) { margin-top:.55rem!important;color:var(--text-dim)!important;font-size:.78rem!important; }
    .owner-listing-copy > p:not(.owner-listing-property):not(.owner-listing-title) span { display:inline-flex;margin-left:.35rem;padding:.17rem .48rem;border-radius:99px;background:rgba(78,205,196,.09);font-size:.66rem;font-weight:800;text-transform:capitalize; }
    .owner-listing-controls { display:grid;grid-template-columns:118px auto auto;align-items:end;gap:.5rem;padding:1rem;border-left:1px solid var(--glass-border); }
    .owner-inventory-field { grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;gap:.2rem .6rem;color:var(--text-dim);font-size:.68rem;font-weight:700; }
    .owner-inventory-field::after { content:'units available';grid-column:1;color:var(--text-dim);font-size:.62rem;font-weight:500; }
    .owner-inventory-field input { grid-column:2;grid-row:1/3;width:70px;min-height:40px;padding:.45rem .55rem;border:1px solid var(--glass-border);border-radius:10px;background:var(--glass-bg);color:var(--text);font:700 .85rem var(--font-body);outline:none; }
    .owner-inventory-field input:focus { border-color:var(--jade); }
    .my-listings-modal .owner-listing-controls .listing-view { display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.45rem .75rem;white-space:nowrap; }
    .owner-save-button { grid-column:1;border-color:rgba(78,205,196,.55)!important;color:var(--jade)!important; }
    .owner-promote-button { color:var(--gold)!important;border-color:rgba(245,200,66,.6)!important; }
    .owner-delete-button { color:var(--red)!important;border-color:rgba(248,113,113,.55)!important; }
    .field { display: flex; flex-direction: column; gap: 0.35rem; margin-bottom: 0.9rem; }
    .field-row { display: flex; gap: 0.75rem; }
    .field-row .field { flex: 1; }
    .field label { font-size: 0.75rem; font-weight: 600; color: var(--text-dim); text-transform: uppercase; letter-spacing: 0.05em; }
    .field input, .field select, .field textarea { background: rgba(255,255,255,0.04); border: 1px solid var(--glass-border); color: var(--text); border-radius: 12px; padding: 0.7rem 0.85rem; font-family: var(--font-body); font-size: 0.95rem; outline: none; transition: border-color 0.2s; width: 100%; }
    .field input:focus, .field select:focus, .field textarea:focus { border-color: var(--jade); }
    .field select option { background: #101528; }
    .field textarea { resize: vertical; min-height: 70px; }
    .modal .btn-primary { width: 100%; margin-top: 0.5rem; }
    .modal-alt { text-align: center; margin-top: 1rem; }
    .modal-alt button { background: none; border: none; color: var(--jade); font-size: 0.85rem; cursor: pointer; font-family: var(--font-body); }
    .form-error { color: #f87171; font-size: 0.85rem; min-height: 1.1rem; margin-top: 0.3rem; }
    .photo-manager-field { padding:.9rem;border:1px solid var(--glass-border);border-radius:14px;background:rgba(255,255,255,.025); }
    .photo-help { color:var(--text-dim);font-size:.72rem;line-height:1.45;margin:-.1rem 0 .35rem; }
    .photo-manager-field input[type=file] { padding:.55rem;font-size:.78rem; }
    .photo-progress { padding:.55rem .65rem;border-radius:9px;background:rgba(78,205,196,.08);color:var(--jade);font-size:.72rem;font-weight:700; }
    .photo-preview-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin-top:.55rem; }
    .photo-preview { position:relative;min-width:0;border:1px solid var(--glass-border);border-radius:12px;overflow:hidden;background:var(--glass-bg); }
    .photo-preview img { width:100%;height:92px;display:block;object-fit:cover; }
    .photo-cover-label { position:absolute;top:.35rem;left:.35rem;padding:.2rem .4rem;border-radius:99px;background:rgba(8,12,26,.8);color:var(--gold);font-size:.56rem;font-weight:800; }
    .photo-preview-actions { display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--glass-border); }
    .photo-preview-actions button { min-height:31px;border:0;background:#151a2d;color:var(--text-dim);font-size:.68rem;cursor:pointer; }
    .photo-preview-actions button:hover:not(:disabled) { color:var(--text);background:#20263b; }
    .photo-preview-actions button:disabled { opacity:.28;cursor:not-allowed; }
    .photo-preview-actions .remove { color:#f87171; }

    @media (max-width: 860px) {
      body { padding-bottom: calc(92px + env(safe-area-inset-bottom)); }
      body.mobile-drawer-open { overflow: hidden; }
      body.language-sheet-open { overflow:hidden; }
      body[data-page="listings"].listings-filter-open footer { visibility:hidden;pointer-events:none; }
      nav { height: 60px; padding: 0 4vw; justify-content: flex-start; gap: 0.8rem; }
      .nav-logo { font-size: 1.15rem; }
      .nav-logo img { width:auto;height:30px; }
      .nav-menu { display: none; }
      .nav-hamburger { display: block; order: -1; width: 44px; height: 44px; margin-left: -8px; border-radius: 12px; }
      .mobile-header-language { display: block; margin-left: auto; max-width: 118px; min-height: 36px; padding: 0.4rem 1.65rem 0.4rem 0.7rem; text-overflow: ellipsis; }
      .nav-hamburger:focus-visible, .mobile-drawer button:focus-visible, .mobile-drawer a:focus-visible, .mobile-bottom-item:focus-visible { outline: 2px solid var(--jade); outline-offset: 2px; }
      .mobile-drawer-overlay { display: block; position: fixed; inset: 0; z-index: 198; background: rgba(2,5,14,0.66); opacity: 0; visibility: hidden; transition: opacity 0.25s, visibility 0.25s; }
      .mobile-drawer-overlay.open { opacity: 1; visibility: visible; }
      .mobile-drawer { display: flex; flex-direction: column; position: fixed; z-index: 199; top: 0; bottom: 0; left: 0; width: min(86vw, 340px); padding: max(1rem, env(safe-area-inset-top)) 1rem calc(1rem + env(safe-area-inset-bottom)); background: rgba(10,14,29,0.98); border-right: 1px solid var(--glass-border); box-shadow: 24px 0 70px rgba(0,0,0,0.48); transform: translateX(-105%); transition: transform 0.28s ease; overflow-y: auto; }
      .mobile-drawer.open { transform: translateX(0); }
      .mobile-drawer-head { display: flex; align-items: center; justify-content: space-between; min-height: 48px; padding: 0 0.35rem 0.8rem; border-bottom: 1px solid var(--glass-border); }
      .mobile-drawer-close { width: 44px; height: 44px; border: 1px solid var(--glass-border); border-radius: 50%; background: var(--glass-bg); color: var(--text); font-size: 1.4rem; cursor: pointer; }
      .mobile-drawer-links { display: grid; gap: 0.25rem; padding: 0.85rem 0; }
      .mobile-drawer-link { display: flex; align-items: center; gap: 0.85rem; min-height: 48px; padding: 0.7rem 0.8rem; border: 0; border-radius: 13px; background: transparent; color: var(--text); text-decoration: none; font: 600 0.95rem var(--font-body); text-align: left; cursor: pointer; }
      .mobile-drawer-link:hover, .mobile-drawer-link:active { background: var(--glass-hover); }
      .mobile-drawer-icon { width: 24px; color: var(--jade); font-size: 1.15rem; text-align: center; }
      .mobile-drawer-account { margin-top: auto; padding-top: 1rem; border-top: 1px solid var(--glass-border); display: grid; gap: 0.6rem; }
      .mobile-bottom-nav { display: grid; grid-template-columns: repeat(4, 1fr); align-items: end; justify-content: initial; gap: 0; position: fixed; z-index: 150; top: auto; left: max(12px, env(safe-area-inset-left)); right: max(12px, env(safe-area-inset-right)); bottom: max(12px, env(safe-area-inset-bottom)); height: 68px; max-width: 520px; margin: 0 auto; padding: 7px 8px; border: 1px solid rgba(255,255,255,0.13); border-radius: 22px; background: rgba(14,18,35,0.92); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); box-shadow: 0 16px 45px rgba(0,0,0,0.48); transition: transform 0.28s ease, opacity 0.22s ease; }
      .mobile-bottom-nav.scroll-hidden { transform: translateY(calc(100% + 28px + env(safe-area-inset-bottom))); opacity: 0; pointer-events: none; }
      body.viewport-resizing .mobile-bottom-nav { transform:none!important;opacity:1!important;pointer-events:auto!important;transition:none!important; }
      .mobile-bottom-item { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; height: 54px; border: 0; border-radius: 16px; background: transparent; color: var(--text-dim); font: 600 0.67rem var(--font-body); cursor: pointer; }
      .mobile-bottom-item svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
      .mobile-bottom-item:active, .mobile-bottom-item.active { color: var(--gold); background: rgba(245,200,66,0.08); }
      .mobile-bottom-item.mobile-post { align-self: end; justify-self: center; width: 58px; height: 58px; margin-top: -12px; border-radius: 50%; color: #080C1A; background: var(--gold); box-shadow: 0 8px 24px rgba(245,200,66,0.28); }
      .mobile-bottom-item.mobile-post svg { width: 24px; height: 24px; }
      .mobile-bottom-item.mobile-post span { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
      .mobile-bottom-item.mobile-post:active { color: #080C1A; background: #ffda5c; transform: translateY(1px); }
      .mobile-owner-action { display: none; }
      .mobile-bottom-nav.owner-mode { grid-template-columns: repeat(5, 1fr); }
      .mobile-bottom-nav.owner-mode .mobile-owner-action { display: flex; }
      .search-panel { grid-template-columns: 1fr; }
      body[data-page="home"] > .search-panel { display:none; }
      .listings-filter-panel { margin:0 4vw 1rem; }
      body[data-page="listings"] nav { display:none; }
      body[data-page="listings"] .listings-page { z-index:auto;padding-top:0; }
      body[data-page="listings"] .listings-page-head { display:none; }
      body[data-page="listings"] .listings-results-block { padding:2.25rem 4vw!important; }
      body[data-page="listings"] .listings-head { align-items:center;margin-bottom:1.25rem; }
      .mobile-results-tools { position:sticky;top:0;z-index:90;display:block;padding:.65rem 1rem .55rem;background:rgba(8,12,26,.96);border-bottom:1px solid var(--glass-border);backdrop-filter:blur(18px); }
      .mobile-results-tools::after { content:'';position:absolute;left:0;right:0;bottom:-18px;height:18px;pointer-events:none;background:radial-gradient(ellipse at 50% 0,rgba(0,0,0,.5) 0,rgba(0,0,0,.28) 42%,rgba(0,0,0,0) 76%); }
      .mobile-results-search-row { display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:.45rem; }
      .mobile-results-back { display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--text);font-size:1.65rem;line-height:1;text-decoration:none; }
      .mobile-results-back:hover,.mobile-results-back:focus-visible { background:var(--glass-hover); }
      .mobile-results-summary { display:grid;grid-template-columns:38px minmax(0,1fr) 24px;align-items:center;width:100%;min-height:58px;padding:.55rem .7rem;border:1px solid var(--glass-border);border-radius:17px;background:rgba(255,255,255,.055);color:var(--text);text-align:left;cursor:pointer; }
      .mobile-results-summary strong,.mobile-results-summary small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
      .mobile-results-summary strong { font:700 .92rem var(--font-display); }
      .mobile-results-summary small { margin-top:.08rem;color:var(--text-dim);font-size:.72rem; }
      .mobile-results-search-icon { color:var(--gold);font-size:1.6rem;line-height:1; }
      .mobile-results-chevron { color:var(--text-dim);font-size:1.5rem;text-align:right; }
      .mobile-results-language { display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--glass-bg);color:var(--text);font-size:1.25rem;cursor:pointer; }
      .mobile-results-language:hover,.mobile-results-language:focus-within { background:var(--glass-hover); }
      .mobile-filter-chips { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin-top:.45rem; }
      .mobile-filter-chips button { min-width:0;min-height:44px;padding:.5rem .35rem;border:0;border-left:1px solid var(--glass-border);background:transparent;color:var(--text-dim);font:700 .8rem var(--font-body);cursor:pointer; }
      .mobile-filter-chips button:first-child { border-left:0; }
      .mobile-filter-chips button::after { content:'⌄';margin-left:.4rem; }
      .mobile-filter-chips button.active { color:var(--gold); }
      .mobile-filter-chips button:hover,.mobile-filter-chips button:focus-visible { background:rgba(255,255,255,.045); }
      .mobile-language-overlay { position:fixed;inset:0;z-index:319;display:block;visibility:hidden;background:rgba(4,6,14,.68);opacity:0;transition:opacity .2s,visibility .2s; }
      .mobile-language-overlay.open { visibility:visible;opacity:1; }
      .mobile-language-sheet { position:fixed;z-index:320;left:0;right:0;bottom:0;display:block;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom));border:1px solid var(--glass-border);border-radius:24px 24px 0 0;background:#101528;box-shadow:0 -24px 70px rgba(0,0,0,.5);transform:translateY(105%);transition:transform .25s ease; }
      .mobile-language-sheet.open { transform:translateY(0); }
      .mobile-language-head { display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem; }
      .mobile-language-head h2 { font:800 1.25rem var(--font-display); }
      .mobile-language-head button { display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--glass-border);border-radius:50%;background:var(--glass-bg);color:var(--text);font-size:1.35rem;cursor:pointer; }
      .mobile-language-options { display:grid;gap:.35rem; }
      .mobile-language-options button { display:flex;align-items:center;justify-content:space-between;width:100%;min-height:58px;padding:.65rem .85rem;border:0;border-radius:13px;background:transparent;color:var(--text);text-align:left;cursor:pointer; }
      .mobile-language-options button:hover,.mobile-language-options button:focus-visible,.mobile-language-options button.selected { background:var(--glass-hover); }
      .mobile-language-options strong,.mobile-language-options small { display:block; }
      .mobile-language-options strong { font-size:.95rem; }
      .mobile-language-options small { margin-top:.1rem;color:var(--text-dim);font-size:.7rem; }
      .language-check { color:var(--gold);font-size:1.15rem;opacity:0; }
      .mobile-language-options button.selected .language-check { opacity:1; }
      .mobile-filter-chips button::after { content:'';display:inline-block;width:6px;height:6px;margin:0 0 3px .5rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg); }
      .price-range-field { gap:.85rem!important;padding:.65rem .75rem 1rem!important; }
      .price-range-heading { display:flex;align-items:flex-end;justify-content:space-between;gap:1rem; }
      .price-range-heading output { color:var(--gold);font-size:.88rem;font-weight:800;white-space:nowrap; }
      .price-range-selection { display:flex;align-items:center;gap:.55rem; }
      .price-range-selection button { display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:.25rem .55rem;border:1px solid var(--glass-border);border-radius:99px;background:var(--glass-bg);color:var(--text-dim);font:700 .68rem var(--font-body);cursor:pointer; }
      .price-range-selection button:hover,.price-range-selection button:focus-visible { border-color:var(--gold);color:var(--gold); }
      .price-range-field input[type="range"] { width:100%;height:28px;margin:0;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer;outline:none; }
      .price-range-field input[type="range"]::-webkit-slider-runnable-track { height:5px;border-radius:99px;background:linear-gradient(to right,var(--gold) 0 var(--price-progress,100%),rgba(255,255,255,.14) var(--price-progress,100%) 100%); }
      .price-range-field input[type="range"]::-webkit-slider-thumb { width:24px;height:24px;margin-top:-9.5px;border:3px solid #101528;border-radius:50%;appearance:none;-webkit-appearance:none;background:var(--gold);box-shadow:0 0 0 1px rgba(245,200,66,.55),0 4px 12px rgba(0,0,0,.35); }
      .price-range-field input[type="range"]::-moz-range-track { height:5px;border-radius:99px;background:rgba(255,255,255,.14); }
      .price-range-field input[type="range"]::-moz-range-progress { height:5px;border-radius:99px;background:var(--gold); }
      .price-range-field input[type="range"]::-moz-range-thumb { width:20px;height:20px;border:3px solid #101528;border-radius:50%;background:var(--gold);box-shadow:0 0 0 1px rgba(245,200,66,.55),0 4px 12px rgba(0,0,0,.35); }
      .price-range-field input[type="range"]:focus-visible::-webkit-slider-thumb { box-shadow:0 0 0 4px rgba(245,200,66,.25),0 4px 12px rgba(0,0,0,.35); }
      .price-range-scale { display:flex;justify-content:space-between;color:var(--text-dim);font-size:.7rem;font-weight:600; }
      .area-native-select { display:none!important; }
      .area-picker-field { gap:.55rem!important;padding:.55rem 0 0!important; }
      .area-picker-field > label { padding:0 .75rem; }
      .area-option-list { display:grid;gap:.3rem;max-height:min(52svh,420px);overflow-y:auto;overscroll-behavior:contain;padding:.1rem .15rem .25rem;scrollbar-width:thin; }
      .area-option-button { display:flex;align-items:center;justify-content:space-between;width:100%;min-height:54px;padding:.65rem .85rem;border:0;border-radius:13px;background:transparent;color:var(--text);font:700 .9rem var(--font-body);text-align:left;cursor:pointer; }
      .area-option-button:hover,.area-option-button:focus-visible,.area-option-button.selected { background:var(--glass-hover); }
      .area-option-check { display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--glass-border);border-radius:50%;color:transparent;font-size:.8rem; }
      .area-option-button.selected { color:var(--gold); }
      .area-option-button.selected .area-option-check { border-color:var(--gold);background:var(--gold);color:#080c1a; }
      .sort-native-select { display:none!important; }
      .sort-picker-field { gap:.55rem!important;padding:.55rem 0 0!important; }
      .sort-picker-field > label { padding:0 .75rem; }
      .sort-option-list { display:grid;gap:.3rem;padding:.1rem .15rem .25rem; }
      .sort-option-button { display:flex;align-items:center;justify-content:space-between;width:100%;min-height:64px;padding:.7rem .85rem;border:0;border-radius:13px;background:transparent;color:var(--text);text-align:left;cursor:pointer; }
      .sort-option-button:hover,.sort-option-button:focus-visible,.sort-option-button.selected { background:var(--glass-hover); }
      .sort-option-copy strong,.sort-option-copy small { display:block; }
      .sort-option-copy strong { font:700 .92rem var(--font-body); }
      .sort-option-copy small { margin-top:.16rem;color:var(--text-dim);font-size:.7rem; }
      .sort-option-check { display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;margin-left:1rem;border:1px solid var(--glass-border);border-radius:50%;color:transparent;font-size:.8rem; }
      .sort-option-button.selected .sort-option-copy strong { color:var(--gold); }
      .sort-option-button.selected .sort-option-check { border-color:var(--gold);background:var(--gold);color:#080c1a; }
      .listings-filter-overlay { position:fixed;inset:0;z-index:299;display:block;visibility:hidden;background:rgba(4,6,14,.64);opacity:0;transition:opacity .2s,visibility .2s; }
      .listings-filter-overlay.open { visibility:visible;opacity:1; }
      .listings-filter-panel { position:fixed!important;z-index:300;isolation:isolate;inset:auto 0 0!important;width:100%!important;max-width:none!important;max-height:88svh;margin:0!important;padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom))!important;border-radius:24px 24px 0 0!important;overflow-y:auto;background:#151a2b!important;transform:translateY(105%);pointer-events:none;transition:transform .25s ease;box-shadow:0 -24px 70px rgba(0,0,0,.58); }
      .listings-filter-panel.mobile-open { transform:translateY(0);pointer-events:auto; }
      .mobile-filter-head { grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem; }
      .mobile-filter-head h2 { font:800 1.35rem var(--font-display); }
      .mobile-filter-head button { display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--glass-border);border-radius:50%;background:var(--glass-bg);color:var(--text);font-size:1.4rem; }
      .hero { min-height: auto; padding: 92px 5vw 44px; }
      .hero h1 { font-size: clamp(2.2rem, 11vw, 3.4rem); }
      .hero-sub { margin-bottom: 1.5rem; }
      .hero-actions #hero-post-btn { display: none; }
      .hero-stats { display: none; }
      .search-panel { width: auto; margin: 0 4vw; padding: 0.7rem; border-radius: 17px; }
      .mobile-search-toggle { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 50px; padding: 0.7rem 0.85rem; border: 0; border-radius: 13px; background: transparent; color: var(--text); font: 700 0.95rem var(--font-body); cursor: pointer; }
      .mobile-search-toggle::after { content: '⌄'; color: var(--jade); font-size: 1.2rem; transition: transform 0.2s; }
      .search-panel.expanded .mobile-search-toggle::after { transform: rotate(180deg); }
      .search-panel:not(.expanded) .search-field,
      .search-panel:not(.expanded) .search-btn { display: none; }
      .listings-filter-panel .search-field { display:flex!important; }
      .listings-filter-panel .search-btn { display:block!important;min-height:48px;padding:.7rem 1rem; }
      .listings-filter-panel [data-filter-section][hidden],
      .listings-filter-panel .search-btn[hidden] { display:none!important; }
      .search-panel.expanded .search-field { border-top: 1px solid var(--glass-border); padding-top: 0.7rem; }
      .search-panel.expanded .search-btn { min-height: 48px; padding: 0.7rem 1rem; }
      .category-section { display: none; }
      .listing-type-tabs { flex-wrap: nowrap; overflow-x: auto; margin: -1rem 0 1rem; padding-bottom: 0.2rem; scrollbar-width: none; }
      .listing-type-tabs::-webkit-scrollbar { display: none; }
      .listing-type-tabs button { flex: 0 0 auto; }
      .cat-grid, .listing-grid, .steps { grid-template-columns: 1fr; }
      .hero-stats { gap: 2rem; }
      .modal { padding: 1.25rem; }
      .modal-close { width: 44px; height: 44px; font-size: 1.2rem; }
      .my-listings-modal { max-height:calc(100svh - 1rem);padding:1rem; }
      .my-listings-modal .modal-head { margin-bottom:.75rem;padding-bottom:.7rem; }
      #my-listings-body { max-height:calc(100svh - 92px);padding-right:0; }
      .owner-listing-card { grid-template-columns:1fr; }
      .owner-listing-copy { padding:.85rem; }
      .owner-listing-controls { grid-template-columns:repeat(2,minmax(0,1fr));padding:.75rem .85rem;border-top:1px solid var(--glass-border);border-left:0; }
      .owner-inventory-field { grid-column:1/-1; }
      .owner-listing-controls .listing-view { width:100%;white-space:normal; }
      .owner-save-button { grid-column:auto; }
      .field-row { flex-direction: column; gap: 0; }
      .listing-view { min-height: 44px; padding: 0.6rem 1rem; }
      #modal-detail .modal { overflow:hidden;padding-bottom:0; }
      #modal-detail-body { padding:0 .25rem 1rem 0; }
      .detail-actions { margin:0 -1.25rem;padding:.85rem 1.25rem calc(.85rem + env(safe-area-inset-bottom)); }
      .detail-action { width:100%;min-height:52px;padding:.7rem 1rem;text-align:center;line-height:1.35;white-space:normal; }
    }
    @media (max-width: 600px) {
      .hero { padding: 80px 4vw 40px; }
      .cta-banner { padding: 2.5rem 1.25rem; margin: 1rem 1rem 3rem; }
      section.block { padding: 3rem 4vw; }
      .listing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; }
      .home-preview-grid .listing:nth-child(4) { display:flex; }
      .top-ads-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem; }
      .listings-page-head { padding:2.5rem 1rem 1rem; }
      .listings-page-head { display:none; }
      .listings-page { z-index:auto;padding-top:0; }
      .listings-page .listings-results-block { padding:1.5rem 1rem!important; }
      .listings-page .listings-head { align-items:center;margin-bottom:1.1rem; }
      .listings-page .listings-head h2 { font-size:1.5rem; }
      .listings-page .listing-grid { grid-template-columns:1fr;gap:.85rem; }
      .listings-page #listing-grid .listing { display:grid;grid-template-columns:minmax(126px,38%) minmax(0,1fr);min-height:178px;border-radius:17px; }
      .listings-page #listing-grid .listing-img { height:100%;min-height:178px;flex-basis:auto; }
      .listings-page #listing-grid .listing-body { padding:.9rem; }
      .listings-page #listing-grid .listing-property { display:block;font-size:.65rem; }
      .listings-page #listing-grid .listing-body h4 { font-size:.96rem;line-height:1.45; }
      .listings-page #listing-grid .listing-loc { white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2; }
      .listings-page #listing-grid .listing-foot { align-items:flex-end;margin-top:auto; }
      .listings-page #listing-grid .listing-price { margin-left:auto;text-align:right;font-size:1.05rem; }
      .listings-page .top-ads-grid { display:flex;gap:.8rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:1rem;padding:.1rem 0 .55rem;scrollbar-width:none; }
      .listings-page .top-ads-grid::-webkit-scrollbar { display:none; }
      .listings-page .top-ads-grid .listing { flex:0 0 86%;display:grid;grid-template-columns:minmax(126px,38%) minmax(0,1fr);min-height:178px;scroll-snap-align:start; }
      .listings-page .top-ads-grid .listing-img { height:100%;min-height:178px;flex-basis:auto; }
      .listings-page .top-ads-grid .listing-body { padding:.9rem; }
      .listings-page .top-ads-grid .listing-property { display:block; }
      .listing { border-radius: 16px; }
      .listing-img { height: 118px; flex-basis: 118px; }
      .listing-badge { top: 0.55rem; left: 0.55rem; max-width: calc(100% - 3.4rem); padding: 0.25rem 0.55rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 0.62rem; }
      .listing-save { top: 0.45rem; right: 0.45rem; width: 32px; height: 32px; font-size: 1rem; }
      .listing-top-ad-badge { left: 0.55rem; bottom: 0.5rem; max-width: calc(100% - 1.1rem); padding: 0.23rem 0.5rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 0.58rem; }
      .listing-body { padding: 0.72rem; }
      .listing-property { display: none; }
      .listing-body h4 { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-height: 1.45; }
      .listing-loc { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-bottom: 0.5rem; font-size: 0.72rem; }
      .listing-feats { display: none; }
      .listing-availability { margin-bottom: 0.55rem; padding: 0.16rem 0.42rem; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 0.62rem; }
      .listing-foot { padding-top: 0.55rem; }
      .listing-price { font-size: 0.92rem; }
      .listing-price span { font-size: 0.65rem; }
      .listing-view { display: none; }
      .modal-backdrop { padding: 4vh 0 0; align-items: flex-end; }
      .modal { width: 100%; max-height: 92svh; border-radius: 22px 22px 0 0; padding: 1.25rem 1rem calc(1.25rem + env(safe-area-inset-bottom)); }
      #modal-my.modal-backdrop { padding-top:max(12px,env(safe-area-inset-top));overflow:hidden; }
      #modal-my .my-listings-modal { display:flex;flex-direction:column;height:calc(100svh - max(12px,env(safe-area-inset-top)));max-height:none;padding:0;border-radius:22px 22px 0 0;overflow:hidden; }
      #modal-my .my-listings-modal .modal-head { position:sticky;top:0;z-index:3;flex:0 0 auto;margin:0;padding:.85rem 1rem;border-bottom:1px solid var(--glass-border);background:rgba(16,21,40,.98); }
      #modal-my #my-listings-body { flex:1 1 auto;min-height:0;max-height:none;align-content:start;grid-auto-rows:max-content;padding:.8rem 1rem calc(1rem + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-gutter:auto; }
      #modal-my .owner-listing-card { align-self:start;height:auto; }
      #modal-my .owner-listing-card:last-child { margin-bottom:.25rem; }
      #modal-detail .modal { max-height:92svh;padding-bottom:0; }
      #modal-detail .detail-actions { margin:0 -1rem;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom)); }
      .photo-preview-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .photo-preview img { height:105px; }
      .detail-gallery-main { height:230px; }
    }
    @media (min-width: 601px) and (max-width: 860px) {
      .listing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
      .listing-img { height: 155px; flex-basis: 155px; }
      .listing-body { padding: 0.9rem; }
      .listing-view { display: none; }
      .home-preview-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
      .top-ads-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .listings-page .listing-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem; }
      .listings-page .listing-img { height:180px;flex-basis:180px; }
      #modal-detail .modal { width:min(94vw,720px);max-width:720px; }
      #modal-detail .detail-gallery-main { height:300px; }
    }
    @media (max-width: 860px) and (orientation: landscape) and (max-height: 600px) {
      body { padding-bottom:calc(70px + env(safe-area-inset-bottom)); }
      nav { height:54px; }
      .hero { padding:64px 7vw 24px; }
      .hero-eyebrow { margin-bottom:.75rem; }
      .hero h1 { max-width:18ch;margin-bottom:.75rem;font-size:clamp(2rem,7vw,3.25rem); }
      .hero-sub { max-width:54ch;margin-bottom:1rem;font-size:.92rem; }
      .hero-actions .btn-primary,.hero-actions .btn-ghost { padding:.7rem 1.4rem;font-size:.88rem; }
      section.block { padding:2.25rem 5vw; }
      .section-head { margin-bottom:1.25rem; }
      .mobile-bottom-nav { bottom:max(6px,env(safe-area-inset-bottom));height:58px;max-width:460px;padding:4px 7px;border-radius:18px; }
      .mobile-bottom-item { height:48px; }
      .mobile-bottom-item.mobile-post { width:50px;height:50px;margin-top:-8px; }
      .mobile-results-tools { padding:.45rem max(1rem,env(safe-area-inset-left)) .35rem max(1rem,env(safe-area-inset-right)); }
      .mobile-results-search-row { grid-template-columns:40px minmax(0,1fr) 40px; }
      .mobile-results-back,.mobile-results-language { width:40px;height:40px; }
      .mobile-results-summary { min-height:48px;padding:.35rem .65rem; }
      .mobile-filter-chips { margin-top:.25rem; }
      .mobile-filter-chips button { min-height:36px; }
      body[data-page="listings"] .listings-results-block { padding:1.5rem 4vw!important; }
      .listings-page #listing-grid .listing { display:grid;grid-template-columns:minmax(132px,40%) minmax(0,1fr);min-height:168px;border-radius:16px; }
      .listings-page #listing-grid .listing-img { height:100%;min-height:168px;flex-basis:auto; }
      .listings-page #listing-grid .listing-body { min-width:0;padding:.75rem; }
      .listings-page #listing-grid .listing-feats { display:none; }
      .listings-page #listing-grid .listing-foot { margin-top:auto; }
      .listings-page .top-ads-grid .listing { display:grid;grid-template-columns:minmax(132px,40%) minmax(0,1fr);min-height:168px; }
      .listings-page .top-ads-grid .listing-img { height:100%;min-height:168px;flex-basis:auto; }
      .listings-filter-panel { max-height:calc(100svh - 8px)!important;padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom))!important;border-radius:18px 18px 0 0!important; }
      .mobile-filter-head { margin-bottom:0; }
      .mobile-filter-head h2 { font-size:1.15rem; }
      .mobile-filter-head button { width:38px;height:38px; }
      .area-option-list { max-height:45svh; }
      .area-option-button,.sort-option-button { min-height:48px; }
      .modal-backdrop { align-items:stretch;padding:0; }
      .modal,#modal-detail .modal { width:100%;max-width:none;max-height:100svh;border-radius:0;padding:.8rem 1rem calc(.8rem + env(safe-area-inset-bottom)); }
      #modal-detail .modal { height:100svh; }
      .modal-head { margin-bottom:.65rem; }
      .modal-close { width:40px;height:40px; }
      #modal-detail .detail-gallery-main { height:min(42svh,190px); }
      #modal-detail-body { padding-bottom:.5rem; }
      #modal-detail .detail-actions { padding:.55rem 1rem calc(.55rem + env(safe-area-inset-bottom)); }
      .detail-action { min-height:44px; }
    }
    @media (max-width: 400px) {
      .hero h1 { font-size: 2.2rem; }
      .hero-stats { flex-direction: column; gap: 1.25rem; align-items: center; }
      .saved-row { grid-template-columns: 82px minmax(0,1fr) auto; gap: 0.65rem; }
      .saved-row-img { width: 82px; height: 70px; }
    }
    @media (max-width: 359px) {
      .listing-grid { grid-template-columns: 1fr; gap: 1rem; }
      .listing-img { height: 165px; flex-basis: 165px; }
    }
    @media (min-width: 861px) and (max-width: 1100px) {
      nav { padding:0 2.5vw; }
      .nav-logo img { width:auto;height:32px; }
      .nav-menu { margin-left:1.25rem; }
      .nav-links { gap:1.1rem; }
      .nav-links a { font-size:.78rem; }
      .nav-right { gap:.4rem; }
      .lang-select { padding:.26rem .55rem;font-size:.7rem; }
      .nav-cta { padding:.5rem .85rem;font-size:.76rem; }
      .listing-grid { grid-template-columns:repeat(2,1fr); }
      .home-preview-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
      .top-ads-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .listings-filter-panel { margin-inline:3vw; }
      body[data-page="listings"] .listings-filter-panel { grid-template-columns:minmax(0,.9fr) minmax(0,.9fr) minmax(0,1.15fr) minmax(0,.9fr) 132px; }
      body[data-page="listings"] .listings-filter-panel .search-field { padding-inline:.75rem; }
      body[data-page="listings"] .listings-filter-panel .filter-field-icon { display:none; }
      .listings-results-block { padding-inline:3vw; }
    }
    @media (min-width:861px) and (max-width:950px) {
      .nav-logo img { width:auto;height:30px; }
      .nav-menu { margin-left:.75rem; }
      .nav-links { gap:.7rem; }
      .nav-links li:last-child { display:none; }
      .nav-cta { padding-inline:.7rem; }
    }
