/* Paper grain texture — fixed overlay across the page.
   Tailwind can't express data: URLs cleanly, so kept as raw CSS. */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  opacity: 0.35;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.04 0 0 0 0 0.12 0 0 0 0 0.24 0 0 0 0.06 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}

/* Subtle bottom-to-top paper wash inside the product stage body —
   multi-background shorthand is awkward as a Tailwind arbitrary value. */
.stage-body-wash {
  background:
    linear-gradient(to bottom, rgba(247, 244, 238, 0) 0%, rgba(247, 244, 238, 0.3) 100%),
    #FFFFFF;
}
