.registration-modal{display:none;position:fixed;inset:0;z-index:2147483647;background:rgba(0,0,0,.65);padding:24px;overflow:auto;align-items:center;justify-content:center}
.registration-modal:target{display:flex}
body:has(.registration-modal:target){overflow:hidden}
.registration-card{position:relative;width:100%;max-width:460px;margin:auto;padding:32px;background:#fff;color:#222;border-radius:12px;box-shadow:0 16px 60px #0005;font:16px/1.5 Arial,sans-serif}
.registration-card h2{margin:0 28px 16px 0;font-size:26px;color:#222}
.registration-card p{margin:0 0 20px}
.registration-close{position:absolute;right:16px;top:8px;font-size:30px;color:#333;text-decoration:none}
.registration-card label{display:block;margin:14px 0 6px;font-weight:600}
.registration-card input{box-sizing:border-box;width:100%;padding:11px 12px;border:1px solid #999;border-radius:5px;font:inherit;background:#fff;color:#222}
.registration-card button,.registration-done{display:block;box-sizing:border-box;width:100%;margin-top:24px;padding:12px;border:0;border-radius:5px;background:#17588c;color:#fff;font:700 16px/1.5 Arial,sans-serif;text-align:center;text-decoration:none;cursor:pointer}
.registration-card :focus-visible{outline:3px solid #df9b22;outline-offset:3px}
@media(max-width:480px){.registration-modal{padding:12px}.registration-card{padding:24px}}
