.institutional-main {
  min-height: calc(100vh - 3rem);
}

.institutional-page {
  width: 100%;
  max-width: 52rem;
  margin: 0 auto;
  padding-top: var(--cp-space-4);
  padding-bottom: var(--cp-space-8);
}

.institutional-breadcrumb {
  margin-bottom: var(--cp-space-5);
}

.institutional-breadcrumb a {
  display: inline-flex;
  align-items: center;
  min-height: var(--cp-touch-target);
  font-size: var(--cp-font-size-14);
  font-weight: var(--cp-font-weight-semibold);
}

.institutional-page__header {
  margin-bottom: var(--cp-space-8);
}

.institutional-page__header h1 {
  max-width: 22ch;
}

.institutional-page__intro {
  max-width: 66ch;
  margin-bottom: 0;
  color: var(--cp-color-gray-700);
  font-size: var(--cp-font-size-20);
}

.institutional-page__section + .institutional-page__section {
  margin-top: var(--cp-space-8);
}

.institutional-page__section h2 {
  margin-bottom: var(--cp-space-3);
}

.institutional-page__section h3 {
  margin-top: var(--cp-space-5);
}

.institutional-page__section p,
.institutional-page__section li,
.institutional-page__section dd {
  max-width: 72ch;
}

.institutional-page__section ul,
.institutional-page__section ol {
  display: grid;
  gap: var(--cp-space-2);
  padding-left: var(--cp-space-6);
}

.institutional-page__section dl {
  display: grid;
  gap: var(--cp-space-3);
}

.institutional-page__section dt {
  font-weight: var(--cp-font-weight-bold);
}

.institutional-page__section dd {
  margin-left: 0;
  color: var(--cp-color-gray-700);
}

.institutional-page__note {
  color: var(--cp-color-gray-700);
  font-weight: var(--cp-font-weight-semibold);
}

.institutional-page__references {
  padding-left: 0;
  list-style: none;
}

.institutional-page__references li {
  padding-bottom: var(--cp-space-3);
}

.institutional-page__references a {
  font-weight: var(--cp-font-weight-semibold);
}

.institutional-page a:focus-visible {
  outline: 3px solid var(--cp-color-primary-700);
  outline-offset: 3px;
}

@media (min-width: 768px) {
  .institutional-page {
    padding-top: var(--cp-space-6);
    padding-bottom: var(--cp-space-12);
  }
}
