.duke-gallery {
  width: min(1156px, 100%);
  padding-block: 56px 76px;
}

.gallery-intro h1 {
  max-width: none;
  margin-bottom: 24px;
  font-size: clamp(36px, 4.2vw, 56px);
}

.demo-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 36px;
}

.demo-nav a {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 5px;
  min-height: 44px;
  font-size: 14px;
}

.demo-section {
  margin-top: 44px;
  scroll-margin-top: 28px;
}

.demo-section + .demo-section {
  margin-top: 64px;
  padding-top: 44px;
  border-top: 1px solid var(--line);
}

.demo-heading {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 20px;
  margin-bottom: 22px;
}

.demo-heading h2 {
  margin: 0;
  font-size: clamp(28px, 3vw, 38px);
}

.demo-duration {
  color: var(--muted);
  font-size: 14px;
  font-variant-numeric: tabular-nums;
}

.duke-gallery .duke-media {
  background: transparent;
}

@media (max-width: 760px) {
  .duke-gallery {
    padding-block: 34px 48px;
  }

  .demo-nav {
    flex-direction: column;
    gap: 2px;
  }

  .demo-section {
    margin-top: 30px;
  }

  .demo-section + .demo-section {
    margin-top: 38px;
    padding-top: 30px;
  }

  .demo-heading {
    gap: 12px;
    margin-bottom: 18px;
  }
}
