.poster-gallery[hidden]{display:none!important}.portfolio-posters{width:min(1280px,calc(100% - 48px));margin:auto}.gallery-label{margin:48px 0 24px;font-size:22px;letter-spacing:-.03em}.series-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.series-card,.single-poster{display:block;width:100%;padding:0;border:0;background:transparent;color:#202024;text-align:left;cursor:zoom-in}.series-mosaic{display:grid;height:350px;gap:4px;overflow:hidden;border-radius:18px;background:#deddd9;grid-template-columns:repeat(6,1fr);grid-template-rows:1fr 1fr}.series-tile{position:relative;min-width:0;min-height:0;overflow:hidden;grid-column:span 2}.series-tile:nth-child(-n+2){grid-column:span 3}.series-card--4 .series-tile{grid-column:span 3}.series-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.series-card:hover img{transform:scale(1.025)}.series-tile b{position:absolute;inset:0;display:grid;place-items:center;background:#0009;color:white;font-size:36px}.poster-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 2px 18px;font-size:12px;font-weight:650}.poster-caption small{color:#757579;font-size:10px;font-weight:500}.masonry-grid{columns:4;column-gap:24px}.single-poster{break-inside:avoid;margin-bottom:15px;border-radius:16px}.single-poster>img{width:100%;height:auto;display:block;border-radius:16px;box-shadow:0 5px 20px #0000000a;transition:transform .25s,box-shadow .25s}.single-poster:hover>img{transform:translateY(-4px);box-shadow:0 15px 35px #0002}.poster-lightbox{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:18px 24px;border:0;background:rgba(12,12,15,.74);color:#fff;overflow:hidden}.poster-lightbox::backdrop{background:#08080bbd;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.lightbox-open{overflow:hidden}.lightbox-toolbar{height:44px;display:flex;align-items:center;justify-content:space-between;gap:16px}.lightbox-toolbar p{font-size:13px;margin:0}.poster-lightbox button{cursor:pointer;border:1px solid #ffffff36;border-radius:50%;background:#242429c9;color:#fff;width:44px;height:44px;font-size:19px}.lightbox-view{height:calc(100dvh - 170px);display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;gap:16px}.lightbox-view>img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;justify-self:center;min-height:0;box-shadow:0 20px 80px #0005}.lightbox-view button[hidden]{visibility:hidden;display:block}.lightbox-thumbs{height:80px;display:flex;justify-content:center;gap:8px;padding:10px 0;overflow-x:auto}.lightbox-thumbs button{flex:0 0 48px;height:60px;border-radius:8px;overflow:hidden;padding:0;opacity:.5}.lightbox-thumbs button[aria-current=true]{opacity:1;border:2px solid white}.lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.single-poster:focus-visible,.series-card:focus-visible{outline:3px solid #246bdb;outline-offset:5px}@media(max-width:1100px){.masonry-grid{columns:3}.series-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.portfolio-posters{width:calc(100% - 28px)}.masonry-grid{columns:2;column-gap:14px}.series-grid{gap:22px;grid-template-columns:1fr}.series-mosaic{height:min(110vw,460px)}.poster-lightbox{padding:12px}.lightbox-view{gap:4px;grid-template-columns:32px minmax(0,1fr) 32px}.lightbox-view button{width:32px;height:40px}.lightbox-toolbar p{font-size:11px}.poster-caption{font-size:11px}.single-poster>img{border-radius:11px}}@media(max-width:350px){.masonry-grid{columns:1}}@media(prefers-reduced-motion:reduce){.series-tile img,.single-poster>img{transition:none}}
.series-grid{display:flex;overflow-x:auto;gap:26px;padding:4px 4px 16px;scroll-snap-type:x mandatory;scrollbar-width:thin}.series-grid>.series-card{flex:0 0 calc((100% - 52px)/3);scroll-snap-align:start}.series-direction{float:right;font-size:11px;font-weight:400;color:#707075;letter-spacing:0}.series-grid:focus-visible{outline:2px solid #246bdb;outline-offset:4px}@media(max-width:1100px){.series-grid>.series-card{flex-basis:calc((100% - 26px)/2)}}@media(max-width:700px){.series-grid>.series-card{flex-basis:88%}.series-direction{float:none;display:block;margin-top:10px}}
.portfolio-posters .series-grid{display:flex;overflow-x:auto;gap:26px;padding:4px 4px 16px;scroll-snap-type:x mandatory;scrollbar-width:thin}
