body {
  color: #000;
}

main {
  padding: clamp(32px, 4vw, 80px) clamp(20px, 2.2vw, 48px) clamp(20px, 2.2vw, 48px) clamp(40px, 5.5vw, 120px);
  max-width: 80vw;
}

.mission-text {
  font-family: 'Source Serif 4', Georgia, serif;
  font-weight: 300;
  font-size: 20px; /* overridden by JS fitText */
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: #000;
  max-width: 75%;
  margin-bottom: clamp(48px, 5vw, 100px);
}

.info-grid {
  display: flex;
  gap: clamp(40px, 4vw, 80px);
}

.info-section {
  flex: 1;
}

.info-section p {
  font-family: 'Source Serif 4', Georgia, serif;
  font-weight: 300;
  font-size: clamp(14px, 1vw, 18px);
  color: #000;
  line-height: 1.6;
}

.info-section p + p {
  margin-top: 1em;
}

/* Mobile */
@media (max-width: 768px) {
  main {
    padding: 32px 20px;
    max-width: none;
  }

  .mission-text {
    max-width: none;
  }

  .info-grid {
    flex-direction: column;
    gap: 24px;
  }
}
