/* Services page specific styles - minimal, leveraging base.css */

.section { padding-block: var(--space-16); }
.section__header { margin-bottom: var(--space-8); }

/* Hero */
.hero { padding-block: var(--space-16); }
.hero__grid { display: grid; gap: var(--space-8); align-items: center; grid-template-columns: 1fr; }
.hero__content p { color: var(--color-text-muted); }
.hero__actions { display: flex; gap: var(--space-3); flex-wrap: wrap; margin-top: var(--space-4); }
.hero__media img { border-radius: var(--radius-xl); box-shadow: var(--shadow-lg); }
@media (min-width: 992px) { .hero__grid { grid-template-columns: 1.1fr 0.9fr; } }

/* Cards & lists */
.feature-list { margin: 0; padding-left: 1.1rem; display: grid; gap: 6px; color: var(--color-text-muted); }
.services-grid .card h3 { margin-bottom: var(--space-2); }

/* Testimonials */
.testimonial p { font-style: italic; }
.testimonial cite { display: block; margin-top: var(--space-3); color: var(--color-text-muted); font-weight: 600; }

/* Pricing */
.price-card__price { font-weight: 800; font-size: var(--text-3xl); margin-bottom: var(--space-3); }
.price-card .feature-list { margin-bottom: var(--space-4); }

/* Steps */
.steps { counter-reset: step; display: grid; gap: var(--space-6); list-style: none; padding: 0; }
.steps > li { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-xl); padding: var(--space-6); box-shadow: var(--shadow-sm); }
.steps > li h3 { display: flex; align-items: center; gap: var(--space-3); margin-bottom: var(--space-2); }
.steps > li h3::before { counter-increment: step; content: counter(step); width: 32px; height: 32px; display: inline-grid; place-items: center; background: var(--color-primary); color: var(--color-primary-contrast); border-radius: var(--radius-full); font-weight: 800; }

/* Case studies */
.case-grid .card { overflow: hidden; }
.case__img { border-radius: var(--radius-lg); margin-bottom: var(--space-4); }

/* Form */
.form-grid { grid-template-columns: 1fr; gap: var(--space-6); }
.field--full { grid-column: 1 / -1; }
@media (min-width: 768px) { .form-grid { grid-template-columns: 1fr 1fr; } }

/* Minor spacing tweaks */
.section .help-text { max-width: 65ch; }
