:root {
  --mb-navy-950: #061522;
  --mb-navy-900: #081e31;
  --mb-navy-800: #0b2b45;
  --mb-blue-700: #075b91;
  --mb-blue-600: #0879bb;
  --mb-blue-400: #3ea9e8;
  --mb-orange-600: #c74600;
  --mb-orange-500: #ff6b1a;
  --mb-surface: #f5f7fa;
  --mb-surface-alt: #edf2f6;
  --mb-white: #ffffff;
  --mb-text: #142536;
  --mb-muted: #586b7e;
  --mb-border: #d8e1e8;
  --mb-success: #1f7f5a;
  --mb-warning: #a76600;
  --mb-danger: #b52d35;
  --mb-shadow: 0 16px 42px rgba(4, 24, 42, 0.12);
  --mb-wrap: min(1200px, calc(100% - 40px));
  --mb-reading: min(820px, calc(100% - 40px));
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: clip; }
body {
  margin: 0;
  overflow-x: clip;
  color: var(--mb-text);
  background: var(--mb-surface);
  font: 400 17px/1.7 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  text-rendering: optimizeLegibility;
}
body.menu-open { overflow: hidden; }
img, svg, video { display: block; max-width: 100%; height: auto; }
figure { margin: 0; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: var(--mb-blue-700); text-underline-offset: .18em; text-decoration-thickness: .08em; }
a:hover { color: var(--mb-orange-600); }
:focus-visible { outline: 3px solid #ffb347; outline-offset: 3px; }
h1, h2, h3, h4 {
  margin: 0 0 .55em;
  color: var(--mb-navy-950);
  font-family: Manrope, Inter, ui-sans-serif, system-ui, sans-serif;
  line-height: 1.13;
  letter-spacing: -.026em;
  text-wrap: balance;
}
h1 { font-size: clamp(2.05rem, 5vw, 3.5rem); }
h2 { font-size: clamp(1.7rem, 3.4vw, 2.45rem); }
h3 { font-size: clamp(1.2rem, 2vw, 1.48rem); }
p, ul, ol { margin: 0 0 1.15em; }
ul, ol { padding-left: 1.25em; }
li + li { margin-top: .36em; }
small { font-size: .85rem; }
table { border-collapse: collapse; width: 100%; }
th, td { padding: .85rem; border: 1px solid var(--mb-border); text-align: left; vertical-align: top; }
th { background: var(--mb-surface-alt); color: var(--mb-navy-900); }
caption { padding: 0 0 1rem; font-weight: 700; text-align: left; }
.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0);
  white-space: nowrap; border: 0;
}
.skip-link {
  position: fixed;
  z-index: 10000;
  top: 10px; left: 10px;
  transform: translateY(-160%);
  padding: .7rem 1rem;
  border-radius: 8px;
  color: var(--mb-white);
  background: var(--mb-navy-950);
}
.skip-link:focus { transform: translateY(0); }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
