.container {
  padding: 0 40px;
}

.carousel-caption h1 {
  font-size: 4rem;
}

.carousel-caption p {
  font-size: 1.5rem;
}

.carousel-control {
  display: flex;
  width: 56px;
  height: 56px;
  font-size: 2.5rem;
}

.carousel-control.prev {
  left: 32px;
}

.carousel-control.next {
  right: 32px;
}

.gallery-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}

.services-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
}

.testimonials-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}

.footer-grid {
  grid-template-columns: repeat(5, 1fr);
  gap: 32px;
}

section {
  padding: 100px 0;
}

.hero {
  height: 100vh;
}

.gallery-grid {
  column-count: 3;
}

.service-card {
  padding: 40px 32px;
}

.testimonial-card {
  padding: 40px;
}

.hero .cta-button {
   top: 140px;
}