.rseventbooking { margin-block: 1.5rem; padding: clamp(1rem, 2vw, 1.5rem); border: 1px solid color-mix(in srgb, var(--color-text) 18%, transparent); border-radius: .5rem; background: var(--color-surface); }
.rseventbooking > .rseventbooking__title { margin-top: 0; padding-top: 0; font-size: 1.4rem; }
.rseventbooking__prices { display: flex; flex-wrap: wrap; gap: 1.5rem 2rem; margin: 1rem 0 0; }
.rseventbooking__price { display: flex; flex-direction: column; flex: 1 1 12rem; min-width: 0; }
.rseventbooking__prices dt { font-size: .95rem; }
.rseventbooking__prices dd { margin: .4rem 0 0; font-size: 1.4rem; font-weight: 600; }
.rseventbooking__prices .rseventbooking__note { margin-top: .5rem; font-size: .95rem; font-weight: 400; line-height: 1.6; color: var(--color-text-soft); }
.rseventbooking__prices .rseventbooking__action { margin-top: auto; padding-top: 1rem; font-size: 1rem; font-weight: 400; }
.rseventbooking__button { width: 100%; min-height: 2.75rem; padding: .65rem 1rem; border: 1px solid color-mix(in srgb, var(--color-heading) 80%, var(--color-accent)); border-radius: .375rem; color: var(--color-surface); background: var(--color-heading); font: inherit; line-height: 1.5; cursor: pointer; }
.rseventbooking__button:hover { background: color-mix(in srgb, var(--color-heading) 88%, var(--color-accent)); }
.rseventbooking__button:focus-visible { outline: 2px solid var(--color-text); outline-offset: 4px; }
