/* GO v37: GameRant-inspired page bands and backgrounds. */
body:not(.wp-admin) {
  --go-gr-page-bg: #f5f6fa;
  --go-gr-page-band: #eceff4;
  --go-gr-page-band-strong: #e6eaf0;
  --go-gr-page-line: rgba(9, 15, 24, 0.08);
  --go-gr-page-line-soft: rgba(9, 15, 24, 0.04);
}

html.dark body:not(.wp-admin),
html[data-theme="dark"] body:not(.wp-admin),
html[class*="dark"] body:not(.wp-admin),
body.dark:not(.wp-admin),
body.dark-mode:not(.wp-admin),
body.is-dark-theme:not(.wp-admin),
body.newsx-dark-mode:not(.wp-admin),
body[data-theme="dark"]:not(.wp-admin) {
  --go-gr-page-bg: #181818;
  --go-gr-page-band: #232323;
  --go-gr-page-band-strong: #292929;
  --go-gr-page-line: rgba(255, 255, 255, 0.06);
  --go-gr-page-line-soft: rgba(255, 255, 255, 0.035);
}

body.home,
body.home #page,
body.home .site,
body.home .site-content,
body.home #content,
body:not(.wp-admin) :is(.go-news-archive-page, .go-ca-page, .go-cp-page, .go-gh-page, .go-eh-page, .go-th-page, .go-vh-page) {
  background-color: var(--go-gr-page-bg) !important;
}

/* Full-width subtle bands, inspired by Game Rant, applied only to macro-sections. */
.go-ds-home :is(.go-ds-content-band, .go-ds-bottom-layout),
.go-news-archive-page--magazine :is(.go-news-archive-video-section, .go-news-archive-recent),
.go-ca-page :is(.go-ca-block, .go-ca-hero),
.go-cp-page :is(.go-cp-featured, .go-cp-section),
.go-gh-page :is(.go-gh-hero, .go-gh-block, .go-gh-section),
.go-eh-page :is(.go-eh-hero, .go-eh-block, .go-eh-section),
.go-th-page :is(.go-th-hero, .go-th-block, .go-th-section),
.go-vh-page :is(.go-vh-hero, .go-vh-block, .go-vh-section) {
  position: relative;
  isolation: isolate;
}

.go-ds-home :is(.go-ds-content-band, .go-ds-bottom-layout)::before,
.go-news-archive-page--magazine :is(.go-news-archive-video-section, .go-news-archive-recent)::before,
.go-ca-page :is(.go-ca-block, .go-ca-hero)::before,
.go-cp-page :is(.go-cp-featured, .go-cp-section)::before,
.go-gh-page :is(.go-gh-hero, .go-gh-block, .go-gh-section)::before,
.go-eh-page :is(.go-eh-hero, .go-eh-block, .go-eh-section)::before,
.go-th-page :is(.go-th-hero, .go-th-block, .go-th-section)::before,
.go-vh-page :is(.go-vh-hero, .go-vh-block, .go-vh-section)::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  top: calc(clamp(16px, 2vw, 28px) * -1);
  bottom: calc(clamp(16px, 2vw, 28px) * -1);
  background: linear-gradient(
    180deg,
    transparent 0%,
    var(--go-gr-page-band) 12%,
    var(--go-gr-page-band) 88%,
    transparent 100%
  );
  border-top: 1px solid var(--go-gr-page-line-soft);
  border-bottom: 1px solid var(--go-gr-page-line-soft);
  pointer-events: none;
}

/* Home gets a slightly stronger last band, closer to the reference. */
.go-ds-home .go-ds-bottom-layout::before {
  background: linear-gradient(
    180deg,
    transparent 0%,
    var(--go-gr-page-band-strong) 10%,
    var(--go-gr-page-band-strong) 90%,
    transparent 100%
  );
  border-top-color: var(--go-gr-page-line);
  border-bottom-color: var(--go-gr-page-line);
}

/* Keep the hero area cleaner, with a restrained strip only below the intro zone. */
.go-ds-home .go-ds-topbar,
.go-news-archive-page--magazine .go-news-archive-chip-nav,
.go-ca-page .go-ca-nav,
.go-cp-page .go-cp-quick-nav {
  position: relative;
  z-index: 0;
}

.go-ds-home .go-ds-topbar::before,
.go-news-archive-page--magazine .go-news-archive-chip-nav::before,
.go-ca-page .go-ca-nav::before,
.go-cp-page .go-cp-quick-nav::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  top: -16px;
  bottom: -16px;
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 0%,
    var(--go-gr-page-band) 18%,
    var(--go-gr-page-band) 82%,
    rgba(0, 0, 0, 0) 100%
  );
  border-top: 1px solid var(--go-gr-page-line-soft);
  border-bottom: 1px solid var(--go-gr-page-line-soft);
  pointer-events: none;
}

/* Breadcrumb band becomes a proper soft strip instead of a hard block. */
.go-shell-breadcrumb-band {
  position: relative;
  background: transparent !important;
  border-bottom: 1px solid var(--go-gr-page-line-soft) !important;
}

.go-shell-breadcrumb-band::before {
  content: "";
  position: absolute;
  inset: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  background: linear-gradient(
    180deg,
    var(--go-gr-page-band) 0%,
    var(--go-gr-page-band-strong) 100%
  );
  z-index: -1;
  pointer-events: none;
}

/* Light mode needs softer separation so it does not look boxed-in. */
html:not(.dark):not([data-theme="dark"]) body:not(.dark):not(.dark-mode):not(.is-dark-theme):not(.newsx-dark-mode) .go-ds-home :is(.go-ds-content-band, .go-ds-bottom-layout)::before,
html:not(.dark):not([data-theme="dark"]) body:not(.dark):not(.dark-mode):not(.is-dark-theme):not(.newsx-dark-mode) .go-news-archive-page--magazine :is(.go-news-archive-video-section, .go-news-archive-recent)::before,
html:not(.dark):not([data-theme="dark"]) body:not(.dark):not(.dark-mode):not(.is-dark-theme):not(.newsx-dark-mode) .go-ca-page :is(.go-ca-block, .go-ca-hero)::before,
html:not(.dark):not([data-theme="dark"]) body:not(.dark):not(.dark-mode):not(.is-dark-theme):not(.newsx-dark-mode) .go-cp-page :is(.go-cp-featured, .go-cp-section)::before {
  opacity: 0.78;
}

/* On dark mode, keep the bands visible but subtle. */
html.dark .go-ds-home :is(.go-ds-content-band, .go-ds-bottom-layout)::before,
body.dark .go-ds-home :is(.go-ds-content-band, .go-ds-bottom-layout)::before,
body.dark-mode .go-ds-home :is(.go-ds-content-band, .go-ds-bottom-layout)::before,
body.is-dark-theme .go-ds-home :is(.go-ds-content-band, .go-ds-bottom-layout)::before,
body.newsx-dark-mode .go-ds-home :is(.go-ds-content-band, .go-ds-bottom-layout)::before,
[data-theme="dark"] .go-ds-home :is(.go-ds-content-band, .go-ds-bottom-layout)::before,
html.dark .go-news-archive-page--magazine :is(.go-news-archive-video-section, .go-news-archive-recent)::before,
body.dark .go-news-archive-page--magazine :is(.go-news-archive-video-section, .go-news-archive-recent)::before,
body.dark-mode .go-news-archive-page--magazine :is(.go-news-archive-video-section, .go-news-archive-recent)::before,
body.is-dark-theme .go-news-archive-page--magazine :is(.go-news-archive-video-section, .go-news-archive-recent)::before,
body.newsx-dark-mode .go-news-archive-page--magazine :is(.go-news-archive-video-section, .go-news-archive-recent)::before,
[data-theme="dark"] .go-news-archive-page--magazine :is(.go-news-archive-video-section, .go-news-archive-recent)::before,
html.dark .go-ca-page :is(.go-ca-block, .go-ca-hero)::before,
body.dark .go-ca-page :is(.go-ca-block, .go-ca-hero)::before,
body.dark-mode .go-ca-page :is(.go-ca-block, .go-ca-hero)::before,
body.is-dark-theme .go-ca-page :is(.go-ca-block, .go-ca-hero)::before,
body.newsx-dark-mode .go-ca-page :is(.go-ca-block, .go-ca-hero)::before,
[data-theme="dark"] .go-ca-page :is(.go-ca-block, .go-ca-hero)::before,
html.dark .go-cp-page :is(.go-cp-featured, .go-cp-section)::before,
body.dark .go-cp-page :is(.go-cp-featured, .go-cp-section)::before,
body.dark-mode .go-cp-page :is(.go-cp-featured, .go-cp-section)::before,
body.is-dark-theme .go-cp-page :is(.go-cp-featured, .go-cp-section)::before,
body.newsx-dark-mode .go-cp-page :is(.go-cp-featured, .go-cp-section)::before,
[data-theme="dark"] .go-cp-page :is(.go-cp-featured, .go-cp-section)::before {
  opacity: 0.92;
}

/* Mobile: reduce bleed so the strips do not feel too thick. */
@media (max-width: 780px) {
  .go-ds-home :is(.go-ds-content-band, .go-ds-bottom-layout)::before,
  .go-news-archive-page--magazine :is(.go-news-archive-video-section, .go-news-archive-recent)::before,
  .go-ca-page :is(.go-ca-block, .go-ca-hero)::before,
  .go-cp-page :is(.go-cp-featured, .go-cp-section)::before,
  .go-ds-home .go-ds-topbar::before,
  .go-news-archive-page--magazine .go-news-archive-chip-nav::before,
  .go-ca-page .go-ca-nav::before,
  .go-cp-page .go-cp-quick-nav::before {
    top: -12px;
    bottom: -12px;
  }
}
