.live-event {
  display: grid;
  grid-template-columns: minmax(190px, .52fr) 1.48fr;
  min-height: 250px;
  background: #fff;
  border: 1px solid #d2cfc8;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

.event-visual {
  min-height: 250px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: linear-gradient(145deg, #111 0 62%, #cb101b 62%);
  text-transform: uppercase;
}

.event-month { font-size: 17px; font-weight: 900; letter-spacing: .18em; }
.event-visual strong { font-size: 78px; line-height: .9; letter-spacing: -.08em; }
.event-visual small { margin-top: 17px; padding: 0 16px; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-align: center; }
.live-event-copy { display: flex; flex-direction: column; justify-content: center; padding: 28px 34px; }
.live-event h3 { margin: 10px 0; font-size: clamp(32px, 3.4vw, 46px); line-height: .94; letter-spacing: -.04em; text-transform: uppercase; }
.live-event p { margin: 3px 0; color: #555; }
.event-city { display: flex; align-items: center; gap: 9px; color: #111 !important; font-size: 16px; font-weight: 900; text-transform: uppercase; }
.event-city span { padding: 4px 7px; color: #fff; background: #cb101b; font-size: 11px; letter-spacing: .1em; }
.event-meta { display: flex; flex-wrap: wrap; gap: 12px; font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.event-meta span { padding-left: 8px; border-left: 3px solid #cb101b; }
.event-price { color: #111 !important; font-size: 20px !important; font-weight: 900; }
.live-event .actions { margin-top: 14px; }
.dark-link { color: #111; border-color: #999; }

@media (max-width: 860px) {
  .live-event { grid-template-columns: 1fr; }
  .live-event-copy { padding: 25px 22px; }
  .event-visual { min-height: 165px; }
  .event-visual strong { font-size: 62px; }
  .event-visual small { margin-top: 12px; }
}
