
    /* The Research trigger sits mid-row, so a trigger-anchored wide panel would
       clip off the left edge. Instead anchor the mega to the full-width .nav-links
       row (its right edge = the nav rail right): make .nav-links the positioning
       context and the Research .nav-dd static >700px, so right:0 right-aligns the
       panel to the rail and it stays fully on-screen. The ::before bridges the
       hover gap (the panel is a child of .nav-dd, so hovering it keeps it open). */
    @media (min-width:701px){
      /* nav-links is the positioning context for the rail-anchored mega; desktop
         only, so it never overrides theme.js's position:absolute hamburger flyout
         (≤700px), which shares this specificity. */
      .site-nav .nav-links,.topbar .nav-links{position:relative}
      .site-nav .nav-mega-dd,.topbar .nav-mega-dd{position:static}
      /* the base .nav-dd::after bridge would become a full-width strip once the
         trigger is static — disable it; the mega's own ::before bridges the gap. */
      .site-nav .nav-mega-dd::after,.topbar .nav-mega-dd::after{content:none}
      .site-nav .nav-dd-menu.nav-mega,.topbar .nav-dd-menu.nav-mega{
        left:auto;right:0;min-width:0;width:min(1060px,calc(100vw - 40px));padding:16px}
      .nav-dd-menu.nav-mega::before{content:"";position:absolute;left:0;right:0;top:-11px;height:13px}
    }
    .nav-mega-feat{display:grid;grid-template-columns:1fr 1fr;gap:10px;
      padding-bottom:13px;margin-bottom:13px;
      border-bottom:1px solid color-mix(in srgb,var(--text,#cbd5e1) 11%,transparent)}
    .nav-mega.nav-mega .nm-feat{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;
      white-space:normal;text-decoration:none;
      background:color-mix(in srgb,var(--link,var(--blue,#5b9dff)) 10%,transparent);
      border:1px solid color-mix(in srgb,var(--link,var(--blue,#5b9dff)) 22%,transparent);
      transition:transform .16s ease,background .16s,border-color .16s,box-shadow .18s}
    .nav-mega.nav-mega .nm-feat:hover{transform:translateY(-2px);
      background:color-mix(in srgb,var(--link,var(--blue,#5b9dff)) 17%,transparent);
      border-color:color-mix(in srgb,var(--link,var(--blue,#5b9dff)) 44%,transparent);
      box-shadow:0 12px 26px -14px color-mix(in srgb,var(--link,var(--blue,#5b9dff)) 60%,transparent)}
    .nav-mega .nm-feat .nm-ic{font-size:21px;flex:none;width:24px;text-align:center}
    .nav-mega.nav-mega .nm-feat .nm-t{display:block;font-size:14px;font-weight:700;color:var(--text,#e7ecf6);line-height:1.2}
    .nav-mega-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 14px}
    .nav-mega-col{display:flex;flex-direction:column;gap:1px;min-width:0}
    .nav-mega-h{font-size:9.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
      color:var(--muted,#8b93a1);display:flex;align-items:center;gap:8px;padding:3px 10px 7px}
    .nav-mega-h::after{content:"";flex:1;height:1px;background:color-mix(in srgb,var(--text,#cbd5e1) 10%,transparent)}
    html[data-lang="zh"] .nav-mega-h{letter-spacing:.02em}
    .nav-mega.nav-mega .nav-mega-item{display:flex;align-items:flex-start;gap:9px;padding:7px 10px;border-radius:10px;
      white-space:normal;text-decoration:none;transition:background .15s ease}
    .nav-mega.nav-mega .nav-mega-item:hover{background:color-mix(in srgb,var(--link,var(--blue,#5b9dff)) 14%,var(--panel2,var(--card,#1e222a)))}
    .nav-mega .nm-ic{flex:none;font-size:15px;line-height:1.3;width:18px;text-align:center}
    .nav-mega .nm-tx{min-width:0}
    .nav-mega.nav-mega .nm-t{display:block;font-size:12.5px;font-weight:600;color:var(--text,#e7ecf6);line-height:1.25}
    .nav-mega.nav-mega .nav-mega-item .d,.nav-mega.nav-mega .nm-feat .d{display:block;font-size:10.5px;font-weight:400;
      color:var(--muted,#8b93a1);line-height:1.34;margin-top:2px;white-space:normal}
    @media (max-width:1080px) and (min-width:701px){
      .site-nav .nav-dd-menu.nav-mega,.topbar .nav-dd-menu.nav-mega{width:min(680px,calc(100vw - 24px))}
      .nav-mega-grid{grid-template-columns:1fr 1fr}}
    @media (max-width:700px){
      .nav-mega-feat{grid-template-columns:1fr;gap:7px;padding-bottom:9px;margin-bottom:7px}
      .nav-mega-grid{grid-template-columns:1fr;gap:0}
      .nav-mega-h{padding-top:9px}
      /* the hamburger accordion caps each open dropdown at max-height:600px
         (theme.js, 0,5,0); the stacked mega (2 cards + 4 groups + 23 items) is
         taller, so raise the cap for it (0,6,0 wins) — the parent flyout
         (max-height:78vh; overflow-y:auto) scrolls any remaining overflow.
         Same specificity trick overrides theme.js's generic accordion-panel
         padding (8px 0 6px 12px — left-heavy, meant for indented text-link
         submenus) with symmetric sides + top breathing room, so the feature
         cards read centered under the trigger instead of crooked. */
      .has-nav-toggle .nav-links .nav-dd.open>.nav-dd-menu.nav-mega{max-height:4000px;padding:12px 10px 8px}}
    