/* A deliberate type scale: statement, section, card, then supporting detail. */
.home-compact {
  --home-display: clamp(48px,5.1vw,74px);
  --home-heading: clamp(34px,3.25vw,46px);
  --home-feature: clamp(36px,3.8vw,54px);
  --home-card: clamp(28px,2.5vw,36px);
  --home-copy: 17px;
}
.home-compact .hero h1 { font-size: var(--home-display); line-height: 1.06; }
.home-compact .section-heading h2 { font-size: var(--home-heading); line-height: 1.14; }
.home-compact .employee-copy h2,
.home-compact .agent-compact-copy h2,
.home-compact .contact-inner h2 { font-size: var(--home-feature); line-height: 1.12; }
.home-compact .home-next-card h2,
.home-compact .home-about-teaser h2 { font-size: var(--home-card); line-height: 1.16; }
.home-compact .hero-description,
.home-compact .intro { font-size: var(--home-copy); line-height: 1.7; }
.home-compact .hero-description p { margin: 0; }
.home-compact .hero-description p + p { margin-top: 14px; }
.home-compact .hero-shared-plan { font-weight: 600; color: #fff; }
.home-compact .eyebrow { font-size: 11px; font-weight: 600; letter-spacing: .12em; }
.home-compact .gallery-perspective h3 { font-size: 24px; line-height: 1.25; }
.home-compact .gallery-description h3 { font-size: 22px; line-height: 1.25; }
.home-compact .gallery-invitation h3 { font-size: 23px; line-height: 1.25; }
.home-compact .image-note,
.home-compact .employee-caption { font-size: 12px; line-height: 1.65; }

/* Give the resource statement enough room to read as one complete heading. */
.home-compact .proof-stats { grid-template-columns: 1.3fr 1.1fr 1fr; }
.home-compact .proof-stat { padding-inline: 24px; }
.home-compact .proof-stat:first-child { padding-left: 0; }
.home-compact .proof-stat:last-child { padding-right: 0; }
.home-compact .proof-value { font-size: clamp(22px,1.95vw,28px); line-height: 1.2; hyphens: none; }
.home-compact .proof-text { font-size: 14px; max-width: 42ch; }
@media (min-width:761px) and (max-width:1100px) {
  .home-compact .proof-stats { grid-template-columns: 1fr 1fr; row-gap: 24px; }
  .home-compact .proof-stat:first-child { grid-column: 1/-1; padding: 0 0 24px; border-bottom: 1px solid #ffffff1f; }
  .home-compact .proof-stat:nth-child(2) { padding-left: 0; border-left: 0; }
  .home-compact .proof-text { max-width: none; }
}

@media (min-width:761px) and (max-width:1050px) {
  .home-compact { --home-display: clamp(38px,4.8vw,50px); }
}
@media (max-width:760px) {
  .home-compact {
    --home-display: clamp(34px,10vw,44px);
    --home-heading: clamp(29px,8.2vw,36px);
    --home-feature: clamp(32px,9vw,40px);
    --home-card: 30px;
    --home-copy: 16px;
  }
  .home-compact .hero h1 { line-height: 1.08; }
  .home-compact .proof-stats { grid-template-columns: 1fr; }
  .home-compact .proof-stat { padding: 0; border-left: 0; }
  .home-compact .proof-stat + .proof-stat { border-top: 1px solid #ffffff1f; }
  .home-compact .proof-stat .proof-value { font-size: clamp(20px,5.8vw,24px); }
  .home-compact .proof-stat .proof-text { display: block; margin-top: 10px; }
  .home-compact .gallery-perspective h3,
  .home-compact .gallery-invitation h3 { font-size: 22px; }
  .home-compact .gallery-description h3 { font-size: 21px; }
}
