.service-card--flip { padding: 0; perspective: 1400px; scroll-margin-top: 100px; }
.service-card__face { padding: 24px; min-width: 0; }
.service-card__price-teaser { margin-top: 24px; padding-top: 18px; border-top: 1px solid rgba(56,69,156,.14); }
.service-card__price-teaser strong { display: block; font-size: 24px; color: var(--color-teal-dark); }
.service-card__price-teaser span { display: block; margin: 4px 0 14px; color: var(--color-text-light); font-size: 13px; }
.service-card__price-teaser [hidden], .service-card__face[hidden] { display: none; }
.service-card--flip.is-enhanced { background: transparent; border: 0; box-shadow: none; }
.is-enhanced .service-card__inner { display: grid; height: 100%; transform-style: preserve-3d; transition: transform .45s ease; }
.is-enhanced.is-flipped .service-card__inner { transform: rotateY(180deg); }
.is-enhanced .service-card__face { grid-area: 1 / 1; display: flex; flex-direction: column; backface-visibility: hidden; -webkit-backface-visibility: hidden; border-radius: var(--radius-lg); background: var(--color-white); border: 1px solid rgba(56,69,156,.1); box-shadow: var(--shadow-card); }
.is-enhanced .service-card__face--back { transform: rotateY(180deg); pointer-events: none; }
.is-enhanced.is-flipped .service-card__face--front { pointer-events: none; }
.is-enhanced.is-flipped .service-card__face--back { pointer-events: auto; }
.is-enhanced .service-card__price-teaser { margin-top: auto; padding-top: 20px; }
.is-enhanced .service-card__items { margin-bottom: 24px; }
.service-card__face--back .btn { margin-top: 12px; align-self: flex-start; }
.program-prices { margin: 6px 0 20px; }
.program-prices > div { display: grid; gap: 6px; padding: 14px 0; border-top: 1px solid rgba(56,69,156,.12); }
.program-prices dt { font-size: 14px; color: var(--color-text-light); }
.program-prices dd { margin: 0; font-size: 24px; font-weight: 800; font-variant-numeric: tabular-nums; color: var(--color-teal-dark); }
.service-card__price-note { font-size: 13px; color: var(--color-text-light); }
.program-pricing-help { margin: 20px 0 24px; }
.program-pricing-help summary, .service-card summary { cursor: pointer; min-height: 44px; padding: 10px 0; font-weight: 700; }
.program-pricing-help details { padding: 4px 20px; border: 1px solid rgba(56,69,156,.12); border-radius: var(--radius-lg); background: var(--color-white); }
.program-pricing-help details[open] { padding-bottom: 20px; }
.service-card .btn { min-height: 44px; }
@media (prefers-reduced-motion: reduce) {
    .is-enhanced .service-card__inner { transition: none; transform: none !important; }
    .is-enhanced .service-card__face--back { transform: none; }
    .is-enhanced .service-card__face[aria-hidden="true"] { visibility: hidden; }
}

.service-card__details { display: inline-flex; align-items: center; min-height: 44px; padding: 4px 0; border: 0; background: transparent; color: var(--color-teal-dark); font: inherit; font-size: 13px; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.service-card__details:hover { color: var(--color-purple-dark); }
.service-card__details:focus-visible { outline: 2px solid var(--color-teal-dark); outline-offset: 4px; border-radius: 3px; }

.services-hero > div { min-width: 0; }
.services-page .section-actions .btn, .services-footer-cta .btn { max-width: 100%; white-space: normal; text-align: center; }
