/*
 * Service pages use the browser's native document scroll.
 * Each scene is a regular full-screen section; there is no sticky stack,
 * scroll snapping, crossfade, blur or synthetic footer handoff.
 */

html {
  scroll-behavior: auto !important;
  scrollbar-width: auto !important;
}

html::-webkit-scrollbar {
  display: block !important;
}

.campaign-story,
.social-story {
  height: auto !important;
  min-height: 0 !important;
  background: var(--paper, #ead9cb) !important;
}

.story-stage {
  position: relative !important;
  top: auto !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}

.campaign-frame,
.social-frame,
.process-frame {
  --art-opacity: 1 !important;
  --content-opacity: 1 !important;
  --art-blur: 0px !important;
  --scene-shift: 0px !important;
  --scene-scale: 1 !important;
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: max(100svh, 680px) !important;
  min-height: 680px !important;
  overflow: hidden !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  transition: none !important;
  will-change: auto !important;
}

.campaign-journey,
.social-rhythm,
.process-frame[data-stage-bg="#06192b"] {
  background: #06192b;
}

.campaign-opening,
.campaign-proof,
.social-opening,
.social-signals,
.process-frame[data-stage-bg="#ead9cb"] {
  background: var(--paper, #ead9cb);
}

.campaign-art {
  opacity: 1 !important;
  filter: none !important;
  transition: none !important;
  will-change: auto !important;
}

@media (max-width: 820px) {
  .campaign-frame,
  .social-frame,
  .process-frame {
    height: max(100svh, 720px) !important;
    min-height: 720px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .campaign-frame,
  .social-frame,
  .process-frame,
  .campaign-art {
    transition: none !important;
    animation: none !important;
  }
}
