.pricing{position:relative}
.priceguide{position:absolute;inset:0;pointer-events:none;z-index:20;display:none}
.priceguide[aria-hidden="false"]{display:block}
.priceguide .bubble{position:absolute;max-width:320px;background:rgba(18,18,18,.96);color:#fff;border:1px solid rgba(255,215,0,.35);border-radius:12px;padding:.7rem .85rem;font-size:.95rem;line-height:1.35;box-shadow:0 14px 34px rgba(0,0,0,.45)}
.priceguide .spot{position:absolute;width:40px;height:40px;border-radius:999px;border:2px solid rgba(255,215,0,.75);box-shadow:0 0 0 8px rgba(255,215,0,.14),0 10px 24px rgba(0,0,0,.45);transform:translate(-50%,-50%) scale(0.9);opacity:.9;transition:transform .7s cubic-bezier(.2,.7,.2,1),left .7s,top .7s,width .4s,height .4s}
.priceguide .cursor{position:absolute;width:16px;height:16px;border-radius:999px;background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.45);transform:translate(-50%,-50%);opacity:.95;transition:left .7s,top .7s,transform .22s}
@media (max-width:520px){.priceguide .bubble{max-width:74vw;font-size:.95rem}}
@keyframes pulseRing{0%{box-shadow:0 0 0 6px rgba(255,215,0,.18),0 10px 24px rgba(0,0,0,.45)}100%{box-shadow:0 0 0 12px rgba(255,215,0,.05),0 12px 30px rgba(0,0,0,.55)}}
.priceguide .spot.pulse{animation:pulseRing 1.8s ease-in-out infinite alternate}
@media (prefers-reduced-motion:reduce){.priceguide .spot,.priceguide .cursor{transition:none}.priceguide .spot.pulse{animation:none}}
