.download-signup { width: min(440px, calc(100% - 32px)); max-height: calc(100dvh - 32px); overflow:auto; margin:auto; padding:32px; border:1px solid #dce2e8; border-radius:8px; background:#fff; color:#1c2630; box-shadow:0 24px 64px #1c263033; font-family:Arial,sans-serif; letter-spacing:0; }
.download-signup::backdrop { background:#16232999; }
.download-signup__close { position:absolute; top:12px; right:12px; width:36px; height:36px; background:none; border:0; color:#535f6c; font-size:26px; cursor:pointer; }
.download-signup h2 { font-size:26px; line-height:1.2; margin:0 0 12px; letter-spacing:0; }
.download-signup p { font-size:14px; line-height:1.6; margin:0 0 20px; color:#535f6c; }
.download-signup label { display:block; margin:0 0 7px; font-size:14px; font-weight:600; }
.download-signup input { display:block; width:100%; min-width:0; height:46px; border:1px solid #cbd4db; border-radius:5px; padding:10px 12px; margin:0 0 18px; background:#fff; color:#1c2630; font:16px Arial,sans-serif; }
.download-signup :focus-visible { outline:2px solid #188056; outline-offset:3px; }
.download-signup__submit { width:100%; min-height:48px; padding:12px; border:0; border-radius:5px; background:#188056; color:white; font-size:15px; font-weight:600; cursor:pointer; }
.download-signup__submit:disabled { opacity:.65; cursor:wait; }
.download-signup .download-signup__disclosure { font-size:12px; margin:16px 0 0; }
.download-signup a { color:#0d5f51; text-decoration:underline; }
.download-signup .download-signup__error { color:#a21c1c; margin-top:16px; }
.download-signup__success a { display:block; margin:16px 0 0; }
.download-signup [hidden] { display:none!important; }
@media(max-width:420px){.download-signup{padding:24px 20px}.download-signup h2{font-size:24px}}
