/* ============================================
   Route Surface Selectors
============================================ */

.portal-public,
.portal-home-page,
.portal-knowledge-base-layout,
.portal-directory-page,
.portal-article-page {

  --fontSize-h1: 1.75rem;           /* 28px */
  --lineHeight-h1: 2.625rem;        /* 42px */
  --fontWeight-h1-medium: 700;

  --fontSize-h2: 1.5rem;            /* 24px */
  --lineHeight-h2: 2rem;            /* 32px */
  --fontWeight-h2-medium: 700;

  --fontSize-h3: 1.25rem;           /* 20px */
  --lineHeight-h3: 1.75rem;         /* 28px */
  --fontWeight-h3-medium: 700;

  --fontSize-default: 1rem;         /* 16px */
  --lineHeight-default: 1.75rem;    /* 28px */
  --fontWeight-default-regular: 400;

  --fontSize-sidebar: 1rem;         /* 16px */
  --lineHeight-sidebar: 1.5rem;     /* 24px */
  --fontWeight-sidebar: 500;

  --fontFamily-display: Chips;

  --color-text-primary: #1c1e21;
  --color-text-secondary: #71717a;
  --color-primary: #2563eb;
  --color-background: #ffffff;

  background-color: var(--color-background);
  color: var(--color-text-primary);
}


/* ============================================
   Body Text
============================================ */

.portal-article-page__content,
.portal-article-content-header__published-date,
.portal-article-page__content-hearder,
.portal-article-voting__message,
.portal-knowledge-base-breadcrumb__item,
.portal-knowledge-base-breadcrumb__link {
  font-size: var(--fontSize-default) !important;
  line-height: var(--lineHeight-default) !important;
  font-weight: var(--fontWeight-default-regular);
  color: var(--color-text-primary);
}


/* ============================================
   H1
============================================ */

.portal-article-content-header__title,
.portal-page-title {
  font-family: var(--fontFamily-display) !important;
  font-size: var(--fontSize-h1) !important;
  line-height: var(--lineHeight-h1) !important;
  font-weight: var(--fontWeight-h1-medium);
  color: var(--color-text-primary);
}


/* ============================================
   H2
============================================ */

.portal-section-title,
.portal-category-title {
  font-family: var(--fontFamily-display) !important;
  font-size: var(--fontSize-h2) !important;
  line-height: var(--lineHeight-h2) !important;
  font-weight: var(--fontWeight-h2-medium);
  color: var(--color-text-primary);
}


/* ============================================
   H3
============================================ */

.portal-card-title,
.portal-subsection-title {
  font-family: var(--fontFamily-display) !important;
  font-size: var(--fontSize-h3) !important;
  line-height: var(--lineHeight-h3) !important;
  font-weight: var(--fontWeight-h3-medium);
  color: var(--color-text-primary);
}


/* ============================================
   Sidebar Background
============================================ */

.portal-knowledge-base-leftnav,
.portal-knowledge-base-leftnav__content,
.portal-directory-node,
.portal-directory-node__children,
.portal-directory-node__header,
.portal-directory-node__link,
.portal-article-node,
.portal-article-node__container {
  background-color: var(--color-background) !important;
}


/* ============================================
   Sidebar Text
============================================ */

.portal-directory-node__title,
.portal-article-node__title,
.portal-article-navigation-item,
.portal-directory-node__link {
  font-size: var(--fontSize-sidebar) !important;
  line-height: var(--lineHeight-sidebar) !important;
  font-weight: var(--fontWeight-sidebar);
  color: var(--color-text-secondary) !important;
  text-align: left;
}


/* ============================================
   Active Sidebar Item
============================================ */

.portal-directory-node__title--active,
.portal-article-node__container--active .portal-article-node__title,
.portal-article-navigation-item--active {
  color: var(--color-primary) !important;
  font-weight: 600;
}


/* ============================================
   TOC / In This Page
============================================ */

.portal-article-toc-container {
  border-left: 1px solid #e2e8f0;
  padding-left: 16px;
  font-size: var(--fontSize-sidebar) !important;
}

.portal-article-toc-container .portal-article-toc-container__heading {
  font-size: var(--fontSize-sidebar) !important;
  line-height: 1.25rem !important;
  font-weight: 500 !important;
}