/* Services */
.service-cover { aspect-ratio: 16 / 7; object-fit: cover; }
.service-cta { margin-top: 2.5rem; padding: 2rem; border-radius: var(--radius); background: var(--c-bg-tint); text-align: center; }

/* Services archive: text-only items */
.svc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3.5rem 4rem; }
.svc-item__title { margin: 0 0 .6rem; font-size: 1.25rem; }
.svc-item__title a { color: var(--c-ink); }
.svc-item__title a:hover { color: var(--c-accent-dark); }
.svc-item p { margin: 0; font-size: .95rem; }
@media (max-width: 900px) { .svc-grid { grid-template-columns: repeat(2, 1fr); gap: 2.5rem; } }
@media (max-width: 560px) { .svc-grid { grid-template-columns: 1fr; } }

/* Services archive: image cards, 4 across on desktop */
.svc-grid--cards { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
.svc-grid--cards .card__media { aspect-ratio: 4 / 3; }
.svc-grid--cards .card__title { font-size: 1.15rem; }
.svc-grid--cards .card__text { font-size: .92rem; }
@media (max-width: 1100px) { .svc-grid--cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 800px) { .svc-grid--cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; } }
@media (max-width: 520px) { .svc-grid--cards { grid-template-columns: 1fr; } }
