/* Elementor Classic/Cards remain in full control of image sizes, columns and spacing. */
.elementor-widget-posts .bm-eve-meta,
.elementor-widget-archive-posts .bm-eve-meta {
  display: flex; flex-direction: column; gap: .4rem;
  margin: .55rem 0 0; color: #576273; font-size: .93rem; line-height: 1.45;
}
.bm-eve-row { display: flex; align-items: flex-start; gap: .4rem; min-width: 0; }
.bm-eve-icon { display: inline-flex; flex: 0 0 1.125rem; align-items: center; justify-content: center; color: #346e81; padding-top: .08rem; }
.bm-eve-icon svg { display: block; }
.bm-eve-value { min-width: 0; overflow-wrap: anywhere; }
.elementor-post__thumbnail { position: relative; }
.bm-eve-badge {
  position: absolute; left: 0; top: 0; z-index: 2;
  display: flex; align-items: center; flex-direction: column; justify-content: center;
  min-width: 57px; min-height: 57px; padding: 4px 6px;
  color: #fff; background: #365b72; font-weight: 700; line-height: 1.1;
  text-align: center; pointer-events: none;
}
.bm-eve-badge-day { font-size: 1.45rem; }
.bm-eve-badge-month { font-size: .75rem; letter-spacing: .05em; }
@media (max-width: 767px) {
  .elementor-widget-posts .bm-eve-meta,
  .elementor-widget-archive-posts .bm-eve-meta { font-size: .88rem; }
}


/* Desktop: same horizontal Classic layout as other Elementor posts. Centre only
 * event text vertically alongside a left/right thumbnail. Image size, card
 * style and native Elementor style controls remain untouched. */
:is(.elementor-posts--thumbnail-left, .elementor-posts--thumbnail-right) .elementor-posts-container[data-bm-eve-config] .bm-eve-event > .elementor-post__text,
.elementor-posts-container[data-bm-eve-config]:is(.elementor-posts--thumbnail-left, .elementor-posts--thumbnail-right) .bm-eve-event > .elementor-post__text {
  align-self: center;
  margin-top: auto;
  margin-bottom: auto;
  min-width: 0;
}

/* Mobile: behave like a normal one-column recipe card: image on top and all
 * text, including the event date and venue, below it. Keep Elementor's own
 * backgrounds, borders, font, padding, image ratio and spacing settings.
 * Only decorated event cards are targeted, never ordinary posts or ads. */
@media (max-width: 767px) {
  :is(.elementor-posts--thumbnail-left, .elementor-posts--thumbnail-right) .elementor-posts-container[data-bm-eve-config] .bm-eve-event,
  .elementor-posts-container[data-bm-eve-config]:is(.elementor-posts--thumbnail-left, .elementor-posts--thumbnail-right) .bm-eve-event {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    min-width: 0;
  }

  :is(.elementor-posts--thumbnail-left, .elementor-posts--thumbnail-right) .elementor-posts-container[data-bm-eve-config] .bm-eve-event > .elementor-post__thumbnail__link,
  .elementor-posts-container[data-bm-eve-config]:is(.elementor-posts--thumbnail-left, .elementor-posts--thumbnail-right) .bm-eve-event > .elementor-post__thumbnail__link {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: 100%;
    flex: 0 0 auto !important;
    margin: 0 0 12px !important;
  }

  :is(.elementor-posts--thumbnail-left, .elementor-posts--thumbnail-right) .elementor-posts-container[data-bm-eve-config] .bm-eve-event > .elementor-post__text,
  .elementor-posts-container[data-bm-eve-config]:is(.elementor-posts--thumbnail-left, .elementor-posts--thumbnail-right) .bm-eve-event > .elementor-post__text {
    display: flex !important;
    flex-direction: column;
    align-self: stretch !important;
    flex: 1 1 auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    min-width: 0;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .elementor-posts-container[data-bm-eve-config] .bm-eve-event .bm-eve-meta {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto;
    max-height: none;
  }
}
