/* Darker scene behind the existing foreground. No object/material or HUD changes. */
:root{--paper:#000;--dark:#000}
body{background:#000;background-image:none}
.header,.header.scrolled,.terrain-mobile .header.scrolled{background:#000000ed}
.service-strip{background:#020202ed}
.idea-section{background:#010101eb}
.work-section{background:#010101ef}
.contact-section{background:#010101e6}

/* One multiplier covers Canvas2D, mobile WebGL, and the SVG fallback alike.
   The renderer's geometry, timing and fixed mobile camera remain untouched. */
.terrain-background,.terrain-background.terrain-gpu-mode{opacity:.42}
.hero:before,.hero-visual:before{opacity:.2}
.hero-visual .visual-grid{opacity:.45}
.hero-visual .orbit{border-color:#ffffff12}

/* Reading masks should not leave lifted grey fields against the deeper black.
   Exclude the volume and service cards: their accepted glass stays unchanged. */
:is(.about-identity,.about-copy,.fit-heading,.refusal-item>div,
    .pricing-heading,.scope-title,.scope-example,.pricing-details,.faq-group):before{
  background:radial-gradient(ellipse farthest-side at center,
    #000000d6 0%,#000000bd 58%,#00000070 82%,#00000000 100%);
}
.hero-copy:before{
  background:radial-gradient(ellipse at 40% 45%,#000000e6 15%,#000000b3 48%,transparent 76%);
}
@media(forced-colors:active){
  body,.header,.header.scrolled,.terrain-mobile .header.scrolled,
  .service-strip,.idea-section,.work-section,.contact-section{background:Canvas}
  .terrain-background,.hero:before,.hero-visual:before{display:none}
}
