.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(17,24,39,.8);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:var(--background-color);border:1px solid var(--neutral-200);padding:2rem;border-radius:var(--border-radius);position:relative;width:90%;max-width:500px;box-shadow:0 10px 25px rgba(0,0,0,.2)}.modal-close-button{position:absolute;top:.5rem;right:1rem;background:none;border:none;font-size:2rem;cursor:pointer;color:var(--neutral-500)}.contact-form h2{margin-top:0;margin-bottom:1.5rem;font-size:1.5rem;color:var(--neutral-900)}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--neutral-700)}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--neutral-200);border-radius:var(--border-radius);font-size:1rem;box-sizing:border-box;background-color:var(--neutral-100);color:var(--neutral-900);transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-brand);box-shadow:0 0 0 2px rgba(59,130,246,.2)}.form-button{width:100%;padding:.75rem;border:none;border-radius:var(--border-radius);background-color:var(--primary-brand);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s}.form-button:hover{background-color:var(--primary-brand-hover)}.form-button:disabled{background-color:var(--neutral-500);cursor:not-allowed}.form-error{color:var(--danger-color);margin-top:1rem}.form-error,.form-success-message{text-align:center}.form-success-message h3{margin-top:0}