/* Managed Network Care — uses the site's existing Montserrat and teal brand. */
.slf-managed-body { background: #f7f9f8; }
.mnc-page { --mnc-ink: #153031; --mnc-muted: #526463; --mnc-border: #dbe5e2; color: var(--mnc-ink); }
.mnc-container { width: min(90%, var(--slf-layout-container, 1200px)); margin-inline: auto; }
.mnc-page h1, .mnc-page h2, .mnc-page h3 { line-height: 1.13; letter-spacing: -.045em; }
.mnc-page h2 { font-size: clamp(1.9rem, 3.4vw, 2.8rem); font-weight: 800; }
.mnc-page p { line-height: 1.75; }
.mnc-page a, .mnc-page summary { -webkit-tap-highlight-color: transparent; }
.mnc-page :is(a, summary, [tabindex]):focus-visible { outline: 3px solid #0a9396; outline-offset: 5px; }
.mnc-page :is(section[id], div[id]) { scroll-margin-top: 110px; }
.mnc-eyebrow { margin: 0 0 16px; color: #006d6c; font-size: .74rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.mnc-hero { position: relative; overflow: hidden; background: radial-gradient(ellipse at 95% 30%, #174e4c 0, transparent 58%), #09292c; color: #fff; }
.mnc-hero::before { content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .1; background-image: linear-gradient(#80c7bf 1px, transparent 1px), linear-gradient(90deg, #80c7bf 1px, transparent 1px); background-size: 80px 80px; mask-image: linear-gradient(90deg, transparent 30%, #000); }
.mnc-hero-layout { position: relative; display: grid; grid-template-columns: 1.3fr 1fr; align-items: center; gap: 8%; padding-block: 84px; }
.mnc-hero .mnc-eyebrow { color: #9edcd2; }
.mnc-hero h1 { max-width: 660px; margin: 0 0 24px; font-size: clamp(2.5rem, 4.7vw, 4.2rem); font-weight: 800; line-height: 1.06; }
.mnc-hero h1 span { color: #8edace; }
.mnc-lead { max-width: 550px; color: #d0e1de; font-size: 1rem; }
.mnc-actions { display: flex; flex-wrap: wrap; gap: 20px 24px; align-items: center; margin-top: 32px; }
.mnc-button { display: inline-flex; align-items: center; justify-content: center; gap: 16px; min-height: 52px; padding: 14px 23px; border: 1px solid transparent; border-radius: 8px; text-decoration: none; font-size: .85rem; font-weight: 800; line-height: 1.45; transition: background .18s, border-color .18s; }
.mnc-button-primary { background: #007c7b; color: #fff; }
.mnc-button-primary:hover { background: #006363; }
.mnc-hero .mnc-button-primary, .mnc-final-section .mnc-button-primary { background: #9ae3d4; color: #123637; }
.mnc-hero .mnc-button-primary:hover, .mnc-final-section .mnc-button-primary:hover { background: #b7f2e5; }
.mnc-button-outline { border-color: #b8ceca; background: transparent; color: #006665; }
.mnc-button-outline:hover { background: #eaf4f0; border-color: #008080; }
.mnc-text-link { color: #e2efec; text-underline-offset: 6px; font-size: .8rem; font-weight: 600; }
.mnc-hero-note { margin-top: 24px; color: #aecbc6; font-size: .76rem; }
.mnc-network { padding: 27px 29px 20px; border: 1px solid #55837d; border-radius: 18px; background: #ffffff07; box-shadow: 0 24px 60px #00191b33; }
.mnc-network-heading { display: flex; gap: 13px; align-items: center; padding-bottom: 24px; border-bottom: 1px solid #ffffff21; color: #b9d9d2; font-size: .8rem; line-height: 1.7; }
.mnc-network-heading strong { color: #fff; font-weight: 600; }
.mnc-network-mark { display: grid; place-items: center; width: 40px; height: 40px; flex: 0 0 40px; border: 1px solid #75b7ac; border-radius: 9px; color: #b1f0e1; font-size: .9rem; font-weight: 800; }
.mnc-network-map { padding: 27px 0 23px; }
.mnc-network svg { width: 26px; height: 26px; fill: none; stroke: #a9e6d8; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.mnc-map-node { display: flex; align-items: center; justify-content: center; gap: 14px; margin: auto; padding: 14px; font-size: .8rem; }
.mnc-map-internet { width: fit-content; border: 1px solid #5d8e85; border-radius: 30px; padding: 9px 20px; }
.mnc-map-core { max-width: 260px; border: 1px solid #85c9b8; border-radius: 10px; background: #a0e1cf0d; font-weight: 600; }
.mnc-map-core small { display: block; margin-top: 3px; color: #b1ccc4; font-size: .65rem; font-weight: 400; }
.mnc-map-connector { width: 1px; height: 24px; margin-inline: auto; background: #6ea99c; }
.mnc-map-branches { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); padding-top: 24px; }
.mnc-map-branches::before { content: ''; position: absolute; top: 0; left: 16.666%; right: 16.666%; border-top: 1px solid #6ea99c; }
.mnc-map-branches > div { position: relative; display: grid; justify-items: center; gap: 9px; font-size: .65rem; color: #d1e7df; }
.mnc-map-branches > div::before { content: ''; position: absolute; top: -24px; height: 19px; border-left: 1px solid #6ea99c; }
.mnc-network-caption { border-top: 1px solid #ffffff21; padding-top: 14px; text-align: center; color: #b7d5cd; font-size: .65rem; }
.mnc-network-caption span { margin-inline: 8px; color: #77c6b5; }
.mnc-service-strip { background: #e9f0ec; border-bottom: 1px solid var(--mnc-border); }
.mnc-service-strip > div { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-block: 21px; font-size: .76rem; }
.mnc-service-strip p { font-weight: 800; }
.mnc-service-strip span { color: #475e58; }
.mnc-section { padding-block: 80px; }
.mnc-section-heading { max-width: 760px; margin: 0 auto 38px; text-align: center; }
.mnc-section-heading > p:last-child { max-width: 620px; margin: 19px auto 0; color: var(--mnc-muted); font-size: .92rem; }
.mnc-plans { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: 20px; }
.mnc-plan { min-width: 0; overflow: hidden; border: 1px solid var(--mnc-border); border-radius: 14px; background: #fff; }
.mnc-plan-topline { padding: 12px 24px; border-bottom: 1px solid var(--mnc-border); color: #526963; background: #f1f5f2; font-size: .65rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.mnc-plan-content { padding: 28px 24px 30px; }
.mnc-plan h3 { font-size: 1.45rem; font-weight: 800; }
.mnc-plan-tagline { margin-top: 10px; color: var(--mnc-muted); font-size: .73rem; }
.mnc-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 9px; margin-top: 19px; }
.mnc-price .mnc-price-amount { font-size: clamp(2.7rem, 4vw, 3.6rem); font-weight: 700; line-height: 1.2; letter-spacing: -.065em; }
.mnc-price > span:last-child { color: var(--mnc-muted); font-size: .8rem; }
.mnc-plan-description { min-height: 100px; margin-block: 19px 23px; color: var(--mnc-muted); font-size: .8rem; }
.mnc-plan .mnc-button { width: 100%; padding-inline: 12px; font-size: .77rem; }
.mnc-feature-list { display: grid; gap: 15px; margin: 26px 0 0; padding: 23px 0 0; border-top: 1px solid var(--mnc-border); list-style: none; }
.mnc-feature-list li { position: relative; padding-left: 23px; font-size: .76rem; line-height: 1.6; color: #3c5650; }
.mnc-feature-list li::before { content: '✓'; position: absolute; left: 0; color: #007674; font-weight: 800; }
.mnc-plan-featured { border: 2px solid #008080; box-shadow: 0 12px 36px #163f3321; }
.mnc-plan-featured .mnc-plan-topline { background: #007b7a; color: #fff; border-color: #007b7a; }
.mnc-pricing-note { max-width: 840px; margin: 24px auto 14px; text-align: center; color: var(--mnc-muted); font-size: .72rem; }
.mnc-inline-link { display: inline-block; color: #006a68; font-weight: 800; font-size: .8rem; text-underline-offset: 5px; }
#plans > .mnc-inline-link { display: block; width: fit-content; margin-inline: auto; }
.mnc-care-section { padding-block: 73px; background: #edf2ef; border-block: 1px solid var(--mnc-border); }
.mnc-care-layout { display: grid; grid-template-columns: .9fr 1.2fr; gap: 10%; align-items: start; }
.mnc-care-intro > p:not(.mnc-eyebrow) { margin: 22px 0; color: var(--mnc-muted); font-size: .9rem; }
.mnc-care-list article { display: flex; gap: 22px; padding-block: 24px; border-bottom: 1px solid #cedcd5; }
.mnc-care-list article:first-child { padding-top: 0; }
.mnc-care-list article:last-child { border-bottom: 0; padding-bottom: 0; }
.mnc-step-number { font-size: .8rem; font-weight: 700; color: #007372; padding-top: 3px; }
.mnc-care-list h3 { font-size: 1.03rem; letter-spacing: -.02em; }
.mnc-care-list p { margin-top: 10px; font-size: .81rem; color: var(--mnc-muted); }
.mnc-heading-left { max-width: none; text-align: left; }
.mnc-heading-left > p:last-child { max-width: none; margin-left: 0; }
.mnc-table-scroll { overflow-x: auto; border: 1px solid var(--mnc-border); border-radius: 12px; background: #fff; }
.mnc-comparison { width: 100%; min-width: 760px; border-collapse: collapse; text-align: left; }
.mnc-comparison th, .mnc-comparison td { padding: 18px 22px; border-bottom: 1px solid var(--mnc-border); font-size: .77rem; line-height: 1.6; }
.mnc-comparison thead th { padding-block: 23px; font-size: .91rem; background: #eef4f0; }
.mnc-comparison thead th span { display: block; margin-top: 5px; color: var(--mnc-muted); font-size: .73rem; font-weight: 500; }
.mnc-comparison tbody th { width: 34%; font-weight: 600; }
.mnc-comparison td { width: 22%; color: var(--mnc-muted); }
.mnc-comparison tr > :nth-child(3) { background: #eaf6f1; }
.mnc-comparison thead tr > :nth-child(3) { background: #d6eee5; color: #005b58; }
.mnc-comparison tr:last-child > * { border-bottom: 0; }
.mnc-coverage-notes { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; margin-top: 23px; font-size: .73rem; color: var(--mnc-muted); }
.mnc-coverage-notes strong { color: var(--mnc-ink); }
.mnc-priority-section { padding-block: 70px; background: #e4efea; border-block: 1px solid #d1e1d8; }
.mnc-priority-layout { display: grid; grid-template-columns: 1.1fr 1fr; gap: 9%; align-items: center; }
.mnc-priority-layout > div > p:not(.mnc-eyebrow) { margin: 22px 0 26px; color: #415f54; font-size: .87rem; }
.mnc-priority-details { padding: 29px; background: #ffffffb3; border: 1px solid #c4d8ce; border-radius: 12px; }
.mnc-priority-label { font-size: .66rem !important; margin: 0 0 8px !important; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.mnc-priority-details dl > div { display: grid; grid-template-columns: 1fr 1.1fr; gap: 20px; padding-block: 17px; border-bottom: 1px solid #d4e2da; }
.mnc-priority-details dt { font-size: .75rem; color: #526e61; }
.mnc-priority-details dd { font-size: .8rem; font-weight: 700; line-height: 1.6; }
.mnc-priority-details small { font-size: .68rem; font-weight: 500; }
.mnc-priority-details > p:last-child { font-size: .69rem !important; margin: 17px 0 0 !important; }
.mnc-faq-layout { display: grid; grid-template-columns: .85fr 1.3fr; gap: 10%; }
.mnc-faq-intro { margin: 21px 0; color: var(--mnc-muted); font-size: .86rem; }
.mnc-faqs details { border-bottom: 1px solid var(--mnc-border); }
.mnc-faqs details:first-child { border-top: 1px solid var(--mnc-border); }
.mnc-faqs summary { position: relative; padding: 23px 32px 23px 0; cursor: pointer; font-size: .85rem; font-weight: 700; list-style: none; line-height: 1.6; }
.mnc-faqs summary::-webkit-details-marker { display: none; }
.mnc-faqs summary::after { content: '+'; position: absolute; right: 3px; top: 18px; color: #006c69; font-size: 1.4rem; font-weight: 500; }
.mnc-faqs details[open] summary::after { content: '−'; }
.mnc-faqs details p { padding: 0 22px 23px 0; color: var(--mnc-muted); font-size: .8rem; }
.mnc-final-section { padding-block: 58px; background: #103638; color: #fff; }
.mnc-final-layout { display: flex; justify-content: space-between; align-items: center; gap: 40px; }
.mnc-final-section .mnc-eyebrow { color: #a4d9cd; }
.mnc-final-layout h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); }
.mnc-final-layout > div:first-child > p:last-child { max-width: 530px; margin-top: 18px; color: #c9ddd6; font-size: .85rem; }
.mnc-final-note { text-align: center; font-size: .73rem; margin-top: 15px; color: #c9ddd6; }
.mnc-final-note a { text-underline-offset: 4px; }
.mnc-visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
@media (max-width: 1100px) {
    .mnc-hero-layout { gap: 5%; }
    .mnc-hero h1 { font-size: clamp(2.5rem, 4.6vw, 3.5rem); }
    .mnc-network { padding-inline: 21px; }
    .mnc-plan-content { padding-inline: 19px; }
    .mnc-plan-topline { padding-inline: 19px; font-size: .59rem; }
    .mnc-plan-description { min-height: 116px; }
}
@media (max-width: 850px) {
    .mnc-hero-layout { grid-template-columns: 1fr; padding-block: 58px; gap: 40px; }
    .mnc-hero-copy { max-width: 650px; }
    .mnc-hero h1 { font-size: clamp(2.4rem, 7vw, 3.8rem); }
    .mnc-network { max-width: 540px; width: 100%; }
    .mnc-service-strip > div { flex-wrap: wrap; justify-content: start; gap: 10px 25px; }
    .mnc-service-strip p { flex-basis: 100%; }
    .mnc-section { padding-block: 56px; }
    .mnc-plans { grid-template-columns: 1fr; max-width: 560px; margin-inline: auto; }
    .mnc-plan-content { padding: 25px; }
    .mnc-plan-description { min-height: 0; }
    .mnc-plan-topline { padding-inline: 25px; font-size: .66rem; }
    .mnc-care-layout, .mnc-priority-layout, .mnc-faq-layout { grid-template-columns: 1fr; gap: 35px; }
    .mnc-care-intro { max-width: 600px; }
    .mnc-care-section, .mnc-priority-section { padding-block: 52px; }
    .mnc-final-layout { align-items: start; flex-direction: column; gap: 28px; }
    .mnc-final-note { text-align: left; }
}
@media (max-width: 520px) {
    .mnc-container { width: 89%; }
    .mnc-eyebrow { font-size: .65rem; }
    .mnc-hero-layout { padding-block: 45px; }
    .mnc-hero h1 { font-size: clamp(2.05rem, 9vw, 2.8rem); }
    .mnc-lead { font-size: .89rem; }
    .mnc-actions { gap: 20px; }
    .mnc-network { padding: 21px 16px 17px; }
    .mnc-network-caption { font-size: .61rem; }
    .mnc-network-caption span { margin-inline: 4px; }
    .mnc-service-strip > div { font-size: .68rem; column-gap: 18px; }
    .mnc-section-heading { text-align: left; }
    .mnc-section-heading h2 br { display: none; }
    .mnc-section-heading > p:last-child { font-size: .85rem; }
    .mnc-page h2 { font-size: 1.9rem; }
    .mnc-coverage-notes { grid-template-columns: 1fr; gap: 16px; }
    .mnc-priority-details { padding: 23px 19px; }
    .mnc-priority-details dl > div { gap: 14px; }
    .mnc-final-layout .mnc-button { padding-inline: 16px; font-size: .77rem; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .mnc-page * { transition: none !important; }
}
