.front-page-main {
  min-height: 100vh;
}

.about-section {
  padding: 3rem 1.5rem;
}

.about-section__inner {
  margin: 0 auto;
  max-width: var(--content-max);
}

.about-section__intro {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.about-section__title {
  font-size: clamp(1.5rem, 1.29rem + 0.88vw, 2rem);
  line-height: 1.2;
  color: hsl(var(--foreground));
}

@media (min-width: 1440px) {
  .about-section__title {
    font-size: 1.8rem;
  }
}

@media (min-width: 1920px) {
  .about-section__title {
    font-size: 2.25rem;
  }
}

.about-section__stats {
  margin-top: 3rem;
}

.about-section__stats-label {
  font-size: clamp(1.1rem, 0.83rem + 1.15vw, 1.75rem);
  width: 100%;
  line-height: 1.1;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: hsl(var(--muted-foreground));
}

@media (min-width: 1440px) {
  .about-section__stats-label {
    font-size: 1.75rem;
  }
}

@media (min-width: 1920px) {
  .about-section__stats-label {
    font-size: 1.75rem;
  }
}

.about-section__stats-grid {
  margin-top: 1rem;
  display: grid;
  gap: 2rem;
}

.about-section__stats-text {
  font-size: clamp(1rem, 0.83rem + 0.71vw, 1.4rem);
  font-weight: 500;
  color: hsl(var(--foreground));
}

@media (min-width: 1440px) {
  .about-section__stats-text {
    font-size: 1.25rem;
  }
}

@media (min-width: 1920px) {
  .about-section__stats-text {
    font-size: 1.6rem;
  }
}

.about-section__gallery {
  margin-top: 3rem;
}

.about-section__gallery-grid {
  display: grid;
  gap: 1rem;
}

.about-section__gallery-item {
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.about-section__gallery-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  display: block;
}

.about-section__outro {
  margin-top: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.about-section__lead {
  font-size: 1.4rem;
  line-height: 1.625;
  font-weight: 300;
  color: hsl(var(--foreground));
  width: 89.333333%;
}

.about-section__sublead {
  font-size: 1.2rem;
  line-height: 1.625;
  font-weight: 300;
  color: hsl(var(--muted-foreground));
  width: 100%;
  text-align: right;
}

.about-section__mobile-link {
  display: none;
}

@media (min-width: 768px) {
  .about-section {
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .about-section__stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .about-section__gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
  }
}

@media (max-width: 767px) {
  .about-section {
    padding-bottom: 2rem;
  }

  .about-section__intro .section-header-row .section-link {
    display: none;
  }

  .about-section__title {
    font-size: 1.38rem;
    hyphens: auto;
    line-height: 1.16;
    text-align: justify;
    text-align-last: left;
    text-justify: inter-word;
  }

  .about-section__stats-label {
    font-size: 1.45rem;
    line-height: 1.15;
  }

  .about-section__mobile-link {
    display: block;
    margin-top: 1.5rem;
    margin-left: auto;
    width: fit-content;
    text-align: right;
  }

  .about-section__stats-grid {
    margin-top: 1.75rem;
    width: 100%;
    justify-items: center;
  }

  .about-stats__item {
    width: 100%;
    text-align: center;
  }

  .about-section__stats-text {
    font-size: 1.25rem;
    line-height: 1.2;
  }

  .about-section__lead {
    font-size: 1.34rem;
    hyphens: auto;
    line-height: 1.56;
    text-align: justify;
    text-align-last: left;
    text-justify: inter-word;
    width: 100%;
  }

  .about-section__sublead {
    font-size: 1.08rem;
    line-height: 1.52;
    text-align: left;
  }
}

@media (min-width: 1024px) {
  .about-section {
    padding-left: 5rem;
    padding-right: 5rem;
  }

  .about-section__stats-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
