/* ============================================================
   Rundgang durch die Ventega Group — Filmplayer (v21)
   Nachtaufnahme mit eigener, fester Palette. Das helle Ventega-Design
   greift hier bewusst nicht.
   ============================================================ */

html.rg-page,body.rgp{margin:0;padding:0;background:#05030a;color:#efeafa;
  font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
body.rgp{overflow-x:hidden;min-height:100vh}
body.rgp *{box-sizing:border-box}

/* ---------- Buehne ---------- */
.rgp-stage{position:fixed;inset:0;z-index:0;overflow:hidden;background:#05030a}
.rgp-frame{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;will-change:opacity}
.rgp-view{position:absolute;inset:0;transform-origin:50% 50%;will-change:transform}
.rgp-view>img,.rgp-view>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.rgp-view>.rgp-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;transform-origin:50% 50%;will-change:transform}
.rgp-ph{position:absolute;right:16px;bottom:16px;z-index:2;
  font:600 9.5px 'Sora',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#a89fbf;
  padding:6px 10px;border:1px dashed rgba(255,255,255,.22);border-radius:6px;background:rgba(5,3,10,.55)}

/* Exakte Logo-Overlays: Position und Perspektive je Aufnahme per style="" */
.rgp-sign{position:absolute;display:block;transform-origin:50% 50%;pointer-events:none;
  filter:drop-shadow(0 0 18px rgba(255,255,255,.18))}
.rgp-sign svg,.rgp-sign img{display:block;width:100%;height:auto}

/* Vignette, Korn, leichter Lichtwechsel */
.rgp-vignette{position:fixed;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(120% 90% at 50% 45%,rgba(0,0,0,0) 46%,rgba(3,2,7,.62) 100%)}
.rgp-grain{position:fixed;inset:-40px;z-index:1;pointer-events:none;opacity:.07;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='180' height='180' filter='url(%23n)'/></svg>");
  animation:rgpGrain .9s steps(4) infinite}
@keyframes rgpGrain{0%{transform:translate(0,0)}25%{transform:translate(-14px,9px)}50%{transform:translate(11px,-13px)}75%{transform:translate(-7px,-6px)}100%{transform:translate(9px,12px)}}
html.motion-reduce .rgp-grain{animation:none}
.rgp-scroll{position:relative;height:1150vh;pointer-events:none}

/* ---------- feste Bedienleiste ---------- */
.rg-ui{position:fixed;inset:0;z-index:3;pointer-events:none}
.rg-top{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:12px;padding:18px clamp(16px,3vw,32px)}
.rg-top>*{pointer-events:auto}
.rg-back,.rg-lang{font:600 11.5px 'Sora',sans-serif;letter-spacing:.14em;text-transform:uppercase;
  color:#cfc6e6;text-decoration:none;padding:9px 14px;border:1px solid rgba(255,255,255,.14);border-radius:99px;
  background:rgba(8,5,14,.58);backdrop-filter:blur(10px);transition:border-color .2s,color .2s}
.rg-back:hover,.rg-lang:hover{color:#fff;border-color:rgba(201,180,141,.6)}
.rg-lang{margin-left:auto}
.rg-tag{font:600 10px 'Sora',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#C9B48D;
  padding:8px 12px;border:1px solid rgba(201,180,141,.35);border-radius:99px;background:rgba(8,5,14,.58);backdrop-filter:blur(10px)}
.rg-tag b{font-weight:700;color:#fff;margin-right:6px}

.rg-rail{position:absolute;right:clamp(14px,2.4vw,28px);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:18px;pointer-events:auto}
.rg-dot{position:relative;display:block;width:10px;height:10px;border-radius:50%;border:1px solid rgba(255,255,255,.42);background:transparent;transition:background .3s,border-color .3s,transform .3s}
.rg-dot::before{content:attr(data-label);position:absolute;right:20px;top:50%;transform:translateY(-50%);white-space:nowrap;
  font:600 9.5px 'Sora',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#a89fbf;opacity:0;transition:opacity .3s}
.rg-dot.is-active{background:#C9B48D;border-color:#C9B48D;transform:scale(1.25)}
.rg-dot.is-active::before,.rg-rail:hover .rg-dot::before{opacity:1}

.rg-floor{position:absolute;left:clamp(16px,3vw,32px);bottom:clamp(18px,3vh,30px);
  font:600 10.5px 'Sora',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#C9B48D;
  padding:9px 13px;border:1px solid rgba(201,180,141,.3);border-radius:8px;background:rgba(8,5,14,.58);backdrop-filter:blur(10px);
  opacity:0;transform:translateY(6px);transition:opacity .4s,transform .4s}
.rg-floor.is-visible{opacity:1;transform:none}

.rg-hint{position:absolute;left:50%;bottom:clamp(22px,4vh,40px);transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;
  font:500 11px 'Sora',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#a89fbf;transition:opacity .5s}
.rg-hint i{display:block;width:1px;height:34px;background:linear-gradient(#C9B48D,transparent);animation:rgHint 1.8s ease-in-out infinite}
@keyframes rgHint{0%{transform:scaleY(.2);transform-origin:top;opacity:0}40%{transform:scaleY(1);opacity:1}100%{transform:scaleY(1);transform-origin:bottom;opacity:0}}
html.motion-reduce .rg-hint i{animation:none}

/* ---------- Kapitelkarten ---------- */
.rg-card{position:fixed;z-index:2;width:min(360px,calc(100vw - 32px));padding:20px 22px 22px;border-radius:16px;
  background:rgba(7,4,12,.66);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(16px);
  box-shadow:0 20px 60px rgba(0,0,0,.45);opacity:0;pointer-events:none;will-change:opacity,transform}
.rg-card[data-side="left"]{left:clamp(16px,4vw,64px);top:50%;transform:translateY(-50%)}
.rg-card[data-side="right"]{right:clamp(56px,6vw,96px);top:50%}
.rg-card[data-side="center"]{left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;width:min(460px,calc(100vw - 32px))}
.rg-card::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:3px;border-radius:0 3px 3px 0;background:var(--rg-accent,#C9B48D)}
.rg-card[data-side="center"]::before{display:none}
.rg-card[data-brand="group"]{--rg-accent:#C9B48D}
.rg-card[data-brand="ai"]{--rg-accent:linear-gradient(#A78BFA,#D946EF)}
.rg-card[data-brand="solve"]{--rg-accent:#E0A85C;background:rgba(40,10,18,.7)}
.rg-card[data-brand="launchpad"]{--rg-accent:#C026D3;background:rgba(250,249,254,.9);color:#100C1A;border-color:rgba(16,12,26,.12)}
.rg-card[data-brand="network"]{--rg-accent:#B45CF5;background:rgba(7,7,10,.78)}
.rg-eyebrow{font:600 9.5px 'Sora',sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#C9B48D;margin:0 0 10px}
.rg-card[data-brand="ai"] .rg-eyebrow{color:#A78BFA}
.rg-card[data-brand="solve"] .rg-eyebrow{color:#E0A85C}
.rg-card[data-brand="launchpad"] .rg-eyebrow{color:#7C3AED}
.rg-card[data-brand="network"] .rg-eyebrow{color:#B45CF5}
.rg-card h1,.rg-card h2{font-family:'Sora',sans-serif;font-weight:700;letter-spacing:-.01em;margin:0 0 10px;line-height:1.18}
.rg-card h1{font-size:24px}.rg-card h2{font-size:19px}
.rg-card p{margin:0;font-size:13.5px;line-height:1.65;color:#cfc6e6}
.rg-card[data-brand="launchpad"] p{color:#413B52}
.rg-card p+p{margin-top:8px}
.rg-card .rg-mark{display:block;margin:0 0 12px}
.rg-card .rg-fine{margin-top:12px;font-size:11px;line-height:1.5;color:#8d84a6}
.rg-card[data-brand="launchpad"] .rg-fine{color:#6B6478}
.rg-card .rg-claim{font-style:italic;color:#efeafa}
.rg-card[data-brand="launchpad"] .rg-claim{color:#100C1A}
.rg-card .rg-url{display:inline-block;margin-top:10px;font:600 10.5px 'Sora',sans-serif;letter-spacing:.12em;color:#a89fbf}
.rg-card[data-brand="launchpad"] .rg-url{color:#6B6478}
.rg-notice{display:inline-block;margin:0 0 12px;padding:6px 11px;border-radius:99px;border:1px solid rgba(201,180,141,.4);
  font:600 9.5px 'Sora',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#C9B48D}
.rg-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px}
.rg-btn{display:inline-block;padding:11px 18px;border-radius:99px;font:600 12px 'Sora',sans-serif;letter-spacing:.08em;text-decoration:none;color:#fff;
  background:linear-gradient(92deg,#8B5CF6,#C026D3);border:1px solid transparent}
.rg-btn.ghost{background:transparent;border-color:rgba(255,255,255,.22);color:#efeafa}
.rg-btn:hover{filter:brightness(1.08)}
.rg-wm-ai{font:800 15px 'Sora',sans-serif;letter-spacing:.26em;color:#EFEAFA;white-space:nowrap}
.rg-wm-ai span{background:linear-gradient(92deg,#A78BFA,#D946EF);-webkit-background-clip:text;background-clip:text;color:transparent}
.rg-wm-net{font:500 12.5px -apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,"Segoe UI",system-ui,sans-serif;letter-spacing:.26em;text-transform:uppercase;color:#F3F0EA;white-space:nowrap}
.rg-wm-net span{color:#B45CF5}
.rg-card img.rg-mark{height:30px;width:auto}
.rg-card[data-brand="launchpad"] img.rg-mark{height:20px}

/* ---------- Laden ---------- */
.rg-loader{position:fixed;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;background:#05030a;transition:opacity .8s,visibility .8s}
html.rg-ready .rg-loader{opacity:0;visibility:hidden}
.rg-loader .rg-wm{font:800 20px 'Sora',sans-serif;letter-spacing:.26em;color:#F7F3FC}
.rg-loader .rg-wm b{color:#C9B48D;font-weight:800}
.rg-loader i{display:block;width:120px;height:1px;background:rgba(255,255,255,.12);position:relative;overflow:hidden}
.rg-loader i::after{content:"";position:absolute;left:-40%;top:0;width:40%;height:100%;background:#C9B48D;animation:rgLoad 1.2s ease-in-out infinite}
@keyframes rgLoad{to{left:100%}}
.rg-loader small{font:500 10px 'Sora',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#8d84a6}

/* ---------- schmale und flache Ansichten ---------- */
@media(max-width:820px){
  .rg-rail{display:none}
  .rg-top{gap:8px;padding:12px 14px}
  .rg-back,.rg-lang{font-size:10px;letter-spacing:.1em;padding:8px 11px;white-space:nowrap}
  .rg-tag{font-size:8.5px;letter-spacing:.14em;padding:7px 10px;white-space:nowrap}
  .rg-card[data-side="left"],.rg-card[data-side="right"]{left:16px;right:16px;top:auto;bottom:calc(20px + 44px);transform:none;width:auto}
  .rg-card[data-side="center"]{width:calc(100vw - 32px)}
  .rg-card h1{font-size:20px}.rg-card h2{font-size:17px}.rg-card p{font-size:13px}
  .rg-floor{bottom:18px;left:16px}
  .rg-hint{bottom:110px}
  .rgp-ph{right:10px;bottom:74px;font-size:8.5px}
}
@media(max-height:760px){
  .rg-card{padding:15px 17px 16px;width:min(330px,calc(100vw - 32px))}
  .rg-card h1{font-size:20px}.rg-card h2{font-size:16.5px;margin-bottom:8px}
  .rg-card p{font-size:12.5px;line-height:1.5}
  .rg-card .rg-fine{display:none}
  .rg-card[data-side="left"],.rg-card[data-side="right"]{top:46%}
}
