.service-page .service-shell,
.service-page .service-shell--prose,
.service-page .service-shell--faq {
	width: min(calc(100% - (2 * var(--shell-pad))), var(--container));
	max-width: var(--container);
	margin-inline: auto;
}
.service-page .service-section h2 { font-size: var(--text-section-title); line-height: var(--leading-section-title); }
.service-page .service-hero h1 { font-size: var(--text-display); line-height: var(--leading-display); }
.service-page .service-hero__lede,
.service-page .service-v3-proof > .service-shell > p,
.service-page .service-v3-related > .service-shell > p { max-width: var(--container-copy); }
.service-page .service-v3-proof { padding-block: var(--section-y-compact); border-block: 1px solid hsl(var(--border)); }
.service-page .service-v3-proof h2,
.service-page .service-v3-related h2 { margin-bottom: var(--space-3); }
.service-page .service-v3-proof ul,
.service-page .service-v3-related ul { display: flex; flex-wrap: wrap; gap: var(--space-3) var(--space-6); padding: 0; margin: var(--space-5) 0 0; list-style: none; }
.service-page .service-v3-proof a,
.service-page .service-v3-related a { display: inline-flex; min-height: var(--target-min); align-items: center; color: hsl(var(--accent-conversion)); text-underline-offset: var(--space-1); overflow-wrap: anywhere; }
.service-page .service-hub-list__intro { max-inline-size: var(--measure-prose); }
.service-page .service-hub-list__groups { margin-block-start: var(--space-8); }
.service-page .service-hub-group {
	padding-block: var(--space-8);
	border-top: 1px solid hsl(var(--border));
}
.service-page .service-hub-group h3 { margin: 0 0 var(--space-6); font-size: var(--text-card-title); }
.service-page .service-hub-group__layout { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-8); align-items: start; }
.service-page .service-hub-card--featured { padding: 0; overflow: hidden; min-height: 0; }
.service-page .service-hub-card__media { display: block; inline-size: 100%; overflow: hidden; }
.service-page .service-hub-card__media img { display: block; inline-size: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.service-page .service-hub-card__body { display: grid; gap: var(--space-3); padding: var(--space-5); }
.service-page .service-hub-card__body strong { font-size: var(--text-card-title); line-height: var(--leading-card-title); }
.service-page .service-hub-card__statement { margin: 0; color: hsl(var(--muted-foreground)); line-height: var(--leading-body); }
.service-page .service-hub-card__body .service-hub-card__action { display: inline-flex; align-items: center; gap: var(--space-2); margin: 0; padding: 0; color: hsl(var(--accent-conversion)); font-size: var(--text-sm); font-weight: var(--font-weight-semibold); }
.service-page .service-hub-card__action svg { flex: none; }
.service-page .service-hub-group__links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--space-6); padding: 0; margin: 0; list-style: none; }
.service-page .service-hub-group__links li { min-inline-size: 0; border-bottom: 1px solid hsl(var(--border)); }
.service-page .service-hub-group__links a { display: flex; align-items: center; justify-content: space-between; min-block-size: 3.5rem; gap: var(--space-3); padding-block: var(--space-3); color: hsl(var(--foreground)); text-decoration: none; overflow-wrap: anywhere; }
.service-page .service-hub-group__links svg { flex: none; color: hsl(var(--accent-conversion)); transition: transform var(--dur-hover) var(--ease-out); }
.service-page .service-hub-group__links a:focus-visible { outline: var(--focus-width) solid hsl(var(--accent-conversion)); outline-offset: var(--focus-offset); }
.service-page .service-hub-card,
.service-page .service-upsell__card { border-radius: var(--radius-card); box-shadow: var(--shadow-card); }
.service-page .service-hub-card > span,
.service-page .service-upsell__card > span { display: inline-flex; align-items: center; gap: var(--space-2); }
.service-page .service-hub-card > span svg,
.service-page .service-upsell__card > span svg { flex: none; transition: transform var(--dur-hover) var(--ease-out); }
.service-page .service-hub-card:focus-visible,
.service-page .service-upsell__card:focus-visible { outline: var(--focus-width) solid hsl(var(--accent-conversion)); outline-offset: var(--focus-offset); }
.service-page .service-hub-card:active,
.service-page .service-upsell__card:active { transform: scale(.98); }
.service-page .service-v3-close { background: hsl(var(--surface-deep)); color: hsl(var(--accent-on-dark)); }
.service-page .service-v3-close h2 { color: hsl(var(--foreground)); }
.service-page .service-v3-close p { max-width: var(--container-copy); color: hsl(var(--muted-warm)); }
@media (hover: hover) and (pointer: fine) {
	.service-page .service-hub-group__links a:hover { color: hsl(var(--accent-conversion)); }
	.service-page .service-hub-group__links a:hover svg { transform: translateX(var(--space-1)); }
	.service-page .service-hub-card:hover,
	.service-page .service-upsell__card:hover { transform: translateY(-2px); border-color: hsl(var(--accent-conversion)); box-shadow: var(--shadow-card-hover); }
	.service-page .service-hub-card:hover > span svg,
	.service-page .service-upsell__card:hover > span svg { transform: translateX(var(--space-1)); }
	.service-page .service-hub-card:focus-visible > span svg,
	.service-page .service-upsell__card:focus-visible > span svg { transform: translateX(var(--space-1)); }
}
@media (max-width: 767px) {
	.service-page .service-hub-group__layout { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
	.service-page .service-hub-group__links { grid-template-columns: minmax(0, 1fr); }
	.service-page .service-v3-proof ul,
	.service-page .service-v3-related ul { display: block; }
}
@media (prefers-reduced-motion: reduce) {
	.service-page .service-hub-group__links svg { transition: none; }
	.service-page .service-hub-group__links a:hover svg { transform: none; }
	.service-page .service-hub-card,
	.service-page .service-upsell__card { transition: none; }
	.service-page .service-hub-card > span svg,
	.service-page .service-upsell__card > span svg { transition: none; }
	.service-page .service-hub-card:hover,
	.service-page .service-upsell__card:hover,
	.service-page .service-hub-card:active,
	.service-page .service-upsell__card:active { transform: none; }
	.service-page .service-hub-card:hover > span svg,
	.service-page .service-upsell__card:hover > span svg,
	.service-page .service-hub-card:focus-visible > span svg,
	.service-page .service-upsell__card:focus-visible > span svg { transform: none; }
}
