.hero--formats {
  position: relative;
}

.hero--formats .hero__content {
  display: flex;
  flex-direction: column;
}

.hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: var(--space-24);
  align-items: center;
}

@media (max-width: 767.98px) {
  .hero__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.hero__lead {
  margin-top: var(--space-8);
  margin-bottom: var(--space-8);
}

.hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-6);
  margin-top: var(--space-10);
  margin-bottom: var(--space-6);
}

.hero__subcopy {
  font-size: var(--font-size-sm);
}

.hero__media-card {
  box-shadow: var(--shadow-strong);
}

.section__header {
  max-width: 720px;
}

.section__header--center {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.section--intro {
  background: radial-gradient(circle at 0 0, rgba(245, 196, 81, 0.12), transparent 55%),
    linear-gradient(145deg, var(--color-bg-elevated), var(--color-bg));
}

.formats-highlight-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-16);
  margin-top: var(--space-24);
}

@media (max-width: 991.98px) {
  .formats-highlight-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .formats-highlight-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.formats-highlight-card p {
  font-size: var(--font-size-sm);
}

.section--format {
  background-color: var(--color-bg);
}

.section--format.section--alt {
  background: radial-gradient(circle at 100% 0, rgba(255, 75, 107, 0.12), transparent 55%),
    linear-gradient(145deg, var(--color-bg-elevated), var(--color-bg));
}

.format-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
  gap: var(--space-24);
  align-items: center;
}

.format-grid--reverse {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr);
}

@media (max-width: 767.98px) {
  .format-grid,
  .format-grid--reverse {
    grid-template-columns: minmax(0, 1fr);
  }
}

.format-list {
  list-style: none;
  padding-left: 0;
  margin-top: var(--space-10);
  margin-bottom: var(--space-10);
}

.format-list li {
  position: relative;
  padding-left: 1.4rem;
  margin-bottom: var(--space-4);
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.format-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55rem;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-strong));
  box-shadow: 0 0 0 4px rgba(245, 196, 81, 0.16);
}

.format-cta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-6);
  margin-top: var(--space-8);
}

.section--themed {
  background: linear-gradient(145deg, var(--color-accent-navy), var(--color-accent-burgundy));
}

.themed-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.1fr);
  gap: var(--space-24);
  align-items: flex-start;
}

@media (max-width: 767.98px) {
  .themed-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.themed-card {
  height: 100%;
}

.section--segments {
  background-color: var(--color-bg-soft);
}

.segments-grid {
  margin-top: var(--space-24);
}

.segments-card__link {
  margin-top: var(--space-8);
}

.segments-media {
  margin-top: var(--space-24);
}

.segments-media__item {
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
}

.section--scenarios {
  background-color: var(--color-bg);
}

.scenarios-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.1fr);
  gap: var(--space-24);
  align-items: flex-start;
}

@media (max-width: 767.98px) {
  .scenarios-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.scenarios-card + .scenarios-card {
  margin-top: var(--space-10);
}

.section--team {
  background: linear-gradient(160deg, var(--color-bg-elevated), var(--color-accent-navy));
}

.team-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.1fr);
  gap: var(--space-24);
  align-items: flex-start;
}

@media (max-width: 767.98px) {
  .team-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.team-card + .team-card {
  margin-top: var(--space-10);
}

.section--interactive {
  background-color: var(--color-bg-soft);
}

.interactive-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.9fr);
  gap: var(--space-24);
  align-items: flex-start;
}

@media (max-width: 767.98px) {
  .interactive-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.section--visual {
  background-color: var(--color-bg);
}

.visual-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.1fr);
  gap: var(--space-24);
  align-items: center;
}

@media (max-width: 767.98px) {
  .visual-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.section--gallery {
  background: radial-gradient(circle at 0 100%, rgba(245, 196, 81, 0.13), transparent 55%),
    linear-gradient(145deg, var(--color-bg-elevated), var(--color-bg));
}

.gallery-wrapper {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
  margin-top: var(--space-24);
}

.gallery-main-item {
  box-shadow: var(--shadow-strong);
}

.gallery-cta {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--space-6);
  margin-top: var(--space-16);
}

.section--bottom-cta {
  background-color: var(--color-bg-elevated);
}

.bottom-cta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-16);
}

.bottom-cta__text {
  max-width: 620px;
}

.bottom-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-6);
}
