/* OM Events Calendar — hero (archive + category archives) + single-event Related Events cards. v1.0.12
   Hand-coded because The Events Calendar archives are plugin-rendered, not Elementor pages.
   Hero typography mirrors the Auditions page hero (the reference Tracy supplied). */

/* ============================ HERO (archive + category) ============================ */
.om-ev-hero{
  /* Full-width block in normal flow — do NOT use left:50%/100vw breakout (shifts the hero mid-page). */
  /* Stage-hero pattern: crumbs top, title/lede ~50px from bottom (matches .om-stage-hero). */
  position:relative; left:auto; right:auto; width:100%; max-width:none;
  margin:0; box-sizing:border-box; padding:40px 24px 50px;
  min-height:398px;
  display:flex; flex-direction:column;
  background-color:#0c0a09;
  background-image:
    radial-gradient(55% 70% at 80% 30%, rgba(160,30,30,.32) 0%, transparent 65%),
    radial-gradient(50% 65% at 12% 75%, rgba(122,31,37,.42) 0%, transparent 70%),
    radial-gradient(60% 50% at 50% 100%, rgba(214,170,90,.10) 0%, transparent 70%),
    linear-gradient(150deg, #2a1517 0%, #160e0e 48%, #0c0a09 100%);
}
.om-ev-hero__inner{
  max-width:1320px; margin:0 auto; width:100%;
  flex:1 1 auto; display:flex; flex-direction:column; justify-content:space-between;
}
.om-ev-hero__crumb{
  font-family:ui-monospace,"SF Mono",Menlo,monospace; font-size:11px; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase; color:#D6BB7E; line-height:1.6; margin:0;
}
.om-ev-hero__crumb a{ color:#D6BB7E; opacity:.85; text-decoration:none; transition:opacity .15s, color .15s; }
.om-ev-hero__crumb a:hover{ opacity:1; color:#E8D7A9; }
.om-ev-hero__crumb .here{ color:#fff; }
.om-ev-hero__sep{ color:rgba(255,255,255,.45); margin:0 8px; }
.om-ev-hero__title{
  font-family:"proxima-nova",Inter,system-ui,sans-serif; font-weight:700;
  font-size:80px !important; line-height:.98; letter-spacing:-1.6px; color:#fff; margin:0 0 12px;
}
.om-ev-hero__tagline{
  font-family:"kepler-std","Kepler Std","Cormorant Garamond",Georgia,serif; font-style:italic; font-weight:400;
  font-size:30px; line-height:1.1; letter-spacing:-.6px; color:#D6BB7E; margin:0 0 20px;
}
.om-ev-hero__lede{
  font-family:"proxima-nova",Inter,system-ui,sans-serif; font-size:17px; font-weight:400; line-height:1.7;
  color:rgba(255,255,255,.78); max-width:680px; margin:0;
}
@media (max-width:1024px){ .om-ev-hero__title{ font-size:60px !important; } }
@media (max-width:767px){
  .om-ev-hero{ padding:40px 20px 50px; min-height:0; }
  .om-ev-hero__title{ font-size:42px !important; letter-spacing:-1px; }
  .om-ev-hero__tagline{ font-size:24px; }
  .om-ev-hero__lede{ font-size:16px; }
}
/* Hide TEC's default archive/category title + breadcrumb — our hero supplies the H1 + breadcrumb (no duplicate). */
body.post-type-archive-tribe_events .tribe-events-header__content-title,
body.post-type-archive-tribe_events .tribe-events-header__title,
body.post-type-archive-tribe_events .tribe-events-header__breadcrumbs,
body.tax-tribe_events_cat .tribe-events-header__content-title,
body.tax-tribe_events_cat .tribe-events-header__title,
body.tax-tribe_events_cat .tribe-events-header__breadcrumbs{ display:none !important; }
/* Calendar container under hero: no side gutters; top tightened (was 36px, -30px). */
body.post-type-archive-tribe_events .tribe-events-l-container,
body.tax-tribe_events_cat .tribe-events-l-container{
  padding-top:6px !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

/* ===================== EVENTS BAR (search + view selector) ===================== */
/* Soft ends + faint cream-family border (deeper than page canvas, same neutral family). */
body.post-type-archive-tribe_events .tribe-events-c-events-bar--border,
body.tax-tribe_events_cat .tribe-events-c-events-bar--border {
  border-radius: 8px;
  border: 1px solid #E0D6C6;
  overflow: hidden;
}
/* Input keeps its own background — round the left end to match the bar / Find button. */
body.post-type-archive-tribe_events .tribe-events-c-search__input,
body.tax-tribe_events_cat .tribe-events-c-search__input,
body.post-type-archive-tribe_events .tribe-events-c-search__input-control--keyword,
body.tax-tribe_events_cat .tribe-events-c-search__input-control--keyword {
  border-top-left-radius: 8px !important;
  border-bottom-left-radius: 8px !important;
}

/* ===================== SINGLE EVENT — Related Events cards ===================== */
body.single-tribe_events .tribe-events-related-events-title{
  font-family:"proxima-nova",Inter,system-ui,sans-serif; font-weight:700; font-size:30px;
  letter-spacing:-.01em; color:#14110F; margin:0 0 24px;
}
body.single-tribe_events ul.tribe-related-events{
  display:grid !important; grid-template-columns:repeat(3,1fr); gap:24px;
  list-style:none !important; margin:0 0 8px !important; padding:0 !important;
}
@media (max-width:880px){ body.single-tribe_events ul.tribe-related-events{ grid-template-columns:1fr; } }
body.single-tribe_events ul.tribe-related-events li{
  float:none !important; width:auto !important; margin:0 !important; padding:0 !important; list-style:none !important;
  background:#fff; border:1px solid rgba(20,17,15,.10); border-radius:10px; overflow:hidden;
  box-shadow:0 1px 2px rgba(20,17,15,.05);
  display:flex; flex-direction:column;
  transition:border-color .2s, box-shadow .2s, transform .2s;
}
body.single-tribe_events ul.tribe-related-events li:hover{
  border-color:rgba(20,17,15,.18); box-shadow:0 22px 54px -38px rgba(20,17,15,.5); transform:translateY(-2px);
}
/* Thumbnail: show the FULL cover at its natural aspect (no crop).
   TEC renders the img position:absolute + transform inside an overflow:hidden <a> (a "cover" crop).
   We neutralise that — static flow, no transform, width:100%/height:auto — so the whole cover shows. */
body.single-tribe_events .tribe-related-events-thumbnail,
body.single-tribe_events .tribe-related-events-thumbnail a{
  display:block !important; position:static !important; overflow:visible !important;
  width:100% !important; height:auto !important; max-width:none !important;
  margin:0 !important; padding:0 !important; transform:none !important; background:#f4f2ef; line-height:0;
}
body.single-tribe_events .tribe-related-events-thumbnail img{
  position:static !important; transform:none !important;
  inset:auto !important; left:auto !important; top:auto !important; right:auto !important; bottom:auto !important;
  width:100% !important; height:auto !important; max-width:100% !important; min-height:0 !important;
  display:block !important; object-fit:contain !important;
}
body.single-tribe_events .tribe-related-event-info{
  padding:16px 18px 18px; display:flex; flex-direction:column; gap:5px; flex:1 1 auto;
}
body.single-tribe_events .tribe-related-events-title{ margin:0; font-size:17px; line-height:1.22; }
body.single-tribe_events .tribe-related-events-title a{
  font-family:"proxima-nova",Inter,system-ui,sans-serif; font-weight:700; color:#7A1F25; text-decoration:none;
}
body.single-tribe_events .tribe-related-events-title a:hover{ text-decoration:underline; }
body.single-tribe_events .tribe-related-event-info .tribe-event-date-start,
body.single-tribe_events .tribe-related-event-info .tribe-event-time,
body.single-tribe_events .tribe-related-event-info .timezone{
  font-family:"proxima-nova",Inter,system-ui,sans-serif; font-size:13px; color:#6E645B;
}
body.single-tribe_events .tribe-events-calendar-series-archive__container--pill{ margin-top:4px; }

/* ===================== SINGLE EVENT — featured image ===================== */
/* Full poster at native aspect. No 16:9 crop. */
body.single-tribe_events .tribe-events-event-image{
  position:relative !important;
  width:100% !important;
  height:auto !important;
  padding-top:0 !important;
  overflow:hidden !important;
  border-radius:12px !important;
  line-height:0 !important;
}
body.single-tribe_events .tribe-events-event-image img{
  position:static !important;
  inset:auto !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  border-radius:12px !important;
  margin:0 !important;
  display:block !important;
}

/* ===================== SINGLE EVENT — meta + map ===================== */
/* TEC puts Details/Organizer and Venue/Map in two flex children that shrink
   to ~384px. Stretch the article and merge into one content-width card. */
body.single-tribe_events .type-tribe_events{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
}
body.single-tribe_events .tribe-events-event-meta.primary,
body.single-tribe_events .tribe-events-event-meta.secondary{
  flex:0 0 auto !important;
  align-self:stretch !important;
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  align-items:stretch !important;
  gap:28px !important;
}
body.single-tribe_events .tribe-events-meta-group{
  float:none !important;
  width:auto !important;
  max-width:none !important;
  flex:1 1 160px !important;
  min-width:140px !important;
  margin:0 !important;
  padding:0 !important;
}
body.single-tribe_events .tribe-events-venue-map{
  flex:1 1 280px !important;
  width:auto !important;
  min-width:240px !important;
  min-height:220px !important;
  margin:0 !important;
  order:unset !important;
  border-radius:8px !important;
  overflow:hidden !important;
  align-self:stretch !important;
}
body.single-tribe_events .tribe-events-venue-map iframe{
  width:100% !important;
  height:100% !important;
  min-height:220px !important;
  display:block !important;
  border:0 !important;
  filter:none !important;
}
@media (max-width:767px){
  body.single-tribe_events .tribe-events-event-meta.primary,
  body.single-tribe_events .tribe-events-event-meta.secondary{
    flex-direction:column !important;
  }
  body.single-tribe_events .tribe-events-venue-map{
    min-height:200px !important;
    width:100% !important;
  }
}


/* Pastel #67 — hide keyword search until category/filter UI ships.
   Collapse the hollow full-width bar: List sits beside the date top bar. */
body.post-type-archive-tribe_events .tribe-events-c-events-bar__search-button,
body.tax-tribe_events_cat .tribe-events-c-events-bar__search-button,
body.post-type-archive-tribe_events .tribe-events-c-events-bar__search-container,
body.tax-tribe_events_cat .tribe-events-c-events-bar__search-container {
  display: none !important;
}
body.post-type-archive-tribe_events .tribe-events-header.tribe-events-header--has-event-search,
body.tax-tribe_events_cat .tribe-events-header.tribe-events-header--has-event-search {
  flex-wrap: nowrap;
  align-items: center;
  gap: 12px;
  padding-top: 16px;
}
body.post-type-archive-tribe_events .tribe-events-c-top-bar,
body.tax-tribe_events_cat .tribe-events-c-top-bar {
  flex: 1 1 auto !important;
  order: 1;
  min-width: 0;
  width: auto !important;
  max-width: none !important;
}
body.post-type-archive-tribe_events .tribe-events-c-events-bar,
body.tax-tribe_events_cat .tribe-events-c-events-bar {
  flex: 0 0 auto !important;
  order: 2;
  width: auto !important;
  max-width: max-content !important;
  margin: 0 !important;
}
body.post-type-archive-tribe_events .tribe-events-c-events-bar__views,
body.tax-tribe_events_cat .tribe-events-c-events-bar__views {
  flex: 0 0 auto !important;
}
@media (max-width: 767px) {
  body.post-type-archive-tribe_events .tribe-events-header.tribe-events-header--has-event-search,
  body.tax-tribe_events_cat .tribe-events-header.tribe-events-header--has-event-search {
    flex-wrap: wrap;
  }
  body.post-type-archive-tribe_events .tribe-events-c-events-bar,
  body.tax-tribe_events_cat .tribe-events-c-events-bar {
    order: 1;
  }
  body.post-type-archive-tribe_events .tribe-events-c-top-bar,
  body.tax-tribe_events_cat .tribe-events-c-top-bar {
    flex: 1 1 100% !important;
    order: 2;
  }
}
