/* Keep the simplest location option visible; reveal the map only on request. */
.find-place-step .location-step-heading { margin-bottom: 1.5rem; }
.find-place-step h2 { flex-wrap: wrap; }
.find-place-step h2 .optional-badge { font-family: sans-serif; font-size: .75rem; font-weight: 600; line-height: 1.4; padding: .25rem .6rem; }
.location-link-card { padding: clamp(1.1rem, 3vw, 2rem); border: 1px solid #cbded7; border-radius: 20px; background: #f3f9f6; margin-bottom: 1.25rem; }
.location-option-title { display: flex; align-items: center; gap: 1rem; margin-bottom: 1.25rem; }
.location-option-title h3 { margin: 0 0 .35rem; font-size: 1.2rem; }
.location-option-title p, .location-skip p { margin: 0; color: #52615b; }
.location-link-card label { display: flex; flex-wrap: wrap; align-items: baseline; gap: .5rem; margin-bottom: .5rem; }
.location-link-card input { background: #fff; min-height: 52px; }
.location-link-card .field-hint { max-width: 68ch; }
#maps-link-status:empty { display: none; }
#maps-link-status { margin-bottom: 0; font-size: .9rem; color: #245e47; overflow-wrap: anywhere; }
#maps-link-status.is-invalid { color: #a33131; }
.location-map-options .location-workspace { margin-top: 0; }
.location-map-options .optional-content { padding: 1rem; }
.location-skip { display: flex; align-items: center; justify-content: space-between; gap: 1.25rem; padding: 1.25rem 0; }
.location-skip strong { display: block; margin-bottom: .35rem; }
.location-skip .btn { flex-shrink: 0; }
.find-place-step [hidden] { display: none !important; }
@media (max-width: 620px) {
  .location-skip { align-items: stretch; flex-direction: column; gap: .85rem; }
  .location-map-options .optional-content { padding: .65rem; }
  .find-place-step .location-step-heading h2 { font-size: 1.65rem; }
}
