body {
  font-family: Inter, Arial, sans-serif;
  line-height: 1.7;
  color: #1f2937;
}

h1, h2, h3, h4, h5 {
  font-weight: 700;
}

.text-gradient {
  background: linear-gradient(90deg, #2563eb, #0ea5e9);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Hero overlay */
.carousel-caption {
  backdrop-filter: blur(4px);
}

.carousel-caption h1 {
  font-size: 2rem;
}

@media (min-width: 992px) {
  .carousel-caption h1 {
    font-size: 2.6rem;
  }
}

/* Research cards */
.research-card img {
  height: 220px;
  object-fit: cover;
}

.research-card {
  border: none;
  border-radius: 14px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.research-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

/* Section backgrounds */
.section-soft {
  background: linear-gradient(180deg, #f8fafc, #eef2ff);
}

.section-accent {
  background: linear-gradient(135deg, #0ea5e9, #2563eb);
  color: #fff;
}

.section-accent h2,
.section-accent p {
  color: #fff;
}


.publication-item {
  animation: fadeUp 0.4s ease;
}

@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Footer */
footer a:hover {
  text-decoration: underline;
}
