/* Shared wordmark and TS emblem across the website. */
:root {
  --brand-wordmark-size: 18px;
  --brand-wordmark-color: #fff;
}

.site-header .brand .brand-name {
  gap: 2px;
  color: var(--brand-wordmark-color);
  font: 700 var(--brand-wordmark-size)/1.1 var(--sans);
  letter-spacing: -.03em;
}

.site-header .brand .brand-name > strong,
.site-header .brand .brand-name > small {
  color: var(--brand-wordmark-color);
  font: inherit;
  letter-spacing: inherit;
}

.footer-brand .footer-brand-copy > strong,
.site-header .mobile-nav-identity-copy > strong {
  color: var(--brand-wordmark-color);
  font: 700 var(--brand-wordmark-size)/1.1 var(--sans);
  letter-spacing: -.03em;
}

.footer-brand .footer-brand-copy > small,
.site-header .mobile-nav-identity-copy > small,
.admin-dashboard-page .sidebar-brand strong,
.admin-dashboard-page .sidebar-brand small {
  color: var(--brand-wordmark-color);
}

/* White branding stays readable on every page and in the mobile drawer. */
body:not(.page-home) .site-header {
  background: var(--ink);
  border-bottom-color: rgba(255, 255, 255, .2);
}

.site-header .nav-links a,
.page-home .site-header .nav-links a {
  color: rgba(255, 255, 255, .86);
}

.site-header .nav-links a:hover,
.site-header .nav-links a.is-active,
.page-home .site-header .nav-links a:hover,
.page-home .site-header .nav-links a.is-active {
  color: #fff;
}

.site-header .nav-links a::after,
.page-home .site-header .nav-links a::after {
  background: #fff;
}

.site-header .nav-cta {
  background: rgba(255, 255, 255, .12);
  border-color: rgba(255, 255, 255, .45);
  color: #fff;
}

.site-header .nav-cta:hover,
.page-home .site-header .nav-cta:hover {
  background: rgba(255, 255, 255, .22);
  border-color: #fff;
  color: #fff;
}

.site-header .menu-toggle,
.page-home .site-header .menu-toggle,
.page-home .site-header .menu-toggle[aria-expanded="true"] {
  color: #fff;
}

.site-header .brand:focus-visible,
.site-header .nav-links a:focus-visible,
.site-header .nav-cta:focus-visible,
.site-header .menu-toggle:focus-visible {
  outline-color: rgba(255, 255, 255, .8);
}

.brand-mark.brand-emblem,
.footer-brand .brand-mark.brand-emblem,
.mobile-nav-identity-mark.brand-emblem,
.visual-bean.brand-emblem,
.admin-dashboard-page .sidebar-logo-mark.brand-emblem {
  display: block;
  flex-shrink: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  object-fit: contain;
  transform: none;
  box-shadow: none;
}

.site-header .brand-mark.brand-emblem,
.footer-brand .brand-mark.brand-emblem {
  width: 44px;
  height: 44px;
}

.mobile-nav-identity-mark.brand-emblem {
  width: 40px;
  height: 40px;
}

.visual-bean.brand-emblem {
  width: 80px;
  height: 80px;
}

.admin-dashboard-page .sidebar-logo-mark.brand-emblem {
  width: 46px;
  height: 46px;
}

@media (max-width: 900px) {
  .site-header .nav-links {
    background: var(--ink);
  }

  .site-header .mobile-nav-identity {
    border-bottom-color: rgba(255, 255, 255, .2);
  }

  .site-header .menu-toggle:hover,
  .site-header .menu-toggle:focus-visible {
    background: rgba(255, 255, 255, .12);
  }
}

@media (max-width: 760px) {
  .site-header .brand-mark.brand-emblem {
    width: 40px;
    height: 40px;
  }
}
