:root {
  --azure-navy: #003366;
  --azure-blue: #004a99;
  --azure-blue-hover: #003874;
}

[data-md-color-scheme="default"] {
  --md-primary-fg-color: var(--azure-navy);
  --md-primary-fg-color--light: var(--azure-blue);
  --md-primary-fg-color--dark: #00264d;
  --md-accent-fg-color: var(--azure-blue);
}

.md-header__button.md-logo img { border-radius: 50%; height: 2rem; width: 2rem; }
.md-typeset { font-size: 0.8rem; }
.md-typeset a { color: var(--azure-blue); }
.md-typeset a:hover { color: var(--azure-blue-hover); }
.md-typeset img { display: block; height: auto; margin: 1rem auto 0.35rem; max-width: 100%; }
.md-typeset p:has(> img) + p { color: #6b7280; font-size: 0.72rem; margin-top: 0; }
.diagram-standard { width: min(100%, 760px); }
.diagram-wide { width: min(100%, 920px); }

/* Make documentation tables easy to identify and scan */
.md-typeset table:not([class]) { border: 1px solid #9fb9d2; border-collapse: separate; border-radius: 6px; border-spacing: 0; box-shadow: 0 1px 2px rgba(0, 51, 102, 0.06); overflow: hidden; }
.md-typeset table:not([class]) th,
.md-typeset table:not([class]) td { border-bottom: 1px solid #c2d4e5; border-right: 1px solid #c2d4e5; padding: 0.6em 0.75em; vertical-align: top; }
.md-typeset table:not([class]) th { background: #eaf2fa; border-bottom: 2px solid #7fa5c8; color: #10253d; }
.md-typeset table:not([class]) th:last-child,
.md-typeset table:not([class]) td:last-child { border-right: 0; }
.md-typeset table:not([class]) tr:last-child td { border-bottom: 0; }

/* Show the last-updated date as a small grey caption under each page title */
.md-typeset h1 + p { color: #6b7280; font-size: 0.7rem; margin: -0.2rem 0 0.9rem; }
@media screen and (min-width: 76.25em) { .md-grid { max-width: 96%; } }
@media screen and (min-width: 90em) { .md-grid { max-width: 1800px; } }

.md-nav { font-size: 0.66rem; }
.md-sidebar--primary .md-nav__item--section > .md-nav__link,
.md-sidebar--primary .md-nav__item--section.md-nav__item--active > .md-nav__link,
.md-nav--primary label.md-nav__link { color: #8a94a6; font-size: 0.58rem; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; }
.md-nav__item .md-nav__link[href] { color: #3d4a5c; }
.md-nav__link[href]:hover, .md-nav__link--active, .md-nav__item--active > .md-nav__link[href] { color: var(--azure-blue); }

.guide-grid { display: grid; gap: 1rem; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 1rem 0 2rem; }
.guide-card, .guide-card:visited { background: #fff; border: 1px solid #dbe4ee; border-top: 3px solid var(--azure-blue); border-radius: 8px; color: inherit; display: flex; flex-direction: column; min-height: 7rem; padding: 1rem 1.05rem; text-decoration: none; }
.guide-card:hover { box-shadow: 0 7px 18px rgba(0, 51, 102, 0.12); color: inherit; }
.maturity-flow { align-items: stretch; display: grid; gap: 0.75rem; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 1rem 0 1.5rem; }
.maturity-step, .maturity-step:visited { background: #f4f8fc; border: 1px solid #c9d9ea; border-top: 3px solid var(--azure-blue); border-radius: 6px; color: #243447; font-weight: 700; padding: 0.8rem; text-align: center; text-decoration: none; }
.maturity-step:hover, .maturity-step:focus-visible { box-shadow: 0 7px 18px rgba(0, 51, 102, 0.12); color: var(--azure-blue); outline: none; }
@media screen and (max-width: 44rem) { .guide-grid, .maturity-flow { grid-template-columns: 1fr; } }