/* BILSTORE_POSTER_CATALOG_V1 — portrait cards, shared by every catalog item. */
#games.poster-grid[data-category], #posterWall.poster-wall[data-category] {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:20px !important;
  align-items:start;
}
#games .product-poster.reference-card.catalog-poster-card,
#posterWall .product-poster.reference-card.catalog-poster-card {
  position:relative;
  display:block;
  width:100%; min-width:0; min-height:0; height:auto;
  aspect-ratio:2 / 3;
  margin:0; padding:0; gap:0;
  overflow:hidden;
  isolation:isolate;
  border:0; border-radius:16px;
  background:#252127;
  box-shadow:none;
  text-align:left;
  transform:none;
  -webkit-tap-highlight-color:transparent;
}
#games .catalog-poster-card::before, #posterWall .catalog-poster-card::before,
#games .catalog-poster-card::after, #posterWall .catalog-poster-card::after,
#games .reference-card.catalog-poster-card .product-thumbnail::after,
#posterWall .reference-card.catalog-poster-card .product-thumbnail::after { display:none; }
#games .reference-card.catalog-poster-card .product-thumbnail,
#posterWall .reference-card.catalog-poster-card .product-thumbnail {
  position:absolute; inset:0; display:block;
  width:100%; height:100%; min-height:0;
  margin:0; padding:0; border:0; border-radius:inherit;
  background:transparent; box-shadow:none; transform:none;
  overflow:hidden;
}
#games .reference-card.catalog-poster-card .product-picture,
#posterWall .reference-card.catalog-poster-card .product-picture {
  position:absolute; inset:0; display:block;
  width:100%; height:100%; max-width:none; max-height:none;
  margin:0; padding:0; border:0; border-radius:0;
  object-fit:cover; object-position:center top;
  filter:none; transform:none;
}
#games .reference-card.catalog-poster-card .product-picture.is-logo,
#games .reference-card.catalog-poster-card .product-picture.is-poster-icon,
#posterWall .reference-card.catalog-poster-card .product-picture.is-logo,
#posterWall .reference-card.catalog-poster-card .product-picture.is-poster-icon {
  object-fit:contain; object-position:center 30%; padding:12%;
  background:radial-gradient(ellipse at top,#70425c,#211b26 85%);
}
#games .reference-card.catalog-poster-card .product-copy,
#posterWall .reference-card.catalog-poster-card .product-copy {
  position:absolute; inset:auto 0 0; z-index:2;
  display:flex; flex-direction:column; justify-content:flex-end; align-items:center;
  width:100%; min-width:0; min-height:38%; height:auto;
  margin:0; padding:34px 10px 16px; gap:0;
  background:linear-gradient(transparent,rgba(10,9,16,.62) 48%,rgba(10,9,16,.92));
  text-align:center;
  pointer-events:none;
}
#games .reference-card.catalog-poster-card .product-name,
#posterWall .reference-card.catalog-poster-card .product-name {
  display:block;
  width:100%; min-height:0; margin:0; padding:0;
  font-family:'IBM Plex Sans',Arial,sans-serif !important;
  font-size:clamp(14px,1.3vw,19px) !important;
  font-weight:700 !important; line-height:1.16; letter-spacing:.01em;
  color:#fff; text-align:center; text-transform:uppercase;
  text-shadow:0 2px 9px #0009;
  white-space:normal; overflow-wrap:break-word; word-break:normal; text-wrap:balance;
}
/* Keep live payment status available to assistive technology and on focus/hover. */
#games .reference-card.catalog-poster-card .product-availability,
#posterWall .reference-card.catalog-poster-card .product-availability {
  position:absolute; width:1px; height:1px; min-height:0;
  overflow:hidden; clip:rect(0,0,0,0); clip-path:inset(50%);
  margin:0; padding:0; white-space:nowrap;
  font-family:'IBM Plex Sans',Arial,sans-serif;
  font-size:11px; line-height:1.3; color:#eee2eb;
}
#games .catalog-poster-card:focus-visible,
#posterWall .catalog-poster-card:focus-visible { outline:3px solid #efabc7; outline-offset:4px; }
#games .catalog-poster-card:focus-visible .product-availability,
#posterWall .catalog-poster-card:focus-visible .product-availability {
  position:static; width:auto; height:auto; margin-top:7px;
  clip:auto; clip-path:none; white-space:normal;
}
.catalog .section-head { margin-bottom:22px; }
.catalog .search { border-radius:12px; }
@media(hover:hover) and (pointer:fine) {
  #games .catalog-poster-card:hover,
  #posterWall .catalog-poster-card:hover { box-shadow:0 0 0 2px #efabc7; }
  #games .catalog-poster-card:hover .product-availability,
  #posterWall .catalog-poster-card:hover .product-availability {
    position:static; width:auto; height:auto; margin-top:7px;
    clip:auto; clip-path:none; white-space:normal;
  }
}
@media(min-width:701px) and (max-width:1100px) {
  #games.poster-grid[data-category], #posterWall.poster-wall[data-category] {
    grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:18px !important;
  }
}
@media(max-width:700px) {
  #games.poster-grid[data-category], #posterWall.poster-wall[data-category] {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:14px !important;
  }
  #games .product-poster.reference-card.catalog-poster-card,
  #posterWall .product-poster.reference-card.catalog-poster-card { border-radius:13px; }
  #games .reference-card.catalog-poster-card .product-copy,
  #posterWall .reference-card.catalog-poster-card .product-copy { padding:26px 6px 12px; }
  #games .reference-card.catalog-poster-card .product-name,
  #posterWall .reference-card.catalog-poster-card .product-name { font-size:clamp(12px,3vw,17px) !important; }
  .catalog .section-head { gap:14px; margin-bottom:18px; }
  .catalog .search { min-height:46px; }
}
@media(max-width:360px) {
  #games.poster-grid[data-category], #posterWall.poster-wall[data-category] { gap:10px !important; }
}
@media(prefers-reduced-motion:no-preference) {
  #games .catalog-poster-card, #posterWall .catalog-poster-card { transition:box-shadow .18s ease; }
}

/* BILSTORE_CATALOG_LOGOS_V1 — keep the shared grid; replace character posters. */
#games .product-poster.reference-card.catalog-logo-card,
#posterWall .product-poster.reference-card.catalog-logo-card {
  border:1px solid #69435a;
  background:radial-gradient(ellipse at 50% 25%,#5a354b 0%,#2a1d2b 65%,#211824 100%);
}
#games .reference-card.catalog-logo-card .product-thumbnail,
#posterWall .reference-card.catalog-logo-card .product-thumbnail { background:transparent; }
#games .reference-card.catalog-logo-card .product-picture,
#posterWall .reference-card.catalog-logo-card .product-picture {
  inset:12% 9% auto; width:82%; height:57%; padding:0;
  object-fit:contain; object-position:center; background:none; transform:none;
}
#games .reference-card.catalog-logo-card .is-game-app-icon,
#posterWall .reference-card.catalog-logo-card .is-game-app-icon { border-radius:14px; }
#games .reference-card.catalog-logo-card .game-logo--white,
#posterWall .reference-card.catalog-logo-card .game-logo--white { filter:brightness(0) invert(1); }
#games .reference-card.catalog-logo-card .game-text-identity,
#posterWall .reference-card.catalog-logo-card .game-text-identity {
  position:absolute; inset:12% 9% auto; width:82%; height:57%;
  display:grid; place-items:center; text-align:center; color:#fff; text-transform:uppercase;
  font-size:clamp(17px,2.3vw,30px); font-weight:700; line-height:1.1; overflow-wrap:anywhere;
}
#games .reference-card.catalog-logo-card .product-copy,
#posterWall .reference-card.catalog-logo-card .product-copy { background:linear-gradient(transparent,#170f1c99); }
