.gallery-hero {
  min-height: calc(100svh - 76px);
  display: grid;
  align-items: stretch;
  padding: clamp(8px, 1.45vw, 24px);
  background: #faf9f6;
}
.gallery-film { margin: 0; min-width: 0; display: grid; }
.gallery-reveal {
  display: grid;
  padding: 3px;
  background: #d9d6cf;
  border: 1px solid #bfbab0;
  box-shadow: inset 0 1px 3px #29262045, 0 1px 0 #fff;
}
.gallery-glass { position: relative; overflow: hidden; background: #d5d1c7; }
.gallery-glass video {
  position: absolute; inset: 0; display: block;
  width: 100%; height: 100%; object-fit: cover;
}
.gallery-seams {
  position: absolute; inset: 0; pointer-events: none;
  background:
    linear-gradient(110deg, #fffbef20, transparent 19%, transparent 72%, #fffaf31a),
    repeating-linear-gradient(90deg, transparent 0 calc(25% - 1px), #302d2759 calc(25% - 1px) 25%);
  box-shadow: inset 0 0 0 1px #221e1966, inset 0 3px 10px #221e1929;
}
.gallery-playback {
  position: absolute; right: 8px; bottom: 8px; width: 44px; height: 44px;
  border: 1px solid transparent; background: #2228; color: #fff; font: 15px Arial,sans-serif;
}
.gallery-playback:hover, .gallery-playback:focus-visible { border-color: #fff9; background: #222c; }
@media(max-width: 700px) {
  .gallery-hero { padding: 8px; }
  .gallery-seams { background: linear-gradient(110deg, #fffaf326, transparent 24%), linear-gradient(90deg, transparent calc(50% - 1px), #302d2759 calc(50% - 1px) 50%, transparent 50%); }
}

.gallery-hero{position:relative}
.opening-next{position:absolute;bottom:clamp(16px,2.2vw,36px);left:50%;transform:translateX(-50%);width:44px;height:44px;display:grid;place-items:center;background:#302d2780;color:#fff;font-size:20px}
.opening-next:hover{background:#302d27c9}

@media (max-width: 520px) {
  .gallery-hero { min-height: calc(100svh - 112px); }
}
