.registration-notice{width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:42px 36px 32px;border:1px solid #ffffff30;border-top:4px solid var(--red);background:var(--coal);color:var(--paper);box-shadow:0 24px 90px #0008;overflow:auto;overscroll-behavior:contain}
.registration-notice::backdrop{background:#000b}
.registration-notice[open]{animation:registration-notice-in .18s ease-out}
.registration-notice-close{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:#fff}
.registration-notice-close:hover{background:#ffffff12}
.registration-notice-kicker{padding-right:32px;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.13em}
.registration-notice h2{margin:19px 0 22px;font:700 clamp(32px,7vw,42px)/1.02 var(--narrow);text-wrap:balance}
.registration-notice-date{font-size:18px;line-height:1.55}
.registration-notice-date strong{white-space:nowrap}
.registration-notice-copy{margin-top:16px;color:#ccc;font-size:17px;line-height:1.6}
.registration-notice-confirm{display:block;width:100%;min-height:48px;margin-top:28px;padding:13px 18px;border:1px solid transparent;background:var(--red);color:white;font-weight:600;font-size:16px;transition:background .18s}
.registration-notice-confirm:hover{background:#b6211c}
.registration-notice button:focus-visible{outline:2px solid white;outline-offset:4px}
body.registration-notice-open{overflow:hidden}
@keyframes registration-notice-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:480px){.registration-notice{padding:40px 24px 24px}}
@media(prefers-reduced-motion:reduce){.registration-notice[open]{animation:none}.registration-notice-confirm{transition:none}}
