.quotes__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem 3rem;
}

.quotes__item {
  min-width: 0;
  margin: 0;
  padding-left: 1.25rem;
  border-left: 3px solid var(--color-blue, #244e8e);
}

.quotes__item blockquote {
  margin: 0;
  font: inherit;
}

.quotes__item blockquote p { margin: 0; }
.quotes__item figcaption { margin-top: 0.75rem; color: #666; }

.image-grid__items {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2.5rem 2rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.image-grid__item { display: block; color: inherit; text-align: center; text-decoration: none; }
.image-grid__media { display: flex; align-items: center; justify-content: center; height: 6rem; }
.image-grid__media img { width: auto; height: auto; max-width: min(100%, 11rem); max-height: 100%; object-fit: contain; }
.image-grid__item h3 { margin: 1rem 0 0; color: #000; font-size: 1.125rem; line-height: 1.35; }
.image-grid__item:focus-visible { outline: 2px solid currentColor; outline-offset: 6px; }

.social-links { display: flex; flex-wrap: wrap; align-items: center; gap: 0.25rem; }
.social-links a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; color: #000; }
.social-links img { display: block; width: 22px; height: 22px; object-fit: contain; }
.social-links a:hover { opacity: 0.65; }
.social-links a:focus-visible { outline: 2px solid #000; outline-offset: 1px; }
.site-menu__social { display: none; }

@media (max-width: 820px) {
  .quotes__grid { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .image-grid__items { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 1.25rem; }
  .site-menu__social { display: block; grid-column: 1 / -1; }
}
