body.home-page.gallery-test-page:not(.home-editor) { background: #ffffff; color: #181818; overflow-x: clip; overflow-y: visible; scrollbar-width: none; }
html:has(body.gallery-test-page) { scrollbar-width: none; overflow-x: clip; }
html:has(body.gallery-test-page)::-webkit-scrollbar { display: none; }
.gallery-test-page .dashboard__content.home { padding-bottom: 0; }
.gallery-test-page .site-footer { display: none; }
.gallery-test { background: #ffffff; min-height: calc(100vh - 60px); padding: 32px clamp(16px, 3vw, 48px) 0; }
.gallery-test__intro { display: flex; justify-content: space-between; border-bottom: 1px solid #b8b8b2; padding: 0 0 14px; font-size: 10px; font-weight: 700; letter-spacing: .14em; }
.gallery-test__layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 5vw, 88px); align-items: start; }
.gallery-test__list { padding: max(32px, 38vh) 0; display: grid; gap: clamp(90px, 15vh, 160px); }
.gallery-test__item { display: block; width: min(100%, var(--gallery-preview-size, 100%)); color: inherit; text-decoration: none; }
.gallery-test__image-wrap { overflow: hidden; background: #deded9; aspect-ratio: 1 / 1; }
.gallery-test__image { display: block; width: 100%; height: 100%; object-fit: cover; }
.gallery-test__item-meta { display: flex; justify-content: space-between; gap: 10px; padding-top: 12px; text-transform: uppercase; font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.gallery-test__item-meta span:last-child { color: #777; }
.gallery-test__stage { position: sticky; top: 60px; height: max(0px, calc(100vh - var(--gallery-intro-bottom, 60px))); overflow: visible; display: flex; align-items: center; }
.gallery-test__stage-content { position: relative; z-index: 1; width: 100%; height: calc(38px + 1.15 * clamp(42px, 6.2vw, 108px) + 2 * clamp(10px, 1.5vw, 22px)); transform: translateY(-19px); }
.gallery-test__eyebrow { display: flex; justify-content: space-between; max-width: 420px; margin: 0 0 26px; color: #777; font-size: 10px; line-height: 1.2; font-weight: 700; letter-spacing: .14em; }
.gallery-test__title-window { perspective: 900px; overflow: visible; padding-block: clamp(10px, 1.5vw, 22px); height: calc(1.15 * clamp(42px, 6.2vw, 108px) + 2 * clamp(10px, 1.5vw, 22px)); box-sizing: border-box; display: flex; align-items: center; }
.gallery-test__title { margin: 0; width: max-content; max-width: none; white-space: nowrap; color: #171717; font-size: clamp(42px, 6.2vw, 108px); line-height: 1.15; font-weight: 500; letter-spacing: -.075em; overflow-wrap: anywhere; transform-origin: 50% 50%; }
.gallery-test__stage-caption { max-width: 260px; color: #777; line-height: 1.6; font-size: 12px; margin: 28px 0 30px; }
.gallery-test__link { display: inline-flex; align-items: center; gap: 30px; padding: 0 0 10px; border-bottom: 1px solid #161616; color: #161616; font-size: 10px; font-weight: 700; letter-spacing: .12em; text-decoration: none; }
.gallery-test__stage-foot { position: absolute; bottom: 26px; left: 0; right: 0; display: flex; justify-content: space-between; color: #888; font-size: 9px; font-weight: 700; letter-spacing: .12em; }
.gallery-test__empty { margin: 32px 0; color: #666; }
@media (max-width: 720px) {
  .gallery-test { padding: 22px 14px 0; }
  .gallery-test__intro { font-size: 8px; }
  .gallery-test__layout { gap: 18px; }
  .gallery-test__list { padding: max(32px, 50vh) 0; gap: 14vh; }
  .gallery-test__item-meta { font-size: 8px; letter-spacing: .04em; }
  .gallery-test__stage { top: 60px; height: max(0px, calc(100svh - var(--gallery-intro-bottom, 60px))); }
  .gallery-test__eyebrow { font-size: 8px; gap: 6px; margin-bottom: 18px; }
  .gallery-test__stage-content { height: calc(27.6px + 1.15 * clamp(27px, 7vw, 48px) + 2 * clamp(10px, 1.5vw, 22px)); transform: translateY(-13.8px); }
  .gallery-test__title { font-size: clamp(27px, 7vw, 48px); }
  .gallery-test__title-window { height: calc(1.15 * clamp(27px, 7vw, 48px) + 2 * clamp(10px, 1.5vw, 22px)); }
  .gallery-test__stage-caption { font-size: 10px; margin: 20px 0; }
  .gallery-test__link { font-size: 8px; gap: 10px; }
  .gallery-test__stage-foot { font-size: 7px; gap: 5px; bottom: 20px; }
}

@media (prefers-reduced-motion: no-preference) {
  .gallery-test__intro > span:first-child { animation: gallery-test-from-left .8s .1s both cubic-bezier(.22,.7,.2,1); }
  .gallery-test__intro > span:last-child { animation: gallery-test-from-right .8s .25s both cubic-bezier(.22,.7,.2,1); }
  .gallery-test__stage-foot > span:first-child { animation: gallery-test-from-left 1s .4s both cubic-bezier(.22,.7,.2,1); }
  .gallery-test__stage-foot > span:last-child { animation: gallery-test-from-right 1s .55s both cubic-bezier(.22,.7,.2,1); }
  .gallery-test__list.has-text-reveal .gallery-test__item-meta span { opacity: 0; transition: opacity .65s ease, transform .75s cubic-bezier(.22,.7,.2,1); }
  .gallery-test__list.has-text-reveal .gallery-test__item-meta span:first-child { transform: translateX(-24px); }
  .gallery-test__list.has-text-reveal .gallery-test__item-meta span:last-child { transform: translateX(24px); transition-delay: .1s; }
  .gallery-test__list.has-text-reveal .gallery-test__item.is-in-view .gallery-test__item-meta span { opacity: 1; transform: translateX(0); }
}
@keyframes gallery-test-from-left { from { opacity: 0; transform: translateX(-24px); } to { opacity: 1; transform: translateX(0); } }
@keyframes gallery-test-from-right { from { opacity: 0; transform: translateX(24px); } to { opacity: 1; transform: translateX(0); } }

