.dio{background:var(--shadow);overflow:clip}.dio-layer{position:absolute;inset:0;pointer-events:none;transform:translateZ(0);will-change:transform}body:has(.dio) .gwc-backdrop{display:none}@media (max-aspect-ratio:1/1){.dio-zoom .dio-layer{inset:0 -20%}}@media (max-aspect-ratio:4/5){.dio-zoom .dio-layer{inset:0 -40%}}.dio-interactive{pointer-events:auto}.dio-interactive.dio-overlay{pointer-events:none}.dio-overlay .hotspot{pointer-events:auto}.dio-sprites,.dio-sprites-scene{position:absolute;left:0;top:0;pointer-events:none}.dio-sprites-scene{width:1600px;height:900px}.dio-sprites-nest{position:absolute;left:0;top:0;width:0;height:0;pointer-events:none}.dio-sprite{position:absolute}.dio-sprite-measuring{left:0;top:0;width:1600px;height:900px;visibility:hidden}.dio-sprite-art{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible}.dio [data-place].hotspot:focus-visible .hotspot-art,.dio [data-place].hotspot:hover .hotspot-art{filter:none;transform:none}.dio [data-place].hotspot[aria-disabled=true]:focus-visible .hotspot-art,.dio [data-place].hotspot[aria-disabled=true]:hover .hotspot-art{filter:saturate(.4) opacity(.8);transform:none}.hotspot-glow{opacity:0;transition:opacity .18s ease;will-change:opacity}.hotspot-glow-on{opacity:var(--glow,1)}.hotspot-outline{opacity:0;transition:opacity .16s ease;will-change:opacity}.hotspot-outline-on{opacity:1}.dio-plaques{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.dio-blur{filter:blur(7px)}.dio-hud{position:absolute;inset:0;pointer-events:none}.dio-hud>*{pointer-events:auto}.dio-vignette{background:radial-gradient(ellipse 70% 72% at 50% 48%,transparent 50%,var(--shadow) 125%)}.dio-curtain,.dio-vignette{position:absolute;inset:0;pointer-events:none}.dio-curtain{background:var(--shadow);opacity:1}.dio-curtain-lift{opacity:0;animation:dio-curtain 1.2s ease-out both}.dio-dangle,.dio-drop,.dio-orbit,.dio-pop,.dio-ride,.dio-rock,.dio-spin,.dio-sweep,.dio-swing{transform-box:view-box;transform-origin:0 0}.dio-breathe,.dio-flag,.dio-flap,.dio-flutter,.dio-moon-halo,.dio-shimmer{transform-box:fill-box}.dio-spin{animation:dio-spin 60s linear infinite}.dio-reverse{animation-direction:reverse}.dio-rock{animation:dio-rock 2.8s ease-in-out infinite alternate}.dio-gallop{animation:dio-gallop 1.6s ease-in-out infinite alternate}.dio-ride{offset-rotate:auto;animation:dio-ride 7s cubic-bezier(.45,0,.55,1) infinite}.dio-twinkle{animation:dio-twinkle 2.4s ease-in-out infinite}.dio-drift{animation:dio-drift 80s ease-in-out infinite alternate}.dio-sweep-left{animation:dio-sweep-left 10s ease-in-out infinite alternate}.dio-sweep-right{animation:dio-sweep-right 10s ease-in-out infinite alternate}.dio-moon-halo{transform-origin:50% 50%;animation:dio-halo 6s ease-in-out infinite alternate}.dio-chase{animation:dio-chase 2.4s linear infinite}.dio-flicker{animation:dio-flicker 3.1s steps(1) infinite}.dio-flicker-soft{animation:dio-flicker-soft 5.3s steps(1) infinite}.dio-power{animation:dio-power 1.3s steps(1) .5s both}.dio-glow{animation:dio-glow 3.4s ease-in-out infinite alternate}.dio-neon{animation:dio-neon 7s steps(1) infinite}.dio-neon-bad{animation:dio-neon-bad 2.3s steps(1) infinite}.dio-drop{animation:dio-drop 1.2s cubic-bezier(.3,0,.3,1) .2s both}.dio-arrived .dio-drop,.dio-arrived .dio-power{animation:none}.dio-swing{animation:dio-swing 4.2s ease-in-out 1.4s infinite alternate}.dio-flag{transform-origin:0 50%;animation:dio-flag .9s ease-in-out infinite alternate}.dio-flutter{transform-origin:50% 0;animation:dio-flutter 1.5s ease-in-out infinite alternate}.dio-dangle{animation:dio-dangle 2.6s ease-in-out infinite alternate}.dio-rise{animation:dio-rise 18s linear infinite}.dio-orbit{animation:dio-orbit 3s linear infinite}.dio-flap{animation:dio-flap .12s linear infinite alternate}.dio-flap,.dio-shimmer{transform-origin:50% 50%}.dio-shimmer{animation:dio-shimmer 2.2s ease-in-out infinite alternate}.dio-fog{animation:dio-fog 40s ease-in-out infinite alternate}.dio-firefly{animation:dio-firefly 7s ease-in-out infinite}.dio-pop{animation:dio-pop .7s cubic-bezier(.34,1.56,.64,1) 1.5s both}.dio-breathe{transform-origin:50% 100%;animation:dio-breathe 1.1s ease-in-out 2.2s infinite alternate}.dio-press{transition:transform 90ms ease-out}.dio-button:active .dio-press{transform:translateY(10px)}@keyframes dio-spin{to{transform:rotate(1turn)}}@keyframes dio-rock{0%{transform:rotate(-7deg)}to{transform:rotate(7deg)}}@keyframes dio-gallop{0%{transform:translateY(-14px)}to{transform:translateY(12px)}}@keyframes dio-ride{0%{offset-distance:0}to{offset-distance:100%}}@keyframes dio-twinkle{0%,to{opacity:.9}50%{opacity:.25}}@keyframes dio-drift{0%{transform:translateX(-140px)}to{transform:translateX(140px)}}@keyframes dio-sweep-left{0%{transform:rotate(-38deg)}to{transform:rotate(8deg)}}@keyframes dio-sweep-right{0%{transform:rotate(38deg)}to{transform:rotate(-8deg)}}@keyframes dio-halo{0%{transform:scale(.94);opacity:.8}to{transform:scale(1.06);opacity:1}}@keyframes dio-chase{0%,to{opacity:.45}6%{opacity:1}22%{opacity:.45}}@keyframes dio-flicker{0%{opacity:1}7%{opacity:.15}9%{opacity:1}11%{opacity:.2}14%{opacity:1}52%{opacity:.3}55%{opacity:1}80%{opacity:.1}81%{opacity:1}}@keyframes dio-flicker-soft{0%{opacity:1}41%{opacity:.6}43%{opacity:1}77%{opacity:.75}78%{opacity:1}}@keyframes dio-power{0%{opacity:.08}18%{opacity:1}24%{opacity:.1}38%{opacity:1}44%{opacity:.3}58%{opacity:1}}@keyframes dio-glow{0%{opacity:.8}to{opacity:1}}@keyframes dio-neon{0%{opacity:1}61%{opacity:.4}62%{opacity:1}64%{opacity:.5}65%{opacity:1}}@keyframes dio-neon-bad{0%{fill-opacity:1;stroke-opacity:1}30%{fill-opacity:.1;stroke-opacity:.15}34%{fill-opacity:1;stroke-opacity:1}38%{fill-opacity:.1;stroke-opacity:.15}70%{fill-opacity:1;stroke-opacity:1}}@keyframes dio-drop{0%{transform:translateY(-520px)}55%{transform:translateY(22px)}72%{transform:translateY(-10px)}86%{transform:translateY(4px)}to{transform:translateY(0)}}@keyframes dio-swing{0%{transform:rotate(-1.6deg)}to{transform:rotate(1.6deg)}}@keyframes dio-flag{0%{transform:scaleX(1) skewY(0deg)}to{transform:scaleX(.82) skewY(7deg)}}@keyframes dio-flutter{0%{transform:rotate(-9deg)}to{transform:rotate(9deg)}}@keyframes dio-dangle{0%{transform:rotate(-12deg)}to{transform:rotate(10deg)}}@keyframes dio-rise{0%{transform:translate(0);opacity:0}6%{opacity:1}30%{transform:translate(-26px,-240px)}60%{transform:translate(22px,-500px)}88%{opacity:1}to{transform:translate(-10px,-820px);opacity:0}}@keyframes dio-orbit{to{transform:rotate(1turn)}}@keyframes dio-flap{0%{transform:scaleY(1)}to{transform:scaleY(.2)}}@keyframes dio-shimmer{0%{transform:scaleX(.85);opacity:.7}to{transform:scaleX(1.15);opacity:1}}@keyframes dio-fog{0%{transform:translateX(-260px)}to{transform:translateX(260px)}}@keyframes dio-firefly{0%,to{transform:translate(0);opacity:0}20%{opacity:1}50%{transform:translate(34px,-46px);opacity:.8}75%{transform:translate(-18px,-70px);opacity:1}95%{opacity:0}}@keyframes dio-pop{0%{transform:scale(0)}60%{transform:scale(1.12)}80%{transform:scale(.95)}to{transform:scale(1)}}@keyframes dio-breathe{0%{transform:scale(1.035,.965)}to{transform:scale(.985,1.02)}}@keyframes dio-curtain{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.dio,.dio *{animation:none!important;transition:none!important}.dio-layer{transform:none}}:is(.dio,.entrance) .font-marquee{font-family:var(--font-marquee);letter-spacing:.03em}.dio-back{position:absolute;left:12px;top:12px;display:inline-flex;align-items:center;gap:6px;padding:6px 14px 4px;border-radius:8px;border:2px solid var(--brass);background:url(/textures/wood.webp),var(--wood-lit);box-shadow:0 0 0 2px var(--wood-dark),inset 0 10px 16px -10px color-mix(in srgb,var(--bulb) 38%,transparent),0 6px 14px var(--shadow);color:var(--stripe);font-family:var(--font-marquee);font-size:22px;line-height:1;letter-spacing:.04em}.dio-back.dio-onward{left:auto;right:12px}.dio-back:focus-visible,.dio-back:hover{color:var(--bulb);outline:none;box-shadow:0 0 0 2px var(--wood-dark),0 0 16px var(--bulb)}