  .skip-link{
    position:fixed;left:20px;top:12px;z-index:500;transform:translateY(-160%);
    background:#1B3764;color:#fff;padding:11px 18px;border-radius:8px;
    font-weight:600;text-decoration:none;transition:transform .18s ease-out;
  }
  .skip-link:focus{transform:none}

  /* ---------- site navigation: accessible mega menu ---------- */
  .site-nav{isolation:isolate}
  .site-nav .nav-inner{max-width:1180px;padding-block:14px}
  .site-nav .mark{flex:0 0 auto}
  .site-nav .mark img{display:block;width:auto;height:44px}
  .site-nav .nav-links{align-items:center;gap:8px}
  .site-nav .nav-links>a,
  .site-nav .nav-mega>summary{
    display:flex;align-items:center;justify-content:center;min-height:44px;
    padding:0 13px;border-radius:8px;color:var(--grey);font:600 13.5px/1.2 'Open Sans',sans-serif;
    letter-spacing:.01em;text-decoration:none;cursor:pointer;transition:color .2s ease,background .2s ease;
  }
  .site-nav .nav-links>a:hover,
  .site-nav .nav-mega>summary:hover,
  .site-nav .nav-mega[open]>summary{color:var(--dark);background:#eef4f8}
  .site-nav .nav-links>a[aria-current="page"]{color:var(--dark);background:#eef4f8}
  .site-nav .nav-mega{position:static}
  .site-nav .nav-mega>summary{list-style:none;gap:7px}
  .site-nav .nav-mega>summary::-webkit-details-marker{display:none}
  .site-nav .nav-mega>summary svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .25s cubic-bezier(.22,1,.36,1)}
  .site-nav .nav-mega[open]>summary svg{transform:rotate(180deg)}
  .site-nav .mega-panel{
    position:absolute;top:calc(100% + 1px);left:50%;width:min(1120px,calc(100vw - 40px));
    transform:translateX(-50%);display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:0;
    padding:20px;background:#fff;border-bottom:3px solid var(--teal);box-shadow:0 8px 8px rgba(16,38,70,.12);
    animation:mega-in .28s cubic-bezier(.22,1,.36,1) both;
  }
  @keyframes mega-in{from{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%,0)}}
  .site-nav .mega-intro{display:flex;flex-direction:column;justify-content:space-between;min-height:238px;padding:26px;background:var(--dark);color:#fff;border-radius:10px}
  .site-nav .mega-intro>span{font-size:13px;color:#8fe0d8}
  .site-nav .mega-intro strong{max-width:17ch;font-size:21px;line-height:1.35;font-weight:600;text-wrap:balance}
  .site-nav .mega-intro a{color:#fff;font-size:13px;font-weight:600;text-underline-offset:4px}
  .site-nav .mega-group{padding:22px 18px}
  .site-nav .mega-group>p{margin:0 10px 10px;color:var(--teal);font-size:12px;font-weight:600}
  .site-nav .mega-group>a{display:block;padding:11px 10px;border-radius:8px;color:var(--dark);text-decoration:none;transition:background .2s ease,transform .2s ease}
  .site-nav .mega-group>a:hover{background:var(--mist);transform:translateX(2px)}
  .site-nav .mega-group strong{display:block;margin-bottom:3px;font-size:14px;line-height:1.35}
  .site-nav .mega-group span{display:block;color:var(--grey);font-size:12.5px;line-height:1.45}
  .site-nav .nav-cta{margin-left:4px;padding-inline:20px!important;background:var(--dark)!important;color:#fff!important;border-radius:100px!important}
  .site-nav .nav-cta:hover{background:#26497e!important}
  body.nav-lock{overflow:hidden}

  /* Shared conversion actions used in the first viewport of primary pages. */
  .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
  .hero-action{
    display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 22px;
    border:1px solid var(--dark,#1b3764);border-radius:999px;color:var(--dark,#1b3764);
    font:600 14px/1.4 'Open Sans',sans-serif;text-decoration:none;transition:background .2s,color .2s,transform .2s;
  }
  .hero-action--primary{background:var(--dark,#1b3764);color:#fff}
  .hero-action:hover{transform:translateY(-2px)}
  .hero-action--primary:hover{background:#26497e}
  .hero-action--secondary:hover{background:var(--dark,#1b3764);color:#fff}

  .mobile-sticky-cta{display:none}

  @media(max-width:980px){
    .site-nav .nav-inner{padding-block:12px}
    .site-nav .mark img{height:40px}
    .site-nav .nav-links{
      max-height:calc(100vh - 69px);max-height:calc(100dvh - 69px);overflow-y:auto;
      padding:12px 20px 24px;background:#fff;box-shadow:0 8px 8px rgba(16,38,70,.12);
    }
    .site-nav .nav-links>a,
    .site-nav .nav-mega>summary{justify-content:space-between;width:100%;min-height:52px;padding:0 12px;font-size:15px}
    .site-nav .nav-mega{width:100%;border-bottom:1px solid var(--line)}
    .site-nav .mega-panel{position:static;width:100%;transform:none;grid-template-columns:1fr;gap:0;padding:0 0 14px;border:0;box-shadow:none;animation:mobile-mega-in .22s ease-out both}
    @keyframes mobile-mega-in{from{opacity:.4;transform:translateY(-4px)}to{opacity:1;transform:none}}
    .site-nav .mega-intro{min-height:0;margin:2px 0 8px;padding:20px;border-radius:10px;gap:16px}
    .site-nav .mega-intro strong{max-width:28ch;font-size:18px}
    .site-nav .mega-group{padding:10px 0 0}
    .site-nav .mega-group>p{margin:0 12px 4px}
    .site-nav .mega-group>a{padding:10px 12px}
    .site-nav .nav-cta{justify-content:center!important;margin:12px 0 0!important}
  }

  @media(max-width:700px){
    body.mobile-cta-enabled{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
    .mobile-sticky-cta{
      position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom,12px));z-index:180;
      display:block;opacity:1;transform:translateY(0);transition:opacity .18s ease,transform .18s ease;
    }
    .mobile-sticky-cta.is-suppressed{opacity:0;pointer-events:none;transform:translateY(12px)}
    .mobile-sticky-cta a{
      display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 20px;
      border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#1b3764;color:#fff;
      box-shadow:0 5px 18px rgba(10,24,45,.28);font:600 14px/1.35 'Open Sans',sans-serif;text-align:center;text-decoration:none;
    }
    .mobile-sticky-cta span{color:#75d8ce;font-size:18px}
    .hero-actions{display:grid;grid-template-columns:1fr;margin-top:28px}
    .hero-action{width:100%}
  }

  @media(prefers-reduced-motion:reduce){
    .site-nav .mega-panel{animation:none}
    .site-nav .nav-mega>summary svg,.site-nav .mega-group>a{transition:none}
    .site-nav .nav-mega[open]>summary svg,.site-nav .mega-group>a:hover{transform:none}
    .hero-action,.mobile-sticky-cta{transition:none}
    .hero-action:hover{transform:none}
  }
