/* Why Hommy */
.ab-hero { padding-block: 16px 40px; }
.ab-hero-grid { display: grid; gap: 24px; align-items: center; }
.ab-hero-img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: var(--radius-lg); }
.ab-hero-text { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.ab-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 6px; }
@media (max-width: 699px) { .ab-actions { flex-direction: column; width: 100%; } .ab-actions .btn { width: 100%; } }
@media (min-width: 1000px) {
  .ab-hero { padding-block: 48px 56px; }
  .ab-hero-grid { grid-template-columns: 1fr minmax(0, 620px); gap: 56px; }
  .ab-hero-img { order: 2; aspect-ratio: 31 / 21; }
}

.ab-numbers { background: var(--navy); color: var(--mist); padding-block: 32px; }
.ab-numbers-grid { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 16px; text-align: center; }
.ab-numbers-grid > div { display: flex; flex-direction: column-reverse; gap: 4px; }
.ab-numbers-grid > div:last-child { grid-column: 1 / -1; }
.ab-numbers-grid dt { font-size: 14px; color: var(--haze); }
.ab-numbers-grid dd { margin: 0; font-size: clamp(30px, 4vw, 44px); line-height: 1.1; font-weight: 700; color: #fff; }
@media (min-width: 900px) {
  .ab-numbers { padding-block: 56px; }
  .ab-numbers-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .ab-numbers-grid > div:last-child { grid-column: auto; }
}

.ab-promise .h2 { margin-bottom: 24px; }
.ab-promise-grid { display: grid; gap: 12px; grid-template-columns: 1fr; }
@media (min-width: 700px) { .ab-promise-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } }
@media (min-width: 1000px) { .ab-promise-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ab-promise-card { display: flex; flex-direction: column; gap: 8px; padding: 24px; border-radius: var(--radius); background: var(--mist); color: var(--navy); }
.ab-promise-icon { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 999px; background: #fff; margin-bottom: 4px; }
.ab-promise-card h3 { font-size: 18px; }
.ab-promise-card p { font-size: 14px; color: var(--ink); }

.ab-story { padding-top: 8px; }
.ab-story-grid { display: grid; gap: 24px; align-items: center; }
.ab-story-grid img { width: 100%; aspect-ratio: 13 / 9; object-fit: cover; border-radius: var(--radius-lg); }
.ab-story-text { display: flex; flex-direction: column; gap: 14px; }
.ab-story-text p:not(.eyebrow) { font-size: 16px; line-height: 1.65; }
@media (min-width: 1000px) {
  .ab-story { padding-top: 24px; }
  .ab-story-grid { grid-template-columns: minmax(0, 520px) 1fr; gap: 64px; }
}

.ab-values-list { list-style: none; margin: 24px 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.ab-values-list li { min-height: 64px; padding: 10px 14px; border: 1.5px solid var(--sky); border-radius: 999px; display: flex; align-items: center; justify-content: center; text-align: center; font-weight: 700; color: var(--navy); line-height: 1.25; }
.ab-values-list li:last-child { grid-column: 1 / -1; }
@media (min-width: 900px) {
  .ab-values-list { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
  .ab-values-list li { min-height: 90px; font-size: 16px; }
  .ab-values-list li:last-child { grid-column: auto; }
}

.ab-cta { padding-bottom: 56px; }
.ab-cta-grid { display: grid; gap: 12px; }
@media (min-width: 900px) { .ab-cta-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } .ab-cta { padding-bottom: 80px; } }
.ab-cta-card { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 28px 24px; border-radius: var(--radius-lg); }
.ab-cta-card .btn { margin-top: auto; }
@media (min-width: 900px) { .ab-cta-card { padding: 36px; min-height: 240px; } }
.ab-cta-home { background: var(--haze); }
.ab-cta-project { background: var(--navy); color: var(--mist); }
.ab-cta-project h2 { color: #fff; }
.ab-cta-project .eyebrow { color: var(--sky); }
