/* Shared content-sized film window on investment and trial pages. */
.film-viewer[open]{box-sizing:border-box;display:block!important;height:auto!important;min-height:0!important;max-height:90dvh;width:min(850px,94vw);position:fixed;inset:0;margin:auto;padding:16px;border:1px solid #ffffff26;border-radius:18px;background:#202020ed;color:#f6f6f6;backdrop-filter:blur(22px);overflow-y:auto;overflow-x:hidden;box-shadow:0 24px 80px #0007}
.film-viewer::backdrop{background:#0d0d0d5c;backdrop-filter:blur(18px);animation:yanagi-backdrop .3s ease}
.film-viewer>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 14px;border:0;background:transparent}
.film-viewer>header>span{font:400 12px/1.4 'Shree Yanagi',Shree,Arial,sans-serif;letter-spacing:.06em;color:#e0e0e0}
.film-viewer>header>button{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;padding:0;background:#ffffff05;color:#fff;border:1px solid transparent;border-radius:9px;font-size:21px;transition:background .3s,border-color .3s,box-shadow .3s,transform .3s}
.film-viewer>header>button:hover,.film-viewer>header>button:focus-visible{background:#383838;border-color:#f8db72;box-shadow:0 0 22px #f8db7255;transform:scale(1.04)}
.film-viewer .film-player{width:100%;aspect-ratio:16/9;position:relative;background:#161616;overflow:hidden;border-radius:4px;opacity:1;transition:opacity .28s}
.film-viewer .film-player.is-switching{opacity:0}
.film-viewer .film-player iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0;aspect-ratio:auto}
.film-viewer .film-carousel-shell{display:flex;align-items:center;gap:8px;margin-top:12px;min-width:0}
.film-viewer .film-carousel{display:flex!important;flex:1 1 0;width:0;min-width:0;max-width:100%;gap:9px;padding:5px 10px;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior:contain}
.film-viewer .film-thumb{flex:0 0 115px;width:115px;min-width:0;padding:5px;border:1px solid #ffffff26;border-radius:9px;color:#e0e0e0;background:#303030d9;font:400 11px/1.3 'Shree Yanagi',Shree,Arial,sans-serif;text-align:left;scroll-snap-align:start;transition:background .3s,box-shadow .3s,border-color .3s}
.film-viewer .film-thumb img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:5px;display:block;margin-bottom:6px}
.film-viewer .film-thumb.is-current{border-color:#f8db72;background:#3c3c3c;color:#fff;box-shadow:0 0 14px #f8db7244}
.film-viewer .film-thumb:hover{background:#454545;color:#fff;box-shadow:0 0 18px #f8db7244}
.film-viewer .film-prev,.film-viewer .film-next{flex:0 0 24px;border:0;border-radius:8px;color:#f8db72;background:#373737;padding:4px;font-size:24px}
.film-viewer .film-external{display:inline-block;margin-top:10px;padding:8px 12px;font-size:12px;color:#e9e9e9;border:1px solid #ffffff30;border-radius:10px;background:#ffffff03}
@keyframes yanagi-backdrop{from{opacity:0}to{opacity:1}}
@media(max-width:760px){.film-viewer[open]{width:94vw;padding:12px;max-height:88dvh}.film-viewer .film-thumb{flex-basis:90px;width:90px}.film-viewer .film-carousel-shell{gap:5px}.film-viewer .film-carousel-shell:before,.film-viewer .film-carousel-shell:after{display:none}}
@media(prefers-reduced-motion:reduce){.film-viewer::backdrop{animation:none}.film-viewer *{transition:none!important}}

body:has(.film-viewer[open]) :is(.films-board,.home-travel-board,.hina-toggle,.investment-secure-date){opacity:0!important;pointer-events:none!important}

.film-viewer .film-carousel-shell{height:auto;overflow:visible}.film-viewer .film-carousel{height:auto!important}.film-viewer .film-prev,.film-viewer .film-next{display:block!important}

/* Touch-sized screens use the available lower space for a vertical film grid. */
@media(max-width:1024px){
 :is(body,body.cinematic-trial) .film-viewer[open]{display:flex!important;flex-direction:column;height:88dvh!important;max-height:88dvh!important;min-height:0!important;overflow:hidden!important}
 :is(body,body.cinematic-trial) .film-viewer>header,:is(body,body.cinematic-trial) .film-viewer .film-player,:is(body,body.cinematic-trial) .film-viewer .film-external{flex:0 0 auto}
 :is(body,body.cinematic-trial) .film-viewer .film-carousel-shell{display:block!important;flex:1 1 0!important;min-height:0;height:auto!important;max-height:none!important;width:100%;overflow:hidden!important;margin-top:12px}
 :is(body,body.cinematic-trial) .film-viewer .film-carousel-shell::before,:is(body,body.cinematic-trial) .film-viewer .film-carousel-shell::after,:is(body,body.cinematic-trial) .film-viewer .film-prev,:is(body,body.cinematic-trial) .film-viewer .film-next{display:none!important}
 :is(body,body.cinematic-trial) .film-viewer .film-carousel{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;grid-auto-rows:max-content;align-content:start;gap:9px;flex:none!important;width:100%!important;height:100%!important;max-height:none!important;margin:0;padding:6px;overflow-x:hidden!important;overflow-y:auto!important;scroll-snap-type:none!important;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;mask-image:none;-webkit-mask-image:none;scrollbar-width:thin}
 :is(body,body.cinematic-trial) .film-viewer .film-thumb{flex:none!important;width:100%!important;min-width:0;max-width:100%;padding:5px;font-size:12px}
 :is(body,body.cinematic-trial) .film-viewer .film-thumb span{display:block;text-align:center;white-space:nowrap}
 :is(body,body.cinematic-trial) .film-viewer .film-external{align-self:flex-start;margin-top:10px}
}
