/* Shared navigation: compact utility bar, brand navigation and product directory. */
#site-header { position: relative; z-index: 50; color: #22364b; background: #fff; }
.header-toolbar { height: 30px; background: #f5f7fa; border-bottom: 1px solid #edf0f4; font-size:15px; color: #738091; }
.header-toolbar-inner { display: flex; align-items: center; justify-content: space-between; height: 100%; }
.header-toolbar-actions { display: flex; align-items: center; gap: 22px; }
.header-toolbar-actions button { padding: 0; border: 0; background: transparent; color: #667487; font: inherit; cursor: pointer; }
.header-toolbar-actions button:hover { color: var(--blue, #1264ca); }
.header-main { border-bottom: 1px solid #e8edf3; }
.header-main-inner { position: relative; display: flex; align-items: center; justify-content: space-between; height: 75px; gap: 20px; }
.header-brand { flex: 0 0 175px; display: flex; flex-direction: column; align-items: flex-start; text-decoration: none; color: var(--navy, #10345b); }
.header-brand-word { position: relative; display: inline-block; font-family: Arial, sans-serif; font-weight: 800; font-size:32px; line-height: 35px; letter-spacing: -1.5px; }
.header-brand-word > span { color: var(--blue, #1264ca); }
.header-brand-word i { display: inline-block; width: 5px; height: 5px; margin: 0 0 3px 5px; background: var(--blue, #1264ca); }
.header-brand-tagline { font-size:15px; line-height: 16px; letter-spacing: 2.4px; color: #65788b; }
.header-navigation { display: flex; align-items: stretch; justify-content: space-between; gap: 15px; height: 100%; flex: 1 1 auto; min-width: 0; }
.header-nav-link { display: flex; align-items: center; justify-content: center; gap: 6px; position: relative; padding: 0; border: 0; background: transparent; color: #283b4e; text-decoration: none; font: inherit; font-size:17px; white-space: nowrap; cursor: pointer; }
.header-nav-link:hover, .header-nav-link[aria-current='page'], .header-nav-link.is-active, .header-nav-link[aria-expanded='true'] { color: var(--blue, #1264ca); }
.header-nav-link[aria-current='page']::after, .header-nav-link.is-active::after { content: ''; position: absolute; right: 0; bottom: 0; left: 0; height: 3px; background: var(--blue, #1264ca); }
.header-chevron { width: 5px; height: 5px; border: solid currentColor; border-width: 0 1px 1px 0; transform: rotate(45deg); margin: -3px 2px 0; }
.header-product-toggle[aria-expanded='true'] .header-chevron { transform: rotate(225deg); margin-top: 3px; }
.header-products { display: flex; align-items: stretch; }
.header-consult { align-self: center; display: flex; gap: 12px; align-items: center; justify-content: center; height: 34px; padding: 0 14px; color: #fff; background: var(--blue, #1264ca); border: 1px solid var(--blue, #1264ca); border-radius: 2px; font: inherit; font-size:15px; white-space: nowrap; cursor: pointer; }
.header-consult:hover { background: #0b51ac; }
.header-mega { position: absolute; top: 100%; left: 0; right: 0; width: 100%; border: 1px solid #e4e9ef; background: #fff; box-shadow: 0 8px 20px #1029411a; }
.header-mega[hidden], .header-product-group[hidden] { display: none; }
.header-mega-body { display: grid; grid-template-columns: 165px minmax(0, 1fr); min-height: 340px; }
.header-category-rail { padding: 17px 0 14px; background: #f6f8fb; border-right: 1px solid #e9eef4; }
.header-category-rail button { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 12px 18px; border: 0; border-left: 3px solid transparent; background: transparent; font: inherit; font-size:15px; text-align: left; color: #516074; cursor: pointer; }
.header-category-rail button span { color: #8f9cab; }
.header-category-rail button:hover, .header-category-rail button.is-selected { border-left-color: var(--blue, #1264ca); color: var(--blue, #1264ca); background: #fff; }
.header-all-products { display: flex; align-items: center; justify-content: space-between; margin: 14px 18px 0 21px; padding-top: 14px; border-top: 1px solid #e3e8ef; color: var(--blue, #1264ca); text-decoration: none; font-size:15px; }
.header-product-groups { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); align-content: start; gap: 19px; padding: 29px 25px 23px; }
.header-product-group { min-width: 0; }
.header-product-group h2 { padding: 0 0 12px; margin: 0; font-size:17px; line-height: 1.4; font-weight: 600; color: #1f344c; border-bottom: 1px solid #e7ecf2; }
.header-group-intro { font-size:15px; color: #8b96a4; margin: 9px 0 14px; line-height: 1.5; }
.header-product-group ul { list-style: none; padding: 0; margin: 0; }
.header-product-group li { margin: 0 0 17px; }
.header-product-group li:last-child { margin-bottom: 0; }
.header-product-group li a { display: block; color: #36475a; text-decoration: none; }
.header-product-name { display: block; font-size:16px; line-height: 1.6; }
.header-product-description { display: block; margin-top: 3px; color: #8b95a3; font-size:15px; line-height: 1.7; }
.header-product-group li a:hover .header-product-name, .header-product-group li a[aria-current='page'] .header-product-name { color: var(--blue, #1264ca); }
.header-product-groups.is-filtered { grid-template-columns: 1fr; }
.header-product-groups.is-filtered .header-product-group ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; margin-top: 28px; }
.header-popular { display: flex; align-items: center; flex-wrap: wrap; gap: 21px; padding: 15px 23px; background: #fafbfd; border-top: 1px solid #e7ecf2; font-size:15px; }
.header-popular a { color: #617186; text-decoration: none; }
.header-popular a:hover { color: var(--blue, #1264ca); }
.header-hot { padding: 2px 4px; color: #e14943; border: 1px solid #f0b4b1; font-size:15px; line-height: 1; }
.header-popular-label { margin-left: -13px; color: #394c63; }
.header-popular-all { margin-left: auto; }
.header-mobile-toggle { display: none; }
#site-header a:focus-visible, #site-header button:focus-visible { outline: 2px solid var(--blue, #1264ca); outline-offset: 4px; }
@media (min-width: 1100px) and (max-width: 1270px) {
  .header-main-inner { gap: 12px; }
  .header-brand { flex-basis: 151px; }
  .header-navigation { gap: 11px; }
  .header-nav-link { font-size:17px; }
  .header-consult { padding: 0 10px; gap: 7px; }
  .header-product-groups { padding: 25px 20px; gap: 15px; }
  .header-product-group h2 { font-size:17px; }
}
@media (max-width: 1099px) {
  .header-main-inner { height: auto; min-height: 75px; flex-wrap: wrap; gap: 0; }
  .header-brand { margin: 11px 0; }
  .header-mobile-toggle { display: flex; flex-direction: column; justify-content: center; gap: 5px; width: 38px; height: 38px; padding: 8px; border: 1px solid #dce4ed; background: #fff; cursor: pointer; }
  .header-mobile-toggle span { display: block; height: 2px; width: 20px; background: #24445f; }
  .header-navigation { display: none; flex: 0 0 100%; height: auto; padding: 9px 0 18px; border-top: 1px solid #edf1f6; }
  .header-navigation.is-open { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  .header-nav-link { justify-content: space-between; min-height: 43px; padding: 8px 4px; font-size:17px; }
  .header-nav-link[aria-current='page']::after, .header-nav-link.is-active::after { right: auto; width: 26px; height: 2px; }
  .header-products { display: block; }
  .header-product-toggle { width: 100%; }
  .header-mega { position: static; box-shadow: none; width: 100%; margin: 6px 0 10px; }
  .header-mega-body { display: block; min-height: 0; }
  .header-category-rail { display: flex; flex-wrap: wrap; gap: 5px; padding: 10px; border: 0; border-bottom: 1px solid #e4e9ef; }
  .header-category-rail button { width: auto; padding: 8px 12px; border-left: 0; border-bottom: 2px solid transparent; gap: 12px; font-size:15px; }
  .header-category-rail button:hover, .header-category-rail button.is-selected { border-bottom-color: var(--blue, #1264ca); }
  .header-category-rail button span { display: none; }
  .header-all-products { margin: 0; padding: 8px 12px; border: 0; gap: 8px; }
  .header-product-groups { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 20px; gap: 25px; }
  .header-product-groups.is-filtered .header-product-group ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .header-product-group h2 { font-size:17px; }
  .header-product-name { font-size:16px; }
  .header-product-description { font-size:15px; }
  .header-popular { gap: 15px; padding: 13px 16px; font-size:15px; }
  .header-popular-label { margin-left: -8px; }
  .header-consult { align-self: flex-start; margin-top: 12px; }
}
@media (max-width: 599px) {
  .header-toolbar { min-height: 30px; height: auto; font-size:15px; }
  .header-toolbar-inner { justify-content: flex-end; min-height: 30px; padding-top: 4px; padding-bottom: 4px; }
  .header-service-label { display: none; }
  .header-toolbar-actions { gap: 6px 13px; flex-wrap: wrap; justify-content: flex-end; }
  .header-main-inner { min-height: 70px; }
  .header-brand-word { font-size:29px; line-height: 31px; }
  .header-brand-tagline { font-size:15px; }
  .header-category-rail { gap: 2px; padding: 8px; }
  .header-category-rail button, .header-all-products { font-size:15px; padding: 8px; }
  .header-product-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 23px 17px; padding: 17px 12px; }
  .header-product-groups.is-filtered .header-product-group ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 14px; margin-top: 20px; }
  .header-product-group h2 { font-size:17px; }
  .header-product-description { font-size:15px; overflow-wrap: anywhere; }
  .header-popular { gap: 12px; padding: 13px 12px; }
  .header-popular-all { margin-left: 0; }
}


/* Product overview is a real link; the adjacent control opens the category menu. */
.header-product-entry{display:flex;align-items:center;gap:1px;height:100%}.header-product-entry .header-product-link{padding-right:3px}.header-product-entry .header-product-toggle{display:flex;align-items:center;justify-content:center;width:25px;min-height:40px;padding:0;background:transparent;border:0;color:#49637d;cursor:pointer}.header-product-entry .header-product-toggle:hover{color:var(--blue)}.header-product-entry .header-product-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.header-product-entry .header-chevron{display:block;width:6px;height:6px}
@media(max-width:1099px){.header-product-entry{width:100%;justify-content:space-between}.header-product-entry .header-product-link{flex:1}.header-product-entry .header-product-toggle{width:46px;min-height:46px}}

/* Product and regional links in the shared top bar. */
.header-toolbar{height:auto;min-height:34px}
.header-toolbar-inner{justify-content:flex-start;padding-top:5px;padding-bottom:5px}
.header-keyword-links{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px 24px;width:100%;min-width:0}
.header-keyword-links a{font:inherit;line-height:24px;color:#63758b;white-space:nowrap;text-decoration:none}
.header-keyword-links a:hover{color:var(--blue,#1264ca)}
.header-keyword-links a:focus-visible{outline:2px solid var(--blue,#1264ca);outline-offset:3px}
@media(max-width:760px){.header-keyword-links{gap:4px 15px}.header-toolbar-inner{padding-top:7px;padding-bottom:7px}}

/* Product menu only: six desktop groups, compact popular links, mobile accordion. */
#header-product-menu .header-product-group h2{font-size:16px;font-weight:600}
#header-product-menu .header-product-name{font-size:16px}
#header-product-menu .header-product-description{font-size:14px;line-height:1.6}
#header-product-menu .header-product-group ul{margin-top:17px}
#header-product-menu .header-group-toggle{display:none}
#header-product-menu .header-popular{gap:9px 14px;padding-top:13px;padding-bottom:13px}
#header-product-menu .header-popular-label{margin-left:-6px}
#header-product-menu .header-popular a{white-space:nowrap}
@media(max-width:1099px){
 #header-product-menu .header-category-rail{display:none}
 #header-product-menu .header-product-groups{display:flex;flex-direction:column;gap:0;padding:0 16px}
 #header-product-menu [data-product-group="cloud"]{order:-1}
 #header-product-menu .header-product-group h2{padding:0;border:0}
 #header-product-menu .header-group-title{display:none}
 #header-product-menu .header-group-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:15px 0;border:0;border-bottom:1px solid #e7ecf2;background:transparent;color:#1f344c;text-align:left;font:inherit;cursor:pointer}
 #header-product-menu .header-group-toggle[aria-expanded=true]{color:var(--blue,#1264ca)}
 #header-product-menu .header-group-toggle[aria-expanded=true] span{transform:rotate(180deg)}
 #header-product-menu .header-product-group ul{display:none;margin:0;padding:7px 0 12px}
 #header-product-menu .header-product-group.is-expanded ul{display:block}
 #header-product-menu .header-product-group li{margin:0}
 #header-product-menu .header-product-group li a{padding:10px 12px}
 #header-product-menu .header-product-description{display:none}
}

/* Section links remain clickable; adjacent buttons support keyboard and touch. */
.header-dropdown{position:relative;display:flex;align-items:stretch}
.header-dropdown-entry{display:flex;align-items:center;height:100%;gap:3px}
.header-dropdown-toggle{display:flex;align-items:center;justify-content:center;width:24px;min-height:40px;padding:0;border:0;background:transparent;color:#49637d;cursor:pointer}
.header-dropdown-toggle[aria-expanded="true"] .header-chevron{transform:rotate(225deg);margin-top:3px}
.header-dropdown-menu{position:absolute;top:100%;right:0;min-width:190px;padding:9px 0;background:#fff;border:1px solid #e4e9ef;box-shadow:0 8px 20px #1029411a}
.header-dropdown-menu[hidden]{display:none}
.header-dropdown-menu .header-nav-link{justify-content:flex-start;padding:12px 23px;line-height:1.6}
.header-dropdown-menu .header-nav-link:hover,.header-dropdown-menu .header-nav-link[aria-current="page"]{background:#f3f7fc}
.header-dropdown-menu .header-nav-link::after{display:none}
@media(max-width:1099px){
 .header-dropdown{display:block}
 .header-dropdown-entry{justify-content:space-between}
 .header-dropdown-entry>.header-nav-link{flex:1}
 .header-dropdown-toggle{width:46px;min-height:46px}
 .header-dropdown-menu{position:static;min-width:0;margin:0 0 8px;padding:3px 0;background:#f6f8fb;box-shadow:none;border:0;border-left:2px solid #dbe6f5}
 .header-dropdown-menu .header-nav-link{padding:10px 20px}
}

/* Text-only dropdown entries do not reserve space for an arrow control. */
.header-product-entry,.header-dropdown-entry{gap:0}
.header-product-entry .header-product-link{padding-right:0}
@media(min-width:1100px){.header-navigation{justify-content:flex-end;gap:clamp(18px,2.2vw,30px)}}
