:root {
  --sentinel-deep: #003366;
  --sentinel-blue: #004a99;
  --sentinel-blue-hover: #003874;
  --sentinel-teal: #0f766e;
  --sentinel-cyan: #0e7490;
  --sentinel-sky: #004a99;
  --sentinel-ink: #334155;
  --sentinel-border: #cbdde2;
}

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

.md-header__button.md-logo img {
  border-radius: 50%;
  height: 2rem;
  width: 2rem;
}

.md-header__title .md-ellipsis {
  font-size: 0.9em;
}

.md-typeset {
  font-size: 0.8rem;
}

/* 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; }

.md-tabs__link,
.md-typeset a {
  color: var(--sentinel-sky);
}

.md-tabs__link:hover,
.md-typeset a:hover {
  color: var(--sentinel-blue-hover);
}

.md-typeset h1 + p,
.md-typeset h1 + p + p {
  display: none;
}

.md-typeset h1 + p + p + p {
  color: #6b7280;
  font-size: 0.7rem;
  margin: -0.4rem 0 0.6rem;
}

.md-typeset h1 + p + p + p + hr {
  display: none;
}

.md-nav {
  font-size: 0.66rem;
}

.md-nav__link {
  border-radius: 6px;
  color: #425466;
  margin: 0.08rem 0.25rem 0.08rem 0;
  padding: 0.34rem 0.55rem;
}

.md-nav__link:hover,
.md-nav__link--active,
.md-nav__item--active > .md-nav__link {
  background: rgba(15, 118, 110, 0.1);
  color: var(--sentinel-teal);
}

.md-nav--primary .md-nav__item--nested > .md-nav__link {
  color: #5c7080;
  font-size: 0.55rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.sentinel-hero {
  border-bottom: 4px solid var(--sentinel-cyan);
  margin: 0.2rem 0 2rem;
  padding: 1.75rem 0 1.6rem;
}

.sentinel-hero__eyebrow {
  color: var(--sentinel-teal);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  margin: 0 0 0.45rem;
  text-transform: uppercase;
}

.sentinel-hero h2 {
  color: var(--sentinel-deep);
  font-size: 2rem;
  line-height: 1.15;
  margin: 0;
}

.sentinel-hero p:last-child {
  color: var(--sentinel-ink);
  font-size: 0.95rem;
  line-height: 1.6;
  margin: 0.75rem 0 0;
  max-width: 58rem;
}

.guide-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 1rem 0 2rem;
}

.guide-card,
.guide-card:visited {
  --card-accent: var(--sentinel-teal);
  background: #fff;
  border: 1px solid var(--sentinel-border);
  border-radius: 8px;
  border-top: 3px solid var(--card-accent);
  box-shadow: 0 1px 3px rgba(7, 59, 76, 0.08);
  color: inherit;
  display: flex;
  flex-direction: column;
  min-height: 10rem;
  padding: 1rem 1.05rem;
  text-decoration: none;
}

.guide-card:hover {
  box-shadow: 0 7px 18px rgba(7, 59, 76, 0.12);
  color: inherit;
}

.guide-card:nth-child(4n + 2) { --card-accent: var(--sentinel-cyan); }
.guide-card:nth-child(4n + 3) { --card-accent: var(--sentinel-sky); }
.guide-card:nth-child(4n) { --card-accent: #b45309; }

.guide-card__label {
  color: var(--card-accent);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
}

.guide-card h2 {
  color: #12313d;
  font-size: 0.98rem;
  line-height: 1.3;
  margin: 0 0 0.4rem;
}

.guide-card p,
.site-note {
  color: var(--sentinel-ink);
}

.guide-card p { margin: 0; }
.site-note { font-size: 0.7rem; }

.md-typeset .task-list-control { display: inline; }
.md-typeset .task-list-control input[type="checkbox"] {
  appearance: auto;
  cursor: pointer;
  height: 1rem;
  margin: 0 0.45rem 0 0;
  opacity: 1;
  position: static;
  vertical-align: -0.15rem;
  width: 1rem;
  z-index: auto;
}
.md-typeset .task-list-control .task-list-indicator { display: none; }

@media screen and (min-width: 76.25em) {
  .md-grid { max-width: 94%; }
}

@media screen and (max-width: 76.25em) {
  .guide-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media screen and (max-width: 44rem) {
  .guide-grid { grid-template-columns: 1fr; }
  .sentinel-hero { margin-bottom: 1.4rem; padding: 1.25rem 0 1.1rem; }
  .sentinel-hero h2 { font-size: 1.6rem; }
}