/* The overlays are light and water; the original painted objects remain intact. */
.shrine-scene-photo .shrine-station,.shrine-scene-photo .shrine-station.is-hovering{filter:none;transition:none}
.shrine-scene-photo .shrine-photo-highlight{opacity:0;transition:opacity .3s ease;pointer-events:none}
.shrine-scene-photo .shrine-station.is-hovering .shrine-photo-highlight{opacity:.13}
.shrine-scene-photo .shrine-station.is-active .shrine-photo-highlight{animation:shrine-photo-response 1.1s ease both}
.shrine-photo-water-core{opacity:.3}
.shrine-photo-flow{opacity:.86;stroke-dasharray:9 12;animation:shrine-photo-flow 2.8s linear infinite;filter:drop-shadow(.6px 0 .4px #41686088)}
.shrine-photo-flow-secondary{stroke-dasharray:5 16;animation-duration:3.6s;animation-delay:-1.2s;opacity:.68}
.shrine-photo-drop{opacity:0;animation:shrine-photo-drop 3.2s linear infinite}
.shrine-photo-drop-two{animation-delay:-1.6s;animation-duration:3.7s}
.shrine-photo-ripple{transform-box:fill-box;transform-origin:center;opacity:0;animation:shrine-photo-ripple 6.6s ease-out infinite}
.shrine-photo-ripple-two{animation-delay:-2.2s}.shrine-photo-ripple-three{animation-delay:-4.4s}
.shrine-station.is-active .shrine-photo-flow{opacity:1;stroke-width:3;animation-duration:.7s}
.shrine-station.is-active .shrine-photo-drop{animation-duration:.7s}
.shrine-station.is-active .shrine-photo-ripple{animation-duration:1.65s}
.shrine-photo-water-flash{opacity:0;pointer-events:none}
.shrine-station.is-active .shrine-photo-water-flash{animation:shrine-photo-splash 1.4s ease both}
.shrine-bell-layer{transform-box:view-box;transform-origin:650px 273px}
.shrine-station.is-active .shrine-bell-layer{animation:shrine-bell-pendulum 1.85s ease-in-out both}
.shrine-scene-photo .shrine-knot-slot{display:none}
.shrine-photo-new-knot{opacity:0;transform-origin:1047px 416px;transition:opacity .4s ease}
.shrine-knot-slot:has(.shrine-new-knot)+.shrine-photo-new-knot{opacity:1}
.shrine-station.is-active .shrine-knot-slot:has(.shrine-new-knot)+.shrine-photo-new-knot{animation:shrine-photo-knot-tie .85s ease both}
.rakko-shrine:is([data-visible="false"],[data-page-hidden="true"]) :is(.shrine-photo-flow,.shrine-photo-ripple,.shrine-photo-drop){animation-play-state:paused}
@keyframes shrine-photo-flow{to{stroke-dashoffset:-42}}
@keyframes shrine-photo-drop{0%{transform:translateY(0);opacity:0}9%,84%{opacity:.9}100%{transform:translateY(77px);opacity:0}}
@keyframes shrine-photo-ripple{0%{transform:scale(.25);opacity:0}18%{opacity:.75}75%{opacity:.35}100%{transform:scale(1.7);opacity:0}}
@keyframes shrine-photo-response{0%,100%{opacity:0}35%{opacity:.2}65%{opacity:.11}}
@keyframes shrine-photo-splash{0%,100%{opacity:0}20%,50%{opacity:.65}35%,70%{opacity:.18}}
@keyframes shrine-bell-pendulum{0%,100%{transform:rotate(0deg)}13%{transform:rotate(9deg)}29%{transform:rotate(-7.2deg)}45%{transform:rotate(5.5deg)}61%{transform:rotate(-3.7deg)}76%{transform:rotate(2.1deg)}89%{transform:rotate(-.9deg)}}
@keyframes shrine-photo-knot-tie{0%{opacity:0;transform:translateY(-7px) rotate(-5deg)}55%{opacity:1;transform:rotate(3deg)}100%{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.shrine-scene-photo *{animation:none!important;transition:none!important}.shrine-photo-flow{opacity:.2}.shrine-photo-ripple,.shrine-photo-drop{opacity:0}}
:root[data-motion="reduced"] .shrine-scene-photo *{animation:none!important;transition:none!important}
:root[data-motion="reduced"] .shrine-photo-flow{opacity:.2}
:root[data-motion="reduced"] :is(.shrine-photo-ripple,.shrine-photo-drop){opacity:0}
