.latest-event {
  --ticket-background: var(--base, #f7f1df);
  --ticket-yellow: var(--yellow, #edbf48);
  --ticket-brown: #6B4B3A;
  --ticket-ink: #172747;
  --ticket-teal: #4B9A9A;
  --ticket-red: #df0731;
  --ticket-light: #fff8eb;
  --ticket-divider: color-mix(in srgb, var(--ticket-brown) 20%, transparent);
  --ticket-shadow: 4px 4px 0 var(--ticket-ink);
  --ticket-button-shadow: 0 4px 0 var(--ticket-ink), 0 9px 12px color-mix(in srgb, var(--ticket-ink) 20%, transparent);
  box-sizing: border-box; display: grid; grid-template-columns: 52% minmax(0, 1fr);
  max-width: 1120px; width: 100%; margin: 0 auto; min-height: 334px;
  border: 2px solid var(--ticket-ink); border-top: 8px solid var(--ticket-red);
  box-shadow: var(--ticket-shadow); background: var(--ticket-background); color: var(--ticket-ink);
  font-family: var(--gp-font--oswald, 'Oswald', Arial, sans-serif); letter-spacing: 0;
}
.latest-event *, .latest-event *::before, .latest-event *::after { box-sizing: border-box; }
.latest-event .latest-event-details { padding: 36px 30px 38px; display: flex; flex-direction: column; min-width: 0; border-right: 2px dashed var(--ticket-divider); }
.latest-event .latest-event-admission { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; font-size: 12px; line-height: 142%; font-weight: 600; color: var(--ticket-brown); }
.latest-event .latest-event-badge { background: var(--ticket-ink); color: var(--ticket-yellow); padding: 0 8px; border-radius: 2px; letter-spacing: 1.69px; }
.latest-event .latest-event-title { font-family: var(--gp-font--alfa-slab-one, 'Alfa Slab One', Georgia, serif); font-size: 36px; font-weight: 400; line-height: 100%; margin: 10px 0 20px; text-transform: uppercase; color: var(--ticket-ink); overflow-wrap: anywhere; }
.latest-event .latest-event-meta { display: flex; align-items: flex-start; gap: 22px; flex-wrap: wrap; font-size: 14px; line-height: 1.42; }
.latest-event .latest-event-meta-item { display: flex; gap: 6px; }
.latest-event .latest-event-icon { color: var(--ticket-brown); flex-shrink: 0; }
.latest-event .latest-event-address { display: block; font-size: 13px; }
.latest-event .latest-event-footer { margin-top: auto; padding-top: 64px; }
.latest-event .latest-event-pills { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 24px; }
.latest-event .latest-event-pill { border: 1px solid var(--ticket-ink); border-radius: 2px; padding: 0 10px; font-size: 14px; font-weight: 600; line-height: 142%; text-transform: uppercase; }
.latest-event .latest-event-link { color: var(--ticket-teal); text-decoration: none; text-transform: uppercase; font-size: 12px; font-weight: 600; line-height: 142%; letter-spacing: 1.69px; }
.latest-event .latest-event-link:hover { text-decoration: underline; }
.latest-event .latest-event-purchase { padding: 58px 30px 40px; text-align: center; min-width: 0; }
.latest-event .latest-event-price { font-family: var(--gp-font--alfa-slab-one, 'Alfa Slab One', Georgia, serif); font-size: 36px; line-height: 100%; font-weight: 400; }
.latest-event .latest-event-price ins { text-decoration: none; }
.latest-event .latest-event-price del { opacity: .55; font-size: 22px; }
.latest-event .latest-event-per-ticket { display: block; margin-top: 5px; color: var(--ticket-brown); font-size: 12px; font-weight: 600; line-height: 142%; letter-spacing: 1.69px; text-transform: uppercase; }
.latest-event .latest-event-cart { margin-top: 16px; }
.latest-event form.cart { margin: 0; display: flex; flex-direction: column; align-items: center; gap: 16px; }
.latest-event .quantity { float: none; margin: 0; }
.latest-event .latest-event-stepper { display: flex; align-items: center; justify-content: center; gap: 10px; }
.latest-event .latest-event-step-button { width: 34px; height: 34px; padding: 0; border: 2px solid var(--ticket-ink); border-radius: 1px; background: transparent; color: var(--ticket-ink); font-family: inherit; font-size: 20px; cursor: pointer; }
.latest-event .latest-event-step-button:disabled { opacity: .4; cursor: not-allowed; }
.latest-event .latest-event-stepper input.qty { width: 32px; height: 34px; min-height: 0; padding: 0; border: 0; background: transparent; color: var(--ticket-ink); text-align: center; font: 600 20px var(--gp-font--oswald, 'Oswald', Arial, sans-serif); appearance: textfield; }
.latest-event input.qty::-webkit-inner-spin-button, .latest-event input.qty::-webkit-outer-spin-button { appearance: none; margin: 0; }
.latest-event .latest-event-total { display: block; font-size: 14px; font-weight: 600; margin: 0; color: var(--ticket-brown); }
.latest-event .single_add_to_cart_button, .latest-event .latest-event-cart-button { position: relative; display: inline-flex; align-items: center; justify-content: center; float: none; width: auto; height: auto; min-height: 48px; padding: 14px 28px; border: 2px solid var(--ticket-red); border-radius: 7px; background: var(--ticket-red); color: var(--ticket-light); box-shadow: var(--ticket-button-shadow); font: 600 12px/142% var(--gp-font--oswald, 'Oswald', Arial, sans-serif); letter-spacing: 1.69px; text-transform: uppercase; cursor: pointer; text-decoration: none; white-space: normal; }
.latest-event .single_add_to_cart_button::after, .latest-event .latest-event-cart-button::after { content: ''; position: absolute; inset: 3px; border: 1px solid var(--ticket-light); border-radius: 3px; pointer-events: none; }
.latest-event .single_add_to_cart_button:hover, .latest-event .latest-event-cart-button:hover { filter: brightness(.94); }
.latest-event .single_add_to_cart_button:disabled, .latest-event .single_add_to_cart_button.disabled { opacity: .5; cursor: not-allowed; }
.latest-event .variations_form, .latest-event .grouped_form { display: block; }
.latest-event .woocommerce-variation-add-to-cart { display: flex; flex-direction: column; align-items: center; gap: 16px; }
.latest-event table { width: 100%; margin-bottom: 16px; }
.latest-event select { width: 100%; max-width: 100%; background: var(--ticket-background); color: var(--ticket-ink); border: 1px solid var(--ticket-ink); padding: 8px; }
.latest-event .stock { color: var(--ticket-brown); }
.latest-event :is(a, button, input, select):focus-visible { outline: 2px solid var(--ticket-teal); outline-offset: 4px; }
@media (max-width: 700px) {
  .latest-event { grid-template-columns: minmax(0, 1fr); }
  .latest-event .latest-event-details { padding: 28px 22px; border-right: 0; border-bottom: 2px dashed var(--ticket-divider); }
  .latest-event .latest-event-title { font-size: 36px; }
  .latest-event .latest-event-footer { padding-top: 36px; }
  .latest-event .latest-event-purchase { padding: 32px 22px; }
}
