.rs-progress{position:fixed;left:max(12px,calc(50% - 248px));top:14vh;bottom:14vh;width:1px;background:rgba(184,146,74,.22);z-index:55;opacity:0;transition:opacity .8s;pointer-events:none}
body.rs-open .rs-progress{opacity:1}
.rs-progress i{position:absolute;inset:0;background:linear-gradient(var(--gold-l),var(--gold));transform-origin:top;transform:scaleY(var(--p,0))}
.rs-progress b{position:absolute;left:-7px;top:calc(var(--p,0)*100%);width:15px;height:15px;margin-top:-7px;border-radius:50%;box-shadow:inset 4px -2px 0 0 var(--gold);filter:drop-shadow(0 0 6px rgba(230,207,152,.9));transform:rotate(-30deg)}
.rs-gate{position:relative;height:230svh;background:#dfe8f0}
.rs-gate__sticky{position:sticky;top:0;height:100svh;overflow:hidden}
.rs-gate__inside{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 24px;background:radial-gradient(circle at 50% 45%,#fffbf2,#f6efe1 55%,#e8dec8);opacity:calc(.35 + var(--g2,0)*.65)}
.rs-rays{position:absolute;inset:-30%;background:repeating-conic-gradient(from 0deg at 50% 50%,rgba(255,232,180,0) 0deg 9deg,rgba(255,228,170,.3) 11deg,rgba(255,232,180,0) 13deg 22deg);-webkit-mask:radial-gradient(circle,#000 10%,transparent 60%);mask:radial-gradient(circle,#000 10%,transparent 60%);animation:rs-spin 80s linear infinite;opacity:var(--g2,0)}
@keyframes rs-spin{to{transform:rotate(360deg)}}
.rs-gate__inside>*:not(.rs-rays){position:relative;opacity:var(--g3,0);transform:translateY(calc((1 - var(--g3,0))*24px))}
.rs-ahlan{font-family:'Amiri',serif;font-size:clamp(34px,10vw,48px);color:var(--gold-d);direction:rtl;line-height:1.5}
.rs-door{position:absolute;top:0;bottom:0;width:50%;z-index:2;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'%3E%3Crect width='40' height='40' fill='%23d3dfea'/%3E%3Cg fill='none' stroke='%23b8924a' stroke-width='.8' opacity='.75'%3E%3Crect x='10' y='10' width='20' height='20'/%3E%3Crect x='10' y='10' width='20' height='20' transform='rotate(45 20 20)'/%3E%3Ccircle cx='20' cy='20' r='3'/%3E%3C/g%3E%3C/svg%3E");box-shadow:inset 0 0 0 10px #c9d7e4,inset 0 0 0 11px rgba(184,146,74,.7),inset 0 0 60px rgba(40,60,85,.25);backface-visibility:hidden}
.rs-door:after{content:"";position:absolute;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;border:2px solid var(--gold);box-shadow:0 0 8px rgba(230,207,152,.8)}
.rs-door--l{left:0;transform-origin:0 50%;transform:perspective(1400px) rotateY(calc(var(--g2,0)*-100deg))}
.rs-door--l:after{right:16px}
.rs-door--r{right:0;transform-origin:100% 50%;transform:perspective(1400px) rotateY(calc(var(--g2,0)*100deg))}
.rs-door--r:after{left:16px}
.rs-gate__arch{position:absolute;inset:0;z-index:3;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 178' preserveAspectRatio='xMidYMid slice'%3E%3Cpath fill-rule='evenodd' fill='%23e3ebf2' d='M-60 -30H160V210H-60Z M16 168V74C16 48 33 32 50 16C67 32 84 48 84 74V168Z'/%3E%3Cpath fill='none' stroke='%23b8924a' stroke-width='.7' d='M16 168V74C16 48 33 32 50 16C67 32 84 48 84 74V168'/%3E%3Cpath fill='none' stroke='%23b8924a' stroke-width='.3' d='M12 170V73C12 45 31 28 50 11C69 28 88 45 88 73V170'/%3E%3C/svg%3E") center/cover no-repeat;transform:scale(calc(1 + var(--g3,0)*2.4));opacity:calc(1 - var(--g3,0)*.9)}
.rs-gate__cue{position:absolute;left:0;right:0;bottom:7%;z-index:4;text-align:center;font-family:'Jost',sans-serif;font-size:10px;letter-spacing:.34em;text-transform:uppercase;color:var(--blue-deep);opacity:calc(1 - var(--g2,0)*3)}
.rs-lanterns{position:absolute;top:0;left:0;right:0;height:0;z-index:4;pointer-events:none}
.rs-lantern{position:absolute;top:0;display:flex;flex-direction:column;align-items:center;transform-origin:50% 0;animation:rs-swing 5.5s ease-in-out infinite}
.rs-lantern i{display:block;width:1px;background:linear-gradient(rgba(184,146,74,.2),var(--gold))}
.rs-lantern svg{width:30px;height:auto;filter:drop-shadow(0 0 12px rgba(255,200,110,.55))}
.rs-lantern .fl{animation:rs-flicker 2.8s infinite}
@keyframes rs-swing{0%,100%{transform:rotate(3deg)}50%{transform:rotate(-3deg)}}
@keyframes rs-flicker{0%,100%{opacity:.85}40%{opacity:1}46%{opacity:.65}52%{opacity:.95}}
.rs-section:before{transform:translateY(calc(var(--py,0)*.15px))}
.rs-section,.rs-gate{min-height:100svh}
.rs-section{display:flex;flex-direction:column;justify-content:center}
.rs-moon{position:absolute;top:56px;right:38px;width:64px;height:64px;border-radius:50%;box-shadow:inset -13px 7px 0 0 #e2c886;filter:drop-shadow(0 0 16px rgba(230,207,152,.85));transform:translateY(calc(var(--py,0)*-.35px)) rotate(-18deg);z-index:1}
.rs-split .ch{display:inline-block;white-space:pre;opacity:0;transform:translateY(.45em) rotate(5deg);filter:blur(4px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1),filter .9s ease;transition-delay:calc(var(--c)*45ms + .15s)}
.rs-split.is-in .ch{opacity:1;transform:none;filter:none}
.rs-orn{display:block;width:170px;height:30px;margin:14px auto 0;overflow:visible}
.rs-orn path{fill:none;stroke:var(--gold);stroke-width:1;stroke-dasharray:420;stroke-dashoffset:420;transition:stroke-dashoffset 2.4s ease .3s}
.rs-orn circle{fill:var(--gold);opacity:0;transition:opacity .8s 1.6s}
.is-in .rs-orn path{stroke-dashoffset:0}
.is-in .rs-orn circle{opacity:1}
.rs-event.rs-reveal{opacity:0;transform:perspective(900px) rotateX(32deg) translateY(50px);transform-origin:50% 100%}
.rs-event.rs-reveal.is-in{opacity:1;transform:none;transition:transform 1.4s cubic-bezier(.2,.7,.2,1),opacity 1.1s ease}
.rs-event.rs-reveal:nth-child(2).is-in{transition-delay:.18s}
.rs-sweep{position:absolute;inset:0;z-index:8;pointer-events:none;background:linear-gradient(105deg,transparent 40%,rgba(255,250,235,.6) 50%,transparent 60%);background-size:260% 100%;background-position:160% 0;opacity:0}
.rs-stage.is-revealed .rs-sweep{animation:rs-sweep 3s ease 1.2s forwards}
@keyframes rs-sweep{0%{opacity:1;background-position:160% 0}100%{opacity:1;background-position:-60% 0}}
.rs-chapter{display:flex;align-items:center;justify-content:center;gap:12px;font-family:'Jost',sans-serif;font-size:10px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold-d);margin-bottom:6px}
.rs-chapter:before,.rs-chapter:after{content:"";width:26px;height:1px;background:var(--gold);opacity:.6}
.rs-dua-btn{margin-top:30px;border:0;cursor:pointer}
.rs-dua-note{font-style:italic;font-size:17px;color:var(--gold-d);margin-top:14px;min-height:24px;transition:opacity .6s}
.rs-sky{position:fixed;bottom:-60px;width:22px;height:30px;border-radius:42% 42% 30% 30%;background:radial-gradient(circle at 50% 72%,#fff6d2,#f3bd6b 55%,#c97b30);box-shadow:0 0 24px 9px rgba(255,190,100,.5);z-index:45;pointer-events:none;animation:rs-rise var(--t,9s) ease-in forwards}
@keyframes rs-rise{0%{transform:translate(0,0) scale(1);opacity:0}8%{opacity:1}100%{transform:translate(var(--dx,0px),-118vh) scale(.45);opacity:0}}
