:root { --dark-indigo: #0D0C1D; --purple-accent: #9F70FD; --blue-accent: #4A90E2; --light-text: #FFFFFF; --muted-text: #a0aec0; --status-open: #7ED321; --status-closed: #888888; --card-bg: #1A192D; --card-border: rgba(159, 112, 253, 0.2); --font-headings: 'Poppins', sans-serif; --font-body: 'Inter', sans-serif; } body { background-color: var(--dark-indigo); color: var(--light-text); font-family: var(--font-body); padding-top: 70px; /* For fixed navbar */ } .navbar { background-color: rgba(13, 12, 29, 0.85); backdrop-filter: blur(10px); } .navbar-brand { font-family: var(--font-headings); font-weight: 700; font-size: 1.5rem; color: var(--purple-accent) !important; } .nav-link { font-weight: 500; transition: color 0.3s ease; } .nav-link:hover, .nav-link.active { color: var(--purple-accent) !important; } .hero-section { padding: 6rem 0; background: linear-gradient(45deg, rgba(74, 144, 226, 0.1), rgba(159, 112, 253, 0.1)); text-align: center; } .hero-title { font-family: var(--font-headings); font-size: clamp(2.5rem, 5vw, 4rem); font-weight: 700; color: var(--light-text); } .hero-tagline { font-size: 1.25rem; color: var(--muted-text); max-width: 600px; margin: 1rem auto 0; } .content-section { padding: 4rem 0; } .section-title { font-family: var(--font-headings); font-weight: 600; font-size: 2.5rem; margin-bottom: 2.5rem; text-align: center; color: var(--light-text); } .event-card { background-color: var(--card-bg); border: 1px solid var(--card-border); border-radius: 12px; transition: transform 0.3s ease, box-shadow 0.3s ease; height: 100%; position: relative; } .event-card:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(159, 112, 253, 0.1); } .event-card .card-body { padding: 1.5rem; } .event-card .card-title { font-family: var(--font-headings); font-weight: 600; font-size: 1.3rem; color: var(--light-text); } .event-card .card-text { color: var(--muted-text); margin-bottom: 0.5rem; display: flex; align-items: center; } .event-card .card-text .icon { margin-right: 0.75rem; } .status-badge { font-size: 0.8rem; font-weight: 500; padding: 0.4em 0.8em; border-radius: 20px; } .status-open { background-color: rgba(126, 211, 33, 0.15); color: var(--status-open); } .status-closed { background-color: rgba(136, 136, 136, 0.15); color: var(--status-closed); } footer { background-color: var(--card-bg); color: var(--muted-text); border-top: 1px solid var(--card-border); }