:root {
  /* Colors */
  --color-brand: #470a68;
  --color-accent-primary: #a75fa6;
  --color-accent-secondary: #432565;
  --color-orange: #f99b21;
  --color-yellow: #fede09;
  --color-neutral-100: #fff;
  --color-neutral-125: #f5f5f5;
  --color-neutral-150: #f9f9f9;
  --color-neutral-200: #abb4bb;
  /* Global */
  --base-font-family: proxima-nova, sans-serif;
  --heading-font-family: var(--base-font-family);
  --legal-font-size: 1rem;
  --standard-border-radius: 4px;
  --standard-border-width: 2px;
  --standard-font-size: 1.125rem;
  --standard-font-weight-bold: 900;
  --standard-letter-spacing: 0;
  --standard-line-height: 1.5;
  --standard-link-color: var(--color-neutral-100);
  --standard-text-color: var(--color-neutral-100);
  /* Backgrounds */
  --body-bg-desktop:
  url('https://image.corktips.com/lib/fe6615707c6606757517/m/1/3d311e4b-e419-43cf-88b5-d6e7170df555.png') left 70vw / 20% no-repeat,
  url('https://image.corktips.com/lib/fe6615707c6606757517/m/1/39d50e94-8dcc-4562-8fc8-91772641d25b.png') right 70vw / 20% no-repeat,
  url('https://image.corktips.com/lib/fe6615707c6606757517/m/1/4ab94dd0-9a9c-4523-8667-f49b25ae0150.png') top center / 150% no-repeat,
  linear-gradient(160deg, var(--color-accent-primary) 7.09%, var(--color-accent-secondary) 80%);
  --body-bg-mobile:
  url('https://image.corktips.com/lib/fe6615707c6606757517/m/1/4ab94dd0-9a9c-4523-8667-f49b25ae0150.png') top center / 150% no-repeat,
  linear-gradient(160deg, var(--color-accent-primary) 7.09%, var(--color-accent-secondary) 80%);
  --form-container-bg-color: transparent;
  /* Focus */
  --focus-bg-color: var(--color-neutral-150);
  --focus-border-color: var(--color-yellow);
  --focus-text-color: var(--color-brand);
  /* Alerts */
  --alert-bg-color: var(--color-accent-secondary);
  --alert-text-color: var(--color-neutral-100);
  /* Labels */
  --label-text-color: var(--color-neutral-100);
  /* Inputs */
  --input-bg-color: var(--color-neutral-100);
  --input-border-color: var(--color-brand);
  --input-border-radius: var(--standard-border-radius);
  --input-border-width: var(--standard-border-width);
  --input-font-weight: 400;
  --input-height: 3.5rem;
  --input-padding: .75rem .625rem;
  --input-placeholder-color: #666;
  --input-text-color: #4b4941;
  /* Checkbox */
  --checkbox-bg-color: var(--color-neutral-100);
  --checkbox-border-color: var(--color-brand);
  --checkbox-checkmark-color: var(--color-brand);
  --checkbox-fill-color: var(--color-yellow);
  /* Radio Button */
  --radio-button-bg-color: var(--color-neutral-100);
  --radio-button-border-color: var(--color-brand);
  --radio-button-fill-color: linear-gradient(160deg, var(--color-yellow) 7.09%, var(--color-orange) 80%);
  --radio-button-text-color: var(--color-brand);
  /* Button */
  --btn-border-color: var(--color-neutral-100);
  --btn-border-width: var(--standard-border-width);
  --btn-font-size: var(--standard-font-size);
  --btn-hover-bg-color: linear-gradient(160deg, var(--color-yellow) 7.09%, var(--color-orange) 80%);
  --btn-hover-text-color: var(--color-brand);
  --btn-text-color: var(--color-brand);
}
* { box-sizing: border-box; }
body { margin: 0; padding: 0; font-family: var(--base-font-family); font-size: var(--standard-font-size); line-height: var(--standard-line-height); text-wrap: balance; color: var(--standard-text-color); background: var(--body-bg-mobile); }
@media (width >=500px) {
  body { background: var(--body-bg-desktop); }
}
@media (width >=768px) {
  body { background-position: left 65vw, right 65vw, top center, top left; }
}
@media (width >=1080px) {
  body { background-position: left 22%, right 22%, center -1.5vw, top left; }
}
@media (width >=1380px) {
  body { background-position: left 19%, right 19%, center -1.5vw, top left; }
}
body:has(.sweeps-not-active) { background: var(--body-bg-desktop); background-position: left 95vw, right 95vw, top center, top left; background-size: 50%, 50%, 150%, 100%; }
@media (width >=500px) {
  body:has(.sweeps-not-active) { background-position: left 80%, right 80%, top center, top left; background-size: 40%, 40%, 150%, 100%; }
}
@media (width >=800px) {
  body:has(.sweeps-not-active) { background-position: left 110%, right 110%, top center, top left; background-size: 20%, 20%, 150%, 100%; }
}
@media (width >=1180px) {
  body:has(.sweeps-not-active) { background-size: 20%, 20%, 150%, 100%; }
}
@media (width >=1380px) {
  body:has(.sweeps-not-active) { background-position: left 60%, right 60%, top center, top left; }
}
a { text-decoration: underline; color: var(--standard-link-color); }
a:hover { opacity: 0.8; }
a:focus-visible { outline: 2px solid var(--focus-border-color); outline-offset: 2px; }
h1,
h2,
h3 { font-family: var(--heading-font-family); font-weight: var(--standard-font-weight-bold); color: var(--standard-text-color); }
img { display: block; max-width: 100%; height: auto; }
.wrapper { min-height: 100vh; text-wrap: pretty; }
.form-container { display: none; max-width: 1200px; margin-inline: auto; text-align: center; background: var(--form-container-bg-color); }
.form-container.age-verified { display: block; }
.layout-enhanced-hero { margin: 0 auto 1.5rem; padding-top: 16vw; text-align: center; }
@media (width >=1080px) {
  .layout-enhanced-hero { padding-top: 7rem; }
}
.layout-enhanced-hero h1 { max-width: 518px; margin: 0 auto; }
.layout-enhanced-hero img { width: 100%; max-width: 58vw; margin-inline: auto; }
@media (width >=500px) {
  .layout-enhanced-hero img { border-radius: var(--standard-border-radius); }
}
.layout-enhanced-feature { display: flex; flex-direction: column; gap: 1rem; align-items: center; justify-content: center; }
@media (width >=500px) {
  .layout-enhanced-feature { flex-direction: row; }
}
.layout-enhanced-feature .feature-item { flex: 1; }
.img-desktop { display: none; }
@media (width >=500px) {
  .img-desktop { display: block; }
}
.img-mobile { display: block; }
@media (width >=500px) {
  .img-mobile { display: none; }
}
.body-copy { padding: 0 1.5rem; color: var(--standard-text-color); }
.body-copy h2 { margin: 4.25rem 0 0.25em; font-size: clamp(2rem, 8vw, 5.75em); font-weight: 900; line-height: 1.1; text-transform: uppercase; }
@media (width >=500px) {
  .body-copy h2 { margin-bottom: 0.25em; line-height: 0.9; }
}
.body-copy .intro-copy,
.body-copy .offer-copy { line-height: var(--standard-line-height); }
.body-copy .intro-copy { margin: 0 auto 1em; font-size: clamp(1.25rem, 3vw, 2rem); }
@media (width >=500px) {
  .body-copy .intro-copy { max-width: 800px; margin: 0 20% 1em; }
}
.offer-message .offer-copy { margin-bottom: 2.5rem; font-size: clamp(1rem, 2.5vw, 1.5rem); font-weight: 700; text-transform: uppercase; }
.offer-message .offer-feature { display: flex; justify-content: space-between; }
@media (width >=500px) {
  .offer-message .offer-feature { display: none; }
}
.offer-message .offer-feature img { width: 100%; max-width: 50%; }
.sf-form { padding-top: 1rem; }
@media (width >=500px) {
  .sf-form { padding-top: 2rem; }
}
.sf-dynamic-form { display: grid; grid-template-columns: 100%; gap: 1.25rem; max-width: 100%; padding: 0 1.5rem; line-height: var(--standard-line-height); text-align: left; color: var(--standard-text-color); grid-auto-rows: min-content; }
@media (width >=500px) {
  .sf-dynamic-form { grid-template-columns: 1fr 1fr; gap: 1.75rem 2rem; padding: 0 2.5rem; }
}
.sf-form-label { display: block; margin-bottom: 0.375rem; font-weight: 600; color: var(--label-text-color); }
@media (width >=500px) {
  .sf-form-label { font-size: 1.5rem; }
}
.sf-form-input { width: 100%; max-width: 100%; height: var(--input-height); padding: var(--input-padding); font-family: var(--base-font-family); font-size: var(--standard-font-size); font-weight: var(--input-font-weight); line-height: 1; letter-spacing: var(--standard-letter-spacing); color: var(--input-text-color); background-color: var(--input-bg-color); border: var(--input-border-width, 1px) solid var(--input-border-color); border-radius: var(--input-border-radius); transition: background-color 0.5s ease-in-out, border-color 0.5s ease-in-out, color 0.5s ease-in-out; }
@media (width >=500px) {
  .sf-form-input { min-height: 44px; }
}
.sf-form-input:focus-visible { background-color: var(--focus-bg-color); outline: 2px solid var(--focus-border-color); outline-offset: 2px; }
.sf-form-input::placeholder { color: var(--input-placeholder-color); }
.sf-form-input::placeholder,
.sf-form-input::placeholder { opacity: 1; }
.sf-form-input[type=date] { min-width: 0; appearance: none; }
.sf-form-input[type=date]::-webkit-calendar-picker-indicator { cursor: pointer; }
.sf-form-input[type=date].has-value,
.sf-form-input[type=date]:focus-visible { color: var(--focus-text-color); }
.sf-form-input[type=date]:invalid { color: var(--input-placeholder-color); }
.sf-select-container { display: grid; grid-template-areas: "select"; align-items: center; }
.sf-select-container select { width: 100%; margin: 0; line-height: normal; color: var(--input-text-color); background-color: var(--input-bg-color); outline: none; appearance: none; }
.sf-select-container select:invalid { color: var(--input-placeholder-color); }
.sf-select-container::after { justify-self: end; width: 0.8rem; height: 0.5rem; margin-right: 1.8rem; background-color: var(--input-text-color); content: ""; clip-path: polygon(50% 48%, 84% 14%, 100% 30%, 50% 80%, 0 30%, 16% 14%); }
.sf-select-container select,
.sf-select-container::after { grid-area: select; }
.radio { padding: 0.5rem 0; }
@media (width >=500px) {
  .radio { grid-column: 1/span 2; padding: 1rem 0; }
}
.sf-radio-select-container { width: 100%; place-self: center; text-align: center; }
@media (width >=768px) {
  .sf-radio-select-container { padding: 0 2.5rem; }
}
.sf-radio-select-label { margin-bottom: 0.375rem; font-weight: 600; line-height: var(--standard-line-height); color: var(--standard-text-color); }
@media (width >=500px) {
  .sf-radio-select-label { font-size: 1.5rem; }
}
.sf-radio-select { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: stretch; justify-content: center; }
.sf-radio-select .option { position: relative; width: 100%; }
@media (width >=500px) {
  .sf-radio-select .option { width: calc(50% - 0.5625rem); }
}
@media (width >=768px) {
  .sf-radio-select .option { width: calc(25% - 0.5625rem); }
}
.sf-radio-select .option-label { display: flex; align-items: center; justify-content: center; min-height: 3.125rem; padding: 0.5rem; font-size: var(--standard-font-size); text-align: center; color: var(--btn-text-color); background: var(--radio-button-bg-color); border: var(--standard-border-width) solid var(--radio-button-border-color); border-radius: var(--standard-border-radius); outline: none; cursor: pointer; transition: background 0.5s ease-in-out, border-color 0.5s ease-in-out, color 0.5s ease-in-out; }
.sf-radio-select .option-label:hover { background: var(--radio-button-fill-color); border-color: var(--color-brand); }
@media (width >=500px) {
  .sf-radio-select .option-label { min-height: 5rem; }
}
.sf-radio-select input[type=radio] { appearance: none; position: absolute; width: 1px; height: 1px; outline-color: var(--focus-border-color); opacity: 0.01; pointer-events: none; }
.sf-radio-select input[type=radio]:focus-visible { outline: none; }
.sf-radio-select input[type=radio]:focus-visible+.option-label { background-color: var(--focus-bg-color); outline: 2px solid var(--focus-border-color); outline-offset: 2px; }
.sf-radio-select input[type=radio]:checked+.option-label { background: var(--radio-button-fill-color); border-color: var(--color-brand); }
/** Checkbox styles */
.acknowledge { display: grid; gap: 1.5rem; justify-items: center; max-width: 580px; margin: 0 auto; padding: 0 0.5rem 0.75rem; font-size: var(--legal-font-size); text-align: left; }
@media (width >=500px) {
  .acknowledge { grid-column: 1/span 2; gap: 2rem; padding: 0 0 1.5rem; }
}
.acknowledge label { display: grid; grid-template-columns: 1em auto; gap: 0.65em; text-align: left; }
.sf-form-checkbox { display: grid; width: 1.2em; height: 1.2em; margin: 0.25rem 0 0; background-color: var(--checkbox-bg-color); border: min(var(--input-border-width), 0.15rem) solid var(--checkbox-border-color); border-radius: min(var(--input-border-radius), 10%); transform: translateY(-0.075em); place-content: center; appearance: none; }
.sf-form-checkbox::before { width: 0.6em; height: 0.6em; background-color: var(--checkbox-checkmark-color); transition: 120ms transform ease-in-out; transform: scale(0); content: ""; clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%); transform-origin: bottom left; }
.sf-form-checkbox:checked { background-color: var(--checkbox-fill-color); border-color: var(--checkbox-fill-color); }
.sf-form-checkbox:checked::before { transform: scale(1); }
body:not([data-widget=focusHighlighter]) .sf-form-checkbox:is([type=checkbox]):focus-visible { border-radius: var(--input-border-radius); outline: 2px solid var(--focus-border-color); outline-offset: max(var(--input-border-width), 0.12rem); }
.sf-submit-btn { display: block; width: 100%; max-width: 300px; margin: 0 auto; padding: 1rem 2rem; font-size: var(--btn-font-size); font-weight: var(--standard-font-weight-bold); text-transform: uppercase; color: var(--btn-text-color); background: var(--color-neutral-100); border: none; border-radius: var(--standard-border-radius); cursor: pointer; transition: all 0.3s; }
.sf-submit-btn:hover { color: var(--btn-hover-text-color); background: var(--btn-hover-bg-color); }
.sf-submit-btn:active { border: var(--standard-border-width) solid var(--standard-text-color); outline: none; -webkit-tap-highlight-color: transparent; }
.sf-submit-btn:focus-visible { outline: 2px solid var(--focus-border-color); outline-offset: 2px; }
@media (width >=500px) {
  .sf-submit-btn { grid-column: 1/span 2; min-height: 2.5rem; font-size: calc(var(--btn-font-size) + 0.125rem); }
}
.abbreviated-rules { padding: 2rem 2.5rem 1.5rem; font-size: 1rem; text-align: center; color: var(--color-neutral-100); }
@media (width >=500px) {
  .abbreviated-rules { padding: 3rem 2.5rem 2.5rem; font-size: var(--standard-font-size); border-radius: var(--standard-border-radius); }
}
.abbreviated-rules a { word-break: break-all; color: var(--color-neutral-100); }
.abbreviated-rules p { overflow-wrap: break-word; margin: 0 0 1rem; font-weight: 300; }
.abbreviated-rules .rules-emphasis { font-size: var(--legal-font-size); font-weight: var(--standard-font-weight-bold); text-transform: uppercase; }
.sf-alert { position: relative; max-width: 87%; margin: 1.5rem auto; padding: 2rem; line-height: 1.2; text-align: center; color: var(--alert-text-color); background: var(--alert-bg-color); border-radius: var(--standard-border-radius); }
@media (width >=500px) {
  .sf-alert { max-width: clamp(200px, 87%, 800px); margin: 3rem auto 1.5rem; }
}
.sf-alert a { text-decoration: underline; color: var(--alert-text-color); }
.sf-alert a:hover { color: var(--alert-text-color); opacity: 0.8; }
.sf-alert.sweeps-not-active { width: 100%; margin: 2.25rem auto; padding: 1.75em 1em; font-size: clamp(1rem, 4vw, 1.25rem); font-weight: 600; }
@media (width >=768px) {
  .sf-alert.sweeps-not-active { margin-top: 6rem; font-size: 1.5rem; }
}
.sf-closebtn { position: absolute; top: 0.625rem; right: 0.625rem; display: flex; align-items: center; justify-content: center; width: 1.5rem; height: 1.5rem; font-size: 1rem; font-weight: var(--standard-font-weight-bold); line-height: 1; color: var(--alert-text-color); background: rgba(0, 0, 0, 0.2); border-radius: 50%; cursor: pointer; }
.sf-closebtn:hover { background: rgba(0, 0, 0, 0.4); opacity: 0.7; }
.age-gate-modal-container { position: fixed; top: 0; left: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 1.25rem; text-wrap: pretty; background: linear-gradient(160deg, var(--color-accent-primary) 7.09%, var(--color-accent-secondary) 80%); }
@media (width >=500px) {
  .age-gate-modal-container { padding: 0; }
}
.age-gate-modal { max-width: 450px; padding: 1.875rem; text-align: center; color: var(--color-brand); background: var(--color-neutral-100); border-radius: var(--standard-border-radius); box-shadow: 0 5px 10px rgba(0, 0, 0, 0.25); }
.age-gate-modal a { color: inherit; }
.age-gate-modal h2 { margin: 0 0 1.5rem; font-size: 1.75rem; font-weight: var(--standard-font-weight-bold); line-height: 1.1; text-transform: uppercase; color: inherit; background: linear-gradient(116deg, var(--color-accent-primary), var(--color-accent-secondary)); background-clip: text; -webkit-text-fill-color: transparent; }
@media (width >=500px) {
  .age-gate-modal h2 { font-size: 2.25rem; }
}
.age-gate-modal p { margin: 0 0 1.5rem; }
.age-gate-modal .age-gate-birthday-label { text-align: left; color: inherit; }
.age-gate-modal .age-gate-birthday-input { margin-bottom: 1.625rem; }
.age-gate-modal .age-gate-submit { color: var(--color-neutral-100); background: var(--color-brand); }
.age-gate-modal .age-gate-submit:hover { color: var(--btn-hover-text-color); background: var(--btn-hover-bg-color); }
.sf-spinner-container { position: fixed; z-index: 9050; display: none; background-color: rgba(255, 255, 255, 0.75); inset: 0; }
.sf-spinner { position: absolute; top: 50%; left: 50%; width: 3rem; height: 3rem; border: 4px solid var(--input-border-color); border-radius: 50%; animation: sf-spin 1s linear infinite; transform: translate(-50%, -50%); border-top: 4px solid var(--standard-text-color); }
@keyframes sf-spin {
  0% { transform: translate(-50%, -50%) rotate(0deg); }
  100% { transform: translate(-50%, -50%) rotate(360deg); }
}
