/* === Hero pre-roll: "the referral that got lost" (plays once, hands off to the scan form) === */
.pr-stage{position:relative;max-width:560px;margin:6px auto 0;padding:16px 20px 20px;border-radius:22px;background:rgba(16,18,28,0.58);border:1px solid rgba(126,236,170,0.18);backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);box-shadow:0 30px 80px -34px rgba(0,0,0,0.75),inset 0 1px 0 rgba(255,255,255,0.06);text-align:start;overflow:hidden;transition:height 0.45s cubic-bezier(0.2,0.8,0.2,1)}
.pr-stage.pr-will-play{min-height:430px}
.pr-stage.pr-will-play .pr-final{display:none}
.pr-top{display:flex;align-items:center;justify-content:space-between;min-height:22px;font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-3)}
.pr-tag{display:inline-flex;align-items:center;gap:7px}
.pr-tag::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--text-3)}
.pr-btn{background:none;border:0;color:var(--text-3);font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;padding:4px 2px;transition:color 0.15s}
.pr-btn:hover{color:var(--text)}
.pr-btn[hidden],.pr-tag[hidden]{display:none}

.pr-scene{position:relative;transition:opacity 0.42s ease,filter 0.42s ease,transform 0.42s ease}
.pr-scene.pr-melt{opacity:0;filter:blur(10px);transform:scale(0.98)}

.pr-bubble{display:flex;align-items:flex-end;gap:9px;max-width:88%;margin-top:12px;opacity:0;transform:translateY(14px);transition:opacity 0.35s ease,transform 0.45s cubic-bezier(0.2,0.8,0.2,1)}
.pr-bubble.pr-in{opacity:1;transform:none}
.pr-av{width:26px;height:26px;flex-shrink:0;border-radius:50%;background:rgba(255,255,255,0.09);border:1px solid var(--stroke);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--text-2)}
.pr-bt{background:rgba(255,255,255,0.07);border:1px solid var(--stroke);border-radius:16px;border-end-start-radius:4px;padding:9px 13px;font-size:14px;line-height:1.45;color:var(--text)}
.pr-src{transition:opacity 0.4s ease}
.pr-src.pr-lifted{opacity:0.35}

.pr-ask{display:flex;align-items:center;gap:10px;margin-top:14px;min-height:48px;padding:10px 12px 10px 14px;background:rgba(0,0,0,0.28);border:1px solid var(--stroke-2);border-radius:14px;font-size:15px;color:var(--text)}
.pr-asktag{flex-shrink:0;font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-3);padding:3px 8px;border:1px solid var(--stroke);border-radius:999px}
.pr-q{flex:1;min-width:0;line-height:1.5}
.pr-qt{opacity:0;transition:opacity 0.3s ease}
.pr-qt.pr-in{opacity:1}
.pr-chip{display:inline-block;padding:1px 9px;border-radius:999px;background:rgba(126,236,170,0.1);border:1px solid rgba(126,236,170,0.5);color:var(--text);opacity:0;transition:background 0.5s ease,border-color 0.5s ease,color 0.5s ease}
.pr-chip.pr-in{opacity:1}
.pr-chip.pr-lost{background:transparent;border-color:rgba(255,255,255,0.14);color:var(--text-3)}
.pr-send{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:center;color:var(--text-2);transition:background 0.2s}
.pr-send.pr-hit{background:rgba(126,236,170,0.3)}

.pr-ans{margin-top:12px;min-height:44px;font-size:14px;line-height:1.55;color:var(--text-2)}
.pr-w{opacity:0.01;transition:opacity 0.18s ease}
.pr-w.pr-in{opacity:1}
.pr-dots{display:inline-flex;gap:4px;padding-top:6px}
.pr-dots[hidden]{display:none}
.pr-dots i{width:6px;height:6px;border-radius:50%;background:var(--text-3);animation:prDot 0.9s ease-in-out infinite}
.pr-dots i:nth-child(2){animation-delay:0.15s}.pr-dots i:nth-child(3){animation-delay:0.3s}
@keyframes prDot{0%,100%{opacity:0.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}

.pr-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}
.pr-card{padding:10px;border-radius:12px;background:rgba(255,255,255,0.05);border:1px solid var(--stroke);opacity:0.01;transform:translateY(12px);transition:opacity 0.35s ease,transform 0.45s cubic-bezier(0.2,0.8,0.2,1),border-color 0.25s ease,background 0.25s ease}
.pr-card.pr-in{opacity:1;transform:none}
.pr-card.pr-picked{border-color:rgba(255,255,255,0.45);background:rgba(255,255,255,0.09)}
.pr-cav{width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,0.14);filter:blur(1.5px)}
.pr-bar{height:7px;border-radius:4px;background:rgba(255,255,255,0.22);margin-top:8px;filter:blur(2.5px)}
.pr-bar.pr-short{width:62%;background:rgba(255,255,255,0.12);margin-top:6px}
.pr-stars{margin-top:8px;font-size:10px;letter-spacing:1px;color:var(--amber);opacity:0.75}

.pr-cursor{position:absolute;top:0;left:0;width:22px;height:22px;pointer-events:none;opacity:0;z-index:3;transition:transform 0.5s cubic-bezier(0.3,0.7,0.2,1),opacity 0.25s ease}
.pr-cursor.pr-in{opacity:1}
.pr-cursor.pr-click svg{transform:scale(0.82)}
.pr-cursor svg{transition:transform 0.12s ease;filter:drop-shadow(0 2px 6px rgba(0,0,0,0.6))}

.pr-cap{margin-top:16px;min-height:60px;text-align:center}
.pr-c1{font-size:17px;font-weight:400;color:var(--text);opacity:0.01;transform:translateY(10px);filter:blur(4px);transition:opacity 0.3s ease,transform 0.35s ease,filter 0.3s ease}
.pr-c2{margin-top:2px;font-family:'Instrument Serif',serif;font-style:italic;font-size:21px;color:var(--text-2);opacity:0.01;transform:translateY(10px);filter:blur(4px);transition:opacity 0.3s ease,transform 0.35s ease,filter 0.3s ease}
.pr-c1.pr-in,.pr-c2.pr-in{opacity:1;transform:none;filter:none}
html[lang="he"] .pr-c2{font-family:'Heebo',sans-serif;font-style:normal;font-weight:300;font-size:19px}

.pr-final{padding-top:6px}
.pr-final.pr-arrive{animation:prArrive 0.5s cubic-bezier(0.2,0.8,0.2,1) both}
@keyframes prArrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.pr-fq{font-size:clamp(19px,2.4vw,24px);font-weight:300;line-height:1.3;color:var(--text);text-align:center;margin-top:6px}
html[lang="he"] .pr-fq{font-family:'Heebo',sans-serif}
.pr-final .mr3-heroform{margin:16px auto 0;opacity:1;animation:none}
.pr-final .input-glass.pr-caret{animation:prCaret 1.1s ease-in-out infinite}
@keyframes prCaret{0%,100%{border-color:var(--stroke)}50%{border-color:rgba(126,236,170,0.75)}}

@media (max-width:560px){
  .pr-stage{padding:14px 14px 16px;border-radius:18px}
  .pr-stage.pr-will-play{min-height:470px}
  .pr-bt{font-size:13.5px}
  .pr-cards{gap:7px}
  .pr-c1{font-size:16px}
  .pr-final .input-glass{font-size:16px}
}
@media (prefers-reduced-motion:reduce){
  .pr-stage,.pr-scene,.pr-final.pr-arrive{transition:none;animation:none}
}
