.sos-page, .sos-promo { color: #242337; }
.sos-page { overflow-wrap: anywhere; }
.sos-page h1, .sos-promo h1 { font-size: clamp(2.15rem, 5vw, 4rem); line-height: 1.05; }
.sos-page h2 { font-size: clamp(1.85rem, 4vw, 2.85rem); }
.sos-page h3 { font-size: clamp(1.45rem, 3vw, 1.85rem); }
.sos-hero, .sos-promo { background: #f5f5fb; padding: clamp(1.5rem, 5vw, 4rem) 0; }
.sos-page .sos-hero h1, .sos-promo h1 { margin-top: .35rem; }
.sos-kicker { font-weight: 600; margin: 0; }
.sos-lead { max-width: 65ch; font-size: 1.125rem; line-height: 1.5; }
.sos-note { font-size: .95rem; }
.sos-art { text-align: center; margin-top: 1rem; }
.sos-art img { width: min(100%, 12rem); height: auto; border-radius: 22%; }
.sos-promo .sos-art img { width: min(100%, 9rem); }
.sos-actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.25rem; }
.sos-actions .button + .button { margin: 0; }
.sos-page a.button, .sos-promo a.button {
    background: #5146a3; border-color: #5146a3; color: #fff;
    text-decoration: none; padding: .7rem 1.15rem; white-space: normal; min-height: 44px;
}
.sos-page a.button:hover, .sos-promo a.button:hover { background: #3b317f; border-color: #3b317f; }
.sos-page a:not(.button) { color: #443897; text-decoration: underline; text-underline-offset: .15em; }
.sos-page :focus-visible, .sos-promo :focus-visible { outline: 3px solid #242337; outline-offset: 4px; }
.sos-breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .35rem .65rem; margin: 0 0 1.25rem; padding: 0; list-style: none; font-size: .9rem; }
.sos-breadcrumbs li + li::before { content: "/"; margin-right: .65rem; color: #555367; }
.sos-tint { background: #f5f5fb; }
.sos-prose { max-width: 50rem; }
.sos-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); gap: 1rem; margin-top: 1.35rem; }
.sos-grid > div { padding: 1.2rem; border: 1px solid #deddea; border-radius: .5rem; }
.sos-grid h3 + p { margin-top: .4rem; }
.sos-page .sos-steps, .sos-page .sos-links { padding-left: 1.5rem; margin-top: 1rem; }
.sos-steps { list-style: decimal; }
.sos-links { list-style: disc; }
.sos-steps li + li, .sos-links li + li { margin-top: .6rem; }
.sos-callout { padding: 1.25rem; margin-top: 1.5rem; background: #fff; border-left: 4px solid #5146a3; }
.sos-faq details { border-bottom: 1px solid #deddea; padding: .6rem 0; }
.sos-faq summary { font-weight: 600; cursor: pointer; padding: .5rem .25rem; min-height: 44px; }
.sos-faq details p { margin: .2rem 1.25rem .55rem; }
.sos-article h2:not(:first-child) { margin-top: 1.8rem; }
.sos-page [id] { scroll-margin-top: 6rem; }
@media (max-width: 767px) {
    .sos-hero .sos-lead { font-size: 1rem; }
    .sos-hero .sos-art, .sos-promo .sos-art { text-align: left; }
    .sos-hero .sos-art img, .sos-promo .sos-art img { width: 5rem; }
}
