/* Keep the homepage navigation fully opaque while preserving its existing position behavior. */
.site-v3.home-page .header:not(.scrolled),
.site-v3.home-page .header.scrolled {
  background-color: #fff;
  background-image: none;
  border-bottom-color: rgba(32, 33, 36, .1);
  box-shadow: 0 5px 18px rgba(32, 33, 36, .07);
  color: var(--text-strong);
  backdrop-filter: none;
}

.site-v3.home-page .header:not(.scrolled) .brand::after { color: #777; }
.site-v3.home-page .header:not(.scrolled) .brand > b { color: var(--text-strong); }
.site-v3.home-page .header:not(.scrolled) .desktop-nav a { color: #45484c; }
.site-v3.home-page .header:not(.scrolled) .desktop-nav a:hover,
.site-v3.home-page .header:not(.scrolled) .desktop-nav a[aria-current="page"] { color: var(--brand-red); }
.site-v3.home-page .header:not(.scrolled) .search-button {
  border-color: #d9dfe1;
  background: #fff;
  color: #30383d;
  box-shadow: 0 2px 7px rgba(32, 33, 36, .06);
}
.site-v3.home-page .header:not(.scrolled) .menu-button span { background: #272a2d; }

/* The supplied reference sheet is the source for every visible partner mark. */
.ecosystem-logo-sprite {
  --ecosystem-sprite-scale: clamp(.28, calc(100vw / 3429px), .42);
  display: block;
  flex: 0 0 auto;
  width: calc(var(--crop-w) * var(--ecosystem-sprite-scale));
  height: calc(var(--crop-h) * var(--ecosystem-sprite-scale));
  background-image: url('/assets/partners/ecosystem/brand-reference-15.jpg');
  background-position:
    calc(var(--crop-x) * var(--ecosystem-sprite-scale) * -1)
    calc(var(--crop-y) * var(--ecosystem-sprite-scale) * -1);
  background-repeat: no-repeat;
  background-size:
    calc(1647px * var(--ecosystem-sprite-scale))
    calc(368px * var(--ecosystem-sprite-scale));
  mix-blend-mode: multiply;
  opacity: .92;
  transition: opacity .3s ease, transform .3s ease;
}

.ecosystem-logo-sprite:hover { opacity: 1; transform: scale(1.06); }

@media (max-width: 640px) {
  .ecosystem-logo-sprite { --ecosystem-sprite-scale: .28; }
}

.site-v3.home-page .home-hero h1 {
  max-width: 1400px;
  font-size: clamp(48px, 6.2vw, 134px);
  font-weight: 900 !important;
  line-height: 1.06;
  letter-spacing: .025em;
}

.site-v3.home-page .home-hero__areas {
  font-size: clamp(19px, 1.55vw, 36px);
  font-weight: 800 !important;
  letter-spacing: .08em;
}

@media (max-width: 640px) {
  .site-v3.home-page .home-hero h1 {
    max-width: 100%;
    font-size: clamp(30px, 9vw, 36px);
    white-space: nowrap;
  }
}
