.lease-visual-page .hero.small {
  min-height: 78vh;
}

.lease-visual-art {
  position: absolute;
  z-index: 1;
  inset: 76px -9vw auto auto;
  width: min(960px, 70vw);
  height: min(610px, 68vh);
  pointer-events: none;
}

.lease-visual-art::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, var(--ink) 0%, transparent 32%, transparent 100%),
    linear-gradient(180deg, var(--ink) 0%, transparent 16%, transparent 76%, var(--ink) 100%);
  opacity: 0.62;
}

.lease-visual-art img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right center;
  -webkit-mask-image: radial-gradient(ellipse at 68% 50%, #000 0%, #000 34%, rgba(0,0,0,0.58) 52%, rgba(0,0,0,0.18) 68%, transparent 84%);
  mask-image: radial-gradient(ellipse at 68% 50%, #000 0%, #000 34%, rgba(0,0,0,0.58) 52%, rgba(0,0,0,0.18) 68%, transparent 84%);
}

.lease-visual-light {
  display: block;
  opacity: 0.72;
  filter: saturate(0.9) contrast(0.95) brightness(1.03);
  mix-blend-mode: multiply;
}

.lease-visual-dark {
  display: none;
}

:root[data-theme="dark"] .lease-visual-art::after {
  background:
    linear-gradient(90deg, var(--ink) 0%, transparent 40%, transparent 100%),
    linear-gradient(180deg, var(--ink) 0%, transparent 18%, transparent 76%, var(--ink) 100%);
  opacity: 0.42;
}

:root[data-theme="dark"] .lease-visual-light {
  display: none;
}

:root[data-theme="dark"] .lease-visual-dark {
  display: block;
  opacity: 0.9;
  filter: saturate(1.04) contrast(1.08);
  mix-blend-mode: screen;
}

@media (prefers-reduced-motion: no-preference) {
  .lease-visual-art img {
    animation: lease-ambient-drift 20s ease-in-out infinite alternate;
  }
}

@keyframes lease-ambient-drift {
  from { transform: translate3d(0, 0, 0) scale(1); }
  to { transform: translate3d(-14px, 8px, 0) scale(1.025); }
}

@media (max-width: 860px) {
  .lease-visual-page .hero.small {
    min-height: auto;
  }

  .lease-visual-art {
    inset: 86px -46vw auto auto;
    width: 140vw;
    height: 390px;
    opacity: 0.62;
  }
}

@media (max-width: 560px) {
  .lease-visual-art {
    inset: 104px -92vw auto auto;
    width: 210vw;
    height: 350px;
    opacity: 0.46;
  }
}
