:root {
  --icca-navy: #0b2a4a;
  --icca-blue: #2b6bbf;
  --icca-cyan: #28aee6;
  --icca-teal: #1bb7a8;
  --icca-ink: #0a0a0a;
  --icca-muted: #6b7280;
  --icca-bg: #ffffff;
  --icca-soft: #f4f6f8;
}

body {
  font-family: 'Segoe UI', SegoeUI, 'Helvetica Neue', Arial, sans-serif;
  color: var(--icca-ink);
  background: var(--icca-bg);
}

/* Poster-like section rhythm */
.icca-section {
  padding: 3rem 0;
}
.icca-section-title {
  color: var(--icca-blue);
  font-weight: 800;
  letter-spacing: 0.2px;
}
.icca-card {
  background: #fff;
  border: 1px solid rgba(11, 42, 74, 0.08);
  border-radius: 14px;
  padding: 1.25rem 1.25rem;
  box-shadow: 0 10px 25px rgba(11, 42, 74, 0.06);
}

/* Tracks = clean two-column blocks */
.icca-tracks h4 {
  color: var(--icca-blue);
  font-weight: 800;
}
.icca-tracks ul {
  margin: 0.75rem 0 0;
  padding-left: 1.1rem;
  color: #111827;
  font-weight: 600;
}
.icca-tracks li {
  margin: 0.35rem 0;
}

/* Important Dates = poster-like highlight */
.icca-dates li b {
  color: var(--icca-blue);
}
.icca-dates li b[style*='red'] {
  color: #e11d48 !important;
} /* keep your red highlights */

/* Navbar: cleaner + poster palette */
.navbar {
  border-bottom: 1px solid rgba(11, 42, 74, 0.08);
}
.navbar .nav-link {
  font-weight: 700;
}
.navbar .nav-link:hover {
  color: var(--icca-blue);
}

/* Carousel caption band (poster vibe) */
.carousel-caption {
  background: rgba(11, 42, 74, 0.55);
  backdrop-filter: blur(6px);
  border-radius: 14px;
  padding: 1rem 1.25rem;
}
.carousel-caption h1 {
  font-weight: 900;
  letter-spacing: 0.2px;
}

#carouselExampleCaptions {
  position: relative;
}

.icca-carousel-overlay {
  position: absolute;
  left: 50%;
  bottom: 2.5rem;
  transform: translateX(-50%);
  z-index: 5; /* above images */
  width: min(900px, 92%);
  text-align: center;

  background: rgba(11, 42, 74, 0.55); /* poster-like band */
  backdrop-filter: blur(6px);
  padding: 1rem 1.25rem;
  border-radius: 14px;
}

.icca-carousel-overlay h1 {
  margin: 0;
  color: #fff;
  font-weight: 900;
  letter-spacing: 0.2px;
}

/* Footer strip like poster */
#footer {
  background: var(--icca-soft);
  border-top: 1px solid rgba(11, 42, 74, 0.08);
  text-align: center;
}
#footer .copyright {
  color: var(--icca-navy);
  font-weight: 700;
}

/* Full-width hero wrapper */
.icca-hero-wrap {
  width: 100%;
  margin: 0;
  padding: 0;
}

/* Theme navbar */
.icca-navbar {
  background: linear-gradient(90deg, var(--icca-blue), var(--icca-navy));
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

.icca-navbar .nav-link {
  color: rgba(255, 255, 255, 0.92) !important;
  font-weight: 700;
}

.icca-navbar .nav-link:hover {
  color: #ffffff !important;
}

.icca-navbar .dropdown-menu .dropdown-item {
  font-weight: 600;
}

.nav-bar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1050;
}

/* Make carousel truly edge-to-edge */
.icca-hero-carousel,
#carouselExampleCaptions {
  width: 100%;
  margin-top: 72px;
}

/* Optional: make the hero feel like a “banner” */
.carousel-item_custom img {
  height: 28rem; /* adjust if you want taller */
  object-fit: cover;
}
