/* styles.css */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');

body {
  font-family: 'Inter', ui-sans-serif, system-ui, sans-serif;
  background-color: #0a0a0b;
}

/* Liquid / glass accents */
.glass {
  background: radial-gradient(120% 120% at 10% 10%, rgba(255,255,255,0.14), rgba(255,255,255,0.06) 40%, rgba(255,255,255,0.03) 70%, rgba(255,255,255,0.01) 100%);
  backdrop-filter: blur(10px) saturate(130%);
  -webkit-backdrop-filter: blur(10px) saturate(130%);
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 1.25rem;
  box-shadow: 0 8px 40px rgba(0,0,0,0.25) inset, 0 8px 30px rgba(0,0,0,0.22);
}
.blob {
  position: absolute; filter: blur(60px); opacity: .55; mix-blend-mode: screen; animation: float 18s ease-in-out infinite;
}
@keyframes float {
  0%, 100% { transform: translateY(0) translateX(0) scale(1); }
  50% { transform: translateY(-30px) translateX(10px) scale(1.06); }
}
html { scroll-behavior: smooth; }
/* Smooth reveal */
.reveal { opacity: 0; transform: translateY(18px); transition: all .7s ease; }
.reveal.show { opacity: 1; transform: translateY(0); }

#projectsGrid .glass {
  transition: transform 0.2s, box-shadow 0.2s;
}
#projectsGrid .glass:hover {
  transform: translateY(-4px) scale(1.02);
  box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.25);
}

#articleGrid .glass {
  transition: transform 0.2s, box-shadow 0.2s;
}
#articleGrid .glass:hover {
  transform: translateY(-4px) scale(1.02);
  box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.25);
}
#articleGrid a {
  text-decoration: none;
}
#articleGrid .underline {
  color: #60a5fa;
}

#events .glass {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-start;
}
#events .glass h3 {
  margin-bottom: 1rem;
}
#upcomingEvents > div, #pastEvents > div {
  align-items: flex-start !important;
}
#events .glass > h3 {
  flex-shrink: 0;
}
