/* Smooth vector contours follow the supplied identity board. Current color preserves header contrast on scroll. */
.sovi-wordmark {
  display: block !important;
  width: 96px;
  height: 39px;
  background: currentcolor;
  mask: url('/assets/brand/sovi-wordmark.svg') center/contain no-repeat;
  mask: url('/assets/brand/sovi-wordmark.svg') center/contain no-repeat;
  flex: none;
}

.brand-logo,
.logo:has(.sovi-wordmark) {
  display: inline-flex;
  align-items: center;
  line-height: 1;
  text-decoration: none;
}

.site-header.is-compact .sovi-wordmark {
  width: 76px;
  height: 31px;
}

footer .sovi-wordmark {
  color: #8bae95;
  mask-image: url('/assets/brand/sovi-wordmark-sage.svg');
  mask-image: url('/assets/brand/sovi-wordmark-sage.svg');
  width: 118px;
  height: 48px;
}

.sovi-wordmark--sage {
  color: #83998a;
}

@media (width <= 768px) {
  .site-header .sovi-wordmark {
    width: 82px;
    height: 34px;
  }

  .site-header.is-compact .sovi-wordmark {
    width: 70px;
    height: 29px;
  }
}

/* Apply the shadow outside the mask so it follows the lettering. */
.site-header .brand-logo {
  filter: drop-shadow(0 1px 2px #10292320);
}

/* Interpolate the wordmark along with the phone header's scroll state. */
@media (width <= 768px) {
  .site-header .sovi-wordmark,
  .site-header.is-compact .sovi-wordmark {
    width: calc(82px - 12px * var(--mobile-header-progress, 0));
    height: calc(34px - 5px * var(--mobile-header-progress, 0));
  }
}
