.desktop-nav > .nav-trigger { display: inline-flex; align-items: center; gap: 5px; }
.desktop-nav .nav-trigger-icon { width: 17px; height: 17px; flex: 0 0 17px; }
.site-header .nav-sparkle { stroke: none; }
.dropdown-panel[data-menu-panel][hidden] { display: none; }
.dropdown-panel[data-menu-panel]:not([hidden]) { display: grid; }
.services-menu[data-menu-panel]:not([hidden]) { display: grid; }
.site-header .services-menu .service-tab-label { text-transform: uppercase; }
.platform-menu[data-menu-panel]:not([hidden]) { display: flex; flex-direction: column; }
.cf-menu-dropdown { min-width: 240px; max-width: min(360px, calc(100vw - 32px)); padding: 10px; }
.cf-menu-dropdown-list { margin: 0; padding: 0; list-style: none; }
.cf-menu-dropdown-list li { position: relative; }
.cf-menu-dropdown-list a { display: block; padding: 10px 12px; border-radius: 9px; color: var(--pine); font-size: 13px; }
.cf-menu-dropdown-list a:hover,
.cf-menu-dropdown-list a.is-active { background: var(--mint); color: var(--teal); }
.cf-menu-dropdown-list ul { margin: 0 0 0 12px; padding: 0 0 0 8px; border-left: 1px solid var(--border); list-style: none; }
.cf-menu-dropdown-list ul a { font-size: 12px; }
.service-grid .cf-nav-icon,
.platform-menu .cf-nav-icon { width: 21px; height: 21px; }
.service-grid .icon-tile img,
.platform-menu .icon-tile img { width: 24px; height: 24px; object-fit: contain; }
.service-grid a.is-active,
.platform-menu a.is-active { background: var(--mint); }
.platform-menu .cf-platform-child { padding-left: 64px; font-size: 12px; color: var(--muted); }
.cf-footer-menu { display: flex; flex-direction: column; align-items: flex-start; }
.cf-footer-menu .footer-managed-link,
.cf-footer-legal-menu .footer-managed-link { display: flex; align-items: center; gap: 7px; width: fit-content; }
.cf-footer-menu .footer-managed-link.is-subitem { margin-left: 14px; }
.cf-footer-menu .cf-footer-menu-icon,
.cf-footer-legal-menu .cf-footer-menu-icon { width: 16px; height: 16px; flex: 0 0 16px; }
.cf-footer-menu .cf-footer-menu-icon:not(svg),
.cf-footer-legal-menu .cf-footer-menu-icon:not(svg) { object-fit: contain; }
.cf-footer-legal-menu { display: flex; flex-wrap: wrap; gap: 18px; }
.cf-footer-legal-menu .footer-managed-link { margin: 0; }
@media (min-width: 1200px) {
    .site-footer .footer-link-column > .cf-footer-menu { gap: 8px; }
    .site-footer .footer-link-column > .cf-footer-menu > .footer-managed-link { margin: 0; }
    .site-footer .footer-link-column > .cf-footer-menu > .footer-managed-link.is-subitem { margin-left: 14px; }
}
.mobile-bottom-nav .cf-mobile-nav-label { display: block; width: auto; height: auto; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; font-size: inherit; line-height: 1.2; }
.mobile-bottom-nav .bottom-menu .cf-mobile-nav-label,
.mobile-bottom-nav button[aria-expanded="true"] .cf-mobile-nav-label { width: auto; height: auto; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: inherit; }
.mobile-bottom-nav .is-active .cf-mobile-nav-label { background: transparent; box-shadow: none; color: var(--teal); }
.mobile-bottom-nav .cf-nav-icon { width: 20px; height: 20px; }
.mobile-bottom-nav img.cf-nav-icon { object-fit: contain; }
.mobile-menu-grid .mobile-menu-icon { display: grid; width: 38px; height: 38px; margin: 0 auto 5px; place-items: center; border-radius: 12px; background: var(--mint); color: var(--teal); }
.mobile-menu-grid .mobile-menu-icon-svg { width: 21px; height: 21px; }
.mobile-menu-grid .mobile-menu-icon img { width: 22px; height: 22px; object-fit: contain; }
.cf-mobile-menu-group { min-width: 0; padding: 12px 8px; border-radius: 12px; background: var(--cream); color: var(--pine); font-size: 11px; text-align: center; }
.cf-mobile-menu-group summary { display: flex; flex-direction: column; align-items: center; cursor: pointer; list-style: none; }
.cf-mobile-menu-group summary::-webkit-details-marker { display: none; }
.cf-mobile-menu-children { grid-column: 1 / -1; display: flex; flex-direction: column; gap: 6px; margin-top: 10px; }
.cf-mobile-menu-children > a { padding: 10px 6px; background: #fff; }
.cf-mobile-service-group > p { margin: -3px 0 7px; color: var(--muted); font-size: 11px; }
.mobile-services-list .cf-mobile-service-group > a { display: grid; grid-template-columns: minmax(0, 1fr) 16px; gap: 8px; align-items: center; }
.mobile-services-list .cf-mobile-service-group > a.has-custom-icon { grid-template-columns: 28px minmax(0, 1fr) 16px; }
#servicesOffcanvas .mobile-services-list a .cf-mobile-service-label { display: block; color: var(--pine); font-size: inherit; }
#servicesOffcanvas .mobile-services-list a svg.cf-mobile-service-icon { width: 20px; height: 20px; flex: 0 0 20px; }
.cf-mobile-service-icon { width: 20px; height: 20px; color: var(--teal); }
.cf-mobile-service-group > a img.cf-mobile-service-icon { object-fit: contain; }
.header-menu-links .cf-full-mobile-group,
.header-menu-links > a { display: block; padding: 12px 14px; border-bottom: 1px solid rgba(255,255,255,.14); color: #fff; }
.header-menu-links .cf-full-mobile-group summary { display: flex; align-items: center; gap: 10px; cursor: pointer; list-style: none; }
.header-menu-links .cf-full-mobile-group summary::-webkit-details-marker { display: none; }
.cf-full-mobile-icon { width: 19px; height: 19px; flex: 0 0 19px; }
.header-menu-links .cf-full-mobile-group a { display: block; padding: 9px 0 9px 26px; color: #d5e5df; font-size: 13px; }
.cf-full-mobile-children { padding-top: 5px; }
@media (max-width: 1199.98px) {
    .cf-menu-dropdown { display: none !important; }
    #servicesOffcanvas .mobile-services-list .cf-mobile-service-group + .cf-mobile-service-group > h3 { margin-top: 24px; }
}
@media (min-width: 768px) and (max-width: 1199.98px) {
    .site-footer .footer-link-column > .cf-footer-menu { gap: 6px; }
}
@media (max-width: 767.98px) {
    .site-footer .footer-link-column > .cf-footer-menu {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0 16px;
    }
    .site-footer .footer-link-column > .cf-footer-menu .footer-managed-link { width: 100%; }
}
