@media (max-width: 920px) {
  .split {
    grid-template-columns: 1fr;
  }

  .modal-image-wrap {
    min-height: 280px;
  }

  .featured-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  }

  .group-nav {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  }
}

@media (max-width: 640px) {
  .nav {
    flex-direction: column;
    align-items: flex-start;
  }

  section {
    padding: 54px 0;
  }

  .top-button {
    right: 16px;
    bottom: 16px;
    width: 50px;
    height: 50px;
  }

  .modal-box {
    width: min(100%, 96vw);
  }

  .modal-image-wrap {
    min-height: 220px;
  }

  .group-card-image {
    height: 190px;
  }

  .group-card-content,
  .panel,
  .card-body {
    padding-left: 16px;
    padding-right: 16px;
  }
}