.business-contacts { display: grid; gap: .45rem; }
.business-contacts a { width: fit-content; color: var(--teal-bright); font-weight: 700; text-decoration: none; }
.business-contacts a:hover { text-decoration: underline; }
.footer-contact-links { display: contents; }
.footer-links a, .footer-links .footer-install { min-height: 38px; padding: .4rem .55rem; display: inline-flex; align-items: center; gap: .4rem; border-radius: 8px; }
.footer-links a:hover, .footer-links .footer-install:hover { background: rgba(255,255,255,.09); }
.footer-link-icon { width: 18px; height: 18px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.footer-link-icon.is-filled { fill: currentColor; stroke: none; }
.details-grid { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.details-grid section { min-width: 0; }
.details-grid h3 { margin-bottom: .65rem; }
.detail-price small { display: block; margin-top: .4rem; color: var(--muted); font: 600 .82rem/1.2 "DM Sans", sans-serif; }

@media (max-width: 640px) {
  .business-contacts { gap: .6rem; }
  .business-contacts a { min-height: 40px; display: inline-flex; align-items: center; }
}
