/* Dark next-event band. Values measured from the public .swpe-dark band (31256/33870/31546); all selectors stay inside the root. */
.swb-next-cta {
 --swb-next-bg:linear-gradient(112deg,#32271F,#47372B); --swb-next-cta:#A43704; --swb-next-cta-d:#873003;
 box-sizing:border-box; width:100%; min-width:0; margin:0; padding:64px 0; background:#47372B; background-image:var(--swb-next-bg); color:#fff;
 font-family:-apple-system,system-ui,"Helvetica Neue","Segoe UI","Hiragino Kaku Gothic ProN","Hiragino Sans",Arial,Meiryo,sans-serif;
 font-size:16px; font-weight:400; line-height:1.75; letter-spacing:.8px; text-align:start; max-width:none; text-wrap:wrap;
}
.swb-next-cta.is-solid {--swb-next-bg:none;}
.swb-next-cta * {box-sizing:border-box;}
.swb-next-cta .swb-next-cta__inner {width:100%; min-width:0; max-width:1160px; margin:0 auto; padding:0 24px;}
.swb-next-cta :is(h2,h3).swb-next-cta__heading {margin:10px 0 12px; padding:0; border:0; background:none; color:#fff; font-size:30px; font-weight:800; line-height:1.45; letter-spacing:.8px; text-align:center; text-wrap:wrap;}
.swb-next-cta .swb-next-cta__heading::before,.swb-next-cta .swb-next-cta__heading::after {content:none;}
.swb-next-cta p.swb-next-cta__lead {max-width:780px; margin:0 0 16px; padding:0; color:rgba(255,255,255,.82); font-size:16px; font-weight:400; line-height:1.75; text-align:center; text-wrap:wrap;}
.swb-next-cta .swb-next-cta__actions {display:flex; flex-wrap:wrap; justify-content:center; gap:20px; margin:30px 0 0; padding:0;}
.swb-next-cta a.swb-next-cta__button {display:inline-flex; flex-direction:column; align-items:center; box-sizing:border-box; padding:19px 34px; border:1px solid #fff; border-radius:8px; background:transparent; color:#fff; font-size:16px; font-weight:800; line-height:1.45; letter-spacing:.8px; text-align:center; text-decoration:none; transition:color 150ms,border-color 150ms,background-color 150ms;}
.swb-next-cta a.swb-next-cta__button.is-primary {background:var(--swb-next-cta); border-color:#fff;}
.swb-next-cta a.swb-next-cta__button.is-primary:hover {background:var(--swb-next-cta-d); text-decoration:underline; text-underline-offset:4px;}
.swb-next-cta a.swb-next-cta__button.is-ghost:hover {background:rgba(255,255,255,.12);}
.swb-next-cta a.swb-next-cta__button small {display:block; margin:7px 0 0; font-size:13px; font-weight:500; line-height:1.6; opacity:.85; color:inherit;}
.swb-next-cta a.swb-next-cta__button:focus-visible {outline:3px solid #fff; outline-offset:5px;}
@media(prefers-reduced-motion:reduce){.swb-next-cta a.swb-next-cta__button {transition:none;}}
@media(max-width:900px){.swb-next-cta :is(h2,h3).swb-next-cta__heading {font-size:23px;}}
@media(max-width:900px){.swb-next-cta a.swb-next-cta__button {width:100%;}}
@media(min-width:901px){.swb-next-cta.is-compact {padding-block:48px;}}
.swb-next-cta.is-compact p.swb-next-cta__lead {max-width:960px; text-align:left;}
/* Narrow phones: match the current 33870/31546 heading (18px, no mid-word break); overflow-wrap keeps a very long heading inside the box. */
@media(max-width:600px){.swb-next-cta :is(h2,h3).swb-next-cta__heading {font-size:18px; word-break:keep-all; overflow-wrap:anywhere;}}

/* Opt-in line wrapping for the three approved CTA bands. */
.swb-next-cta.cta-linewrap :is(h2,h3).swb-next-cta__heading {text-wrap:balance;}
.swb-next-cta.cta-linewrap p.swb-next-cta__lead {word-break:normal;word-break:auto-phrase;text-wrap:pretty;}
.swb-next-cta.cta-linewrap a.swb-next-cta__button small {word-break:normal;word-break:auto-phrase;text-wrap:balance;}
@media(max-width:600px){.swb-next-cta.cta-linewrap-aps :is(h2,h3).swb-next-cta__heading {word-break:keep-all;word-break:auto-phrase;overflow-wrap:anywhere;}}
