:root {
  --brand-color: #226594;
  --alert-bg-color: #f15a2b;
  --alert-text-color: #ffffff;
  --alert-border-color: #f15a2b;
  --alert-border-width: 2px;
  --form-container-bg-color: #ffffff;
  --form-text-color: #226594;
  --label-text-color: #226594;
  --input-bg-color: #ffffff;
  --input-border-color: #ccc;
  --input-border-radius: 0;
  --input-border-width: 1px;
  --input-height: 46px;
  --input-focus-bg-color: #ffffff;
  --input-focus-border-color: #f69320;
  --input-focus-text-color: #226594;
  --input-padding: 14px 40px 14px 15px;
  --input-text-color: #226594;
  --radio-button-fill-color: #226594;
  --radio-button-text-color: #ffffff;
  --checkbox-bg-color: #fff;
  --checkbox-border-color: #226594;
  --checkbox-fill-color: #226594;
  --btn-border-color: #226594;
  --btn-border-radius: 0;
  --btn-border-width: 2px;
  --btn-hover-bg-color: #fff;
  --btn-hover-text-color: #226594;
  --btn-text-color: #fff;
  --font-family: proxima-nova-condensed, sans-serif;
  --font-size: 14px;
  --letter-spacing: 0;
  --link-color: #226594
}
*,
*:before,
*:after { box-sizing: border-box }
body { font-family: var(--font-family), Arial, sans-serif; margin: 0; padding: 0; background: #fff; color: var(--form-text-color); text-wrap: balance }
a { color: var(--link-color); text-decoration: underline }
a:hover { opacity: .8 }
img { display: block; height: auto; width: 100% }
::placeholder { color: var(--input-text-color); opacity: .7 }
.form-container { display: none; margin: 0 auto; background: transparent; max-width: 1080px }
.layout-enhanced-hero { text-align: center; margin-bottom: 1.5rem }
.layout-enhanced-hero h1 { margin: 0 }
.layout-enhanced-hero img { width: 100%; height: auto; max-width: none !important }
.body-copy { padding: 0 2rem }
.body-copy h1 { color: var(--brand-color); font-size: 2.5rem; font-weight: 700; text-align: center; margin-bottom: 20px }
.body-copy p,
.offer-message { color: var(--brand-color); text-align: center }
.intro-copy,
.offer-copy { margin: 0 }
.intro-copy { line-height: 1; text-transform: uppercase }
.intro-copy span { display: block }
.intro-copy .row1 { font-size: clamp(1.5rem, 4.1vw, 4rem); font-weight: 500 }
.intro-copy .row2 { font-size: clamp(3rem, 8.5vw, 7rem); font-weight: 800; color: #f15a2b; margin-bottom: .08em }
.intro-copy .row3 { font-size: clamp(1.25rem, 3vw, 2rem); letter-spacing: .05em }
.sf-dynamic-form { display: grid; grid-template-columns: 100%; max-width: 100%; gap: 1rem; grid-auto-rows: min-content; color: var(--form-text-color); font-size: 1.1rem; line-height: 1.4; padding: 1.5rem 2rem }
.wrapper { min-height: 100vh }
.sf-form-label { display: block; margin: 0 0 5px; font-weight: 500; color: var(--form-text-color); text-transform: uppercase }
.age-gate-birthday-input,
.sf-form-input { width: 100%; padding: var(--input-padding); border: var(--input-border-width, 1px) solid var(--input-border-color); border-radius: var(--input-border-radius); font-size: var(--font-size); font-weight: 400; letter-spacing: var(--letter-spacing); color: var(--input-text-color); background-color: var(--input-bg-color); height: var(--input-height); line-height: normal; max-width: 100%; box-shadow: inset 0 0 6px #ccc; transition: all .5s ease-in-out }
.age-gate-birthday-input:focus-visible,
.sf-form-input:focus-visible { background-color: #fff; color: var(--input-text-color); border: var(--input-border-width) solid var(--input-focus-border-color); box-shadow: inset 0 0 6px var(--input-focus-border-color); outline: none }
select.sf-form-input { appearance: none; cursor: pointer; padding-top: 0; padding-bottom: 0; display: flex; align-items: center; line-height: 1.5; height: var(--input-height); background-color: var(--input-bg-color) !important }
.sf-select-container { display: grid; grid-template-areas: "select"; align-items: center }
.sf-select-container:after { content: ""; clip-path: polygon(50% 48%, 84% 14%, 100% 30%, 50% 80%, 0 30%, 16% 14%); justify-self: end; background-color: var(--input-text-color); height: .5em; margin-right: 1.8rem; width: .8em }
select.sf-form-input,
.sf-select-container:after { grid-area: select }
select.sf-form-input:disabled { opacity: .5 }
select.sf-form-input option { background-color: #fff; padding: 8px }
select.sf-form-input .invalid { opacity: .7 }
.age-gate-birthday-input { margin-bottom: 1.5rem }
.age-gate-birthday-input,
.sf-form-input[type=date] { cursor: text; width: 100%; max-width: 100%; padding-right: 20px; -webkit-appearance: none }
.age-gate-birthday-input:invalid,
.sf-form-input[type=date]:invalid { opacity: .7 }
input[type=date]::-webkit-date-and-time-value { text-align: left }
.age-gate-birthday-input::-webkit-calendar-picker-indicator,
input[type=date].sf-form-input::-webkit-calendar-picker-indicator { cursor: text }
@supports (-webkit-touch-callout: none) { .age-gate-birthday-input,
.sf-form-input[type=date] { min-width: 0 }
}
.age-gate-submit:focus-visible,
.sf-submit-btn:focus-visible,
.sf-form-checkbox:focus-visible+.checkmark,
.sf-explicit-rules-acknowledgement-checkbox-container:focus-visible .checkmark,
.sf-explicit-optin-checkbox-container:focus-visible .checkmark { outline: var(--input-border-width) solid var(--input-focus-border-color); outline-offset: var(--input-border-width) }
.age-gate-submit,
.sf-submit-btn { display: block; max-width: 300px; width: 100%; padding: 15px 30px; margin: 0 auto; background: var(--brand-color); color: var(--btn-text-color); border: var(--btn-border-width) solid var(--btn-border-color); border-radius: var(--btn-border-radius); font-size: 18px; font-weight: 500; text-transform: uppercase; cursor: pointer; transition: all .3s; -webkit-tap-highlight-color: transparent }
.age-gate-submit:hover,
.sf-submit-btn:hover { background: var(--btn-hover-bg-color); color: var(--btn-hover-text-color) }
.sf-radio-select { align-items: stretch; display: grid; gap: .75rem; grid-template-columns: 1fr; padding-block-start: .5rem }
.sf-radio-select input[type=radio] { appearance: none; position: absolute; width: 1px; height: 1px; opacity: .01; pointer-events: none }
.sf-radio-select input:focus { outline: none }
.sf-radio-select .focus { border-radius: 16px }
.sf-radio-select .option { position: relative }
.sf-radio-select .option-label { align-items: center; display: flex; justify-content: center; height: 100%; font-size: 1rem; border: 2px solid var(--input-border-color); border-radius: var(--input-border-radius); overflow: hidden; padding: .5rem; transition: all .5s ease-in-out; width: 100%; cursor: pointer; min-height: 50px; background-color: var(--radio-button-bg-color, transparent); text-align: center }
.sf-radio-select input[type=radio]:focus-visible+.option-label { border-color: var(--input-focus-border-color); box-shadow: inset 0 0 6px var(--input-focus-border-color); outline: none }
.sf-radio-select input[type=radio]:checked+.option-label,
.sf-radio-select .option-label:hover { background-color: var(--radio-button-fill-color, var(--btn-border-color, var(--brand-color))); color: var(--radio-button-text-color, var(--btn-text-color)) }
.sf-radio-select-container { place-self: center; width: 100%; padding: 0 }
.sf-radio-select-label { display: block; text-align: center; font-weight: 500; color: var(--form-text-color); margin-bottom: 15px; font-size: 1rem }
legend.sf-radio-select-label { font-size: 1.2rem }
.acknowledge { display: grid; gap: 1em; font-size: 1rem; margin-top: .5rem }
.acknowledge-row label,
.acknowledge-row input { cursor: pointer; display: grid }
.acknowledge-row label { gap: .65em; grid-template-columns: 1em auto; align-items: start; font-family: var(--font-family-input); line-height: 1.1; text-align: left }
.acknowledge-row input { place-content: center; appearance: none; background-color: var(--checkbox-bg-color); border: min(var(--input-border-width), .15rem) solid var(--checkbox-border-color); border-radius: min(var(--input-border-radius), 10%); margin: 2px 0 0; height: 1.2em; width: 1.2em; transform: translateY(-.075em) }
.acknowledge-row input:before { content: ""; clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%); box-shadow: inset 1em 1em var(--checkmark-color); background-color: #fff; height: .6em; width: .6em; transform: scale(0); transform-origin: bottom left; transition: .12s transform ease-in-out }
.acknowledge-row input:checked { background-color: var(--checkbox-fill-color); border-color: var(--checkbox-fill-color) }
.acknowledge-row input:checked:before { transform: scale(1) }
body:not([data-widget=focusHighlighter]) .sf-dynamic-form a:focus-visible,
body:not([data-widget=focusHighlighter]) .age-gate-modal a:focus-visible,
body:not([data-widget=focusHighlighter]) .sf-dynamic-form input:is([type=checkbox]):focus-visible,
body:not([data-widget=focusHighlighter]) .age-gate-submit:focus-visible,
body:not([data-widget=focusHighlighter]) .sf-submit-btn:focus-visible { border-radius: var(--input-border-radius); outline: max(var(--input-border-width), 2px) solid var(--input-focus-border-color); outline-offset: max(var(--input-border-width), .12rem) }
.sf-alert { position: relative; background: var(--alert-bg-color); padding: 1rem 3.5rem 1rem 1rem; margin-top: 2.5rem; color: var(--alert-text-color); font-size: 1rem; text-align: center }
.sf-alert a { color: var(--alert-text-color); text-decoration: underline }
.sf-alert a:hover { color: var(--alert-text-color); opacity: .8 }
.sf-closebtn { color: var(--alert-text-color); font-size: 24px; font-weight: 700; cursor: pointer; position: absolute; top: 10px; right: 15px; line-height: 26px; background: #0003; border-radius: 50%; width: 30px; height: 30px }
.sf-closebtn:hover { opacity: .7; background: #0006 }
.sf-spinner-container { position: fixed; inset: 0; z-index: 9050; background-color: #ffffffbf; display: none }
.sf-spinner { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 3rem; height: 3rem; border: 4px solid var(--input-border-color, #dddbda); border-top: 4px solid var(--form-text-color, #0176d3); border-radius: 50%; animation: sf-spin 1s linear infinite }
.footer { background-color: #226594; color: #fff; padding: 2rem }
.footer-nav { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 10px 15px; text-align: center }
.footer-nav a { transition: opacity .3s ease }
.footer-nav a:hover { opacity: .7 }
.footer-nav img { width: auto }
.footer-nav .row-1-item img { height: 30px }
.footer-nav .row-2-item img { height: 40px }
.footer-nav .break { display: none }
.abbreviated-rules { margin: 30px auto 0; max-width: 900px; text-align: center }
.abbreviated-rules p { font-size: calc(1.1rem - 2pt); line-height: 1.4; color: #fff; font-family: var(--font-family), Arial, sans-serif; word-wrap: break-word }
.abbreviated-rules a { color: #fff; text-decoration: underline; word-break: break-all }
.abbreviated-rules a:hover { opacity: .8 }
.abbreviated-rules .rules-emphasis { font-weight: 700; text-transform: uppercase }
.age-gate-modal-container { display: flex; align-items: center; justify-content: center; position: fixed; top: 0; left: 0; z-index: 10000; width: 100%; height: 100%; background: #000c; padding: 20px; box-sizing: border-box }
.age-gate-modal { background: #fff; border-radius: 8px; max-width: 400px; padding: 30px; text-align: center }
.age-gate-modal a { color: var(--form-text-color); text-decoration: underline }
.age-gate-modal h2,
.age-gate-modal p { color: var(--form-text-color); margin-bottom: 15px }
.age-gate-modal label { display: block; text-align: left; margin-bottom: 5px; font-weight: 500; color: var(--form-text-color); text-transform: uppercase }
@media(min-width:500px) { body { padding: 40px 0; text-wrap: pretty }
.body-copy { padding: 0 }
.layout-enhanced-hero { margin-bottom: 2.5rem }
.layout-enhanced-hero img { width: 100%; height: auto; border-radius: 16px }
.sf-dynamic-form { grid-template-columns: 1fr 1fr; gap: 2rem 2rem; font-size: 1.25rem; max-width: 80%; margin: 0 auto; padding: 2.5rem 2.5rem 2rem }
.radio,
.acknowledge { grid-column: 1/span 2 }
.acknowledge { justify-items: center; margin-top: 0 }
.acknowledge-row label { align-items: center }
.sf-radio-select-container { padding: 0 1.5rem }
.sf-radio-select { grid-template-columns: repeat(4, 1fr) }
.sf-radio-select .option-label { min-height: 80px !important; height: 80px !important }
.footer { border-radius: 0 0 16px 16px; padding: 3.5rem 2rem 2.5rem }
.footer-nav { gap: 10px 30px }
.footer-nav .row-1-item img { height: 40px }
.footer-nav .row-2-item img { height: 60px }
.footer-nav .break { display: initial; flex-basis: 100%; height: 0 }
.abbreviated-rules { margin: 50px auto 0 }
}
@keyframes sf-spin { 0% { transform: translate(-50%, -50%) rotate(0) }
to { transform: translate(-50%, -50%) rotate(360deg) }
}
