/* Shared seasonal composition. All assets and colours are supplied by the skin. */
.lw-seasonal-showcase.has-spotlights{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(260px,1fr);gap:16px;margin-bottom:12px}
.has-spotlights .lw-promo-carousel{min-width:0}
.has-spotlights .lw-casino-banner{min-height:250px;height:250px;border:1px solid var(--skin-border);isolation:isolate}
.has-spotlights .lw-casino-banner-copy{max-width:68%;padding:26px 28px;z-index:3}
.has-spotlights .lw-casino-banner-copy>span{font-size:10px;letter-spacing:2px}
.has-spotlights .lw-promo-carousel h2{font-size:clamp(28px,2.7vw,42px);font-weight:650;letter-spacing:-1.2px;line-height:1.06;max-width:420px;margin:12px 0}
.has-spotlights .lw-casino-banner p{font-size:13px;line-height:1.5;max-width:330px;margin:0 0 18px}
.lw-seasonal-lead .lw-slide-background{display:block!important;width:100%;height:100%;opacity:1;object-position:center;z-index:-2}
.lw-seasonal-lead:before{content:"";position:absolute;inset:0;background:var(--season-hero-scrim);z-index:-1;pointer-events:none}
.has-spotlights .lw-promo-pagination{padding:8px 0 0}
.lw-seasonal-spotlights{display:grid;gap:12px;padding-bottom:44px;min-width:0}
.lw-seasonal-card{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;align-items:center;padding:18px;border:1px solid var(--skin-border);background:var(--season-card);color:var(--skin-text);text-decoration:none;overflow:hidden}
.lw-seasonal-card:after{content:"";position:absolute;right:-28px;top:-46px;width:120px;height:120px;border:1px solid var(--season-line);border-radius:50%;pointer-events:none}
.lw-seasonal-card-rewards{background:var(--season-reward-card)}
.lw-seasonal-emblem{display:grid;place-items:center;width:56px;height:64px;font-size:42px;font-family:Georgia,serif;color:var(--season-emblem);line-height:1;text-shadow:0 1px 0 rgb(255 255 255 / 35%)}
.lw-seasonal-card-image{width:56px;height:64px;object-fit:contain}
.lw-seasonal-label{font-size:9px;font-weight:650;letter-spacing:1.6px;text-transform:uppercase;color:var(--season-label)}
.lw-seasonal-card h3{font-size:18px;letter-spacing:-.3px;margin:5px 0 6px;color:var(--skin-text)}
.lw-seasonal-card p{font-size:12px;line-height:1.45;margin:0 0 10px;color:var(--skin-muted)}
.lw-seasonal-card strong{font-size:11px;color:var(--season-link);font-weight:650;display:flex;gap:12px;align-items:center}
.lw-seasonal-card:hover{border-color:var(--skin-cool)}
.lw-seasonal-card:focus-visible{outline:2px solid var(--skin-cool);outline-offset:3px}
.has-spotlights .cms-button{min-height:40px;padding:10px 18px;font-size:12px;box-shadow:none}
@media(max-width:1100px){.lw-seasonal-showcase.has-spotlights{grid-template-columns:minmax(0,1fr)}.lw-seasonal-spotlights{grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:0}.has-spotlights .lw-casino-banner{height:240px;min-height:240px}}
@media(max-width:760px){.lw-seasonal-showcase.has-spotlights{gap:12px;margin-bottom:22px}.has-spotlights .lw-casino-banner{height:208px;min-height:208px}.has-spotlights .lw-casino-banner-copy{padding:18px;max-width:78%}.has-spotlights .lw-promo-carousel h2{font-size:28px;letter-spacing:-.8px;max-width:230px;margin:9px 0}.has-spotlights .lw-casino-banner p{font-size:11px;line-height:1.4;margin-bottom:12px;max-width:195px}.has-spotlights .cms-button{min-height:36px;padding:8px 12px;font-size:11px}.lw-seasonal-card{padding:13px 12px;grid-template-columns:1fr;gap:0;min-height:94px}.lw-seasonal-card .lw-seasonal-emblem,.lw-seasonal-card-image{position:absolute;right:7px;top:7px;opacity:.16;width:38px;height:38px;font-size:36px}.lw-seasonal-card h3{font-size:15px;max-width:135px;margin:6px 0 10px}.lw-seasonal-card p{display:none}.lw-seasonal-card strong{font-size:10px}.lw-seasonal-label{font-size:8px;letter-spacing:1px}.lw-seasonal-lead .lw-slide-background{object-position:65% center}}
@media(prefers-reduced-motion:reduce){.has-spotlights *{scroll-behavior:auto;transition:none}}
/* Keep the seasonal merchandising compact, especially on phones. */
.has-spotlights .lw-casino-banner{box-shadow:none}
.lw-seasonal-spotlights{height:250px;align-self:start;grid-template-rows:repeat(2,minmax(0,1fr));padding-bottom:0}
.lw-seasonal-card{padding:12px 16px;gap:12px;grid-template-columns:48px minmax(0,1fr)}
.lw-seasonal-card h3{font-size:17px;margin:4px 0 5px}
.lw-seasonal-card p{font-size:11px;margin-bottom:6px}
.lw-seasonal-showcase.has-spotlights~.lw-casino-controls{padding-top:0}
@media(max-width:1100px){.lw-seasonal-spotlights{height:auto;grid-template-rows:auto}}
@media(max-width:760px){.lw-seasonal-showcase.has-spotlights{margin-bottom:8px;gap:10px}.has-spotlights .lw-casino-banner{height:180px;min-height:180px}.has-spotlights .lw-casino-banner p{display:none}.has-spotlights .lw-casino-banner h2{margin-bottom:14px}.lw-seasonal-card{padding:10px 12px;min-height:80px;grid-template-columns:1fr}.lw-seasonal-card h3{font-size:15px;margin:5px 0 8px}}
/* A single brand header spans the navigation and content in every skin. */
@media (min-width:761px) {@media(max-width:760px){
 .cms-public-home .cms-shell > .cms-card:first-child { margin-left:-224px; width:calc(100% + 224px); height:100px; min-height:100px; padding:12px 20px; z-index:80; display:flex; align-items:center; }}@media(max-width:760px){
 .cms-public-home.cms-casino-rail-collapsed .cms-shell > .cms-card:first-child { margin-left:-72px; width:calc(100% + 72px); }}@media(max-width:760px){
 .cms-public-home .cms-shell > .lw-casino-rail { top:100px; }}@media(max-width:760px){
 .cms-public-home .cms-brand-logo { width:184px; }}
}
.cms-public-home .cms-brand-logo { transform:translateY(7px); }
@media (max-width:760px) {
 .cms-public-home .cms-shell > .cms-card:first-child { padding:10px 12px; }
 .cms-public-home .cms-shell > .cms-card:first-child .cms-card-header,
 .cms-player-authenticated .cms-shell > .cms-card:first-child .cms-card-header { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
 .cms-public-home .cms-brand-mark,
 .cms-player-authenticated .cms-brand-mark { width:100%; display:flex; justify-content:center; margin:0; }
 .cms-public-home .cms-brand-logo { width:184px; }
 .cms-public-home .lw-public-actions { width:100%; margin:0; justify-content:center; gap:24px; }
 .cms-public-home .lw-public-actions > a:first-child { display:inline-flex; }
}@media(max-width:760px){
.cms-pwa-standalone .cms-shell > .cms-card:first-child .cms-card-header { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }}@media(max-width:760px){
.cms-pwa-standalone .cms-brand-mark { width:100%; display:flex; justify-content:center; margin:0; }}@media(max-width:760px){
.cms-pwa-standalone.cms-public-home .lw-public-actions { width:100%; margin:0; justify-content:center; gap:24px; }}@media(max-width:760px){
.cms-pwa-standalone.cms-public-home .lw-public-actions > a:first-child { display:inline-flex; }}
@media (min-width:761px) and (max-width:1100px) {@media(max-width:760px){
 .cms-public-home .cms-shell > .cms-card:first-child { margin-left:-72px; width:calc(100% + 72px); }}
}@media(max-width:760px){
body.cms-pwa-standalone.cms-public-home .cms-shell > .lw-casino-rail { display:none; }}@media(max-width:760px){
body.cms-pwa-standalone.cms-public-home .cms-shell { padding-left:0; padding-bottom:80px; }}@media(max-width:760px){
body.cms-pwa-standalone .lw-casino-mobile-nav { position:fixed; z-index:90; left:0; right:0; bottom:0; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); width:100%; max-width:none; margin:0; min-height:64px; border-top:1px solid var(--skin-border,#314355); background:var(--skin-page,#050a11); padding-bottom:env(safe-area-inset-bottom); }}@media(max-width:760px){
body.cms-pwa-standalone .lw-casino-mobile-nav a, body.cms-pwa-standalone .lw-casino-mobile-nav button { display:grid; place-content:center; gap:4px; border:0; background:transparent; color:var(--skin-muted,#b8cada); font:inherit; font-size:11px; text-align:center; text-decoration:none; }}@media(max-width:760px){
body.cms-pwa-standalone .lw-casino-mobile-nav img { justify-self:center; }}
/* Promotional artwork stays separate from live, accessible copy. */
.lw-promo-carousel, .lw-welcome-promo { font-family:var(--cms-font-family,"Segoe UI",Arial,sans-serif); }
.lw-promo-carousel h2, .lw-promo-carousel p, .lw-promo-carousel button, .lw-promo-carousel a,
.lw-welcome-promo h2, .lw-welcome-promo p, .lw-welcome-promo button, .lw-welcome-promo a { font-family:inherit; }
.lw-promo-carousel .lw-casino-banner { isolation:isolate; background:var(--skin-page,#050a11); }
.lw-promo-carousel .lw-slide-background { display:block; inset:0; width:100%; height:100%; opacity:1; object-fit:cover; object-position:center; z-index:-2; }
.lw-promo-carousel .lw-casino-banner::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,9,15,.96),rgba(3,9,15,.75) 38%,rgba(3,9,15,.05) 78%); z-index:-1; pointer-events:none; }
.lw-promo-carousel .lw-seasonal-lead::before { background:var(--season-hero-scrim); }
.lw-welcome-promo { max-height:calc(100dvh - 32px); overflow:auto; }
.lw-welcome-promo .lw-club-art { width:100%; aspect-ratio:2.3; object-fit:cover; object-position:right; max-height:none; margin:0 0 20px; display:block; }
.lw-welcome-promo h2 { margin:8px 0 14px; font-size:24px; line-height:1.2; }
.lw-welcome-promo p { margin:0 0 22px; line-height:1.6; }
.lw-welcome-promo small { margin-top:18px; padding-top:14px; border-top:1px solid var(--skin-border,#314355); line-height:1.5; font-size:12px; }
.lw-welcome-promo > button:not([aria-label]) { margin-left:12px; font:inherit; font-size:13px; }
@media(max-width:760px) {
 .lw-promo-carousel .lw-slide-background { display:block; object-position:65% center; }
 .lw-promo-carousel .lw-casino-banner::before { background:linear-gradient(90deg,rgba(3,9,15,.95),rgba(3,9,15,.70) 55%,rgba(3,9,15,.12)); }
 .lw-promo-carousel .lw-seasonal-lead::before { background:var(--season-hero-scrim); }
 .lw-welcome-promo { margin:auto auto calc(76px + env(safe-area-inset-bottom)); max-height:calc(100dvh - 100px); padding:24px; }
}
@media(max-width:760px) { .lw-promo-carousel .lw-casino-banner:not(.lw-seasonal-lead) { min-height:230px; } }
/* Slide-specific artwork: protect the full subject instead of cropping a wide strip. */
.lw-promo-carousel .lw-slide-picture { position:absolute; inset:0 0 0 auto; width:65%; z-index:-2; overflow:hidden; }
.lw-promo-carousel .lw-slide-picture .lw-slide-background { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; object-position:right center; z-index:auto; }
.lw-promo-carousel .lw-casino-banner::before { background:linear-gradient(90deg,var(--skin-page,#050a11) 15%,transparent 75%); }
.lw-promo-carousel .lw-seasonal-lead::before { background:var(--season-hero-scrim); }
@media(max-width:760px) {
 .lw-promo-carousel .lw-casino-banner, .has-spotlights .lw-casino-banner, .lw-promo-carousel .lw-casino-banner:not(.lw-seasonal-lead) { display:flex; flex-direction:column; height:350px; min-height:350px; padding:0; justify-content:flex-start; }
 .lw-promo-carousel .lw-slide-picture { position:relative; inset:auto; width:100%; height:180px; flex:0 0 180px; z-index:0; }
 .lw-promo-carousel .lw-slide-picture .lw-slide-background { object-fit:cover; object-position:right center; }
 .lw-promo-carousel .lw-casino-banner::before { display:none; }
 .lw-promo-carousel .lw-casino-banner-copy, .has-spotlights .lw-casino-banner-copy { width:100%; max-width:none; padding:16px 18px; flex:1; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
 .lw-promo-carousel .lw-casino-banner-copy h2 { font-size:25px; line-height:1.12; max-width:none; margin:7px 0 12px; }
 .lw-promo-carousel .lw-casino-banner-copy p { display:none; }
 .lw-promo-carousel .lw-casino-banner-copy > span { font-size:9px; }
 .lw-promo-carousel .lw-casino-banner-copy .cms-button { min-height:38px; padding:9px 14px; font-size:12px; }
}
@media(min-width:761px) {
 .lw-promo-carousel .lw-slide-picture { width:62%; }
 .lw-promo-carousel .lw-slide-picture .lw-slide-background { inset:0; width:100%; max-width:none; height:100%; object-fit:cover; object-position:75% 48%; mask-image:linear-gradient(90deg,transparent,#000 22%); }
}
@media(min-width:761px) {
 .lw-promo-carousel .lw-casino-banner { height:clamp(300px,23vw,420px); min-height:300px; }
 .lw-promo-carousel .lw-casino-banner-copy { max-width:48%; }
 .has-spotlights .lw-casino-banner-copy { padding:20px 24px; }
 .has-spotlights .lw-promo-carousel h2 { font-size:clamp(28px,2.5vw,36px); }
 .has-spotlights .lw-casino-banner p { margin-bottom:14px; }
}
@media(min-width:1101px) {
 .lw-seasonal-spotlights { height:clamp(300px,23vw,420px); }
}
