.em-single-event{background:#ffffff;color:#24282d;font-family:inherit;}
.em-single-event *,
.em-single-event *::before,
.em-single-event *::after{box-sizing:border-box;}
.em-single-event__wrap{width:min(1180px, calc(100% - 40px));margin:0 auto;padding:46px 0 76px;}
.em-single-event__intro{display:grid;justify-items:center;gap:18px;margin-bottom:34px;text-align:center;}
.em-single-event__eyebrow{width:fit-content;padding:8px 12px;border-radius:5px;background:#f5c84b;color:#111111;font-size:0.82rem;font-weight:900;line-height:1;text-transform:uppercase;}
.em-single-event__promoted-badge{display:inline-flex;align-items:center;gap:7px;width:fit-content;padding:8px 12px;border-radius:5px;background:#43a339;color:#ffffff;font-size:0.82rem;font-weight:900;line-height:1;text-transform:uppercase;}
.em-single-event__promoted-badge::before{content:"★";font-size:0.9em;}
.em-single-event__title{max-width:940px;margin:0;color:#111111;font-size:clamp(2.45rem, 5vw, 4.7rem);font-weight:950;line-height:1.03;letter-spacing:0;}
.em-single-event__artists{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;}
.em-single-event__artists a{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border:1px solid #d9e6ec;border-radius:999px;background:#f7fbfc;color:#2d7b8b;font-size:1.55rem;font-weight:800;line-height:1.2;text-decoration:none;}
.em-single-event__artists a:hover, .em-single-event__artists a:focus{border-color:#4d9aaa;color:#1e6573;text-decoration:none;}
.em-single-event__live-summary{display:grid;grid-template-columns:minmax(260px, 1fr);gap:14px;width:100%;margin:0;}
.em-single-event__live-summary.has-nearest{grid-template-columns:repeat(2, minmax(260px, 1fr));}
.em-single-event__quick-card{display:grid;gap:7px;min-height:128px;padding:20px;border:1px solid #dfe6ec;border-top:4px solid #4d9aaa;border-radius:8px;background:#ffffff;box-shadow:0 12px 36px rgba(17, 24, 39, 0.08);text-align:left;}
.em-single-event__quick-card[hidden]{display:none;}
.em-single-event__quick-card.is-loading .em-single-event__quick-date, .em-single-event__loading{color:#6b7280;}
.em-single-event__quick-card--nearest{border-top-color:#f5c84b;}
.em-single-event__quick-label{color:#68717d;font-size:1.52rem;font-weight:900;line-height:1.2;text-transform:uppercase;}
.em-single-event__quick-date{color:#111111;font-size:clamp(1.35rem, 1.8vw, 1.28rem);font-weight:900;line-height:1.35;}
.em-single-event__quick-location{color:#303640;font-size:1.35rem;line-height:1.34;}
.em-single-event__layout{display:grid;grid-template-columns:minmax(0, 1fr) 380px;gap:28px;align-items:start;}
.em-single-event__main, .em-single-event__side{display:grid;gap:24px;}
.em-single-event__poster-section, .em-single-event__section{border:1px solid #e5e7eb;border-radius:8px;background:#ffffff;box-shadow:0 10px 30px rgba(17, 24, 39, 0.08);}
.em-single-event__poster-section{overflow:hidden;padding:clamp(14px, 2vw, 20px);}
.em-single-event__poster-button{display:grid;place-items:center;width:100%;min-height:0;aspect-ratio:4 / 5;padding:0;border:0;border-radius:8px;background:#ffffff;cursor:zoom-in;overflow:hidden;}
.em-single-event__poster-button img{display:block;width:auto;max-width:100%;height:auto;max-height:100%;object-fit:contain;}
.em-single-event__placeholder{min-height:0;aspect-ratio:4 / 5;display:flex;align-items:center;justify-content:center;padding:32px;border-radius:8px;background:#111111;color:#ffffff;text-align:center;}
.em-single-event__placeholder span{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:1px solid rgba(255, 255, 255, 0.22);border-radius:999px;color:#f5c84b;font-size:0.9rem;font-weight:900;line-height:1.2;text-transform:uppercase;}
.em-single-event__section{padding:clamp(24px, 3vw, 36px);}
.em-single-event__section h2{margin:0 0 18px;color:#111111;font-size:clamp(1.35rem, 2vw, 1.8rem);font-weight:950;line-height:1.18;letter-spacing:0;}
.em-single-event__section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;}
.em-single-event__section-heading h2{margin:0;}
.em-single-event__content{color:#303640;font-size:clamp(1.66rem, 1.55vw, 1.32rem);line-height:1.74;}
.em-single-event__content p, .em-single-event__content li{margin-bottom:1.1em;}
.em-single-event__content > *:first-child{margin-top:0;}
.em-single-event__content > *:last-child{margin-bottom:0;}
.em-single-event__content a, .em-single-event__contacts a{color:#3f8796;font-weight:900;text-decoration:none;}
.em-single-event__content a:hover, .em-single-event__contacts a:hover{text-decoration:underline;}
.em-single-event__ticket, .em-single-event__contact-button, .em-single-event__promotion-link, .em-single-event__promotion .eadv-purchase-form button, .em-single-event__map-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 24px;border:0;border-radius:6px;background:#4d9aaa;color:#ffffff;font-size:1.5rem;font-weight:950;line-height:1;text-decoration:none;text-transform:uppercase;transition:background-color 160ms ease, transform 160ms ease;}
.em-single-event__map-toggle{min-height:42px;padding:12px 18px;background:#111111;white-space:nowrap;}
.em-single-event__dates .em-single-event__ticket{width:100%;margin-top:22px;}
.em-single-event__ticket:hover, .em-single-event__ticket:focus, .em-single-event__contact-button:hover, .em-single-event__contact-button:focus, .em-single-event__promotion-link:hover, .em-single-event__promotion-link:focus, .em-single-event__promotion .eadv-purchase-form button:hover, .em-single-event__promotion .eadv-purchase-form button:focus, .em-single-event__map-toggle:hover, .em-single-event__map-toggle:focus{background:#3f8796;color:#ffffff;text-decoration:none;transform:translateY(-1px);}
.em-single-event__promotion .eadv-purchase-form{max-width:none;margin:0;}
.em-single-event__promotion-status{margin:0 0 12px;color:#52616d;font-size:1.4rem;line-height:1.35;}
.em-single-event__promotion .eadv-purchase-form label{color:#303640;font-size:1.25rem;font-weight:800;}
.em-single-event__promotion .eadv-purchase-form select{width:100%;min-height:48px;padding:10px 12px;border:1px solid #d9e6ec;border-radius:6px;background:#ffffff;color:#111111;font:inherit;}
.em-single-event__date-list{display:grid;gap:14px;margin:0;padding:0;list-style:none;}
.em-single-event__date-item{display:grid;gap:9px;padding:18px 0 18px 20px;border-left:4px solid #f5c84b;border-bottom:1px solid #eef0f2;}
.em-single-event__date-item.is-promoted{padding:18px 16px 18px 20px;border-left-color:#43a047;border-radius:8px;background:linear-gradient(90deg, rgba(67, 160, 71, 0.12), rgba(67, 160, 71, 0.03));}
.em-single-event__date-item:last-child{border-bottom:0;}
.em-single-event__date-item.is-empty{border-left-color:#d1d5db;color:#6b7280;font-weight:800;}
.em-single-event__date-text{color:#111111;font-size:clamp(1.45rem, 1.25vw, 1.18rem);font-weight:950;line-height:1.35;}
.em-single-event__location-text{color:#4b5563;font-size:clamp(1.45rem, 1.2vw, 1.12rem);line-height:1.5;}
.em-single-event__promoted-location{justify-self:start;min-height:28px;padding:6px 10px;border-radius:999px;background:#43a047;color:#ffffff;font-size:0.95rem;font-weight:950;line-height:1.1;}
.em-single-event__map-link{justify-self:start;width:fit-content;min-height:34px;padding:8px 10px;border:1px solid #c9e2e8;border-radius:6px;background:#f5fbfc;color:#2b6f7c;cursor:pointer;font-size:1rem;font-weight:900;line-height:1.2;}
.em-single-event__map-link:hover, .em-single-event__map-link:focus{border-color:#4d9aaa;background:#eef8fa;}
.em-single-event__map-panel{margin-top:22px;}
.em-single-event__map-panel[hidden]{display:none;}
.em-single-event__map{width:100%;height:420px;min-height:360px;border:1px solid #d9e6ec;border-radius:8px;overflow:hidden;background:#eef2f4;}
.em-single-event__map-unavailable{display:grid;place-items:center;width:100%;min-height:360px;padding:28px;color:#4b5563;font-size:1.05rem;font-weight:800;text-align:center;}
.em-single-event__distance{width:fit-content;margin-top:6px;padding:7px 10px;border-radius:5px;background:#eef8fa;color:#2b6f7c;font-size:1rem;font-weight:900;}
.em-single-event__privacy-note{margin:0 0 16px;color:#4b5563;font-size:1rem;line-height:1.55;}
.em-single-event__contact-results{display:grid;gap:14px;margin-top:18px;}
.em-single-event__contact-results p{display:grid;gap:5px;margin:0;}
.em-single-event__contact-results span{color:#68717d;font-size:0.82rem;font-weight:900;text-transform:uppercase;}
.em-single-event__lightbox{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:28px;background:rgba(8, 12, 18, 0.86);}
.em-single-event__lightbox[hidden]{display:none;}
.em-single-event__lightbox img{display:block;max-width:min(1100px, 94vw);max-height:88vh;border-radius:8px;background:#ffffff;box-shadow:0 28px 80px rgba(0, 0, 0, 0.42);object-fit:contain;}
.em-single-event__lightbox-close{position:fixed;top:18px;right:18px;display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:999px;background:#ffffff;color:#111111;cursor:pointer;font-size:34px;line-height:1;}
body.em-lightbox-open{overflow:hidden;}
@media(max-width:980px){
.em-single-event__wrap{width:min(100% - 28px, 760px);padding:34px 0 58px;}
.em-single-event__live-summary, .em-single-event__live-summary.has-nearest, .em-single-event__layout{grid-template-columns:1fr;}
.em-single-event__poster-button, .em-single-event__placeholder{aspect-ratio:16 / 10;}
}
@media(max-width:560px){
.em-single-event__wrap {
width: calc(100% - 24px);
padding-top: 24px;
}
.em-single-event__intro, .em-single-event__layout, .em-single-event__main, .em-single-event__side {
gap: 18px;
}
.em-single-event__title {
font-size: 2.15rem;
}
.em-single-event__section {
padding: 20px;
}
.em-single-event__section-heading {
align-items: stretch;
flex-direction: column;
}
.em-single-event__poster-section {
padding: 10px;
}
.em-single-event__poster-button, .em-single-event__placeholder {
aspect-ratio: 16 / 10;
}
.em-single-event__ticket, .em-single-event__contact-button, .em-single-event__promotion .eadv-purchase-form button, .em-single-event__map-toggle {
width: 100%;
}
.em-single-event__map {
min-height: 300px;
}
.em-single-event__lightbox {
padding: 14px;
}
}