/* V17 — restrained editorial polish */
html.dm-v17{scroll-behavior:smooth}

/* Fine page-progress hairline */
.dm-scroll-progress{
  position:fixed;left:0;top:0;width:100%;height:2px;
  background:rgba(249,243,230,.78);
  transform:scaleX(0);transform-origin:left center;
  z-index:2147483647;pointer-events:none;
  will-change:transform;
}

/* Gentle image depth on desktop, without changing layout. */
@media (hover:hover) and (pointer:fine){
  .vertical-grid__item,
  .client-gallery__collection-item__photo-wrapper,
  .gallery-grid figure{
    overflow:hidden;
  }
  .vertical-grid__photo,
  .client-gallery__collection-item__photo,
  .gallery-grid figure img{
    transition:transform .7s cubic-bezier(.22,.61,.36,1),filter .7s ease;
  }
  .vertical-grid__item:hover .vertical-grid__photo,
  .client-gallery__collection-item:hover .client-gallery__collection-item__photo,
  .gallery-grid figure:hover img{
    transform:scale(1.012);
    filter:saturate(1.025) contrast(1.01);
  }
  .client-gallery__collection-item:hover .client-gallery__collection-item__title{
    letter-spacing:.045em;
    transition:letter-spacing .45s ease;
  }
}

/* Modern lightbox atmosphere, while retaining the existing fade-up. */
.dm-lightbox{
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.dm-lightbox img{
  box-shadow:0 24px 80px rgba(0,0,0,.32);
}

/* Very subtle editorial section reveal. */
.dm-v17-section{
  opacity:0;
  transform:translateY(14px);
  transition:opacity .75s cubic-bezier(.22,.61,.36,1),
             transform .75s cubic-bezier(.22,.61,.36,1);
}
.dm-v17-section-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html.dm-v17{scroll-behavior:auto}
  .dm-v17-section{opacity:1;transform:none;transition:none}
}
