/* Local spacing and navigation; content components retain their UI kit styles. */
.housing-lead {
  font-size: var(--reading-size);
  line-height: var(--reading-leading);
  color: var(--heading-text);
}

.housing-routes .card {
  padding: 16px;
}

.housing-routes .card-title {
  font-size: var(--fs-base);
}

.housing-routes .card-link {
  margin-top: auto;
  padding-top: 8px;
}

.housing-article section,
.housing-article h3 {
  scroll-margin-top: 100px;
}

.housing-mobile-toc {
  display: none;
}

.housing-mobile-toc summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; list-style: none; }
.housing-mobile-toc summary::-webkit-details-marker { display: none; }
.housing-mobile-toc summary .ui-icon { transition: transform var(--motion-standard) var(--motion-ease); }
.housing-mobile-toc[open] summary .ui-icon { transform: rotate(180deg); }

.housing-mobile-links a {
  display: block;
  padding: 10px 0;
}

.housing-mobile-toc summary:focus-visible,
.housing-routes a:focus-visible {
  outline: 3px solid var(--accent);
  outline-offset: -3px;
}

@media (max-width: 1100px) {
  .housing-mobile-toc {
    display: block;
    margin-bottom: 24px;
  }
}
