/* Photographic scenery, independently moving details, and uncropped source artwork. */
.living-palace{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.palace-cinema{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;opacity:0;pointer-events:none}
.cinema-active>.palace-cinema{opacity:1}
.palace-cinema-shade{position:absolute;inset:0;opacity:0;pointer-events:none;background:linear-gradient(90deg,transparent 7%,#08050c73 13%,#08050ce6 23%,#08050ce6 77%,#08050c73 87%,transparent 93%);mask-image:linear-gradient(0deg,transparent 7%,#000 22%,#000 70%,transparent 90%);-webkit-mask-image:linear-gradient(0deg,transparent 7%,#000 22%,#000 70%,transparent 90%)}
.cinema-active>.palace-cinema-shade{opacity:1}
.cinema-active>.living-palace,.cinema-active>.royal-scenery{visibility:hidden}
.cinema-active>.living-palace *{animation-play-state:paused!important}
@media(max-aspect-ratio:4/5){.palace-cinema{object-fit:cover}}
.jewel-butterfly{position:absolute;top:4.4%;width:10.4%;aspect-ratio:1;perspective:700px;filter:drop-shadow(0 3px 5px #0009) drop-shadow(0 0 10px #dba34233);animation:jewel-hover 11s ease-in-out infinite alternate}
.jewel-0{left:1.8%;--tilt:-20deg}.jewel-1{right:1.8%;--tilt:20deg;animation-delay:-6s}
.jewel-part{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform-origin:50% 50%;backface-visibility:hidden}
.jewel-left{clip-path:polygon(0 0,46% 0,46% 34%,48% 45%,48% 85%,44% 100%,0 100%);animation:jewel-left-wing 4.8s cubic-bezier(.45,0,.45,1) infinite}
.jewel-right{clip-path:polygon(54% 0,100% 0,100% 100%,56% 100%,52% 85%,52% 45%,54% 34%);animation:jewel-right-wing 4.8s cubic-bezier(.45,0,.45,1) infinite}
.jewel-body{clip-path:polygon(29% 0,71% 0,71% 22%,55% 40%,52% 45%,52% 100%,48% 100%,48% 45%,45% 40%,29% 22%)}
.jewel-1 .jewel-left,.jewel-1 .jewel-right{animation-delay:-2.1s;animation-duration:5.6s}
.jewel-glint{position:absolute;left:22%;top:20%;width:8%;aspect-ratio:1;background:radial-gradient(ellipse,#fff9de,transparent 65%);opacity:0;animation:jewel-spark 7s ease-in-out infinite}
.jewel-glint:before,.jewel-glint:after{content:'';position:absolute;inset:42% -35%;background:linear-gradient(90deg,transparent,#ffeeb9,transparent)}
.jewel-glint:after{transform:rotate(90deg)}.jewel-1 .jewel-glint{left:76%;animation-delay:-3s}
.incense-plume{position:absolute;bottom:4%;height:57%;width:18%;opacity:.58;mask-image:linear-gradient(0deg,transparent,#000 10%,#000 75%,transparent);-webkit-mask-image:linear-gradient(0deg,transparent,#000 10%,#000 75%,transparent);mix-blend-mode:screen}
.incense-0{left:-2.2%}.incense-1{right:-2.2%;transform:scaleX(-1)}
.incense-plume img{position:absolute;bottom:-12%;width:100%;height:110%;object-fit:fill;opacity:0;transform-origin:50% 100%;animation:incense-rise 27s ease-in-out infinite;animation-delay:calc(var(--phase) * -9s);filter:blur(.5px)}
.incense-1 img{animation-duration:31s;animation-delay:calc(var(--phase) * -10.3s - 4s)}
.living-candle{position:absolute;width:1.5%;height:5.1%;transform:translate(-50%,-100%) scale(var(--flame-scale));transform-origin:50% 100%}
.living-flame{position:absolute;bottom:0;left:29%;width:42%;height:83%;transform-origin:50% 100%;border-radius:55% 45% 43% 43%/75% 75% 25% 25%;background:radial-gradient(ellipse at 50% 82%,#fffef4 0 18%,#fff2b2 35%,#ffd46c 55%,#ee8c2390 75%,transparent 85%);filter:drop-shadow(0 0 3px #ffcb65) drop-shadow(0 0 9px #ed8c3480);animation:flame-dance 2.7s ease-in-out infinite;animation-delay:calc(var(--phase) * -.73s)}
.living-flame i{position:absolute;bottom:0;left:35%;width:30%;height:23%;border-radius:50%;background:linear-gradient(0deg,#435a9e88,#fff4d9);filter:blur(.7px)}
.candle-aura{position:absolute;left:-160%;top:-75%;width:420%;height:240%;border-radius:50%;background:radial-gradient(ellipse,#ffc46a26,transparent 68%);mix-blend-mode:screen;animation:candle-breathe 4.1s ease-in-out infinite alternate;animation-delay:calc(var(--phase) * -1.1s)}
.palace-dust i{position:absolute;left:var(--x);top:var(--y);width:2px;height:2px;border-radius:50%;background:#f8d8a1;box-shadow:0 0 7px #ffe3a2;opacity:0;animation:palace-mote 16s linear infinite;animation-delay:calc(var(--phase) * -1.7s)}
@keyframes jewel-left-wing{0%,100%{transform:rotateY(8deg);filter:brightness(1)}45%{transform:rotateY(55deg);filter:brightness(.79)}70%{transform:rotateY(20deg);filter:brightness(1.12)}}
@keyframes jewel-right-wing{0%,100%{transform:rotateY(-8deg);filter:brightness(1)}45%{transform:rotateY(-55deg);filter:brightness(.79)}70%{transform:rotateY(-20deg);filter:brightness(1.12)}}
@keyframes jewel-hover{from{transform:translateY(0) rotate(var(--tilt))}to{transform:translateY(-.55vh) rotate(calc(var(--tilt) + 4deg))}}
@keyframes jewel-spark{0%,35%,57%,100%{opacity:0;transform:scale(.3)}45%{opacity:.9;transform:scale(1.1)}}
@keyframes incense-rise{0%{opacity:0;transform:translate(0,12%) scale(.75,1) rotate(-4deg)}20%{opacity:.22}55%{opacity:.4;transform:translate(8%,-9%) scale(1.02,1.14) rotate(4deg)}85%{opacity:.13}100%{opacity:0;transform:translate(-8%,-29%) scale(1.24,1.25) rotate(-3deg)}}
@keyframes flame-dance{0%,100%{transform:rotate(-3deg) scale(.92,1)}18%{transform:rotate(5deg) scale(1.04,.94)}39%{transform:rotate(-5deg) scale(.85,1.12)}63%{transform:rotate(3deg) scale(1.05,.97)}82%{transform:rotate(-1deg) scale(.95,1.05)}}
@keyframes candle-breathe{0%,100%{opacity:.65;transform:scale(.95)}35%{opacity:1;transform:scale(1.07)}70%{opacity:.8;transform:scale(1)}}
@keyframes palace-mote{0%,100%{opacity:0;transform:translateY(10px)}20%{opacity:.4}70%{opacity:.25}95%{opacity:0;transform:translate(12px,-45px)}}
/* Real listing flyers retain their complete rectangular composition. */
.royal-tv .agenda-item.has-source-art:after{display:none}
.royal-tv .agenda-source-art{position:absolute;left:6%;right:6%;top:2%;height:65%;padding:.7vh;background:#0a070d;border:1px solid #cfaa68;box-shadow:0 0 0 4px #0a070d,0 0 0 5px #8863396b,0 12px 28px #0008}
.royal-tv .agenda-source-art:before,.royal-tv .scene-art.has-source-art:before{content:'';position:absolute;inset:-5px;border:1px solid #e5c68c55;pointer-events:none}
.royal-tv .agenda-source-art img{width:100%;height:100%;object-fit:contain;display:block}
.royal-tv .agenda-item.has-source-art>div:last-child{left:3%;width:94%;top:72%;bottom:0;gap:.6vh;grid-template-rows:minmax(0,1fr) auto}
.royal-tv .agenda-item.has-source-art h3{font-size:clamp(21px,1.85vw,44px);line-height:1.02}
.royal-tv .agenda-item.has-source-art p{font-size:clamp(11px,.95vw,23px);line-height:1.35;max-width:95%;justify-self:center;align-self:end}
.royal-tv .agenda-list{padding-bottom:3.5vh}
.royal-tv .scene-art.has-source-art{height:94%;width:100%;padding:1.2vh;background:#0b080e;border:1px solid #d8b677;box-shadow:0 0 0 4px #0c0810,0 0 0 5px #8863396b,0 16px 40px #0007;align-self:center}
.royal-tv .scene-art.has-source-art>.altar-photo,.royal-tv .scene-art.has-source-art>.custom-video{position:static;width:100%;height:100%;max-height:100%;object-fit:contain;object-position:center;border:0;border-radius:0;box-shadow:none}
.royal-tv .scene-art.has-source-art>.royal-gilding,.royal-tv .scene-art.has-source-art>.royal-illustration{display:none}
.royal-tv .scene.event>.scene-copy h2{font-size:clamp(30px,3.3vw,79px)}
.royal-tv .scene:not(.welcome):not(.agenda):not(.practitioners-scene):not(.music-scene){grid-template-columns:1fr 1fr;gap:7%}
.royal-tv .royal-backdrop:after{display:none}
[data-motion=subtle] .jewel-part{animation-duration:6.5s}
[data-motion=subtle] .incense-plume{opacity:.48}
.motion-paused *{animation-play-state:paused!important}
[data-motion=off] .living-palace *{animation:none!important}
[data-motion=off] .incense-plume img{opacity:0}
[data-motion=off] .incense-plume img:first-child{opacity:.22}
@media(prefers-reduced-motion:reduce){.living-palace *{animation:none!important}.incense-plume img{opacity:0}.incense-plume img:first-child{opacity:.22}}
@media(max-aspect-ratio:4/5){.jewel-butterfly{width:15%;top:2%}.incense-plume{width:25%;opacity:.3}.living-candle{display:none}.royal-tv .agenda-source-art{left:3%;right:3%;height:58%}.royal-tv .agenda-item.has-source-art>div:last-child{top:65%}.royal-tv .agenda-item.has-source-art h3{font-size:16px}.royal-tv .agenda-item.has-source-art p{font-size:8px}.royal-tv .scene:not(.welcome):not(.agenda):not(.practitioners-scene):not(.music-scene){grid-template-columns:1fr;gap:3%}.royal-tv .scene-art.has-source-art{width:85%;height:94%}.royal-tv .scene.event>.scene-copy h2{font-size:28px}}
