/* custom proximity cursor — v28 */
body{cursor:none!important}
body *,a,button,input,textarea,[onclick],.btn,.nav-links a,.cur-card,.nav-toggle,.nav-logo{cursor:none!important}

#cur{position:fixed;top:0;left:0;width:1vw;height:1vw;min-width:10px;min-height:10px;max-width:18px;max-height:18px;border:1.5px solid rgba(254,80,0,.7);border-radius:50%;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:width .1s,height .1s,background .1s,filter .1s,opacity .1s;opacity:0}
#cur.on{background:rgba(254,80,0,1);border-color:rgba(254,80,0,1);width:1.4vw;height:1.4vw;min-width:16px;min-height:16px;max-width:28px;max-height:28px;filter:drop-shadow(0 1px 3px rgba(0,0,0,.2))}
#cur.vis{opacity:1}
#cur.hero-hide{opacity:0!important;transition:opacity .4s ease}
#cur.split{background:transparent!important;border-color:transparent!important}

#cur .dot{position:absolute;width:52%;height:52%;border-radius:50%;background:rgba(254,80,0,1);pointer-events:none;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);opacity:0}
#cur.split .dot{opacity:1;transform:translate(-50%,-50%) scale(1)}
#cur.rejoin .dot{transform:translate(-50%,-50%) scale(0)!important;transition:transform .25s ease-in}


