.promo-login-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem}.promo-login-modal-overlay.hidden{display:none}.promo-login-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.promo-login-modal-container{position:relative;z-index:1;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column}.promo-login-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem 1.5rem 1rem;background:linear-gradient(to bottom right,#eef2ff,#f5f3ff);border-bottom:1px solid #e5e7eb;border-radius:1rem 1rem 0 0;flex-shrink:0}.promo-login-modal-title{display:flex;gap:.5rem;align-items:center;margin:0;font-size:1.25rem;font-weight:700;color:#111827}.promo-login-modal-icon{font-size:1.5rem}.promo-login-modal-close{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;color:#6b7280;background:#fff;border:none;border-radius:9999px;cursor:pointer;transition:color .2s,background-color .2s}.promo-login-modal-close:hover{color:#111827;background:#f3f4f6}.promo-login-modal-close svg{width:1.5rem;height:1.5rem}.promo-login-modal-slot{flex:1;min-height:0;overflow-y:auto;padding:1rem 1.5rem}.promo-login-modal-slot.login-auth-slot:empty{min-height:200px}.promo-login-modal-footer{display:flex;gap:.75rem;justify-content:flex-end;align-items:center;padding:1rem 1.5rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb;border-radius:0 0 1rem 1rem;flex-shrink:0}.promo-login-modal-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:.5rem;cursor:pointer;transition:all .2s;text-decoration:none;border:1px solid transparent}.promo-login-modal-btn-secondary{color:#374151;background:#fff;border-color:#d1d5db}.promo-login-modal-btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.promo-login-modal-btn-primary{color:#fff;background:linear-gradient(to right,#6366f1,#8b5cf6)}.promo-login-modal-btn-primary:hover{opacity:.95;transform:translateY(-1px)}.promo-input-error{border-color:#ef4444!important;background-color:#fef2f2!important}.promo-input-error:focus{box-shadow:0 0 0 3px #ef444433!important}.promo-input-warning{border-color:#f59e0b!important;background-color:#fffbeb!important}.promo-input-warning:focus{box-shadow:0 0 0 3px #f59e0b33!important}.promo-error-message{color:#ef4444;font-size:.75rem;margin-top:.375rem;display:flex;align-items:center;gap:.25rem}.promo-error-message:before{content:"⚠"}.promo-char-counter{font-size:.75rem;transition:color .2s ease}.promo-btn-loading{opacity:.7;cursor:not-allowed}.promo-btn-loading:hover{transform:none!important;box-shadow:inherit!important}.promo-spinner{animation:promo-spin 1s linear infinite}@keyframes promo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.promo-shake{animation:promo-shake .3s ease-in-out}@keyframes promo-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.promo-fade-in{animation:promo-fade-in .4s ease-out}@keyframes promo-fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.promo-success-icon{animation:promo-bounce-in .5s ease-out}@keyframes promo-bounce-in{0%{transform:scale(0);opacity:0}50%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}.promo-price-wrapper,.promo-price-wrapper input{min-width:0}.promo-price-wrapper select{flex-shrink:0;min-width:4.5rem}.promo-phone-wrapper{display:flex;gap:.5rem;align-items:stretch}.promo-country-select{flex-shrink:0;width:7.5rem;cursor:pointer}.promo-phone-input{flex:1}.promo-section-icon{transition:transform .3s ease}.promo-section:hover .promo-section-icon{transform:scale(1.05)}.promo-amenity-checkbox{transition:all .2s ease}.promo-amenity-checkbox:has(input:checked){background-color:#eef2ff;border-color:#818cf8}.promo-amenity-checkbox:has(input:checked) span{color:#4338ca;font-weight:500}.promo-radio-group label{transition:all .2s ease;padding:.5rem 1rem;border-radius:.5rem;border:1px solid transparent}.promo-radio-group label:has(input:checked){background-color:#eef2ff;border-color:#c7d2fe}@media(max-width:640px){.promo-phone-wrapper{flex-direction:column}.promo-country-select{width:100%}}.promo-input:focus,.promo-select:focus,.promo-textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.promo-input::-moz-placeholder,.promo-textarea::-moz-placeholder{color:#9ca3af;font-style:normal}.promo-input::placeholder,.promo-textarea::placeholder{color:#9ca3af;font-style:normal}.promo-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:1.25rem;padding-right:2.5rem}.promo-progress-bar{height:4px;background-color:#e5e7eb;border-radius:2px;overflow:hidden;margin-bottom:1.5rem}.promo-progress-fill{height:100%;background:linear-gradient(to right,#6366f1,#8b5cf6);transition:width .3s ease}.promo-field-slide-in{animation:promo-field-slide-in .3s ease-out}@keyframes promo-field-slide-in{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}[data-field-group]{transition:opacity .25s ease,transform .25s ease}.promo-field-visible{opacity:1;transform:translateY(0)}.promo-field-hidden{opacity:0;transform:translateY(-10px);pointer-events:none}[data-field-group]:nth-child(1){transition-delay:0ms}[data-field-group]:nth-child(2){transition-delay:30ms}[data-field-group]:nth-child(3){transition-delay:60ms}[data-field-group]:nth-child(4){transition-delay:90ms}[data-field-group]:nth-child(5){transition-delay:.12s}[data-field-group]:nth-child(6){transition-delay:.15s}[data-field-group]:nth-child(7){transition-delay:.18s}[data-field-group]:nth-child(8){transition-delay:.21s}#dynamic-fields-hint{display:inline-flex;align-items:center;gap:.5rem;color:#6b7280;font-style:italic;transition:color .2s ease}#dynamic-fields-hint:before{content:"💡";font-style:normal}#dynamic-fields-container:not(.hidden) #dynamic-fields-hint{color:#4f46e5}#property-type{transition:all .2s ease}#property-type:not([value=""]){border-color:#818cf8;background-color:#eef2ff}#property-type:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f133}[data-field-group=bedrooms],[data-field-group=amenitiesResidential],[data-field-group=offices],[data-field-group=meetingRooms],[data-field-group=storeFront],[data-field-group=amenitiesCommercial],[data-field-group=landUse],[data-field-group=landServices]{position:relative}@media(max-width:768px){[data-field-group]:nth-child(n){transition-delay:0ms}.promo-field-slide-in{animation-duration:.2s}}
