/* Terracotta closing band: Buy ticket, newsletter signup (Fluent Forms, restyled here) and the footer. */
.sc-end { background: var(--sc-terracotta); color: var(--sc-yellow); }
.sc-end :focus-visible { outline-color: var(--sc-yellow); } /* the default terracotta ring would vanish on the band */
.sc-newsletter { padding: clamp(3rem, 5.5vw, 4.75rem) 0 clamp(3rem, 7vw, 6rem); }
.sc-newsletter__inner { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; }
@media (min-width: 900px) {
	.sc-newsletter__inner { grid-template-columns: minmax(0, 27rem) minmax(0, 26.5rem); justify-content: center; column-gap: clamp(2rem, 4.5vw, 4.5rem); align-items: start; }
	.sc-newsletter__form { padding-top: 4.5rem; }
}
.sc-newsletter__title { font-weight: 700; font-size: var(--step-3); line-height: 0.83; letter-spacing: 0.02em; text-wrap: balance; color: var(--sc-yellow); margin: 1.75rem 0 1.25rem; }
.sc-newsletter__sub { font-size: clamp(1rem, 0.9rem + 0.3vw, 1.21rem); line-height: 1.75; max-width: 22rem; margin: 0; }

.sc-newsletter .fluentform .ff-el-group { margin-bottom: 1.25rem; }
.sc-newsletter .fluentform .ff-el-input--label label { margin: 0 0 0.4rem 1.75rem; color: var(--sc-yellow); font: 500 clamp(1.125rem, 0.9rem + 0.6vw, 1.55rem)/1.2 var(--font-body); }
.sc-newsletter .fluentform .ff-el-input--label.ff-el-is-required.asterisk-right label::after { color: var(--sc-yellow); }
.sc-newsletter .fluentform .ff-el-form-control {
	width: 100%; height: 4rem; padding: 0 1.75rem; border: 0; border-radius: var(--pill); background: var(--sc-bg);
	color: var(--sc-terracotta); font: 500 clamp(1.125rem, 0.9rem + 0.6vw, 1.55rem)/1 var(--font-body); box-shadow: none;
}
.sc-newsletter .fluentform .ff-el-form-control::placeholder { color: #868685; opacity: 1; }
.sc-newsletter .fluentform .ff-el-form-control:focus { outline: 3px solid var(--sc-yellow); outline-offset: 2px; }
.sc-newsletter .fluentform .ff-el-tc .ff_tc_label { display: flex; align-items: center; gap: 0.75rem; margin: 0; padding: 0; color: var(--sc-yellow); font-size: 0.875rem; cursor: pointer; }
.sc-newsletter .fluentform .ff-el-tc .ff_tc_checkbox { display: flex; flex: none; width: auto; margin: 0; padding: 0; }
.sc-newsletter .fluentform .ff-el-tc .ff_t_c { margin: 0; padding: 0; }
.sc-newsletter .fluentform .ff-el-tc .ff_t_c p { margin: 0; color: inherit; }
.sc-newsletter .fluentform .ff-el-form-check-input {
	-webkit-appearance: none; appearance: none; position: static; top: auto; flex: none; width: 1.4rem; height: 1.4rem; margin: 0;
	border: 2px solid var(--sc-yellow); border-radius: 50%; background: transparent; cursor: pointer;
}
.sc-newsletter .fluentform .ff-el-form-check-input:checked { background: radial-gradient(circle, var(--sc-yellow) 0 42%, transparent 48%); }
.sc-newsletter .fluentform .ff-el-form-check-input:focus-visible { outline: 3px solid var(--sc-yellow); outline-offset: 2px; }
.sc-newsletter .fluentform .ff-btn-submit {
	min-width: 12rem; height: 4rem; padding: var(--nudge) 2rem 0; border: 0; border-radius: var(--pill);
	background: var(--sc-bg) !important; color: var(--sc-terracotta) !important; font: 700 clamp(1.25rem, 1rem + 0.6vw, 1.55rem)/1 var(--font-body); cursor: pointer;
}
.sc-newsletter .fluentform .ff-btn-submit:hover { background: var(--sc-white) !important; }
.sc-newsletter .fluentform .error, .sc-newsletter .fluentform .text-danger { margin: 0.4rem 0 0 1.75rem; color: var(--sc-white); font-size: 0.95rem; }
.sc-newsletter .ff-message-success { padding: 1.25rem 1.75rem; border: 0; border-radius: 1.5rem; background: var(--sc-bg); color: var(--sc-terracotta); box-shadow: none; font-size: 1.125rem; }

.sc-footer { padding: 0 0 clamp(2.5rem, 5vw, 4rem); color: var(--sc-bg); }
.sc-footer__logo { display: block; width: 4.75rem; height: auto; margin-bottom: 1rem; }
.sc-footer__hosted { max-width: 60rem; margin: 0 0 0.75rem; font-size: clamp(1rem, 0.9rem + 0.3vw, 1.21rem); }
.sc-footer__meta { display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; margin: 0; font-size: 0.9375rem; opacity: 0.85; }
.sc-footer a { color: inherit; }
.sc-footer__archive { display: inline-block; margin-bottom: 0.25rem; color: var(--sc-yellow) !important; font-family: var(--font-display); font-weight: 700; font-size: 1.125rem; letter-spacing: 0.02em; text-decoration: none; }
.sc-footer__archive:hover { text-decoration: underline; text-underline-offset: 0.2em; }
