.waitlist-modal{width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #e5e8e0;border-radius:24px;background:#fffefc;color:#252820;box-shadow:0 24px 90px #18261c30;overflow:auto;overscroll-behavior:contain;font-family:Arial,Helvetica,sans-serif;text-align:left}
.waitlist-modal::backdrop{background:#18251d66;backdrop-filter:blur(4px)}
.waitlist-modal[open]{animation:waitlist-modal-in .18s ease-out}
.waitlist-modal-shell{position:relative;padding:42px 30px 30px}
.waitlist-modal-close{position:absolute;top:10px;right:10px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:#6f776b;font:28px/1 Arial,Helvetica,sans-serif;cursor:pointer}
.waitlist-modal-close:hover{background:#eef2e9;color:#252820}
.waitlist-modal h2{font:normal 32px/1.13 Georgia,'Times New Roman',serif;letter-spacing:-1px;margin:0 0 12px;color:#252820}
.waitlist-modal-purpose{margin:0 0 28px;color:#6c7466;font-size:14px;line-height:1.65}
.waitlist-modal label{display:block;margin-bottom:9px;color:#35432f;font-size:12px;font-weight:600}
.waitlist-modal input{display:block;box-sizing:border-box;width:100%;min-height:54px;padding:14px 15px;border:1px solid #d9dfd2;border-radius:12px;background:#fff;color:#252820;font:16px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.2px;transition:border-color .15s,box-shadow .15s}
.waitlist-modal input::placeholder{color:#939b8c;opacity:1}
.waitlist-modal input:focus{outline:0;border-color:#087953;box-shadow:0 0 0 3px #08795316}
.waitlist-modal input[aria-invalid=true]{border-color:#a84435;box-shadow:0 0 0 3px #a8443510}
.waitlist-modal input:disabled{background:#f5f7f1;color:#6c7466}
.waitlist-phone-hint{margin:9px 0 0;color:#818979;font-size:11px;line-height:1.5}
.waitlist-modal-error{margin:12px 0 0;color:#a03d30;font-size:12px;line-height:1.5}
.waitlist-modal-submit{display:flex;justify-content:center;align-items:center;gap:10px;width:100%;min-height:52px;margin-top:23px;padding:14px 18px;border:1px solid #087953;border-radius:12px;background:#087953;color:#fff;font:600 14px/1.4 Arial,Helvetica,sans-serif;cursor:pointer;transition:background .15s,transform .15s}
.waitlist-modal-submit:hover{background:#086744;border-color:#086744}
.waitlist-modal-submit:active{transform:translateY(1px)}
.waitlist-modal-submit:disabled{opacity:.76;cursor:wait;transform:none}
.waitlist-modal button:focus-visible{outline:3px solid #6944b5;outline-offset:3px}
.waitlist-modal-spinner{width:15px;height:15px;border:2px solid #ffffff66;border-top-color:#fff;border-radius:50%;animation:waitlist-modal-spin .7s linear infinite}
.waitlist-modal-success .waitlist-modal-purpose{margin-bottom:0}
.waitlist-success-icon{display:block;margin-bottom:19px}
.waitlist-modal-success h2:focus{outline:none}
.waitlist-modal [hidden]{display:none!important}
body.waitlist-modal-open{overflow:hidden}
@keyframes waitlist-modal-spin{to{transform:rotate(360deg)}}
@keyframes waitlist-modal-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:380px){.waitlist-modal-shell{padding:42px 22px 24px}.waitlist-modal h2{font-size:29px}.waitlist-modal-purpose{font-size:13px}}
@media(prefers-reduced-motion:reduce){.waitlist-modal,.waitlist-modal-spinner{animation:none}.waitlist-modal input,.waitlist-modal button{transition:none}}
