/* GO v56: distribute the soft faded bands across non-single pages only. */

html body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) {
  --go-v56-band-light-page: rgba(241, 240, 244, 0.38);
  --go-v56-band-light-core: rgba(235, 234, 240, 0.48);
  --go-v56-band-light-edge: rgba(248, 247, 250, 0);
  --go-v56-band-dark-page: rgba(22, 22, 31, 0.58);
  --go-v56-band-dark-core: rgba(18, 21, 30, 0.68);
  --go-v56-band-dark-edge: rgba(31, 29, 43, 0);
}

/* Hero/main-intro bands: one calm wash near the top of each archive/hub page. */
html body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-hero,
  .go-cp-hero,
  .go-pf-hero-band,
  .go-portal-hero,
  .go-gamehub-hero,
  .go-gh-hero,
  .go-gallery-hero,
  .go-src-hero,
  .go-author-hero,
  .go-review-hero,
  .go-news-archive,
  .go-reviews-archive,
  .go-ip-hero,
  .go-gf-hero,
  .go-fph-promo-panel--radar
) {
  position: relative !important;
  isolation: isolate !important;
  z-index: 0 !important;
}

html body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-hero,
  .go-cp-hero,
  .go-pf-hero-band,
  .go-portal-hero,
  .go-gamehub-hero,
  .go-gh-hero,
  .go-gallery-hero,
  .go-src-hero,
  .go-author-hero,
  .go-review-hero,
  .go-news-archive,
  .go-reviews-archive,
  .go-ip-hero,
  .go-gf-hero,
  .go-fph-promo-panel--radar
)::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: calc(clamp(26px, 3.2vw, 54px) * -1) !important;
  bottom: calc(clamp(26px, 3.2vw, 54px) * -1) !important;
  width: 100vw !important;
  transform: translateX(-50%) !important;
  z-index: -1 !important;
  pointer-events: none !important;
  border: 0 !important;
  background:
    linear-gradient(180deg,
      var(--go-v56-band-light-edge) 0%,
      var(--go-v56-band-light-page) 18%,
      var(--go-v56-band-light-core) 50%,
      var(--go-v56-band-light-page) 82%,
      var(--go-v56-band-light-edge) 100%) !important;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 15%, #000 85%, transparent 100%) !important;
  mask-image: linear-gradient(180deg, transparent 0%, #000 15%, #000 85%, transparent 100%) !important;
  box-shadow: none !important;
}

/* Mid-page bands: applied only to larger sections/feed areas, with softer opacity so the page does not look striped. */
html body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-block:nth-of-type(even),
  .go-cp-section:nth-of-type(even),
  .go-pf-section:nth-of-type(even),
  .go-gh-section:nth-of-type(even),
  .go-gamehub-section:nth-of-type(even),
  .go-gamehub-editorial,
  .go-gallery-section:nth-of-type(even),
  .go-portal-featured,
  .go-portal-feed,
  .go-src-featured,
  .go-src-results,
  .go-author-posts-panel,
  .go-game-library-results,
  .go-fph-promo-panel--offers,
  .go-fph-promo-panel--stories,
  .go-fph-promo-panel--coupons
) {
  position: relative !important;
  isolation: isolate !important;
  z-index: 0 !important;
}

html body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-block:nth-of-type(even),
  .go-cp-section:nth-of-type(even),
  .go-pf-section:nth-of-type(even),
  .go-gh-section:nth-of-type(even),
  .go-gamehub-section:nth-of-type(even),
  .go-gamehub-editorial,
  .go-gallery-section:nth-of-type(even),
  .go-portal-featured,
  .go-portal-feed,
  .go-src-featured,
  .go-src-results,
  .go-author-posts-panel,
  .go-game-library-results,
  .go-fph-promo-panel--offers,
  .go-fph-promo-panel--stories,
  .go-fph-promo-panel--coupons
)::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: calc(clamp(20px, 2.7vw, 42px) * -1) !important;
  bottom: calc(clamp(20px, 2.7vw, 42px) * -1) !important;
  width: 100vw !important;
  transform: translateX(-50%) !important;
  z-index: -1 !important;
  pointer-events: none !important;
  border: 0 !important;
  background:
    linear-gradient(180deg,
      rgba(248, 247, 250, 0) 0%,
      rgba(239, 238, 243, 0.24) 18%,
      rgba(234, 233, 239, 0.34) 50%,
      rgba(239, 238, 243, 0.24) 82%,
      rgba(248, 247, 250, 0) 100%) !important;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 17%, #000 83%, transparent 100%) !important;
  mask-image: linear-gradient(180deg, transparent 0%, #000 17%, #000 83%, transparent 100%) !important;
  box-shadow: none !important;
}

/* Bottom/callout bands: a final lighter wash before pagination/footer blocks. */
html body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-feed-shell,
  .go-cp-feed-shell,
  .go-pf-archive-list,
  .go-gh-results,
  .go-gamehub-news,
  .go-gallery-grid,
  .go-src-grid,
  .go-portal-visual-grid,
  .go-portal-agenda-grid,
  .go-author-archive-list
) {
  position: relative !important;
  isolation: isolate !important;
  z-index: 0 !important;
}

html body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-feed-shell,
  .go-cp-feed-shell,
  .go-pf-archive-list,
  .go-gh-results,
  .go-gamehub-news,
  .go-gallery-grid,
  .go-src-grid,
  .go-portal-visual-grid,
  .go-portal-agenda-grid,
  .go-author-archive-list
)::before {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: -18px !important;
  bottom: -18px !important;
  width: 100vw !important;
  transform: translateX(-50%) !important;
  z-index: -1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg,
      rgba(248, 247, 250, 0) 0%,
      rgba(241, 240, 244, 0.18) 22%,
      rgba(235, 234, 240, 0.26) 50%,
      rgba(241, 240, 244, 0.18) 78%,
      rgba(248, 247, 250, 0) 100%) !important;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 82%, transparent 100%) !important;
  mask-image: linear-gradient(180deg, transparent 0%, #000 18%, #000 82%, transparent 100%) !important;
}

/* Dark mode keeps the same distribution, but with a neutral graphite wash instead of bright colors. */
:is(html.dark, html[class*="dark"], html[data-theme="dark"]) body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-hero,
  .go-cp-hero,
  .go-pf-hero-band,
  .go-portal-hero,
  .go-gamehub-hero,
  .go-gh-hero,
  .go-gallery-hero,
  .go-src-hero,
  .go-author-hero,
  .go-review-hero,
  .go-news-archive,
  .go-reviews-archive,
  .go-ip-hero,
  .go-gf-hero,
  .go-fph-promo-panel--radar
)::before,
body:is(.dark, .dark-mode, .is-dark-theme, .newsx-dark-mode, [data-theme="dark"], [class*="dark"]):not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-hero,
  .go-cp-hero,
  .go-pf-hero-band,
  .go-portal-hero,
  .go-gamehub-hero,
  .go-gh-hero,
  .go-gallery-hero,
  .go-src-hero,
  .go-author-hero,
  .go-review-hero,
  .go-news-archive,
  .go-reviews-archive,
  .go-ip-hero,
  .go-gf-hero,
  .go-fph-promo-panel--radar
)::before {
  background:
    radial-gradient(920px 380px at 50% 0%, rgba(255, 255, 255, 0.028), transparent 64%),
    linear-gradient(180deg,
      var(--go-v56-band-dark-edge) 0%,
      var(--go-v56-band-dark-page) 18%,
      var(--go-v56-band-dark-core) 55%,
      var(--go-v56-band-dark-page) 82%,
      var(--go-v56-band-dark-edge) 100%) !important;
}

:is(html.dark, html[class*="dark"], html[data-theme="dark"]) body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-block:nth-of-type(even),
  .go-cp-section:nth-of-type(even),
  .go-pf-section:nth-of-type(even),
  .go-gh-section:nth-of-type(even),
  .go-gamehub-section:nth-of-type(even),
  .go-gamehub-editorial,
  .go-gallery-section:nth-of-type(even),
  .go-portal-featured,
  .go-portal-feed,
  .go-src-featured,
  .go-src-results,
  .go-author-posts-panel,
  .go-game-library-results,
  .go-fph-promo-panel--offers,
  .go-fph-promo-panel--stories,
  .go-fph-promo-panel--coupons
)::before,
body:is(.dark, .dark-mode, .is-dark-theme, .newsx-dark-mode, [data-theme="dark"], [class*="dark"]):not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-block:nth-of-type(even),
  .go-cp-section:nth-of-type(even),
  .go-pf-section:nth-of-type(even),
  .go-gh-section:nth-of-type(even),
  .go-gamehub-section:nth-of-type(even),
  .go-gamehub-editorial,
  .go-gallery-section:nth-of-type(even),
  .go-portal-featured,
  .go-portal-feed,
  .go-src-featured,
  .go-src-results,
  .go-author-posts-panel,
  .go-game-library-results,
  .go-fph-promo-panel--offers,
  .go-fph-promo-panel--stories,
  .go-fph-promo-panel--coupons
)::before {
  background:
    linear-gradient(180deg,
      rgba(31, 29, 43, 0) 0%,
      rgba(22, 22, 31, 0.34) 18%,
      rgba(18, 21, 30, 0.46) 55%,
      rgba(22, 22, 31, 0.34) 82%,
      rgba(31, 29, 43, 0) 100%) !important;
}

:is(html.dark, html[class*="dark"], html[data-theme="dark"]) body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-feed-shell,
  .go-cp-feed-shell,
  .go-pf-archive-list,
  .go-gh-results,
  .go-gamehub-news,
  .go-gallery-grid,
  .go-src-grid,
  .go-portal-visual-grid,
  .go-portal-agenda-grid,
  .go-author-archive-list
)::before,
body:is(.dark, .dark-mode, .is-dark-theme, .newsx-dark-mode, [data-theme="dark"], [class*="dark"]):not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-feed-shell,
  .go-cp-feed-shell,
  .go-pf-archive-list,
  .go-gh-results,
  .go-gamehub-news,
  .go-gallery-grid,
  .go-src-grid,
  .go-portal-visual-grid,
  .go-portal-agenda-grid,
  .go-author-archive-list
)::before {
  background:
    linear-gradient(180deg,
      rgba(31, 29, 43, 0) 0%,
      rgba(22, 22, 31, 0.22) 22%,
      rgba(18, 21, 30, 0.32) 50%,
      rgba(22, 22, 31, 0.22) 78%,
      rgba(31, 29, 43, 0) 100%) !important;
}

/* Do not let the decorative layers steal clicks or cover content. */
html body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
  .go-ca-hero,
  .go-cp-hero,
  .go-pf-hero-band,
  .go-portal-hero,
  .go-gamehub-hero,
  .go-gh-hero,
  .go-gallery-hero,
  .go-src-hero,
  .go-author-hero,
  .go-review-hero,
  .go-news-archive,
  .go-reviews-archive,
  .go-ip-hero,
  .go-gf-hero,
  .go-fph-promo-panel--radar,
  .go-ca-block,
  .go-cp-section,
  .go-pf-section,
  .go-gh-section,
  .go-gamehub-section,
  .go-gamehub-editorial,
  .go-gallery-section,
  .go-portal-featured,
  .go-portal-feed,
  .go-src-featured,
  .go-src-results,
  .go-author-posts-panel,
  .go-game-library-results,
  .go-fph-promo-panel,
  .go-ca-feed-shell,
  .go-cp-feed-shell,
  .go-pf-archive-list,
  .go-gh-results,
  .go-gamehub-news,
  .go-gallery-grid,
  .go-src-grid,
  .go-portal-visual-grid,
  .go-portal-agenda-grid,
  .go-author-archive-list
) > * {
  position: relative;
  z-index: 1;
}

@media (max-width: 900px) {
  html body:not(.wp-admin):not(.single):not(.single-post):not(.single-games):not(.single-go_entity) :is(
    .go-ca-hero,
    .go-cp-hero,
    .go-pf-hero-band,
    .go-portal-hero,
    .go-gamehub-hero,
    .go-gh-hero,
    .go-gallery-hero,
    .go-src-hero,
    .go-author-hero,
    .go-review-hero,
    .go-news-archive,
    .go-reviews-archive,
    .go-ip-hero,
    .go-gf-hero,
    .go-fph-promo-panel--radar,
    .go-ca-block:nth-of-type(even),
    .go-cp-section:nth-of-type(even),
    .go-pf-section:nth-of-type(even),
    .go-gh-section:nth-of-type(even),
    .go-gamehub-section:nth-of-type(even),
    .go-gamehub-editorial,
    .go-gallery-section:nth-of-type(even),
    .go-portal-featured,
    .go-portal-feed,
    .go-src-featured,
    .go-src-results,
    .go-author-posts-panel,
    .go-game-library-results,
    .go-fph-promo-panel--offers,
    .go-fph-promo-panel--stories,
    .go-fph-promo-panel--coupons
  )::before {
    top: -22px !important;
    bottom: -22px !important;
    -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 11%, #000 89%, transparent 100%) !important;
    mask-image: linear-gradient(180deg, transparent 0%, #000 11%, #000 89%, transparent 100%) !important;
  }
}
