/* Film poprzedza cały obecny front i nie zasłania go stałą nakładką. */
.video-intro { position:relative; width:100%; height:100vh; height:100svh; overflow:hidden; isolation:isolate; background:#f8f9f6; }
.video-intro video,.intro-poster,.intro-poster img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
.video-intro video { display:block; }
.intro-poster { z-index:1; pointer-events:none; transition:opacity .18s linear; }
.video-intro.is-ready .intro-poster { opacity:0; }
.intro-skip,.intro-toggle,.intro-sound,.intro-play {
  position:absolute; z-index:2; display:flex; align-items:center; justify-content:center;
  border:1px solid rgb(255 255 255 / .85); background:rgb(246 248 248 / .9);
  color:var(--accent-deep); box-shadow:0 4px 22px rgb(23 32 33 / .12);
  backdrop-filter:blur(12px); cursor:pointer; text-decoration:none; font:600 14px/1.4 Manrope,sans-serif;
}
.intro-skip { bottom:calc(max(18px,env(safe-area-inset-bottom)) + 6mm); left:50%; transform:translateX(-50%); flex-direction:column; gap:26px; padding:0 24px; border:0; border-radius:12px; background:transparent; box-shadow:none; backdrop-filter:none; white-space:nowrap; }
.intro-skip>span { text-shadow:0 1px 5px #fff,0 0 12px #fff; }
.intro-skip svg { width:80px; height:96px; overflow:visible; filter:drop-shadow(0 1px 2px rgb(255 255 255 / .9)); animation:intro-arrow-float 2.8s ease-in-out infinite; }
.intro-arrow-edge { stroke:#3e7568; }
.intro-arrow-mint { stroke:var(--t-diagnostyka); }
/* Obrys pozostaje miętowy, a ciemna krawędź odcina go od jasnych kadrów filmu. */
@keyframes intro-arrow-float { 0%,100% { transform:translateY(-6mm); } 50% { transform:translateY(6mm); } }
.page-resting .intro-skip svg,.privacy-open .intro-skip svg,.intro-scrolling .intro-skip svg { animation-play-state:paused; }
.intro-toggle,.intro-sound { right:24px; top:max(24px,env(safe-area-inset-top)); width:46px; height:46px; padding:0; border-radius:50%; }
.intro-sound { right:80px; }
.intro-toggle svg,.intro-sound svg { width:20px; height:20px; }
.intro-sound[aria-pressed="false"] .sound-on,.intro-sound[aria-pressed="true"] .sound-off { display:none; }
.intro-play { top:50%; left:50%; transform:translate(-50%,-50%); width:76px; height:76px; padding:0; border-radius:50%; }
.intro-play svg { width:30px; height:30px; margin-left:4px; }
.intro-toggle[hidden],.intro-sound[hidden],.intro-play[hidden] { display:none; }
.intro-toggle .play-icon { display:none; }
.video-intro[data-state="paused"] .intro-toggle .pause-icon { display:none; }
.video-intro[data-state="paused"] .intro-toggle .play-icon { display:block; }
.intro-toggle:hover,.intro-sound:hover,.intro-play:hover { background:#fff; }
.intro-skip:focus-visible,.intro-toggle:focus-visible,.intro-sound:focus-visible,.intro-play:focus-visible { outline:3px solid var(--brand-dot); outline-offset:4px; }
html.intro-scrolling { scroll-behavior:auto!important; }
#site-front { position:relative; scroll-margin:0; }
#site-front:focus { outline:none; }
@media(max-width:760px) {
  .intro-skip { font-size:12px; padding:0 20px; }
  .intro-skip svg { width:68px; height:84px; }
  .intro-toggle,.intro-sound { top:max(12px,env(safe-area-inset-top)); right:12px; width:40px; height:40px; }
  .intro-sound { right:62px; }
}
@media(prefers-reduced-motion:reduce) {
  .intro-poster { transition:none; }
  .intro-skip svg { animation:none; transform:none; }
}
@media print {
  .video-intro { display:none!important; }
}
