.home-page .residences {
  background: var(--color-linen);
  color: var(--color-forest);
  font-family: var(--font-thai);
  font-weight: 300;
}
.home-page .residences h2 {
  font-family: var(--font-display-en);
  font-size: var(--fs-h2-en);
  font-weight: 500;
  line-height: var(--lh-heading-en);
}
.home-page .residences .residence-grid { row-gap: 64px; }
.home-page .residences .residence-caption h3,
.home-page .residences .land-row h3 {
  font-family: var(--font-display-en);
  font-size: var(--fs-h3-en);
  font-weight: 500;
}
.home-page .residences .eyebrow,
.home-page .residences .section-label,
.home-page .residences .asset-caption,
.home-page .residences .section-note,
.home-page .residences .text-link,
.home-page .residences .image-action,
.home-page .residences .residence-caption > span {
  font-family: var(--font-thai);
  font-size: var(--fs-label);
  font-weight: 500;
}
.home-page .residences .residence-sub,
.home-page .residences .section-intro p,
.home-page .residences .land-row p {
  font-family: var(--font-thai);
  font-size: var(--fs-body);
  font-weight: 300;
  line-height: var(--lh-body);
}
.home-page .residences .image-action { background: var(--overlay-forest); }
.home-page .residence-specs {
  display: grid;
  grid-template-columns: 1.6fr repeat(3, 1fr);
  gap: 12px;
  margin: 20px 0 0;
  padding-top: 18px;
  border-top: 1px solid var(--border-default);
}
.home-page .residence-specs dt {
  margin-bottom: 7px;
  color: var(--text-secondary);
  font-size: var(--fs-label);
  font-weight: 500;
}
.home-page .residence-specs dd {
  margin: 0;
  font-size: var(--fs-body);
  line-height: var(--lh-body);
}
@media (max-width: 600px) {
  .home-page .residences .residence-grid { row-gap: 40px; }
  .home-page .residence-specs { gap: 8px; }
}
