body.runcible-public-endpoint {
  background: var(--rh-paper);
}

:root {
  --rdl-blue: #233c45;
  --rdl-blue-soft: #dce5e5;
  --rdl-red-soft: #efd9d3;
  --rdl-gold-soft: #eee0ad;
  --rdl-green-soft: #dfe6d3;
  --rdl-code: #151c1e;
}

.r-rdl-page .r-home__inner,
.r-rdl-page > .r-depth-nav .r-depth-nav__inner {
  width: min(calc(100% - 4rem), 1120px);
  max-width: none;
}

.r-rdl-page h2 {
  max-width: 18ch;
  font-size: clamp(2.7rem, 4.35vw, 4.65rem);
  line-height: 0.98;
}

.r-rdl__hero {
  background:
    radial-gradient(circle at 84% 14%, rgba(166, 45, 38, 0.25), transparent 30rem),
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    var(--rdl-code);
  background-size: auto, 48px 48px, 48px 48px, auto;
}

.r-rdl__hero h1 {
  max-width: 18ch;
  font-size: clamp(3.05rem, 4.85vw, 5.2rem);
  line-height: 0.94;
}

.r-rdl__hero .r-home__kicker {
  max-width: 43ch;
}

.r-rdl-map {
  margin: clamp(4.5rem, 9vw, 8rem) 12px 12px 0;
  border: 1px solid var(--rh-white);
  background: var(--rh-white);
  color: var(--rh-ink);
  box-shadow: 12px 12px 0 var(--rh-red);
}

.r-rdl-map ol {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1px;
  padding: 0;
  margin: 0;
  background: var(--rh-ink);
  list-style: none;
}

.r-rdl-map li {
  position: relative;
  min-height: 19rem;
  padding: 1.25rem 1rem;
  background: var(--rh-white);
}

.r-rdl-map li:nth-child(2) {
  background: #ece7d8;
}

.r-rdl-map li:nth-child(3) {
  background: var(--rdl-red-soft);
}

.r-rdl-map li:nth-child(4) {
  background: var(--rdl-gold-soft);
}

.r-rdl-map li:nth-child(5) {
  background: #ddd0ae;
}

.r-rdl-map li:nth-child(6) {
  background: var(--rdl-blue-soft);
}

.r-rdl-map li:not(:last-child)::after {
  position: absolute;
  z-index: 2;
  top: 2rem;
  right: -0.62rem;
  width: 1.22rem;
  height: 1.22rem;
  border: 1px solid var(--rh-ink);
  background: inherit;
  content: "";
  transform: rotate(45deg);
}

.r-rdl-map li > span,
.r-rdl-literal-flow article > span,
.r-rdl-types article > span,
.r-rdl-ir__source > span,
.r-compiler-pipeline article > div span,
.r-compiler-pipeline article > div strong,
.r-compiler-trace__row > span,
.r-diagnostic-grid article > span,
.r-rules-place > span,
.r-proof-stack article > span,
.r-proof-boundary-note > span,
.r-release-flow article > span,
.r-release-equation > span,
.r-release-products article > span,
.r-implementation-boundaries section > span {
  display: block;
  color: var(--rh-red-dark);
  font: 700 0.61rem/1.3 var(--rh-mono);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.r-rdl-map li > strong {
  display: block;
  margin-top: 4rem;
  font-family: var(--rh-display);
  font-size: clamp(1.2rem, 1.65vw, 1.55rem);
  line-height: 1.08;
}

.r-rdl-map li > p {
  margin: 1rem 0 0;
  font-size: 0.8rem;
  line-height: 1.5;
}

.r-rdl-map figcaption {
  border-top: 1px solid var(--rh-ink);
}

.r-rdl__literal {
  background:
    linear-gradient(90deg, transparent 0 75%, rgba(35, 60, 69, 0.055) 75% 100%),
    var(--rh-paper);
}

.r-rdl-literal-flow {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(4.5rem, 9vw, 8rem);
  border: 1px solid var(--rh-ink);
  background: var(--rh-ink);
}

.r-rdl-literal-flow article {
  min-height: 21rem;
  padding: 1.5rem;
  background: var(--rh-white);
}

.r-rdl-literal-flow article:nth-child(2),
.r-rdl-literal-flow article:nth-child(4),
.r-rdl-literal-flow article:nth-child(6) {
  background: #f3eee3;
}

.r-rdl-literal-flow h3 {
  margin: 4rem 0 1rem;
  font-size: clamp(1.65rem, 2.6vw, 2.35rem);
  line-height: 1.05;
}

.r-rdl-literal-flow p {
  margin: 0;
  font-size: 0.93rem;
  line-height: 1.58;
}

.r-rdl__representation {
  background:
    linear-gradient(rgba(17, 18, 15, 0.027) 1px, transparent 1px),
    linear-gradient(90deg, rgba(17, 18, 15, 0.027) 1px, transparent 1px),
    var(--rh-white);
  background-size: 56px 56px;
}

.r-rdl-types {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(4.5rem, 9vw, 8rem);
  border: 1px solid var(--rh-ink);
  background: var(--rh-ink);
}

.r-rdl-types article {
  min-height: 18rem;
  padding: 1.35rem;
  background: var(--rh-white);
}

.r-rdl-types article:nth-child(2),
.r-rdl-types article:nth-child(4),
.r-rdl-types article:nth-child(5),
.r-rdl-types article:nth-child(7) {
  background: #f2ecdf;
}

.r-rdl-types h3 {
  margin: 3.5rem 0 1rem;
  font-size: clamp(1.4rem, 2.2vw, 1.95rem);
  line-height: 1.06;
}

.r-rdl-types p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.55;
}

.r-rdl-ir {
  margin: clamp(5rem, 10vw, 9rem) 12px 12px 0;
  border: 1px solid var(--rh-ink);
  background: var(--rh-white);
  box-shadow: 12px 12px 0 var(--rdl-blue);
}

.r-rdl-ir__source {
  padding: clamp(1.5rem, 4vw, 2.7rem);
  border-bottom: 1px solid var(--rh-ink);
  background: var(--rdl-gold-soft);
}

.r-rdl-ir__source blockquote {
  max-width: 24ch;
  margin: 1.5rem 0 0;
  font-family: var(--rh-display);
  font-size: clamp(1.8rem, 3vw, 2.9rem);
  font-weight: 700;
  line-height: 1.08;
}

.r-rdl-ir__code {
  background: var(--rdl-code);
  color: var(--rh-white);
  font-family: var(--rh-mono);
}

.r-rdl-ir__code > div {
  display: grid;
  grid-template-columns: minmax(10rem, 0.25fr) minmax(28rem, 0.75fr);
  gap: 1.5rem;
  min-height: 4.8rem;
  padding: 1rem 1.25rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.r-rdl-ir__code > div:last-child {
  border-bottom: 0;
}

.r-rdl-ir__code strong {
  color: var(--rh-gold);
  font-size: 0.7rem;
  letter-spacing: 0.05em;
}

.r-rdl-ir__code span {
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.78rem;
  line-height: 1.55;
}

.r-rdl-ir figcaption {
  border-top: 1px solid var(--rh-ink);
}

.r-rdl__compiler {
  background:
    radial-gradient(circle at 86% 15%, rgba(166, 45, 38, 0.23), transparent 30rem),
    var(--rdl-code);
  color: var(--rh-white);
}

.r-rdl__compiler .r-home__chapter-intro,
.r-rdl__compiler .r-home__chapter-intro p {
  color: rgba(255, 255, 255, 0.84);
}

.r-rdl__compiler .r-home__chapter-lede {
  color: var(--rh-gold);
}

.r-compiler-pipeline {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(4.5rem, 9vw, 8rem);
  border: 1px solid rgba(255, 255, 255, 0.55);
  background: rgba(255, 255, 255, 0.5);
}

.r-compiler-pipeline article {
  min-height: 26rem;
  padding: clamp(1.5rem, 3.5vw, 2.7rem);
  background: var(--rdl-code);
}

.r-compiler-pipeline article:nth-child(2),
.r-compiler-pipeline article:nth-child(3),
.r-compiler-pipeline article:nth-child(6) {
  background: #1c2729;
}

.r-compiler-pipeline article > div {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}

.r-compiler-pipeline article > div span,
.r-compiler-pipeline article > div strong {
  color: var(--rh-gold);
}

.r-compiler-pipeline h3 {
  max-width: 18ch;
  margin: 4rem 0 1.5rem;
  color: var(--rh-white);
  font-size: clamp(1.75rem, 3vw, 2.7rem);
  line-height: 1.04;
}

.r-compiler-pipeline ul {
  padding-left: 1.1rem;
  margin: 0;
}

.r-compiler-pipeline li {
  margin: 0.55rem 0;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.92rem;
  line-height: 1.52;
}

.r-compiler-trace {
  margin-top: clamp(5rem, 10vw, 9rem);
  border: 1px solid var(--rh-white);
  background: var(--rh-white);
  color: var(--rh-ink);
  box-shadow: 12px 12px 0 var(--rh-red);
}

.r-compiler-trace__row {
  display: grid;
  grid-template-columns: minmax(8rem, 0.2fr) minmax(28rem, 0.5fr) minmax(18rem, 0.3fr);
  gap: 1.5rem;
  min-height: 8.5rem;
  padding: 1.2rem 1.25rem;
  border-bottom: 1px solid var(--rh-rule);
}

.r-compiler-trace__row:nth-child(3),
.r-compiler-trace__row:nth-child(5),
.r-compiler-trace__row:nth-child(7) {
  background: #f3eee3;
}

.r-compiler-trace__row > strong {
  font-family: var(--rh-display);
  font-size: 1.15rem;
  line-height: 1.35;
}

.r-compiler-trace__row > p {
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.52;
}

.r-rdl__seal-dark {
  border-color: rgba(255, 255, 255, 0.5);
  color: var(--rh-white);
}

.r-rdl__diagnostics {
  background:
    linear-gradient(90deg, transparent 0 75%, rgba(166, 45, 38, 0.055) 75% 100%),
    var(--rh-paper);
}

.r-diagnostic-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(4.5rem, 9vw, 8rem);
  border: 1px solid var(--rh-ink);
  background: var(--rh-ink);
}

.r-diagnostic-grid article {
  display: flex;
  flex-direction: column;
  min-height: 25rem;
  padding: 1.4rem;
  background: var(--rh-white);
}

.r-diagnostic-grid article:nth-child(2),
.r-diagnostic-grid article:nth-child(4),
.r-diagnostic-grid article:nth-child(6) {
  background: #f3eee3;
}

.r-diagnostic-grid h3 {
  margin: 4rem 0 1rem;
  font-size: clamp(1.55rem, 2.5vw, 2.25rem);
  line-height: 1.06;
}

.r-diagnostic-grid p {
  margin: 0 0 1.5rem;
  font-size: 0.92rem;
  line-height: 1.58;
}

.r-diagnostic-grid article > strong {
  margin-top: auto;
  padding-top: 1rem;
  border-top: 1px solid var(--rh-ink);
  font-size: 0.86rem;
  line-height: 1.45;
}

.r-rdl__rules {
  background:
    linear-gradient(rgba(17, 18, 15, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(17, 18, 15, 0.025) 1px, transparent 1px),
    var(--rh-white);
  background-size: 58px 58px;
}

.r-rules-comparison {
  margin-top: clamp(4.5rem, 9vw, 8rem);
  border: 1px solid var(--rh-ink);
  background: var(--rh-white);
}

.r-rules-comparison > div {
  display: grid;
  grid-template-columns: minmax(11rem, 0.6fr) repeat(2, minmax(20rem, 1.2fr));
}

.r-rules-comparison > div > * {
  min-height: 7rem;
  padding: 1rem 1.1rem;
  border-right: 1px solid var(--rh-rule);
  border-bottom: 1px solid var(--rh-rule);
}

.r-rules-comparison > div > *:last-child {
  border-right: 0;
}

.r-rules-comparison__head > span {
  min-height: auto !important;
  background: var(--rh-ink);
  color: var(--rh-white);
  font: 700 0.62rem/1.3 var(--rh-mono);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.r-rules-comparison > div > strong {
  color: var(--rh-red-dark);
  font-family: var(--rh-display);
  font-size: 1rem;
  line-height: 1.35;
}

.r-rules-comparison > div > span {
  font-size: 0.9rem;
  line-height: 1.5;
}

.r-rules-comparison > div:not(.r-rules-comparison__head) > span:nth-child(2) {
  background: #eee8db;
}

.r-rules-comparison > div:not(.r-rules-comparison__head) > span:nth-child(3) {
  background: var(--rdl-blue-soft);
}

.r-rules-place {
  margin-top: 1px;
  padding: clamp(1.6rem, 4vw, 3rem);
  border: 1px solid var(--rh-ink);
  background: var(--rdl-gold-soft);
}

.r-rules-place h3 {
  max-width: 27ch;
  margin: 2.2rem 0 1.2rem;
  font-size: clamp(1.8rem, 3vw, 2.8rem);
  line-height: 1.05;
}

.r-rules-place p {
  max-width: 76ch;
  margin: 0;
}

.r-rdl__proof {
  background:
    radial-gradient(circle at 82% 16%, rgba(166, 45, 38, 0.24), transparent 30rem),
    var(--rdl-code);
  color: var(--rh-white);
}

.r-rdl__proof .r-home__chapter-intro,
.r-rdl__proof .r-home__chapter-intro p {
  color: rgba(255, 255, 255, 0.84);
}

.r-rdl__proof .r-home__chapter-lede {
  color: var(--rh-gold);
}

.r-proof-stack {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(4.5rem, 9vw, 8rem);
  border: 1px solid rgba(255, 255, 255, 0.55);
  background: rgba(255, 255, 255, 0.5);
}

.r-proof-stack article {
  min-height: 20rem;
  padding: 1.5rem;
  background: var(--rdl-code);
}

.r-proof-stack article:nth-child(2),
.r-proof-stack article:nth-child(3) {
  background: #1c2729;
}

.r-proof-stack article > span {
  color: var(--rh-gold);
}

.r-proof-stack h3 {
  max-width: 19ch;
  margin: 4rem 0 1rem;
  color: var(--rh-white);
  font-size: clamp(1.55rem, 2.6vw, 2.35rem);
  line-height: 1.06;
}

.r-proof-stack p {
  margin: 0;
  color: rgba(255, 255, 255, 0.76);
  font-size: 0.92rem;
  line-height: 1.56;
}

.r-proof-boundary-note {
  margin-top: 1px;
  padding: clamp(1.6rem, 4vw, 3rem);
  border: 1px solid rgba(255, 255, 255, 0.55);
  background: rgba(255, 255, 255, 0.07);
}

.r-proof-boundary-note > span {
  color: var(--rh-gold);
}

.r-proof-boundary-note h3 {
  max-width: 27ch;
  margin: 2.5rem 0 1.5rem;
  font-size: clamp(1.85rem, 3.2vw, 3rem);
  line-height: 1.05;
}

.r-proof-boundary-note p {
  max-width: 76ch;
  margin: 0;
  color: rgba(255, 255, 255, 0.8);
}

.r-rdl__release {
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.3), transparent 55%),
    #d8c79b;
}

.r-release-flow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(4.5rem, 9vw, 8rem);
  border: 1px solid var(--rh-ink);
  background: var(--rh-ink);
}

.r-release-flow article {
  min-height: 23rem;
  padding: 1.4rem;
  background: var(--rh-white);
}

.r-release-flow article:first-child {
  background: var(--rdl-red-soft);
}

.r-release-flow article:nth-child(2) {
  background: #e3d1a7;
}

.r-release-flow article:nth-child(3) {
  background: var(--rdl-blue-soft);
}

.r-release-flow article:last-child {
  background: var(--rdl-green-soft);
}

.r-release-flow h3 {
  margin: 4rem 0 1rem;
  font-size: clamp(1.45rem, 2.3vw, 2.05rem);
  line-height: 1.07;
}

.r-release-flow p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.56;
}

.r-release-equation {
  margin-top: 1px;
  padding: clamp(1.7rem, 4vw, 3.2rem);
  border: 1px solid var(--rh-ink);
  background: var(--rh-ink);
  color: var(--rh-white);
}

.r-release-equation > span {
  color: var(--rh-gold);
}

.r-release-equation > strong {
  display: block;
  max-width: 33ch;
  margin-top: 1.5rem;
  font-family: var(--rh-display);
  font-size: clamp(1.7rem, 3.2vw, 3rem);
  line-height: 1.13;
}

.r-release-products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin-top: 1px;
  border: 1px solid var(--rh-ink);
  background: var(--rh-ink);
}

.r-release-products article {
  min-height: 12rem;
  padding: 1.5rem;
  background: var(--rh-white);
}

.r-release-products article:first-child {
  background: var(--rdl-blue-soft);
}

.r-release-products p {
  margin: 2rem 0 0;
  font-size: 0.94rem;
  line-height: 1.58;
}

.r-rdl__boundaries {
  background:
    linear-gradient(90deg, transparent 0 75%, rgba(35, 60, 69, 0.055) 75% 100%),
    var(--rh-paper);
}

.r-implementation-boundaries {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin-top: clamp(4.5rem, 9vw, 8rem);
  border: 1px solid var(--rh-ink);
  background: var(--rh-ink);
}

.r-implementation-boundaries section {
  min-height: 29rem;
  padding: clamp(1.6rem, 4vw, 3rem);
  background: var(--rdl-blue-soft);
}

.r-implementation-boundaries section:last-child {
  background: var(--rdl-red-soft);
}

.r-implementation-boundaries ul {
  padding-left: 1.2rem;
  margin: 4rem 0 0;
}

.r-implementation-boundaries li {
  margin: 0.75rem 0;
  font-size: 0.98rem;
  line-height: 1.55;
}

.r-rdl-final {
  margin-top: clamp(6rem, 12vw, 11rem);
  padding-top: clamp(2rem, 4vw, 3.5rem);
  border-top: 2px solid var(--rh-ink);
}

.r-rdl-final .r-home__eyebrow {
  margin-top: 0;
}

.r-rdl-final h2 {
  max-width: 15ch;
  margin-bottom: 2rem;
  font-size: clamp(3rem, 5.4vw, 5.55rem);
}

.r-rdl-final > p:last-child {
  max-width: 62ch;
  font-family: var(--rh-display);
  font-size: clamp(1.25rem, 2vw, 1.8rem);
  line-height: 1.38;
}

@media (max-width: 1020px) {
  .r-rdl-map ol {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .r-rdl-map li:nth-child(3)::after {
    display: none;
  }

  .r-rdl-types,
  .r-release-flow {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .r-rules-comparison > div {
    grid-template-columns: minmax(10rem, 0.6fr) repeat(2, minmax(16rem, 1.2fr));
  }
}

@media (max-width: 820px) {
  .r-rdl-page .r-home__inner,
  .r-rdl-page > .r-depth-nav .r-depth-nav__inner {
    width: min(calc(100% - 2.5rem), 1120px);
  }

  .r-rdl-literal-flow,
  .r-diagnostic-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .r-rdl-ir__code > div,
  .r-compiler-trace__row {
    grid-template-columns: minmax(8rem, 0.3fr) minmax(20rem, 0.7fr);
  }

  .r-compiler-trace__row > p {
    grid-column: 2;
  }

  .r-rules-comparison {
    overflow-x: auto;
  }

  .r-rules-comparison > div {
    min-width: 760px;
  }
}

@media (max-width: 620px) {
  .r-rdl-page .r-home__inner,
  .r-rdl-page > .r-depth-nav .r-depth-nav__inner {
    width: min(calc(100% - 1.5rem), 1120px);
  }

  .r-rdl__hero h1 {
    font-size: clamp(2.7rem, 12.5vw, 4.1rem);
  }

  .r-rdl-page h2 {
    font-size: clamp(2.35rem, 11vw, 3.55rem);
  }

  .r-rdl-map,
  .r-rdl-ir,
  .r-compiler-trace {
    margin-right: 6px;
    box-shadow: 6px 6px 0 var(--rh-red);
  }

  .r-rdl-ir {
    box-shadow: 6px 6px 0 var(--rdl-blue);
  }

  .r-rdl-map ol,
  .r-rdl-literal-flow,
  .r-rdl-types,
  .r-compiler-pipeline,
  .r-diagnostic-grid,
  .r-proof-stack,
  .r-release-flow,
  .r-release-products,
  .r-implementation-boundaries {
    grid-template-columns: 1fr;
  }

  .r-rdl-map li,
  .r-rdl-literal-flow article,
  .r-rdl-types article,
  .r-compiler-pipeline article,
  .r-diagnostic-grid article,
  .r-proof-stack article,
  .r-release-flow article,
  .r-implementation-boundaries section {
    min-height: auto;
  }

  .r-rdl-map li::after {
    display: none !important;
  }

  .r-rdl-map li > strong,
  .r-rdl-literal-flow h3,
  .r-rdl-types h3,
  .r-compiler-pipeline h3,
  .r-diagnostic-grid h3,
  .r-proof-stack h3,
  .r-release-flow h3 {
    margin-top: 2.2rem;
  }

  .r-rdl-ir__code > div,
  .r-compiler-trace__row {
    grid-template-columns: 1fr;
    gap: 0.55rem;
  }

  .r-compiler-trace__row > p {
    grid-column: auto;
  }

  .r-rules-comparison {
    overflow: visible;
  }

  .r-rules-comparison > div {
    grid-template-columns: 1fr;
    min-width: 0;
  }

  .r-rules-comparison__head {
    display: none !important;
  }

  .r-rules-comparison > div > * {
    min-height: auto;
    border-right: 0;
  }

  .r-rules-comparison > div > strong {
    padding-top: 1.4rem;
    background: var(--rh-ink);
    color: var(--rh-white);
  }

  .r-rules-comparison > div > span::before {
    display: block;
    margin-bottom: 0.65rem;
    color: var(--rh-red-dark);
    font: 700 0.56rem/1.25 var(--rh-mono);
    letter-spacing: 0.09em;
    text-transform: uppercase;
  }

  .r-rules-comparison > div > span:nth-child(2)::before {
    content: "Rules and exceptions";
  }

  .r-rules-comparison > div > span:nth-child(3)::before {
    content: "RDL and Runcible AI";
  }

  .r-rdl-final h2 {
    font-size: clamp(2.75rem, 13vw, 4.4rem);
  }
}
