:root{--maroon:#7C1D1D;--red:#B02A2A;--gold:#C9922A;--gold-light:#E8B84B;--gold-pale:#FDF3DC;--cream:#FAF6F0;--white:#FFFFFF;--dark:#1A0A0A;--text:#2D1515;--text-mid:#6B4444;--text-light:#9E7070;--border:rgba(201,146,42,0.25);--shadow-sm:0 2px 12px rgba(124,29,29,0.08);--shadow-md:0 8px 32px rgba(124,29,29,0.12);--radius:14px;--radius-sm:8px;--radius-pill:100px;--transition:all 0.25s cubic-bezier(0.4,0,0.2,1);--green:#16a34a}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
.hero{background:linear-gradient(135deg,var(--dark),var(--maroon));padding:70px 48px;text-align:center}
.hero h2{font-size:54px;color:white;margin-bottom:12px}
.hero h2 span{color:var(--gold-light)}
.hero p{color:rgba(255,255,255,0.72);font-size:16px;max-width:500px;margin:0 auto}

.section{max-width:1100px;margin:0 auto;padding:64px 48px}
.sec-header{text-align:center;margin-bottom:48px}
.sec-label{display:inline-flex;align-items:center;gap:8px;color:var(--gold);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px}
.sec-label::before,.sec-label::after{content:'';width:24px;height:1.5px;background:var(--gold);border-radius:1px}
.sec-title{font-size:38px;color:var(--maroon)}

/* UPCOMING EVENT BANNER */
.featured-event{background:linear-gradient(135deg,var(--gold-pale),#fff8e0);border:2px solid rgba(201,146,42,0.4);border-radius:20px;padding:36px 40px;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;margin-bottom:48px;position:relative;overflow:hidden}
.featured-event::before{content:'🎊';font-size:200px;position:absolute;right:-20px;bottom:-40px;opacity:0.07}
.fe-badge{display:inline-block;background:var(--red);color:white;padding:4px 14px;border-radius:var(--radius-pill);font-size:11px;font-weight:700;margin-bottom:12px}
.fe-title{font-size:32px;color:var(--maroon);margin-bottom:10px}
.fe-details{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:18px}
.fe-det{display:flex;align-items:center;gap:7px;font-size:14px;color:var(--text-mid)}
.fe-icon{width:30px;height:30px;background:rgba(124,29,29,0.08);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px}
.fe-countdown{display:flex;gap:12px}
.countdown-box{background:var(--maroon);color:white;border-radius:10px;padding:12px 16px;text-align:center;min-width:64px}
.cd-num{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:700;line-height:1}
.cd-lbl{font-size:10px;opacity:0.7;margin-top:2px}
.btn-register{padding:13px 32px;background:linear-gradient(135deg,var(--maroon),var(--red));color:white;border:none;border-radius:var(--radius-pill);font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 6px 20px rgba(124,29,29,0.3);transition:var(--transition)}
.btn-register:hover{transform:translateY(-2px)}

/* EVENTS GRID */
.events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.event-card{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;transition:var(--transition);box-shadow:var(--shadow-sm)}
.event-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}
.ec-banner{height:140px;background:linear-gradient(135deg,var(--maroon),var(--red));display:flex;align-items:center;justify-content:center;font-size:56px;position:relative}
.ec-banner-gold{background:linear-gradient(135deg,var(--gold),var(--gold-light))}
.ec-banner-dark{background:linear-gradient(135deg,var(--dark),var(--maroon))}
.ec-date-badge{position:absolute;top:12px;right:12px;background:rgba(255,255,255,0.95);border-radius:10px;padding:6px 10px;text-align:center}
.ec-day{font-family:'Cormorant Garamond',serif;font-size:22px;color:var(--maroon);font-weight:700;line-height:1}
.ec-month{font-size:10px;color:var(--text-light);font-weight:600;text-transform:uppercase}
.ec-body{padding:18px}
.ec-type{font-size:11px;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}
.ec-title{font-size:18px;color:var(--text);font-weight:700;margin-bottom:8px}
.ec-loc{font-size:13px;color:var(--text-light);margin-bottom:10px}
.ec-footer{display:flex;justify-content:space-between;align-items:center}
.ec-seats{font-size:12px;color:var(--text-light)}
.ec-seats strong{color:var(--green)}
.btn-join-event{padding:7px 18px;background:var(--gold-pale);border:1.5px solid rgba(201,146,42,0.35);border-radius:var(--radius-pill);font-family:'DM Sans',sans-serif;font-size:12.5px;font-weight:700;color:var(--gold);cursor:pointer;transition:var(--transition)}
.btn-join-event:hover{background:var(--gold);color:var(--dark)}

/* PAST EVENTS */
.past-section{background:var(--white);padding:64px 48px}
.past-inner{max-width:1100px;margin:0 auto}
.past-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}
.past-card{border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;transition:var(--transition)}
.past-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-sm)}
.past-photo{height:120px;background:linear-gradient(135deg,#f5e4d0,#ecd3b0);display:flex;align-items:center;justify-content:center;font-size:44px}
.past-info{padding:12px}
.past-name{font-size:14px;font-weight:700;color:var(--text);margin-bottom:2px}
.past-meta{font-size:11.5px;color:var(--text-light)}
.past-stat{font-size:12px;color:var(--green);font-weight:600;margin-top:4px}
@media(max-width:900px){
  .events-grid{grid-template-columns:1fr}
  .featured-event{grid-template-columns:1fr;gap:20px}
  .past-grid{grid-template-columns:repeat(2,1fr)}
  .section,.past-section{padding:40px 24px}
  header{padding:0 20px}
  .hero{padding:48px 24px}
  .hero h2{font-size:36px}
}