/* Extra glow + polish (keeps core readable) */
:root{
  --neon1: rgba(124,58,237,.55);
  --neon2: rgba(16,185,129,.45);
  --neon3: rgba(59,130,246,.45);
}

.bg{position:fixed; inset:0; pointer-events:none; z-index:-1; overflow:hidden;}
.bg .stars{
  position:absolute; inset:-20%;
  background:
    radial-gradient(circle at 20% 30%, rgba(255,255,255,.10) 0 1px, transparent 2px) 0 0/120px 120px,
    radial-gradient(circle at 70% 60%, rgba(255,255,255,.08) 0 1px, transparent 2px) 0 0/160px 160px,
    radial-gradient(circle at 40% 80%, rgba(255,255,255,.06) 0 1px, transparent 2px) 0 0/220px 220px;
  filter: blur(.2px);
  opacity:.55;
  animation: drift 30s linear infinite;
}
@keyframes drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(-6%, -4%, 0)}}

.bg .glow{position:absolute; width:720px; height:720px; border-radius:50%; filter: blur(52px); opacity:.98; mix-blend-mode:screen;}
.bg .g1{left:-180px; top:-180px; background: radial-gradient(circle at 30% 30%, var(--neon3), transparent 65%); animation: float1 10s ease-in-out infinite;}
.bg .g2{right:-220px; top:10%; background: radial-gradient(circle at 40% 40%, var(--neon1), transparent 70%); animation: float2 12s ease-in-out infinite;}
.bg .g3{left:20%; bottom:-260px; background: radial-gradient(circle at 30% 30%, var(--neon2), transparent 70%); animation: float3 14s ease-in-out infinite;}
@keyframes float1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(40px,30px) scale(1.06)}}
@keyframes float2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-30px,40px) scale(1.08)}}
@keyframes float3{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(20px,-30px) scale(1.05)}}

/* Card polish */
.card{position:relative;}
.card::before{
  content:"";
  position:absolute; inset:-1px;
  border-radius:20px;
  background: linear-gradient(135deg, rgba(124,58,237,.35), rgba(59,130,246,.25), rgba(16,185,129,.20));
  opacity:.25;
  z-index:-1;
}
.card:hover{transform: translateY(-1px);}

.btn.glow{
  background: linear-gradient(135deg, rgba(124,58,237,.85), rgba(59,130,246,.75));
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 0 0 1px rgba(124,58,237,.20), 0 14px 40px rgba(59,130,246,.25);
}

.thumb{width:100%; aspect-ratio: 16/10; object-fit:cover; border-radius:16px; border:1px solid rgba(255,255,255,.10); margin-bottom:12px;}

.gallery .gimg, .gallery-item{border-radius:16px; overflow:hidden; border:1px solid rgba(255,255,255,.10);}
.gallery .gimg img, .gallery-item img{display:block; width:100%; height:100%; object-fit:cover;}

/* Mobile: tighter */
@media (max-width: 720px){
  .bg .glow{width:520px; height:520px;}
}


/* --- Enhanced 'award-level' glow (gold + electric blue) --- */
:root{
  --gold:#f5c84c;
  --gold2:#ffdd7a;
  --blue:#4da3ff;
  --blue2:#7ce7ff;
}

body::before{
  content:"";
  position:fixed; inset:-20%;
  background:
    radial-gradient(40% 30% at 20% 15%, rgba(245,200,76,.24), transparent 60%),
    radial-gradient(45% 35% at 85% 20%, rgba(77,163,255,.20), transparent 60%),
    radial-gradient(35% 30% at 60% 85%, rgba(124,231,255,.16), transparent 60%),
    radial-gradient(45% 45% at 15% 80%, rgba(255,221,122,.14), transparent 65%);
  filter: blur(14px) saturate(1.35);
  pointer-events:none;
  z-index:-2;
  animation: glowDrift 16s ease-in-out infinite alternate;
}
@keyframes glowDrift{
  0%{ transform:translate3d(-1.5%, -1%, 0) scale(1.02); opacity:.9;}
  100%{ transform:translate3d(1.5%, 1%, 0) scale(1.05); opacity:1;}
}

.neon-border{
  position:relative;
  border-radius:18px;
  overflow:hidden;
}
.neon-border::before{
  content:"";
  position:absolute; inset:-2px;
  background: conic-gradient(from 180deg,
    rgba(77,163,255,.0),
    rgba(77,163,255,.85),
    rgba(245,200,76,.95),
    rgba(124,231,255,.85),
    rgba(245,200,76,.95),
    rgba(77,163,255,.85),
    rgba(77,163,255,.0));
  filter: blur(4px);
  opacity:.78;
  animation: spinGlow 8s linear infinite;
  pointer-events:none;
}
.neon-border::after{
  content:"";
  position:absolute; inset:1px;
  background: rgba(10,12,18,.72);
  border-radius:16px;
  pointer-events:none;
}
@keyframes spinGlow{ to{ transform: rotate(360deg);} }

.btn.glow, .btn.primary{
  box-shadow:
    0 0 0 1px rgba(245,200,76,.24) inset,
    0 14px 44px rgba(77,163,255,.24),
    0 0 34px rgba(245,200,76,.32),
    0 0 18px rgba(124,231,255,.18);
}
.btn.glow:hover, .btn.primary:hover{
  transform: translateY(-1px);
  box-shadow:
    0 0 0 1px rgba(245,200,76,.38) inset,
    0 18px 56px rgba(77,163,255,.30),
    0 0 46px rgba(245,200,76,.38),
    0 0 26px rgba(124,231,255,.22);
}

.section-title{
  text-shadow:
    0 0 18px rgba(77,163,255,.25),
    0 0 26px rgba(245,200,76,.18);
}

.card, .glass{
  box-shadow:
    0 0 0 1px rgba(255,255,255,.05) inset,
    0 18px 50px rgba(0,0,0,.45),
    0 0 24px rgba(77,163,255,.10),
    0 0 22px rgba(245,200,76,.08);
}

.hero-verse{
  border:1px solid rgba(245,200,76,.18);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.04) inset,
    0 0 28px rgba(245,200,76,.14),
    0 0 24px rgba(77,163,255,.12);
}

#fxCanvas{
  position:fixed; inset:0;
  pointer-events:none;
  z-index:-1;
  opacity:.85;
}
