.logo {
  width: 100%;
  max-width: 420px;
  margin-top: .85rem;
}

.home-hero {
  max-width: 900px;
  margin: 1rem auto 0;
  padding: 0 1.25rem;
  text-align: center;
}

.home-hero h1 {
  margin: 0;
  color: #040303;
  font-size: clamp(1.75rem, 4vw, 2.6rem);
  font-weight: 700;
  line-height: 1.2;
}

.home-hero p {
  max-width: 720px;
  margin: .75rem auto 0;
  color: #425448;
  font-size: 1.08rem;
  line-height: 1.65;
}

.home-info,
.home-info-editor {
  max-width: 900px;
  margin: 1.5rem auto 0;
  padding: 1.25rem;
}

.home-info {
  margin-top: .85rem;
  padding-top: 0;
}

.home-info-description {
  color: #253b2e;
  font-size: 1.05rem;
  line-height: 1.75;
  white-space: pre-wrap;
}

.home-info-description p,
.home-info-description div,
.home-info-description ul,
.home-info-description ol {
  margin: 0;
}

.home-info-description ul,
.home-info-description ol {
  display: inline-block;
  color: #253b2e;
  text-align: left;
}

.home-info-editor h2 {
  margin-bottom: 1rem;
  color: #253b2e;
}

.home-gallery-carousel {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(220px, 32%);
  gap: 1rem;
  max-width: 1100px;
  margin: 0 auto 0;
  padding: .75rem .25rem 1.25rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
}

.home-gallery-carousel:hover {
  scrollbar-width: thin;
}

.home-gallery-carousel::-webkit-scrollbar {
  height: 0;
}

.home-gallery-carousel:hover::-webkit-scrollbar {
  height: 8px;
}

.home-gallery-carousel::-webkit-scrollbar-track {
  background: transparent;
}

.home-gallery-carousel::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(93, 104, 95, .45);
}

.home-gallery-slide {
  position: relative;
  margin: 0;
  overflow: hidden;
  border: 1px solid #d9d2c4;
  border-radius: 8px;
  background: #ffffff;
  transition: box-shadow .2s ease, transform .2s ease;
}

.home-gallery-slide img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.home-gallery-slide:hover {
  z-index: 2;
  box-shadow: 0 10px 26px rgba(29, 37, 32, .22);
  transform: scale(1.15);
}

@media (max-width: 768px) {
  .home-gallery-carousel {
    grid-auto-columns: minmax(210px, 82%);
    margin-top: 0;
  }
}
