/* Navigation styling synchronized from OneDrive site-additions.css. */
/* ---------- Header: same size and layout at all times. On scroll only two things change:
   it slides up to the very top, and the transparent background turns solid navy. ---------- */
.site-header,.site-header.is-scrolled{position:fixed!important;left:0!important;transform:none!important;width:100%!important;max-width:none!important;height:72px!important;border:0!important;border-radius:0!important;padding:0 calc((100% - min(var(--max),100% - 112px))/2)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;transition:top .3s ease,background-color .3s ease,box-shadow .3s ease!important}
.site-header{top:20px!important;background:transparent!important;box-shadow:none!important}
.site-header.is-scrolled{top:0!important;background:#16223e!important;box-shadow:0 6px 24px #070f2440!important}
@media(max-width:1150px){.site-header,.site-header.is-scrolled{padding:0 40px!important}}
@media(max-width:950px){.site-header,.site-header.is-scrolled{padding:0 32px!important}}
@media(max-width:650px){.site-header,.site-header.is-scrolled{height:60px!important;padding:0 20px!important}.site-header{top:10px!important}.site-header.is-scrolled{top:0!important}}

/* ---------- Products menu: tidy "Platform & Solutions" column ---------- */
html body .product-menu-grid .menu-platform h2{font-size:22px!important;margin:8px 0 18px!important;letter-spacing:-.01em}
html body .product-menu-grid a.menu-umbrella-card{padding:14px 16px!important;border:1px solid #ffffff1f!important;border-radius:12px!important;background:#ffffff0d!important;box-shadow:none!important;gap:2px 12px!important}
html body .product-menu-grid a.menu-umbrella-card:hover{background:#ffffff17!important;border-color:#ffffff33!important}
html body .product-menu-grid .menu-umbrella-card .umbrella-head{margin:0!important}
html body .product-menu-grid .menu-umbrella-card .umbrella-head strong{font-size:17px!important;font-weight:650!important}
html body .product-menu-grid .menu-umbrella-card .umbrella-desc{font-size:12.5px!important;color:#b8c9de!important}
html body .product-menu-grid .menu-umbrella-card .umbrella-arrow{opacity:.7}
/* Solutions list: no rail or connector glyph; compact rows, arrows appear on hover */
html body .product-menu-grid .menu-solutions-group{border-left:0!important;margin:14px 0 0!important;padding:0!important;gap:0!important}
html body .product-menu-grid .menu-solutions-kicker{padding:0 12px 6px!important;font-size:9.5px!important;letter-spacing:.12em!important;color:#8fa6c4!important}
html body .product-menu-grid .solutions-connector{display:none!important}
html body .product-menu-grid .menu-solutions-list{gap:2px!important}
html body .product-menu-grid .menu-solutions-list a{display:grid!important;grid-template-columns:1fr auto;align-items:center;column-gap:12px;padding:9px 12px!important;border:0!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important}
html body .product-menu-grid .menu-solutions-list a:hover{background:#ffffff12!important}
html body .product-menu-grid .menu-solutions-list a strong{grid-column:1;font-size:14px!important;font-weight:600!important;color:#fff!important;line-height:1.3}
html body .product-menu-grid .menu-solutions-list a small{grid-column:1;font-size:12px!important;color:#a9bbd3!important;line-height:1.4}
html body .product-menu-grid .menu-solutions-list a>span{grid-column:2;grid-row:1/3;opacity:0;transform:translateX(-4px);transition:opacity .15s ease,transform .15s ease;color:#cfe0f5}
html body .product-menu-grid .menu-solutions-list a:hover>span{opacity:1;transform:none}
/* "Explore all" as a quiet link row instead of a big light button */
html body .product-menu-grid .menu-platform .menu-all{margin-top:16px!important;padding:14px 12px 0!important;border-top:1px solid #ffffff1f!important;border-radius:0!important;background:transparent!important;color:#dfe9f7!important;font-size:13px!important;font-weight:600!important;box-shadow:none!important}
html body .product-menu-grid .menu-platform .menu-all:hover{color:#fff!important}
html body .product-menu-grid .menu-platform .menu-all>span,html body .product-menu-grid .menu-platform .menu-all svg{color:#dfe9f7!important;opacity:1!important}
html body .product-menu-grid .menu-solutions-group{margin:14px 0 0 16px!important;padding-left:10px!important;border-left:1px solid #ffffff24!important}



/* Match the homepage header to the shared content container on wide screens. */
@media(min-width:1600px){html body.home .site-header,html body.home .site-header.is-scrolled{padding:0 calc((100% - min(var(--max),100% - 112px))/2)!important}}

/* Home destination at the start of the primary menu. */
.desktop-nav>a.menu-home{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:40px;padding:0!important;color:inherit}.menu-home svg{display:block;flex:none}.menu-home:focus-visible{outline:2px solid #a9c8f5;outline-offset:4px;border-radius:7px}.mobile-menu a.mobile-home{display:flex;align-items:center;gap:12px}

/* Keep all desktop mega menus centered and readable on wide displays. */
.site-header .desktop-nav .nav-dropdown:is(.product-dropdown,.solutions-dropdown,.company-dropdown){
  left:50%;right:auto;width:min(1280px,calc(100vw - 44px));max-width:1280px;
  transform:translateX(-50%);box-sizing:border-box;
}

.solutions-menu-note a.menu-unavailable{opacity:.55;cursor:default;pointer-events:none;text-decoration:none}

/* Mobile accordion rows keep their subtle summary separators, not FAQ borders. */
.mobile-menu nav > details {
  border-bottom: 0;
  padding: 0;
  margin: 0;
}

/* Give links and accordion headings the same comfortable mobile row spacing. */
.mobile-menu nav > a:not(:last-child),
.mobile-menu nav > details > summary {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  min-height: 56px;
  margin: 0;
  padding: 15px 6px;
  font-size: 16px;
  line-height: 1.5;
}

.mobile-menu nav > a:last-child {
  margin-top: 20px;
}
