/* Product construction leads the dark CTA; the lower edge blends into its surface. */
#food-systems:has(.factory-showcase){overflow:clip;padding-top:80px}
.factory-showcase{margin:0 0 72px;color:#f5f6f8;scroll-margin-top:96px}
.factory-scroll-scene{height:calc(var(--factory-height, 622px) + 52vh);position:relative;perspective:1800px}
.factory-sticky-stage{position:sticky;top:112px;perspective:1800px}
.factory-product-crop{position:relative;width:100%;height:var(--factory-height, auto);aspect-ratio:1440/800;overflow:clip;mask-image:linear-gradient(to bottom,#000 0%,#000 88%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 88%,transparent 100%)}
.factory-screen{--factory-scale:.75;--factory-tilt:12deg;--factory-lift:24px;position:relative;width:100%;transform-origin:50% 65%;transform:perspective(1100px) translateY(var(--factory-lift)) rotateX(var(--factory-tilt));border:1px solid #ffffff24;border-radius:12px;overflow:clip;background:#fafafa;box-shadow:0 24px 80px #0005;will-change:transform}
.factory-screen-viewport{width:100%;aspect-ratio:1440/920;position:relative;overflow:clip}
.factory-screen iframe{position:absolute;left:0;top:0;width:1440px;height:920px;max-width:none;border:0;transform:scale(var(--factory-scale));transform-origin:top left;pointer-events:none;background:#fafafa}
@media(max-width:800px){#food-systems:has(.factory-showcase){padding-top:56px}.factory-showcase{margin-bottom:48px}.factory-sticky-stage{top:96px}.factory-screen{border-radius:8px}}
@media(max-width:520px){.factory-sticky-stage{top:88px}.factory-scroll-scene{height:calc(var(--factory-height, 195px) + 44vh)}}
@media(prefers-reduced-motion:reduce){.factory-scroll-scene{height:auto!important}.factory-sticky-stage{position:relative;top:auto}.factory-screen{transform:none!important;will-change:auto}}
