:root,
html[data-theme-mode="light"] {
  --civic-ink: #17211c;
  --civic-text-muted: #526058;
  --civic-text-subtle: #68736c;
  --civic-canvas: #fbfaf7;
  --civic-paper: #fffefa;
  --civic-line: #d9ded9;
  --civic-line-strong: #89978e;
  --civic-action: #0e5e41;
  --civic-action-strong: #073f2b;
  --civic-action-soft: #e8f0e3;
  --civic-action-pale: #f2f6ef;
  --civic-error-surface: #fae8e5;
  --civic-error-text: #653830;
  --civic-focus: #075fbd;
  --civic-warning-line: #9c7300;
  --civic-warning-surface: #fff6d8;
  --civic-warning-text: #493a10;
  --civic-button-fill: #0e5e41;
  --civic-button-text: #ffffff;
  --civic-shadow: rgba(23, 33, 28, 0.14);
  color-scheme: light;
}

html[data-theme-mode="dark"] {
  --civic-ink: #edf3ef;
  --civic-text-muted: #b9c5bd;
  --civic-text-subtle: #9eaca3;
  --civic-canvas: #121713;
  --civic-paper: #19201b;
  --civic-line: #38443c;
  --civic-line-strong: #7f9085;
  --civic-action: #8ad5ae;
  --civic-action-strong: #b8e7cf;
  --civic-action-soft: #244133;
  --civic-action-pale: #1d3026;
  --civic-error-surface: #3a2322;
  --civic-error-text: #f6c7c2;
  --civic-focus: #75b7ff;
  --civic-warning-line: #d9b45c;
  --civic-warning-surface: #352d17;
  --civic-warning-text: #f6e2a9;
  --civic-button-fill: #0e5e41;
  --civic-button-text: #ffffff;
  --civic-shadow: rgba(0, 0, 0, 0.28);
  color-scheme: dark;
}

html {
  min-height: 100%;
  font-family:
    Inter,
    ui-sans-serif,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  font-size: 1rem !important;
  color: var(--civic-ink);
  background: var(--civic-canvas);
}

body,
button,
input,
textarea,
select {
  font-family: inherit;
}

body {
  min-height: 100vh;
  color: var(--civic-ink);
  background: var(--civic-canvas);
}

a {
  color: var(--civic-action-strong);
  text-decoration-color: currentColor;
  text-decoration-thickness: 0.09em;
  text-underline-offset: 0.18em;
}

a:hover {
  color: var(--civic-action);
}

button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
a:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid var(--civic-focus) !important;
  outline-offset: 3px !important;
}

::selection {
  color: var(--civic-ink);
  background: var(--civic-action-soft);
}

hr {
  border-color: var(--civic-line);
}

blockquote {
  color: var(--civic-text-muted);
  border-color: var(--civic-line-strong);
}

:not(pre, figure) > code {
  color: var(--civic-ink);
  background: var(--civic-action-soft);
  border-color: var(--civic-line);
}

a.skip-to-main:focus,
a.skip-to-main:active {
  top: 10px;
  left: 10px;
  width: auto;
  height: auto;
  margin: 0;
  padding: 12px 16px;
  overflow: visible;
  color: var(--civic-ink);
  font-size: 1rem;
  font-weight: 800;
  text-align: left;
  background: var(--civic-paper);
  border: 0;
  border-radius: 8px;
  box-shadow: 0 8px 24px var(--civic-shadow);
  z-index: 1000;
}

.side-bar {
  color: var(--civic-ink);
  background: var(--civic-canvas);
  border-color: var(--civic-line);
  box-shadow: none;
}

.site-header,
.main-header,
.side-bar + .main .main-header {
  color: var(--civic-ink);
  background: var(--civic-paper);
  border-color: var(--civic-line);
}

.site-header {
  min-height: 5.25rem;
  height: auto;
  max-height: none;
  padding: 0.75rem 1rem;
  gap: 0.75rem;
}

.site-title {
  display: grid;
  flex: 1 1 auto;
  min-width: 0;
  height: auto;
  padding: 0;
  color: var(--civic-action-strong);
  text-decoration: none;
}

.site-title:hover {
  color: var(--civic-action);
  background: transparent;
}

.ordinance-brand-name {
  font-size: 1.18rem;
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -0.02em;
}

.ordinance-brand-place {
  margin-top: 0.22rem;
  color: var(--civic-text-muted);
  font-size: 0.76rem;
  font-weight: 600;
  line-height: 1.25;
}

.ordinance-brand-beta {
  width: fit-content;
  margin-top: 0.4rem;
  padding: 0.15rem 0.42rem;
  color: var(--civic-action-strong);
  font-size: 0.68rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: var(--civic-action-soft);
  border-radius: 999px;
}

.site-header-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 0.25rem;
}

.site-button,
.theme-toggle {
  min-width: 44px;
  min-height: 44px;
}

.site-button {
  color: var(--civic-action-strong);
  border-radius: 8px;
}

.site-button:hover {
  color: var(--civic-action);
  background: var(--civic-action-pale);
}

.theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.55rem 0.7rem;
  color: var(--civic-action-strong);
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  background: transparent;
  border: 1px solid var(--civic-line-strong);
  border-radius: 8px;
  cursor: pointer;
}

.theme-toggle:hover {
  color: var(--civic-action-strong);
  background: var(--civic-action-pale);
  border-color: var(--civic-action);
}

.theme-toggle:active {
  transform: translateY(1px);
}

.site-nav {
  color: var(--civic-ink);
}

.nav-list .nav-list-item .nav-list-link,
.nav-list .nav-list-item .nav-list-expander {
  color: var(--civic-text-muted);
}

.nav-list .nav-list-item .nav-list-link {
  display: flex;
  min-height: 44px;
  align-items: center;
  line-height: 1.35;
  text-decoration: none;
}

.nav-list .nav-list-item .nav-list-expander {
  width: 44px;
  height: 44px;
  padding: 0.65rem;
}

.nav-list .nav-list-item .nav-list-link:hover,
.nav-list .nav-list-item .nav-list-link.active,
.nav-list .nav-list-item.active > .nav-list-link,
.nav-list .nav-list-item .nav-list-expander:hover {
  color: var(--civic-action-strong);
  background: var(--civic-action-pale);
  background-image: none;
}

.nav-list .nav-list-item .nav-list-link.active,
.nav-list .nav-list-item.active > .nav-list-link {
  font-weight: 750;
  box-shadow: inset 3px 0 0 var(--civic-action);
}

.nav-category {
  color: var(--civic-text-subtle);
  border-color: var(--civic-line);
}

.site-nav .nav-list .nav-list-item--article-sections > .nav-list {
  padding-bottom: 0.35rem;
}

.site-nav .nav-list .nav-list-item--section-link .nav-list-link {
  min-height: 44px;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
  line-height: 1.35;
}

.site-nav .nav-list .nav-list-item--section-level-2 .nav-list-link {
  padding-top: 0.35rem;
  padding-bottom: 0.35rem;
  font-size: 0.92em;
}

.site-footer {
  color: var(--civic-text-muted);
  border-color: var(--civic-line);
}

.ordinance-site-footer {
  color: inherit;
  line-height: 1.55;
}

.ordinance-site-footer p {
  margin: 0;
}

.ordinance-site-footer a {
  font-weight: 650;
}

.main-header {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  min-height: 5.25rem;
  height: auto;
  padding: 1.125rem 1.75rem;
}

.main-header .search {
  flex: 1 1 auto;
  min-width: 0;
  height: 3rem;
  padding: 0;
}

.main-header-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: flex-start;
  justify-content: flex-end;
  height: 3rem;
}

.search-input-wrap {
  color: var(--civic-ink);
  background: var(--civic-paper);
  border: 1px solid var(--civic-line-strong);
  border-radius: 10px;
  box-shadow: none;
}

.search-input,
.search-active .search-input {
  padding-left: 3.25rem;
  color: var(--civic-ink);
  background: var(--civic-paper);
  border-radius: 10px;
}

.search-input::placeholder {
  color: var(--civic-text-subtle);
  opacity: 1;
}

.search-label .search-icon,
.search-result-doc.search-result-doc-parent,
.search-result-rel-url {
  color: var(--civic-text-subtle);
}

.search-input:focus + .search-label .search-icon,
.search-result-doc .search-result-icon {
  color: var(--civic-action);
}

.search-results {
  color: var(--civic-ink);
  background: var(--civic-paper);
  border: 1px solid var(--civic-line);
  box-shadow: 0 10px 24px var(--civic-shadow);
}

.search-result {
  color: var(--civic-ink);
  text-decoration: none;
}

.search-result:hover,
.search-result.active {
  color: var(--civic-ink);
  background: var(--civic-action-pale);
}

.search-result-title {
  color: var(--civic-action-strong);
}

.search-result-previews,
.search-no-result {
  color: var(--civic-text-muted);
  border-color: var(--civic-line);
}

.search-result-highlight,
mark {
  color: var(--civic-ink);
  background: var(--civic-warning-surface);
}

.breadcrumb-nav-list-item,
.breadcrumb-nav-list-item::after {
  color: var(--civic-text-subtle);
}

.main-content-wrap {
  padding: 1.5rem 1rem 2rem;
}

.main-content {
  max-width: 51.25rem;
  margin-right: auto;
  margin-left: auto;
  color: var(--civic-ink);
  font-size: clamp(1rem, 0.97rem + 0.2vw, 1.08rem);
  line-height: 1.68;
}

#main-content {
  container: ordinance-content / inline-size;
}

.main-content h1,
.main-content h2,
.main-content h3,
.main-content h4,
.main-content h5,
.main-content h6 {
  color: var(--civic-ink);
  font-family: inherit;
  text-transform: none;
}

.main-content h1 {
  margin-bottom: 1rem;
  font-size: clamp(2rem, 6vw, 3.2rem) !important;
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.035em;
}

.main-content h2 {
  margin-top: 2.5rem;
  margin-bottom: 0.6rem;
  padding-top: 0.75rem;
  font-size: 1.35rem !important;
  font-weight: 780;
  line-height: 1.3;
  border-top: 1px solid var(--civic-line);
}

.main-content h3 {
  margin-top: 1.75rem;
  margin-bottom: 0.45rem;
  font-size: 1.25rem !important;
  font-weight: 750;
  line-height: 1.3;
}

.main-content h4 {
  margin-top: 1.4rem;
  margin-bottom: 0.35rem;
  font-size: 1.125rem !important;
  font-weight: 720;
  line-height: 1.35;
}

.main-content h5 {
  margin-top: 1.15rem;
  margin-bottom: 0.35rem;
  font-size: 1.0625rem !important;
  font-weight: 700;
  line-height: 1.35;
}

.main-content a:not(.anchor-heading) {
  color: var(--civic-action-strong);
}

.main-content a:not(.anchor-heading):hover {
  color: var(--civic-action);
}

.main-content .anchor-heading svg {
  color: var(--civic-action);
}

.ordinance-article > h1 + p > em {
  display: block;
  margin-bottom: 2rem;
  color: var(--civic-text-muted);
  font-size: 0.88rem;
  font-style: normal;
  line-height: 1.55;
}

#main-content .ordinance-heading__label {
  display: inline-block;
  margin-right: 0.35rem;
  color: var(--civic-ink);
  font-weight: 800;
}

#main-content .ordinance-heading__title {
  color: var(--civic-ink);
}

#main-content ul.legal-outline,
#main-content ul.legal-outline ul {
  list-style: none;
}

#main-content ul.legal-outline {
  padding-left: 1.5rem;
}

#main-content ul.legal-outline ul {
  padding-left: 1.5rem;
  margin-top: 0.25rem;
}

#main-content ul.legal-outline li {
  display: grid;
  grid-template-columns: minmax(1.5rem, max-content) minmax(0, 1fr);
  column-gap: 0.5rem;
  align-items: start;
  width: 100%;
  margin: 0.25rem 0;
  padding-left: 0;
}

#main-content ul.legal-outline > li::before,
#main-content ul.legal-outline ul > li::before {
  display: none !important;
  content: none !important;
}

#main-content .legal-sublist {
  padding-left: 1.5rem;
  margin-top: 0.25rem;
  list-style: none;
}

#main-content .legal-sublist li {
  display: block;
  margin: 0.15rem 0;
  padding-left: 0;
}

#main-content .legal-sublist__text,
#main-content .legal-body {
  display: block;
  width: 100%;
  min-width: 0;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
}

#main-content .legal-item {
  display: grid;
  grid-template-columns: minmax(1.5rem, max-content) minmax(0, 1fr);
  column-gap: 0.5rem;
  align-items: start;
  margin: 0.5rem 0 0.5rem 2rem;
  text-indent: 0;
}

#main-content .legal-marker {
  display: block;
  grid-column: 1;
  min-width: 1.5rem;
  width: auto;
  margin-left: 0;
  font-weight: 700;
  white-space: nowrap;
  word-break: keep-all;
}

#main-content .legal-item > .legal-body,
#main-content ul.legal-outline li > .legal-body,
#main-content ul.legal-outline li > :not(.legal-marker) {
  grid-column: 2;
}

#main-content ul.legal-outline li:not(:has(> .legal-marker)) {
  display: block;
  width: auto;
}

#main-content ul.legal-outline li:not(:has(> .legal-marker)) > :not(.legal-marker) {
  grid-column: auto;
}

#main-content ul.legal-outline li:not(:has(> .legal-marker)) > .legal-item {
  margin-left: 0;
}

#main-content .ordinance-subsection--level4 {
  margin-left: 0.75rem;
}

#main-content .ordinance-subsection--level5 {
  margin-left: 1rem;
}

#main-content .ordinance-subsection--level4 > h4,
#main-content .ordinance-subsection--level5 > h5 {
  margin-left: 0;
}

#main-content .ordinance-subsection--level5 > ul.legal-outline,
#main-content .ordinance-subsection--level5 > ul.legal-outline ul,
#main-content .ordinance-subsection--level5 > .legal-item {
  margin-left: 0.5rem;
}

#main-content .ordinance-table-wrap {
  position: relative;
  max-width: 100%;
  margin: 1rem 0 1.5rem;
  overflow-x: auto;
  scrollbar-color: var(--civic-line-strong) transparent;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

#main-content .ordinance-table-wrap::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0.5rem;
  width: 2rem;
  pointer-events: none;
  content: "";
  background: linear-gradient(90deg, transparent, var(--civic-canvas));
}

#main-content .ordinance-table-wrap--stacked::after {
  display: none;
}

#main-content .ordinance-table-wrap--stacked,
#main-content .ordinance-table-wrap--stacked .table-wrapper {
  overflow-x: visible;
}

#main-content .ordinance-table-wrap .table-wrapper {
  margin: 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

#main-content .ordinance-table {
  width: 100%;
  border-collapse: collapse;
}

#main-content .ordinance-table caption {
  margin-bottom: 0.5rem;
  color: var(--civic-ink);
  font-weight: 750;
  text-align: left;
  caption-side: top;
}

#main-content .ordinance-table th,
#main-content .ordinance-table td,
th,
td {
  color: var(--civic-ink);
  background: var(--civic-paper);
  border-color: var(--civic-line);
}

#main-content .ordinance-table th,
#main-content .ordinance-table td {
  padding: 0.55rem 0.75rem;
  vertical-align: top;
  border: 1px solid var(--civic-line);
}

#main-content .ordinance-table thead th,
#main-content .ordinance-table .ordinance-table__subhead,
thead th {
  color: var(--civic-ink);
  font-weight: 750;
  background: var(--civic-action-pale);
}

#main-content .ordinance-table th[scope="row"] {
  font-weight: 700;
}

#main-content .ordinance-table p {
  margin: 0 0 0.35rem;
}

#main-content .ordinance-table p:last-child {
  margin-bottom: 0;
}

#main-content .ordinance-table ul.legal-outline {
  padding-left: 0;
  margin: 0 0 0.5rem;
}

#main-content .ordinance-table ul.legal-outline:last-child {
  margin-bottom: 0;
}

#main-content .ordinance-definition-list,
#main-content .ordinance-threshold-list {
  margin: 1rem 0 1.5rem;
  overflow: hidden;
  background: var(--civic-paper);
  border: 1px solid var(--civic-line);
  border-radius: 8px;
}

#main-content .ordinance-definition-list__header,
#main-content .ordinance-threshold-list__header,
#main-content .ordinance-definition-list dl > div,
#main-content .ordinance-threshold-list dl > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

#main-content .ordinance-definition-list__header,
#main-content .ordinance-threshold-list__header {
  font-weight: 750;
  background: var(--civic-action-pale);
}

#main-content .ordinance-definition-list__header span,
#main-content .ordinance-threshold-list__header span,
#main-content .ordinance-definition-list dt,
#main-content .ordinance-definition-list dd,
#main-content .ordinance-threshold-list dt,
#main-content .ordinance-threshold-list dd {
  min-width: 0;
  margin: 0;
  padding: 0.55rem 0.75rem;
  overflow-wrap: anywhere;
}

#main-content .ordinance-definition-list dt,
#main-content .ordinance-threshold-list dt {
  font-weight: 700;
}

#main-content .ordinance-definition-list dd,
#main-content .ordinance-threshold-list dd,
#main-content .ordinance-definition-list__header span + span,
#main-content .ordinance-threshold-list__header span + span {
  border-left: 1px solid var(--civic-line);
}

#main-content .ordinance-definition-list dl,
#main-content .ordinance-threshold-list dl {
  margin: 0;
}

#main-content .ordinance-definition-list dl > div,
#main-content .ordinance-threshold-list dl > div {
  border-top: 1px solid var(--civic-line);
}

#main-content .ordinance-figure {
  margin: 1rem 0 1.5rem;
}

#main-content .ordinance-figure__image {
  display: block;
  max-width: 100%;
  height: auto;
}

#main-content .ordinance-figure__placeholder {
  padding: 1rem 1.125rem;
  color: var(--civic-text-muted);
  background: var(--civic-action-pale);
  border: 1px dashed var(--civic-line-strong);
  border-radius: 8px;
}

#main-content .ordinance-figure__title,
#main-content .ordinance-figure__note,
#main-content .ordinance-figure__reference {
  margin: 0;
}

#main-content .ordinance-figure__title {
  color: var(--civic-ink);
  font-weight: 700;
}

#main-content .ordinance-figure__note,
#main-content .ordinance-figure__reference {
  margin-top: 0.45rem;
}

#main-content .ordinance-figure figcaption {
  margin-top: 0.5rem;
  color: var(--civic-text-muted);
  font-size: 0.9rem;
  line-height: 1.55;
}

@container ordinance-content (max-width: 52rem) {
  #main-content .ordinance-table--mobile-stack {
    display: block;
    width: 100%;
    min-width: 0;
    border-collapse: separate;
  }

  #main-content .ordinance-table--mobile-stack thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    white-space: nowrap;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
  }

  #main-content .ordinance-table--mobile-stack tbody,
  #main-content .ordinance-table--mobile-stack tr,
  #main-content .ordinance-table--mobile-stack th,
  #main-content .ordinance-table--mobile-stack td {
    display: block;
  }

  #main-content .ordinance-table--mobile-stack tr {
    overflow: hidden;
    background: var(--civic-paper);
    border: 1px solid var(--civic-line);
    border-radius: 8px;
  }

  #main-content .ordinance-table--mobile-stack tr + tr {
    margin-top: 0.75rem;
  }

  #main-content .ordinance-table--mobile-stack th,
  #main-content .ordinance-table--mobile-stack td {
    padding: 0.75rem 0.85rem;
    text-align: left;
    border: 0;
  }

  #main-content .ordinance-table--mobile-stack th + td,
  #main-content .ordinance-table--mobile-stack td + td {
    border-top: 1px solid var(--civic-line);
  }

  #main-content .ordinance-table--mobile-stack th::before,
  #main-content .ordinance-table--mobile-stack td::before {
    display: block;
    margin-bottom: 0.2rem;
    color: var(--civic-text-muted);
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1.35;
    content: attr(data-label);
  }
}

@media (max-width: 52rem) {
  #main-content .ordinance-table--mobile-stack {
    display: block;
    width: 100%;
    min-width: 0;
    border-collapse: separate;
  }

  #main-content .ordinance-table--mobile-stack thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    white-space: nowrap;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
  }

  #main-content .ordinance-table--mobile-stack tbody,
  #main-content .ordinance-table--mobile-stack tr,
  #main-content .ordinance-table--mobile-stack th,
  #main-content .ordinance-table--mobile-stack td {
    display: block;
  }

  #main-content .ordinance-table--mobile-stack tr {
    overflow: hidden;
    background: var(--civic-paper);
    border: 1px solid var(--civic-line);
    border-radius: 8px;
  }

  #main-content .ordinance-table--mobile-stack tr + tr {
    margin-top: 0.75rem;
  }

  #main-content .ordinance-table--mobile-stack th,
  #main-content .ordinance-table--mobile-stack td {
    padding: 0.75rem 0.85rem;
    text-align: left;
    border: 0;
  }

  #main-content .ordinance-table--mobile-stack th + td,
  #main-content .ordinance-table--mobile-stack td + td {
    border-top: 1px solid var(--civic-line);
  }

  #main-content .ordinance-table--mobile-stack th::before,
  #main-content .ordinance-table--mobile-stack td::before {
    display: block;
    margin-bottom: 0.2rem;
    color: var(--civic-text-muted);
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1.35;
    content: attr(data-label);
  }
}

@media (min-width: 50rem) {
  :root {
    --desktop-sidebar-rail-width: 3.5rem;
  }

  .side-bar,
  .side-bar + .main {
    transition-duration: 180ms;
    transition-timing-function: ease;
  }

  .side-bar {
    transition-property: width, min-width;
  }

  .side-bar + .main {
    transition-property: margin-left;
  }

  html.sidebar-collapse-ready .site-header #menu-button {
    display: flex;
  }

  html[data-sidebar-collapsed="true"] .side-bar {
    align-items: stretch;
    width: var(--desktop-sidebar-rail-width);
    min-width: var(--desktop-sidebar-rail-width);
  }

  html[data-sidebar-collapsed="true"] .side-bar + .main {
    margin-left: max(
      var(--desktop-sidebar-rail-width),
      calc((100vw - 50rem) / 2)
    );
  }

  html[data-sidebar-collapsed="true"] .site-header {
    width: var(--desktop-sidebar-rail-width);
    padding-right: 0;
    padding-left: 0;
    justify-content: center;
  }

  html[data-sidebar-collapsed="true"] .site-header-actions {
    width: 100%;
    justify-content: center;
  }

  html[data-sidebar-collapsed="true"] .site-title,
  html[data-sidebar-collapsed="true"] .site-nav,
  html[data-sidebar-collapsed="true"] .site-footer {
    display: none !important;
  }

  .site-header {
    min-height: 5.25rem;
    height: auto;
    max-height: none;
  }

  .side-bar + .main .main-header {
    display: flex;
    height: auto;
  }

  .search-input-wrap {
    top: auto;
    left: auto;
    width: 100%;
    height: 3rem !important;
    border-radius: 10px;
  }

  .search-input {
    padding-left: 3.25rem;
    font-size: 0.95rem;
  }

  .main-content-wrap {
    padding: 2rem 1.75rem 3rem;
  }
}

@media (max-width: 49.99rem) {
  .site-header {
    min-height: 4.5rem;
    padding: 0.65rem 1rem;
  }

  .ordinance-brand-name {
    font-size: 1.08rem;
  }

  .ordinance-brand-beta {
    display: inline-block;
    margin-top: 0.25rem;
  }

  .side-bar + .main .main-header {
    display: flex;
    align-items: flex-start;
    min-height: 4.5rem;
    height: auto;
    padding: 0.75rem 1rem;
    gap: 0.75rem;
  }

  .main-header .search {
    height: 3rem;
  }

  .side-bar + .main .main-header.nav-open,
  .search-active .main-header {
    display: flex;
    align-items: flex-start;
    min-height: 4.5rem;
    height: auto;
    padding: 0.75rem 1rem;
  }

  .main-header.nav-open .search-input-wrap,
  .search-active .search-input-wrap {
    height: 3rem;
    border-radius: 10px;
  }
}

@media (max-width: 31.24rem) {
  .ordinance-brand-place {
    display: none;
  }

  .theme-toggle {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    font-size: 0.72rem;
  }

  #main-content ul.legal-outline,
  #main-content ul.legal-outline ul,
  #main-content .legal-sublist {
    padding-left: 0.75rem;
  }

  #main-content .legal-item,
  #main-content .ordinance-subsection--level5 > .legal-item {
    margin-left: 0.5rem;
  }

  #main-content .ordinance-subsection--level4,
  #main-content .ordinance-subsection--level5,
  #main-content .ordinance-subsection--level5 > ul.legal-outline,
  #main-content .ordinance-subsection--level5 > ul.legal-outline ul {
    margin-left: 0;
  }

  #main-content .legal-item,
  #main-content ul.legal-outline li {
    grid-template-columns: minmax(1.25rem, max-content) minmax(0, 1fr);
    column-gap: 0.35rem;
  }

  #main-content .legal-marker {
    min-width: 1.25rem;
  }

  #main-content .ordinance-table th,
  #main-content .ordinance-table td,
  #main-content .ordinance-definition-list__header span,
  #main-content .ordinance-threshold-list__header span,
  #main-content .ordinance-definition-list dt,
  #main-content .ordinance-definition-list dd,
  #main-content .ordinance-threshold-list dt,
  #main-content .ordinance-threshold-list dd {
    padding: 0.55rem 0.6rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

@media (forced-colors: active) {
  button:focus-visible,
  input:focus-visible,
  textarea:focus-visible,
  select:focus-visible,
  a:focus-visible,
  summary:focus-visible,
  [tabindex]:focus-visible {
    outline-color: Highlight !important;
  }

  .theme-toggle,
  .search-input-wrap,
  #main-content .ordinance-table th,
  #main-content .ordinance-table td,
  #main-content .ordinance-definition-list,
  #main-content .ordinance-threshold-list {
    border-color: ButtonText;
  }

  .nav-list .nav-list-item .nav-list-link.active,
  .nav-list .nav-list-item.active > .nav-list-link {
    border-left: 3px solid Highlight;
    box-shadow: none;
  }
}

@media print {
  :root,
  html[data-theme-mode="dark"] {
    --civic-ink: #000000;
    --civic-text-muted: #333333;
    --civic-text-subtle: #444444;
    --civic-canvas: #ffffff;
    --civic-paper: #ffffff;
    --civic-line: #999999;
    --civic-line-strong: #555555;
    --civic-action: #000000;
    --civic-action-strong: #000000;
    --civic-action-soft: #ffffff;
    --civic-action-pale: #ffffff;
    color-scheme: light;
  }

  body {
    color: #000000 !important;
    background: #ffffff !important;
  }

  .theme-toggle {
    display: none !important;
  }

  #menu-button {
    display: none !important;
  }

  html[data-sidebar-collapsed="true"] .side-bar {
    width: 100% !important;
    min-width: 0 !important;
  }

  html[data-sidebar-collapsed="true"] .side-bar + .main {
    margin-left: 0 !important;
  }

  html[data-sidebar-collapsed="true"] .site-title,
  html[data-sidebar-collapsed="true"] .site-nav,
  html[data-sidebar-collapsed="true"] .site-footer {
    display: block !important;
  }

  .main-content {
    max-width: none;
    color: #000000;
  }

  .main-content a {
    color: #000000 !important;
  }
}
