/* Miranda × Rituals – scroll sekvence. Barvy a rozvrzeni navazuji na prototyp (rp-*). */
.rs-story{--rs-bg:#f8f8f6;--rs-green:#008743;--rs-accent:#00e676;background:var(--rs-bg);border-block:1px solid #e4e5df;color:#111713;font-family:var(--font-sans),Arial,sans-serif;position:relative;isolation:isolate;box-sizing:border-box}
.rs-story *{box-sizing:border-box}
.rs-story button,.rs-story input{font:inherit}
.rs-story button{cursor:pointer;-webkit-tap-highlight-color:transparent}
.rs-story button:focus-visible,.rs-story a:focus-visible,.rs-story input:focus-visible{outline:3px solid var(--rs-green);outline-offset:6px}
.rs-sticky{max-width:1520px;margin:auto;padding:26px clamp(24px,4vw,64px) 18px}
.rs-topline{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;line-height:1;letter-spacing:.18em;text-transform:uppercase;color:#747874;gap:24px}
.rs-topline>span:first-child{display:flex;gap:9px;align-items:center;color:#747874}
.rs-topline i{width:7px;height:7px;background:#48e676;border-radius:50%;box-shadow:0 0 0 5px rgba(72,230,118,.12)}
.rs-hint{letter-spacing:.04em;font-weight:400}.rs-hint b{font-size:20px;margin-left:15px;font-weight:400;color:var(--rs-green)}
.rs-layout{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(0,1.35fr);align-items:center}
.rs-copy{position:relative;z-index:2;max-width:520px}
.rs-chapter{padding:24px 0}
.rs-eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rs-green);margin:0 0 18px}.rs-eyebrow span{color:#8a908a;margin-left:9px}
.rs-chapter h2{font-size:var(--text-display-s,clamp(30px,4.5vw,48px));font-weight:var(--text-display-s--font-weight,500);line-height:var(--text-display-s--line-height,1.05);letter-spacing:var(--text-display-s--letter-spacing,-.03em);margin:0;max-width:500px;text-wrap:balance}
.rs-chapter h2 em{font-family:var(--font-serif),Georgia,serif;font-style:italic;font-weight:400;color:var(--rs-green);display:block}
.rs-body{font-size:clamp(15px,1.1vw,17px);line-height:1.55;letter-spacing:-.012em;color:#6c736c;max-width:370px;margin:20px 0 0}
.rs-cta{display:inline-flex;align-items:center;gap:18px;background:#10281b;color:#fff!important;text-decoration:none;padding:14px 20px;border-radius:999px;font-size:13px;font-weight:650;margin-top:20px}
.rs-cta span{font-size:21px;color:var(--rs-accent)}.rs-cta:hover{background:#174b2d}
/* vizual: pomer 1040:950 = pomer renderu; okraje se rozplynou do pozadi stranky */
.rs-visual{position:relative;width:100%;aspect-ratio:1040/950;min-width:0;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 6%,#000 92%,transparent 100%);
  -webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 6%,#000 92%,transparent 100%);mask-composite:intersect}
.rs-visual img,.rs-visual canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.rs-poster-end{display:none}
.rs-canvas{opacity:0}
.rs-story.rs-live .rs-canvas{opacity:1}
.rs-story.rs-live .rs-poster{visibility:hidden}
.rs-bottom{position:relative;z-index:3}
.rs-chapters{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.rs-chapters button{position:relative;background:none;border:0;border-top:1px solid #d8ddd6;text-align:left;padding:17px 0 10px;color:#8b9189;font-size:12px;display:flex;align-items:center;gap:14px}
.rs-chapters button>span{font-size:10px;color:#a3a79f;letter-spacing:.06em}
.rs-chapters button i{position:absolute;inset:-1px 0 auto;height:2px;background:#00c765;transform-origin:left;transform:scaleX(var(--rs-step,0))}
.rs-chapters button[aria-current]{color:#13281b;font-weight:600}.rs-chapters button[aria-current]>span{color:var(--rs-green)}
.rs-caption{display:flex;justify-content:space-between;color:#93998f;font-size:10px;letter-spacing:.015em;margin-top:7px}
.rs-scrubber{position:absolute;width:1px;height:1px;opacity:0;left:-10000px}
.rs-scrubber:focus-visible{position:static;opacity:1;width:100%;height:25px;accent-color:var(--rs-green);margin-top:14px}
/* scroll rezim */
.rs-story.rs-ready{height:460svh;min-height:2400px}
.rs-story.rs-ready .rs-sticky{position:sticky;top:var(--rs-top,0px);height:calc(100svh - var(--rs-top,0px));display:flex;flex-direction:column;overflow:hidden}
.rs-story.rs-ready .rs-layout{flex:1;min-height:0}
.rs-story.rs-ready .rs-copy{height:min(390px,54svh);display:flex;align-items:center}
.rs-story.rs-ready .rs-chapter{position:absolute;left:0;right:0;top:50%;translate:0 -50%;padding:0;opacity:0;will-change:opacity,transform}
.rs-story.rs-ready .rs-chapter:first-child{opacity:1}
.rs-story.rs-ready .rs-visual{max-height:calc(100svh - 165px);width:auto;height:100%;justify-self:center}
/* staticky rezim (omezeni pohybu, usporne pripojeni): texty pod sebou, uvodni a zaverecny snimek */
.rs-story.rs-static .rs-layout{align-items:start;grid-template-columns:1fr 1fr;gap:40px}
.rs-story.rs-static .rs-visual{position:sticky;top:30px}
.rs-story.rs-static .rs-canvas,.rs-story.rs-static .rs-hint,.rs-story.rs-static .rs-chapters,.rs-story.rs-static .rs-scrubber{display:none}
.rs-story.rs-static .rs-chapter h2{font-size:clamp(30px,3.3vw,50px)}
@media(max-width:1000px){.rs-layout{grid-template-columns:minmax(260px,.85fr) minmax(0,1.25fr)}.rs-sticky{padding:24px 30px 17px}.rs-chapter h2{font-size:40px}.rs-body{font-size:15px}.rs-chapters{gap:18px}}
@media(max-width:760px){
  .rs-sticky{padding:20px 22px 12px}.rs-topline{font-size:10px}.rs-hint{font-size:9px}.rs-hint b{margin-left:5px;font-size:15px}
  .rs-layout{display:flex;flex-direction:column;align-items:stretch}.rs-copy{max-width:none}
  .rs-story.rs-ready{height:390svh;min-height:2000px}
  .rs-story.rs-ready .rs-copy{height:215px;flex:0 0 215px;margin-top:26px}
  .rs-story.rs-ready .rs-chapter{top:0;translate:0}
  .rs-eyebrow{margin-bottom:14px;font-size:11px}.rs-chapter h2{font-size:clamp(31px,7.8vw,45px);letter-spacing:-.049em;line-height:1.07}
  .rs-body{font-size:14px;line-height:1.5;margin-top:16px}.rs-cta{font-size:11px;padding:11px 14px;margin-top:14px;gap:16px}
  .rs-story.rs-ready .rs-visual{flex:1;min-height:0;height:auto;max-height:none;width:100%}
  .rs-chapters{gap:12px}.rs-chapters button{font-size:10px;gap:5px;padding-top:13px}.rs-chapters button>span{font-size:8px}
  .rs-story.rs-static .rs-layout{display:flex;flex-direction:column}.rs-story.rs-static .rs-visual{position:static;order:-1}
}
@media(prefers-reduced-motion:reduce){.rs-story *{animation:none!important;transition:none!important;will-change:auto!important}}
/* 3D varianta: popisky piktogramů (HTML, ve všech jazycích) */
.rs-labels{position:absolute;inset:0;pointer-events:none}
.rs-label{position:absolute;left:0;top:0;display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:550;letter-spacing:.06em;text-transform:uppercase;color:#2b3a31;white-space:nowrap;opacity:0;will-change:transform,opacity}
.rs-label i{width:6px;height:6px;border-radius:50%;background:#9aa39a;transition:background .2s}
.rs-label.is-on i{background:#00e676;box-shadow:0 0 0 4px #00e67622}
.rs-story.rs-3d .rs-visual{-webkit-mask-image:none;mask-image:none}
.rs-story.rs-static .rs-labels{display:none}
@media(max-width:760px){.rs-label{font-size:9px;gap:5px}}
/* Verze 2 – mockup iPhonu 15 Pro (427,6 × 888 pt, displej 393 × 852 pt) a produkt před mockupy */
.rj-v2 .rs-chapters{grid-template-columns:repeat(5,1fr);gap:20px}
.rj-v2 .rs-visual{-webkit-mask-image:none;mask-image:none}
.rj-v2:not(.rs-ready):not(.rs-static){height:500svh;min-height:2700px}
.rj-v2.rs-ready{height:500svh;min-height:2700px}
.rj-v2.rs-ready .rj-stage{width:100%;height:100%;max-height:660px;aspect-ratio:auto;justify-self:stretch;align-self:center;position:relative;perspective:1800px;perspective-origin:44% 45%}
.rj-glow{position:absolute;left:0;top:0;border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.95),rgba(236,236,231,.55) 55%,rgba(248,248,246,0) 100%);pointer-events:none;will-change:transform,opacity}
.rj-prod{position:absolute;left:0;top:0;transform-origin:50% 50%;will-change:transform,opacity;pointer-events:none}
.rj-prod-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 26px 30px rgba(60,20,20,.22)) drop-shadow(0 4px 6px rgba(60,20,20,.16))}
.rj-prod-shadow{position:absolute;left:8%;right:8%;bottom:-2.6%;height:6%;border-radius:50%;background:radial-gradient(closest-side,rgba(40,16,16,.34),rgba(40,16,16,0));filter:blur(6px)}
/* --- iPhone 15 Pro --- */
.ip{position:absolute;left:0;top:0;box-sizing:border-box;transform-origin:50% 50%;will-change:transform,opacity;backface-visibility:hidden}
.ip-frame{position:absolute;inset:0;padding:9px;border-radius:73px;box-sizing:border-box;
  background:linear-gradient(135deg,#dcdad4 0%,#9a9891 20%,#cbc9c2 46%,#7d7b75 72%,#bdbbb4 100%);
  box-shadow:inset 0 0 0 1.2px rgba(255,255,255,.55),inset 0 0 0 2.4px rgba(60,58,54,.35),0 1px 1px rgba(16,24,20,.12),0 10px 18px -4px rgba(16,24,20,.16),0 36px 56px -16px rgba(16,24,20,.24),0 84px 120px -40px rgba(16,24,20,.32)}
.ip-bezel{position:relative;width:100%;height:100%;box-sizing:border-box;padding:8.9px 8.3px;border-radius:64px;background:#050506;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.06),inset 0 1px 3px rgba(0,0,0,.9)}
.ip-screen{position:relative;width:393px;height:852px;border-radius:55px;overflow:hidden;background:#fff;isolation:isolate}
.ip-band{position:absolute;left:0;top:0;width:100%;height:54px;z-index:3}
.ip-time{position:absolute;left:52px;top:17px;font:600 17px/22px -apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Arial,sans-serif;letter-spacing:-.2px}
.ip-sys{position:absolute;right:36px;top:20px;width:68px;height:14px}
.ip-view{position:absolute;left:0;top:54px;width:100%;height:798px;overflow:hidden}
.ip-page{position:absolute;left:0;top:0;width:393px;will-change:transform}
.ip-shot{display:block;width:100%;height:100%;user-select:none;-webkit-user-drag:none}
.ip-fade{position:absolute;left:0;right:0;bottom:0;height:30px;z-index:4;pointer-events:none;display:block}
.ip-island{position:absolute;left:50%;top:11px;width:126px;height:37px;margin-left:-63px;border-radius:19px;background:#000;z-index:5;box-shadow:0 0 0 .5px rgba(255,255,255,.06)}
.ip-island::after{content:"";position:absolute;right:20px;top:12px;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#1d2a45 0,#0a0e1a 55%,#000 100%)}
.ip-glare{position:absolute;inset:0;z-index:6;pointer-events:none;background:linear-gradient(118deg,rgba(255,255,255,.10) 0%,rgba(255,255,255,0) 30%)}
.ip-home{position:absolute;left:50%;bottom:8px;width:134px;height:5px;margin-left:-67px;border-radius:3px;z-index:6;opacity:.9}
.ip-btn{position:absolute;left:-3px;width:4px;border-radius:2px 0 0 2px;background:linear-gradient(90deg,#8a8881,#c9c7c0);box-shadow:inset 1px 0 0 rgba(255,255,255,.4)}
.ip-btn-r{left:auto;right:-3px;border-radius:0 2px 2px 0;background:linear-gradient(270deg,#8a8881,#c9c7c0)}
.ip::after{content:"";position:absolute;left:12%;right:12%;bottom:-3%;height:4%;border-radius:50%;background:radial-gradient(closest-side,rgba(16,24,20,.28),rgba(16,24,20,0));filter:blur(10px);z-index:-1}
/* klepnutí a zvýraznění (zelená #00E676 jen funkčně) */
.rj-tap,.rj-anchor,.rj-hl{position:absolute;box-sizing:border-box;pointer-events:none}
.rj-tap{opacity:0;border-radius:14px;border:2.5px solid #00e676;box-shadow:0 0 0 6px rgba(0,230,118,.18)}
.rj-tap.is-round{border-radius:999px}
.rj-tap::after{content:"";position:absolute;inset:-9px;border-radius:inherit;border:2px solid #00e676;opacity:calc(1 - var(--u,0));transform:scale(calc(.92 + var(--u,0)*.22))}
.rj-tap i{position:absolute;left:50%;top:50%;width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;background:rgba(0,230,118,.55);box-shadow:0 0 0 7px rgba(0,230,118,.20);transform:scale(calc(1.25 - var(--u,0)*.45))}
.rj-hl{opacity:0;border-radius:12px;border:2.5px solid #00e676;background:rgba(0,230,118,.07);box-shadow:0 0 0 calc(12px*var(--u,0)) rgba(0,230,118,.14)}
.rj-open,.rj-fly{position:absolute;left:0;top:0;width:10px;height:10px;object-fit:cover;opacity:0;pointer-events:none;z-index:60;transform-origin:0 0;will-change:transform,opacity}
.rj-open{box-shadow:0 12px 32px -8px rgba(16,24,20,.38),0 2px 6px rgba(16,24,20,.18)}
.rj-fly{object-fit:contain;z-index:61;filter:drop-shadow(0 10px 12px rgba(60,20,20,.35))}
.rj-chip{position:absolute;left:0;top:0;z-index:70;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;background:#10281b;color:#fff;font-size:12px;font-weight:600;padding:7px 13px 7px 7px;border-radius:999px;opacity:0;pointer-events:none;box-shadow:0 8px 20px -6px rgba(16,40,27,.45)}
.rj-chip b{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#00e676;color:#0d2417;font-size:12px}
/* statická verze */
.rj-v2 .ip{width:427.6px;height:888px}
.rj-v2 .rj-prod{width:193.5px;height:720px}
.rj-v2.rs-static .rj-stage{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:22px;position:static;padding:8px 0;aspect-ratio:auto;height:auto;width:100%;max-height:none}
.rj-v2.rs-static .rj-prod,.rj-v2.rs-static .ip{position:relative}
.rj-v2.rs-static .rj-glow,.rj-v2.rs-static .rj-tap,.rj-v2.rs-static .rj-open,.rj-v2.rs-static .rj-fly,.rj-v2.rs-static .rj-chip{display:none}
.rj-v2.rs-static .rs-layout{grid-template-columns:1fr;gap:28px}
.rj-v2.rs-static .rj-stage{order:-1}
.rj-v2.rs-static .rs-topline{margin-bottom:12px}
@media(max-width:760px){
  .rj-v2:not(.rs-ready):not(.rs-static){height:460svh;min-height:2400px}
  .rj-v2.rs-ready{height:460svh;min-height:2400px}
  .rj-v2.rs-ready .rs-copy{height:136px;flex:0 0 136px;margin-top:8px}
  .rj-v2.rs-ready .rj-stage{max-height:520px}
  .rj-v2 .rs-body{display:none}
  .rj-v2 .rs-chapter h2{font-size:clamp(28px,7vw,32px)}
  .rj-v2 .rs-eyebrow{margin-bottom:8px}.rj-v2 .rs-cta{margin-top:10px}
  .rj-v2 .rs-sticky{padding-left:14px;padding-right:14px}
  .rj-v2 .rs-chapters{gap:8px}.rj-v2 .rs-chapters button{font-size:9px;gap:4px}.rj-v2 .rs-chapters button>span{font-size:8px}
  .rj-chip{font-size:11px}
}
