/* CGS Core: event lists, /events/ ([cgs_upcoming_events]). Moved from the <style> block of WPCode snippet 25095127 unchanged (2026-10-24). */
.cgs-upcoming-wrap { max-width:1080px; margin:60px auto; padding:0 20px; }
.cgs-upcoming-wrap h1 { font-size:36px; font-weight:700; color:#1a1a2e; margin:0 0 12px; }
.cgs-upcoming-wrap .cgs-intro { color:#555; font-size:17px; margin:0; line-height:1.7; }
.cgs-upcoming-wrap h2 { font-size:24px; font-weight:700; margin:0 0 20px; padding-bottom:10px; }
.cgs-upcoming-wrap h2.upcoming { color:#002855; border-bottom:2px solid #002855; }
.cgs-upcoming-wrap h2.recent { color:#1a1a2e; border-bottom:2px solid #002855; }
.cgs-upcoming-card { border-radius:20px; padding:30px 0; margin-bottom:20px; transition:background 0.2s ease; }
.cgs-upcoming-card:hover { background:#fafafc; }
.cgs-upcoming-card-inner { display:flex; gap:24px; align-items:flex-start; flex-wrap:wrap; }
.cgs-upcoming-card-thumb { flex-shrink:0; }
.cgs-upcoming-card-thumb img { width:280px; height:auto; border-radius:8px; object-fit:cover; display:block; }
.cgs-upcoming-card-content { flex:1; min-width:280px; }
.cgs-upcoming-card h3 { margin:0 0 10px; font-size:22px; line-height:1.3; }
.cgs-upcoming-card h3 a { color:#1a1a2e; text-decoration:none; }
.cgs-upcoming-card h3 a:hover { color:#002855; }
.cgs-upcoming-empty { margin-bottom:50px; padding:30px; background:#f8f9fc; border-radius:20px; text-align:center; }
.cgs-upcoming-empty h2 { color:#002855; border:none; padding:0; margin:0 0 12px; }
.cgs-upcoming-empty p { color:#555; font-size:16px; margin:0; }
.cgs-recent-card { border-bottom:1px solid #eee; padding:20px 15px; border-radius:8px; transition:background 0.2s ease; }
.cgs-recent-card:hover { background:#f8f9fa; }
.cgs-recent-card-inner { display:flex; gap:20px; align-items:flex-start; }
.cgs-recent-card-thumb { flex-shrink:0; }
.cgs-recent-card-thumb img { width:160px; height:auto; border-radius:6px; object-fit:cover; display:block; }
.cgs-recent-card-content { flex:1; min-width:0; }
.cgs-recent-card-meta { display:flex; gap:12px; align-items:center; margin-bottom:8px; flex-wrap:wrap; }
.cgs-recent-card-date { color:#666; font-size:14px; }
.cgs-recent-card-cat { background:#27318B; color:#fff !important; padding:2px 10px; border-radius:20px; font-size:12px; font-weight:600; text-decoration:none; }
.cgs-recent-card-cat:hover { background:#1f2870; color:#fff !important; }
.cgs-recent-card h3 { margin:0 0 6px; font-size:18px; }
.cgs-recent-card h3 a { color:#1a1a2e; text-decoration:none; }
.cgs-recent-card h3 a:hover { color:#002855; }
.cgs-recent-card p { color:#555; margin:0; line-height:1.5; font-size:14px; }
.cgs-see-all { display:inline-block; background:transparent !important; color:#27318b !important; padding:10px 28px; border:2px solid #27318b !important; border-radius:50px; text-decoration:none; font-weight:700; font-size:18px; letter-spacing:1px; transition:all 0.2s ease; }
.cgs-see-all:hover { background:#27318b !important; color:#fff !important; }
.cgs-rec-cats { display:flex; flex-wrap:wrap; gap:8px; align-items:center; justify-content:center; margin-top:32px; }
.cgs-rec-cats-label { font-weight:600; font-size:14px; color:#333; margin-right:4px; }
.cgs-rec-cat { background:#e8e8e8; color:#333 !important; padding:6px 16px; border-radius:20px; font-size:13px; font-weight:600; text-decoration:none; transition:background 0.2s ease; }
.cgs-rec-cat:hover { background:#d0d0d0; color:#222 !important; }
/* Fix archive-context Divi cache missing footer logo margin override (desktop only; mobile keeps Divi default centering) */
@media (min-width:981px) {
    .et-db #et-boc .et-l .et_pb_image_0_tb_footer { margin-left:0 !important; }
}
@media (max-width:768px) {
    .cgs-upcoming-card-inner, .cgs-recent-card-inner { flex-direction:column; }
    .cgs-upcoming-card-thumb img, .cgs-recent-card-thumb img { width:100%; }
}
