/* Venue by Built 3.0: events page, event cards and sign-up window */
.sa-ev, .sa-ev-card, .sa-ev-dlg { --ev-main: var(--c-main, var(--sa-primary, #0A1F44)); --ev-act: var(--c-action, var(--sa-accent, #FF6B2C)); --ev-act-ink: var(--c-action-ink, #fff); --ev-hi: var(--c-hi, var(--sa-lime, #A3E635)); --ev-hi-ink: var(--c-hi-ink, #111827); --ev-line: var(--line, #E5E7EB); --ev-muted: var(--muted, #64748B); --ev-r: var(--r, 18px); --ev-fd: var(--fd, var(--sa-font-h, "Plus Jakarta Sans")); }
.sa-ev { max-width: none; }
.sa-ev h2, .sa-ev h3, .sa-ev-card h3 { font-family: var(--ev-fd); font-style: var(--ds, normal); font-weight: var(--dw, 800); text-transform: uppercase; margin: 0; letter-spacing: .005em; }
.sa-ev-note { padding: 12px 16px; border-radius: 12px; background: #FEF3C7; color: #92400E; font-weight: 600; margin-bottom: 18px; }
.sa-ev-note.is-ok { background: #DCFCE7; color: #166534; }
.sa-ev-empty { padding: 40px; text-align: center; border: 1px dashed var(--ev-line); border-radius: var(--ev-r); background: #fff; }
.sa-ev-feat { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); background: #fff; border: 1px solid var(--ev-line); border-radius: var(--ev-r); overflow: hidden; margin-bottom: 44px; }
.sa-ev-feat .sa-ev-photo { min-height: 320px; height: 100%; }
.sa-ev-feat-body { padding: clamp(22px, 3.5vw, 36px); display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.sa-ev-feat h2 { font-size: clamp(36px, 4.6vw, 64px); line-height: .92; }
.sa-ev-feat p { margin: 0; color: var(--ev-muted); font-size: 17px; }
.sa-ev-desc { color: #3D4452; font-size: 15px; }
.sa-ev-desc p { margin: 0 0 8px; }
.sa-ev-next { padding: 4px 12px; border-radius: 999px; background: var(--ev-act); color: var(--ev-act-ink); font-weight: 800; font-size: 13px; }
.sa-ev-facts { display: flex; gap: 22px; flex-wrap: wrap; margin: 4px 0 6px; }
.sa-ev-facts small { display: block; color: var(--ev-muted); font-weight: 700; font-size: 12.5px; }
.sa-ev-facts b { font-size: 16px; }
.sa-ev-head { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 20px; }
.sa-ev-head h2 { font-size: clamp(36px, 4.6vw, 64px); line-height: .9; }
.sa-ev-chips { display: flex; gap: 8px; flex-wrap: wrap; }
.sa-ev-chips button { padding: 9px 16px; border-radius: var(--rb, 999px); border: 2px solid var(--ev-line); background: #fff; font-weight: 800; font-size: 14px; font-family: inherit; cursor: pointer; color: inherit; }
.sa-ev-chips button.is-on { background: var(--ev-main); border-color: var(--ev-main); color: var(--c-main-ink, #fff); }
.sa-ev-grid, .sa-ev-grid.sa-s-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.sa-ev-card { position: relative; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--ev-line); border-radius: var(--ev-r); overflow: hidden; color: var(--ink, #0F172A); }
.sa-ev-card[hidden] { display: none; }
.sa-ev-photo { height: 160px; background-size: cover; background-position: center; }
.sa-ev-photo.is-empty { background-image: repeating-linear-gradient(115deg, rgba(255,255,255,.08) 0 2px, transparent 2px 26px), linear-gradient(150deg, color-mix(in srgb, var(--ev-main) 55%, #fff), var(--ev-main)); }
.sa-ev-card.is-c1 .sa-ev-photo.is-empty { background-image: repeating-linear-gradient(115deg, rgba(255,255,255,.1) 0 2px, transparent 2px 26px), linear-gradient(150deg, color-mix(in srgb, var(--ev-act) 55%, #fff), var(--ev-act)); }
.sa-ev-date { position: absolute; left: 14px; top: 14px; display: grid; place-items: center; width: 58px; height: 62px; border-radius: 12px; background: var(--ev-hi); color: var(--ev-hi-ink); line-height: 1; text-align: center; box-shadow: 0 10px 20px -10px rgba(0,0,0,.5); }
.sa-ev-date b { font: var(--ds, normal) var(--dw, 800) 28px/1 var(--ev-fd); display: block; }
.sa-ev-date small { font-weight: 800; font-size: 12px; text-transform: uppercase; }
.sa-ev-card.is-c1 .sa-ev-date { background: var(--ev-act); color: var(--ev-act-ink); }
.sa-ev-card.is-c2 .sa-ev-date { background: var(--ev-main); color: var(--c-main-ink, #fff); }
.sa-ev-body { padding: 16px 18px 18px; display: flex; flex-direction: column; gap: 5px; flex: 1; }
.sa-ev-meta { color: var(--ev-muted); font-weight: 700; font-size: 13px; }
.sa-ev-card h3 { font-size: 26px; line-height: 1; }
.sa-ev-body p { margin: 0; color: #3D4452; font-size: 15px; }
.sa-ev-when { color: var(--ev-muted); font-size: 14px; }
.sa-ev-foot { margin-top: auto; padding-top: 12px; display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
.sa-ev-price { font-weight: 800; color: var(--ev-main); }
.sa-ev-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 0 18px; border-radius: var(--rb, 999px); border: 0; background: var(--ev-main); color: var(--c-main-ink, #fff) !important; font-weight: 800; font-size: 14px; font-family: inherit; text-decoration: none; cursor: pointer; }
.sa-ev-btn.is-off { background: #E5E7EB; color: #6B7280 !important; cursor: default; }
.sa-ev-feat .sa-ev-btn { min-height: 50px; padding: 0 26px; font-size: 15px; }
[data-tpl="sporty"] .sa-ev-card h3 { font-size: 28px; }
[data-tpl="scoreboard"] .sa-ev-card h3 { font-size: 30px; }
[data-tpl="scoreboard"] .sa-ev-date { border-radius: 6px; }
.sa-ev-dlg { border: 0; border-radius: var(--ev-r); padding: 0; width: min(480px, calc(100vw - 24px)); box-shadow: 0 40px 80px -30px rgba(0,0,0,.55); }
.sa-ev-dlg::backdrop { background: rgba(10,15,30,.55); }
.sa-ev-x { position: absolute; right: 10px; top: 8px; margin: 0; }
.sa-ev-x button { width: 36px; height: 36px; border-radius: 50%; border: 0; background: #F1F3F6; font-size: 22px; cursor: pointer; }
.sa-ev-form { padding: 24px; display: flex; flex-direction: column; gap: 12px; }
.sa-ev-form h3 { font-size: 26px; line-height: 1.05; padding-right: 36px; font-family: var(--ev-fd); text-transform: uppercase; }
.sa-ev-sub { margin: -6px 0 4px; color: var(--ev-muted); }
.sa-ev-form label { display: flex; flex-direction: column; gap: 6px; font-weight: 700; font-size: 14px; }
.sa-ev-form input, .sa-ev-form textarea { width: 100%; min-height: 46px; border: 1.5px solid #E1E4EA; border-radius: 10px; padding: 8px 12px; font: inherit; font-weight: 500; }
.sa-ev-form [hidden] { display: none; }
.sa-ev-total { display: flex; justify-content: space-between; padding: 10px 0; border-top: 1px solid #EEF0F4; font-size: 16px; }
.sa-ev-msg { margin: 0; font-weight: 600; min-height: 1em; }
.sa-ev-msg.is-err { color: #B42318; }
.sa-ev-msg.is-ok { color: #166534; }
@media (max-width: 900px) {
	.sa-ev-feat { grid-template-columns: 1fr; }
	.sa-ev-feat .sa-ev-photo { min-height: 200px; }
	.sa-ev-grid, .sa-ev-grid.sa-s-grid { grid-template-columns: 1fr; }
}
[data-tpl="sporty"] .sa-ev-feat { background: var(--c-main); color: var(--c-main-ink); border: 0; }
[data-tpl="sporty"] .sa-ev-feat p, [data-tpl="sporty"] .sa-ev-feat .sa-ev-desc, [data-tpl="sporty"] .sa-ev-feat .sa-ev-facts small { color: inherit; opacity: .8; }
[data-tpl="sporty"] .sa-ev-feat .sa-ev-btn { background: var(--ev-hi); color: var(--ev-hi-ink) !important; }
[data-tpl="sporty"] .sa-ev-feat .sa-ev-facts span { padding: 8px 12px; border-radius: 12px; background: rgba(255,255,255,.08); }
[data-tpl="sporty"] .sa-ev-feat h2, [data-tpl="sporty"] .sa-ev-feat b { color: inherit; }
.sa-ev h2, .sa-ev h3 { color: inherit; }
