/* NÄHER v75: focused next events and compact historical archive. */
.na-current-grid{margin-bottom:34px}
.na-featured-event{border:2px solid #b43f76!important;box-shadow:0 14px 36px rgba(116,31,80,.12)!important}
.na-event-tag{align-self:flex-start;margin:18px 20px 0;padding:8px 14px;border-radius:999px;background:#7b2151;color:#fff;letter-spacing:.015em;font-weight:750;font-size:12px;line-height:1.35}
.na-event-tag-next{background:#1c1832}
.na-past-head{max-width:1120px;margin:40px auto 20px;padding-top:23px;border-top:1px solid #d9d2da}
.na-past-head h3{margin:0 0 5px;color:#21172f;font-size:23px}
.na-past-head p{margin:0;color:#6c6470;font-size:14px}
.na-past-grid{opacity:.88}
.na-past-note{padding:0 22px;color:#756979;font-size:12px;font-weight:650}
.na-next-event{outline:2px solid rgba(180,63,118,.45);background:#fff6fa!important}
.na-past-heading{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 0 4px;margin-top:12px;border-top:1px solid rgba(35,22,50,.14)}
.na-past-heading b{font-size:18px;color:#21172f}
.na-past-heading span{font-size:12px;color:#746978}
@media(max-width:680px){.na-event-tag{margin:14px 14px 0;font-size:11px}.na-past-heading{flex-wrap:wrap}.na-past-head{margin-top:28px}}

/* NÄHER v78 – event presentation refinements. Only the cards and homepage mini cards. */
/* Month/year no longer get squeezed into one 46px-wide line. */
.polish-v44 .event-page-upcoming .home-upcoming-card-top{
  grid-template-columns:60px minmax(0,1fr);
  gap:12px 15px;
}
.polish-v44 .event-page-upcoming .home-upcoming-date{
  width:58px;
  height:78px;
  flex:0 0 auto;
  border-radius:15px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  box-sizing:border-box;
}
.polish-v44 .event-page-upcoming .home-upcoming-date b{
  font-size:28px;
  line-height:1;
  margin:0;
}
.polish-v44 .event-page-upcoming .home-upcoming-date small{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:2px;
  font-size:8px;
  line-height:1;
  letter-spacing:.035em;
  opacity:.8;
}
.polish-v44 .event-page-upcoming .home-upcoming-date small span{
  display:block;
  font:inherit;
  line-height:1;
  letter-spacing:.035em;
  opacity:1;
}
/* Dates and booking statuses on the home page get separate, aligned rows. */
.polish-v44 .home-event-quick-copy .na-home-details{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:5px;
  margin-top:9px;
  line-height:1.4;
}
.polish-v44 .home-event-quick-copy .na-home-details > span{
  min-width:0;
  max-width:100%;
  overflow-wrap:normal;
}
.polish-v44 .home-event-quick-copy .na-home-details .na-home-status{
  display:block;
  font-size:11px;
  line-height:1.35;
  font-weight:750;
  color:#744667;
  white-space:normal;
  overflow-wrap:break-word;
}
.polish-v44 .home-event-quick-copy .na-home-details .na-home-status::before{
  content:none;
  display:none;
}
.polish-v44 .home-event-quick{
  min-height:124px;
}
/* Previous CSS mistakenly disabled all booking-soon elements, even active anchors. */
.polish-v44 .event-page-upcoming .home-upcoming-card a.compact-booking-button.booking-soon{
  pointer-events:auto!important;
  cursor:pointer!important;
  background:#21172f!important;
  border-color:#21172f!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(33,23,47,.15)!important;
}
.polish-v44 .event-page-upcoming .home-upcoming-card a.compact-booking-button.booking-soon:hover{
  transform:translateY(-2px)!important;
  background:#403052!important;
  color:#fff!important;
}
@media(max-width:700px){
 .polish-v44 .event-page-upcoming .home-upcoming-card-top{grid-template-columns:58px minmax(0,1fr);gap:11px}
 .polish-v44 .home-event-quick{min-height:116px}
 .polish-v44 .home-event-quick-copy .na-home-details{gap:4px}
 .polish-v44 .home-event-quick-copy .na-home-details .na-home-status{font-size:11px}
}
