/* Listing shortcode overrides — loaded only where [samadhi_events] is embedded.
   Keeps the shared .se-scope design file untouched; adds the "embedded in another page"
   presentation + the view layouts (masonry) not already in se-design. */

/* Embedded context: no page background of its own — sit transparently on the host (Elementor) page. */
.se-scope.se-embed { background: transparent !important; }
.se-scope.se-embed .se-list-wrap { padding: 0; max-width: none; }

/* Masonry — column flow of cards (used by the Online Classes page). */
.se-view-masonry .se-cards { display: block; column-count: 3; column-gap: 20px; }
.se-view-masonry .se-card-item { display: block; break-inside: avoid; margin: 0 0 20px; }
.se-view-masonry .se-card-img { aspect-ratio: 16/10; }
@media (max-width: 980px) { .se-view-masonry .se-cards { column-count: 2; } }
@media (max-width: 620px)  { .se-view-masonry .se-cards { column-count: 1; } }

/* Carousel — the scroll-snap row is defined in se-design; add momentum + hidden scrollbar
   so it reads as a swipeable carousel on touch, and give the cards a firm width on desktop. */
.se-view-carousel .se-cards { -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.se-view-carousel .se-cards::-webkit-scrollbar { height: 0; }
@media (max-width: 620px) { .se-view-carousel .se-cards { grid-auto-columns: 82%; } }

/* Excerpt / description line (list view). Two-line clamp so cards stay even. */
.se-card-desc {
  font-size: 14px; line-height: 1.5; color: #615c53; margin-top: 4px;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}

/* Availability pill — sits over the image top-right (or inline if no image). */
.se-card-img { position: relative; }
.se-avail-pill {
  position: absolute; top: 12px; right: 12px;
  display: inline-block; padding: 4px 10px; border-radius: 999px;
  font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase;
  box-shadow: 0 1px 3px rgba(51,49,46,.2);
}
.se-card-body .se-avail-pill { position: static; margin-top: 6px; }
.se-avail-low  { background: #fbeee0; color: #a2551d; }
.se-avail-full { background: #f6dcd7; color: #9a3b28; }

/* Month divider ("AUGUST 2026") — spans the full row in the single-column list view. */
.se-month-divider {
  grid-column: 1 / -1; display: flex; align-items: center; gap: 18px;
  margin: 22px 0 4px; color: #615c53;
  font-size: 13px; font-weight: 800; letter-spacing: .12em;
}
.se-month-divider::before, .se-month-divider::after {
  content: ""; flex: 1; height: 1px; background: #e3e0d8;
}
.se-month-divider:first-child { margin-top: 0; }
