/* Shared public shell; catalogue rules remain scoped to catalogue components. */
body.catalog-home{--text:#f2f1eb;--muted:#aaa9a2;min-height:100vh;background:#171918;isolation:isolate;color:var(--text);padding:32px 24px}
/* Light positions and falloff sampled from the supplied desktop reference. Fixed layer persists while scrolling. */
body.catalog-home::before{--reference-gutter:max(24px,calc((100% - 1280px)/2));content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background-color:rgb(23,24,24);background-image:radial-gradient(ellipse 11.999vw 28.368vh at calc(var(--reference-gutter) * 0.2668) -0.444%,rgb(86,62,38) 0%,rgb(79,57,35) 15%,rgb(61,44,26) 30%,rgb(39,27,16) 45%,rgb(20,14,8) 60%,rgb(8,6,3) 75%,rgb(3,2,1) 90%,rgb(0,0,0) 100%),radial-gradient(ellipse 21.113vw 38.046vh at calc(var(--reference-gutter) * 1.0444) 10.078%,rgb(39,26,13) 0%,rgb(35,24,12) 15%,rgb(26,18,9) 30%,rgb(16,11,5) 45%,rgb(8,5,3) 60%,rgb(3,2,1) 75%,rgb(1,1,0) 90%,rgb(0,0,0) 100%),radial-gradient(ellipse 13.294vw 22.861vh at calc(var(--reference-gutter) * 0.4559) 92.870%,rgb(44,31,18) 0%,rgb(40,29,17) 15%,rgb(30,21,12) 30%,rgb(19,13,8) 45%,rgb(9,7,4) 60%,rgb(4,3,2) 75%,rgb(1,1,0) 90%,rgb(0,0,0) 100%),radial-gradient(ellipse 9.296vw 29.933vh at calc(100% - var(--reference-gutter) * 0.1557) 31.818%,rgb(31,21,11) 0%,rgb(28,19,10) 15%,rgb(21,14,8) 30%,rgb(13,9,5) 45%,rgb(6,4,2) 60%,rgb(3,2,1) 75%,rgb(1,1,0) 90%,rgb(0,0,0) 100%),radial-gradient(ellipse 20.401vw 19.457vh at calc(100% - var(--reference-gutter) * 1.0079) 69.977%,rgb(84,56,26) 0%,rgb(78,51,24) 15%,rgb(60,39,18) 30%,rgb(38,24,11) 45%,rgb(19,12,5) 60%,rgb(8,5,2) 75%,rgb(3,2,1) 90%,rgb(0,0,0) 100%),radial-gradient(ellipse 7.882vw 54.834vh at calc(100% - var(--reference-gutter) * 0.6565) 62.526%,rgb(39,26,14) 0%,rgb(36,24,13) 15%,rgb(27,18,9) 30%,rgb(17,11,6) 45%,rgb(8,5,3) 60%,rgb(3,2,1) 75%,rgb(1,1,0) 90%,rgb(0,0,0) 100%);background-blend-mode:screen;}
.catalog-home .home-stage{width:100%;max-width:1280px;margin:auto;border:1px solid transparent;border-radius:30px;background:#0c0e0e padding-box;box-shadow:0 24px 70px #0006;position:relative}
/* Paint the one-pixel frame above artwork and darkening layers, including corners. */
.catalog-home :is(.home-stage,.gd-mobile-rental)::after{content:'';position:absolute;inset:-1px;z-index:50;pointer-events:none;border-radius:inherit;padding:var(--ui-outline-width,1.5px);background:linear-gradient(180deg,rgba(211,197,165,.82) 0%,rgba(201,185,148,.78) 38%,rgba(181,166,132,.72) 70%,rgba(151,138,110,.65) 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude}
.catalog-home .home-stage>main{background:transparent;border-radius:0 0 29px 29px}
.catalog-home .catalog-header{position:relative;z-index:40;display:flex;align-items:center;gap:24px;min-height:86px;padding:16px 28px;border-bottom:1px solid #c9b99426;border-radius:29px 29px 0 0;background:transparent}

.catalog-home .catalog-nav{display:flex;align-self:stretch;align-items:center;justify-content:center;gap:22px;margin-inline:auto}
.catalog-home .catalog-nav a{position:relative;font-size:14px;white-space:nowrap;padding:14px 0}
.catalog-home .catalog-nav a[aria-current=page]::after{content:'';position:absolute;bottom:3px;left:0;right:0;height:2px;background:#c9b994}
.catalog-home .catalog-nav a:hover{color:#c9b994}
.catalog-home .catalog-header-actions{display:flex;align-items:center;gap:10px;flex:none}
.catalog-home .catalog-header .selected-games{position:relative;margin:0;padding:0;border:0;min-height:0;align-self:auto}
.catalog-home .catalog-header .selected-games-link,.catalog-home .catalog-header .site-cabinet{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 12px;border:var(--ui-outline-width,1.5px) solid #c9b99442;border-radius:11px;background:#101313;color:#f2f1eb;font:500 13px/1.3 Manrope,Arial,sans-serif;letter-spacing:0;text-transform:none;box-shadow:none;white-space:nowrap;cursor:pointer}
.catalog-home .catalog-header .selected-games-link:hover,.catalog-home .catalog-header .site-cabinet:hover{border-color:#c9b994a0;background:#c9b9940d}
.catalog-home .catalog-header .selected-games-link>svg{width:22px;height:22px;flex:none;color:#c9b994}
.catalog-home .catalog-header .selected-games-link [data-cart-count]{display:inline-flex;align-items:center;justify-content:center;min-width:23px;width:auto;height:23px;padding:0 5px;margin:0;border:var(--ui-outline-width,1.5px) solid #c9b99466;border-radius:50%;color:#c9b994;font-size:12px}
.catalog-home .catalog-header .selected-games-link .catalog-action-label{display:inline;min-width:0;width:auto;height:auto;margin:0;padding:0;border:0;border-radius:0;background:none;color:inherit;font:inherit;box-shadow:none}
.catalog-home .catalog-header .header-account-icon{width:24px;height:24px}
.catalog-home .catalog-header .header-account-chevron{width:12px;height:12px}
.catalog-home .catalog-header .site-account-menu{margin:0}
.catalog-home .catalog-header .site-cabinet::-webkit-details-marker{display:none}
.catalog-home .catalog-header .game-notification-count{position:absolute;top:-5px;right:-3px}
.catalog-home .catalog-header .site-account-menu summary{list-style:none}

.catalog-home .catalog-header :focus-visible,.catalog-home .catalog-filters button:focus-visible{outline:2px solid #c9b994;outline-offset:4px}

.catalog-home .catalog-location{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:var(--ui-outline-width,1.5px) solid #c9b9943d;border-radius:8px;background:#10141385;font-size:12px;color:#d5c7a9}
.catalog-home .catalog-location svg{width:17px;height:17px;flex:none}
.catalog-home .home-catalog{padding:28px 28px 50px;background:#0c0e0e;border-top:0;box-shadow:none;border-radius:0 0 29px 29px}
.catalog-home .home-catalog>.wrap{width:100%;max-width:none}
.catalog-home .home-catalog-heading{display:flex;align-items:center;gap:20px;margin:0 0 28px}
.catalog-home .home-catalog-heading h2{margin:0;font:600 29px/1.2 Oswald,'Arial Narrow',sans-serif;letter-spacing:.01em;white-space:nowrap}
.catalog-home .home-catalog-heading>p{margin:0 0 0 auto;color:#aaa9a2;font-size:12px;white-space:nowrap}
.catalog-home .catalog-filters{display:flex;gap:8px;flex-wrap:wrap}
.catalog-home .catalog-filters button{min-height:42px;padding:10px 15px;border:var(--ui-outline-width,1.5px) solid #c9b99438;border-radius:10px;background:#111414;color:#f2f1eb;font-size:13px;line-height:1.2;transition:background .2s,border-color .2s}
.catalog-home .catalog-filters button:hover{border-color:#c9b9949a}
.catalog-home .catalog-filters button[aria-pressed=true]{background:#c9b994;border-color:#c9b994;color:#151716}
.catalog-home .home-catalog-group[hidden]{display:none!important}
.catalog-home .home-game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1150px){.catalog-home .catalog-header{gap:18px;padding-inline:22px}.catalog-home .catalog-nav{gap:16px}.catalog-home .catalog-nav a{font-size:13px}.catalog-home .catalog-header-actions{gap:7px}.catalog-home .catalog-header .selected-games-link,.catalog-home .catalog-header .site-cabinet{padding-inline:9px}.catalog-home .home-catalog-heading{flex-wrap:wrap}.catalog-home .home-catalog-heading>p{margin-left:auto}}
@media(max-width:980px){.catalog-home .catalog-header{gap:14px}.catalog-home .catalog-header-actions{margin-left:auto}.catalog-home .catalog-nav{display:none;position:absolute;top:calc(100% + 8px);right:16px;width:230px;padding:10px;border:var(--ui-outline-width,1.5px) solid #c9b99442;border-radius:12px;background:#101413;box-shadow:0 12px 35px #0008}.catalog-home .catalog-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:4px}.catalog-home .catalog-nav a{padding:12px}.catalog-home .catalog-nav a[aria-current=page]::after{left:12px;right:12px;bottom:4px}.catalog-home .home-game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 body.catalog-home{padding:10px}
 body.catalog-home::before{--reference-gutter:10px;opacity:.58}
 .catalog-home .home-stage{border-radius:18px}
 .catalog-home .home-stage>main{border-radius:0 0 17px 17px}
 .catalog-home .catalog-header{min-height:86px;padding:12px;gap:8px;border-radius:17px 17px 0 0}

 .catalog-home .catalog-header-actions{gap:5px;margin-left:0}
 .catalog-home .catalog-header .selected-games-link .catalog-action-label,.catalog-home .header-account-label,.catalog-home .catalog-header .header-account-chevron{display:none}
 .catalog-home .catalog-header .site-cabinet,.catalog-home .catalog-header .selected-games-link{width:44px;min-width:44px;height:44px;padding:0;position:relative}
 .catalog-home .catalog-header .selected-games-link [data-cart-count]{position:absolute;top:-5px;right:-3px;min-width:19px;height:19px;font-size:10px;background:#0c0e0e}
 .catalog-home .catalog-header .selected-games{position:static}
 .catalog-home .catalog-header .selected-games-menu{right:10px;left:10px;width:auto;max-width:none;top:calc(100% + 8px)}
 .catalog-home .catalog-header .site-account-menu{position:static}
 .catalog-home .catalog-header .site-account-dropdown{right:10px;top:calc(100% + 8px)}

 .catalog-home .catalog-location{font-size:11px;padding:7px 9px}
 .catalog-home .home-catalog{padding:24px 12px 36px;border-radius:0 0 17px 17px}
 .catalog-home .home-catalog-heading{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:25px}
 .catalog-home .home-catalog-heading h2{font-size:27px;grid-row:1}
 .catalog-home .home-catalog-heading>p{grid-row:2;margin:0;font-size:12px}
 .catalog-home .catalog-filters{grid-row:3;display:grid;grid-template-columns:max-content max-content;gap:8px;margin-top:5px}
 .catalog-home .catalog-filters button{min-height:44px;padding:10px 13px;font-size:12px}
 .catalog-home .catalog-filters button:last-child{justify-self:stretch}
 .catalog-home .home-game-grid{grid-template-columns:minmax(0,1fr)}
 .catalog-home .home-catalog-section-head{gap:10px}
 .catalog-home .home-catalog-section-head h2{font-size:20px}
}
@media(max-width:350px){.catalog-home .catalog-header{padding-inline:8px;gap:6px}.catalog-home .catalog-header-actions{gap:4px}.catalog-home .home-catalog{padding-inline:12px}}

/* Public content sits inside the same frame as the catalogue. Dialogs stay outside it. */
.catalog-home.public-page .home-stage>main{width:100%;max-width:none;margin:0;border:0;box-shadow:none;min-height:0;background:transparent}
.catalog-home.public-page .home-stage>main.game-detail{padding-top:28px}
.catalog-home.public-page .home-stage>main.cart-page{padding-top:32px}
.catalog-home.public-page .process-page{padding-top:32px;min-height:0;background:transparent}
.catalog-home.public-page .hero-single-column{width:100%;border:0;box-shadow:none}

@media(max-width:600px){
 .catalog-home.public-page .home-stage>main.game-detail{padding:20px 16px 36px}
 .catalog-home.public-page .home-stage>main.cart-page,.catalog-home.public-page .process-page{padding-top:24px}
}

.catalog-home.public-page .process-steps{margin-top:0}

/* One continuous photograph behind every public page header and hero.
   Only the decorative layers are clipped; navigation menus remain outside. */
.catalog-home .home-top{position:relative;isolation:isolate;z-index:2;border-radius:29px 29px 0 0}

.catalog-home .home-top>.catalog-header{background:transparent;border-bottom:0;box-shadow:none}

/* Standard artwork stays inside the hero; content is laid out below it. */
@media(min-width:981px){
 body:is(.home-top-polish,.public-banner-unified) .home-top{isolation:auto;z-index:auto}

 body.home-top-polish .home-catalog{position:relative;z-index:2;background:transparent}
}
@media(max-width:980px){.catalog-home .home-top .catalog-nav{background:#0c0e0ef5}}
@media(max-width:600px){
 .catalog-home .home-top{border-radius:17px 17px 0 0}

}
/* Compact layouts keep the same hero/content stacking. */
@media(max-width:980px){
 body:is(.home-top-polish,.public-banner-unified) .home-top{isolation:auto;z-index:auto}

 body.home-top-polish .home-catalog{position:relative;z-index:2;background:transparent}
}
/* Shared public header and banner typography. Catalogue selectors apply only
   to catalogue headings and filters; card typography remains unchanged.
   Manrope uses the existing Cyrillic-capable Google Fonts import with display=swap. */
body.catalog-home{--top-text-primary:#f2f1eb;--top-text-secondary:#b5b2aa;--top-text-muted:#99978f;--top-accent:#c9b994;--top-font-family:Manrope,Arial,sans-serif;--top-header-height:86px;--top-nav-font-size:14px;--top-control-font-size:14px;--top-title-color:#e5dbc5;--top-description-color:#c4c1b9}
body.catalog-home .catalog-header-unbranded .catalog-nav{margin-left:0;margin-right:auto;justify-content:flex-start}

body.catalog-home .catalog-header{min-height:var(--top-header-height);padding:16px 28px;align-items:center;font:400 16px/1.6 var(--top-font-family);color:var(--top-text-primary);letter-spacing:normal}

body.catalog-home .catalog-nav a{font:500 var(--top-nav-font-size)/1.4 var(--top-font-family);color:var(--top-text-secondary);letter-spacing:normal}
body.catalog-home .catalog-nav a[aria-current=page],body.catalog-home .catalog-nav a:hover{color:var(--top-text-primary)}
body.catalog-home .catalog-nav{gap:22px}
body.catalog-home .catalog-nav a{display:inline-flex;align-items:center;gap:8px;padding:14px 0;border:0;border-radius:0;background:transparent;transition:color .2s ease}
body.catalog-home .catalog-nav a>svg{width:20px;height:20px;flex:none;color:var(--top-accent)}
body.catalog-home .catalog-nav a[aria-current=page]::after{left:0;right:0;bottom:3px;height:2px}
@media(max-width:980px){body.catalog-home .catalog-nav a{width:100%;padding:12px}body.catalog-home .catalog-nav a[aria-current=page]::after{left:12px;right:12px;bottom:4px}}
@media(prefers-reduced-motion:reduce){body.catalog-home .catalog-nav a{transition:none}}
body.catalog-home .catalog-header .selected-games-link,body.catalog-home .catalog-header .site-cabinet{min-height:42px;height:42px;font:500 var(--top-control-font-size)/1.4 var(--top-font-family);color:var(--top-text-primary);letter-spacing:0;border-color:#c9b99432;padding:10px 12px;background:rgba(12,14,14,.58);transition:background .2s,border-color .2s,color .2s}
body.catalog-home .catalog-header .selected-games-link [data-cart-count]{font:500 12px/1.4 var(--top-font-family);font-variant-numeric:tabular-nums}
body.catalog-home .catalog-header .selected-games-link>svg,body.catalog-home .catalog-header .header-account-icon{width:20px;height:20px;color:var(--top-accent)}

body.catalog-home .catalog-description-line{display:block}
body.catalog-home .catalog-location{margin-top:24px;padding:0;border:0;border-radius:0;background:none;gap:8px;font:400 13px/1.5 Manrope,Arial,sans-serif;color:var(--top-text-secondary);cursor:default}
body.catalog-home .catalog-location svg{width:18px;height:18px;color:var(--top-accent)}
body.catalog-home .home-catalog-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:16px 24px;margin-bottom:32px}
body.catalog-home .home-catalog-heading h2{font:600 28px/1.25 Manrope,Arial,sans-serif;letter-spacing:-.025em;color:var(--top-text-primary);text-transform:none}
body.catalog-home .home-catalog-heading>h2{grid-column:1;grid-row:1}
body.catalog-home .home-catalog-heading>p{grid-column:2;grid-row:1;font:400 14px/1.4 Manrope,Arial,sans-serif;color:var(--top-accent);margin:0;justify-self:end}
body.home-top-polish .home-catalog-heading [data-catalog-count]{font-weight:400;color:inherit;font-variant-numeric:tabular-nums}
body.catalog-home .catalog-filters{grid-column:1/-1;grid-row:2;gap:10px;justify-self:start}
body.catalog-home .catalog-filters button{min-height:40px;padding:9px 15px;border-radius:11px;font:500 14px/1.4 Manrope,Arial,sans-serif;color:var(--top-text-secondary);background:#0c0e0e55}
body.catalog-home .catalog-filters button[aria-pressed=true]{background:var(--top-accent);color:#0c0e0e}
body.home-top-polish .catalog-filters button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:46px;padding:11px 24px;border-radius:10px}
.home-top-polish .catalog-filter-icon{width:22px;height:22px;flex:none;color:inherit}
@media(min-width:601px){body.home-top-polish .catalog-filters button{padding-inline:20px}body.home-top-polish .catalog-filters button[data-catalog-filter=all]{min-width:160px}body.home-top-polish .catalog-filters button[data-catalog-filter=ps5]{min-width:180px}body.home-top-polish .catalog-filters button[data-catalog-filter=board-games]{min-width:196px}}
body.home-top-polish .catalog-filters button[aria-pressed=true]{background:var(--public-filter-fill);border-color:var(--top-accent);color:#0c0e0e}
@media(max-width:600px){body.home-top-polish .catalog-filters button{gap:6px;padding-inline:10px}}
@media(max-width:380px){body.home-top-polish .home-catalog-heading .catalog-filters{display:grid;grid-template-columns:1fr 1fr;width:100%}body.home-top-polish .catalog-filters button:last-child{justify-self:stretch}}
body.home-top-polish .catalog-filters button[aria-pressed=false]{background:transparent;border-color:rgba(201,185,148,.28);color:var(--top-text-primary);transition:background-color .4s ease,border-color .4s ease,color .35s ease,transform .2s ease}
@media(hover:hover) and (pointer:fine){body.home-top-polish .catalog-filters button[aria-pressed=false]:hover{background:rgba(201,185,148,.06);border-color:var(--top-accent);transform:translateY(-1px)}}
body.home-top-polish .catalog-filters button:active{transform:scale(.98)}
@media(prefers-reduced-motion:reduce){body.home-top-polish .catalog-filters button[aria-pressed=false]{transition:none}body.home-top-polish .catalog-filters button[aria-pressed=false]:hover,body.home-top-polish .catalog-filters button:active{transform:none}}
body.catalog-home .home-catalog-section-head{gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom-color:#c9b9942e}
body.catalog-home .home-catalog-section-head[hidden]{display:none}
body.catalog-home .home-catalog-section-head h2{display:flex;align-items:center;gap:10px;font:500 20px/1.35 Manrope,Arial,sans-serif;color:var(--top-accent);letter-spacing:-.02em}
body.catalog-home .home-catalog-section-head h2 svg{width:20px;height:20px;flex:none;color:inherit}
@media(max-width:700px){body.catalog-home .home-catalog-section-head h2 svg{width:18px;height:18px}}
body.catalog-home .home-catalog-section-head>span{font:500 12px/1.4 Manrope,Arial,sans-serif;color:var(--top-accent)}
@media(max-width:1150px){body.catalog-home .catalog-nav{gap:16px}}

@media(max-width:600px){
 body.catalog-home .catalog-header{padding:12px;gap:8px}

 body.catalog-home .catalog-header .selected-games-link,body.catalog-home .catalog-header .site-cabinet{height:44px;min-height:44px;min-width:44px;padding:0}

 body.catalog-home .catalog-location{font-size:12px;margin-top:24px}
 body.catalog-home .home-catalog-heading{grid-template-columns:minmax(0,1fr) auto;gap:16px 12px;margin-bottom:24px}
 body.catalog-home .home-catalog-heading h2{font-size:24px}
 body.catalog-home .home-catalog-heading>p{grid-column:2;grid-row:1;margin:0;justify-self:end}
 body.catalog-home .catalog-filters{display:flex;flex-wrap:nowrap;grid-row:2;gap:8px;margin-top:0}
 body.catalog-home .catalog-filters button{font-size:14px;min-height:44px;padding:10px 12px;white-space:nowrap}
 body.catalog-home .home-catalog-section-head h2{font-size:18px}
}
@media(max-width:350px){body.catalog-home .catalog-header{gap:6px}body.catalog-home .catalog-header-actions{gap:4px}body.catalog-home .home-catalog-section-head h2{font-size:18px}}

/* Responsive labels keep full accessible names and the existing filter actions. */
/* Landscape phones use a separate composition with the full board-game box. */

/* A dedicated portrait photograph keeps products below the copy. */

.catalog-home .catalog-filter-short{display:none}

body.catalog-home .catalog-header .selected-games-link:hover,body.catalog-home .catalog-header .site-cabinet:hover{background:rgba(12,14,14,.78);border-color:#c9b99488;color:var(--top-text-primary)}
@media(max-width:600px){
 .catalog-home .catalog-filter-full,.catalog-home .catalog-count-context{display:none}
.catalog-home .catalog-filter-short{display:inline}
}

/* Shared game opening starts below the opaque navigation strip. */
body.game-header-compact .home-stage{isolation:isolate}
body.game-header-compact .home-top{background:transparent;isolation:auto}
body.game-header-compact .game-opening-background{position:absolute;top:var(--pinned-header-height,76px);left:0;right:0;height:calc(600px - var(--pinned-header-height,76px));z-index:0;border-radius:0;overflow:hidden;pointer-events:none}
body.game-header-compact .game-opening-background>picture{display:contents}
body.game-header-compact .game-opening-background img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
body.game-header-compact .game-opening-shade{position:absolute;inset:0;background:linear-gradient(to top,#0c0e0e 0,rgba(12,14,14,.5) 30px,rgba(12,14,14,0) 80px)}
body.game-header-compact .home-stage>main.game-detail{position:relative;z-index:1;padding:20px 28px 50px}
body.game-header-compact .gd-hero:not(.is-playing-trailer){background:transparent;border-color:transparent;box-shadow:none}
body.game-header-compact .gd-hero:not(.is-playing-trailer)>#gd-hero-image,body.game-header-compact .gd-hero>.gd-hero-backdrop{opacity:0}
body.game-header-compact .gd-hero>.gd-hero-shade{display:none}
body.game-header-compact .gd-back{display:inline-flex;align-items:center;min-height:44px;font:500 13px/1.5 Manrope,Arial,sans-serif;color:var(--top-accent);margin:0 0 16px;transition:color .2s ease}
body.game-header-compact .gd-back:hover{color:var(--top-text-primary)}
body.game-header-compact .game-detail .gd-hero{margin-top:max(0px,calc(123.3px - var(--game-header-height,76px)))}
.home-catalog .home-game-card{scroll-margin-top:24px}
body.game-header-compact .gd-thumbnails{margin-bottom:24px}
/* Match the homepage's 516px artwork, including navigation and the lower fade. */
@media(min-width:981px){body.game-header-compact .game-detail .gd-hero{height:372px;min-height:0;aspect-ratio:auto}}
@media(max-width:980px) and (max-height:600px) and (orientation:landscape){
 body.game-header-compact .game-detail .gd-hero{height:272px;min-height:0;aspect-ratio:auto}
}
@media(max-width:600px) and (max-height:600px) and (orientation:landscape){
 body.game-header-compact .game-detail .gd-hero{height:276px}
}
@media(max-width:600px){body.game-header-compact .game-opening-background{top:var(--pinned-header-height,72px);height:calc(390px - var(--pinned-header-height,72px))}body.game-header-compact .game-opening-shade{background:linear-gradient(to top,#0c0e0e,rgba(12,14,14,0) 65px)}body.game-header-compact .home-stage>main.game-detail{padding:16px 12px 36px}body.game-header-compact .gd-back{margin-bottom:12px}}
@media(max-width:600px){body.game-header-compact .game-detail .gd-hero{margin-top:max(0px,calc(107.3px - var(--game-header-height,64px)))}}

/* Homepage cards share the top area's typography and colour hierarchy.
   Existing action layers and their animations are deliberately retained. */
.home-top-polish .home-game-content{padding:16px;background:#0c0e0e}
/* Fade the complete clipped image viewport after its hover layers are composed. */
.home-top-polish .home-game-card{background-color:#0c0e0e;transition:border-color .22s,box-shadow .22s}
/* Keep fine strokes and text on fixed pixels while only the artwork grows. */
@media(hover:hover) and (pointer:fine){.home-top-polish .home-game-card:hover{transform:none}}
.home-top-polish .home-game-visual{isolation:isolate;clip-path:inset(0 0 2px);-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 44px),rgba(0,0,0,.88) calc(100% - 32px),rgba(0,0,0,.45) calc(100% - 16px),transparent calc(100% - 3px));mask-image:linear-gradient(to bottom,#000 calc(100% - 44px),rgba(0,0,0,.88) calc(100% - 32px),rgba(0,0,0,.45) calc(100% - 16px),transparent calc(100% - 3px));-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}
.home-top-polish .home-game-visual img{z-index:0;inset:0 auto auto 0;max-width:none;transform:none;transition:width .45s ease,height .45s ease,left .45s ease,top .45s ease}
/* Resize within the fixed mask instead of compositing a scaled image across its edge. */
@media(hover:hover) and (pointer:fine){.home-top-polish .home-game-card:hover .home-game-visual img{width:102.5%;height:102.5%;left:-1.25%;top:-1.25%;transform:none}}
@media(prefers-reduced-motion:reduce){.home-top-polish .home-game-visual img{transition:none}.home-top-polish .home-game-card:hover .home-game-visual img{width:100%;height:100%;left:0;top:0}}
.home-top-polish .home-game-visual::after{z-index:1;background-image:none}
.home-top-polish .home-game-title-row{min-height:41px;gap:8px;margin-bottom:6px}
.home-top-polish .home-game-title{font:600 18px/1.35 Manrope,Arial,sans-serif;letter-spacing:-.02em;color:var(--top-text-primary)}
.home-top-polish .home-game-title a{transition:color .2s ease}
.home-top-polish .home-game-languages{font:400 12px/1.45 Manrope,Arial,sans-serif;margin-bottom:24px}
.home-top-polish .home-game-languages b{font-weight:500;color:var(--top-text-primary)}
.home-top-polish .home-game-bottom,.home-top-polish .home-game-languages:not(.is-board-language){grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr) 112px;gap:8px}
.home-top-polish .home-game-bottom{padding-top:12px}
.home-top-polish .home-game-actions::before{display:none}
.home-top-polish .home-game-daily small,.home-top-polish .home-game-deposit small{font:400 12px/1.5 Manrope,Arial,sans-serif;color:var(--top-text-secondary)}
.home-top-polish .home-game-daily small:not(.home-game-rate-label){font:500 12px/1.45 Manrope,Arial,sans-serif;color:var(--top-text-primary)}
.home-top-polish .home-game-later-rate span{white-space:nowrap}
.home-top-polish .home-game-daily .home-game-rate-label,.home-top-polish .home-game-deposit>small{color:var(--top-accent);text-transform:none;margin-bottom:6px;gap:5px}
.home-top-polish .home-game-daily strong,.home-top-polish .home-game-deposit strong{font:700 23px/1.3 Manrope,Arial,sans-serif;letter-spacing:-.035em;color:var(--top-accent);font-variant-numeric:tabular-nums}
.home-top-polish .home-game-daily em{font:500 12px/1.45 Manrope,Arial,sans-serif;letter-spacing:0;color:var(--top-text-primary)}
.home-top-polish .home-game-action{height:42px;border-radius:11px;font:500 13px/1.4 Manrope,Arial,sans-serif}
.home-top-polish .home-game-add{font-weight:600}
.home-top-polish .home-game-card:not(.is-selected) .home-game-add:not(.home-game-notify):not(:disabled){background:var(--public-filter-fill)}
@media(hover:hover) and (pointer:fine){.home-top-polish .home-game-card:not(.is-selected) .home-game-add:not(.home-game-notify):not(:disabled):hover{background:var(--public-filter-fill)}}
.home-top-polish .home-game-card.is-selected .home-game-add,
.home-top-polish .home-game-card .home-game-notify,
.home-top-polish .home-game-card .home-game-notify.is-notify-active{background:transparent;border:var(--ui-outline-width,1.5px) solid rgba(201,185,148,.28);border-radius:10px;color:var(--top-text-primary);font-weight:500;box-shadow:none;transition:background-color .4s ease,border-color .4s ease,color .35s ease,transform .2s ease}
@media(hover:hover) and (pointer:fine){
 .home-top-polish .home-game-card.is-selected .home-game-add:not(:disabled):hover,
 .home-top-polish .home-game-card .home-game-notify:not(:disabled):hover{background:rgba(201,185,148,.06);border-color:var(--top-accent);color:var(--top-text-primary);box-shadow:none;transform:translateY(-1px)}
}
.home-top-polish .home-game-card.is-selected .home-game-add:active,
.home-top-polish .home-game-card .home-game-notify:active{transform:scale(.98)}
@media(prefers-reduced-motion:reduce){.home-top-polish .home-game-card.is-selected .home-game-add,.home-top-polish .home-game-card .home-game-notify{transition:none}.home-top-polish .home-game-card.is-selected .home-game-add:not(:disabled):hover,.home-top-polish .home-game-card.is-selected .home-game-add:active,.home-top-polish .home-game-card .home-game-notify:not(:disabled):hover,.home-top-polish .home-game-card .home-game-notify:active{transform:none}}
.home-top-polish .home-game-board-parameters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr) minmax(0,1fr);gap:8px;margin:0 0 24px;font:400 12px/1.45 Manrope,Arial,sans-serif}
.home-top-polish .home-game-board-parameters>div{position:relative;min-width:0}
.home-top-polish .home-game-board-parameters>div+div::before{content:'';position:absolute;left:-4px;top:10%;height:80%;width:1px;background:linear-gradient(180deg,transparent,rgba(201,185,148,.4),transparent)}
.home-top-polish .home-game-board-parameters span{display:flex;align-items:center;gap:4px;color:var(--top-accent)}
.home-top-polish .home-game-board-parameters svg{width:16px;height:16px;flex:none}
.home-top-polish .home-game-board-parameters b{display:block;margin:4px 0 0;font-weight:500;color:var(--top-text-primary)}
.home-top-polish .home-game-action-symbol svg,.home-top-polish .home-game-remove-state svg,.home-top-polish .home-game-notify-cancel svg{width:16px;height:16px}
.home-top-polish .home-game-image-details{font:500 14px/1.4 Manrope,Arial,sans-serif;color:var(--top-text-primary)}
@media(max-width:700px),(hover:none) and (pointer:coarse){
 .home-top-polish .home-game-card{cursor:pointer}
 .home-top-polish .home-game-image-details,.home-top-polish .home-game-details{display:none}
}
.home-top-polish .catalog-status{font:400 12px/1.45 Manrope,Arial,sans-serif;letter-spacing:0;text-transform:none}
@media(max-width:600px){
 .home-top-polish .home-game-action{height:48px}
 .home-top-polish .home-game-title{font-size:18px;-webkit-line-clamp:4}
}
@media(max-width:380px){
 .home-top-polish .home-game-content{padding:12px}
 .home-top-polish .home-game-bottom,.home-top-polish .home-game-languages:not(.is-board-language){grid-template-columns:minmax(0,1.4fr) minmax(0,1.1fr);gap:12px}
 .home-top-polish .home-game-languages>span:nth-child(2){grid-column:2}
 .home-top-polish .home-game-actions{grid-column:1/-1;grid-template-columns:1fr 1fr;padding-left:0;border-left:0;gap:10px}
 .home-top-polish .home-game-actions::before{display:none}
 .home-top-polish .home-game-deposit small svg{display:block}
 .home-top-polish .home-game-daily strong{flex-wrap:nowrap}
 .home-top-polish .home-game-daily em{flex-basis:auto}
}

/* Reuse the card's 0.8s sheen on homepage navigation and controls.
   A separate, non-interactive child preserves active-link underlines. */
:is(.home-top-polish,.public-banner-unified) .home-sheen-control{position:relative;isolation:isolate}
:is(.home-top-polish,.public-banner-unified) .home-control-sheen{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none;z-index:-1}
:is(.home-top-polish,.public-banner-unified) .home-control-sheen::after{content:'';position:absolute;inset:0;opacity:0;background:linear-gradient(105deg,transparent 20%,rgba(255,244,215,.28) 48%,transparent 76%);pointer-events:none}
.home-top-polish .catalog-filters button[aria-pressed=true] .home-control-sheen::after{background:linear-gradient(105deg,transparent 12%,rgba(255,250,232,.22) 32%,rgba(255,255,248,.72) 50%,rgba(255,250,232,.22) 68%,transparent 88%)}
:is(.home-top-polish,.public-banner-unified) .home-sheen-control:focus-visible .home-control-sheen::after{animation:selection-highlight .8s ease-out both}
@media(hover:hover) and (pointer:fine){:is(.home-top-polish,.public-banner-unified) .home-sheen-control:hover .home-control-sheen::after{animation:selection-highlight .8s ease-out both}}
:is(.home-top-polish,.public-banner-unified) .home-sheen-control.is-home-pressed .home-control-sheen::after{animation:selection-switch-highlight .8s ease-out both}
.home-top-polish .home-game-details.is-home-pressed::after{animation:selection-switch-highlight .8s ease-out both}
:is(.home-top-polish,.public-banner-unified) .home-sheen-control:focus-visible{outline:2px solid var(--top-accent);outline-offset:3px}
@media(prefers-reduced-motion:reduce){:is(.home-top-polish,.public-banner-unified) .home-sheen-control .home-control-sheen::after,.home-top-polish .home-game-details.is-home-pressed::after{animation:none!important}}

/* Search shares the category toolbar and slides open on mobile. */
body.home-top-polish .home-catalog-heading .catalog-filters{grid-column:1;align-self:center}
body.home-top-polish .catalog-search-slot{grid-column:2;grid-row:2;display:grid;grid-template-rows:0fr;width:340px;max-width:100%;min-width:0;opacity:0;transition:grid-template-rows .3s ease,opacity .24s ease,margin .3s ease}
body.home-top-polish .catalog-search-slot.is-open{grid-template-rows:1fr;opacity:1}
body.home-top-polish .catalog-search-clip{min-height:0;overflow:hidden}
body.home-top-polish .catalog-search{display:flex;align-items:center;gap:4px;width:100%;height:50px;margin:0;border:var(--ui-outline-width,1.5px) solid var(--public-border);border-radius:10px;background:transparent;padding:3px 4px 3px 14px;color:var(--top-text-secondary);box-sizing:border-box;transition:border-color .2s,background .2s}
body.home-top-polish .catalog-search-slot[hidden],body.home-top-polish .catalog-search button[hidden],body.home-top-polish .home-game-card[hidden],body.home-top-polish .catalog-search-empty[hidden]{display:none}
body.home-top-polish .catalog-search:focus-within{border-color:var(--top-accent);background:rgba(201,185,148,.03)}
body.home-top-polish .catalog-search input{width:100%;min-width:0;height:40px;padding:0;background:transparent;border:0;outline:0;color:var(--top-text-primary);font:400 14px/1.4 Manrope,Arial,sans-serif;box-shadow:none}
body.home-top-polish .catalog-search input:focus-visible{outline:0}
body.home-top-polish .catalog-search input::-webkit-search-cancel-button{appearance:none}
body.home-top-polish .catalog-search button{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:0;border:0;background:none;color:var(--top-text-secondary);border-radius:8px;cursor:pointer}
body.home-top-polish .catalog-search button:hover{color:var(--top-accent);background:rgba(201,185,148,.06)}
body.home-top-polish .catalog-search button svg{width:18px;height:18px}
body.home-top-polish .catalog-search .catalog-search-submit{width:auto;padding:0 16px;background:transparent;border:var(--ui-outline-width,1.5px) solid var(--public-border);border-radius:10px;color:var(--top-text-primary);font:500 14px/1.4 Manrope,Arial,sans-serif;box-shadow:none;transition:background-color .4s ease,border-color .4s ease,color .35s ease,transform .2s ease}
@media(hover:hover) and (pointer:fine){body.home-top-polish .catalog-search .catalog-search-submit:hover{background:rgba(201,185,148,.06);border-color:var(--top-accent);color:var(--top-text-primary);box-shadow:none;transform:translateY(-1px)}}
body.home-top-polish .catalog-search .catalog-search-submit:active{transform:scale(.98)}
body.home-top-polish .catalog-search-empty{padding:28px 20px;margin:0;border:var(--ui-outline-width,1.5px) solid var(--public-border);border-radius:12px;text-align:center;color:var(--top-text-secondary);font:400 15px/1.6 Manrope,Arial,sans-serif}
body.home-top-polish .catalog-filters .catalog-search-toggle[hidden]{display:none}
body.home-top-polish .catalog-filters .catalog-search-toggle{width:46px;min-width:46px;height:46px;padding:0;flex:none;background:transparent;border-color:var(--public-border);color:var(--top-text-primary);margin:0}
body.home-top-polish .catalog-filters .catalog-search-toggle.is-search-active{background:var(--public-filter-fill);border-color:var(--top-accent);color:#0c0e0e}
@media(max-width:900px){
 body.home-top-polish .home-catalog-heading .catalog-filters{grid-column:1/-1;width:auto;max-width:100%}
 body.home-top-polish .catalog-search-slot{grid-column:1/-1;grid-row:3;width:100%;margin-top:-16px}
 body.home-top-polish .catalog-search-slot.is-open{margin-top:0}
 body.home-top-polish .catalog-search input{font-size:16px}
 body.home-top-polish .catalog-search button{height:44px;min-width:44px}
 body.home-top-polish .catalog-search{height:54px}
}
@media(max-width:600px){body.home-top-polish .catalog-filters .catalog-search-toggle{width:44px;min-width:44px;height:44px}}
@media(max-width:380px){body.home-top-polish .home-catalog-heading .catalog-filters{display:flex;gap:8px}body.home-top-polish .catalog-filters button{min-width:0}body.home-top-polish .catalog-filters .catalog-search-toggle{min-width:44px}}
@media(prefers-reduced-motion:reduce){body.home-top-polish .catalog-search-slot,body.home-top-polish .catalog-search .catalog-search-submit{transition:none}body.home-top-polish .catalog-search .catalog-search-submit:hover,body.home-top-polish .catalog-search .catalog-search-submit:active{transform:none}}
/* Catalogue dropdowns stay above cards and outside the hero's image clipping. */
body.home-top-polish .catalog-filters{position:relative;z-index:5;overflow:visible}
body.home-top-polish .catalog-dropdown{position:relative;min-width:0}
body.home-top-polish .catalog-filters .catalog-dropdown-toggle{display:flex;align-items:center;gap:12px;min-width:130px;max-width:100%;height:46px;padding:0 16px;background:transparent;border:var(--ui-outline-width,1.5px) solid var(--public-border);border-radius:10px;color:var(--top-text-primary);font:500 14px/1.4 Manrope,Arial,sans-serif;white-space:nowrap}
body.home-top-polish .catalog-dropdown-toggle svg{width:18px;height:18px;flex:none;transition:transform .2s}
body.home-top-polish .catalog-dropdown-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
body.home-top-polish .catalog-filters .catalog-dropdown-toggle.is-filter-selected{background:var(--public-filter-fill);border-color:var(--top-accent);color:#0c0e0e}
body.home-top-polish .catalog-filters .catalog-dropdown-toggle:disabled{opacity:.55;cursor:not-allowed;background:transparent;transform:none}
body.home-top-polish .catalog-dropdown-options{position:absolute;top:calc(100% + 8px);left:0;z-index:10;min-width:220px;max-width:min(300px,calc(100vw - 48px));max-height:320px;overflow:auto;padding:6px;background:#0c0e0e;border:var(--ui-outline-width,1.5px) solid var(--public-border);border-radius:10px;box-shadow:0 12px 32px #0008}
body.home-top-polish .catalog-dropdown-options[hidden]{display:none}
body.home-top-polish .catalog-filters .catalog-dropdown-options button{display:flex;align-items:center;width:100%;min-width:0;min-height:44px;height:auto;padding:10px 12px;text-align:left;white-space:normal;border:0;border-radius:6px;background:transparent;color:var(--top-text-primary);font:500 14px/1.4 Manrope,Arial,sans-serif;box-shadow:none}
body.home-top-polish .catalog-filters .catalog-dropdown-options button[aria-pressed=true],body.home-top-polish .catalog-filters .catalog-dropdown-options button:hover{background:rgba(201,185,148,.12);color:var(--top-accent)}
@media(max-width:600px){body.home-top-polish .catalog-filters{gap:8px;flex-wrap:nowrap;max-width:100%}body.home-top-polish .catalog-dropdown{flex:0 1 auto;min-width:0;max-width:170px}body.home-top-polish .catalog-filters .catalog-dropdown-toggle{min-width:0;width:100%;height:44px;padding:0 12px;gap:8px;font-size:13px}body.home-top-polish .catalog-dropdown-toggle span{min-width:0;overflow:hidden;text-overflow:ellipsis;max-width:145px}body.home-top-polish .catalog-dropdown[data-catalog-dropdown=genre] .catalog-dropdown-options{left:auto;right:0}}
@media(prefers-reduced-motion:reduce){body.home-top-polish .catalog-dropdown-toggle svg{transition:none}}
@media(max-width:600px){body.home-top-polish .catalog-filters .catalog-dropdown-toggle{padding-inline:10px;gap:6px}}
@media(max-width:980px){

 body.catalog-home .catalog-header-unbranded .catalog-nav,
 body.catalog-home .catalog-header-unbranded .catalog-nav.is-open{display:flex;position:static;flex-direction:row;align-items:center;align-self:center;justify-content:flex-start;width:auto;padding:0;margin:0 auto 0 0;gap:16px;border:0;border-radius:0;background:transparent;box-shadow:none}
 body.catalog-home .catalog-header-unbranded .catalog-nav a{width:auto;min-height:44px;padding:0;gap:6px}
 body.catalog-home .catalog-header-unbranded .catalog-nav a[aria-current=page]::after{left:0;right:0;bottom:3px}
}
@media(max-width:600px){
 body.catalog-home .catalog-header-unbranded .catalog-nav{gap:12px}
 body.catalog-home{--top-nav-font-size:13px}
 body.catalog-home .catalog-header-unbranded .catalog-nav a{font-size:var(--top-nav-font-size)}
}
@media(max-width:380px){
 body.catalog-home .catalog-header-unbranded .catalog-nav a[href="how-it-works.php"]>span{max-width:80px;white-space:normal}
}
@media(max-width:350px){
 body.catalog-home .catalog-header-unbranded .catalog-nav{gap:10px}
 body.catalog-home .catalog-header-unbranded .catalog-nav a[href="index.php"]>svg{display:none}
}

/* Keep content stacking below the standard hero. */
body.public-banner-unified .home-stage>main{position:relative;z-index:2}

/* Compact spacing after the straight artwork edge; game headers stay independent. */
body:is(.home-top-polish,.public-banner-unified){--public-content-start-gap:24px}
body.home-top-polish .home-catalog,
body.catalog-home.public-banner-unified:not(.admin-body) .home-stage>main.cart-page,
body.catalog-home.public-banner-unified:not(.admin-body) .process-page,
body.catalog-home.public-banner-unified:not(.admin-body) .cabinet-page-shell{padding-top:var(--public-content-start-gap)}
body.catalog-home.public-banner-unified.cabinet-admin-body .home-stage>main.admin-main{padding-top:var(--public-content-start-gap)}
body.catalog-home.public-banner-unified.cabinet-admin-body .admin-main>:first-child{margin-top:0}
body.catalog-home.public-banner-unified:not(.admin-body) .cabinet-tab-panel>:first-child,
body.catalog-home.public-banner-unified:not(.admin-body) .cabinet-page-inner>:first-child{margin-top:0}
@media(max-width:600px){
 body:is(.home-top-polish,.public-banner-unified){--public-content-start-gap:20px}
}

/* The shared script compensates for space inside the first visible content.
   A negative remainder uses margin because CSS padding cannot be negative. */
body.catalog-home [data-content-start-aligned]{
 display:flow-root;
 padding-top:max(0px,calc(var(--public-content-start-gap) + var(--content-start-adjustment,0px)))!important;
 margin-top:min(0px,calc(var(--public-content-start-gap) + var(--content-start-adjustment,0px)))!important;
}
