.visitor-overview {
  background: #e7ebe4;
  border-top: 1px solid var(--line);
}

.visitor-overview-inner {
  min-height: 210px;
  padding-top: 42px;
  padding-bottom: 42px;
  display: grid;
  grid-template-columns: 1.25fr 0.55fr 1fr;
  gap: 5vw;
  align-items: center;
}

.visitor-overview .eyebrow { margin-bottom: 12px; }
.visitor-overview h2 { font-size: clamp(28px, 3vw, 42px); letter-spacing: -0.04em; }
.visitor-overview-heading > p:last-child { max-width: 390px; margin: 13px 0 0; color: #53665f; font-size: 14px; }
.visitor-total, .visitor-locations { border-left: 1px solid #b9c1b9; padding-left: 26px; }
.visitor-total span, .visitor-locations > span { display: block; font: 500 10px var(--mono); letter-spacing: 0.08em; color: #61766d; }
.visitor-total strong { display: block; margin-top: 4px; font: 500 clamp(42px, 5vw, 68px)/1 var(--serif); letter-spacing: -0.05em; }
.visitor-locations ul { display: flex; flex-wrap: wrap; gap: 7px 12px; list-style: none; padding: 0; margin: 12px 0 10px; }
.visitor-locations li { font-size: 13px; color: #354940; }
.visitor-locations li strong { font-weight: 600; }
.visitor-locations small { display: block; max-width: 330px; color: #6c7c75; font-size: 11px; line-height: 1.45; }

@media (max-width: 760px) {
  .visitor-overview-inner { grid-template-columns: 1fr 1fr; gap: 30px; }
  .visitor-overview-heading { grid-column: 1 / -1; }
}

@media (max-width: 430px) {
  .visitor-overview-inner { grid-template-columns: 1fr; gap: 24px; }
  .visitor-overview-heading { grid-column: auto; }
  .visitor-total, .visitor-locations { border-left: 0; border-top: 1px solid #b9c1b9; padding: 20px 0 0; }
}
