.home-services { padding: 80px 0; }
.home-services h2 { margin: 0 0 32px; font-size: clamp(30px, 3vw, 48px); line-height: 1.2; font-weight: 700; letter-spacing: -.025em; text-align: left; }
.home-services__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.home-services__card { display: flex; flex-direction: column; padding: 32px; color: #111; background: #f7f7f7; border: 1px solid #e7e7e7; text-decoration: none; transition: background-color .18s ease, border-color .18s ease; }
.home-services__card h3 { margin: 0 0 20px; min-height: 2.5em; font-size: clamp(24px, 2vw, 30px); line-height: 1.25; font-weight: 700; letter-spacing: -.02em; text-align: left; }
.home-services__card p { flex: 1; margin: 0; font-size: 17px; line-height: 1.6; font-weight: 400; text-align: left; }
.home-services__link { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-top: 32px; padding-top: 20px; border-top: 1px solid #d9d9d9; font-size: 15px; line-height: 1.4; font-weight: 600; }
.home-services__link > span { font-size: 24px; line-height: 1; }
.home-services__card:focus-visible { outline: 3px solid #111; outline-offset: 4px; }
@media (hover: hover) {
    .home-services__card:hover { color: #111; background: #fff9d9; border-color: #d7c65b; }
}
@media (max-width: 960px) {
    .home-services { padding: 48px 0; }
    .home-services__grid { grid-template-columns: 1fr; gap: 16px; }
    .home-services__card { padding: 24px; }
    .home-services__card h3 { min-height: 0; margin-bottom: 16px; font-size: 26px; }
    .home-services__link { margin-top: 24px; }
}
@media (prefers-reduced-motion: reduce) {
    .home-services .home-services__card { transition: none; }
}
