.about-hero {
  padding-top: calc(var(--header-height-mobile) + var(--space-2xl));
  padding-bottom: var(--space-3xl);
}

.about-hero-layout {
  flex-direction: column;
}

.about-hero-content {
  min-width: 0;
}

.about-hero-media {
  min-width: 0;
}

.about-hero-figure {
  box-shadow: var(--shadow-strong);
}

.about-hero-meta {
  margin-top: var(--space-lg);
}

.about-hero-tags {
  flex-wrap: wrap;
}

.section-contrast {
  background: var(--gradient-soft);
}

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

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

.section-cta {
  background: radial-gradient(circle at top, rgba(198, 40, 59, 0.12), transparent 55%), radial-gradient(circle at bottom, rgba(30, 76, 154, 0.12), transparent 55%), var(--color-bg-ivory, #fdf7ef);
}

.about-section-grid {
  align-items: center;
}

.about-section-text,
.about-section-media {
  min-width: 0;
}

.about-media-figure {
  box-shadow: var(--shadow-soft);
}

.about-text-block {
  max-width: 38rem;
}

.about-text-block p:last-child {
  margin-bottom: 0;
}

.about-disclaimer-card {
  max-width: 48rem;
  margin: 0 auto;
}

.about-disclaimer-cta {
  margin-top: var(--space-lg);
}

.about-disclaimer-cta .btn-full {
  max-width: 100%;
}

.about-final-cta {
  max-width: 48rem;
  margin: 0 auto;
}

.about-final-cta-buttons {
  flex-wrap: wrap;
}

.about-final-cta-buttons .btn {
  max-width: 100%;
}

@media (min-width: 768px) {
  .about-hero {
    padding-top: calc(var(--header-height-desktop) + var(--space-3xl));
    padding-bottom: var(--space-3xl);
  }

  .about-hero-layout {
    flex-direction: row;
    align-items: center;
  }

  .about-hero-content {
    flex: 1 1 320px;
  }

  .about-hero-media {
    flex: 1 1 320px;
    display: flex;
    justify-content: flex-end;
  }

  .about-hero-figure {
    max-width: 520px;
  }

  .about-section-grid-reverse {
    direction: rtl;
  }

  .about-section-grid-reverse > * {
    direction: ltr;
  }
}

@media (max-width: 767.98px) {
  .hero-shell {
    border-radius: 0 0 24px 24px;
  }

  .about-hero {
    padding-top: calc(var(--header-height-mobile) + var(--space-2xl));
    padding-bottom: var(--space-2xl);
  }

  .about-hero-meta {
    margin-top: var(--space-md);
  }

  .about-hero-figure {
    margin-top: var(--space-lg);
  }

  .section {
    padding-top: var(--space-2xl);
    padding-bottom: var(--space-2xl);
  }

  .about-disclaimer-card,
  .about-final-cta {
    box-shadow: var(--shadow-soft);
  }

  .about-final-cta-buttons {
    flex-direction: column;
  }

  .about-final-cta-buttons .btn {
    width: 100%;
  }
}

@media (min-width: 1120px) {
  .about-hero-figure {
    max-width: 600px;
  }
}
