.pp-film{position:relative;height:var(--film-h,540vh);height:var(--film-svh,540svh);background:var(--night)}
.pp-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.pp-sky,.pp-film-video{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover}
.pp-sky{background:linear-gradient(#2B3A55,#B98A8C 48%,#F2C29A 72%)}
.pp-scene{position:absolute;left:-2%;bottom:0;width:104%;height:100%;transform-origin:50% 100%;will-change:transform;color:#262634;fill:#262634}
.pp-grain{position:absolute;inset:0;pointer-events:none;opacity:.06;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.pp-beats{position:absolute;inset:0;pointer-events:none;color:var(--beat-fg,#FBF8F2);text-shadow:0 1px 18px color-mix(in srgb, var(--beat-bg,#17261F) 45%, transparent)}
.pp-beat{position:absolute;left:0;right:0;top:calc(64px + env(safe-area-inset-top, 0px) + 6vh);
  padding-left:max(20px, env(safe-area-inset-left, 0px));padding-right:max(20px, env(safe-area-inset-right, 0px));opacity:0;visibility:hidden;will-change:opacity,transform}
.pp-beat.is-first{opacity:1;visibility:visible}
.pp-beat .in{max-width:1180px;margin:0 auto}
.pp-beat .eyebrow{opacity:.85;display:block;margin-bottom:18px}
body.pp .pp-beat h1,body.pp .pp-beat h2{font-family:var(--display);font-weight:600;margin:0;line-height:1.02;letter-spacing:-.01em;text-wrap:balance;color:inherit}
.pp-beat h1{font-size:clamp(40px, 7.2vw, 104px);max-width:13ch}
.pp-beat h2{font-size:clamp(34px, 5.6vw, 76px);max-width:14ch}
.pp-beat p{font-size:clamp(16px, 1.5vw, 19px);max-width:42ch;margin:20px 0 0;opacity:.92;line-height:1.6}
.pp-beat .cta{pointer-events:auto}
.pp-beat .pp-btn{background:var(--beat-fg,#FBF8F2);color:var(--beat-bg,#17261F)}
.pp-beat .pp-btn--ghost{background:transparent;color:inherit}
.pp-split .ch{display:inline-block;will-change:transform}
.pp-split .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em}
.pp-scrollhint{position:absolute;left:50%;bottom:calc(22px + env(safe-area-inset-bottom, 0px));transform:translateX(-50%);color:#FBF8F2;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:10px;opacity:.8}
.pp-scrollhint::after{content:"";width:1px;height:38px;background:linear-gradient(currentColor, transparent);animation:pp-drip 2.2s ease-in-out infinite}
@keyframes pp-drip{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.pp-landing{height:38vh;background:linear-gradient(var(--night), var(--bg))}
@media (prefers-reduced-motion: reduce){ .pp-scrollhint::after{animation:none} }
