/**
 * Sitewide top-corner dotted pattern (matches case-studies landing).
 * Uses pattern-01-top-left / top-right SVGs.
 */
body:not(.gbs-404-page) {
  position: relative;
}

body:not(.gbs-404-page)::before,
body:not(.gbs-404-page)::after {
  content: "";
  position: absolute;
  top: 0;
  width: min(500px, 55vw);
  height: min(500px, 70vh);
  pointer-events: none;
  z-index: 0;
  background-repeat: no-repeat;
  background-size: contain;
}

body:not(.gbs-404-page)::before {
  left: 0;
  background-image: url("/wp-content/uploads/2023/06/pattern-01-top-left.svg");
  background-position: left top;
}

body:not(.gbs-404-page)::after {
  right: 0;
  background-image: url("/wp-content/uploads/2023/06/pattern-01-top-right.svg");
  background-position: right top;
}

/* Keep main content above decorative layer.
 * Do NOT include .gbs-book-call-modal here — higher-specificity
 * `position: relative` was overriding the modal's `position: fixed`
 * and parked the popup in document flow (bottom of page). */
body:not(.gbs-404-page) #wrapper,
body:not(.gbs-404-page) #content,
body.tve_lp #tve_editor,
body.gbs-apply-preview-page .gbs-apply2 {
  position: relative;
  z-index: 1;
}

@media (max-width: 767px) {
  body:not(.gbs-404-page)::before,
  body:not(.gbs-404-page)::after {
    width: min(280px, 70vw);
    height: min(320px, 50vh);
  }
}
