/* HITP global nav: four service groups with Apple-style flyouts. Shared by the home page and every inner page. */
.gx { position: sticky; top: 0; z-index: 60; background: rgba(251,251,253,.8); -webkit-backdrop-filter: saturate(1.8) blur(20px); backdrop-filter: saturate(1.8) blur(20px); border-bottom: 1px solid rgba(0,0,0,.06); font-family: 'Inter v6', -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Noto Sans SC v6', 'Microsoft YaHei', sans-serif; }
.gx-in { max-width: 1024px; margin: 0 auto; padding: 0 max(22px, env(safe-area-inset-left, 0px)); height: 48px; display: flex; align-items: center; gap: 28px; }
.gx-logo { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 600; color: #1D1D1F; text-decoration: none; margin-right: auto; }
.gx-logo img { width: 22px; height: 22px; display: block; }
.gx-main { display: flex; align-items: stretch; height: 48px; gap: 4px; }
.gx-item { position: static; display: flex; align-items: center; }
.gx-top { display: flex; align-items: center; height: 48px; padding: 0 12px; font-size: 13px; color: rgba(29,29,31,.85); text-decoration: none; background: none; border: 0; font-family: inherit; cursor: pointer; }
.gx-top:hover, .gx-item:focus-within .gx-top, .gx-top[aria-current="page"] { color: #1D1D1F; }
.gx-top[aria-current="page"] { font-weight: 600; }
.gx-side { display: flex; align-items: center; gap: 20px; font-size: 13px; }
.gx-side a { color: rgba(29,29,31,.85); text-decoration: none; }
.gx-side a:hover { color: #1D1D1F; }
.gx-side .gx-cta { color: #fff; background: #0071E3; border-radius: 980px; padding: 5px 12px; }
.gx-side .gx-cta:hover { color: #fff; background: #0077ED; }
.gx-fly { position: absolute; left: 0; right: 0; top: 48px; background: rgba(251,251,253,.98); -webkit-backdrop-filter: saturate(1.8) blur(20px); backdrop-filter: saturate(1.8) blur(20px); border-bottom: 1px solid rgba(0,0,0,.06);
  opacity: 0; visibility: hidden; transform: translateY(-6px); transition: opacity .24s cubic-bezier(.4,0,.6,1), transform .24s cubic-bezier(.4,0,.6,1), visibility 0s linear .24s; }
.gx-item:hover .gx-fly, .gx-item:focus-within .gx-fly, .gx-item.open .gx-fly { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.gx-fly-in { max-width: 1024px; margin: 0 auto; padding: 36px max(22px, env(safe-area-inset-left, 0px)) 44px; display: grid; grid-template-columns: 260px 1fr; gap: 48px; }
.gx-fly h3 { margin: 0 0 6px; font-size: 24px; font-weight: 500; color: #1D1D1F; }
.gx-fly p { margin: 0; font-size: 14px; line-height: 1.6; color: #6E6E73; }
.gx-fly .gx-all { display: inline-block; margin-top: 14px; font-size: 14px; color: #0066CC; text-decoration: none; }
.gx-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 40px; list-style: none; margin: 0; padding: 0; }
.gx-links a { display: block; padding: 8px 0; text-decoration: none; }
.gx-links b { display: block; font-size: 17px; font-weight: 500; color: #1D1D1F; }
.gx-links span { display: block; font-size: 13px; color: #6E6E73; margin-top: 2px; }
.gx-links a:hover b { color: #0066CC; }
.gx-menu { display: none; margin-left: auto; background: none; border: 0; font: inherit; font-size: 13px; color: #1D1D1F; padding: 8px 0; cursor: pointer; }
.gx a:focus-visible, .gx button:focus-visible { outline: 2px solid #0071E3; outline-offset: 2px; border-radius: 6px; }
@media (max-width: 1000px) {
  .gx-main, .gx-side { display: none; }
  .gx-menu { display: block; }
  .gx.open .gx-main { display: block; position: absolute; top: 48px; left: 0; right: 0; height: calc(100vh - 48px); overflow-y: auto; background: #FBFBFD; padding: 8px max(22px, env(safe-area-inset-left, 0px)) 40px; }
  .gx.open .gx-side { display: flex; position: fixed; left: 0; right: 0; bottom: 0; padding: 14px 22px calc(14px + env(safe-area-inset-bottom, 0px)); background: #FBFBFD; border-top: 1px solid #D2D2D7; justify-content: space-between; }
  .gx-item { display: block; border-bottom: 1px solid #E8E8ED; }
  .gx-top { height: auto; width: 100%; padding: 16px 0; font-size: 21px; font-weight: 500; color: #1D1D1F; justify-content: space-between; }
  .gx-top::after { content: '+'; font-weight: 300; color: #6E6E73; }
  .gx-item.open .gx-top::after { content: '−'; }
  .gx-fly { position: static; opacity: 1; visibility: visible; transform: none; display: none; background: none; border: 0; -webkit-backdrop-filter: none; backdrop-filter: none; }
  .gx-item:hover .gx-fly, .gx-item:focus-within .gx-fly { display: none; }
  .gx-item.open .gx-fly { display: block; }
  .gx-fly-in { display: block; padding: 0 0 16px; }
  .gx-fly-in > div:first-child { display: none; }
  .gx-links { grid-template-columns: minmax(0, 1fr); }
  .gx-links b { font-size: 17px; }
}
@media (prefers-reduced-motion: reduce) { .gx-fly { transition: none; } }
.gx a, .gx a:hover { text-decoration: none !important; }
.gx-fly { background: #FBFBFD; box-shadow: 0 24px 40px -24px rgba(0,0,0,.12); }
.gx:has(.gx-item:hover) ~ *, .gx:has(.gx-item:focus-within) ~ * { }
@media (max-width: 1000px) {
  .gx.open { -webkit-backdrop-filter: none; backdrop-filter: none; background: #FBFBFD; }
  .gx-fly { box-shadow: none; background: none; }
}
