/* ==========================================================================
   State Directory — 5-column grid on dark bg
   ========================================================================== */

.state-directory {
  padding: var(--section-padding) 0 124px;
  margin-bottom: 0;
  background: var(--color-text-primary);
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  padding-left: calc(50vw - 50%);
  padding-right: calc(50vw - 50%);
}

.state-directory__grid {
  columns: 5;
  column-gap: var(--grid-gap);
}

.state-directory__grid > * {
  break-inside: avoid;
  margin-bottom: var(--spacing-lg);
}

.state-directory__state-name {
  font-family: var(--font-family);
  font-size: var(--h5-size);
  line-height: var(--h5-lh);
  font-weight: 700;
  color: var(--color-primary);
  margin: 0 0 12px;
  text-transform: uppercase;
}

.state-directory__locations {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xs);
}

.state-directory__locations li a {
  font-family: var(--font-family);
  font-size: 14px;
  color: rgba(255, 255, 255, 0.85);
  text-decoration: none;
}

.state-directory__locations li a:hover {
  color: var(--color-white);
  text-decoration: underline;
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */

@media (max-width: 1023px) {
  .state-directory__grid {
    columns: 3;
  }
}

@media (max-width: 767px) {
  .state-directory__grid {
    columns: 2;
    column-gap: 20px;
  }

  .state-directory__grid > * {
    margin-bottom: 32px;
  }

  .state-directory {
    padding: 40px 0;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .state-directory__state-name {
    font-size: 18px;
    line-height: 20px;
  }
}
