.mation-renderlab-shell {
  position: relative;
  isolation: isolate;
  width: 100%;
  max-width: none;
  height: 100vh;
  min-height: 100vh;
  margin-inline: 0;
  overflow: hidden;
  background: #080808;
  color: #f2f2ef;
}

@supports (min-height: 100svh) {
  .mation-renderlab-shell { height: 100svh; min-height: 100svh; }
}

body.mation-renderlab-active,
body.mation-renderlab-active .wp-site-blocks { background: #080808 !important; }

body.mation-renderlab-active,
body.mation-renderlab-active .wp-site-blocks,
.mation-renderlab-shell,
.mation-renderlab-frame {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
  overscroll-behavior-x: none;
}

body.mation-renderlab-active { touch-action: pan-y pinch-zoom; }

@supports (overflow: clip) {
  body.mation-renderlab-active,
  body.mation-renderlab-active .wp-site-blocks,
  .mation-renderlab-shell,
  .mation-renderlab-frame { overflow-x: clip !important; }
}

body.mation-renderlab-active .wp-site-blocks > .wp-block-group.is-position-sticky:has(> header.wp-block-template-part),
body.mation-renderlab-active .wp-site-blocks > .wp-block-group.is-position-sticky > header.wp-block-template-part,
body.mation-renderlab-active main#wp--skip-link--target > .wp-block-group:has(> .wp-block-group.has-primary-background-color:empty),
body.mation-renderlab-active footer.wp-block-template-part { display: none !important; }

body.mation-renderlab-active main#wp--skip-link--target { margin-block-start: 0 !important; }
body.mation-renderlab-active .wp-block-post-title,
body.mation-renderlab-active .entry-title { display: none !important; }
body.mation-renderlab-active .wp-block-post-content,
body.mation-renderlab-active main { max-width: none !important; }
body.mation-renderlab-active .wp-block-post-content { margin: 0 !important; padding: 0 !important; }
body.mation-renderlab-active .wp-block-post-content > * { max-width: none !important; margin-block: 0 !important; }

.mation-renderlab-frame {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100vh;
  min-height: 100vh;
  border: 0;
  background: #080808;
  opacity: 0;
  transition: opacity 320ms ease;
}

@supports (min-height: 100svh) {
  .mation-renderlab-frame { height: 100svh; min-height: 100svh; }
}

.mation-renderlab-shell[data-state="ready"] .mation-renderlab-frame { opacity: 1; }

.mation-renderlab-loader,
.mation-renderlab-fallback {
  position: absolute;
  inset: 0 auto auto 0;
  z-index: 3;
  display: grid;
  width: 100%;
  min-height: 100vh;
  place-content: center;
  justify-items: center;
  background: radial-gradient(circle at 68% 34%, rgba(192,66,35,.25), transparent 32rem), #080808;
  text-align: center;
}

.mation-renderlab-loader { gap: 1rem; font: 500 .7rem/1.4 ui-monospace, monospace; letter-spacing: .16em; text-transform: uppercase; }
.mation-renderlab-loader__mark { width: 2.25rem; aspect-ratio: 1; border: 1px solid rgba(255,255,255,.18); border-top-color: #ff5a2d; border-radius: 50%; animation: mation-renderlab-spin .9s linear infinite; }
.mation-renderlab-shell[data-state="ready"] .mation-renderlab-loader,
.mation-renderlab-shell[data-state="failed"] .mation-renderlab-loader { visibility: hidden; opacity: 0; pointer-events: none; }
.mation-renderlab-fallback[hidden] { display: none; }
.mation-renderlab-fallback:not([hidden]), .mation-renderlab-fallback--noscript { display: grid; }
.mation-renderlab-fallback > div { width: min(36rem, calc(100% - 3rem)); }
.mation-renderlab-fallback p:first-child { color: #ff7045; font: 600 .7rem/1.4 ui-monospace, monospace; letter-spacing: .18em; }
.mation-renderlab-fallback h2 { margin: .8rem 0; font: 500 clamp(2rem, 7vw, 5rem)/.95 "Arial Narrow", Arial, sans-serif; letter-spacing: -.04em; }
.mation-renderlab-fallback p:last-child { color: rgba(255,255,255,.64); font: 400 .95rem/1.6 Arial, sans-serif; }

@media (prefers-reduced-motion: reduce) {
  .mation-renderlab-frame, .mation-renderlab-loader { transition: none; }
  .mation-renderlab-loader__mark { animation-duration: 1.8s; }
}

@keyframes mation-renderlab-spin { to { transform: rotate(1turn); } }
