/* Fluid content layout: let authenticated pages use all space left by the sidebar. */
.vd-content {
  min-width: 0;
}

.contacthub-content.container {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 34px clamp(16px, 2vw, 36px) 70px;
  min-width: 0;
}

.contacthub-content > *,
.contacthub-content .panel,
.contacthub-content .table-wrap,
.contacthub-content .filters,
.contacthub-content .cards,
.contacthub-content .grid {
  min-width: 0;
}

.contacthub-content .stats {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.contacthub-content .cards {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.contacthub-content .grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 900px) {
  .contacthub-content.container {
    width: 100%;
    margin: 0;
    padding: 4.75rem clamp(14px, 3vw, 24px) 48px;
  }

  .contacthub-content .grid.two,
  .contacthub-content .cards {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .contacthub-content.container {
    width: 100%;
    padding-inline: 10px;
  }
}
