/* services-b shared: hero shell, breadcrumb, headings, sections. */
.alp-svcb-hero { padding: 150px 40px 80px; background: var(--alp-paper); border-radius: 0 0 32px 32px; overflow: hidden; }
.alp-svcb-hero__in { max-width: 1360px; margin: 0 auto; }
.alp-svcb-crumb { display: flex; gap: 10px; align-items: center; font: 500 13px var(--alp-body); color: var(--alp-muted); flex-wrap: wrap; }
.alp-svcb-crumb a { color: var(--alp-muted); }
.alp-svcb-crumb a:hover { color: var(--alp-forest); }
.alp-svcb-crumb__tag { display: flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 99px; background: var(--alp-ink); color: var(--alp-paper); }
.alp-svcb-crumb__tag i { width: 7px; height: 7px; border-radius: 50%; background: var(--dot, var(--alp-forest)); }
.alp-svcb-h1 { font: 600 clamp(52px, 7vw, 116px)/.86 var(--alp-display); letter-spacing: -0.06em; margin: 0; }
.alp-svcb-h1 .alp-rise { padding-bottom: .26em; margin-bottom: -.26em; }
.alp-svcb-h1 .alp-rise > span { animation-delay: calc(var(--i, 0) * .08s); }
.alp-svcb-lead { margin: 0; font-size: 17px; line-height: 1.6; color: var(--alp-muted); }
.alp-svcb-eyebrow { font: 500 13px/1.4 var(--alp-body); letter-spacing: .12em; text-transform: uppercase; color: var(--alp-muted); }
.alp-svcb-eyebrow.is-honey { color: var(--alp-honey); }
.alp-svcb-h2 { font: 600 clamp(44px, 5.4vw, 80px)/.95 var(--alp-display); letter-spacing: -0.045em; margin: 0; text-wrap: balance; }
.alp-svcb-h2.is-m { font-size: clamp(40px, 4.8vw, 72px); }
.alp-svcb-h2.is-s { font-size: clamp(40px, 4.6vw, 68px); }
.alp-svcb-sec { max-width: 1360px; margin: 0 auto; padding: 130px 40px 110px; }
.alp-svcb-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; margin-bottom: 32px; }
.alp-svcb-head .alp-svcb-eyebrow { margin-bottom: 16px; }
.alp-svcb-head__aside { max-width: 340px; margin: 0; font-size: 15px; line-height: 1.55; color: var(--alp-muted); }
.alp-svcb-slab { border-radius: 32px; margin: 0 16px; padding: 110px 24px; }
.alp-svcb-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 4vw, 64px); align-items: center; }
.alp-svcb-seg { display: flex; padding: 4px; border-radius: 99px; background: var(--alp-canvas); border: 1px solid var(--alp-line); align-self: flex-start; }
.alp-svcb-seg button { font: 600 14px var(--alp-body); padding: 10px 20px; border-radius: 99px; border: 0; background: transparent; color: var(--alp-ink); cursor: pointer; transition: all .35s var(--alp-spring); }
.alp-svcb-seg button[aria-pressed="true"] { background: var(--alp-ink); color: var(--alp-paper); }
.alp-svcb-range { display: block; }
.alp-svcb-range__row { display: flex; justify-content: space-between; gap: 12px; font-size: 14px; margin-bottom: 8px; }
.alp-svcb-range__row output { font-weight: 600; }
.alp-svcb-range input { width: 100%; accent-color: var(--alp-honey); min-height: 24px; }
@media (max-width: 1180px) {
	.alp-svcb-split { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 820px) {
	.alp-svcb-hero { padding: 120px 20px 56px; }
	.alp-svcb-h1 { font-size: clamp(44px, 12vw, 72px); }
	.alp-svcb-h2, .alp-svcb-h2.is-m, .alp-svcb-h2.is-s { font-size: clamp(34px, 9vw, 52px); }
	.alp-svcb-sec { padding: 96px 20px 80px; }
	.alp-svcb-slab { margin: 0 8px; padding: 80px 20px; border-radius: 24px; }
	.alp-svcb-seg button { min-height: 44px; }
}
