.elementor-506 .elementor-element.elementor-element-e7aeb0{--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-506 .elementor-element.elementor-element-7a7bf39{--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-301c43c *//* =========================================================
   XRDB — CALENDAR EVENTS
   Layout:
   - single column
   - top filters
   - ongoing as full-width banners
   - deadlines as minimal calendar rows
   - upcoming as classic grouped cards
   ========================================================= */

.xr-cal-events{
  width:100%;
  max-width:none !important;
  color:#3E3A35;
}

.xr-cal-events-title{
  text-align:center;
  color:#00B1A5;
  margin:0 0 28px;
}

.xrdb-debug{
  margin:0 0 20px;
  padding:10px 14px;
  border:1px solid #B5B5B5;
  border-radius:12px;
  font-size:13px;
  background:#fafafa;
}

/* =========================================================
   FILTERS TOP
   ========================================================= */

.xr-cal-filters-wrap{
  margin:0 0 34px;
}

.xr-cal-filters-form{
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:12px;
  align-items:end;
}

.xr-cal-field{
  min-width:0;
}

.xr-cal-field--search{
  grid-column:span 2;
}

.xr-cal-field--view{
  grid-column:span 2;
}

.xr-cal-field input,
.xr-cal-field select{
  width:100%;
  height:46px;
  border:1px solid #B5B5B5;
  border-radius:12px;
  background:#fff;
  color:#3E3A35;
  padding:0 14px;
  font-size:14px;
  box-sizing:border-box;
}

.xr-cal-field input:focus,
.xr-cal-field select:focus{
  outline:none;
  border-color:#00B1A5;
  box-shadow:0 0 0 1px #00B1A5 inset;
}

.xr-cal-actions{
  display:flex;
  align-items:center;
  gap:12px;
  justify-content:flex-start;
}

.xr-cal-btn{
  appearance:none;
  border:0;
  background:#00B1A5;
  color:#fff !important;
  height:46px;
  padding:0 18px;
  border-radius:999px;
  font-size:14px;
  font-weight:600;
  cursor:pointer;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition:transform .15s ease, opacity .15s ease;
}

.xr-cal-btn:hover,
.xr-cal-btn:focus,
.xr-cal-btn:visited{
  color:#fff !important;
}

.xr-cal-btn:hover{
  opacity:.92;
  transform:translateY(-1px);
  color:#fff;
}

.xr-cal-btn--small{
  height:38px;
  padding:0 14px;
  font-size:13px;
}

.xr-cal-reset{
  color:#3E3A35;
  text-decoration:none;
  font-size:14px;
}

.xr-cal-reset:hover{
  color:#00B1A5;
}

/* =========================================================
   RESULTS / SECTIONS
   ========================================================= */

.xr-cal-results{
  display:flex;
  flex-direction:column;
  gap:48px;
}

.xr-cal-section{
  width:100%;
}

.xr-cal-section-head{
  margin:0 0 18px;
}

.xr-cal-section-title{
  margin:0;
  color:#00B1A5;
  font-size:30px;
  line-height:1.1;
  font-weight:700;
}

.xr-cal-month{
  margin:0 0 16px;
  color:#3E3A35;
  font-size:22px;
  line-height:1.2;
  font-weight:700;
}

.xr-cal-month--deadlines{
  margin-top:28px;
}

/* =========================================================
   ONGOING — FULL WIDTH BANNERS
   ========================================================= */

.xr-cal-ongoing-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:16px;
}

.xr-cal-ongoing-card{
  list-style:none;
  margin:0;
  padding:0;
}

.xr-cal-ongoing-card__inner{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:14px;
  width:100%;
  padding:24px 26px;
  border-radius:22px;
  background:linear-gradient(135deg, #00B1A5 0%, #0d8f86 100%);
  color:#fff;
  box-sizing:border-box;
}

.xr-cal-ongoing-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
  align-items:center;
}

.xr-cal-ongoing-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:4px 12px;
  border-radius:999px;
  background:#fff;
  color:#00B1A5;
  font-size:12px;
  font-weight:700;
  letter-spacing:.02em;
  text-transform:uppercase;
}

.xr-cal-ongoing-date,
.xr-cal-ongoing-country{
  font-size:14px;
  line-height:1.4;
  opacity:.95;
}

.xr-cal-ongoing-title{
  margin:0;
  font-size:34px;
  line-height:1.08;
  font-weight:700;
  max-width:920px;
}

.xr-cal-ongoing-title a{
  color:#fff;
  text-decoration:none;
}

.xr-cal-ongoing-title a:hover{
  text-decoration:underline;
}

/* =========================================================
   DEADLINES — MINIMAL CALENDAR LIST
   ========================================================= */

.xr-cal-deadlines-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
}

.xr-cal-deadline-item{
  display:grid;
  grid-template-columns:88px minmax(0, 1fr) auto;
  gap:20px;
  align-items:center;
  padding:18px 0;
  border-top:1px solid #E6E6E6;
}

.xr-cal-deadline-item:last-child{
  border-bottom:1px solid #E6E6E6;
}

.xr-cal-deadline-datebox{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:88px;
  min-height:88px;
  border:1px solid #DADADA;
  border-radius:16px;
  background:#fff;
  box-sizing:border-box;
}

.xr-cal-deadline-month{
  font-size:12px;
  line-height:1.1;
  font-weight:700;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:#00B1A5;
}

.xr-cal-deadline-day{
  font-size:30px;
  line-height:1;
  font-weight:700;
  color:#3E3A35;
  margin:4px 0;
}

.xr-cal-deadline-year{
  font-size:12px;
  line-height:1.1;
  color:#777;
}

.xr-cal-deadline-main{
  min-width:0;
}

.xr-cal-deadline-topline{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  margin:0 0 8px;
  align-items:center;
}

.xr-cal-deadline-kind{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 10px;
  border-radius:999px;
  background:#F2FBFA;
  color:#00B1A5;
  font-size:12px;
  font-weight:700;
}

.xr-cal-deadline-country{
  font-size:13px;
  color:#777;
}

.xr-cal-deadline-title{
  margin:0;
  font-size:22px;
  line-height:1.2;
  font-weight:700;
}

.xr-cal-deadline-title a{
  color:#3E3A35;
  text-decoration:none;
}

.xr-cal-deadline-title a:hover{
  color:#00B1A5;
}

.xr-cal-deadline-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

/* =========================================================
   UPCOMING — CLASSIC LIST
   ========================================================= */

.xr-cal-upcoming-list{
  list-style:none;
  margin:0 0 8px;
  padding:0;
  display:grid;
  grid-template-columns:repeat(1, minmax(0, 1fr));
  gap:14px;
}

.xr-cal-upcoming-card{
  list-style:none;
  margin:0;
  padding:18px 20px;
  border:1px solid #E4E4E4;
  border-radius:18px;
  background:#fff;
}

.xr-cal-upcoming-title{
  display:block;
  color:#3E3A35;
  text-decoration:none;
  font-size:20px;
  line-height:1.2;
  font-weight:700;
  margin:0 0 8px;
}

.xr-cal-upcoming-title:hover{
  color:#00B1A5;
}

.xr-cal-upcoming-date{
  font-size:14px;
  line-height:1.4;
  color:#3E3A35;
  margin:0 0 4px;
}

.xr-cal-upcoming-country{
  font-size:13px;
  line-height:1.4;
  color:#777;
}

/* =========================================================
   EMPTY
   ========================================================= */

.xr-cal-empty{
  padding:22px 20px;
  border:1px solid #E4E4E4;
  border-radius:18px;
  background:#fafafa;
  font-size:15px;
  color:#3E3A35;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1200px){
  .xr-cal-filters-form{
    grid-template-columns:repeat(4, minmax(0, 1fr));
  }

  .xr-cal-field--search,
  .xr-cal-field--view{
    grid-column:span 2;
  }
}

@media (max-width: 767px){
  .xr-cal-filters-form{
    grid-template-columns:repeat(1, minmax(0, 1fr));
  }

  .xr-cal-field--search,
  .xr-cal-field--view{
    grid-column:auto;
  }

  .xr-cal-actions{
    justify-content:flex-start;
    flex-wrap:wrap;
  }

  .xr-cal-section-title{
    font-size:26px;
  }

  .xr-cal-ongoing-card__inner{
    padding:20px 18px;
    border-radius:18px;
  }

  .xr-cal-ongoing-title{
    font-size:26px;
  }

  .xr-cal-deadline-item{
    grid-template-columns:72px minmax(0, 1fr);
    gap:14px;
  }

  .xr-cal-deadline-actions{
    grid-column:1 / -1;
    justify-content:flex-start;
    padding-left:86px;
  }

  .xr-cal-deadline-datebox{
    width:72px;
    min-height:72px;
    border-radius:14px;
  }

  .xr-cal-deadline-day{
    font-size:24px;
  }

  .xr-cal-deadline-title{
    font-size:18px;
  }

  .xr-cal-upcoming-card{
    padding:16px 16px;
  }

  .xr-cal-upcoming-title{
    font-size:18px;
  }
}/* End custom CSS */