/* Base Compute design tokens on mkdocs-material. */
@font-face {
  font-family: "Gerstner Programm";
  src: url("../assets/fonts/Gerstner-ProgrammLight.woff2") format("woff2");
  font-weight: 300;
  font-display: swap;
}
@font-face {
  font-family: "Gerstner Programm";
  src: url("../assets/fonts/Gerstner-ProgrammRegular.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Gerstner Programm";
  src: url("../assets/fonts/Gerstner-ProgrammMedium.woff2") format("woff2");
  font-weight: 500;
  font-display: swap;
}
:root {
  --bc-black: #000000;
  --bc-deep-ocean: #00273a;
  --bc-deep-ocean-hover: #003a54;
  --bc-deep-ocean-sunken: #001c2b;
  --bc-lime: #e8ffbd;
  --bc-white: #ffffff;
  --bc-off-white: #f3f1ef;
  --bc-chartreuse: #bff692;
  --bc-turquoise: #157fa2;
  --bc-graphite: #272b2d;
  --bc-link: #2457ff;
  --md-text-font: "Gerstner Programm", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --md-code-font: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  --bc-font-functional: "Arial Narrow", "Helvetica Neue Condensed", Arial, sans-serif;
}

[data-md-color-scheme="default"] {
  --md-default-bg-color: var(--bc-off-white);
  --md-default-fg-color: var(--bc-graphite);
  --md-default-fg-color--light: #6a6f71;
  --md-default-fg-color--lighter: rgba(39, 43, 45, 0.4);
  --md-default-fg-color--lightest: rgba(0, 39, 58, 0.08);
  --md-primary-fg-color: var(--bc-deep-ocean);
  --md-primary-fg-color--light: var(--bc-deep-ocean-hover);
  --md-primary-fg-color--dark: var(--bc-deep-ocean-sunken);
  --md-primary-bg-color: var(--bc-lime);
  --md-primary-bg-color--light: rgba(232, 255, 189, 0.72);
  --md-accent-fg-color: var(--bc-turquoise);
  --md-accent-fg-color--transparent: rgba(21, 127, 162, 0.1);
  --md-accent-bg-color: var(--bc-white);
  --md-typeset-color: var(--bc-graphite);
  --md-typeset-a-color: var(--bc-link);
  --md-typeset-table-color: rgba(0, 39, 58, 0.16);
  --md-code-bg-color: var(--bc-white);
  --md-code-fg-color: var(--bc-deep-ocean);
  --md-footer-bg-color: var(--bc-deep-ocean);
  --md-footer-bg-color--dark: var(--bc-deep-ocean-sunken);
  --md-footer-fg-color: var(--bc-lime);
  --md-footer-fg-color--light: rgba(232, 255, 189, 0.72);
  --md-footer-fg-color--lighter: rgba(232, 255, 189, 0.45);
  --bc-heading: var(--bc-black);
  --bc-hairline: rgba(0, 39, 58, 0.16);
}

[data-md-color-scheme="slate"] {
  --md-default-bg-color: var(--bc-deep-ocean);
  --md-default-bg-color--light: rgba(0, 39, 58, 0.7);
  --md-default-bg-color--lighter: rgba(0, 39, 58, 0.5);
  --md-default-bg-color--lightest: rgba(0, 39, 58, 0.3);
  --md-default-fg-color: rgba(255, 255, 255, 0.82);
  --md-default-fg-color--light: rgba(255, 255, 255, 0.56);
  --md-default-fg-color--lighter: rgba(255, 255, 255, 0.32);
  --md-default-fg-color--lightest: rgba(255, 255, 255, 0.1);
  --md-primary-fg-color: var(--bc-deep-ocean-sunken);
  --md-primary-fg-color--light: var(--bc-deep-ocean);
  --md-primary-fg-color--dark: #00111b;
  --md-primary-bg-color: var(--bc-lime);
  --md-primary-bg-color--light: rgba(232, 255, 189, 0.72);
  --md-accent-fg-color: var(--bc-lime);
  --md-accent-fg-color--transparent: rgba(232, 255, 189, 0.1);
  --md-accent-bg-color: var(--bc-deep-ocean);
  --md-typeset-color: rgba(255, 255, 255, 0.82);
  --md-typeset-a-color: var(--bc-lime);
  --md-typeset-table-color: rgba(255, 255, 255, 0.18);
  --md-code-bg-color: var(--bc-deep-ocean-sunken);
  --md-code-fg-color: var(--bc-off-white);
  --md-code-hl-color: rgba(232, 255, 189, 0.12);
  --md-footer-bg-color: var(--bc-deep-ocean-sunken);
  --md-footer-bg-color--dark: #00111b;
  --md-footer-fg-color: var(--bc-lime);
  --md-footer-fg-color--light: rgba(232, 255, 189, 0.72);
  --md-footer-fg-color--lighter: rgba(232, 255, 189, 0.45);
  --md-admonition-fg-color: rgba(255, 255, 255, 0.82);
  --md-admonition-bg-color: rgba(255, 255, 255, 0.06);
  --bc-heading: var(--bc-white);
  --bc-hairline: rgba(255, 255, 255, 0.18);
}

/* Type: light, large, tightly tracked headlines; weight carries hierarchy. */
.md-typeset h1,
.md-typeset h2,
.md-typeset h3 {
  color: var(--bc-heading);
  letter-spacing: -0.02em;
}
.md-typeset h1 {
  font-weight: 300;
  font-size: 2.5rem;
  line-height: 1;
}
.md-typeset h2 {
  font-weight: 300;
  font-size: 1.75rem;
  line-height: 1.05;
  margin-top: 2.4em;
}
.md-typeset h3 {
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.15;
}
.md-typeset h4 {
  font-weight: 500;
}
.md-typeset {
  line-height: 1.55;
}
.md-typeset strong {
  font-weight: 500;
}

/* Eyebrows: uppercase, condensed, tracked. */
.md-nav--primary .md-nav__item--section > .md-nav__link,
.md-nav__title,
.md-typeset table:not([class]) th,
.md-source__facts {
  font-family: var(--bc-font-functional);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 0.6rem;
  font-weight: 400;
}

/* Squared and modular: hairlines, no radii, no shadows. */
.md-typeset code,
.md-typeset pre > code,
.md-typeset .admonition,
.md-typeset details,
.md-typeset .md-button,
.md-search__form,
.md-search__output,
.md-typeset table:not([class]),
.md-typeset kbd,
.md-clipboard,
.md-top {
  border-radius: 0;
}
.md-typeset pre > code,
.md-typeset table:not([class]) {
  border: 1px solid var(--bc-hairline);
}
.md-typeset .admonition,
.md-typeset details {
  box-shadow: none;
  border-width: 0 0 0 1.5px;
}
.md-typeset .admonition > .admonition-title,
.md-typeset details > summary {
  font-weight: 500;
}
.md-header,
.md-tabs {
  box-shadow: none;
}
.md-header {
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}
.md-search__input::placeholder,
.md-search__icon {
  color: var(--md-primary-bg-color--light);
}
.md-typeset a {
  text-decoration: none;
}
.md-typeset a:hover {
  opacity: 0.72;
}
.md-typeset table:not([class]) td,
.md-typeset table:not([class]) th {
  border-bottom: 1px solid var(--bc-hairline);
}
.md-typeset table:not([class]) th {
  background: transparent;
  color: var(--md-default-fg-color--light);
}
.md-typeset hr {
  border-bottom: 1px solid var(--bc-hairline);
}
::selection {
  background: var(--bc-lime);
  color: var(--bc-deep-ocean);
}

/* The wordmark is the header; the site name stays for screen readers. */
.md-header__button.md-logo {
  padding: 0.4rem 0.6rem 0.4rem 0;
}
.md-header__button.md-logo img {
  height: 1.5rem;
  width: auto;
}
.md-header__topic:first-child > .md-ellipsis {
  display: none;
}
.md-nav--primary .md-nav__title .md-logo img {
  height: 1.5rem;
  width: auto;
}
