.container {
  width: var(--site-max);
  margin: 0 auto;
}

.container--narrow {
  width: var(--site-max-narrow);
  margin: 0 auto;
}

.site-shell {
  min-height: 100vh;
  overflow-x: clip;
}

.section {
  padding: var(--space-8) 0;
}

.section--compact {
  padding: var(--space-7) 0;
}

.section--deep {
  padding: calc(var(--space-8) + var(--space-3)) 0;
}

.page-hero {
  padding-top: calc(var(--header-height) + var(--space-6));
  padding-bottom: var(--space-6);
}

.page-hero__split {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: var(--space-6);
  align-items: start;
}

.page-hero__lede {
  font-size: var(--body-lg);
  color: var(--color-text-muted);
  max-width: 28rem;
}

.page-hero--editorial {
  padding-bottom: var(--space-5);
}

.news-grid,
.focus-grid,
.pathway-layout,
.portrait-layout,
.dashboard-grid,
.track-map,
.access-layout {
  display: grid;
  gap: var(--space-6);
}

.news-grid {
  grid-template-columns: 1fr 1fr;
}

.focus-grid,
.pathway-layout,
.portrait-layout,
.track-map,
.access-layout {
  grid-template-columns: 0.9fr 1.1fr;
}

.dashboard-grid {
  grid-template-columns: minmax(0, 1.4fr) minmax(300px, 0.7fr);
  align-items: start;
}

.dashboard-main,
.dashboard-side {
  display: grid;
  gap: var(--space-5);
}

@media (max-width: 1024px) {
  .page-hero__split,
  .news-grid,
  .focus-grid,
  .pathway-layout,
  .portrait-layout,
  .dashboard-grid,
  .track-map,
  .access-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .section {
    padding: var(--space-7) 0;
  }

  .section--compact {
    padding: var(--space-6) 0;
  }

  .page-hero {
    padding-top: calc(var(--header-height) + var(--space-5));
  }
}
