/* TMS Universal Navigation V1 */
#tms-universal-nav, #tms-universal-nav * { box-sizing:border-box; }
body.tms-u-ready #header,
body.tms-u-ready #site-navigation.tms-perfect-header,
body.tms-u-ready #tms-standard-header-v41,
body.tms-u-ready #tms-real-header-v95,
body.tms-u-ready header.site-header,
body.tms-u-ready header.topbar,
body.tms-u-ready header.tms-header,
body.tms-u-ready header.nav,
body.tms-u-ready #tms-final-mobile-nav,
body.tms-u-ready #tms-mobile-nav-rescue,
body.tms-u-ready #tms-global-mobile-drawer-v1 { display:none !important; }

#tms-universal-nav {
  position:sticky; top:0; z-index:2147483000;
  width:100%; background:#fff; color:#172033;
  border-bottom:1px solid rgba(7,22,74,.08);
  box-shadow:0 8px 28px rgba(7,22,74,.06);
  font-family:Arial,Helvetica,sans-serif;
}
#tms-universal-nav a { color:inherit; text-decoration:none; }
#tms-universal-nav .tms-u-wrap {
  max-width:1440px; min-height:76px; margin:0 auto; padding:0 28px;
  display:flex; align-items:center; gap:26px;
}
#tms-universal-nav .tms-u-logo { display:flex; align-items:center; flex:0 0 auto; }
#tms-universal-nav .tms-u-logo img { display:block; width:86px; height:58px; object-fit:contain; }
#tms-universal-nav .tms-u-desktop { margin-left:auto; display:flex; align-items:center; gap:20px; font-size:14px; font-weight:700; }
#tms-universal-nav .tms-u-link,
#tms-universal-nav .tms-u-trigger { min-height:42px; display:inline-flex; align-items:center; border:0; background:transparent; padding:0; font:inherit; color:#172033; cursor:pointer; white-space:nowrap; }
#tms-universal-nav .tms-u-link:hover,
#tms-universal-nav .tms-u-link:focus-visible,
#tms-universal-nav .tms-u-trigger:hover,
#tms-universal-nav .tms-u-trigger:focus-visible { color:#0b3d91; outline:none; }
#tms-universal-nav .tms-u-menu { position:relative; display:flex; align-items:center; }
#tms-universal-nav .tms-u-chevron { width:7px; height:7px; margin-left:7px; margin-top:-4px; border-right:1.7px solid currentColor; border-bottom:1.7px solid currentColor; transform:rotate(45deg); transition:transform .16s ease; }
#tms-universal-nav .tms-u-menu:hover .tms-u-chevron,
#tms-universal-nav .tms-u-menu:focus-within .tms-u-chevron,
#tms-universal-nav .tms-u-menu.tms-u-open .tms-u-chevron { transform:rotate(225deg); margin-top:4px; }

/* The dropdown starts exactly at the bottom edge of the trigger. The transparent
   top padding is inside the hoverable dropdown, so there is no dead gap. */
#tms-universal-nav .tms-u-dropdown {
  position:absolute; top:100%; left:-18px; min-width:300px;
  padding-top:10px; visibility:hidden; opacity:0; pointer-events:none;
  transform:translateY(-4px); transition:opacity .14s ease, transform .14s ease, visibility .14s ease;
}
#tms-universal-nav .tms-u-panel {
  background:#fff; border:1px solid rgba(7,22,74,.11); border-radius:16px;
  box-shadow:0 24px 60px rgba(7,22,74,.16); padding:12px;
}
#tms-universal-nav .tms-u-menu:hover > .tms-u-dropdown,
#tms-universal-nav .tms-u-menu:focus-within > .tms-u-dropdown,
#tms-universal-nav .tms-u-menu.tms-u-open > .tms-u-dropdown {
  visibility:visible; opacity:1; pointer-events:auto; transform:translateY(0);
}
#tms-universal-nav .tms-u-dropdown a { display:block; padding:10px 11px; border-radius:9px; font-size:14px; line-height:1.25; }
#tms-universal-nav .tms-u-dropdown a:hover,
#tms-universal-nav .tms-u-dropdown a:focus-visible { background:#f3f7ff; color:#07164a; outline:none; }
#tms-universal-nav .tms-u-tools { left:auto; right:-150px; width:min(820px,calc(100vw - 48px)); }
#tms-universal-nav .tms-u-tools .tms-u-panel { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px 16px; padding:18px; }
#tms-universal-nav .tms-u-group { min-width:0; }
#tms-universal-nav .tms-u-group strong { display:block; padding:8px 10px 5px; color:#07164a; font-size:12px; letter-spacing:.04em; text-transform:uppercase; }
#tms-universal-nav .tms-u-cta { display:inline-flex; min-height:42px; align-items:center; justify-content:center; padding:0 16px; border:2px solid #07164a; border-radius:999px; color:#07164a !important; font-weight:800; }
#tms-universal-nav .tms-u-cta:hover,
#tms-universal-nav .tms-u-cta:focus-visible { background:#07164a; color:#fff !important; outline:none; }
#tms-universal-nav .tms-u-mobile-toggle { display:none; margin-left:auto; width:48px; height:42px; border:2px solid #07164a; border-radius:11px; background:#fff; align-items:center; justify-content:center; flex-direction:column; gap:5px; cursor:pointer; }
#tms-universal-nav .tms-u-mobile-toggle span { width:22px; height:2px; background:#07164a; border-radius:20px; }
#tms-u-backdrop, #tms-u-mobile { display:none; }

@media (max-width:1100px){
  #tms-universal-nav .tms-u-wrap { min-height:68px; padding:0 18px; }
  #tms-universal-nav .tms-u-logo img { width:76px; height:50px; }
  #tms-universal-nav .tms-u-desktop { display:none; }
  #tms-universal-nav .tms-u-mobile-toggle { display:flex; }
  body.tms-u-mobile-open { overflow:hidden !important; }
  body.tms-u-mobile-open #tms-u-backdrop { display:block; position:fixed; inset:0; background:rgba(0,0,0,.52); z-index:2147483001; }
  #tms-u-mobile { display:block; position:fixed; top:0; right:-92vw; width:min(88vw,420px); height:100vh; background:#fff; z-index:2147483002; box-shadow:-20px 0 60px rgba(0,0,0,.24); transition:right .22s ease; overflow:auto; }
  body.tms-u-mobile-open #tms-u-mobile { right:0; }
  #tms-u-mobile .tms-u-mobile-top { min-height:70px; display:flex; align-items:center; justify-content:space-between; padding:10px 20px; border-bottom:1px solid rgba(7,22,74,.08); }
  #tms-u-mobile .tms-u-mobile-logo img { width:74px; height:48px; object-fit:contain; }
  #tms-u-mobile .tms-u-close { width:42px; height:42px; border:0; background:transparent; font-size:34px; color:#07164a; cursor:pointer; }
  #tms-u-mobile nav { padding:8px 22px 28px; }
  #tms-u-mobile nav > a, #tms-u-mobile summary { display:block; padding:16px 0; border-bottom:1px solid rgba(7,22,74,.08); color:#172033; font-size:18px; font-weight:700; cursor:pointer; list-style:none; }
  #tms-u-mobile summary::-webkit-details-marker { display:none; }
  #tms-u-mobile summary::after { content:'+'; float:right; font-size:22px; font-weight:400; }
  #tms-u-mobile details[open] summary::after { content:'−'; }
  #tms-u-mobile details a { display:block; padding:11px 8px 11px 14px; color:#344054; font-size:15px; border-bottom:1px solid rgba(7,22,74,.05); }
  #tms-u-mobile .tms-u-mobile-cta { margin-top:18px; text-align:center; border:2px solid #07164a; border-radius:999px; padding:13px 16px; color:#07164a; font-weight:800; }
}
