/* hero — the split screen at the top */

#hero .hero__stage { min-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)); }

/* random stagger, --d is set per element in hero.js */
.js #hero .reveal { opacity: 0; transform: translateY(12px); }
.js #hero .reveal.is-in {
  opacity: 1;
  transform: none;
  transition: opacity .9s ease, transform 1s var(--ease-out);
  transition-delay: var(--d, 0ms);
}
@media (prefers-reduced-motion: reduce) {
  .js #hero .reveal,
  .js #hero .reveal.is-in { opacity: 1; filter: none; transition: none; }
}

.press img { opacity: .42; transition: opacity .3s ease; }
.press img:hover { opacity: .8; }


/* featured compound slider */
.feat__layer {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity .35s ease;
}
.feat__still.is-on { opacity: 1; }
#feat-media.is-hovering .feat__clip.is-on { opacity: 1; }

.feat__swap { transition: opacity .2s ease; }
.feat__swap.is-fading { opacity: 0; }

.feat__dot { width: 5px; height: 5px; border-radius: 9999px; background: rgba(255,255,255,.3); transition: background .2s; }
.feat__dot.is-on { background: #fff; }


/* batch lookup — no borders anywhere in here */
.lot, .lot .lot__field { box-shadow: none !important; }
.lot::before, .lot .lot__field::before { display: none !important; }
.lot__field:focus-within { box-shadow: inset 0 1px 1px rgba(255,255,255,.1), 0 0 0 1.5px rgba(255,255,255,.55); }
#lot-input,
#lot-input:focus,
#lot-input:focus-visible { outline: none; }
