@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500&family=Italiana&display=swap');

:root {
	--coming-soon-ivory: #f5f0e8;
	--coming-soon-gold: #d8bb84;
	--coming-soon-gold-deep: #b8955c;
	--coming-soon-line: rgba(216, 187, 132, .74);
	--coming-soon-serif: 'Italiana', 'Bodoni MT', 'Times New Roman', serif;
	--coming-soon-sans: 'DM Sans', Arial, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { min-width: 320px; background: #090909; }
body.coming-soon-page { min-width: 320px; margin: 0; overflow-x: hidden; background: #090909; color: var(--coming-soon-ivory); font-family: var(--coming-soon-sans); font-size: 16px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
body.coming-soon-page.admin-bar { min-height: calc(100vh - 32px); }
.coming-soon-skip-link { position: fixed; z-index: 100001; top: 12px; left: 12px; padding: 12px 18px; transform: translateY(-160%); background: #fff; color: #111; font-weight: 600; text-decoration: none; }
.coming-soon-skip-link:focus { transform: translateY(0); }
.coming-soon { position: relative; min-height: 100vh; min-height: 100svh; isolation: isolate; overflow: hidden; background-color: #090909; background-image: var(--coming-soon-background-image, url('../images/coming-soon-gift-background-wide.png')); background-position: center; background-repeat: no-repeat; background-size: cover; }
.coming-soon__veil { position: absolute; z-index: -1; inset: 0; background: radial-gradient(circle at 50% 42%, rgba(0,0,0,.04), rgba(0,0,0,.28) 76%), linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.22)); pointer-events: none; }
.coming-soon__inner { width: min(100% - 64px, 910px); min-height: 100vh; min-height: 100svh; margin-inline: auto; padding: clamp(64px, 8vh, 118px) 0 48px; display: flex; flex-direction: column; align-items: center; text-align: center; }
.coming-soon__brand { margin-bottom: clamp(32px, 5vh, 68px); }
.coming-soon__brand p { margin: 0; }
.coming-soon__wordmark { font-family: var(--coming-soon-serif); font-size: clamp(33px, 3.3vw, 52px); font-weight: 400; letter-spacing: .27em; line-height: 1; text-indent: .27em; }
.coming-soon__brand-line { margin-top: 13px !important; font-size: clamp(10px, .9vw, 14px); font-weight: 400; letter-spacing: .58em; text-indent: .58em; }
.coming-soon__message { width: min(100%, 780px); }
.coming-soon__eyebrow-group { margin-bottom: clamp(50px, 6.5vh, 84px); }
.coming-soon__divider { display: block; width: 58px; height: 2px; margin: 0 auto clamp(28px, 3.8vh, 46px); background: var(--coming-soon-line); }
.coming-soon__eyebrow, .coming-soon__launch-label { margin: 0; color: var(--coming-soon-ivory); font-size: clamp(11px, 1vw, 15px); font-weight: 400; letter-spacing: .47em; line-height: 1.5; text-indent: .47em; text-transform: uppercase; }
.coming-soon__title { margin: 0; color: var(--coming-soon-ivory); font-family: var(--coming-soon-serif); font-size: clamp(62px, 6.3vw, 96px); font-weight: 400; letter-spacing: -.025em; line-height: .98; }
.coming-soon__title > span { display: block; }
.coming-soon__title-accent { margin-top: 12px; color: var(--coming-soon-gold); }
.coming-soon__copy { max-width: 720px; margin: clamp(40px, 5.5vh, 72px) auto 0; color: rgba(255,255,255,.9); font-size: clamp(19px, 1.7vw, 27px); font-weight: 300; line-height: 1.62; }
.coming-soon__launch-label { margin-top: clamp(42px, 5vh, 66px); color: var(--coming-soon-gold); }
.coming-soon-form { width: min(100%, 710px); margin: 24px auto 0; text-align: left; }
.coming-soon-form .gform_wrapper { margin: 0; }
.coming-soon-form form.unwrappedco-gform-waitlist .gform_body, .coming-soon-form form.unwrappedco-gform-waitlist .gform_fields { display: block; }
.coming-soon-form form.unwrappedco-gform-waitlist .gfield:not(.gform_validation_container) { margin: 0 0 18px; }
.coming-soon-form form.unwrappedco-gform-waitlist .gfield_label, .coming-soon-form form.unwrappedco-gform-waitlist .gform-field-label { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.coming-soon-form form.unwrappedco-gform-waitlist input[type='email'], .coming-soon-form form.unwrappedco-gform-waitlist input[type='text'] { width: 100%; min-height: 74px; margin: 0; padding: 0 30px; border: 2px solid rgba(216,187,132,.62); border-radius: 7px; outline: 0; background: rgba(8,8,8,.42); box-shadow: none; color: #fff; font-family: var(--coming-soon-sans); font-size: 20px; font-weight: 300; transition: border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.coming-soon-form form.unwrappedco-gform-waitlist input::placeholder { color: rgba(255,255,255,.55); opacity: 1; }
.coming-soon-form form.unwrappedco-gform-waitlist input:focus { border-color: var(--coming-soon-gold); background: rgba(8,8,8,.68); box-shadow: 0 0 0 3px rgba(216,187,132,.25); }
.coming-soon-form form.unwrappedco-gform-waitlist .gform_footer { margin: 0; padding: 0; }
.coming-soon-form form.unwrappedco-gform-waitlist .gform_button { position: relative; width: 100% !important; min-height: 74px !important; margin: 0 !important; padding: 0 68px 0 30px; border: 1px solid var(--coming-soon-gold); border-radius: 6px; background: linear-gradient(100deg, #dfc696, #cba76d); color: #0b0b0b; cursor: pointer; font-family: var(--coming-soon-sans); font-size: 21px; font-weight: 500; transition: filter .2s ease, transform .2s ease, box-shadow .2s ease; }
.coming-soon-form form.unwrappedco-gform-waitlist .gform_footer { position: relative; }
.coming-soon-form form.unwrappedco-gform-waitlist .gform_footer::after { content: '\2192'; position: absolute; top: 50%; right: 30%; transform: translateY(-53%); color: #0b0b0b; font-size: 34px; line-height: 1; pointer-events: none; }
.coming-soon-form form.unwrappedco-gform-waitlist .gform_button:hover { filter: brightness(1.07); box-shadow: 0 12px 32px rgba(0,0,0,.28); transform: translateY(-1px); }
.coming-soon-form form.unwrappedco-gform-waitlist .gform_button:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
.coming-soon-form form.unwrappedco-gform-waitlist .gform_button:disabled { cursor: wait; filter: saturate(.5); opacity: .72; transform: none; }
.coming-soon-form .gform_validation_errors { margin: 0 0 16px; padding: 14px 17px; border: 1px solid #f0a6a0; border-left-width: 4px; background: rgba(58,12,9,.84); color: #fff; font-size: 14px; line-height: 1.5; }
.coming-soon-form .gform_submission_error { margin: 0; font: inherit; }
.coming-soon-form .gfield_error input[type='email'], .coming-soon-form .gfield_error input[type='text'] { border-color: #f0a6a0 !important; }
.coming-soon-form .gfield_validation_message, .coming-soon-form .validation_message { margin: 8px 0 0; color: #ffd1cd; font-size: 13px; line-height: 1.45; }
.coming-soon-form .gform_confirmation_message { padding: 24px 28px; border: 1px solid var(--coming-soon-line); background: rgba(8,8,8,.6); color: #fff; font-size: 17px; line-height: 1.6; text-align: center; }
.coming-soon-form .gform_ajax_spinner { width: 24px; height: 24px; margin: 16px auto 0; }
.coming-soon-form__admin-note { margin: 0; padding: 18px 20px; border: 1px solid var(--coming-soon-line); background: rgba(8,8,8,.66); color: #fff; font-size: 14px; text-align: center; }
.coming-soon__footer { width: min(100%, 710px); margin-top: auto; padding-top: clamp(70px, 10vh, 150px); align-self: center; text-align: left; }
.coming-soon__footer-line { display: block; width: 58px; height: 2px; margin-bottom: 22px; background: var(--coming-soon-line); }
.coming-soon__footer p { margin: 0; color: rgba(255,255,255,.82); font-size: 13px; font-weight: 300; letter-spacing: .16em; }

@media (max-width: 900px) {
	.coming-soon { background-image: var(--coming-soon-background-image, url('../images/coming-soon-gift-background.png')); background-position: center top; }
	.coming-soon__inner { width: min(100% - 48px, 760px); padding-top: clamp(76px, 10vh, 120px); }
	.coming-soon__title { font-size: clamp(56px, 10vw, 82px); }
	.coming-soon-form form.unwrappedco-gform-waitlist .gform_footer::after { right: 27%; }
}

@media (min-width: 901px) {
	.coming-soon__brand { margin-bottom: clamp(44px, calc(5vh + 12px), 80px); }
	.coming-soon__footer { margin-top: 0; padding-top: 40px; }
}

@media (min-width: 901px) and (max-height: 1000px) {
	.coming-soon__inner { padding-top: 40px; padding-bottom: 34px; }
	.coming-soon__brand { margin-bottom: 36px; }
	.coming-soon__eyebrow-group { margin-bottom: 30px; }
	.coming-soon__divider { margin-bottom: 18px; }
	.coming-soon__title { font-size: clamp(58px, 5.4vw, 78px); }
	.coming-soon__copy { margin-top: 28px; font-size: 20px; }
	.coming-soon__launch-label { margin-top: 28px; }
	.coming-soon-form { margin-top: 16px; }
	.coming-soon-form form.unwrappedco-gform-waitlist .gfield:not(.gform_validation_container) { margin-bottom: 12px; }
	.coming-soon-form form.unwrappedco-gform-waitlist input[type='email'], .coming-soon-form form.unwrappedco-gform-waitlist input[type='text'], .coming-soon-form form.unwrappedco-gform-waitlist .gform_button { min-height: 64px !important; }
	.coming-soon__footer { padding-top: 40px; }
}

@media (max-width: 600px) {
	body.coming-soon-page.admin-bar { min-height: calc(100vh - 46px); }
	.coming-soon__inner { width: min(100% - 38px, 520px); padding: 58px 0 34px; }
	.coming-soon__brand { margin-bottom: 38px; }
	.coming-soon__wordmark { font-size: clamp(27px, 8.7vw, 36px); }
	.coming-soon__brand-line { margin-top: 10px !important; font-size: 9px; }
	.coming-soon__eyebrow-group { margin-bottom: 42px; }
	.coming-soon__divider { margin-bottom: 26px; }
	.coming-soon__eyebrow, .coming-soon__launch-label { font-size: 10px; letter-spacing: .38em; text-indent: .38em; }
	.coming-soon__title { font-size: clamp(48px, 14.8vw, 64px); line-height: 1.02; }
	.coming-soon__title-accent { margin-top: 8px; }
	.coming-soon__copy { margin-top: 36px; font-size: clamp(16px, 4.7vw, 20px); line-height: 1.58; }
	.coming-soon__launch-label { margin-top: 38px; }
	.coming-soon-form { margin-top: 20px; }
	.coming-soon-form form.unwrappedco-gform-waitlist .gfield:not(.gform_validation_container) { margin-bottom: 13px; }
	.coming-soon-form form.unwrappedco-gform-waitlist input[type='email'], .coming-soon-form form.unwrappedco-gform-waitlist input[type='text'], .coming-soon-form form.unwrappedco-gform-waitlist .gform_button { min-height: 62px !important; font-size: 17px; }
	.coming-soon-form form.unwrappedco-gform-waitlist input[type='email'], .coming-soon-form form.unwrappedco-gform-waitlist input[type='text'] { padding-inline: 20px; }
	.coming-soon-form form.unwrappedco-gform-waitlist .gform_footer::after { right: 18%; font-size: 29px; }
	.coming-soon__footer { padding-top: 84px; }
	.coming-soon__footer p { font-size: 11px; line-height: 1.6; }
}

@media (max-width: 360px) {
	.coming-soon__inner { width: calc(100% - 28px); }
	.coming-soon__wordmark { letter-spacing: .2em; text-indent: .2em; }
	.coming-soon__brand-line { letter-spacing: .38em; text-indent: .38em; }
	.coming-soon__title { font-size: 46px; }
	.coming-soon-form form.unwrappedco-gform-waitlist .gform_footer::after { right: 15%; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
