/* Home hierarchy and review details. Existing brand colors and components stay shared. */
.main--home .hero-copy--background h1 { max-width: 18ch; }
.home-location { color: #ffd6b6; font-weight: 700; margin-bottom: .8rem; }
.hero-copy--background .home-phone { display: inline-block; margin-top: 1rem; color: #fff; font-weight: 700; text-decoration: underline; text-underline-offset: .2em; }
.home-jump-links { display: flex; gap: 1.3rem; flex-wrap: wrap; padding: 1.15rem 0; }
.home-jump-links a { font-weight: 650; text-decoration: underline; text-underline-offset: .25em; }
.home-team { display: grid; grid-template-columns: .65fr 1fr; gap: 3rem; align-items: center; }
.home-team figure { margin: 0; max-width: 320px; justify-self: center; }
.home-team img { border-radius: 24px; }
.home-team figcaption { margin-top: .7rem; color: var(--text-soft); text-align: center; }
.home-team .button-row { margin-top: 1.4rem; }
.home-services .card { display: flex; flex-direction: column; align-items: flex-start; }
.home-services .card .button { margin-top: auto; }
.home-services .card .list { margin-bottom: 1.5rem; }
.reference-more-row { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 1rem; }
.reference-more-row[hidden] { display: none; }
.reference-count { margin: 0; }
.reference-card__caption { display: block; padding: .75rem 1rem; font-weight: 700; color: var(--primary); }
.review-text { margin-bottom: 1rem; font-size: .96rem; line-height: 1.62; }
.review-stars { background: linear-gradient(to right, #b66d00 var(--rating-fill), #d8ded9 var(--rating-fill)); background-clip: text; -webkit-background-clip: text; color: transparent; }
.review-card__top { flex-wrap: wrap; }
.review-note { font-size: .8rem; margin-top: auto; margin-bottom: .5rem; }
.review-source-link { color: var(--primary); text-decoration: underline; text-underline-offset: .2em; font-weight: 650; font-size: .9rem; }
.consent-feedback { margin: 0; padding: 1rem; background: #fff; color: var(--text); }
@media (min-width: 641px) {
  .reviews-grid { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); }
}
@media (max-width: 720px) {
  .home-team { grid-template-columns: 1fr; gap: 1.5rem; }
  .home-team figure { max-width: 240px; }
  .main--home .hero-copy--background { margin-inline: 1rem; }
  .home-jump-links { gap: .8rem 1.2rem; }
}
