/* Shared gallery appearance: studio life and original game art. */
.media-gallery-heading{border-top:1px solid var(--rule,#373b3d);padding-top:32px;padding-bottom:30px}
.media-gallery-heading .studio-label{text-transform:none;letter-spacing:0;font-size:14px;font-weight:400;line-height:1.6;color:#b0b3b4;margin:0 0 24px}
.media-gallery-heading h2{font-size:clamp(35px,4vw,55px);font-weight:600;letter-spacing:-.055em;line-height:1.07;margin:0;color:#eeede7}
.studio-carousel{--studio-frame-width:min(760px,calc(100vw - 96px));--studio-frame-gap:24px;position:relative;width:100%}
.studio-carousel:focus-visible{outline-offset:-3px}
.studio-carousel-viewport{position:relative;width:100%;overflow:hidden;touch-action:pan-y}
.studio-carousel-stage{position:relative;z-index:1;isolation:isolate;overflow:hidden;width:var(--studio-frame-width);aspect-ratio:16/9;margin-inline:auto;background:#1b1f21}
.studio-carousel-peeks{position:absolute;inset:0;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent,#000 min(16vw,240px),#000 calc(100% - min(16vw,240px)),transparent);mask-image:linear-gradient(to right,transparent,#000 min(16vw,240px),#000 calc(100% - min(16vw,240px)),transparent)}
.studio-carousel-peek{position:absolute;top:0;left:50%;width:var(--studio-frame-width);height:100%;opacity:.24;filter:saturate(.55) brightness(.72);overflow:hidden}
.studio-carousel-peek.is-previous{transform:translateX(calc(-150% - var(--studio-frame-gap))) scale(.92);transform-origin:right center;-webkit-mask-image:linear-gradient(to right,transparent,#000 80%);mask-image:linear-gradient(to right,transparent,#000 80%)}
.studio-carousel-peek.is-next{transform:translateX(calc(50% + var(--studio-frame-gap))) scale(.92);transform-origin:left center;-webkit-mask-image:linear-gradient(to left,transparent,#000 80%);mask-image:linear-gradient(to left,transparent,#000 80%)}
.studio-carousel-peek picture{display:block;position:absolute;inset:0;width:100%;height:100%}
.studio-carousel-slide{position:absolute;inset:0;overflow:hidden;z-index:0}
.studio-carousel-slide.is-active{z-index:1}
.studio-carousel-slide.is-entering{z-index:2}
.studio-carousel-slide:before{content:"";position:absolute;inset:-24px;z-index:-1;background-image:var(--slide-image);background-size:cover;background-position:center;filter:blur(22px) brightness(.8)}
.studio-carousel-slide picture{display:block;width:100%;height:100%}
.studio-carousel-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.studio-carousel-nav{position:absolute;top:0;bottom:0;width:clamp(40px,4vw,52px);z-index:4;border:0;border-radius:0;padding:0;display:grid;place-items:center;isolation:isolate;overflow:hidden;background:transparent;color:#fff;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s}
.studio-carousel-nav.is-previous{left:0}.studio-carousel-nav.is-next{right:0}
.studio-carousel-nav:before{content:"";position:absolute;inset:-12px;z-index:-2;background-image:var(--carousel-image);background-size:auto calc(100% - 24px);background-repeat:no-repeat;filter:blur(7px);opacity:.94}
.studio-carousel-nav.is-previous:before{background-position:left center;transform:translateX(8px) scale(1.08)}
.studio-carousel-nav.is-next:before{background-position:right center;transform:translateX(-8px) scale(1.08)}
.studio-carousel-nav:after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(22,25,27,.2);transition:background .2s}
.studio-carousel-nav:hover:after{background:rgba(22,25,27,.34)}
.studio-carousel-nav svg{display:block;width:28px;height:auto;filter:drop-shadow(0 1px 3px #0005)}
.studio-carousel:hover .studio-carousel-nav,.studio-carousel:focus-within .studio-carousel-nav{opacity:1;pointer-events:auto}
.studio-carousel-nav:focus-visible{outline:2px solid #fff;outline-offset:-6px}
.studio-carousel-caption.container{width:var(--studio-frame-width);padding:13px 0 24px;min-height:61px;margin-inline:auto}
.studio-carousel-caption p{margin:0;text-align:right;color:#c9cccb;font-size:13px;line-height:1.6;overflow-wrap:anywhere}
@media(hover:none),(pointer:coarse){.studio-carousel-nav{opacity:1;pointer-events:auto}}
@media(max-width:760px){
 .studio-carousel{--studio-frame-width:calc(100vw - 64px);--studio-frame-gap:12px}
 .studio-carousel-nav{width:36px}.studio-carousel-nav svg{width:23px}
 .studio-carousel-caption.container{padding:11px 0 20px;min-height:64px}
 .studio-carousel-caption p{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
 .studio-carousel-nav,.studio-carousel-nav:after{transition:none}
 .studio-carousel-slide:before{background-image:var(--slide-poster)}
 .studio-carousel-nav:before{background-image:var(--carousel-poster)}
}

.studio-carousel-slide[hidden],.studio-carousel-nav[hidden]{display:none!important}
.studio-carousel-link{display:block;width:100%;height:100%;cursor:zoom-in}
.studio-carousel-link:focus-visible{outline:2px solid #fff;outline-offset:-4px}
.gallery-enlarge{position:absolute;right:18px;bottom:18px;padding:7px 12px;background:#151719dc;font-size:12px;color:#eeede7;border:1px solid #ffffff30;opacity:0;transition:opacity .2s}
.studio-carousel-link:hover .gallery-enlarge,.studio-carousel-link:focus-visible .gallery-enlarge{opacity:1}
.studio-carousel picture [hidden]{display:none!important}
.studio-carousel-caption .game-gallery-invite{margin-top:12px;color:#aeb5b8;font-size:13px;line-height:1.7}
.game-gallery-invite a{color:#eeede7;text-decoration:underline;text-decoration-color:#728085;text-underline-offset:3px}
.game-gallery-invite a:hover{color:var(--yellow)}
.carousel-fallback{font-size:14px;line-height:2;text-align:right}
.carousel-fallback a{display:inline-block;padding:0 6px;text-decoration:underline}
@media(max-width:760px){
 .media-gallery-heading{padding-top:26px;padding-bottom:26px}
 .media-gallery-heading .studio-label{font-size:12px;margin-bottom:17px}
 .media-gallery-heading h2{font-size:32px}
 .studio-carousel-caption .game-gallery-invite{font-size:12px}
}
@media(hover:none),(pointer:coarse){.gallery-enlarge{opacity:1}}
@media(prefers-reduced-motion:reduce){
 .gallery-enlarge{transition:none}
 .studio-carousel-slide[data-carousel-live]:before,.studio-carousel.is-live-animation .studio-carousel-nav:before{background-image:none}
}
