.cf-controls {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
}

.cf-controls select {
  padding: 6px 8px;
  color: #506078;
  font: 650 10px Inter;
  background: #f5f8fc;
  border: 1px solid #dfe6ef;
  border-radius: 8px;
}

.map-panel {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  height: 280px;
  min-height: 280px;
  max-height: 280px;
  margin-bottom: 17px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #dfe6ef;
  border-radius: 17px;
}

.map-copy { padding: 21px 19px; }
.map-copy h2 { margin: 0 0 8px; font: 700 17px Manrope; }
.map-copy span { color: #728197; font-size: 11px; line-height: 1.55; }
#access-map {
  position: relative;
  width: 100%;
  height: 280px;
  min-height: 0;
  max-height: 280px;
  overflow: hidden;
  background: #eaf0f7;
}
.map-loading { position: absolute; inset: 0; display: grid; place-items: center; color: #728197; font-size: 11px; }
.map-popup { display: grid; gap: 3px; min-width: 130px; font-family: Inter,sans-serif; }
.map-popup strong { color: #7b1023; font-size: 13px; }
.map-popup span { color: #52637a; font-size: 10px; }

@media (max-width: 720px) {
  .map-panel { grid-template-columns: 1fr; }
  .map-panel { height: 420px; max-height: 420px; }
  #access-map { height: 280px; max-height: 280px; }
}
