/* Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Poppins", sans-serif;
}

html {
  scroll-behavior: smooth;
}

/* Custom 3D Shine Effect for Logo with ID selector for stronger specificity */
#logo-img {
  --a: 12deg;
  aspect-ratio: 1;
  transform: perspective(400px) rotate3d(var(--r,1,-1),0,calc(var(--i,1)*var(--a)));
  -webkit-mask: 
    linear-gradient(135deg,#000c 30%,#000,#000c 70%)
    100% 100%/250% 250%;
  transition: 0.8s;
  cursor: pointer;
}

#logo-img:hover {
  --i: -1;
  -webkit-mask-position: 0 0;
  transition: 0.8s;
}

/* Custom Modal Animation */
@keyframes modalAppear {
  from {
    opacity: 0;
    transform: scale(0.9) translateY(-20px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

.modal-content {
  animation: modalAppear 0.3s ease-out;
}

/* Custom Progress Bar Animation */
.progress-fill {
  background: linear-gradient(90deg, #48bb78, #38a169);
  transition: width 0.5s ease;
}

/* Custom Team Card Hover Effects */
.team-card:hover {
  transform: translateY(-12px) scale(1.03);
}

.team-card:hover img {
  transform: rotate(-3deg) scale(1.1);
}

/* Custom Week Card Styling */
.week-card.completed {
  background: linear-gradient(135deg, #f0fff4 0%, #c6f6d5 100%);
}

.week-card.upcoming {
  background: linear-gradient(135deg, #ebf8ff 0%, #bee3f8 100%);
}

/* Custom Backdrop Blur for Modal */
.modal-overlay {
  backdrop-filter: blur(4px);
}

/* Custom Gradient Backgrounds */
.gradient-primary {
  background: linear-gradient(90deg, #1e3c72, #2a5298);
}

.gradient-hero {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}

.gradient-contact-form {
  background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
}
