@font-face {
  font-family: "Spectrum Plex";
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
  src: url("/fonts/ibm-plex-sans/ibm-plex-sans-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "Spectrum Plex";
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
  src: url("/fonts/ibm-plex-sans/ibm-plex-sans-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

.topline { height: 3px; background: linear-gradient(90deg,#071a33 0%,#0a2f5f 38%,#087ebe 78%,#18c8ff); }
.site-nav {
  --nav-ink: #142d47;
  --nav-muted: #536b80;
  --nav-blue: #006db5;
  --nav-font: Roboto,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  position: sticky;
  top: 0;
  z-index: 3000;
  display: flex;
  align-items: center;
  min-height: 116px;
  padding: 0;
  background: #fff;
  border: 0;
  border-bottom: 1px solid #dce6ee;
  box-shadow: 0 5px 20px rgba(7,26,51,.045);
  color: var(--nav-ink);
  font-family: var(--nav-font);
}
.site-nav *, .site-nav *::before, .site-nav *::after { box-sizing: border-box; }
.site-nav .nav-inner {
  width: 80%;
  max-width: 1440px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.site-nav .brand {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  text-decoration: none;
  line-height: 1;
}
/* Frame the supplied transparent canvas without altering the original artwork. */
.site-nav .brand-art { display: block; position: relative; width: 204px; aspect-ratio: 1704 / 458; overflow: hidden; }
.site-nav .brand-logo {
  display: block;
  position: absolute;
  left: -2.05%;
  top: -48.03%;
  width: 104.11%;
  height: auto;
  max-width: none;
  margin: 0;
  padding: 0;
  object-fit: contain;
}
.site-nav .nav-links {
  display: flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--nav-ink);
  font-family: var(--nav-font);
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -.025em;
}
.site-nav .nav-links a, .site-nav .nav-logout {
  color: inherit;
  text-decoration: none;
  font: inherit;
  white-space: nowrap;
  transition: color .16s ease, background-color .16s ease, box-shadow .16s ease;
}
.site-nav .nav-links > a, .site-nav .nav-item > a {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 11px 12px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  line-height: 22px;
}
.site-nav .nav-links > a:hover, .site-nav .nav-item > a:hover { color: var(--nav-blue); background: #f3f8fc; box-shadow: none; }
.site-nav .nav-links > a.active, .site-nav .nav-item > a.active { color: var(--nav-blue); background: transparent; box-shadow: none; font-weight: 700; }
.site-nav .nav-links > a.active::before, .site-nav .nav-item > a.active::before {
  content: "";
  position: absolute;
  bottom: 2px;
  left: 12px;
  right: 12px;
  height: 2px;
  background: #068fcb;
}
.site-nav .nav-item { position: relative; display: flex; align-items: center; }
.site-nav .has-submenu > a { padding-right: 4px; }
.site-nav .submenu-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 28px;
  width: 28px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--nav-muted);
  cursor: pointer;
}
.site-nav .submenu-toggle::after { content: ""; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .16s ease; }
.site-nav .submenu-open > .submenu-toggle::after { transform: translateY(2px) rotate(225deg); }
.site-nav .submenu-toggle:hover { background: #eaf4fb; color: var(--nav-blue); }
.site-nav .submenu {
  display: none;
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  right: auto;
  z-index: 3100;
  width: 268px;
  min-width: 0;
  max-height: calc(100dvh - 160px);
  overflow-y: auto;
  padding: 9px;
  border: 1px solid #dce6ee;
  border-top: 3px solid #1084bc;
  border-radius: 0 0 5px 5px;
  background: #fff;
  color: var(--nav-ink);
  box-shadow: 0 18px 42px rgba(7,26,51,.13), 0 3px 8px rgba(7,26,51,.04);
  transform: none;
}
.site-nav .submenu::before { content: none; }
/* Older country styles include hover and !important mobile menu rules. */
.site-nav .has-submenu:not(.submenu-open) > .submenu { display: none !important; }
.site-nav .has-submenu.submenu-open > .submenu { display: block !important; }
.site-nav .submenu a, .site-nav .submenu .nav-logout {
  display: flex;
  align-items: center;
  min-height: 42px;
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 0;
  border-radius: 2px;
  background: transparent;
  box-shadow: none;
  color: var(--nav-muted);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  text-align: left;
  white-space: normal;
  cursor: pointer;
}
.site-nav .submenu a:hover, .site-nav .submenu a.active, .site-nav .submenu .nav-logout:hover { background: #edf6fc; color: #005d9c; box-shadow: inset 2px 0 #0787c5; }
.site-nav .submenu a.active { font-weight: 600; }
.site-nav .mega-col { display: grid; gap: 2px; margin: 0; padding: 0; background: transparent; }
.site-nav .submenu-label { display: block; padding: 7px 11px 9px; color: #667d91; font-size: 10px; font-weight: 600; letter-spacing: .11em; text-transform: uppercase; }
.site-nav .nav-links > .login, .site-nav .user-nav {
  margin-left: 14px;
  background: #0a2f5f !important;
  color: #fff !important;
  border: 1px solid #0a2f5f;
  box-shadow: 0 3px 8px rgba(10,47,95,.09);
}
.site-nav .nav-links > .login { padding-left: 21px; padding-right: 21px; }
.site-nav .nav-links > .login:hover, .site-nav .nav-links > .login.active { background: #074679 !important; color: #fff !important; }
.site-nav .user-nav > .login { color: #fff !important; background: transparent !important; box-shadow: none; padding-left: 16px; }
.site-nav .user-nav > .login::after { content: none; }
.site-nav .user-nav > .submenu-toggle { color: #b9e6ff; flex-basis: 34px; width: 34px; }
.site-nav .user-nav > .submenu-toggle:hover, .site-nav .user-nav > .login:hover { background: #074679 !important; color: #fff !important; }
.site-nav .user-nav > .login.active { color: #fff !important; background: transparent !important; }
.site-nav .user-nav > .login.active::before, .site-nav .nav-links > .login.active::before { background: #18c8ff; }
.site-nav .user-nav .submenu { right: 0; left: auto; width: 280px; }
.site-nav .submenu form { margin: 0; }
.site-nav .admin-menu-section { margin-top: 8px; padding-top: 8px; border-top: 1px solid #dce6ee; }
.site-nav .admin-menu-label { display: block; padding: 6px 11px; color: #60758b; font-size: 10px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.site-nav .menu-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 92px;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid #dce6ee;
  border-radius: 0;
  background: #f4f8fc;
  box-shadow: none;
  color: var(--nav-ink);
  font-family: var(--nav-font);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}
.site-nav .menu-icon { width: 16px; height: 12px; position: relative; border-top: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; }
.site-nav .menu-icon::after { content: ""; position: absolute; top: 4px; left: 0; right: 0; border-top: 1.5px solid currentColor; }
.site-nav .menu-toggle[aria-expanded="true"] { color: #fff; background: #0a2f5f; border-color: #0a2f5f; }
.site-nav a:focus-visible, .site-nav button:focus-visible { outline: 2px solid #0074b8; outline-offset: 3px; }
.site-nav .user-nav > a:focus-visible, .site-nav .user-nav > button:focus-visible { outline-color: #18c8ff; }

/* The footer and shared map shell retain their existing appearance. */
.site-footer{width:100%;margin:0;overflow:hidden;background:linear-gradient(135deg,rgba(7,26,51,.82),rgba(10,47,95,.66) 48%,rgba(11,95,255,.42)),url("/images/ftbg2.webp") center/cover no-repeat,#071A33;border-top:1px solid rgba(24,200,255,.34);color:#F6FAFF;box-shadow:0 -14px 44px rgba(7,26,51,.14)}
.footer-grid,.footer-bottom{width:80%;max-width:1440px;margin:0 auto}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:28px;background:transparent;border:0}.footer-col{padding:28px 0}.footer-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.footer-list li{color:#DDEBFF;font-size:14px;line-height:1.55}.footer-list a{display:inline;color:#F6FAFF;text-decoration:none}.footer-list a:hover{color:#18C8FF}.footer-list strong{color:#FFFFFF}.footer-social{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.footer-social a{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:28px;padding:0 8px;border:1px solid rgba(24,200,255,.34);border-radius:999px;background:rgba(11,95,255,.18);color:#fff;font-size:11px;font-weight:900;text-decoration:none}
.toolbar .action{min-height:58px}
.shell:has(>.map-wrap){border:1px solid #d9e3ec;background:#fff;box-shadow:0 14px 38px rgba(23,48,75,.07)}
.shell:has(>.map-wrap)>.shell-actions{border:0!important;border-bottom:1px solid #d9e3ec!important}

@media (max-width:1399px) { .site-nav .nav-inner { width: 92%; } }
@media (max-width:1250px) {
  .footer-grid,.footer-bottom { width: 92%; }
  .site-nav .nav-links { gap: 2px; }
  .site-nav .nav-links > a, .site-nav .nav-item > a { padding-left: 9px; padding-right: 9px; }
  .site-nav .has-submenu > a { padding-right: 2px; }
  .site-nav .nav-links > .login, .site-nav .user-nav { margin-left: 8px; }
}
@media (max-width:1120px) {
  .site-nav { min-height: 96px; }
  .site-nav .nav-inner { position: static; }
  .site-nav .brand-art { width: 166.6px; }
  .site-nav .menu-toggle { display: inline-flex; }
  .site-nav .nav-links {
    display: none;
    position: absolute;
    top: 100%;
    right: 4%;
    left: 4%;
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
    padding: 12px;
    max-height: calc(100dvh - 106px);
    overflow-y: auto;
    overscroll-behavior: contain;
    background: #fff;
    border: 1px solid #dce6ee;
    border-top: 3px solid #1084bc;
    box-shadow: 0 18px 40px rgba(7,26,51,.15);
  }
  .site-nav .nav-links.open { display: flex; }
  .site-nav .nav-item { display: flex; flex-wrap: wrap; }
  .site-nav .nav-links > a, .site-nav .nav-item > a { min-height: 46px; padding: 12px; font-size: 18px; }
  .site-nav .nav-item > a { flex: 1; }
  .site-nav .submenu-toggle { flex-basis: 46px; width: 46px; height: 46px; }
  .site-nav .submenu, .site-nav .mega-menu, .site-nav .user-nav .submenu {
    position: static;
    display: none;
    flex-basis: 100%;
    width: 100%;
    min-width: 0;
    max-height: none;
    padding: 5px 8px 9px;
    margin: 0;
    border: 0;
    border-left: 2px solid #c8e4f5;
    border-radius: 0;
    background: #f6fafd;
    box-shadow: none;
    overflow: visible;
  }
  .site-nav .submenu-open > .submenu { display: block; }
  .site-nav .submenu a, .site-nav .submenu .nav-logout { min-height: 44px; font-size: 14px; }
  .site-nav .nav-links > .login, .site-nav .user-nav { margin: 8px 0 0; }
  .site-nav .nav-links > .login { justify-content: center; }
  .site-nav .user-nav > .submenu-toggle { flex-basis: 46px; width: 46px; }
  .footer-grid { grid-template-columns: 1fr; gap: 0; }
}
@media (max-width:620px) {
  .site-nav .nav-inner,.footer-grid,.footer-bottom { width: calc(100% - 24px); }
  .site-nav .nav-inner { gap: 16px; }
  .site-nav .nav-links { left: 12px; right: 12px; }
  .footer-col { padding: 22px 0; }
}
@media (prefers-reduced-motion:reduce) { .site-nav *, .site-nav *::after { transition: none; } }
.spectrum-source-note{box-sizing:border-box;width:80%;max-width:1440px;margin:28px auto 32px;padding:22px 24px;border:1px solid #d8e5ef;border-left:3px solid #1685b3;border-radius:4px;background:#edf5fb;color:#445e75;font:400 15px/1.65 Roboto,Arial,sans-serif;overflow-wrap:anywhere}
.spectrum-source-note>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px}.spectrum-source-note p{margin:0}.spectrum-source-note>p{margin-top:8px}.spectrum-source-note strong{color:#183852;font-weight:600}.spectrum-source-note a{color:#126f9e;text-underline-offset:3px}
@media(max-width:1250px){.spectrum-source-note{width:92%}}@media(max-width:620px){.spectrum-source-note{width:calc(100% - 24px);padding:18px}}
