.logo-brand {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
}

.logo-brand img {
  display: block;
  width: 174px;
  height: auto;
  object-fit: contain;
}

.site-header .logo-brand img {
  width: auto;
  height: 78px;
  max-width: 150px;
}

.groups {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(520px, 1.22fr);
  gap: clamp(50px, 8vw, 120px);
  background: #fffdf8;
}

.groups-intro {
  align-self: start;
  position: sticky;
  top: 120px;
}

.groups-intro > p:not(.eyebrow) {
  color: var(--muted);
  font-size: 18px;
  margin: 24px 0 30px;
}

.amenity-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}

.amenity-grid article {
  min-height: 230px;
  padding: 34px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.amenity-grid span {
  color: var(--gold);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
}

.amenity-grid h3 {
  font-size: 1.65rem;
  margin: 18px 0 12px;
}

.amenity-grid p {
  color: var(--muted);
  font-size: 14px;
  margin: 0;
}

footer .logo-brand img {
  width: 160px;
}

@media (max-width: 1080px) {
  .site-header .logo-brand img { width: auto; height: 72px; }
  nav { gap: 20px; }
  .groups { grid-template-columns: 1fr; }
  .groups-intro { position: static; }
}

@media (max-width: 700px) {
  .site-header .logo-brand img { width: auto; height: 64px; }
  .amenity-grid { grid-template-columns: 1fr; }
  .amenity-grid article { min-height: 0; }
}
