.js .rv.rv-l:not(.rv-on){transform:translateX(-56px)}
.js .rv.rv-r:not(.rv-on){transform:translateX(56px)}
.js .rv.rv-s:not(.rv-on){transform:scale(.88)}
.js .rv{transition-delay:var(--d,0s)}
.orb{position:absolute;border-radius:50%;filter:blur(36px);background:radial-gradient(circle,rgba(212,175,55,.38),rgba(212,175,55,0) 70%);pointer-events:none;z-index:1;animation:flo 9s ease-in-out infinite}
.orb.a{width:340px;height:340px;left:-80px;top:8%}
.orb.b{width:260px;height:260px;right:-60px;top:38%;animation-delay:-3s;animation-duration:12s}
.orb.c{width:200px;height:200px;left:55%;bottom:-60px;animation-delay:-6s}
@keyframes flo{0%,100%{translate:0 0}50%{translate:26px -38px}}
.wd{display:inline-block;opacity:0;transform:translateY(.7em) rotate(4deg);animation:wd .85s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--i) * 80ms + .15s)}
@keyframes wd{to{opacity:1;transform:none}}
.rot{display:inline-block;color:#E6C46A;font-weight:700;min-width:5ch;transition:opacity .35s,transform .35s}
.rot.out{opacity:0;transform:translateY(-.4em)}
.marq,.slide-w{display:none!important}
.spot{position:relative;overflow:hidden}
.spot:after{content:"";position:absolute;inset:0;background:radial-gradient(280px circle at var(--mx,50%) var(--my,50%),rgba(212,175,55,.2),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none}
.spot:hover:after{opacity:1}
.story{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:56px;text-align:left;align-items:start}
.story-stage{position:sticky;top:90px;height:min(58vh,430px);display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #4a3c18;border-radius:28px;background:radial-gradient(circle at 50% 100%,rgba(212,175,55,.3),#141210 70%)}
.story-stage small{font-size:17px;letter-spacing:.3em;color:#E6C46A;font-weight:600}
.story-stage strong{font-size:clamp(46px,8vw,104px);line-height:1;font-weight:700;letter-spacing:-.03em;text-align:center;padding:0 12px;background:linear-gradient(180deg,#f6e9b0,#B8912B);-webkit-background-clip:text;background-clip:text;color:transparent}
.st{min-height:56vh;display:flex;flex-direction:column;justify-content:center}
.js .st{opacity:.3;transition:opacity .45s}
.js .st.on{opacity:1}
.st h3{font-size:clamp(26px,3.2vw,38px);letter-spacing:-.01em;margin:0 0 10px}
.st p{font-size:19px;line-height:1.5;margin:0;color:#d2d2d7}
@media(max-width:800px){
.story{grid-template-columns:1fr;gap:0;margin-top:36px}
.story-stage{grid-row:1;grid-column:1;top:52px;height:110px;z-index:2;align-self:start;background:#0b0a08;border-radius:0 0 20px 20px}
.story-stage strong{font-size:44px}
.steps{grid-row:1;grid-column:1;padding-top:140px}
.st{min-height:42vh}
}
.swipe{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:22px 6px 30px;margin:30px -6px 0;text-align:left;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#B8912B transparent}
.swipe>*{flex:0 0 min(340px,84%);scroll-snap-align:center}
@media(min-width:1100px){.swipe.c3,.swipe.c4{justify-content:center;overflow:visible}.swipe.c4>*{flex-basis:250px}}
.hint{font-size:14px;color:#a1a1a6;margin:14px 0 0}
@media(min-width:1100px){.hint{display:none}}
.pillrow{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:30px}
.pillrow span{border:1px solid #4a3c18;border-radius:980px;padding:10px 18px;font-size:16px;font-weight:600;background:#141210;color:#f5f5f7}
.pillrow.l span{background:#fff;color:#1d1d1f;border-color:#d8cfae}
.big{font-size:clamp(24px,3.4vw,40px);line-height:1.25;font-weight:700;letter-spacing:-.02em;max-width:880px;margin:0 auto}
.three{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-top:40px}
.three div{border:1px solid #4a3c18;border-radius:22px;padding:24px 18px;background:#141210}
.three b{display:block;font-size:clamp(26px,3.4vw,38px);letter-spacing:-.02em}
.three span{display:block;font-size:15px;color:#c7c7cc;margin-top:6px}
@media(prefers-reduced-motion:reduce){
.orb{animation:none}
.wd{animation:none;opacity:1;transform:none}
}