/* Homepage composition. Shared type, cards and actions live in design-system.css. */
.home-simple .hero-v5 { padding: 48px 0; }
.home-simple .hero-v5-grid { grid-template-columns: 1fr 1fr; gap: clamp(32px,4vw,56px); }
.home-simple .hero-v5 h1 { margin: 0 0 20px; font-size: clamp(2rem,3.6vw,3.25rem); line-height: 1.12; }
.home-simple .hero-v5 p.lead { margin: 0 0 24px; }
.home-simple .hero-image img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; object-position: center 58%; border-radius: var(--radius-card,16px); }
.home-simple .hero-full-actions { flex-wrap: wrap; gap: 12px; }
.home-simple .hero-tagline { margin: 20px 0 0; }
.home-services { padding: 56px 0 32px; background: var(--white); }
.home-services-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.home-why { padding: 32px 0 56px; background: var(--white); }
.home-qualities { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; list-style: none; padding: 0; margin: 0; }
.home-qualities li { display: flex; align-items: flex-start; gap: 12px; }
.home-qualities svg { width: 26px; height: 26px; flex-shrink: 0; fill: none; stroke: var(--brand); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.home-qualities h3 { margin: 0 0 8px; font-size: 1rem; }
.home-qualities p { margin: 0; font-size: .9375rem; color: var(--text-muted); }
.home-simple [id] { scroll-margin-top: 100px; }
@media(max-width:1000px) { .home-services-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) {
 .home-simple .hero-v5 { padding: 24px 0 28px; }
 .home-simple .hero-v5-grid { grid-template-columns: 1fr; gap: 20px; }
 .home-simple .hero-v5 h1 { max-width: none; font-size: 2rem; margin-bottom: 16px; }
 .home-simple .hero-v5 p.lead { margin-bottom: 20px; line-height: 1.6; }
 .home-simple .hero-full-actions { display: grid; grid-template-columns: 1fr; gap: 10px; }
 .home-simple .hero-full-actions a { width: 100%; text-align: center; padding: 12px 14px; }
 .home-simple .hero-tagline { margin-top: 16px; }
 .home-simple .hero-image img { aspect-ratio: 1.8; }
 .home-services { padding: 32px 0 24px; }
 .home-why { padding: 24px 0 36px; }
 .home-qualities { grid-template-columns: 1fr; gap: 20px; }
}
@media(max-width:560px) { .home-services-grid { grid-template-columns: 1fr; gap: 12px; } }
