/* Responsive image layers retain the original slideshow framing. */
.home-page .w-slide { background-image: none !important; overflow: hidden; }
.home-slide-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  pointer-events: none;
}
.home-page .slide-boson .home-slide-image,
.home-page .slide-ukor .home-slide-image { object-position: 50% 60%; }
.home-page .w-slide > .link-block { position: relative; z-index: 1; }
.home-page .project-title.description { z-index: 2; pointer-events: none; }

/* Match the navigation to the current slide; hover always uses brand pink. */
.home-page .header { --home-nav-ink: #111; --home-nav-shadow: none; }
.home-page .header[data-nav-tone="white"] {
  --home-nav-ink: #fff;
  --home-nav-shadow: 0 1px 5px rgb(0 0 0 / 55%);
}
.home-page .header .menu-item-text,
.home-page .header .menu-button {
  color: var(--home-nav-ink) !important;
  mix-blend-mode: normal;
  text-shadow: var(--home-nav-shadow);
  transition: color 160ms ease, text-shadow 160ms ease;
}
.home-page .header .w-icon-nav-menu { color: inherit; }
@media (max-width: 991px) {
  .home-page .slide-hibird .home-slide-image,
  .home-page .slide-humidity .home-slide-image { object-position: 35% 50%; }
  .home-page .slide-treemme .home-slide-image { object-position: 82% 50%; }
  /* The expanded mobile menu has its own white background. */
  .home-page .header .nav-menu-2 .menu-item-text { color: #111 !important; text-shadow: none; }
  .home-page .header .menu-button.w--open,
  .home-page .header:has([data-nav-menu-open]) .menu-button { color: #111 !important; text-shadow: none; }
}
@media (max-width: 767px) {
  .home-page .slide-hibird .home-slide-image,
  .home-page .slide-humidity .home-slide-image { object-position: 24% 50%; }
  .home-page .slide-treemme .home-slide-image { object-position: 67% 50%; }
  .home-page .slide-boson .home-slide-image,
  .home-page .slide-ukor .home-slide-image { object-position: 50% 50%; }
}
@media (max-width: 479px) {
  .home-page .slide-hibird .home-slide-image,
  .home-page .slide-humidity .home-slide-image { object-position: 26% 50%; }
  .home-page .slide-treemme .home-slide-image { object-position: 52% 50%; }
  .home-page .slide-boson .home-slide-image {
    inset: -18% auto auto 73%;
    width: auto;
    max-width: none;
    height: 125%;
    transform: translateX(-73%);
  }
}
/* When both billboards no longer fit, frame only the woman's poster.
   The minimum zoom keeps the left billboard outside the viewport. */
@media (max-aspect-ratio: 17/20) {
  .home-page .slide-ukor .home-slide-image {
    inset: 50% auto auto 50%;
    width: auto;
    max-width: none;
    height: max(100%, 195vw);
    transform: translate(-64.3%, -54%);
  }
}
.home-page .header .menu-item-text:is(:hover, :focus-visible, :active),
.home-page .header .nav-menu-2 .menu-item-text:is(:hover, :focus-visible, :active),
.home-page .header .menu-button:is(:hover, :focus-visible, :active) {
  color: var(--hot-pink, #f36ba9) !important;
  text-shadow: none;
}

/* Keep logo padding outside its square image dimensions. */
.home-page .header .logo .image-2 {
  box-sizing: content-box;
  width: 32px;
  height: 32px;
  max-width: none;
  object-fit: contain;
}


/* Captions stay fixed and change immediately with the active slide. */
.home-page .has-fixed-caption .w-slide .project-title.description { display: none; }
.home-page .has-fixed-caption > .home-fixed-caption {
  z-index: 3;
  pointer-events: none;
  opacity: 1;
  transition: none;
  animation: none;
}
