.carousel-wrapper{color:#fff;min-height:100%;padding:calc(76px + env(safe-area-inset-top,0px)) 24px calc(28px + env(safe-area-inset-bottom,0px));background:#000;flex-direction:column;justify-content:center;gap:28px;display:flex;position:relative}.carousel-close{top:calc(14px + env(safe-area-inset-top,0px));color:#fff;border:1px solid #ffffff26;border-radius:9999px;justify-content:center;align-items:center;width:48px;height:48px;transition:background-color .3s;display:flex;position:absolute;right:16px}.carousel-close:hover{background:#ffffff1a}.carousel-inner{flex-direction:column-reverse;gap:28px;display:flex}.carousel-content-inner{flex-direction:column;gap:14px;display:flex}.carousel-collection-num,.carousel-title,.carousel-subtitle,.carousel-description{transition:opacity .4s,transform .6s cubic-bezier(.16,1,.3,1)}.carousel-title{transition-delay:50ms}.carousel-subtitle{transition-delay:.1s}.carousel-description{transition-delay:.15s}.carousel-wrapper .transitioning{opacity:0}.carousel-content .transitioning.next{transform:translate(-24px)}.carousel-content .transitioning.prev{transform:translate(24px)}.carousel-wrapper .visible{opacity:1;transform:none}.carousel-num-text{font-family:var(--font-sans);letter-spacing:.2em;color:#ffffff8c;font-variant-numeric:tabular-nums;font-size:11px}.carousel-title{font-family:var(--font-serif);letter-spacing:-.01em;font-size:clamp(2.4rem,9vw,4.5rem);font-weight:300;line-height:.95}.carousel-subtitle{font-family:var(--font-sans);letter-spacing:.18em;text-transform:uppercase;color:#fff9;font-size:12px;font-weight:500}.carousel-description{max-width:34rem;font-family:var(--font-sans);color:#ffffffbf;font-size:15px;font-weight:300;line-height:1.6}.carousel-credit{width:fit-content;font-family:var(--font-sans);letter-spacing:.04em;color:#fff9;text-underline-offset:4px;font-size:13px;-webkit-text-decoration:underline #ffffff40;text-decoration:underline #ffffff40;transition:color .3s,opacity .4s .2s,transform .6s cubic-bezier(.16,1,.3,1) .2s}.carousel-credit:hover{color:#fff}.carousel-nav-arrows{gap:10px;margin-top:8px;display:flex}.carousel-arrow-btn{color:#fff;border:1px solid #fff3;border-radius:9999px;justify-content:center;align-items:center;width:46px;height:46px;transition:background-color .3s,border-color .3s;display:flex}.carousel-arrow-btn:hover{background:#ffffff14;border-color:#fff6}.carousel-image-container{justify-content:center;display:flex}.carousel-image-frame{aspect-ratio:16/9;background:#0d0d0d;width:100%;transition:opacity .4s,transform .8s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.carousel-image-frame.transitioning{transform:scale(.96)}.carousel-poster{cursor:pointer;display:block;position:absolute;inset:0}.carousel-image{object-fit:cover;width:100%;height:100%;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}.carousel-poster:hover .carousel-image{transform:scale(1.03)}.carousel-play{color:#fff;-webkit-backdrop-filter:blur(8px);background:#00000059;border:1px solid #ffffff59;border-radius:9999px;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.carousel-video{width:100%;height:100%;position:absolute;inset:0}.carousel-progress-bar{scrollbar-width:none;gap:10px;display:flex;overflow-x:auto}.carousel-progress-bar::-webkit-scrollbar{display:none}.carousel-progress-item{text-align:left;flex-direction:column;flex:1;gap:8px;min-width:72px;display:flex}.carousel-progress-track{background:#ffffff26;width:100%;height:2px;overflow:hidden}.carousel-progress-fill{background:#fff;height:100%;transition:width .6s cubic-bezier(.16,1,.3,1)}.carousel-progress-label{font-family:var(--font-sans);color:#fff6;text-overflow:ellipsis;white-space:nowrap;font-size:11px;transition:color .3s;overflow:hidden}.carousel-progress-item.active .carousel-progress-label,.carousel-progress-item:hover .carousel-progress-label{color:#fff}@media (min-width:900px){.carousel-wrapper{padding:96px 64px 40px}.carousel-inner{flex-direction:row;align-items:center;gap:64px}.carousel-content,.carousel-image-container{flex:1}.carousel-content{flex:.8}.carousel-image-container{flex:1.2}.carousel-description{font-size:16px}}@media (prefers-reduced-motion:reduce){.carousel-wrapper *{transition-duration:.01ms!important}}
