html.is-modal-open,html.is-modal-open body{overflow:hidden}.waitlist-modal{padding:0;border:0;background:transparent;color:inherit;max-width:min(560px,calc(100vw - 32px));width:100%;max-height:calc(100vh - 32px);overflow:visible;margin:auto}.waitlist-modal::backdrop{background:#0b0f268c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:waitlist-fade-in .2s ease-out}.waitlist-modal[open]{animation:waitlist-pop-in .24s cubic-bezier(.2,.7,.2,1)}@keyframes waitlist-fade-in{0%{opacity:0}to{opacity:1}}@keyframes waitlist-pop-in{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.waitlist-modal-inner{position:relative;background:var(--paper);border:1px solid var(--rule-strong);border-radius:18px;padding:40px;box-shadow:0 32px 80px -32px #0b0f2673;max-height:calc(100vh - 32px);overflow-y:auto}.waitlist-modal-close{position:absolute;top:14px;right:14px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--ink-3);cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.waitlist-modal-close:hover{background:var(--paper-2);color:var(--ink)}.waitlist-modal-close:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.waitlist-modal-eyebrow{display:inline-block;margin:0 0 12px;padding:4px 10px;border-radius:999px;background:var(--accent-secondary-soft);color:var(--accent-deep);font-family:var(--font);font-size:var(--text-xs);font-weight:var(--w-semibold, 600);letter-spacing:.08em;text-transform:uppercase}.waitlist-modal-title{margin:0 0 12px;font-family:var(--font);font-size:clamp(26px,3.2vw,32px);font-weight:600;line-height:1.18;letter-spacing:-.01em;color:var(--ink)}.waitlist-modal-lede{margin:0 0 28px;font-family:var(--font);font-size:var(--text-base);line-height:1.55;color:var(--ink-2)}.waitlist-modal-form.contact-form{padding:0;border:0;background:transparent;box-shadow:none;gap:18px}.waitlist-modal-form .contact-field input[type=tel]{appearance:none;width:100%;background:var(--paper);border:1px solid var(--rule-strong);border-radius:8px;padding:12px 14px;font-family:var(--font);font-size:var(--text-md);line-height:var(--lh-base);color:var(--ink);transition:border-color .25s ease,box-shadow .25s ease}.waitlist-modal-form .contact-field input[type=tel]:hover{border-color:var(--ink-3)}.waitlist-modal-form .contact-field input[type=tel]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.waitlist-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.waitlist-modal-message{margin:0;padding:12px 14px;border-radius:10px;font-family:var(--font);font-size:var(--text-sm);line-height:var(--lh-base)}.waitlist-modal-message--error{background:#fef2f2;border:1px solid #ef444433;color:#991b1b}.waitlist-modal-success[hidden],.waitlist-modal-message[hidden]{display:none!important}.waitlist-modal-success{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:8px 0 0}.waitlist-modal-success-icon{width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--cta);color:var(--ink)}.waitlist-modal-success-title{margin:0;font-family:var(--font);font-size:var(--text-xl);font-weight:600;color:var(--ink)}.waitlist-modal-success-text{margin:0;font-family:var(--font);font-size:var(--text-base);line-height:1.55;color:var(--ink-2)}@media(max-width:540px){.waitlist-modal-inner{padding:28px 22px;border-radius:14px}.waitlist-modal-title{font-size:24px}.waitlist-modal-lede{margin-bottom:22px}}.cookie-banner{position:fixed;z-index:1000;right:20px;bottom:20px;width:min(420px,calc(100vw - 32px));opacity:0;transform:translateY(12px);transition:opacity .22s ease,transform .22s cubic-bezier(.2,.7,.2,1);pointer-events:none}.cookie-banner.is-open{opacity:1;transform:translateY(0);pointer-events:auto}.cookie-banner-inner{position:relative;display:flex;align-items:flex-start;gap:14px;padding:20px 22px 20px 18px;background:var(--paper);border:1px solid var(--rule-strong);border-radius:16px;box-shadow:0 28px 60px -28px #0b0f2673}.cookie-banner-icon{flex-shrink:0;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent-deep);border-radius:10px}.cookie-banner-body{flex:1;min-width:0}.cookie-banner-title{margin:0 0 4px;font-family:var(--font);font-size:var(--text-base);font-weight:600;line-height:1.3;color:var(--ink)}.cookie-banner-text{margin:0 0 14px;font-family:var(--font);font-size:var(--text-sm);line-height:1.55;color:var(--ink-2)}.cookie-banner-text a{color:var(--ink-2);border-bottom:1px solid var(--rule-strong);transition:color .2s ease,border-color .2s ease}.cookie-banner-text a:hover{color:var(--ink);border-color:var(--ink)}.cookie-banner-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-banner-btn.btn{padding:9px 16px;font-size:var(--text-sm);border-radius:6px}.cookie-banner-btn{flex:1 1 auto;min-width:110px}.cookie-banner-close{position:absolute;top:8px;right:8px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:999px;color:var(--ink-3);cursor:pointer;transition:background-color .2s ease,color .2s ease}.cookie-banner-close:hover{background:var(--paper-2);color:var(--ink)}.cookie-banner-close:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}@media(max-width:540px){.cookie-banner{right:12px;bottom:12px;left:12px;width:auto}.cookie-banner-inner{padding:18px 18px 18px 16px}}
