#lph .lph-thread{position:absolute;inset:0;width:100%;pointer-events:none;z-index:1;overflow:hidden;color:#b3975c}
#lph .lph-thread path{fill:none;stroke:currentColor;stroke-width:1;vector-effect:non-scaling-stroke}
#lph .thread-base{opacity:.15}#lph .thread-progress{opacity:.6;stroke-dasharray:1000;stroke-dashoffset:1000}#lph .lph-thread circle{fill:#e4c991}
#lph .piece-visual img,#lph .button,#lph .lph-inquiry,#lph .model-note svg{transition:transform .55s cubic-bezier(.16,1,.3,1),background .25s,color .25s}
@media(hover:hover) and (prefers-reduced-motion:no-preference){#lph .piece-visual:hover img{transform:scale(1.025)}#lph .button-light:hover{background:#ddc89d}#lph .lph-inquiry:hover{background:#28563f}#lph .text-link:hover{color:#dfc694}}
@media(max-width:1023px){#lph .lph-thread{display:none}}
@media(prefers-reduced-motion:reduce){html:has(body.lph-page){scroll-behavior:auto}#lph *,#lph *::before,#lph *::after{animation:none!important;transition:none!important}#lph .lph-thread{display:none}#lph .piece-visual img{transform:none!important}}

@keyframes lph-photo-arrive{from{opacity:.86;translate:0 12px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:no-preference){#lph .piece.lph-arrived{animation:lph-photo-arrive .7s cubic-bezier(.16,1,.3,1) both}}
@media(min-width:1024px) and (prefers-reduced-motion:no-preference){#lph .exhibition{transform:translateY(var(--lph-depth,0px))}}
