/* EXPERIMENT 02: only the supplied two-colour background clips are affected.
   One selected video stream plus a CSS-colour-managed SVG palette; no canvas animation. */
video[data-cult-ascii-mask] { filter: url(#cult-ascii-red); }
body.crazy-mode video[data-cult-ascii-mask] { filter: url(#cult-ascii-green); }

/* Background objects share the page's red/CRT background instead of painting
   an opaque rectangle over it. Keep the full-screen 404 palette opaque. */
body.crazy-mode .main__alt-video[data-cult-ascii-mask],
body.crazy-mode .award__vid[data-cult-ascii-mask],
body.crazy-mode .services__video-alt[data-cult-ascii-mask],
body.crazy-mode .motto__video[data-cult-ascii-mask],
body.crazy-mode .lead__video[data-cult-ascii-mask] {
  filter: url(#cult-ascii-green-transparent);
}
body.crazy-mode .main__alt-video[data-cult-ascii-mask] {
  filter: url(#cult-ascii-green-transparent) blur(20px);
}

/* Sign edge coverage is baked into the Earth 2.25 source.
   Keep the authored vignette; no second CSS mask is applied. */

/* Keep the source video in the original layout and playback observer, while
   its sRGB surface follows the same box. No video-filter support is required. */
html.cult-native-palette video[data-cult-ascii-mask] { clip-path: inset(50%) !important; }
.cult-native-video-surface {
  position: absolute; margin: 0 !important; padding: 0 !important; border: 0 !important;
  pointer-events: none !important; display: none;
}

@media (min-width: 1025px) {
  html.cult-desktop-refinements .wrapper > .container.crt-main:not(.container-footer)::before,
  html.cult-desktop-refinements .wrapper > .container.crt-main:not(.container-footer)::after {
    bottom: var(--cult-crt-bottom, 0px);
  }
  html.cult-desktop-refinements body.crazy-mode .cult-footer-art { background-color: #78ef50; }
  html.cult-desktop-refinements .cult-footer-art::before {
    background-size: var(--cult-crt-row-size, auto);
    background-position-y: var(--cult-crt-row-offset, 0px);
  }
  html.cult-desktop-refinements .cult-footer-art::after {
    background-size: var(--cult-crt-column-size, auto);
  }

  /* Restore the menu's previous solid glyphs and existing colour blending.
     A small optical offset aligns the policy heading with the upper menu. */
  .policy__title-wrapper {
    margin-top: clamp(4px, .35vw, 8px);
  }

  html.cult-desktop-refinements .footer__svg-wrapper.el2 {
    align-items: flex-end;
    font-size: 1.11vw;
    bottom: calc(2.08vw + .18em);
  }
  html.cult-desktop-refinements .cult-footer-symbol { align-self: flex-end; }
}
