/* =====================================================================
   circura.io – Styles für den Videoplayer (.cv, siehe /circura-video.js).
   Eigene Datei, damit Startseite und Funnel-Seiten dieselben Regeln laden.
   Benötigte Variablen: --navy-deep, --gold, --gold-light, --shadow-lg, --text-muted.
   ===================================================================== */
.cv{margin:0}
.cv-frame{position:relative;border-radius:24px;overflow:hidden;background:var(--navy-deep);box-shadow:var(--shadow-lg);aspect-ratio:16/9}
.cv-frame video,.cv-frame .video-js{width:100%;height:100%;display:block}
.cv-frame .video-js{background:var(--navy-deep)}
.cv-frame .video-js .vjs-big-play-button{background:var(--gold);color:var(--navy-deep);border:0;border-radius:50%;width:80px;height:80px;line-height:80px;margin:-40px 0 0 -40px;font-size:2.6em}
.cv-frame .video-js:hover .vjs-big-play-button{background:var(--gold-light)}
.cv-frame .video-js .vjs-control-bar{background:rgba(23,37,62,.85)}
.cv-frame .video-js .vjs-current-time,.cv-frame .video-js .vjs-duration,.cv-frame .video-js .vjs-time-divider,.cv-frame .video-js .vjs-remaining-time,.cv-frame .video-js .vjs-progress-control{display:none!important}
.cv-frame .video-js .vjs-volume-panel{margin-left:auto}
.cv-unmute{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:auto;max-width:90%;
  padding:11px 18px 11px 14px;border:0;border-radius:999px;background:rgba(23,37,62,.82);color:#fff;
  font:inherit;font-weight:500;font-size:.95rem;line-height:1.2;white-space:nowrap;
  display:inline-flex;align-items:center;gap:10px;cursor:pointer;z-index:5;
  box-shadow:0 8px 24px rgba(0,0,0,.35);backdrop-filter:blur(4px);
  animation:cvpulse 2s ease-in-out infinite;
}
.cv-unmute:hover{background:rgba(23,37,62,.95)}
.cv-unmute[hidden]{display:none}
.cv-unmute-icon{font-size:1.25rem;line-height:1}
@keyframes cvpulse{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.04)}}
@media(prefers-reduced-motion:reduce){.cv-unmute{animation:none}}
.cv-progress{position:absolute;left:0;right:0;bottom:0;height:6px;background:rgba(255,255,255,.22);z-index:4;pointer-events:none;opacity:0;transition:opacity .3s}
.cv-frame:hover .cv-progress,.cv-frame.cv-active .cv-progress{opacity:1}
@media(hover:none){.cv-frame.cv-active .cv-progress{opacity:1}}
.cv-progress-fill{height:100%;width:0;background:var(--gold);transition:width .5s linear}
.cv-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#fff;background:linear-gradient(135deg,#17253e,#253a5f);pointer-events:none}
.cv-play{width:76px;height:76px;border-radius:50%;background:var(--gold);color:var(--navy-deep);display:flex;align-items:center;justify-content:center;font-size:30px;padding-left:6px}
.cv-note{font-size:.95rem;opacity:.85;text-align:center;padding:0 24px}
.cv.has-source .cv-placeholder{display:none}
.cv-caption{font-size:14px;color:var(--text-muted);text-align:center;margin-top:16px}
