/*! MFM Mega Region 2 — event card styles for department pages (gen218.html, women.html).
   Mirrors the Upcoming Events cards on events.html. Cards link through to events.html#<anchor>
   for the full details, gallery, and share. */

.dept-events { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; align-items: start; }
@media (max-width: 820px){ .dept-events{ grid-template-columns: 1fr; max-width: 560px; margin: 0 auto; } }

.evt-card{ background: var(--bg-white); border:1px solid var(--bg-sand-border); border-radius:16px; padding:18px; transition:border-color .3s, box-shadow .3s, transform .3s; box-shadow:0 6px 18px rgba(20,34,64,.05); }
.evt-card:hover{ border-color: var(--line-white-strong); box-shadow:0 12px 30px rgba(20,34,64,.09); transform:translateY(-2px); }
.evt-head{ display:flex; gap:14px; }
.evt-thumb{ position:relative; flex:none; width:82px; height:108px; border-radius:11px; overflow:hidden; border:1px solid var(--bg-sand-border); background:var(--bg-sand); cursor:pointer; display:block; }
.evt-thumb img{ width:100%; height:100%; object-fit:cover; object-position:center 16%; display:block; }
.evt-thumb .vf{ position:absolute; left:0; right:0; bottom:0; text-align:center; font-size:10px; font-weight:700; letter-spacing:.03em; color:#fff; background:rgba(20,34,64,.72); padding:3px 4px; }
.evt-gbadge{ position:absolute; top:5px; right:5px; display:flex; align-items:center; gap:3px; font-size:10px; font-weight:800; color:#fff; background:rgba(20,34,64,.82); padding:2px 6px 2px 5px; border-radius:999px; }
.evt-gbadge svg{ width:11px; height:11px; }
.evt-htext{ flex:1; min-width:0; }
.evt-chip{ display:inline-block; font-family:var(--font-sans); font-size:.64rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#fff; padding:5px 11px; border-radius:999px; margin-bottom:9px; }
.evt-chip.now{background:#e8532e}.evt-chip.ongoing{background:#2fa869}.evt-chip.week{background:#c9952c}.evt-chip.upcoming{background:#5f86c9}
.evt-htext h4{ font-family:var(--font-serif); font-weight:600; font-size:1.18rem; line-height:1.16; }
.evt-htext h4 a{ color:var(--navy); text-decoration:none; }
.evt-htext h4 a:hover{ color:var(--gold-dim); }
.evt-facts{ margin-top:14px; }
.evt-fact{ display:flex; align-items:flex-start; gap:9px; font-size:.94rem; color:var(--text-on-white); margin-bottom:6px; line-height:1.3; }
.evt-fact svg{ width:16px; height:16px; flex:none; margin-top:2px; color:var(--gold); }
.evt-fact.date{ color:var(--fire); font-weight:700; }
.evt-fact.date svg{ color:var(--fire); }
.evt-desc{ font-size:.92rem; color:var(--text-on-white); line-height:1.55; margin:11px 0 15px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.evt-acts{ display:flex; gap:9px; align-items:stretch; }
.evt-btn{ text-align:center; font-family:var(--font-sans); font-weight:700; font-size:.9rem; padding:11px 8px; border-radius:10px; text-decoration:none; display:flex; align-items:center; justify-content:center; gap:7px; cursor:pointer; border:none; }
.evt-btn svg{ width:16px; height:16px; }
.evt-btn.tix{ flex:1; background:linear-gradient(135deg,#e85d26,#d64a1c); color:#fff; box-shadow:0 6px 16px rgba(232,93,38,.26); }
.evt-btn.cal{ flex:1; background:#fff; color:var(--navy); border:1.6px solid var(--navy); }
.evt-btn.share{ flex:none; width:46px; background:#fff; color:var(--navy); border:1.6px solid var(--line-white-strong); }
.evt-btn.cal:hover, .evt-btn.share:hover{ background:var(--bg-sand); }
.evt-btn.tix:hover{ filter:brightness(1.05); }
.evt-btn.details{ flex:1; background:var(--navy); color:#fff; }
.evt-btn.details:hover{ filter:brightness(1.08); }

.dept-empty{ text-align:center; padding:34px 24px; background:var(--bg-white); border:1px dashed var(--bg-sand-border); border-radius:16px; }
.dept-empty p{ color:var(--text-on-white); font-size:.96rem; margin:0 0 6px; }
.dept-empty a{ color:var(--gold-dim); font-weight:700; }

.evt-toast{ position:fixed; left:50%; bottom:26px; transform:translateX(-50%) translateY(20px); background:var(--navy); color:#fff; font-size:.9rem; font-weight:600; padding:12px 20px; border-radius:999px; box-shadow:0 10px 30px rgba(0,0,0,.3); opacity:0; pointer-events:none; transition:opacity .25s, transform .25s; z-index:2400; }
.evt-toast.show{ opacity:1; transform:translateX(-50%) translateY(0); }
