.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.7);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease-out}.modal-content{background:#fff;border-radius:12px;padding:30px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.3);animation:slideUp .3s ease-out}.modal-close{position:absolute;top:15px;right:20px;background:none;border:none;font-size:28px;cursor:pointer;color:#666;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.modal-close:hover{background-color:#f5f5f5;color:#333}.modal-header{margin-bottom:25px}.modal-header h2{margin:0 0 10px;color:#1049a5;font-family:var(--font-nunito),system-ui,sans-serif;font-size:24px;font-weight:700}.modal-header p{margin:0;color:#333;font-family:var(--font-inter),system-ui,sans-serif;line-height:1.5}.newsletter-form .form-group{margin-bottom:20px}.newsletter-form .form-group label{display:block;margin-bottom:8px;color:#333;font-family:var(--font-inter),system-ui,sans-serif;font-weight:600}.newsletter-form .form-group input[type=email]{width:100%;padding:12px 15px;border:2px solid #e0e0e0;border-radius:8px;font-family:var(--font-inter),system-ui,sans-serif;font-size:16px;transition:all .3s ease;box-sizing:border-box}.newsletter-form .form-group input[type=email]:focus{outline:none;border-color:#1049a5;box-shadow:0 0 0 3px rgba(16,73,165,.1)}.newsletter-form .form-group input[type=email]:disabled{background-color:#f5f5f5;cursor:not-allowed}.newsletter-form .submit-button-newsletter{width:100%;padding:14px 38px;background:#1049a5;color:#fff;border:none;border-radius:999px;font-family:var(--font-nunito),system-ui,sans-serif;font-size:17px;font-weight:700;cursor:pointer;transition:box-shadow .2s ease,opacity .2s ease}.newsletter-form .submit-button-newsletter:hover:not(:disabled){box-shadow:0 6px 20px rgba(16,73,165,.3)}.newsletter-form .submit-button-newsletter:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.newsletter-form .message{margin-top:15px;padding:12px 16px;border-radius:10px;font-size:14px;font-weight:600;line-height:1.5;text-align:center}.newsletter-form .message.success{background-color:rgba(16,73,165,.08);color:#1049a5;border:1px solid rgba(16,73,165,.25)}.newsletter-form .message.error{background-color:#f0f2f5;color:#2b3540;border:1px solid #d5dbe2}.modal-footer{margin-top:25px;padding-top:20px;border-top:1px solid #e9ecef}.modal-footer p{margin:0;color:#666;font-family:var(--font-inter),system-ui,sans-serif;font-size:13px;text-align:center}.modal-footer p a{color:#1049a5;text-decoration:none}.modal-footer p a:hover{text-decoration:underline}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:768px){.modal-content{margin:20px;padding:20px;width:calc(100% - 40px)}.modal-header h2{font-size:20px}}.newsletter-form .consent-row{display:flex;align-items:flex-start;gap:10px;margin:.9rem 0 1.1rem;font-size:.86rem;line-height:1.55;color:#45525f;text-align:left;cursor:pointer}.newsletter-form .consent-row input{width:18px;height:18px;flex-shrink:0;margin-top:2px;accent-color:#1049a5;cursor:pointer}.newsletter-form .consent-row a{color:#1049a5;font-weight:600}