.elementor-504 .elementor-element.elementor-element-4881e054{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-504 .elementor-element.elementor-element-cf477ec{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for shortcode, class: .elementor-element-3a38671 *//* ================================
   CALENDAR → EVENTS (filters 33/66)
   Wrapper: .xr-cal-events
   ================================ */

/* ---------- Layout 33/66 ---------- */
.xr-cal-events-layout{
  display:grid;
  grid-template-columns:1fr 2fr;
  gap:24px;
  align-items:start;
}
@media (max-width: 900px){
  .xr-cal-events-layout{ grid-template-columns:1fr; }
}

/* ---------- Filters (left) ---------- */
.xr-cal-filters{
  background:#fff;
  border:1px solid #eee;
  padding:14px;
}

.xr-cal-filters-form{ margin:0; }
.xr-cal-field{ margin:0 0 12px; }

.xr-cal-filters input[type="text"],
.xr-cal-filters select{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  padding:10px 12px;
  border:1px solid #cfcfcf;
  border-radius:6px;
  background:#fff;
  font-size:14px;
}

/* Actions: match Media Watch (big Apply, Reset below) */
.xr-cal-actions{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:8px;
}

.xr-cal-btn{
  width:100%;
  padding:10px 14px;
  border:1px solid #cfcfcf;
  border-radius:6px;
  background:#fff;
  cursor:pointer;
}

.xr-cal-reset{
  display:inline-block;
  text-decoration:none;
  opacity:.75;
}
.xr-cal-reset:hover{
  text-decoration:underline;
  opacity:1;
}

/* ---------- Results (right) ---------- */
.xr-cal-results{ min-width:0; }

/* Empty state */
.xr-cal-empty{
  background:#fff;
  border:1px dashed #ccc;
  padding:14px;
  opacity:.85;
}

/* Optional title (if enabled) */
.xr-cal-events-title{
  color:#1FB7A6 !important;
  margin:0 0 18px;
}

/* ---------- Month “chapter” (H2) ---------- */
/* (Tu pourras l’utiliser quand on modifie le PHP pour sortir des h2 par mois) */
.xr-cal-month{
  margin:18px 0 10px;
  font-weight:700;
  font-size:1.15em;
  color:inherit;
  text-transform:none !important;
  letter-spacing:0 !important;
  opacity:.8;
}

/* ---------- Cards grid ---------- */
.xr-cal-events-list{
  margin:0;
  padding:0;
  list-style:none;

  display:grid !important; /* protège contre overrides */
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:16px;
}
@media (max-width: 768px){
  .xr-cal-events-list{ grid-template-columns:1fr; }
}

/* Card */
.xr-cal-event-card{
  margin:0;
  padding:14px 14px 12px;
  border:1px solid #eee;
  background:#fff;
}

/* Title: bold (only title) */
.xr-cal-event-title{
  display:inline-block;
  font-weight:700 !important;
  text-decoration:none;
  color:inherit;
  line-height:1.25;
}
.xr-cal-event-title:hover{ text-decoration:underline; }

/* Meta: not bold */
.xr-cal-event-date,
.xr-cal-event-country{
  font-weight:400 !important;
  opacity:.75;
  font-size:.95em;
  margin-top:6px;
}
.xr-cal-event-country{ margin-top:2px; }/* End custom CSS */