.planning #planning-content { display: grid; gap: 1.25rem; }
.planning .services-intro { margin-block-end: .65rem; }
.planning .services-intro h2 { margin-block: .25rem; }
.planning .planning-filters { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.planning-navigation { margin-block-start: .75rem; }
.planning-filter { display: grid; max-width: 17rem; }
.planning-calendar { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: .25rem; }
.planning-calendar button { padding-inline: .15rem; text-align: center; border: 1px solid var(--line); background: white; color: var(--ink); }
.planning-calendar button[data-visits] { background: var(--tint); color: var(--accent); }
.planning-calendar small { display: block; color: var(--muted); }
.planning .planning-results h3, .planning .planning-results p { margin-block: .2rem; }
.planning .planning-results li { overflow-wrap: anywhere; }
.planning .planning-results li p { white-space: pre-wrap; }
.planning .planning-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: .6rem; }
@media (max-width: 760px) {
  .planning .planning-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .planning-filters > label:first-child { grid-column: 1 / -1; }
}
