.page-search .field-block:last-of-type {
  margin-bottom: 1.25rem;
}

/* Service choice: two segments in one track. */
.service-switch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.25rem;
  padding: 0.25rem;
  border: 1px solid rgba(120, 132, 153, 0.3);
  border-radius: 0.9rem;
  background: rgba(225, 232, 240, 0.65);
}

.service-option {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  min-height: 48px;
  margin: 0;
  padding: 0.5rem 0.6rem;
  border-radius: 0.7rem;
  font-weight: 600;
  color: #58657a;
  cursor: pointer;
  transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

.service-option i {
  font-size: 1.05rem;
}

.service-option:hover {
  color: #1d2430;
}

.btn-check:checked + .service-option {
  background: rgba(252, 253, 255, 0.98);
  color: #1d2430;
  box-shadow: 0 1px 3px rgba(28, 34, 43, 0.16);
}

.btn-check:focus-visible + .service-option {
  box-shadow: 0 0 0 0.18rem rgba(151, 165, 183, 0.45);
}
