@layer page {
.pg-coming-soon { display: flex; flex-direction: column; min-height: 100svh; background: var(--orange); --font-display: var(--font-action); --focus: var(--ink); }
.pg-coming-soon #main { display: flex; flex: 1; }
.pg-coming-soon .soon { width: 100%; margin-inline: auto; display: grid; place-items: center; padding: max(40px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(40px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left)); }
.pg-coming-soon .soon-invitation { width: 100%; max-width: 520px; justify-self: center; min-width: 0; }
.pg-coming-soon .soon h1 { margin: 0 0 32px; font: 700 clamp(2.75rem, 6.5vw, 4.5rem)/1.04 var(--font-action); text-align: center; text-wrap: balance; }
.pg-coming-soon .soon-form, .pg-coming-soon .soon-disclosure { position: relative; min-width: 0; width: 100%; max-width: 520px; margin-inline: auto; background: var(--yellow); border: 2px solid var(--ink); border-radius: var(--r-md); color: var(--ink); --address-ac-ink: var(--ink); --address-ac-divider: var(--line); transition: max-width 420ms cubic-bezier(.22,1,.36,1), border-radius 420ms cubic-bezier(.22,1,.36,1), box-shadow 360ms cubic-bezier(.22,1,.36,1), transform var(--d-press) var(--ease-out); }
.pg-coming-soon .soon-disclosure:not([open]), .pg-coming-soon .soon-form[data-soon-started="false"] { max-width: 248px; border-radius: var(--r-pill); box-shadow: 3px 3px 0 var(--sky), 6px 6px 0 var(--teal), 8px 8px 0 var(--ink); }
.pg-coming-soon .soon-disclosure > .soon-native-start { display: grid; place-items: center; list-style: none; text-align: center; cursor: pointer; }
.pg-coming-soon .soon-native-start::-webkit-details-marker { display: none; }
.pg-coming-soon .soon-disclosure[open] > .soon-native-start { border-bottom: 1px solid var(--ink); border-radius: 14px 14px 0 0; }
.pg-coming-soon .soon-disclosure > .soon-form { border: 0; }
.pg-coming-soon .soon-form .intake-fields { gap: 0; }
.pg-coming-soon .soon-step { min-width: 0; padding: 0; margin: 0; border: 0; }
.pg-coming-soon .soon-step-body { display: grid; gap: 24px; padding: 28px; }
.pg-coming-soon .soon-step + .soon-step, .pg-coming-soon .soon-entry + .soon-step { border-top: 1px solid var(--ink); }
.pg-coming-soon .soon-name-fields { display: grid; gap: 20px; min-width: 0; }
.pg-coming-soon .soon-address-parts { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; min-width: 0; }
.pg-coming-soon .soon-manual-address { justify-self: start; min-height: 44px; padding: 8px 0; background: transparent; border: 0; font-family: var(--font-label); font-size: 1rem; text-decoration: underline; text-underline-offset: 4px; }
.pg-coming-soon .soon .field { min-width: 0; }
.pg-coming-soon .soon .field label { font-size: 1.125rem; }
.pg-coming-soon .soon .field input { min-width: 0; width: 100%; background: var(--surface); font-size: 1.0625rem; border-width: 1px; border-radius: var(--r-sm); min-height: 56px; }
.pg-coming-soon .soon .field input:focus { background: var(--canvas); }
.pg-coming-soon .soon .btn { width: 100%; min-height: 56px; padding: 12px 20px; background: var(--ink); color: var(--yellow); border: 2px solid var(--ink); border-radius: var(--r-pill); font: 700 1.5rem/1.2 var(--font-action); box-shadow: 3px 3px 0 var(--sky), 6px 6px 0 var(--teal), 8px 8px 0 var(--ink); transition: transform var(--d-press) var(--ease-out), background-color var(--d-hover) var(--ease-out), color var(--d-hover) var(--ease-out); }
.pg-coming-soon .soon .btn:hover { background: var(--yellow); color: var(--ink); }
.pg-coming-soon .soon .btn:disabled { background: var(--ink); color: var(--yellow); opacity: .75; box-shadow: none; }
.pg-coming-soon .soon-entry { display: grid; position: relative; }
.pg-coming-soon .soon-entry > * { grid-area: 1 / 1; }
.pg-coming-soon .soon-start { width: 100%; min-height: 56px; padding: 12px 24px; background: var(--yellow); color: var(--ink); border: 0; border-radius: var(--r-pill); font: 700 1.375rem/1.2 var(--font-action); }
.pg-coming-soon .soon-start:hover { background: var(--yellow); }
.pg-coming-soon .soon-start:focus-visible { outline-offset: 6px; }
@media (hover: hover) {
.pg-coming-soon .soon-disclosure:not([open]):hover, .pg-coming-soon .soon-form[data-soon-started="false"]:hover, .pg-coming-soon .soon .btn:not(:disabled):hover { transform: translate(-1px, -1px); box-shadow: 4px 4px 0 var(--sky), 7px 7px 0 var(--teal), 9px 9px 0 var(--ink); }
}
.pg-coming-soon .soon-disclosure:not([open]):active, .pg-coming-soon .soon-form[data-soon-started="false"]:active, .pg-coming-soon .soon .btn:not(:disabled):active { transform: translate(2px, 2px); box-shadow: 2px 2px 0 var(--sky), 4px 4px 0 var(--teal), 6px 6px 0 var(--ink); }
.pg-coming-soon .soon-form[data-soon-ready] .soon-entry > * { backface-visibility: hidden; transition: transform 380ms cubic-bezier(.22,1,.36,1), opacity 320ms cubic-bezier(.22,1,.36,1); }
.pg-coming-soon .soon-form[data-soon-ready][data-soon-started="false"] [data-soon-step="email"] { position: absolute; inset: 0; visibility: hidden; opacity: 0; transform: translateY(8px); }
.pg-coming-soon .soon-form[data-soon-ready][data-soon-started="true"] .soon-start { transform: translateY(-6px); opacity: 0; pointer-events: none; }
.pg-coming-soon .soon-form[data-soon-started="true"] [data-soon-step="email"] { opacity: 1; transform: translateY(0); }
.pg-coming-soon .soon-form[data-soon-started="true"] .soon-start { position: absolute; inset: 0; }
.pg-coming-soon .soon-answer { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 16px; width: 100%; min-height: 76px; text-align: left; padding: 18px 28px; background: transparent; border: 0; border-radius: 0; }
.pg-coming-soon .soon-answer:hover { background: var(--canvas); }
.pg-coming-soon .soon-answer:focus-visible { outline-offset: -5px; border-radius: var(--r-sm); }
.pg-coming-soon .soon-answer-label { grid-column: 1; font: 500 .875rem/1.3 var(--font-label); }
.pg-coming-soon .soon-answer-value { grid-column: 1; overflow-wrap: anywhere; min-width: 0; font: 400 1rem/1.4 var(--font-body); }
.pg-coming-soon .soon-answer-edit { grid-column: 2; grid-row: 1 / 3; align-self: center; font: 600 1.125rem/1.2 var(--font-action); text-decoration: underline; text-underline-offset: 4px; }
.pg-coming-soon .soon-step-error, .pg-coming-soon .soon .intake-error { margin: 0 28px 24px; padding: 12px 0; font-size: 1rem; font-weight: 700; line-height: 1.4; }
.pg-coming-soon .soon .field > .soon-step-error { margin: 8px 0 0; padding: 0; }
.pg-coming-soon .soon .intake-error { border: 0; border-radius: 0; }
.pg-coming-soon .soon-done:not([hidden]) { display: block; padding: 36px 28px; }
.pg-coming-soon .soon-done .intake-done-title { font-size: 3.25rem; }
@media (min-width: 480px) {
.pg-coming-soon .soon-name-fields, .pg-coming-soon .soon-address-parts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.pg-coming-soon .soon-address-line1, .pg-coming-soon .soon-address-line2 { grid-column: 1 / -1; }
}
@media (max-width: 374px) {
.pg-coming-soon .soon { padding-inline: max(18px, env(safe-area-inset-left)); }
.pg-coming-soon .soon h1 { margin-bottom: 28px; }
.pg-coming-soon .soon-step-body { padding: 22px 18px; gap: 20px; }
.pg-coming-soon .soon-answer { padding-inline: 18px; }
.pg-coming-soon .soon-step-error, .pg-coming-soon .soon .intake-error { margin-inline: 18px; }
}
@media (prefers-reduced-motion: reduce) {
.pg-coming-soon .soon-form, .pg-coming-soon .soon-disclosure, .pg-coming-soon .soon .btn { transition: none; }
.pg-coming-soon .soon-disclosure:not([open]):is(:hover, :active), .pg-coming-soon .soon-form[data-soon-started="false"]:is(:hover, :active), .pg-coming-soon .soon .btn:not(:disabled):is(:hover, :active) { transform: none; }
.pg-coming-soon .soon-form[data-soon-ready] .soon-entry > * { transition: none; transform: none; }
.pg-coming-soon .soon-form[data-soon-ready][data-soon-started="true"] .soon-start { visibility: hidden; transition: none; transform: none; }
}
@media (forced-colors: active) { .pg-coming-soon .soon-start, .pg-coming-soon .soon .btn { border: 2px solid ButtonText; } .pg-coming-soon .soon-disclosure, .pg-coming-soon .soon-form, .pg-coming-soon .soon .btn { box-shadow: none; } }
}
