/* ===== SwarSampada shared interactivity layer ===== */
body{ overflow-x:hidden; }


/* Custom cursor (fine-pointer, motion-ok only) */
@media (hover:hover) and (pointer:fine){
  html.cursor-on, html.cursor-on * { cursor: none !important; }
  .cursor-dot, .cursor-ring{
    position:fixed; top:0; left:0; z-index:9999; pointer-events:none;
    border-radius:50%; mix-blend-mode:difference; will-change:transform; opacity:0;
  }
  .cursor-dot{ width:20px; height:24px; background:none; border-radius:0; }
  .cursor-dot svg{ display:block; width:100%; height:100%; }
  .cursor-ring{
    width:40px; height:40px; border:1.5px solid #fff;
    transition:width .28s ease, height .28s ease, background-color .28s ease, opacity .28s ease;
  }
  .cursor-ring.grow{ width:66px; height:66px; background:rgba(255,255,255,.10); }
  .cursor-ring.press{ width:30px; height:30px; }
}

/* Card lift + image zoom on hover */
.gi{ transition: box-shadow .5s ease; }
@media (hover:hover){
  .gi:hover{ transform: translateY(-7px) !important; }
  .gi > img, .gi img{ transition: transform .7s cubic-bezier(.22,1,.36,1); }
  .gi:hover img{ transform: scale(1.06); }
}

/* Animated underline on nav links (not pill buttons) */
#nav nav a[href]:not([class*="rounded-full"]){ position:relative; }
#nav nav a[href]:not([class*="rounded-full"])::after{
  content:''; position:absolute; left:0; bottom:-5px; height:1.5px; width:0;
  background:currentColor; opacity:.65; transition:width .32s cubic-bezier(.22,1,.36,1);
}
#nav nav a[href]:not([class*="rounded-full"]):hover::after{ width:100%; }

/* Pill buttons: gentle rise + shadow */
a[class*="rounded-full"], button[class*="rounded-full"]{
  transition: transform .3s ease, background-color .3s ease, border-color .3s ease, color .3s ease, box-shadow .3s ease;
}
@media (hover:hover){
  a[class*="rounded-full"]:hover{ transform: translateY(-2px); box-shadow: 0 14px 30px -14px rgba(0,0,0,.45); }
}

/* Reduced motion: strip the movement, keep the site usable */
@media (prefers-reduced-motion: reduce){
  .gi:hover{ transform:none !important; }
  .gi:hover img{ transform:none; }
  a[class*="rounded-full"]:hover{ transform:none; }
}
