/*
 * Neutral page backgrounds.
 *
 * This layer intentionally changes only the page and section surfaces. Cards,
 * panels, forms, navigation, imagery, filters, and motion keep the styles
 * defined by each page and the shared theme.
 */

:root {
  --clean-page-bg: #050505;
  /* Kept as a compatibility token; every page band is now pure black. */
  --clean-page-alt: #050505;
}

html {
  background: var(--clean-page-bg) !important;
}

/* Remove the decorative page-level colour washes. Hero media and their
   existing overlays are left untouched. */
.page-home,
.page-about,
.page-consult,
.page-talent-class,
.page-talent-industry,
.page-model-upload,
.page-reconstruction,
.page-scenes {
  background-color: var(--clean-page-bg) !important;
  background-image: none !important;
}

/* Keep long-form bands on the same black/gray page surface without styling
   the components contained inside them. */
.page-home main > section:not(.hero),
.page-about main > section:not(.hero),
.page-consult main > section:not(.hero),
.page-talent-class main > section:not(.hero),
.page-talent-industry main > section:not(.hero),
.page-model-upload main > section:not(.hero),
.page-reconstruction main > section:not(.hero),
.page-scenes main > section:not(.hero) {
  background-color: var(--clean-page-bg) !important;
  background-image: none !important;
}

/* Model space sets a separate body surface in its inline styles. */
body.page-model-upload {
  background-color: var(--clean-page-bg) !important;
  background-image: none !important;
}

/* Model space is a centered workspace. Keep the outer shell and the main
   canvas on one black surface so the constrained content does not sit inside
   a blue side gutter or a separate gray slab. */
.page-model-upload .app-shell,
.page-model-upload main {
  background-color: var(--clean-page-bg) !important;
  background-image: none !important;
}

/* Alternate whole page bands between black and neutral gray. These selectors
   target only direct page sections; nested cards and panels retain their
   original surfaces, borders, and hover states. */
.page-home main > section:nth-of-type(even),
.page-about main > section:nth-of-type(even),
.page-talent-class main > section:nth-of-type(even),
.page-talent-industry main > section:nth-of-type(even),
.page-reconstruction main > section:nth-of-type(even),
.page-scenes main > section:nth-of-type(even) {
  background-color: var(--clean-page-alt) !important;
  background-image: none !important;
}

/* These pages do not expose multiple direct content sections, so the main
   content plane carries the alternate gray while its controls stay intact. */
.page-consult main {
  background-color: var(--clean-page-alt) !important;
  background-image: none !important;
}
