.vision-section {
  background: var(--neutral-light);
  padding: 6rem 2rem;
}

.vision-container {
  max-width: 60rem;
  margin: 0 auto;
}

.vision-content {
  text-align: center;
}

.vision-text {
  font-family: var(--font-body);
  font-size: var(--fs-h6);
  line-height: 1.8;
  color: rgba(0, 0, 0, 0.8);
  margin-bottom: 2.5rem;
}

.vision-quote {
  background: var(--primary-2);
  color: var(--neutral-light);
  padding: 2.5rem;
  border-radius: 1rem;
  font-family: var(--font-heading);
  font-size: var(--fs-h4);
  font-weight: var(--fw-semibold);
  font-style: italic;
  line-height: 1.6;
  position: relative;
  margin: 0;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

.vision-quote::before {
  content: '"';
  position: absolute;
  top: -0.5rem;
  left: 1rem;
  font-size: 5rem;
  color: rgba(255, 255, 255, 0.2);
  font-family: Georgia, serif;
}

@media (max-width: 1024px) {
  .vision-section {
    padding: 5rem 1.5rem;
  }

  .vision-quote {
    font-size: var(--fs-h5);
    padding: 2rem;
  }
}

@media (max-width: 900px) {
  .vision-section {
    padding: 4.5rem 1.25rem;
  }

  .vision-quote {
    font-size: var(--fs-h6);
    padding: 1.75rem;
  }
}

@media (max-width: 768px) {
  .vision-section {
    padding: 4rem 1rem;
  }

  .vision-quote {
    font-size: var(--fs-h6);
    padding: 1.5rem;
  }
}

@media (max-width: 480px) {
  .vision-section {
    padding: 3rem 1rem;
  }

  .vision-quote {
    font-size: var(--fs-base);
    padding: 1.25rem;
  }

  .vision-quote::before {
    font-size: 3rem;
  }
}
