/* THE STAGE Events 1.6 — immersive editorial calendar for Sprout/Gutenberg */
.stage-events-ui{
  --stage-heading-font:inherit;
  --stage-heading-weight:800;
  --stage-body-font:inherit;
  --stage-body-weight:400;
  --stage-accent:#c8241e;
  --stage-ink:#171717;
  --stage-paper:#fff;
  --stage-night:#171215;
  --stage-line:rgba(20,20,20,.16);
  --stage-muted:rgba(20,20,20,.58);
  font-family:var(--stage-body-font)!important;
  font-weight:var(--stage-body-weight);
}
.stage-events-ui *, .stage-events-ui *::before, .stage-events-ui *::after{box-sizing:border-box}
.stage-events-ui h1,.stage-events-ui h2,.stage-events-ui h3,.stage-events-ui h4,.stage-events-ui .stage-events-title{
  font-family:var(--stage-heading-font)!important;
  font-weight:var(--stage-heading-weight)!important;
}
.stage-events-ui button,.stage-events-ui input,.stage-events-ui a{font-family:inherit}
.stage-events-ui a{box-shadow:none}

/* CALENDAR */
.stage-events-wrap{width:100%;max-width:1220px;margin:0 auto;padding:18px 0 80px;color:var(--stage-ink)}
.stage-events-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:36px;padding:58px 48px 52px;background:var(--stage-night);color:#fff;overflow:hidden;margin-bottom:0}
.stage-events-hero::before{content:"";position:absolute;inset:0 auto 0 0;width:9px;background:var(--stage-accent)}
.stage-events-hero::after{content:"LIVE";position:absolute;right:-.03em;top:-.18em;font-family:var(--stage-heading-font)!important;font-weight:var(--stage-heading-weight)!important;font-size:clamp(120px,20vw,270px);line-height:1;letter-spacing:-.08em;color:rgba(255,255,255,.035);pointer-events:none}
.stage-events-eyebrow{display:block;position:relative;z-index:1;margin:0 0 15px;font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.62)}
.stage-events-title{position:relative;z-index:1;margin:0!important;font-size:clamp(72px,11vw,150px)!important;line-height:.72!important;letter-spacing:-.065em!important;text-transform:uppercase;color:#fff!important}
.stage-events-hero p{position:relative;z-index:1;max-width:610px;margin:28px 0 0!important;font-size:clamp(16px,1.7vw,21px)!important;line-height:1.45!important;color:rgba(255,255,255,.72)!important}
.stage-events-count{position:relative;z-index:1;display:flex;align-items:flex-end;gap:11px;padding-bottom:4px;color:#fff}
.stage-events-count strong{font-family:var(--stage-heading-font)!important;font-weight:var(--stage-heading-weight)!important;font-size:clamp(64px,8vw,104px);line-height:.72;letter-spacing:-.055em}
.stage-events-count span{font-size:9px;line-height:1.25;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:rgba(255,255,255,.55)}

.stage-events-toolbar{display:flex;align-items:center;gap:18px;padding:20px 28px 12px;background:#f5f2f1;border-bottom:1px solid var(--stage-line)}
.stage-events-search{flex:1;position:relative;margin:0}.stage-events-search::before{content:"⌕";position:absolute;left:0;top:50%;transform:translateY(-50%);font-size:21px;opacity:.42}.stage-events-search input{width:100%;border:0!important;border-bottom:1px solid rgba(20,20,20,.18)!important;border-radius:0!important;background:transparent!important;color:var(--stage-ink)!important;padding:11px 0 11px 27px!important;font-size:14px!important;line-height:1.4!important;outline:none!important;box-shadow:none!important}.stage-events-search input:focus{border-bottom-color:var(--stage-accent)!important}
.stage-events-archive-link{font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;text-decoration:none!important;color:var(--stage-ink)!important;white-space:nowrap}
.stage-events-filterbar,.stage-events-months{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:8px 28px;background:#f5f2f1;margin:0}.stage-events-filterbar::-webkit-scrollbar,.stage-events-months::-webkit-scrollbar{display:none}.stage-events-months{padding-top:0;padding-bottom:23px}
.stage-events-filterbar button,.stage-events-months button{appearance:none;border:1px solid rgba(20,20,20,.16);border-radius:999px;background:transparent;color:var(--stage-ink);font-size:9px;font-weight:800;letter-spacing:.11em;line-height:1;text-transform:uppercase;padding:10px 14px;white-space:nowrap;cursor:pointer;transition:all .18s ease}.stage-events-filterbar button:hover,.stage-events-months button:hover{border-color:var(--stage-ink)}.stage-events-filterbar button.is-active,.stage-events-months button.is-active{background:var(--stage-accent);border-color:var(--stage-accent);color:#fff}

.stage-events-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:56px 0 18px;padding-bottom:11px;border-bottom:1px solid var(--stage-ink)}
.stage-events-section-head h3,.stage-events-section-head h2{margin:0!important;font-size:clamp(30px,4vw,52px)!important;line-height:.9!important;letter-spacing:-.045em!important;text-transform:uppercase}
.stage-events-section-head>span,.stage-events-section-head>a{font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--stage-muted)!important;text-decoration:none!important}
.stage-events-past-intro{max-width:660px;margin:-6px 0 24px!important;font-size:14px!important;line-height:1.55!important;color:var(--stage-muted)!important}

.stage-events-weekend{margin-top:38px}.stage-events-weekend .stage-events-section-head{margin-top:0}
.stage-events-weekend-grid .stage-event-card.is-featured{position:relative;display:block;min-height:610px;overflow:hidden;background:var(--stage-night);border:0;color:#fff}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image{display:block;position:absolute;inset:0;margin:0;min-height:0;background:#1c1719}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,11,13,.92) 0%,rgba(15,11,13,.73) 36%,rgba(15,11,13,.2) 72%,rgba(15,11,13,.05) 100%),linear-gradient(0deg,rgba(15,11,13,.75),transparent 45%)}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image img{display:block;width:100%!important;height:100%!important;min-height:610px!important;object-fit:cover;transition:transform .55s ease}.stage-events-weekend-grid .stage-event-card.is-featured:hover .stage-event-image img{transform:scale(1.025)}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge{position:absolute;z-index:3;right:28px;top:28px;left:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:94px;height:104px;padding:0;border:0;background:#fff;color:var(--stage-ink);text-transform:uppercase}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge .day{font-family:var(--stage-heading-font)!important;font-weight:var(--stage-heading-weight)!important;font-size:48px;line-height:.75;letter-spacing:-.06em}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge .month{margin-top:9px;font-size:9px;font-weight:900;letter-spacing:.15em}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;min-height:610px;width:min(690px,70%);padding:56px 48px;color:#fff}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-topline{justify-content:flex-start;gap:12px}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-kicker{background:var(--stage-accent);color:#fff}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-tags{color:rgba(255,255,255,.58)}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content h3{margin:12px 0 12px!important;font-size:clamp(50px,7.5vw,92px)!important;line-height:.82!important;letter-spacing:-.06em!important;text-transform:uppercase}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content h3 a{color:#fff!important;text-decoration:none!important}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-meta,.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-artists,.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content p{color:rgba(255,255,255,.75)!important}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-more{color:#fff!important}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-ticket{background:#fff;color:var(--stage-ink)!important}

.stage-events-upcoming .stage-events-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.stage-event-card{position:relative;background:#f5f2f1;overflow:hidden;border:0;transition:transform .22s ease,box-shadow .22s ease}.stage-event-card:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(0,0,0,.08)}
.stage-event-image{position:relative;display:block;margin:0;aspect-ratio:16/9;overflow:hidden;background:#e8e3e1;text-decoration:none!important}.stage-event-image img{display:block;width:100%!important;height:100%!important;min-height:0!important;object-fit:cover;transition:transform .45s ease}.stage-event-card:hover .stage-event-image img{transform:scale(1.035)}.stage-event-image-placeholder{display:flex;align-items:center;justify-content:center}.stage-event-image-placeholder span{font-family:var(--stage-heading-font)!important;font-weight:var(--stage-heading-weight)!important;font-size:18px;letter-spacing:.16em;opacity:.35}
.stage-event-datebadge{position:absolute;z-index:2;left:18px;top:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:72px;height:80px;padding:0;background:#fff;color:var(--stage-ink);text-transform:uppercase;border:0}.stage-event-datebadge .day{font-family:var(--stage-heading-font)!important;font-weight:var(--stage-heading-weight)!important;font-size:36px;line-height:.78;letter-spacing:-.05em}.stage-event-datebadge .month{margin-top:7px;font-size:8px;font-weight:900;letter-spacing:.13em}
.stage-event-content{padding:24px 26px 27px}.stage-event-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.stage-event-kicker,.stage-event-tags{font-size:8px;line-height:1.2;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.stage-event-kicker{display:inline-flex;padding:5px 8px;background:var(--stage-ink);color:#fff}.stage-event-tags{color:var(--stage-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stage-event-content h3{margin:0 0 10px!important;font-size:clamp(28px,3.2vw,44px)!important;line-height:.92!important;letter-spacing:-.045em!important;text-transform:uppercase}.stage-event-content h3 a{color:var(--stage-ink)!important;text-decoration:none!important}.stage-event-meta{display:flex;flex-wrap:wrap;gap:5px 12px;font-size:11px;font-weight:700;color:var(--stage-muted)}.stage-event-meta span+span:before{content:"/";margin-right:12px;opacity:.4}.stage-event-artists{margin-top:9px;font-size:12px;font-weight:800;color:var(--stage-ink)}.stage-event-content p{margin:11px 0 0!important;font-size:13px!important;line-height:1.55!important;color:var(--stage-muted)!important}.stage-event-actions{display:flex;align-items:center;gap:15px;margin-top:18px}.stage-event-more,.stage-event-ticket{display:inline-flex;align-items:center;text-decoration:none!important;font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.stage-event-more{color:var(--stage-ink)!important;border-bottom:1px solid currentColor;padding-bottom:2px}.stage-event-ticket{background:var(--stage-accent);color:#fff!important;padding:10px 13px}.stage-event-ticket:hover{filter:brightness(.92)}
.stage-events-past{margin-top:80px}.stage-events-list-past{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.stage-events-list-past .stage-event-card{background:#fff;border-top:1px solid var(--stage-line);box-shadow:none}.stage-events-list-past .stage-event-card:hover{transform:none;box-shadow:none}.stage-events-list-past .stage-event-datebadge{display:none}.stage-events-list-past .stage-event-image{aspect-ratio:4/3}.stage-events-list-past .stage-event-content{padding:16px 0 22px}.stage-events-list-past .stage-event-content h3{font-size:25px!important}.stage-events-list-past .stage-event-content p{display:none}.stage-events-list-past .stage-event-ticket{display:none}
.stage-events-empty{padding:24px 0;border-bottom:1px solid var(--stage-line);font-size:13px;color:var(--stage-muted)}.stage-event-card.is-hidden,[data-stage-section].is-filtered-empty{display:none!important}

/* SINGLE EVENT — plugin-owned template, no duplicate fact rows */
.stage-event-single{width:100%;color:var(--stage-ink);background:var(--stage-paper);padding:0 0 86px}
.stage-single-inner{width:min(1220px,calc(100% - 44px));margin:0 auto}
.stage-single-back{padding:24px 0 20px;border-bottom:1px solid var(--stage-line)}.stage-single-back a{display:inline-flex;gap:9px;align-items:center;color:var(--stage-ink)!important;text-decoration:none!important;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.stage-single-back a:hover{color:var(--stage-accent)!important}
.stage-single-hero{display:grid;grid-template-columns:minmax(0,.86fr) minmax(420px,1.14fr);min-height:620px;background:var(--stage-night);color:#fff}
.stage-single-copy{display:flex;flex-direction:column;justify-content:center;padding:58px 52px;position:relative;overflow:hidden}.stage-single-copy::after{content:"STAGE";position:absolute;left:-.08em;bottom:-.19em;font-family:var(--stage-heading-font)!important;font-weight:var(--stage-heading-weight)!important;font-size:clamp(120px,17vw,235px);letter-spacing:-.08em;color:rgba(255,255,255,.025);pointer-events:none}.stage-single-kicker{position:relative;z-index:1;display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.stage-single-kicker span{display:inline-flex;padding:6px 9px;font-size:8px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;background:rgba(255,255,255,.08)}.stage-single-kicker span:first-child{background:var(--stage-accent)}
.stage-single-copy h1{position:relative;z-index:1;margin:0!important;color:#fff!important;font-size:clamp(58px,7.5vw,102px)!important;line-height:.82!important;letter-spacing:-.065em!important;text-transform:uppercase;overflow-wrap:anywhere}.stage-single-artists{position:relative;z-index:1;margin:22px 0 0!important;font-size:15px!important;line-height:1.4!important;font-weight:800;color:#fff!important}.stage-single-lead{position:relative;z-index:1;max-width:570px;margin:16px 0 0!important;font-size:15px!important;line-height:1.6!important;color:rgba(255,255,255,.66)!important}.stage-single-actions{position:relative;z-index:1;display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.stage-primary-action,.stage-secondary-action{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 17px;text-decoration:none!important;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.stage-primary-action{background:var(--stage-accent);color:#fff!important}.stage-secondary-action{border:1px solid rgba(255,255,255,.25);color:#fff!important}
.stage-single-visual{position:relative;overflow:hidden;background:#21181c;min-height:620px}.stage-single-visual img{display:block;width:100%!important;height:100%!important;min-height:620px!important;object-fit:cover}.stage-single-visual.is-placeholder{display:flex;align-items:center;justify-content:center}.stage-single-visual.is-placeholder>span{font-family:var(--stage-heading-font)!important;font-weight:var(--stage-heading-weight)!important;font-size:40px;letter-spacing:.12em;color:rgba(255,255,255,.3)}.stage-single-date-stamp{position:absolute;right:24px;bottom:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:112px;height:124px;background:#fff;color:var(--stage-ink);text-transform:uppercase}.stage-single-date-stamp strong{font-family:var(--stage-heading-font)!important;font-weight:var(--stage-heading-weight)!important;font-size:58px;line-height:.72;letter-spacing:-.06em}.stage-single-date-stamp span{margin-top:12px;font-size:10px;font-weight:900;letter-spacing:.16em}.stage-single-date-stamp small{margin-top:4px;font-size:8px;font-weight:800;letter-spacing:.12em;color:var(--stage-muted)}
.stage-single-facts{display:grid;grid-template-columns:1.4fr .75fr 1.1fr .85fr;background:#f5f2f1;border-bottom:1px solid var(--stage-line)}.stage-single-fact{padding:23px 28px;border-right:1px solid var(--stage-line)}.stage-single-fact:last-child{border-right:0}.stage-single-fact span{display:block;margin-bottom:7px;font-size:8px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--stage-muted)}.stage-single-fact strong{display:block;font-size:13px;line-height:1.45;color:var(--stage-ink)}
.stage-single-body-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:78px;padding:68px 0 12px}.stage-single-content{font-family:var(--stage-body-font)!important;font-size:17px;line-height:1.75;color:var(--stage-ink)}.stage-single-content>*:first-child{margin-top:0}.stage-single-content h2,.stage-single-content h3{font-size:clamp(32px,4vw,50px)!important;line-height:.95!important;letter-spacing:-.04em!important;text-transform:uppercase}.stage-single-content img{max-width:100%;height:auto}.stage-single-aside{align-self:start;position:sticky;top:30px;border-top:4px solid var(--stage-accent);background:#f5f2f1;padding:24px}.stage-single-aside-label{display:block;margin-bottom:15px;font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.stage-single-aside>div{padding:15px 0;border-top:1px solid var(--stage-line)}.stage-single-aside small{display:block;margin-bottom:4px;font-size:8px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--stage-muted)}.stage-single-aside strong{display:block;font-size:13px;line-height:1.45}.stage-single-aside-cta a{display:flex;justify-content:space-between;align-items:center;padding-top:2px;color:var(--stage-accent)!important;text-decoration:none!important;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.stage-single-more{margin-top:72px}.stage-single-more .stage-events-section-head{margin-top:0}.stage-single-more-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.stage-single-more-grid .stage-event-card{background:#f5f2f1}.stage-single-more-grid .stage-event-content p{display:none}.stage-single-more-grid .stage-event-content h3{font-size:26px!important}

@media(max-width:960px){
  .stage-events-hero{grid-template-columns:1fr;padding:46px 34px}.stage-events-count{display:none}.stage-events-upcoming .stage-events-list{grid-template-columns:1fr}.stage-events-list-past{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stage-events-weekend-grid .stage-event-card.is-featured{min-height:520px}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image img{min-height:520px!important}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content{min-height:520px;width:78%;padding:42px 34px}
  .stage-single-hero{grid-template-columns:1fr;min-height:0}.stage-single-copy{padding:48px 34px}.stage-single-visual,.stage-single-visual img{min-height:460px!important}.stage-single-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.stage-single-fact:nth-child(2){border-right:0}.stage-single-body-grid{grid-template-columns:1fr;gap:38px}.stage-single-aside{position:static}.stage-single-more-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  .stage-events-wrap{padding-bottom:50px}.stage-events-hero{padding:36px 24px 34px}.stage-events-title{font-size:clamp(64px,25vw,96px)!important}.stage-events-toolbar{padding:16px 18px 9px}.stage-events-archive-link{display:none}.stage-events-filterbar,.stage-events-months{padding-left:18px;padding-right:18px}.stage-events-section-head{margin-top:42px}.stage-events-section-head h3,.stage-events-section-head h2{font-size:34px!important}.stage-events-weekend-grid .stage-event-card.is-featured{min-height:500px}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image::after{background:linear-gradient(0deg,rgba(15,11,13,.94) 0%,rgba(15,11,13,.58) 58%,rgba(15,11,13,.12) 100%)}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image img{min-height:500px!important}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content{min-height:500px;width:100%;padding:30px 23px}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content h3{font-size:48px!important}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge{right:16px;top:16px;width:76px;height:84px}.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge .day{font-size:39px}.stage-events-list-past{grid-template-columns:1fr}.stage-event-content{padding:20px}.stage-event-content h3{font-size:31px!important}.stage-event-datebadge{left:12px;top:12px}.stage-event-content p{display:none}
  .stage-single-inner{width:min(100% - 24px,1220px)}.stage-single-back{padding-top:17px}.stage-single-copy{padding:38px 23px}.stage-single-copy h1{font-size:clamp(48px,16vw,70px)!important}.stage-single-lead{font-size:14px!important}.stage-single-visual,.stage-single-visual img{min-height:360px!important}.stage-single-date-stamp{right:14px;bottom:14px;width:88px;height:98px}.stage-single-date-stamp strong{font-size:46px}.stage-single-facts{grid-template-columns:1fr}.stage-single-fact{border-right:0;border-bottom:1px solid var(--stage-line);padding:18px 20px}.stage-single-body-grid{padding-top:42px}.stage-single-content{font-size:16px}.stage-single-more-grid{grid-template-columns:1fr}
}

/* THE STAGE Events 1.7 — brand typography + full-bleed polish */
.stage-events-ui{
  --stage-heading-font:"Bebas","Bebas Neue",Impact,sans-serif;
  --stage-heading-weight:400;
  --stage-body-font:"Neue Haas Grotesk Display Pro","Neue Haas Grotesk Display","Helvetica Neue",Arial,sans-serif;
  --stage-body-weight:400;
  --stage-shell:#f3f0ee;
  font-family:var(--stage-body-font)!important;
  font-size:17px;
}
.stage-events-ui h1,.stage-events-ui h2,.stage-events-ui h3,.stage-events-ui h4,.stage-events-ui h5,.stage-events-ui h6,
.stage-events-ui .stage-events-title,.stage-events-ui .stage-event-datebadge .day,.stage-events-ui .stage-single-date-stamp strong,
.stage-events-ui .stage-events-count strong,.stage-events-ui .stage-event-image-placeholder span{
  font-family:var(--stage-heading-font)!important;
  font-weight:400!important;
  letter-spacing:.01em!important;
}

/* Full-bleed page shell while keeping readable content width */
.stage-events-wrap,.stage-event-single{position:relative;isolation:isolate}
.stage-events-wrap::before,.stage-event-single::before{
  content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:var(--stage-shell);
}
.stage-events-wrap{max-width:1220px;background:transparent;padding-top:0}
.stage-event-single{background:transparent}
.stage-single-inner{background:transparent}

/* Calendar: stronger type, less cramped metadata */
.stage-events-hero{margin-top:0}
.stage-events-hero::after{content:"EVENTS"}
.stage-events-eyebrow{font-size:13px}
.stage-events-hero p{max-width:900px;font-size:22px!important;line-height:1.35!important}
@media(min-width:980px){.stage-events-hero p{white-space:nowrap}}
.stage-events-search input{font-size:17px!important}
.stage-events-filterbar button,.stage-events-months button{font-size:11px;padding:11px 16px}
.stage-events-section-head>span,.stage-events-section-head>a{font-size:11px}
.stage-events-past-intro{font-size:17px!important}
.stage-event-kicker,.stage-event-tags{font-size:10px}
.stage-event-content{padding:28px 30px 31px}
.stage-event-content h3{font-size:clamp(36px,3.8vw,54px)!important;line-height:.92!important}
.stage-event-meta{display:grid;grid-template-columns:1fr;gap:5px;font-size:15px;line-height:1.35;font-weight:500}
.stage-event-meta span+span:before{content:none!important;margin:0!important}
.stage-event-meta span{display:block}
.stage-event-artists{margin-top:12px;font-size:16px;line-height:1.4}
.stage-event-content p{font-size:16px!important;line-height:1.6!important}
.stage-event-more,.stage-event-ticket{font-size:11px}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-meta{font-size:17px}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-artists{font-size:18px}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content p{font-size:17px!important}

/* Single event: full-bleed shell and larger editorial text */
.stage-single-back{font-size:14px}
.stage-single-back a{font-size:12px}
.stage-single-hero{max-width:1220px;margin:0 auto}
.stage-single-copy h1{font-size:clamp(68px,8vw,116px)!important;line-height:.88!important;letter-spacing:.01em!important}
.stage-single-kicker span{font-size:10px}
.stage-single-artists{font-size:19px!important;line-height:1.45!important}
.stage-single-lead{font-size:18px!important;line-height:1.55!important}
.stage-primary-action,.stage-secondary-action{font-size:11px;padding:15px 18px}
.stage-single-facts{font-size:16px}
.stage-single-fact{padding:25px 28px}
.stage-single-fact span{font-size:10px}
.stage-single-fact strong{font-size:17px;line-height:1.45}
.stage-single-body-grid{grid-template-columns:minmax(0,1fr) 360px;gap:72px;padding-top:72px}
.stage-single-content{font-size:20px;line-height:1.72}
.stage-single-content p{font-size:20px!important;line-height:1.72!important}
.stage-single-content h2{font-size:56px!important}.stage-single-content h3{font-size:42px!important}
.stage-single-aside{padding:28px 26px}
.stage-single-aside-label{font-size:12px;margin-bottom:18px}
.stage-single-aside small{font-size:10px}
.stage-single-aside strong{font-size:16px;line-height:1.5}
.stage-single-aside>div{padding:17px 0}
.stage-single-aside-actions{display:grid;gap:10px;border-top:1px solid var(--stage-line);padding-top:20px!important}
.stage-aside-button{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;text-decoration:none!important;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--stage-ink);transition:transform .18s ease,background .18s ease,color .18s ease}
.stage-aside-button.is-secondary{color:var(--stage-ink)!important;background:transparent}
.stage-aside-button.is-primary{color:#fff!important;background:var(--stage-accent);border-color:var(--stage-accent)}
.stage-aside-button:hover{transform:translateY(-1px)}

/* Avoid theme margins constraining the plugin's full-bleed shell */
body.single-stage_event .stage-event-single,
body .stage-events-wrap.alignwide{margin-left:auto!important;margin-right:auto!important}

@media(max-width:979px){
  .stage-events-hero p{white-space:normal}
}
@media(max-width:650px){
  .stage-events-ui{font-size:16px}
  .stage-events-hero p{font-size:18px!important}
  .stage-event-meta{font-size:14px}
  .stage-event-artists{font-size:15px}
  .stage-single-copy h1{font-size:clamp(56px,18vw,80px)!important}
  .stage-single-content,.stage-single-content p{font-size:18px!important}
  .stage-single-fact strong{font-size:16px}
}

/* THE STAGE Events 1.8 — brand colors + refined single-event composition */
.stage-events-ui{
  --stage-blue:#1c2e46;
  --stage-red:#CC0033;
  --stage-accent:var(--stage-red);
  --stage-night:var(--stage-blue);
  --stage-ink:#101820;
}

/* Brand accents across the calendar */
.stage-events-hero{background:var(--stage-blue)}
.stage-events-hero::before{background:var(--stage-red)}
.stage-events-filterbar button.is-active,.stage-events-months button.is-active,
.stage-event-ticket,.stage-primary-action,.stage-aside-button.is-primary{background:var(--stage-red)!important;border-color:var(--stage-red)!important}
.stage-events-search input:focus{border-bottom-color:var(--stage-red)!important}
.stage-events-section-head{border-bottom-color:var(--stage-blue)}
.stage-events-section-head h2,.stage-events-section-head h3{color:var(--stage-blue)!important}
.stage-event-more{color:var(--stage-blue)!important}

/* Single event: image first, editorial panel below. This avoids awkward title wrapping. */
.stage-single-hero{
  display:flex!important;
  flex-direction:column!important;
  background:transparent!important;
  min-height:0!important;
}
.stage-single-visual{
  order:1;
  min-height:0!important;
  aspect-ratio:16/7;
  width:100%;
  background:var(--stage-blue)!important;
}
.stage-single-visual img{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:cover!important;
}
.stage-single-copy{
  order:2;
  width:100%;
  min-width:0;
  padding:42px 52px 46px!important;
  background:var(--stage-blue)!important;
  color:#fff!important;
  position:relative;
  overflow:hidden;
}
.stage-single-copy::after{
  content:"STAGE";
  position:absolute;
  right:18px;
  bottom:-.23em;
  font-family:var(--stage-heading-font)!important;
  font-size:clamp(120px,18vw,250px);
  line-height:.8;
  color:rgba(255,255,255,.035);
  pointer-events:none;
}
.stage-single-copy h1{
  position:relative;z-index:1;
  max-width:1050px;
  margin:15px 0 16px!important;
  font-size:clamp(58px,7.6vw,108px)!important;
  line-height:.86!important;
  color:#fff!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
.stage-single-artists,.stage-single-lead,.stage-single-actions,.stage-single-kicker{position:relative;z-index:1}
.stage-single-artists{max-width:950px;color:#fff!important;font-size:20px!important}
.stage-single-lead{max-width:820px;color:rgba(255,255,255,.75)!important}
.stage-single-kicker{gap:8px!important}
.stage-single-kicker span{
  display:inline-flex!important;
  align-items:center;
  background:var(--stage-red)!important;
  color:#fff!important;
  border:0!important;
  padding:8px 11px!important;
  font-size:11px!important;
  letter-spacing:.13em!important;
}
.stage-single-actions .stage-secondary-action{color:#fff!important;border-color:rgba(255,255,255,.42)!important}
.stage-single-date-stamp{background:#fff!important;color:var(--stage-blue)!important;border-top:6px solid var(--stage-red)!important}

/* Facts: use available width intelligently and keep the long date intact on desktop */
.stage-single-facts{
  grid-template-columns:minmax(460px,2.5fr) minmax(180px,1fr) minmax(170px,.9fr)!important;
  background:#f3f0ee!important;
  border-top:0!important;
}
.stage-single-facts:has(.stage-single-fact-time){grid-template-columns:minmax(430px,2.2fr) minmax(150px,.75fr) minmax(180px,1fr) minmax(170px,.85fr)!important}
.stage-single-fact{padding:24px 28px!important}
.stage-single-fact-date strong{white-space:nowrap;font-size:18px!important}
.stage-single-fact span{display:flex!important;align-items:center;gap:8px;color:var(--stage-blue)!important;opacity:.78}
.stage-fact-icon{display:inline-flex;width:17px;height:17px;color:var(--stage-red);flex:0 0 17px}
.stage-fact-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.stage-single-fact strong{color:var(--stage-blue)!important;font-size:17px!important}

/* Aside carries THE STAGE colors without becoming visually heavy */
.stage-single-aside{border-top-color:var(--stage-red)!important}
.stage-single-aside-label{color:var(--stage-blue)!important}
.stage-aside-button.is-secondary{border-color:var(--stage-blue)!important;color:var(--stage-blue)!important}
.stage-aside-button.is-secondary:hover{background:var(--stage-blue)!important;color:#fff!important}

@media(max-width:1100px){
  .stage-single-facts,.stage-single-facts:has(.stage-single-fact-time){grid-template-columns:2fr 1fr 1fr!important}
  .stage-single-fact-time{grid-column:auto}
  .stage-single-fact-date strong{white-space:normal}
}
@media(max-width:800px){
  .stage-single-visual{aspect-ratio:4/3}
  .stage-single-copy{padding:34px 28px 38px!important}
  .stage-single-copy h1{font-size:clamp(54px,13vw,82px)!important}
  .stage-single-facts,.stage-single-facts:has(.stage-single-fact-time){grid-template-columns:1fr 1fr!important}
  .stage-single-fact-date{grid-column:1/-1}
  .stage-single-fact-date strong{white-space:normal}
}
@media(max-width:560px){
  .stage-single-visual{aspect-ratio:1/1}
  .stage-single-copy{padding:30px 22px 34px!important}
  .stage-single-copy h1{font-size:clamp(48px,16vw,70px)!important}
  .stage-single-artists{font-size:17px!important}
  .stage-single-facts,.stage-single-facts:has(.stage-single-fact-time){grid-template-columns:1fr!important}
  .stage-single-fact-date{grid-column:auto}
  .stage-single-fact{border-right:0!important}
}

/* THE STAGE Events 1.9 — single-event layout matched to the approved visual direction */
body.single-stage_event{background:var(--stage-blue,#1c2e46)!important}
body.single-stage_event .site-content,
body.single-stage_event #content,
body.single-stage_event .content-area,
body.single-stage_event main.site-main{background:transparent!important}
.stage-event-single-v19{
  --stage-blue:#1c2e46;
  --stage-red:#CC0033;
  --stage-cream:#f5f2f0;
  --stage-white:#fff;
  --stage-text:#111923;
  --stage-soft:#f4f1ef;
  color:var(--stage-text);
}
.stage-event-single-v19::before{background:linear-gradient(to bottom,var(--stage-blue) 0 520px,#fff 520px 100%)!important}
.stage-event-single-v19 .stage-single-inner{width:min(100% - 60px,1220px)!important;margin:0 auto!important}
.stage-event-single-v19 .stage-single-back{padding:20px 0 14px!important;color:#fff!important}
.stage-event-single-v19 .stage-single-back a{color:rgba(255,255,255,.86)!important;text-decoration:none!important;font-size:12px!important;text-transform:uppercase;letter-spacing:.08em;font-weight:700}

/* Image stage */
.stage-event-single-v19 .stage-single-hero{display:block!important;background:#fff!important;max-width:none!important;margin:0!important;box-shadow:0 8px 26px rgba(13,30,48,.08)}
.stage-event-single-v19 .stage-single-visual{
  position:relative!important;display:block!important;aspect-ratio:16/8.3!important;width:100%!important;min-height:0!important;background:var(--stage-blue)!important;overflow:hidden!important
}
.stage-event-single-v19 .stage-single-visual img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.stage-event-single-v19 .stage-single-image-category{
  position:absolute;z-index:3;left:32px;top:0;background:var(--stage-red);color:#fff;padding:15px 22px 14px;
  font-size:13px;font-weight:700;line-height:1;text-transform:uppercase;letter-spacing:.08em
}
.stage-event-single-v19 .stage-single-date-stamp{
  position:absolute!important;z-index:3!important;right:30px!important;bottom:28px!important;width:118px!important;height:136px!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;background:#fff!important;color:var(--stage-blue)!important;
  border:0!important;box-shadow:0 10px 30px rgba(0,0,0,.14)!important
}
.stage-event-single-v19 .stage-single-date-stamp strong{font-family:var(--stage-heading-font)!important;font-size:60px!important;font-weight:400!important;line-height:.82!important}
.stage-event-single-v19 .stage-single-date-stamp span{margin-top:10px;font-size:13px!important;font-weight:800!important;line-height:1!important;letter-spacing:.12em!important;text-transform:uppercase;color:var(--stage-red)!important}
.stage-event-single-v19 .stage-single-date-stamp small{margin-top:7px;font-size:10px!important;font-weight:700!important;letter-spacing:.1em!important;color:var(--stage-blue)!important}

/* White title panel */
.stage-event-single-v19 .stage-single-copy{position:relative!important;padding:42px 38px 30px!important;background:#fff!important;color:var(--stage-blue)!important;overflow:visible!important}
.stage-event-single-v19 .stage-single-copy::after{display:none!important}
.stage-event-single-v19 .stage-single-copy h1{
  max-width:none!important;margin:0!important;color:var(--stage-blue)!important;font-size:clamp(58px,6.3vw,92px)!important;line-height:.91!important;
  letter-spacing:.01em!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important
}
.stage-event-single-v19 .stage-single-red-rule{display:block;width:74px;height:4px;background:var(--stage-red);margin:21px 0 16px}
.stage-event-single-v19 .stage-single-artists{max-width:1000px!important;margin:0!important;color:var(--stage-red)!important;font-size:21px!important;line-height:1.35!important;font-weight:700!important}

/* Facts row */
.stage-event-single-v19 .stage-single-facts{
  display:grid!important;grid-template-columns:minmax(475px,2.2fr) minmax(210px,1fr) minmax(180px,.85fr)!important;background:#fff!important;border-top:1px solid rgba(28,46,70,.15)!important;
  border-bottom:1px solid rgba(28,46,70,.15)!important;padding:0 38px!important
}
.stage-event-single-v19 .stage-single-facts:has(.stage-single-fact-time){grid-template-columns:minmax(410px,2fr) minmax(150px,.72fr) minmax(190px,.9fr) minmax(170px,.82fr)!important}
.stage-event-single-v19 .stage-single-fact{
  display:flex!important;align-items:center!important;gap:20px!important;min-width:0!important;padding:27px 24px!important;border-right:1px solid rgba(28,46,70,.16)!important
}
.stage-event-single-v19 .stage-single-fact:first-child{padding-left:0!important}
.stage-event-single-v19 .stage-single-fact:last-child{border-right:0!important}
.stage-event-single-v19 .stage-single-fact>div{min-width:0}
.stage-event-single-v19 .stage-fact-icon{width:42px!important;height:42px!important;flex:0 0 42px!important;color:var(--stage-red)!important}
.stage-event-single-v19 .stage-fact-icon svg{width:42px!important;height:42px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.6!important}
.stage-event-single-v19 .stage-single-fact span{display:block!important;margin:0 0 7px!important;color:rgba(28,46,70,.55)!important;font-size:10px!important;font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important}
.stage-event-single-v19 .stage-single-fact strong{display:block!important;color:var(--stage-blue)!important;font-size:16px!important;line-height:1.32!important;font-weight:700!important}
.stage-event-single-v19 .stage-single-fact-date strong{white-space:nowrap!important}

/* Content */
.stage-event-single-v19 .stage-single-body-grid{
  display:grid!important;grid-template-columns:minmax(0,1fr) 350px!important;gap:70px!important;padding:48px 38px 42px!important;background:#fff!important;align-items:start!important
}
.stage-event-single-v19 .stage-single-content{font-size:18px!important;line-height:1.62!important;color:#171717!important;max-width:700px!important}
.stage-event-single-v19 .stage-single-content p{font-size:18px!important;line-height:1.62!important;color:#171717!important}
.stage-event-single-v19 .stage-single-introline{margin:0 0 27px!important;font-size:24px!important;line-height:1.4!important;font-weight:500!important;max-width:690px!important}
.stage-event-single-v19 .stage-single-content-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:34px}
.stage-event-single-v19 .stage-primary-action,
.stage-event-single-v19 .stage-secondary-action{display:inline-flex!important;align-items:center!important;gap:20px!important;padding:16px 22px!important;font-size:12px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.04em!important;text-decoration:none!important}
.stage-event-single-v19 .stage-primary-action{background:var(--stage-red)!important;color:#fff!important;border:1px solid var(--stage-red)!important}
.stage-event-single-v19 .stage-secondary-action{background:#fff!important;color:var(--stage-red)!important;border:1px solid var(--stage-red)!important}

/* At-a-glance card */
.stage-event-single-v19 .stage-single-aside{background:var(--stage-soft)!important;border:0!important;border-top:0!important;padding:24px 26px 24px!important;box-shadow:none!important}
.stage-event-single-v19 .stage-single-aside-label{display:block!important;margin:0!important;color:var(--stage-blue)!important;font-family:var(--stage-heading-font)!important;font-size:30px!important;font-weight:400!important;line-height:1!important;letter-spacing:.01em!important;text-transform:uppercase!important}
.stage-event-single-v19 .stage-single-aside-rule{display:block;width:46px;height:3px;background:var(--stage-red);margin:10px 0 11px}
.stage-event-single-v19 .stage-single-aside>div:not(.stage-single-aside-actions){padding:13px 0!important;border-bottom:1px solid rgba(28,46,70,.16)!important}
.stage-event-single-v19 .stage-single-aside small{display:block!important;margin-bottom:6px!important;color:rgba(28,46,70,.53)!important;font-size:9px!important;font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important}
.stage-event-single-v19 .stage-single-aside strong{display:block!important;color:var(--stage-blue)!important;font-size:14px!important;line-height:1.45!important;font-weight:700!important}
.stage-event-single-v19 .stage-single-aside-actions{display:grid!important;gap:10px!important;padding-top:20px!important;border-top:0!important}
.stage-event-single-v19 .stage-aside-button{
  display:grid!important;grid-template-columns:22px 1fr auto!important;align-items:center!important;gap:10px!important;padding:12px 13px!important;border:1px solid var(--stage-blue)!important;
  color:var(--stage-blue)!important;background:transparent!important;font-size:10px!important;font-weight:800!important;line-height:1.15!important;text-transform:uppercase!important;letter-spacing:.035em!important;text-decoration:none!important
}
.stage-event-single-v19 .stage-aside-button i{display:flex;width:20px;height:20px;font-style:normal}
.stage-event-single-v19 .stage-aside-button i svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.stage-event-single-v19 .stage-aside-button b{font-size:15px;font-weight:500}
.stage-event-single-v19 .stage-aside-button:hover{background:var(--stage-blue)!important;color:#fff!important;transform:none!important}

/* More events — poster cards */
.stage-event-single-v19 .stage-single-more{background:#fff!important;padding:0 38px 56px!important}
.stage-event-single-v19 .stage-single-more .stage-events-section-head{display:flex!important;align-items:end!important;justify-content:space-between!important;border:0!important;margin:0 0 16px!important;padding:0!important}
.stage-event-single-v19 .stage-single-more .stage-events-section-head h2{margin:0!important;color:var(--stage-blue)!important;font-size:38px!important;line-height:.95!important}
.stage-event-single-v19 .stage-single-more .stage-events-section-head a{color:var(--stage-red)!important;text-decoration:none!important;font-size:10px!important;font-weight:800!important;letter-spacing:.05em!important;text-transform:uppercase!important}
.stage-event-single-v19 .stage-single-more-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-card{position:relative!important;display:block!important;min-height:255px!important;background:#09101a!important;border:0!important;overflow:hidden!important;box-shadow:none!important;color:#fff!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-image{position:absolute!important;inset:0!important;display:block!important;height:100%!important;min-height:0!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-image::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(2,8,15,.98) 0%,rgba(2,8,15,.56) 52%,rgba(2,8,15,.10) 100%)}
.stage-event-single-v19 .stage-single-more-grid .stage-event-image img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-datebadge{left:auto!important;right:14px!important;top:14px!important;z-index:4!important;width:68px!important;height:78px!important;background:#fff!important;color:var(--stage-blue)!important;box-shadow:none!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-datebadge .day{font-size:35px!important;line-height:.85!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-datebadge .month{margin-top:7px!important;color:var(--stage-blue)!important;font-size:8px!important;font-weight:800!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-content{position:absolute!important;z-index:3!important;left:0!important;right:0!important;bottom:0!important;padding:18px 16px 15px!important;background:transparent!important;color:#fff!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-topline{position:absolute;left:14px;top:-154px;right:auto}
.stage-event-single-v19 .stage-single-more-grid .stage-event-kicker{display:none!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-tags{display:inline-flex!important;background:var(--stage-red)!important;color:#fff!important;padding:8px 10px!important;font-size:9px!important;font-weight:800!important;line-height:1!important;letter-spacing:.05em!important;text-transform:uppercase!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-content h3{margin:0 0 10px!important;font-size:31px!important;line-height:.9!important;color:#fff!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-content h3 a{color:#fff!important;text-decoration:none!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-meta{display:block!important;margin:0 0 8px!important;color:#fff!important;font-size:11px!important;line-height:1.35!important;font-weight:500!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-meta span{display:none!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-meta span:last-child{display:block!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-meta span:last-child::before{content:"⌖";margin-right:7px;color:#fff}
.stage-event-single-v19 .stage-single-more-grid .stage-event-artists{margin:0!important;color:#fff!important;font-size:11px!important;line-height:1.35!important;font-weight:700!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-content p,
.stage-event-single-v19 .stage-single-more-grid .stage-event-actions{display:none!important}

@media(max-width:1080px){
  .stage-event-single-v19::before{background:linear-gradient(to bottom,var(--stage-blue) 0 420px,#fff 420px 100%)!important}
  .stage-event-single-v19 .stage-single-facts,.stage-event-single-v19 .stage-single-facts:has(.stage-single-fact-time){grid-template-columns:1.7fr 1fr 1fr!important}
  .stage-event-single-v19 .stage-single-fact-time{grid-column:auto!important}
  .stage-event-single-v19 .stage-single-fact-date strong{white-space:normal!important}
  .stage-event-single-v19 .stage-single-body-grid{grid-template-columns:minmax(0,1fr) 310px!important;gap:42px!important}
}
@media(max-width:820px){
  body.single-stage_event{background:#fff!important}
  .stage-event-single-v19::before{background:linear-gradient(to bottom,var(--stage-blue) 0 280px,#fff 280px 100%)!important}
  .stage-event-single-v19 .stage-single-inner{width:min(100% - 28px,1220px)!important}
  .stage-event-single-v19 .stage-single-visual{aspect-ratio:4/3!important}
  .stage-event-single-v19 .stage-single-copy{padding:30px 22px 25px!important}
  .stage-event-single-v19 .stage-single-copy h1{font-size:clamp(52px,12.5vw,74px)!important}
  .stage-event-single-v19 .stage-single-artists{font-size:18px!important}
  .stage-event-single-v19 .stage-single-image-category{left:18px;padding:11px 14px;font-size:10px}
  .stage-event-single-v19 .stage-single-date-stamp{right:18px!important;bottom:18px!important;width:88px!important;height:102px!important}
  .stage-event-single-v19 .stage-single-date-stamp strong{font-size:46px!important}
  .stage-event-single-v19 .stage-single-facts,.stage-event-single-v19 .stage-single-facts:has(.stage-single-fact-time){grid-template-columns:1fr 1fr!important;padding:0 22px!important}
  .stage-event-single-v19 .stage-single-fact{padding:21px 10px!important;border-bottom:1px solid rgba(28,46,70,.16)!important}
  .stage-event-single-v19 .stage-single-fact:nth-child(even){border-right:0!important}
  .stage-event-single-v19 .stage-single-fact-date{grid-column:1/-1!important;border-right:0!important}
  .stage-event-single-v19 .stage-single-fact-date strong{white-space:normal!important}
  .stage-event-single-v19 .stage-fact-icon{width:34px!important;height:34px!important;flex-basis:34px!important}
  .stage-event-single-v19 .stage-fact-icon svg{width:34px!important;height:34px!important}
  .stage-event-single-v19 .stage-single-body-grid{grid-template-columns:1fr!important;padding:38px 22px 36px!important;gap:34px!important}
  .stage-event-single-v19 .stage-single-content{max-width:none!important}
  .stage-event-single-v19 .stage-single-introline{font-size:21px!important}
  .stage-event-single-v19 .stage-single-more{padding:0 22px 40px!important}
  .stage-event-single-v19 .stage-single-more-grid{grid-template-columns:1fr!important}
  .stage-event-single-v19 .stage-single-more-grid .stage-event-card{min-height:310px!important}
  .stage-event-single-v19 .stage-single-more-grid .stage-event-topline{top:-205px}
}
@media(max-width:520px){
  .stage-event-single-v19 .stage-single-inner{width:100%!important}
  .stage-event-single-v19 .stage-single-back{padding-left:18px!important;padding-right:18px!important}
  .stage-event-single-v19 .stage-single-visual{aspect-ratio:1/1!important}
  .stage-event-single-v19 .stage-single-copy h1{font-size:clamp(48px,16vw,64px)!important}
  .stage-event-single-v19 .stage-single-facts,.stage-event-single-v19 .stage-single-facts:has(.stage-single-fact-time){grid-template-columns:1fr!important}
  .stage-event-single-v19 .stage-single-fact,.stage-event-single-v19 .stage-single-fact-date{grid-column:auto!important;border-right:0!important}
  .stage-event-single-v19 .stage-single-content-actions{display:grid!important}
  .stage-event-single-v19 .stage-primary-action,.stage-event-single-v19 .stage-secondary-action{justify-content:space-between!important}
  .stage-event-single-v19 .stage-single-more .stage-events-section-head{align-items:flex-start!important;gap:20px!important}
}

/* v2.0 — single CTA location: aside only, in THE STAGE red */
.stage-event-single-v19 .stage-single-content-actions{display:none!important}
.stage-event-single-v19 .stage-aside-button{border-color:var(--stage-red)!important;color:var(--stage-red)!important;background:#fff!important}
.stage-event-single-v19 .stage-aside-button.is-primary{background:var(--stage-red)!important;color:#fff!important;border-color:var(--stage-red)!important}
.stage-event-single-v19 .stage-aside-button.is-secondary{background:#fff!important;color:var(--stage-red)!important;border-color:var(--stage-red)!important}
.stage-event-single-v19 .stage-aside-button.is-primary:hover{background:#a8002a!important;color:#fff!important;border-color:#a8002a!important}
.stage-event-single-v19 .stage-aside-button.is-secondary:hover{background:var(--stage-red)!important;color:#fff!important;border-color:var(--stage-red)!important}


/* v2.1 — archive refinement + relaxed feature typography */
/* Bebas is naturally condensed; do not compress it further with negative tracking. */
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content h3{
  max-width:760px!important;
  font-size:clamp(52px,6.2vw,80px)!important;
  line-height:.9!important;
  letter-spacing:.005em!important;
  word-spacing:.02em!important;
  text-wrap:balance;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

/* Archive: cleaner editorial hierarchy. Artists sit directly below the title;
   location/time are intentionally omitted and only the date remains. */
.stage-events-past{margin-top:88px}
.stage-events-past .stage-events-section-head{margin-bottom:14px}
.stage-events-past-intro{
  max-width:none!important;
  margin:-2px 0 28px!important;
  font-size:17px!important;
  line-height:1.5!important;
  color:var(--stage-muted)!important;
}
@media(min-width:900px){.stage-events-past-intro{white-space:nowrap}}
.stage-events-list-past{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.stage-events-list-past .stage-event-content{
  display:flex!important;
  flex-direction:column!important;
  padding:17px 0 22px!important;
}
.stage-events-list-past .stage-event-topline{order:0;margin-bottom:9px}
.stage-events-list-past .stage-event-content h3{
  order:1;
  margin:0 0 7px!important;
  color:var(--stage-blue,#1c2e46)!important;
  font-size:30px!important;
  line-height:.95!important;
  letter-spacing:.005em!important;
}
.stage-events-list-past .stage-event-artists{
  order:2;
  margin:0 0 9px!important;
  color:var(--stage-ink)!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:700!important;
}
.stage-events-list-past .stage-event-meta{
  order:3;
  display:block!important;
  margin:0!important;
  font-size:14px!important;
  line-height:1.4!important;
  color:var(--stage-muted)!important;
}
.stage-events-list-past .stage-event-meta span{display:none!important}
.stage-events-list-past .stage-event-meta span:first-child{display:block!important}
.stage-events-list-past .stage-event-actions{order:4;margin-top:15px!important}
.stage-events-list-past .stage-event-more{color:var(--stage-blue,#1c2e46)!important}

@media(max-width:899px){
  .stage-events-past-intro{white-space:normal}
  .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content h3{font-size:clamp(48px,9vw,68px)!important}
}
@media(max-width:650px){
  .stage-events-list-past .stage-event-content h3{font-size:28px!important}
  .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content h3{font-size:46px!important;line-height:.92!important}
}

/* v2.2 — seamless host hero, improved feature hierarchy and THE STAGE date tiles */
.stage-events-wrap{
  padding-top:0!important;
  margin-top:0!important;
}

/* When the plugin detects the existing Sprout page hero, only its overlay copy is
   hidden. The image remains untouched and the event guide joins it directly. */
.stage-events-host-copy{display:none!important}
.stage-events-host-hero{margin-bottom:0!important;padding-bottom:0!important}
body.stage-events-has-host-hero .stage-events-wrap{margin-top:0!important}
body.stage-events-has-host-hero .stage-events-hero{margin-top:0!important}

/* Featured event: artist directly below the title, date/location after it. */
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-artists{
  margin:14px 0 0!important;
  color:#fff!important;
  font-size:18px!important;
  line-height:1.4!important;
  font-weight:700!important;
}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-meta{
  margin-top:16px!important;
  color:rgba(255,255,255,.9)!important;
}

/* General cards follow the same editorial hierarchy. */
.stage-event-content h3 + .stage-event-artists{margin-top:10px!important}
.stage-event-artists + .stage-event-meta{margin-top:10px!important}

/* THE STAGE date tile: blue field, red signal bar, crisp white type. */
.stage-event-datebadge{
  background:var(--stage-blue,#1c2e46)!important;
  color:#fff!important;
  border-top:5px solid var(--stage-red,#CC0033)!important;
  box-shadow:0 8px 20px rgba(10,25,42,.18)!important;
  min-height:92px;
}
.stage-event-datebadge .day{
  color:#fff!important;
  font-size:43px!important;
  line-height:.82!important;
}
.stage-event-datebadge .month{
  color:#fff!important;
  margin-top:9px!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
.stage-event-datebadge .year{
  display:block;
  margin-top:4px;
  color:rgba(255,255,255,.66)!important;
  font-size:7px!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.12em!important;
}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge{
  background:var(--stage-blue,#1c2e46)!important;
  color:#fff!important;
  border-top:6px solid var(--stage-red,#CC0033)!important;
}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge .day,
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge .month{color:#fff!important}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge .year{color:rgba(255,255,255,.68)!important}

/* The three recommendation cards on the detail page use the same badge language. */
.stage-event-single-v19 .stage-single-more-grid .stage-event-datebadge{
  background:var(--stage-blue,#1c2e46)!important;
  color:#fff!important;
  border-top:4px solid var(--stage-red,#CC0033)!important;
}
.stage-event-single-v19 .stage-single-more-grid .stage-event-datebadge .day,
.stage-event-single-v19 .stage-single-more-grid .stage-event-datebadge .month{color:#fff!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-datebadge .year{color:rgba(255,255,255,.68)!important;font-size:6px!important}

/* v2.3 — fixed category badges + compact previews */
/* Category is anchored to the poster itself, independent of content height. */
.stage-event-corner-category{
  position:absolute!important;
  z-index:5!important;
  top:14px!important;
  left:14px!important;
  display:inline-flex!important;
  align-items:center!important;
  max-width:calc(100% - 115px)!important;
  padding:8px 11px!important;
  background:var(--stage-red,#CC0033)!important;
  color:#fff!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  pointer-events:none!important;
}

/* Normal upcoming cards no longer need the old EVENT/category topline. */
.stage-events-upcoming .stage-event-card:not(.is-featured) .stage-event-topline,
.stage-event-single-v19 .stage-single-more-grid .stage-event-topline{
  display:none!important;
}

/* Single-detail "Weitere Events": category badge stays top-left of the image. */
.stage-event-single-v19 .stage-single-more-grid .stage-event-corner-category{
  top:14px!important;
  left:14px!important;
  right:auto!important;
}

/* Preview copy: at most 30 words from PHP and visually no more than three lines. */
.stage-event-card .stage-event-content p{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:3!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-height:calc(1.55em * 3)!important;
}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content p{
  max-width:720px!important;
  margin-top:15px!important;
}

/* Poster cards on the single page intentionally remain text-free. */
.stage-event-single-v19 .stage-single-more-grid .stage-event-content p{display:none!important}

@media(max-width:650px){
  .stage-event-corner-category{top:12px!important;left:12px!important;padding:7px 9px!important;font-size:9px!important}
}


/* THE STAGE Events 2.5 — editorial links use the same core styling as THE STAGE posts.
   Source values from the live post CSS: #CC0033, weight 700, underline, 3px offset. */
.stage-event-single-v19 .stage-single-content a:not(.stage-aside-button),
.stage-event-single-v19 .stage-single-content a:visited:not(.stage-aside-button){
  color:#CC0033!important;
  font-weight:700!important;
  text-decoration:underline!important;
  text-decoration-color:#CC0033!important;
  text-underline-offset:3px!important;
  transition:var(--vw-transition,all .2s cubic-bezier(.215,.61,.355,1))!important;
}
.stage-event-single-v19 .stage-single-content a:hover:not(.stage-aside-button),
.stage-event-single-v19 .stage-single-content a:focus-visible:not(.stage-aside-button){
  color:#fff!important;
  background-color:#CC0033!important;
  text-decoration-color:#CC0033!important;
  outline:none;
}

/* v2.6 — context-aware category placement, calmer single-page recommendations,
   and tighter integration with the existing Sprout page hero. */

/* Main /events/ “Weitere Events”: date tile is on the left, so category lives right. */
.stage-events-upcoming .stage-event-card:not(.is-featured) .stage-event-corner-category{
  left:auto!important;
  right:14px!important;
  max-width:calc(100% - 125px)!important;
}

/* Single event “Weitere Events”: date tile is on the right, category stays left. */
.stage-event-single-v19 .stage-single-more-grid .stage-event-corner-category{
  left:14px!important;
  right:auto!important;
  max-width:calc(100% - 105px)!important;
}

/* The recommendation cards at the bottom of a detail page are intentionally calm:
   title + location only. */
.stage-event-single-v19 .stage-single-more-grid .stage-event-artists{
  display:none!important;
}
.stage-event-single-v19 .stage-single-more-grid .stage-event-content h3{
  margin-bottom:10px!important;
}

/* Host page integration classes applied by events.js. */
.stage-events-host-copy{display:none!important}
.stage-events-host-hero{
  margin-bottom:0!important;
  padding-bottom:0!important;
  border-bottom:0!important;
}
.stage-events-host-gap{
  margin-top:0!important;
  padding-top:0!important;
  margin-bottom:0!important;
  padding-bottom:0!important;
}
body.stage-events-has-host-hero .stage-events-wrap{
  margin-top:0!important;
  padding-top:0!important;
}
body.stage-events-has-host-hero .stage-events-hero{margin-top:0!important}

@media(max-width:650px){
  .stage-events-upcoming .stage-event-card:not(.is-featured) .stage-event-corner-category{
    left:auto!important;
    right:12px!important;
  }
  .stage-event-single-v19 .stage-single-more-grid .stage-event-corner-category{
    left:12px!important;
    right:auto!important;
  }
}


/* v2.9 — seamless Sprout canvas for the Events landing page.
   The body class is added server-side by the plugin and again at render time as a fallback. */
body.stage-events-page,
html body.stage-events-page {
  background:#f5f2f1!important;
}

/* Sprout/theme canvas wrappers: keep the whole page canvas on the same neutral grey
   as the THE STAGE Events interface, while the plugin's intentional white/dark cards
   retain their own local backgrounds. */
body.stage-events-page #page,
body.stage-events-page .site,
body.stage-events-page .site-content,
body.stage-events-page .content-area,
body.stage-events-page .site-main,
body.stage-events-page .vw-site,
body.stage-events-page .vw-site-wrapper,
body.stage-events-page .vw-page-wrapper,
body.stage-events-page .vw-content-wrapper,
body.stage-events-page .vw-content-main,
body.stage-events-page .vw-page-content,
body.stage-events-page .vw-main-content,
body.stage-events-page .vw-post-content,
body.stage-events-page .entry-content,
body.stage-events-page article.page,
body.stage-events-page main {
  background-color:#f5f2f1!important;
}

/* The Gutenberg/page wrappers around the block must not paint a white strip. */
body.stage-events-page .wp-site-blocks,
body.stage-events-page .wp-block-post-content,
body.stage-events-page .wp-block-group,
body.stage-events-page .wp-block-group__inner-container {
  background-color:transparent;
}

/* Remove only empty/structural vertical canvas gaps around the calendar. */
body.stage-events-page .entry-content > .stage-events-wrap:first-child,
body.stage-events-page .wp-block-post-content > .stage-events-wrap:first-child {
  margin-top:0!important;
}
body.stage-events-page .entry-content:has(> .stage-events-wrap),
body.stage-events-page .wp-block-post-content:has(> .stage-events-wrap) {
  padding-top:0!important;
  padding-bottom:0!important;
}

/* The plugin canvas itself uses exactly the same grey. */
body.stage-events-page .stage-events-wrap {
  background:#f5f2f1!important;
}


/* v3.0.1 — fixed NEXT ON STAGE + simplified THE STAGE date tiles */
.stage-event-datebadge .year,
.stage-single-date-stamp small{display:none!important}
.stage-event-datebadge{min-height:92px!important}
.stage-event-datebadge .month{
  margin-top:9px!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge .month{font-size:14px!important}
.stage-event-single-v19 .stage-single-more-grid .stage-event-datebadge .month{font-size:11px!important}
.stage-event-single-v19 .stage-single-date-stamp{height:112px!important}
.stage-event-single-v19 .stage-single-date-stamp span{
  margin-top:12px!important;
  font-size:17px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  color:var(--stage-red,#CC0033)!important;
}
@media(max-width:640px){
  .stage-event-single-v19 .stage-single-date-stamp{height:96px!important}
  .stage-event-single-v19 .stage-single-date-stamp span{font-size:14px!important}
}

/* v3.1.0 — unified THE STAGE mobile page rhythm.
   Desktop is intentionally unchanged.
   Mobile: full-width Event Guide hero, then a slim white gutter around content. */
@media(max-width:650px){
  /* Restore a white mobile page canvas. Older versions painted the whole page grey. */
  body.stage-events-page,
  html body.stage-events-page,
  body.stage-events-page #page,
  body.stage-events-page .site,
  body.stage-events-page .site-content,
  body.stage-events-page .content-area,
  body.stage-events-page .site-main,
  body.stage-events-page .vw-site,
  body.stage-events-page .vw-site-wrapper,
  body.stage-events-page .vw-page-wrapper,
  body.stage-events-page .vw-content-wrapper,
  body.stage-events-page .vw-content-main,
  body.stage-events-page .vw-page-content,
  body.stage-events-page .vw-main-content,
  body.stage-events-page .vw-post-content,
  body.stage-events-page .entry-content,
  body.stage-events-page article.page,
  body.stage-events-page main{
    background:#fff!important;
  }

  /* Let the plugin escape Sprout/Gutenberg's mobile side gutters. */
  body.stage-events-page .stage-events-wrap{
    position:relative!important;
    left:50%!important;
    width:100vw!important;
    max-width:100vw!important;
    margin-left:-50vw!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    background:#fff!important;
    overflow-x:hidden!important;
  }
  body.stage-events-page .stage-events-wrap::before{display:none!important}

  /* EVENT GUIDE hero = true full bleed. */
  body.stage-events-page .stage-events-hero{
    position:relative!important;
    left:0!important;
    width:100vw!important;
    max-width:100vw!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:24px!important;
    padding-right:24px!important;
  }

  /* Everything after the hero uses one consistent 14px white gutter. */
  body.stage-events-page .stage-events-toolbar,
  body.stage-events-page .stage-events-filterbar,
  body.stage-events-page .stage-events-months,
  body.stage-events-page .stage-events-weekend,
  body.stage-events-page .stage-events-upcoming,
  body.stage-events-page .stage-events-past,
  body.stage-events-page .stage-events-filter-empty,
  body.stage-events-page .stage-events-static-empty{
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin-left:14px!important;
    margin-right:14px!important;
  }

  /* Neutral THE STAGE canvas inside the white frame. */
  body.stage-events-page .stage-events-toolbar,
  body.stage-events-page .stage-events-filterbar,
  body.stage-events-page .stage-events-months,
  body.stage-events-page .stage-events-weekend,
  body.stage-events-page .stage-events-upcoming,
  body.stage-events-page .stage-events-past{
    background:#f5f2f1!important;
  }

  /* Avoid doubling the old mobile side padding on search/filter rows. */
  body.stage-events-page .stage-events-toolbar{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  body.stage-events-page .stage-events-filterbar,
  body.stage-events-page .stage-events-months{
    padding-left:14px!important;
    padding-right:14px!important;
  }

  /* Keep section contents aligned to the same inner edge. */
  body.stage-events-page .stage-events-weekend .stage-events-section-head,
  body.stage-events-page .stage-events-upcoming .stage-events-section-head,
  body.stage-events-page .stage-events-past .stage-events-section-head,
  body.stage-events-page .stage-events-past-intro,
  body.stage-events-page .stage-events-weekend-grid,
  body.stage-events-page .stage-events-upcoming .stage-events-list,
  body.stage-events-page .stage-events-list-past{
    width:100%!important;
    max-width:100%!important;
  }
}

/* v3.2.1 — white content system (fixed CSS; no escaped newline artefacts). */

/* The old v2.9 rules painted the Sprout canvas grey. Override them explicitly. */
body.stage-events-page,
html body.stage-events-page,
body.stage-events-page #page,
body.stage-events-page .site,
body.stage-events-page .site-content,
body.stage-events-page .content-area,
body.stage-events-page .site-main,
body.stage-events-page .vw-site,
body.stage-events-page .vw-site-wrapper,
body.stage-events-page .vw-page-wrapper,
body.stage-events-page .vw-content-wrapper,
body.stage-events-page .vw-content-main,
body.stage-events-page .vw-page-content,
body.stage-events-page .vw-main-content,
body.stage-events-page .vw-post-content,
body.stage-events-page .entry-content,
body.stage-events-page .wp-site-blocks,
body.stage-events-page .wp-block-post-content,
body.stage-events-page .wp-block-group,
body.stage-events-page .wp-block-group__inner-container,
body.stage-events-page article.page,
body.stage-events-page main{
  background:#fff!important;
  background-color:#fff!important;
}

body.stage-events-page .stage-events-wrap,
body.stage-events-page .stage-events-toolbar,
body.stage-events-page .stage-events-filterbar,
body.stage-events-page .stage-events-months,
body.stage-events-page .stage-events-weekend,
body.stage-events-page .stage-events-upcoming,
body.stage-events-page .stage-events-past,
body.stage-events-page .stage-events-filter-empty,
body.stage-events-page .stage-events-static-empty{
  background:#fff!important;
  background-color:#fff!important;
}

body.stage-events-page .stage-events-wrap::before{background:#fff!important}
body.stage-events-page .stage-events-toolbar{border-bottom:1px solid rgba(28,46,70,.12)!important}

/* Cards float subtly on the white editorial canvas. */
body.stage-events-page .stage-events-upcoming .stage-event-card:not(.is-featured),
body.stage-events-page .stage-events-list-past .stage-event-card{
  background:#fff!important;
  border:1px solid rgba(28,46,70,.09)!important;
  box-shadow:0 8px 24px rgba(28,46,70,.07)!important;
}
body.stage-events-page .stage-events-upcoming .stage-event-card:not(.is-featured):hover,
body.stage-events-page .stage-events-list-past .stage-event-card:hover{
  box-shadow:0 14px 34px rgba(28,46,70,.11)!important;
}
body.stage-events-page .stage-event-content{background:#fff}

@media(max-width:650px){
  /* Agreed mobile system: hero full bleed, content framed by a 14px white gutter. */
  body.stage-events-page .stage-events-wrap{
    position:relative!important;
    left:50%!important;
    width:100vw!important;
    max-width:100vw!important;
    margin-left:-50vw!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    overflow-x:hidden!important;
    background:#fff!important;
  }

  body.stage-events-page .stage-events-hero{
    position:relative!important;
    left:0!important;
    width:100vw!important;
    max-width:100vw!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:24px!important;
    padding-right:24px!important;
  }

  body.stage-events-page .stage-events-toolbar,
  body.stage-events-page .stage-events-filterbar,
  body.stage-events-page .stage-events-months,
  body.stage-events-page .stage-events-weekend,
  body.stage-events-page .stage-events-upcoming,
  body.stage-events-page .stage-events-past,
  body.stage-events-page .stage-events-filter-empty,
  body.stage-events-page .stage-events-static-empty{
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin-left:14px!important;
    margin-right:14px!important;
    background:#fff!important;
  }

  body.stage-events-page .stage-events-toolbar{padding-left:14px!important;padding-right:14px!important}
  body.stage-events-page .stage-events-filterbar,
  body.stage-events-page .stage-events-months{padding-left:14px!important;padding-right:14px!important}

  /* NEXT ON STAGE: picture above, text below — title can never collide with date. */
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured{
    display:block!important;
    min-height:0!important;
    background:#fff!important;
    color:#1c2e46!important;
    border:1px solid rgba(28,46,70,.09)!important;
    box-shadow:0 10px 28px rgba(28,46,70,.10)!important;
    overflow:hidden!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image{
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:100%!important;
    aspect-ratio:16/10!important;
    min-height:0!important;
    height:auto!important;
    background:#1c2e46!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image::after{
    background:linear-gradient(0deg,rgba(8,18,31,.30),rgba(8,18,31,0) 52%)!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image img{
    width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important;object-position:center!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge{
    right:14px!important;top:14px!important;width:76px!important;height:84px!important;
    background:#fff!important;color:#1c2e46!important;box-shadow:0 5px 18px rgba(8,18,31,.16)!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge .day,
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-datebadge .month{
    color:#1c2e46!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content{
    position:relative!important;z-index:2!important;display:block!important;width:100%!important;min-height:0!important;
    padding:20px 18px 22px!important;background:#fff!important;color:#1c2e46!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-topline{
    display:flex!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:wrap!important;gap:8px!important;margin:0 0 10px!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-kicker{
    background:#CC0033!important;color:#fff!important;padding:6px 8px!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-tags{color:rgba(28,46,70,.58)!important}
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content h3{
    margin:0 0 10px!important;color:#1c2e46!important;font-size:clamp(39px,12vw,54px)!important;line-height:.88!important;letter-spacing:0!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content h3 a{color:#1c2e46!important}
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-artists{
    margin:0 0 9px!important;color:#CC0033!important;font-size:14px!important;line-height:1.35!important;font-weight:700!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-meta,
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-meta span{
    color:#4d5661!important;font-size:13px!important;line-height:1.4!important;
  }
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content p{display:none!important}
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-actions{margin-top:14px!important}
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-more{color:#1c2e46!important}
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-ticket{background:#CC0033!important;color:#fff!important}
}


/* v3.2.2 — Desktop Next On Stage regression fix.
   The mobile image/text split remains confined to <=768px. */
@media (min-width: 769px) {
  .tse-next-card,
  .tse-feature-card,
  .tse-next,
  .tse-feature {
    position: relative !important;
  }

  /* Known feature-card structures: restore overlay content on desktop. */
  .tse-next-card .tse-card-content,
  .tse-next-card .tse-content,
  .tse-feature-card .tse-card-content,
  .tse-feature-card .tse-content,
  .tse-next .tse-card-content,
  .tse-next .tse-content,
  .tse-feature .tse-card-content,
  .tse-feature .tse-content {
    position: absolute !important;
    inset: 0 !important;
    z-index: 3 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    width: 100% !important;
    max-width: none !important;
    padding: clamp(28px,4vw,58px) !important;
    color: #fff !important;
    background: linear-gradient(90deg, rgba(7,13,22,.90) 0%, rgba(7,13,22,.70) 42%, rgba(7,13,22,.12) 78%, rgba(7,13,22,0) 100%) !important;
  }

  .tse-next-card .tse-card-content *,
  .tse-next-card .tse-content *,
  .tse-feature-card .tse-card-content *,
  .tse-feature-card .tse-content *,
  .tse-next .tse-card-content *,
  .tse-next .tse-content *,
  .tse-feature .tse-card-content *,
  .tse-feature .tse-content * {
    visibility: visible !important;
  }

  .tse-next-card h2,.tse-next-card h3,.tse-next-card h4,
  .tse-feature-card h2,.tse-feature-card h3,.tse-feature-card h4,
  .tse-next h2,.tse-next h3,.tse-next h4,
  .tse-feature h2,.tse-feature h3,.tse-feature h4 {
    color:#fff !important;
  }
}

/* v3.2.3 — precise desktop featured-card fix.
   v3.2.1 made every .stage-event-content white, which caused white text on a white
   panel in the desktop NEXT ON STAGE card. Normal cards stay white; the featured
   desktop card returns to the original transparent overlay on the full image. */
@media (min-width: 651px) {
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured {
    position:relative!important;
    display:block!important;
    min-height:610px!important;
    overflow:hidden!important;
    background:#1c1719!important;
    color:#fff!important;
    border:0!important;
    box-shadow:none!important;
  }

  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image {
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:610px!important;
    margin:0!important;
    background:#1c1719!important;
  }

  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image img {
    width:100%!important;
    height:100%!important;
    min-height:610px!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-image::after {
    content:""!important;
    position:absolute!important;
    inset:0!important;
    background:linear-gradient(90deg,rgba(15,11,13,.92) 0%,rgba(15,11,13,.73) 38%,rgba(15,11,13,.22) 72%,rgba(15,11,13,.05) 100%),linear-gradient(0deg,rgba(15,11,13,.72),transparent 48%)!important;
  }

  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content {
    position:relative!important;
    z-index:2!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    width:min(690px,70%)!important;
    min-height:610px!important;
    padding:56px 48px!important;
    background:transparent!important;
    background-color:transparent!important;
    color:#fff!important;
  }

  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content h3,
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content h3 a,
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-more {
    color:#fff!important;
  }

  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-artists,
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-meta,
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-meta span,
  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-content p {
    color:rgba(255,255,255,.82)!important;
  }

  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-kicker {
    background:rgba(255,255,255,.48)!important;
    color:#fff!important;
  }

  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-tags {
    color:rgba(255,255,255,.62)!important;
  }

  body.stage-events-page .stage-events-weekend-grid .stage-event-card.is-featured .stage-event-ticket {
    background:#CC0033!important;
    color:#fff!important;
  }
}
