/* Custom CSS on top of Tailwind (CDN) — Kokrajhar Law College */

html { scroll-behavior: smooth; }
body {
  -webkit-font-smoothing: antialiased;
  position: relative;
}

/* Global noise overlay via SVG turbulence */
body::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
  pointer-events: none;
  opacity: 0.05;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
}

/* Container radius system */
.rounded-premium {
  border-radius: 2rem;
}
@media (min-width: 768px) {
  .rounded-premium {
    border-radius: 3rem;
  }
}

/* Magnetic feeling hover */
.btn-magnetic {
  transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), filter 0.3s ease;
}
.btn-magnetic:hover {
  transform: scale(1.03) translateY(-1px);
}
.btn-magnetic:active {
  transform: scale(0.98);
}

/* Interactive card hover */
.card-premium {
  transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.4s ease, border-color 0.4s ease;
}
.card-premium:hover {
  transform: translateY(-4px) scale(1.01);
}

/* Slide bg overlay for button */
.btn-slide-bg {
  position: relative;
  overflow: hidden;
}
.btn-slide-bg span.bg-layer {
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: var(--tw-accent-color, #B8893E);
  transition: left 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 0;
}
.btn-slide-bg:hover span.bg-layer {
  left: 0;
}
.btn-slide-bg > * {
  position: relative;
  z-index: 10;
}

/* Reveal-on-scroll (driven by GSAP if present, CSS fallback otherwise) */
.reveal { opacity: 0; transform: translateY(24px); }
.reveal.in { opacity: 1; transform: none; transition: opacity .7s ease, transform .7s ease; }

/* Nav shrink shadow on scroll */
#site-nav nav { transition: box-shadow .25s ease, background-color .25s ease, border-color .25s ease; }

/* Hide scrollbar on horizontal strips */
.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }

/* Navigation link premium pills */
.nav-link-pill {
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
/* Unscrolled dark background state */
#site-nav:not(.scrolled) .nav-link-pill:hover {
  background-color: rgba(255, 255, 255, 0.08) !important;
  color: #B8893E !important; /* Gold/Brass hover */
}
/* Scrolled light background state */
#site-nav.scrolled .nav-link-pill:hover {
  background-color: rgba(31, 58, 46, 0.05) !important;
  color: #B8893E !important; /* Gold/Brass hover */
}
