/* ---------------------------------------------------------------------
   Process section -- the roasting-process video (about.mp4 frames)
   following AboutSection's product intro. Structure mirrors coffee-hero.css's
   hero-sticky / hero-canvas pattern; unlike the hero, there's no reveal
   choreography beyond the loader -- the canvas just cuts in once ready.

   Sitting one z-index below AboutSection (see .about-scroll-section)
   matters only in the non-reduced-motion case, where process-section.js
   pulls this section up via its `handoffOverlapVh` config (negative
   margin, set inline since it must NOT apply to the reduced-motion static
   layout) so this section's own sticky pin is already engaged -- fully
   pinned and visible underneath -- before AboutSection starts fading out.
   That overlap is what makes AboutSection's fade-out (about-section.js's
   `_updateHandoff`) read as a crossfade into this section instead of a
   hard cut.
--------------------------------------------------------------------- */
.process-scroll-section {
  position: relative;
  width: 100%;
  z-index: 1;
  background: var(--coffee-black-soft);
}

.process-sticky {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  background: var(--coffee-black-soft);
}

.process-canvas {
  position: absolute;
  inset: 0;
  display: block;
  z-index: 1;
  width: 100%;
  height: 100%; /* see .hero-canvas */
}

.process-copy {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  padding-bottom: 12vh;
  padding-top: 18vh;
  /* Legibility scrim -- the caption only appears once the sequence holds
     on its final frame, but that frame's brightness varies, so this can't
     rely on the photo underneath being reliably dark. */
  background: linear-gradient(0deg, rgba(8, 6, 4, 0.82) 0%, rgba(8, 6, 4, 0) 100%);
}

.process-title {
  font-family: var(--font-display);
  font-weight: 500;
  font-size: clamp(1.9rem, 3.8vw, 3.1rem);
  line-height: 1.1;
  color: var(--coffee-cream);
  margin: 0.85rem 0 0;
  max-width: 26rem;
}

.process-sticky--static {
  position: relative;
  height: 100vh;
}
