:root{
  --ge-brand:#0E9F6E;      /* dark green */
  --ge-brand2:#13C296;     /* accent green */
  --ge-ink:#0f172a;        /* text */
  --ge-muted:#64748b;      /* subtle text */
  --ge-bg:#F9F8F6;         /* parchment */
  --ge-line:#e5e7eb;       /* borders */
  --ge-chip:#f1f5f9;       /* chip bg */
  --ge-badge:#ef4444;      /* red pin/badge */
}
body{
  font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:var(--ge-bg); color:var(--ge-ink);
}
/*a{ color:var(--ge-brand) }*/

.page-hero{
  background:linear-gradient(180deg, #0E9F6E 0%, #13C296 100%); color:#fff;
}
.page-hero .logo{ max-width:160px; }

.btn-ge{ background:var(--ge-brand); border-color:var(--ge-brand); color:#fff; }
.btn-ge:hover{ background:#0a7d57; border-color:#0a7d57; }

.search-wrap{ border:1px solid var(--ge-line); border-radius:12px; overflow:hidden; }
.search-wrap input{ border:0; box-shadow:none; }

.filter-bar .btn{ border:1px solid var(--ge-line); background:#fff; color:var(--ge-ink); }
.filter-bar .btn.active{ background:var(--ge-brand); color:#fff; border-color:var(--ge-brand); }

.map-wrap{ height:520px; border:1px solid var(--ge-line); border-radius:12px; overflow:hidden; }

.result-card{
  border:1px solid var(--ge-line); border-radius:12px; padding:1rem;
  transition:transform .12s ease, box-shadow .12s ease; background:#fff;
}
.result-card:hover{ transform:translateY(-2px); box-shadow:0 8px 24px rgba(0,0,0,.06); }

.alpha-grid .btn{ border-radius:999px; border:1px solid var(--ge-line); background:#fff; color:var(--ge-ink); }
.alpha-grid .btn.active{ background:var(--ge-brand); color:#fff; border-color:var(--ge-brand); }

.badge-ge{ background:var(--ge-badge); }
.tiny{ font-size:.8rem; color:var(--ge-muted); }
.tag{ font-size:.7rem; padding:.25rem .5rem; border-radius:6px; border:1px solid var(--ge-line); background:#fff; }
.tag + .tag{ margin-left:.35rem; }

.sticky-col{ position:sticky; top:1rem; }

/* Filter button colors synced with map markers */
.ge-filter-colored {
  --filter-color: #64748b;
  color: var(--filter-color) !important;
  border-color: var(--filter-color) !important;
}
.ge-filter-colored:hover:not(.active) {
  background-color: color-mix(in srgb, var(--filter-color), transparent 90%) !important;
}
.ge-filter-colored.active {
  background-color: var(--filter-color) !important;
  color: white !important;
  border-color: var(--filter-color) !important;
}