.modal-overlay{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.65);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:1.25rem;overflow:hidden;overscroll-behavior:contain;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--transition),visibility var(--transition)}.modal-overlay.open{opacity:1;visibility:visible;pointer-events:auto}.modal{background:#fff;border-radius:28px;width:100%;max-width:520px;padding:2rem 2rem 1.75rem;box-shadow:0 24px 80px rgba(0,0,0,.25);transform:scale(0.95) translateY(12px);transition:transform 0.35s ease;overflow:visible;flex-shrink:0}@media (max-height:640px){.modal{max-height:calc(100vh - 2.5rem);overflow-y:auto}}.modal-overlay.open .modal{transform:scale(1) translateY(0)}.modal h2{font-size:1.375rem;font-weight:800;margin-bottom:0.5rem;letter-spacing:-0.02em}.modal-desc{font-size:0.9375rem;color:var(--color-text-muted);margin-bottom:1.5rem;line-height:1.55}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:0.875rem;font-weight:700;margin-bottom:0.4rem;color:var(--color-text)}.form-group input{width:100%;padding:0.75rem 1rem;border:1px solid #e0e0e0;border-radius:10px;font-size:0.9375rem;font-family:inherit;transition:border-color var(--transition),box-shadow var(--transition)}.form-group input::placeholder{color:#aaa}.form-group input:focus{outline:none;border-color:var(--color-text);box-shadow:0 0 0 3px rgba(26,26,26,.08)}.phone-input{display:flex;align-items:stretch;border:1px solid #e0e0e0;border-radius:10px;overflow:hidden}.phone-input:focus-within{border-color:var(--color-text);box-shadow:0 0 0 3px rgba(26,26,26,.08)}.phone-country-select{flex:0 0 auto;max-width:42%;min-width:7.5rem;padding:0.75rem 2rem 0.75rem 0.75rem;border:none;border-right:1px solid #e0e0e0;background:#fafafa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 0.65rem center;font-size:0.8125rem;font-weight:600;color:var(--color-text);cursor:pointer;appearance:none;-webkit-appearance:none}.phone-country-select:focus{outline:none;background-color:#fff}@media (min-width:480px){.phone-country-select{max-width:11.5rem;font-size:0.875rem}}.phone-input input{border:none;border-radius:0;flex:1}.phone-input input:focus{box-shadow:none}.modal-actions{display:flex;justify-content:flex-end;gap:0.75rem;margin-top:1.5rem;flex-wrap:wrap}.btn-modal-cancel{padding:0.7rem 1.35rem;border:1px solid #e0e0e0;border-radius:10px;background:#fff;font-weight:600;font-size:0.9375rem;color:var(--color-text)}.btn-modal-cancel:hover{background:#f5f5f5}.btn-modal-submit{padding:0.7rem 1.5rem;border-radius:10px;background:#1a1a1a;color:#fff;font-weight:700;font-size:0.9375rem}.btn-modal-submit:hover{background:#333}body.modal-open{overflow:hidden;position:fixed;width:100%;left:0;right:0}