/* Collection, community and contact layouts. Loaded after the shared premium layer. */
:is(body.premium-collection,body.premium-community,body.premium-contact) main > .wrap,
body.premium-collection main.casino-archive {
 width:min(1180px,calc(100% - 64px)); max-width:1180px; margin-inline:auto; padding:0;
}
:is(body.premium-collection,body.premium-community,body.premium-contact) main {overflow:clip;}
:is(body.premium-collection,body.premium-community,body.premium-contact) main p {font-size:16px;line-height:1.75;color:#c6d6e4;}
:is(body.premium-collection,body.premium-community,body.premium-contact) main :is(h1,h2,h3) {color:#f2f7fc;}
:is(body.premium-collection,body.premium-community,body.premium-contact) .page-hero {
 display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);column-gap:56px;row-gap:16px;align-items:start;padding:48px 0 54px;
}
:is(body.premium-collection,body.premium-community,body.premium-contact) .page-hero > :not(.hero-photo) {grid-column:1;min-width:0;}
:is(body.premium-collection,body.premium-community,body.premium-contact) .page-hero .breadcrumbs {grid-column:1/-1;margin:0 0 18px;}
:is(body.premium-collection,body.premium-community,body.premium-contact) .page-hero .hero-photo {
 grid-column:2;grid-row:2/6;position:relative;inset:auto;transform:none;float:none;width:100%;height:auto;aspect-ratio:4/3;margin:0;border:1px solid #355268;border-radius:16px;overflow:hidden;align-self:center;
}
:is(body.premium-collection,body.premium-community,body.premium-contact) .hero-photo img {width:100%;height:100%;object-fit:cover;}
:is(body.premium-collection,body.premium-community,body.premium-contact) .page-hero h1 {font-size:clamp(38px,4.7vw,64px);line-height:1.07;letter-spacing:-.045em;margin:0;}
:is(body.premium-collection,body.premium-community,body.premium-contact) .page-hero .intro {font-size:18px;max-width:620px;}
:is(body.premium-collection,body.premium-community,body.premium-contact) .hero-links {flex-wrap:wrap;gap:16px;}
:is(body.premium-collection,body.premium-community,body.premium-contact) section.block {padding:48px 0;border-top:1px solid #2b4357;}
:is(body.premium-collection,body.premium-community,body.premium-contact) .section-head {display:block;max-width:780px;margin:0 0 28px;}
:is(body.premium-collection,body.premium-community,body.premium-contact) .section-head > .eyebrow {display:block;padding:0;margin-bottom:14px;color:#9cdddf;}
:is(body.premium-collection,body.premium-community,body.premium-contact) .section-head h2 {font-size:clamp(30px,3.4vw,46px);line-height:1.12;}
:is(body.premium-collection,body.premium-community,body.premium-contact) .section-head p {margin-top:18px;max-width:760px;}
/* Section photos are intentional compact lead-ins, never floating over copy. */
:is(body.premium-collection,body.premium-community) .section-photo {
 position:static;float:none;transform:none;inset:auto;width:100%;max-width:100%;height:240px;aspect-ratio:auto;margin:0 0 28px;border-radius:14px;overflow:hidden;border:1px solid #355268;
}
body.premium-collection main.casino-archive {background:transparent!important;padding-block:48px 64px;}
body.premium-collection .casino-intro {max-width:800px;margin:0 0 36px;}
body.premium-collection .casino-intro .time-kicker {margin-top:28px;color:#9cdddf;font-size:12px;}
body.premium-collection .casino-intro h1 {font-size:clamp(38px,5vw,66px);line-height:1.06;margin:18px 0 22px;}
body.premium-collection .casino-intro h1 em {color:#b1eee4;}
body.premium-collection .casino-intro .archive-note {font-size:14px;color:#b8cada;margin-top:20px;}
body.premium-collection :is(.casino-grid,.photo-grid) {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:none;margin:0;}
body.premium-collection :is(.casino-grid figure,.video-card,.photo-tile) {position:relative;min-width:0;margin:0;border:1px solid #304b60;border-radius:14px;overflow:hidden;background:#102033;color:#f2f7fc;box-shadow:0 12px 24px #0002;}
body.premium-collection :is(.casino-grid figure,.video-card)::after {content:'';position:absolute;right:9px;bottom:9px;width:16px;height:16px;border-right:1px solid #75c8d0;border-bottom:1px solid #75c8d0;pointer-events:none;opacity:.65;}
body.premium-collection .casino-grid figure {transition:transform .25s,border-color .25s,background .25s;}
body.premium-collection .casino-grid figure:hover {transform:translateY(-4px);border-color:#75c8d0;background:#122338;}
body.premium-collection .casino-grid :is(button,a) {display:block;width:100%;color:#f2f7fc;}
body.premium-collection .casino-grid button {padding:0;border:0;background:#091522;}
body.premium-collection .casino-grid img {height:220px;width:100%;object-fit:contain;background:#091522;}
body.premium-collection .casino-grid figcaption {display:grid;gap:10px;padding:20px 22px 24px;font-size:16px;line-height:1.5;color:#c6d6e4;}
body.premium-collection .casino-grid strong {font-size:11px;letter-spacing:.12em;color:#aae4e1;}
body.premium-collection .photo-tile button {aspect-ratio:4/3;margin:0;}
body.premium-collection .photo-tile.poster button {aspect-ratio:3/4;}
body.premium-collection .video-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:20px;}
body.premium-collection .video-card {padding:0 24px 26px;}
body.premium-collection .video-card .video-frame {width:calc(100% + 48px);margin-left:-24px;}
body.premium-collection .video-card h3 {font-size:25px;line-height:1.2;margin:12px 0;letter-spacing:-.035em;}
body.premium-collection .video-card p {margin-bottom:20px;}
body.premium-collection .video-card a {font-size:14px;color:#b1eee4;}
body.premium-collection .filter-bar {margin:24px 0 18px;}
body.premium-collection .filter-bar button {min-height:44px;color:#eef6fc;background:#102033;border-color:#49657b;}
body.premium-collection .filter-bar button:is(:hover,[aria-pressed=true]) {background:#122338!important;color:#f2f7fc!important;border-color:#85ced7;}
body.premium-collection #film-archive-link {max-width:1180px;width:calc(100% - 64px);margin:0 auto 48px;padding:32px;border:1px solid #355268;border-radius:16px;background:#102033;}
body.premium-collection #film-archive-link h2 {font-size:clamp(30px,3.5vw,44px);margin:16px 0;}
body.premium-collection #film-archive-link .pill {margin-top:22px;}
body.premium-community .support-story {display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:none;margin:0;}
body.premium-community .support-story p+p {margin:0;}
body.premium-community .impact-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0 0;}
body.premium-community .impact-grid > div {padding:26px;border-radius:12px;border:1px solid #355268;background:#102033;}
body.premium-community .impact-grid strong {font-size:40px;color:#b1eee4!important;}
body.premium-community .impact-grid span {font-size:16px;line-height:1.5;color:#c6d6e4;}
body.premium-community .service-grid {gap:20px;margin:28px 0;}
body.premium-community .service {padding:24px;border:1px solid #355268;border-radius:12px;}
body.premium-community .service h3 {font-size:24px;line-height:1.2;}
body.premium-contact .contact-grid {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:32px;align-items:start;}
body.premium-contact .contact-card {padding:24px;margin:0 0 16px;border:1px solid #355268;border-radius:12px;}
body.premium-contact .contact-card p {margin:10px 0 0;}
body.premium-contact .contact-card a {font-size:clamp(16px,1.8vw,23px);overflow-wrap:anywhere;color:#f2f7fc;}
body.premium-contact .brief {padding:32px;border:1px solid #456278;border-radius:16px;}
body.premium-contact .brief h2 {margin-bottom:24px;}
body.premium-contact .brief label {display:block;font-size:14px;color:#edf5fc;margin:20px 0 8px;}
body.premium-contact .brief :is(input,textarea,select) {width:100%;min-width:0;border:1px solid #557086;background:#0a1726!important;color:#edf5fc!important;border-radius:8px;padding:12px;font-size:16px;}
body.premium-contact .brief option {background:#0a1726;color:#edf5fc;}
body.premium-contact .brief textarea {min-height:140px;resize:vertical;}
body.premium-contact .brief :is(input,textarea,select):focus {outline:2px solid #a5e9e7;outline-offset:3px;}
body.premium-contact .brief small {display:block;color:#c6d6e4;font-size:14px;line-height:1.6;margin-top:18px;}
body.premium-contact .brief button {margin-top:20px;min-height:48px;}
@media(max-width:900px){
 :is(body.premium-collection,body.premium-community,body.premium-contact) .page-hero {column-gap:28px;grid-template-columns:1.2fr 1fr;}
 body.premium-collection .casino-grid,body.premium-collection .photo-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 body.premium-contact .contact-grid {gap:22px;grid-template-columns:1fr 1.2fr;}
 body.premium-contact .brief {padding:24px;}
}
@media(max-width:680px){
 :is(body.premium-collection,body.premium-community,body.premium-contact) main > .wrap,body.premium-collection main.casino-archive {width:calc(100% - 36px);}
 :is(body.premium-collection,body.premium-community,body.premium-contact) .page-hero {display:flex;flex-direction:column;gap:16px;padding:28px 0 36px;}
 :is(body.premium-collection,body.premium-community,body.premium-contact) .page-hero .hero-photo {order:6;aspect-ratio:16/9;max-height:240px;margin-top:8px;}
 :is(body.premium-collection,body.premium-community,body.premium-contact) .page-hero h1 {font-size:38px;}
 :is(body.premium-collection,body.premium-community,body.premium-contact) section.block {padding:32px 0;}
 :is(body.premium-collection,body.premium-community) .section-photo {height:200px;}
 body.premium-collection .casino-grid,body.premium-collection .video-grid {grid-template-columns:1fr;gap:20px;}
 body.premium-collection .casino-grid img {height:240px;}
 body.premium-collection .photo-grid {gap:12px;}
 body.premium-collection #film-archive-link {width:calc(100% - 36px);padding:24px;}
 body.premium-community :is(.support-story,.impact-grid,.service-grid),body.premium-contact .contact-grid {grid-template-columns:1fr;gap:18px;}
 body.premium-community .impact-grid > div {padding:22px;}
 body.premium-contact .brief {padding:22px;}
}
@media(prefers-reduced-motion:reduce){body.premium-collection .casino-grid figure {transition:none;}body.premium-collection .casino-grid figure:hover {transform:none;}}
/* Keep the photo frame steady while the image gently moves within it. */
body.premium-collection .casino-grid figure button{overflow:hidden}body.premium-collection .casino-grid figure img{transform:scale(1);transition:transform .45s cubic-bezier(.2,.7,.3,1)}body.premium-collection .casino-grid figure:hover img,body.premium-collection .casino-grid figure:focus-within img{transform:scale(1.045)}@media(prefers-reduced-motion:reduce){body.premium-collection .casino-grid figure img{transition:none}body.premium-collection .casino-grid figure:hover img,body.premium-collection .casino-grid figure:focus-within img{transform:none}}
