/* Shared operator connection levels. */
.section.connection-levels {
    padding-top: 88px;
    padding-bottom: 88px;
    background: #fff;
    color: #505050;
    scroll-margin-top: 90px;
}
.connection-levels * { box-sizing: border-box; }
.connection-levels__heading { max-width: 850px; margin: 0 auto 40px; text-align: center; }
.connection-levels .connection-levels__heading h2 { margin: 0 0 20px; color: #40AFDE; font-size: 40px; font-weight: 300; line-height: 1.3; }
.connection-levels__heading p { margin: 0; font-size: 17px; line-height: 1.7; }
.connection-levels__heading .connection-levels__eyebrow { margin-bottom: 18px; color: #8DC63F; font-size: 14px; font-weight: 800; letter-spacing: 1.7px; }
.connection-levels__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.connection-levels__card { min-width: 0; padding: 28px 24px; border: 1px solid #e3e7ea; border-radius: 8px; background: #fff; box-shadow: 0 5px 18px rgba(0, 0, 0, .08); }
.connection-levels .connection-levels__card h3 { margin: 0 0 18px; color: #40AFDE; font-size: 23px; font-weight: 700; line-height: 1.35; }
.connection-levels__code { display: block; margin-bottom: 14px; color: #8DC63F; font-size: 18px; font-weight: 800; }
.connection-levels__card p { margin: 0; font-size: 16px; line-height: 1.7; }
.connection-levels--compact .connection-levels__card { padding: 24px; }
.connection-levels--compact .connection-levels__card h3 { font-size: 21px; }
.connection-levels__card h3:last-child { margin-bottom: 0; }
.connection-levels__notes { max-width: 950px; margin: 36px auto 0; text-align: center; }
.connection-levels__notes p { margin: 0 0 20px; font-size: 16px; line-height: 1.7; }
.connection-levels__notes .connection-levels__primary { font-size: 18px; font-weight: 700; }
.connection-levels__notes .connection-levels__footnote,
.connection-faq .connection-levels__footnote { font-size: 14px; line-height: 1.7; }
.connection-levels__notes .connection-levels__commercial { margin: 24px 0 0; padding-top: 24px; border-top: 1px solid #e3e7ea; font-size: 14px; }
.pricing-v2 .pricing-card .connection-levels__subscription-note { margin: 24px 0 0; font-size: 14px; line-height: 1.7; }
.connection-levels__cta { margin-top: 30px; text-align: center; }
.connection-levels .ext_button.blue-style { background: #40AFDE; color: #fff; }
.connection-levels .ext_button.blue-style:hover { background: #8DC63F; }
.connection-levels a:focus-visible,
.connection-faq button:focus-visible { outline: 3px solid #40AFDE; outline-offset: 4px; }
.connection-faq { margin-bottom: 60px; }
.connection-faq > h2 { color: #40AFDE; }
.connection-faq h2 { font-size: 32px; line-height: 1.3; }
.connection-faq .help-block button.accord-toggler { width: 100%; border: 0; border-bottom: 1px solid rgba(0, 0, 0, .1); background: transparent; color: #505050; font-family: inherit; text-align: left; cursor: pointer; }
.connection-faq .help-block button.accord-toggler.opened,
.connection-faq .help-block button.accord-toggler:hover { color: #40AFDE; }
.connection-faq .connection-levels__footnote { margin-top: 28px; }
.connection-audience { display: inline-block; }
@media (max-width: 1199px) {
    .connection-levels__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
    .section.connection-levels { padding-top: 70px; padding-bottom: 70px; }
    .connection-levels .connection-levels__heading h2 { font-size: 34px; }
}
@media (max-width: 767px) {
    .section.connection-levels { padding-top: 54px; padding-bottom: 54px; }
    .connection-levels__grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    .connection-levels .connection-levels__heading h2 { font-size: 28px; }
    .connection-levels__heading { margin-bottom: 30px; }
    .connection-levels__notes { text-align: left; }
    .connection-faq h2 { font-size: 28px; }
}
