/* Content stays readable before JavaScript runs and when motion is reduced. */
[data-motion-title] .motion-word { display: inline-block; white-space: nowrap; }

@media (prefers-reduced-motion: no-preference) {
  .scroll-appear {
    transition: opacity .55s ease, transform .65s cubic-bezier(.2,.75,.2,1) !important;
    transition-delay: 0s !important;
  }
  .scroll-appear[data-scroll-visible="false"] {
    opacity: 0 !important;
    transform: translateY(20px) !important;
  }
  .scroll-appear[data-scroll-visible="true"] {
    opacity: 1 !important;
    transform: translateY(0) !important;
  }
  [data-motion-title] .motion-word { clip-path: inset(-.1em -.06em); }
  [data-motion-title] .motion-cut {
    display: inline-block;
    transform: translateY(0);
    transition: transform .76s cubic-bezier(.16,1,.3,1);
    transition-delay: var(--line-delay,0ms);
  }
  [data-motion-title][data-scroll-visible="false"] .motion-cut {
    transform: translateY(110%);
    transition: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .reveal, .scroll-appear, [data-motion-title] .motion-word, [data-motion-title] .motion-cut {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

.home-page .industry-included { padding-top: clamp(96px,9vw,136px); }

/* Arrows are available at every width whenever the filter rail overflows. */
.home-page .filter-rail .mobile-rail-button {
  position: absolute;
  top: calc(50% - 3px);
  z-index: 5;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid rgba(244,240,232,.22);
  border-radius: 50%;
  background: rgba(12,12,12,.96);
  color: var(--ink);
  transform: translateY(-50%);
  box-shadow: 0 0 16px 10px #070707;
  cursor: pointer;
  transition: opacity .2s ease, background .2s ease;
}
.home-page .filter-rail .rail-left { left: 0; }
.home-page .filter-rail .rail-right { right: 0; }
.home-page .filter-rail .mobile-rail-button svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.home-page .filter-rail .mobile-rail-button[data-rail-disabled="true"] {
  opacity: 0;
  pointer-events: none;
}
.home-page .filter-rail .mobile-rail-button:hover { background: #52101b; }
.home-page .filter-rail .mobile-rail-button:focus-visible { outline: 2px solid var(--red); outline-offset: 3px; }
.home-page .filter-rail .filters { padding-right: 54px; scroll-padding-inline: 54px; }
