/*
---------------------------------------------------
Competitions
---------------------------------------------------
*/

.competition-section { background: #fff; color: #17191c; }
.competition-section > .component-inner > .container,
.competition-featured-shows > .component > .component-inner > .container { max-width: 1280px; }
.competition-section .text { color: inherit; }
.competition-section.competition-intro { padding: 42px 0 34px; text-align: center; }
.competition-intro .info .text { text-align: center; }
.competition-intro h1 { margin: 0 0 8px; color: #d7001f; font-family: var(--h1-typography_font-name); font-size: 56px; font-weight: 700; line-height: 1.1; text-transform: uppercase; }
.competition-intro p { margin: 0; font-size: 18px; }
.competition-section.competition-main { padding: 0 0 28px; }
.competition-main .component-main { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr); align-items: start; gap: 44px; margin: 0; }
.competition-main .component-main > .item { width: auto; max-width: none; min-width: 0; margin: 0; padding: 0; }
.competition-prize .competition-eyebrow { margin: 0 0 8px; color: #d7001f; font-size: 18px; font-weight: 700; text-transform: uppercase; }
.competition-prize h2 { margin: 0 0 12px; color: #111; font-family: var(--h2-typography_font-name); font-size: 50px; font-weight: 700; line-height: 1.05; text-transform: uppercase; }
.competition-prize h2 span { display: block; margin-top: 6px; font-size: 28px; line-height: 1.15; }
.competition-prize .competition-tagline { margin: 0 0 20px; font-size: 16px; line-height: 1.5; }
.competition-poster { margin: 0 0 16px; }
.competition-poster img { display: block; width: 100%; max-width: 520px; height: auto; }
.competition-facts { margin: 0; font-size: 16px; line-height: 1.6; }
.competition-facts > div { display: flex; flex-wrap: wrap; column-gap: 5px; }
.competition-facts dt { font-weight: 700; }
.competition-facts dd { margin: 0; }

.competition-entry { padding: 28px !important; border: 1px solid #e7e9eb; border-radius: 3px; background: #f1f2f3; }
.competition-entry #mc_embed_signup { width: 100%; min-width: 0; clear: none; background: transparent; color: #17191c; font: inherit; }
.competition-entry #mc_embed_signup form { display: block; margin: 0; padding: 0; text-align: left; }
.competition-entry #mc_embed_signup_scroll { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 18px; }
.competition-entry #mc_embed_signup_scroll > * { grid-column: 1 / -1; min-width: 0; }
.competition-entry #mc_embed_signup_scroll > .mc-field-group:has(> #mce-FNAME),
.competition-entry #mc_embed_signup_scroll > .mc-field-group:has(> #mce-LNAME) { grid-column: auto; }
.competition-entry #mc_embed_signup h2 { margin: 0 0 4px; color: #d7001f; font-family: var(--h2-typography_font-name); font-size: 28px; font-weight: 700; line-height: 1.2; text-transform: uppercase; }
.competition-entry #mc_embed_signup .indicates-required { margin: 0 0 14px; color: #4b5055; font-size: 12px; text-align: right; }
.competition-entry #mc_embed_signup .asterisk { position: static; top: auto; color: #d7001f; font-size: inherit; font-weight: 700; }
.competition-entry #mc_embed_signup .mc-field-group { float: none; width: 100%; min-height: 0; margin: 0 0 18px; padding: 0; }
.competition-entry #mc_embed_signup .mc-field-group label { display: block; margin: 0 0 6px; font-size: 15px; font-weight: 500; line-height: 1.4; }
.competition-entry #mc_embed_signup .mc-field-group input:not([type=checkbox]) { display: block; box-sizing: border-box; width: 100%; min-width: 0; height: 48px; margin: 0; padding: 10px 12px; border: 1px solid #bac0c6; border-radius: 2px; background: #fff; color: #17191c; font: inherit; font-size: 16px; text-indent: 0; }
.competition-entry #mc_embed_signup input:focus-visible,
.competition-entry #mc_embed_signup a:focus-visible { outline: 2px solid #17191c; outline-offset: 3px; }
.competition-entry #mc_embed_signup .input-group { display: block; margin: 8px 0 20px; }
.competition-entry #mc_embed_signup .input-group strong,
.competition-entry #mc_embed_signup .content__gdpr > label { display: block; margin: 0 0 8px; font-size: 15px; font-weight: 700; }
.competition-entry #mc_embed_signup .mc-field-group.input-group ul { margin: 0; padding: 0; list-style: none; }
.competition-entry #mc_embed_signup .mc-field-group.input-group ul li { display: flex; align-items: flex-start; gap: 10px; margin: 0; padding: 3px 0; }
.competition-entry #mc_embed_signup .mc-field-group.input-group ul label { flex: 1; margin: 0; cursor: pointer; }
.competition-entry #mc_embed_signup .mc-field-group input[type=checkbox] { display: inline-block; flex: 0 0 18px; width: 18px; height: 18px; min-height: 0; margin: 2px 0 0; padding: 0; accent-color: #d7001f; cursor: pointer; }
.competition-entry #mc_embed_signup #mergeRow-gdpr { margin: 0 0 16px; }
.competition-entry #mc_embed_signup .content__gdpr p,
.competition-entry #mc_embed_signup .content__gdprLegal p { margin: 0 0 12px; font-size: 14px; line-height: 1.5; }
.competition-entry #mc_embed_signup .content__gdprLegal p { margin-bottom: 0; }
.competition-entry #mc_embed_signup .mc_fieldset { margin: 0 0 16px; padding: 0; border: 0; }
.competition-entry #mc_embed_signup .mc_fieldset label { display: flex; align-items: flex-start; gap: 10px; margin: 0; cursor: pointer; }
.competition-entry #mc_embed_signup a { display: inline; color: #b4001b; text-decoration: underline; text-underline-offset: 3px; }
.competition-entry #mc_embed_signup .clear { clear: none; }
.competition-entry #mc_embed_signup div#mce-responses { float: none; width: 100%; margin: 0; padding: 0; }
.competition-entry #mc_embed_signup div.response { float: none; width: 100%; margin: 0 0 16px; padding: 0; font-size: 15px; }
.competition-entry #mc_embed_signup div.mce_inline_error { margin: 5px 0 0; padding: 0; background: transparent; color: #b4001b; font-size: 14px; line-height: 1.4; }
.competition-entry #mc_embed_signup input.mce_inline_error { border-color: #b4001b; }
.competition-entry #mc_embed_signup .button { display: block; box-sizing: border-box; width: 100%; height: auto; min-height: 50px; margin: 0; padding: 12px 20px; border: 1px solid #d7001f; border-radius: 2px; background: #d7001f; color: #fff; font: inherit; font-size: 18px; font-weight: 700; line-height: 1.3; white-space: normal; cursor: pointer; }
.competition-entry #mc_embed_signup .button:hover { border-color: #b4001b; background: #b4001b; }

.competition-section.competition-terms { padding: 0 0 44px; }
.competition-terms-panel { background: #f1f2f3; border-radius: 2px; }
.competition-terms-panel summary { position: relative; padding: 20px 60px 20px 24px; font-size: 18px; font-weight: 700; line-height: 1.4; list-style: none; cursor: pointer; }
.competition-terms-panel summary::-webkit-details-marker { display: none; }
.competition-terms-panel summary::after { content: "+"; position: absolute; right: 24px; top: 50%; transform: translateY(-50%); font-size: 28px; font-weight: 500; }
.competition-terms-panel[open] summary::after { content: "\2212"; }
.competition-terms-panel summary:focus-visible { outline: 2px solid #17191c; outline-offset: 3px; }
.competition-terms-copy { padding: 0 24px 24px; font-size: 16px; line-height: 1.6; }
.competition-terms-copy ol { margin-bottom: 0; }
.competition-terms-copy li { margin-bottom: 8px; }

.competition-featured-shows .listing-pods { margin-right: -15px; margin-left: -15px; }

@media (max-width: 1199px) {
    .competition-main .component-main { gap: 28px; }
    .competition-entry { padding: 24px !important; }
    .competition-prize h2 { font-size: 42px; }
    .competition-prize h2 span { font-size: 24px; }
}

@media (max-width: 991px) {
    .competition-main .component-main { grid-template-columns: minmax(0, 1fr); gap: 28px; }
    .competition-poster img { max-width: 440px; }
    .competition-intro h1 { font-size: 46px; }
}

@media (max-width: 575px) {
    .competition-section > .component-inner > .container,
    .competition-featured-shows > .component > .component-inner > .container { padding-right: 20px; padding-left: 20px; }
    .competition-section.competition-intro { padding: 28px 0; }
    .competition-intro h1 { font-size: 36px; }
    .competition-intro p { font-size: 16px; }
    .competition-prize h2 { font-size: 38px; }
    .competition-prize h2 span { font-size: 22px; }
    .competition-entry { padding: 20px !important; }
    .competition-entry #mc_embed_signup_scroll { grid-template-columns: minmax(0, 1fr); }
    .competition-entry #mc_embed_signup h2 { font-size: 26px; }
    .competition-entry #mc_embed_signup .mc-field-group.input-group ul li,
    .competition-entry #mc_embed_signup .mc_fieldset label { min-height: 32px; }
    .competition-section.competition-terms { padding-bottom: 32px; }
    .competition-terms-panel summary { padding: 18px 44px 18px 18px; font-size: 16px; }
    .competition-terms-panel summary::after { right: 18px; }
    .competition-terms-copy { padding: 0 18px 20px; }
}
