/* Grad Night Theme */
:root { --primary: #4B0082; --secondary: #FFD700; --light: #F5F5FF; }
body { font-family: 'Poppins', sans-serif; background: var(--light); }
.hero-section { min-height: 100vh; display: flex; align-items: center; justify-content: center; text-align: center; padding: 50px 20px; background: linear-gradient(135deg, #4B0082 0%, #6A0DAD 50%, #FFD700 100%); }
.cap { font-size: 5rem; margin-bottom: 20px; animation: bounce 2s infinite; }
@keyframes bounce { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-20px); } }
.hero-title { font-size: 3.5rem; color: white; margin-bottom: 10px; font-weight: 700; }
.hero-subtitle { font-size: 1.5rem; color: var(--secondary); margin-bottom: 30px; }
.party-details { margin-bottom: 30px; }
.detail-item { display: inline-flex; align-items: center; gap: 10px; background: rgba(255,255,255,0.2); padding: 10px 20px; border-radius: 30px; margin: 5px; color: white; }
.btn-rsvp { background: var(--secondary); color: var(--primary); padding: 15px 40px; border-radius: 50px; text-decoration: none; font-weight: 700; display: inline-block; }
.rsvp-section { padding: 80px 0; background: white; }
.rsvp-card { background: var(--light); padding: 40px; border-radius: 20px; border: 2px solid var(--primary); }
.rsvp-card h2 { color: var(--primary); text-align: center; margin-bottom: 30px; }
.form-control { border: 2px solid var(--primary); border-radius: 10px; padding: 12px; }
.btn-submit { width: 100%; background: var(--primary); color: white; border: none; padding: 15px; border-radius: 10px; font-weight: 600; cursor: pointer; }
