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

/* Checklist bullets with accessible visuals (no images used) */
.list--check { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--space-4); }
.list--check li { position: relative; padding-left: 28px; }
.list--check li::before { content: "✓"; position: absolute; left: 0; top: 0; color: var(--color-success); font-weight: var(--weight-bold); }

/* Steps */
.steps { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--space-8); }
.step { display: grid; grid-template-columns: 44px 1fr; gap: var(--space-6); align-items: start; }
.step__index { width: 44px; height: 44px; border-radius: var(--radius-pill); background: var(--gray-100); color: var(--gray-800); display: grid; place-items: center; font-weight: var(--weight-bold); box-shadow: var(--shadow-sm); }
.step__content h4 { margin: 0 0 var(--space-3); }

/* Pricing */
.price-card .price { display: flex; align-items: baseline; gap: var(--space-3); }
.price-card .price__amount { font-size: clamp(1.5rem, 2vw + 0.5rem, 2.25rem); font-weight: var(--weight-bold); color: var(--color-primary); }
.price-card .price__period { color: var(--gray-600); font-size: var(--text-sm); }
h2 {
    font-size: clamp(1.5rem, 1.5vw + 1rem, 2.25rem);
    margin-block: 0em 0.5em;
}
/* FAQ */
.faq { border: 1px solid var(--gray-200); border-radius: var(--radius-lg); padding: var(--space-7) var(--space-9); background: var(--color-surface); box-shadow: var(--shadow-sm); }
.faq + .faq { margin-top: var(--space-6); }
.faq > summary { cursor: pointer; font-weight: var(--weight-semibold); outline: none; list-style: none; }
.faq > summary::-webkit-details-marker { display: none; }
.faq[open] > summary { color: var(--color-primary); }
.faq__content { margin-top: var(--space-5); color: var(--gray-700); }

/* Utility refinements */
.h-100 { height: 100%; }
