/* Wejście do świątecznego pokoju: film przewijany kółkiem myszy (assets/pokoj.js). */
.room { position: relative; height: 380vh; background: #2a1a17; color: var(--color-white); }
.room-pin { position: sticky; top: 0; height: 100svh; overflow: hidden; }
.room video, .room .room-poster { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.room-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(36,12,18,.45) 0%, rgba(36,12,18,0) 30%, rgba(36,12,18,0) 52%, rgba(36,12,18,.72) 100%); pointer-events: none; }
.room-captions { position: absolute; left: 0; right: 0; bottom: 0; padding: 0 var(--space-4) var(--space-12); }
.room-caption { position: absolute; left: var(--space-4); right: var(--space-4); bottom: var(--space-12); max-width: 34rem; opacity: 0; transform: translateY(24px); transition: opacity .6s ease, transform .6s ease; pointer-events: none; }
.room-caption.is-on { opacity: 1; transform: none; pointer-events: auto; }
.room-caption h2 { margin: 0 0 var(--space-3); font-size: clamp(2.2rem, 6vw, 4.2rem); text-shadow: 0 2px 18px rgba(0,0,0,.4); }
.room-caption p { margin: 0 0 var(--space-5); font-size: 1.1rem; text-shadow: 0 1px 10px rgba(0,0,0,.45); }
.room-progress { position: absolute; right: var(--space-4); top: 20%; bottom: 20%; width: 3px; border-radius: 3px; background: rgba(255,253,248,.25); }
.room-progress i { display: block; width: 100%; height: 100%; border-radius: 3px; background: #c47a8b; transform-origin: top; transform: scaleY(0); }
@media (min-width: 48rem) { .room-captions, .room-caption { left: max(2rem, calc((100vw - 76rem) / 2)); right: auto; padding-left: 0; } .room-caption { bottom: var(--space-16); } }
/* Bez ruchu albo bez JS: zwykła sekcja z jednym kadrem i napisem. */
.room.is-static { height: auto; }
.room.is-static .room-pin { position: relative; height: 70svh; }
.room.is-static .room-caption:first-child { opacity: 1; transform: none; pointer-events: auto; }
.room.is-static .room-progress { display: none; }
@media (prefers-reduced-motion: reduce) { .room-caption { transition: none; } }

/* Baner: pierwszy ekran filmu niesie główny nagłówek i liczniki. Nakładka świątecznych ozdób leży nad filmem. */
.room .festive { z-index: 1; }
.room-caption-hero { max-width: 42rem; }
.room-caption-hero h1 { margin: 0 0 var(--space-3); font-size: clamp(2.6rem, 7vw, 5rem); text-shadow: 0 2px 18px rgba(0,0,0,.4); }
.room-caption-hero .eyebrow { color: var(--color-white); }
.room-caption-hero .hero-lead { margin: 0 0 var(--space-5); max-width: 36rem; }
.room-caption-hero .festive-counters { justify-content: flex-start; margin: 0 0 var(--space-5); }
.swieta[class*="k-"] .room-shade { background: linear-gradient(180deg, var(--tint) 0%, rgba(20,22,20,0) 32%, rgba(20,22,20,0) 48%, var(--tint) 100%); }
.room-captions, .room-caption, .room-progress { z-index: 2; }
