/*
Block Name: Services Overview
Description: The flagship service as a large spread with a Good for / Includes panel, then the other services in columns.
*/

.block-services-overview .lf-section-head { margin-bottom: var(--lf-gap-head); }
.block-services-overview .so-flagship { display: flex; flex-wrap: wrap; border: 0.1rem solid var(--brand-2); background: var(--brand-8); scroll-margin-top: 12rem; }
.block-services-overview .so-flag-main { flex: 1.3 1 48rem; padding: clamp(2.8rem, 3.4vw, 4.4rem); display: flex; flex-direction: column; gap: 1.8rem; border-right: 0.1rem solid var(--brand-2); }
.block-services-overview .so-flag-top { display: flex; align-items: baseline; gap: 1.8rem; }
.block-services-overview .so-flag-num { font-size: 9.6rem; color: var(--brand-1); }
.block-services-overview .so-flag-title { margin: 0; font-size: clamp(5.6rem, 6.4vw, 9.6rem); line-height: 0.84; }
.block-services-overview .so-flagship p { margin: 0; max-width: 62rem; }
.block-services-overview .so-flag-body { font-size: 2rem; }
.block-services-overview .so-flag-cta { margin-top: auto; padding-top: 0.8rem; }
.block-services-overview .so-flag-side { flex: 1 1 34rem; padding: clamp(2.8rem, 3.4vw, 4.4rem); background: var(--brand-3); display: flex; flex-direction: column; gap: 2.2rem; }
.block-services-overview .so-fact { display: flex; flex-direction: column; gap: 0.6rem; }
.block-services-overview .so-fact p { margin: 0; font-size: 1.9rem; line-height: 1.5; }
.block-services-overview .so-flag-side .so-fact p { font-size: 2rem; }
.block-services-overview .so-includes { list-style: none; margin: 0; padding: 0; border-top: 0.1rem solid var(--brand-2); }
.block-services-overview .so-includes li { margin: 0; padding: 1.1rem 0; border-bottom: 0.1rem solid var(--brand-2); font-size: 1.9rem; line-height: 1.35; }
.block-services-overview .so-list { display: flex; flex-wrap: wrap; gap: 0 4rem; margin-top: 0.8rem; }
.block-services-overview .so-item { flex: 1 1 34rem; padding: 3.2rem 0 3.4rem; border-bottom: 0.1rem solid var(--brand-2); display: flex; flex-direction: column; gap: 1.6rem; scroll-margin-top: 12rem; }
.block-services-overview .so-item-head { display: flex; align-items: baseline; gap: 1.4rem; padding-bottom: 1.2rem; border-bottom: 0.2rem solid var(--brand-2); }
.block-services-overview .so-num { font-size: 5.2rem; line-height: 0.85; color: var(--brand-1); }
.block-services-overview .so-item-title { margin: 0; font-size: clamp(3.2rem, 3vw, 4.2rem); line-height: 0.92; }
.block-services-overview .so-summary { font-size: 2rem; line-height: 1.55; }
.block-services-overview .so-good-for { font-style: italic; color: #3E3A38; }
.block-services-overview .so-item .lf-more { margin-top: auto; }

@media screen and (max-width: 900px) {
	.block-services-overview .so-flag-main { border-right: 0; border-bottom: 0.1rem solid var(--brand-2); }
}