.hero-section {
  margin-top: 60px;
}
@media (min-width: 1200px) {
  .hero-section {
    margin-top: 96px;
  }
}

.loci-top {
  fill: var(--brand-primary_1);
}

.loci-bottom {
  fill: var(--brand-primary_2);
}

.jump-links-menu a {
  transition: all 0.2s linear;
}
.jump-links-menu a:hover, .jump-links-menu a.current {
  text-decoration: underline;
  text-underline-offset: 8px;
  text-decoration-thickness: 1px;
}

.jumplinks-sticky-band {
  box-shadow: rgba(100, 100, 111, 0.047) 0px 7px 29px 0px;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 220;
  display: flex;
  justify-content: center;
  padding: 0 6.35vw;
  background-color: var(--paper);
  min-height: 60px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-100%);
  transition: opacity 0.2s linear, transform 0.2s linear, visibility 0.2s linear;
}
@media (min-width: 1200px) {
  .jumplinks-sticky-band {
    min-height: 96px;
  }
}
.jumplinks-sticky-band.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
.jumplinks-sticky-band .jump-links-menu--sticky {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  width: 100%;
  min-height: inherit;
  overflow-x: auto;
  white-space: nowrap;
  font-size: clamp(1rem, 0.7rem + 1vw, 1.3rem);
  padding: 0.75rem 0;
}

[data-theme=dark] .logo .loci-top, [data-theme=dark] .logo .loci-bottom {
  fill: #DDD8D4;
}

.scrolling-down header {
  margin-top: -115px;
}
.scrolling-down .site-header__menu-btn {
  top: -115px;
}

.scrolling-up header {
  border-color: var(--grey-tint);
}

.darkmode svg {
  width: 22px;
  fill: currentColor;
}

.site-header__menu-btn .site-header__menu-close-label {
  transition: opacity 0.2s ease;
}
.site-header__menu-btn.is-open .site-header__menu-close-label {
  opacity: 0;
}
.site-header__menu-btn.is-open .site-header__menu-icon {
  opacity: 0;
  pointer-events: none;
}

.site-header__search {
  width: 2.5rem;
  min-width: 2.5rem;
  height: 2.5rem;
}
.site-header__search .site-header__search-toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 2.5rem;
  height: 2.5rem;
  z-index: 2;
  transition: opacity 0.2s ease, transform 0.28s ease;
}
.site-header__search .site-header__search-form {
  position: absolute;
  top: 50%;
  right: 0;
  width: 0;
  min-width: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-50%);
  transition: width 0.28s ease, opacity 0.2s ease;
  background: var(--paper);
  padding-right: 0;
}
.site-header__search input[type=search]::placeholder {
  color: currentColor;
  opacity: 1;
}
.site-header__search button[type=submit] {
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
}
.site-header__search.is-open .site-header__search-form {
  width: min(18rem, 28vw);
  opacity: 1;
  pointer-events: auto;
}
.site-header__search.is-open .site-header__search-toggle {
  opacity: 0;
  pointer-events: none;
  transform: scale(0.92);
}
.site-header__search .site-header__search-form:focus-within button[type=submit], .site-header__search.is-open button[type=submit] {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(0);
}

.site-overlay-nav {
  --nav-card-gap: clamp(0.75rem, 1.4vw, 1.1rem);
}
.site-overlay-nav .site-overlay-nav__secondary-wrap {
  container-type: size;
}
.site-overlay-nav .site-overlay-nav__secondary-stage {
  position: relative;
}
.site-overlay-nav .site-overlay-nav__secondary-stage::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: clamp(1.2rem, 3vw, 2.4rem);
  pointer-events: none;
  z-index: 2;
}
.site-overlay-nav .site-overlay-nav__secondary-stage::after {
  bottom: 0;
  background: linear-gradient(to top, var(--paper) 0%, rgba(221, 216, 212, 0) 100%);
}
.site-overlay-nav .site-overlay-nav__secondary-list {
  grid-area: 1/1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: start;
  gap: var(--nav-card-gap);
  overscroll-behavior-y: contain;
  overscroll-behavior-x: none;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
  touch-action: pan-y;
  -webkit-overflow-scrolling: touch;
}
.site-overlay-nav .site-overlay-nav__secondary-list::-webkit-scrollbar {
  display: none;
}
.site-overlay-nav .site-overlay-nav__secondary-list[data-secondary-layout=grid] {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.site-overlay-nav .site-overlay-nav__secondary-card {
  flex: 0 0 auto;
  width: auto;
}
.site-overlay-nav .site-overlay-nav__secondary-list[data-secondary-layout=grid] .site-overlay-nav__secondary-card {
  min-width: 0;
}
.site-overlay-nav .site-overlay-nav__secondary-list[data-secondary-layout=grid][data-secondary-card-count="2"] {
  grid-auto-flow: unset;
  grid-template-rows: none;
  grid-template-columns: none;
  grid-auto-columns: unset;
}
.site-overlay-nav .site-overlay-nav__secondary-list:has(> .site-overlay-nav__secondary-card:nth-child(2):last-child) {
  grid-auto-flow: unset;
  grid-template-rows: none;
  grid-template-columns: none;
  grid-auto-columns: unset;
}
.site-overlay-nav .site-overlay-nav__secondary-card-image {
  transform: translateZ(0);
  transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}
.site-overlay-nav .site-overlay-nav__secondary-card:hover .site-overlay-nav__secondary-card-image,
.site-overlay-nav .site-overlay-nav__secondary-card:focus-visible .site-overlay-nav__secondary-card-image {
  transform: scale(1.018);
}
.site-overlay-nav .site-overlay-nav__secondary-card-media--empty {
  background: linear-gradient(135deg, rgba(17, 17, 17, 0.07), rgba(17, 17, 17, 0.02)), radial-gradient(circle at top right, rgba(17, 17, 17, 0.08), transparent 42%);
}
.site-overlay-nav .site-overlay-nav__search-inline input[type=search]::placeholder {
  color: currentColor;
  opacity: 1;
}
.site-overlay-nav .site-overlay-nav__search-inline button[type=submit] {
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
}
.site-overlay-nav .site-overlay-nav__search-inline:focus-within button[type=submit] {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(0);
}
@container (min-height: 34rem) {
  .site-overlay-nav .site-overlay-nav__secondary-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .site-overlay-nav .site-overlay-nav__secondary-card {
    min-width: 0;
  }
}
@media (min-height: 64rem) {
  .site-overlay-nav .site-overlay-nav__secondary-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .site-overlay-nav .site-overlay-nav__secondary-card {
    min-width: 0;
  }
}
