:root {
  --hd-paper:#f2f5f5;
  --hd-panel:#e4e7e7;
  --hd-ink:#2b3131;
  --hd-pencil:#40494a;
  --hd-control-border:#5f6c6d;
  --hd-action:#126268;
  --hd-on-action:#f2f5f5;
  --hd-wash:#d4d8d8;
  --hd-band:#2b3131;
  --hd-band-ink:#f2f5f5;
  --hd-band-action:#6bcad1;
  --hd-band-rule:#879697;
}

:root[data-theme="dark"] {
  --hd-paper:#191d1d;
  --hd-panel:#26292a;
  --hd-ink:#e3e6e6;
  --hd-pencil:#c3cacb;
  --hd-control-border:#879697;
  --hd-action:#6bcad1;
  --hd-on-action:#191d1d;
  --hd-wash:#313535;
  --hd-band:#313535;
  --hd-band-ink:#e3e6e6;
  --hd-band-action:#6bcad1;
  --hd-band-rule:#879697;
}

@font-face {
  unicode-range:U+0000-024F;
  src:url(/fonts/redhatdisplay.woff2) format("woff2");
  font-display:swap;
  font-style:normal;
  font-weight:700;
  font-family:"Red Hat Display";
}

@font-face {
  unicode-range:U+0000-024F;
  src:url(/fonts/redhattext.woff2) format("woff2");
  font-display:swap;
  font-style:normal;
  font-weight:400;
  font-family:"Red Hat Text";
}

*,*::before,*::after {
  box-sizing:border-box;
}

html {
  -webkit-text-size-adjust:100%;
  background:var(--hd-paper);
}

body {
  background:var(--hd-paper);
  color:var(--hd-ink);
  overflow-wrap:break-word;
  line-height:1.65;
  font-weight:400;
  font-size:18px;
  font-family:"Red Hat Text",sans-serif;
  margin:0;
  min-height:100vh;
}

main:focus {
  outline:none;
}

a {
  color:var(--hd-action);
  text-underline-offset:.2em;
  text-decoration-thickness:1px;
}

a:hover {
  text-decoration-thickness:3px;
}

a:focus-visible,button:focus-visible,summary:focus-visible {
  outline-offset:3px;
  outline:3px solid var(--hd-action);
}

.hd-scrollbox:focus-visible {
  outline-offset:2px;
  outline:3px solid var(--hd-action);
}

h1,h2,h3 {
  color:var(--hd-ink);
  line-height:1.2;
  font-weight:700;
  font-family:"Red Hat Display",serif;
  margin:0 0 .75rem;
}

h1 {
  text-wrap:balance;
  font-size:36px;
  margin-bottom:1rem;
  max-width:22ch;
}

h2 {
  font-size:26px;
}

h3 {
  font-size:21px;
}

p,ul,ol,dl {
  margin:0 0 1rem;
}

b,strong {
  font-weight:700;
}

time {
  white-space:nowrap;
}

.hd-bypass {
  background:var(--hd-panel);
  color:var(--hd-action);
  font-weight:700;
  padding:0 1.25rem;
  min-height:48px;
  align-items:center;
  display:inline-flex;
  z-index:5;
  left:.75rem;
  top:-8rem;
  position:absolute;
}

.hd-bypass:focus {
  top:.75rem;
}

.hd-rack {
  background:var(--hd-panel);
  padding:1rem 1.25rem;
}

.hd-rack-row {
  margin:0 auto;
  max-width:1200px;
  gap:.25rem 1.5rem;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  display:flex;
}

.hd-nameplate {
  color:var(--hd-ink);
  text-decoration:none;
  font-weight:700;
  font-size:21px;
  font-family:"Red Hat Display",serif;
  border-width:2px 0 2px 6px;
  border:solid var(--hd-action);
  padding:.15rem .9rem;
  min-height:48px;
  align-items:center;
  display:inline-flex;
}

.hd-ports {
  gap:0 1.25rem;
  flex-wrap:wrap;
  display:flex;
}

.hd-ports a {
  color:var(--hd-ink);
  text-decoration:none;
  padding:.1rem 0;
  min-height:44px;
  align-items:center;
  display:inline-flex;
}

.hd-ports a:hover {
  text-decoration:underline;
}

.hd-ports a[aria-current=page] {
  text-underline-offset:.4em;
  text-decoration-thickness:3px;
  text-decoration:underline;
  font-weight:700;
}

.hd-console {
  background:var(--hd-paper);
  padding:1.5rem 1.25rem 3rem;
  margin:0 auto;
  max-width:1200px;
}

.hd-console>*+* {
  margin-top:2.75rem;
}

.hd-briefing>:last-child {
  margin-bottom:0;
}

.hd-briefing+* {
  margin-top:1.25rem;
}

.hd-briefing .hd-synopsis {
  line-height:1.55;
  font-size:21px;
  max-width:38rem;
}

.hd-synopsis {
  max-width:40rem;
}

.hd-trigger {
  margin:0;
}

.hd-onward {
  margin:1rem 0 0;
}

.hd-launch {
  background:var(--hd-action);
  color:var(--hd-on-action);
  text-decoration:none;
  font-weight:700;
  border-radius:6px;
  padding:0 1.5rem;
  min-height:48px;
  align-items:center;
  display:inline-flex;
}

.hd-launch:hover {
  text-decoration-thickness:2px;
  text-decoration:underline;
}

.hd-mailline {
  font-weight:700;
  font-size:21px;
}

.hd-caveat {
  font-weight:700;
  font-size:15px;
  margin:0 0 1rem;
}

.hd-crumbs {
  font-size:15px;
  margin:0 0 .5rem;
}

.hd-crumbs ol {
  list-style:none;
  padding:0;
  margin:0;
  gap:.1rem 0;
  flex-wrap:wrap;
  display:flex;
}

.hd-crumbs li+li::before {
  color:var(--hd-pencil);
  margin:0 .5rem;
  content:">";
}

.hd-crumbs a {
  padding:0 .1rem;
  min-height:44px;
  align-items:center;
  display:inline-flex;
}

.hd-crumbs span {
  color:var(--hd-pencil);
  font-size:15px;
}

.hd-ticketgrid {
  margin:0;
  max-width:60rem;
  gap:1.5rem;
  display:grid;
}

.hd-ticketgrid dt {
  line-height:1.3;
  font-weight:700;
  font-size:21px;
  font-family:"Red Hat Display",serif;
  margin:0 0 .25rem;
}

.hd-ticketgrid dd {
  margin:0;
}

.hd-howto-list,.hd-pipeline-list {
  padding-left:1.5rem;
  margin:0;
  max-width:40rem;
}

.hd-howto-list li,.hd-pipeline-list li {
  padding-left:.25rem;
  margin:0 0 .6rem;
}

.hd-pipeline-list li::marker {
  font-weight:700;
}

.hd-pipeline-list p {
  margin:0;
}

.hd-standing dl {
  margin:0 0 1.25rem;
  gap:.1rem 2rem;
  display:grid;
}

.hd-standing dt {
  font-weight:700;
}

.hd-standing dd {
  margin:0 0 .75rem;
  max-width:40rem;
}

.hd-duo {
  margin:0 0 1rem;
  gap:1rem;
  display:grid;
}

.hd-duo dt {
  line-height:1.3;
  font-weight:700;
  font-size:21px;
  font-family:"Red Hat Display",serif;
  margin:0 0 .25rem;
}

.hd-duo dd {
  margin:0;
}

.hd-attribution p {
  max-width:40rem;
}

.hd-linkpair {
  margin-bottom:0;
  gap:0 2rem;
  flex-wrap:wrap;
  display:flex;
}

.hd-linkpair a {
  padding:.1rem 0;
  min-height:44px;
  align-items:center;
  display:inline-flex;
}

.hd-ledger {
  margin:0;
  max-width:48rem;
}

.hd-ledger div {
  margin:0 0 1.5rem;
}

.hd-ledger div:last-child {
  margin-bottom:0;
}

.hd-ledger-title {
  color:var(--hd-ink);
  line-height:1.35;
  font-weight:700;
  font-size:21px;
  font-family:"Red Hat Display",serif;
}

.hd-ledger dd {
  margin:.3rem 0 0;
  max-width:40rem;
}

.hd-ledger .hd-ledger-meta {
  color:var(--hd-pencil);
  font-size:15px;
}

.hd-twocol {
  gap:2.75rem;
  display:grid;
}

.hd-sidebox {
  background:var(--hd-panel);
  padding:1.25rem;
}

.hd-sidebox>:last-child {
  margin-bottom:0;
}

.hd-sidebox h2 {
  font-size:21px;
}

.hd-sidebox p {
  max-width:40rem;
}

.hd-sidebox .hd-ledger div {
  margin-bottom:1rem;
}

.hd-subjects {
  list-style:none;
  padding:0;
  margin:0 0 1.2rem;
}

.hd-onramp {
  margin:0 0 1.2rem;
  gap:0 1.5rem;
  flex-wrap:wrap;
  display:flex;
}

.hd-onramp a,.hd-subjects a,.hd-subjects b {
  padding:.1rem 0;
  min-height:44px;
  align-items:center;
  display:flex;
}

.hd-subjects a,.hd-subjects b {
  gap:1rem;
  justify-content:space-between;
}

.hd-subjects span {
  font-weight:700;
  font-size:15px;
}

.hd-dossier {
  font-size:15px;
  margin:0 0 2rem;
  gap:.25rem 2rem;
  flex-wrap:wrap;
  display:flex;
}

.hd-dossier div {
  gap:.4rem;
  display:flex;
}

.hd-dossier dt {
  color:var(--hd-pencil);
  font-size:15px;
}

.hd-dossier dd {
  margin:0;
}

.hd-kind-post .hd-console>*+* {
  margin-top:0;
}

.hd-article {
  margin-bottom:2.75rem;
}

.hd-toc {
  margin:0 0 2rem;
}

.hd-toc h2 {
  font-size:18px;
  margin-bottom:.4rem;
}

.hd-toc ol {
  padding-left:1.25rem;
  margin:0;
}

.hd-toc li {
  margin:0 0 .3rem;
}

.hd-prose {
  max-width:42rem;
}

.hd-block {
  margin-top:2.5rem;
}

.hd-block:first-child {
  margin-top:0;
}

.hd-prose ul,.hd-prose ol {
  padding-left:1.5rem;
}

.hd-prose li {
  margin:0 0 .4rem;
}

.hd-prose blockquote {
  background:var(--hd-panel);
  padding:1rem 1.25rem;
  margin:0 0 1.1rem;
}

.hd-prose blockquote>:last-child {
  margin-bottom:0;
}

.hd-prose pre {
  background:var(--hd-panel);
  line-height:1.5;
  font-size:15px;
  overflow-x:auto;
  padding:1rem;
  margin:0 0 1.1rem;
}

.hd-prose code {
  background:var(--hd-panel);
  font-size:15px;
  padding:.05em .3em;
}

.hd-prose pre code {
  background:none;
  padding:0;
}

.hd-scrollbox {
  overflow-x:auto;
  margin:0 0 1.25rem;
}

.hd-scrollbox table {
  font-size:15px;
  border-collapse:collapse;
}

.hd-scrollbox th,.hd-scrollbox td {
  text-align:left;
  border-bottom:1px solid var(--hd-control-border);
  padding:.5rem .9rem .5rem 0;
  vertical-align:top;
}

.hd-scrollbox th {
  background:var(--hd-panel);
  font-weight:700;
  padding-left:.5rem;
}

.hd-citations {
  margin-top:3rem;
}

.hd-citations ul {
  padding-left:1.5rem;
  margin:0;
}

.hd-jump {
  border-bottom:1px solid var(--hd-control-border);
  padding:0 0 1.5rem;
  margin:0 0 2rem;
  max-width:42rem;
}

.hd-jump ol {
  list-style:none;
  padding:0;
  margin:0;
  gap:0 1.5rem;
  flex-wrap:wrap;
  display:flex;
}

.hd-jump a {
  min-height:44px;
  align-items:center;
  display:inline-flex;
}

.hd-provisions {
  max-width:42rem;
  counter-reset:prov;
}

.hd-provision {
  scroll-margin-top:1rem;
  margin:0 0 2rem;
  counter-increment:prov;
}

.hd-provision h2::before {
  content:counter(prov) ". ";
}

.hd-provision:last-child {
  margin-bottom:0;
}

.hd-provision h2 {
  font-size:21px;
  margin-bottom:.35rem;
}

.hd-provision p {
  margin:0;
}

.hd-foundation {
  background:var(--hd-band);
  color:var(--hd-band-ink);
  padding:1.5rem 1.25rem 2rem;
  margin-top:3rem;
}

.hd-foundation-in {
  margin:0 auto;
  max-width:1200px;
}

.hd-directory {
  gap:1.25rem;
  display:grid;
}

.hd-dirhead {
  font-weight:700;
  font-size:18px;
  font-family:"Red Hat Display",serif;
  margin:0 0 .25rem;
}

.hd-foundation a {
  color:var(--hd-band-ink);
  padding:.1rem 0;
  min-height:44px;
  align-items:center;
  display:flex;
}

.hd-foundation a:hover {
  text-decoration-thickness:3px;
}

.hd-foundation a:focus-visible {
  outline-offset:3px;
  outline:3px solid var(--hd-band-action);
}

.hd-smallprint {
  font-size:15px;
  margin:1.25rem 0 0;
  max-width:42rem;
}

.hd-smallprint a {
  min-height:0;
  display:inline;
}

@media (min-width:768px) {
  h1 {
    font-size:40px;
  }

  .hd-rack {
    padding:1.25rem 1.5rem;
  }

  .hd-console {
    padding:2.5rem 1.5rem 3rem;
  }

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

  .hd-standing dl {
    grid-template-columns:11rem minmax(0,1fr);
  }

  .hd-standing dd {
    margin-bottom:.5rem;
  }

  .hd-duo {
    gap:1rem 2rem;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .hd-sidebox {
    padding:2rem;
  }

  .hd-directory {
    gap:1.5rem 2rem;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .hd-foundation {
    padding:2rem 1.5rem;
  }
}

@media (min-width:1024px) {
  h1 {
    font-size:56px;
  }

  .hd-rack {
    padding:2rem;
  }

  .hd-console {
    padding:3rem 2rem 3rem;
  }

  .hd-foundation {
    padding:2rem;
  }

  .hd-twocol {
    gap:3rem;
    align-items:start;
    grid-template-columns:minmax(0,1fr) 20rem;
  }

  .hd-article {
    gap:0 3rem;
    align-items:start;
    grid-template-columns:14rem minmax(0,1fr);
    display:grid;
  }

  .hd-toc {
    border-right:1px solid var(--hd-control-border);
    padding-right:1rem;
    margin:0;
    top:1.5rem;
    position:sticky;
  }
}
