:root{--blue:#0A66A3;--gray:#8b97a3}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.post-card{background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.06);transition:transform .2s ease,box-shadow .2s ease}.post-card:hover{transform:translateY(-4px);box-shadow:0 8px 18px rgba(0,0,0,.12)}.pc-media{position:relative;aspect-ratio:3/2}.pc-media img{width:100%;height:100%;object-fit:cover;display:block}.pc-ribbon{position:absolute;left:16px;bottom:12px;background:#E6F3FB;color:var(--blue);font-weight:800;font-size:0.9rem;letter-spacing:.03em;padding:6px 10px;border-radius:4px;display:inline-flex;align-items:center;gap:6px}.pc-ribbon svg{width:16px;height:16px;stroke:var(--blue);fill:none}.pc-body{padding:18px 20px 22px}.pc-date{font-size:1.15rem;font-weight:600;color:var(--blue);opacity:.8;margin-bottom:4px}.pc-title{margin:0 0 6px}.pc-title a{color:var(--blue);font-weight:700;font-size:1.45rem;line-height:1.2;text-decoration:none}.pc-excerpt{color:var(--gray);font-size:1rem;line-height:1.5;margin:0}@media (max-width:980px){.event-grid{grid-template-columns:repeat(2,1fr);gap:24px}}@media (max-width:600px){.event-grid{grid-template-columns:1fr;gap:20px}}.mobile_nav.opened .mobile_menu_bar:before{content:'\4d'}.mobile_menu_bar:before{transition:all .4s ease;transform:rotate(0deg);display:block}.mobile_nav.opened .mobile_menu_bar::before{transition:all .4s ease;transform:rotate(90deg);display:block}.et_mobile_menu{border-top:0}.et_pb_menu .et_mobile_menu{min-width:105vw;padding-top:20%!important;margin-left:-10vw;padding-bottom:100vh!important;margin-top:10px}.et_mobile_menu li a{padding:10px 20px!important;border-bottom:none!important}.et_mobile_menu li li{padding-left:0%!important}:root{--blue:#0A66A3;--gray:#8b97a3}.egp-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px;justify-content:flex-start}.egp-filter{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:20px;background:#f1f6fb;color:var(--blue);text-decoration:none;font-weight:700;font-size:0.95rem;transition:background 0.2s ease,color 0.2s ease}.egp-filter:hover{background:#e4effa}.egp-filter.is-active{background:var(--blue);color:#fff}.event-grid-pro{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.post-card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,0.06);transition:transform 0.2s ease,box-shadow 0.2s ease}.post-card:hover{transform:translateY(-4px);box-shadow:0 8px 18px rgba(0,0,0,0.12)}.pc-media{position:relative;aspect-ratio:3/2;background:#e9eef3}.pc-media img{width:100%;height:100%;object-fit:cover;display:block}.pc-ribbon{position:absolute;left:16px;bottom:12px;background:#E6F3FB;color:var(--blue);font-weight:800;font-size:0.9rem;letter-spacing:0.03em;padding:6px 10px;border-radius:4px;display:inline-flex;align-items:center;gap:6px}.pc-ribbon svg{width:16px;height:16px;stroke:currentColor;fill:none}.pc-ribbon.pc-cat-evenements{background:#EAF7EE;color:#2E7D32}.pc-ribbon.pc-cat-jeunesse{background:#FDF4E7;color:#C77800}.pc-ribbon.pc-cat-actualites{background:#E6F3FB;color:#0A66A3}.pc-ribbon.pc-cat-culture{background:#F3E8FF;color:#6B21A8}.pc-ribbon.pc-cat-sport{background:#E0F2FE;color:#0369A1}.pc-body{padding:18px 20px 22px}.pc-date{font-size:1.15rem;font-weight:600;color:var(--blue);opacity:0.8;margin-bottom:6px}.pc-title{margin:0 0 8px}.pc-title a{color:var(--blue);font-weight:900;font-size:1.45rem;line-height:1.2;text-decoration:none;transition:opacity 0.2s ease}.pc-title a:hover{opacity:0.85}.pc-excerpt{color:var(--gray);font-size:1rem;line-height:1.5;margin:0}.egp-pagination{display:flex;gap:8px;align-items:center;justify-content:center;margin-top:30px;flex-wrap:wrap}.egp-page{padding:8px 12px;border-radius:6px;text-decoration:none;background:#f5f7fa;color:#294b63;font-weight:700;transition:background 0.2s ease}.egp-page:hover{background:#e9eef5}.egp-page.current{background:var(--blue);color:#fff}.egp-page.prev,.egp-page.next{background:#eaf2fa}.egp-ellipsis{color:#94a3b8}@media (max-width:980px){.event-grid-pro{grid-template-columns:repeat(2,1fr);gap:24px}}@media (max-width:600px){.event-grid-pro{grid-template-columns:1fr;gap:20px}}