:root {
  --hds-blue-900: #001152;
  --hds-blue-800: #021a74;
  --hds-blue-700: #193ab8;
  --hds-blue-600: #2a4fda;
  --hds-blue-300: #96acff;
  --hds-blue-100: #e2e9fc;
  --hds-lime: #e7f79e;
  --hds-mint: #caf8db;
  --hds-ink: #1b244b;
  --hds-muted: #485274;
  --hds-subtle: #687499;
  --hds-white: #fff;
  --hds-radius-sm: 4px;
  --hds-radius-md: 8px;
  --hds-radius-lg: 24px;
  --hds-container: 1184px;
  --hds-page-gutter: 48px;
  --hds-font: "Figtree", Arial, sans-serif;
  --hds-font-content: "Nunito Sans", Arial, sans-serif;
}

.hds-site,
.hds-site *,
.hds-site *::before,
.hds-site *::after { box-sizing: border-box; }
.hds-site { margin: 0; overflow-x: hidden; overflow-y: auto; color: var(--hds-ink); background: var(--hds-white); font-family: var(--hds-font); }
.hds-site img { display: block; max-width: 100%; }
.hds-site a { color: inherit; text-decoration: none; }
.hds-site button, .hds-site input { font: inherit; }
.hds-container { width: min(var(--hds-container), calc(100% - (2 * var(--hds-page-gutter)))); margin-inline: auto; }
.hds-button, .hds-nav__list > .hds-menu-cta > a { display: inline-flex; min-height: 56px; align-items: center; justify-content: center; padding: 14px 16px; border: 0; border-radius: var(--hds-radius-md); background: var(--hds-blue-600); color: var(--hds-lime) !important; font-size: 18px; font-weight: 700; line-height: 28px; cursor: pointer; transition: transform .2s ease, filter .2s ease; }
.hds-button:hover, .hds-button:focus-visible, .hds-nav__list > .hds-menu-cta > a:hover, .hds-nav__list > .hds-menu-cta > a:focus-visible { filter: brightness(.94); transform: translateY(-1px); }
.hds-button--inverse { background: var(--hds-lime); color: var(--hds-blue-600) !important; }
.hds-tag { display: inline-flex; padding: 6px 16px; border-radius: 999px; background: var(--hds-mint); color: var(--hds-blue-600); font-size: 12px; font-weight: 700; line-height: 18px; text-transform: uppercase; }
.hds-title { margin: 0; font-size: 40px; font-weight: 700; line-height: 52px; }
.hds-visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

@media (max-width: 980px) {
  :root { --hds-page-gutter: 32px; }
}
@media (max-width: 767px) {
  :root { --hds-page-gutter: 20px; }
  .hds-title { font-size: 32px; line-height: 42px; }
  .hds-button, .hds-nav__list > .hds-menu-cta > a { min-height: 52px; font-size: 16px; line-height: 24px; }
}
