.am-promo[hidden]{display:none!important}.am-promo{position:fixed;right:0;top:45%;z-index:8500;width:122px;filter:drop-shadow(0 0 18px #ff6b0040);animation:am-arrive .65s ease-out,am-nudge .65s 1s 2;transform-origin:right center}
.am-promo-open{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;padding:12px 12px 18px;background:linear-gradient(145deg,#21120f,#100d10);border:1px solid #ff902c;border-right:0;border-radius:18px 0 0 18px;color:#fff5e9;cursor:pointer;font:600 15px/1.3 system-ui,sans-serif;text-align:center}
.am-promo-art{width:100%;height:77px;background:url('marathon-poster.png') 83% 7%/500% auto no-repeat;border-radius:10px}.am-promo-open strong{color:#ff9d24;font-size:22px}.am-promo-date{font-size:13px}.am-promo-arrow{position:absolute;left:-15px;top:45%;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#28170f;border:1px solid #ff902c;font-size:23px}
.am-promo-close,.am-promo-modal-close{width:44px;height:44px;border:1px solid #ffffff40;border-radius:50%;background:#211710;color:#fff;cursor:pointer;font:28px/1 system-ui;display:grid;place-items:center;z-index:2}.am-promo-close{position:absolute;right:4px;top:-24px}
.am-promo-dialog{position:fixed;inset:0;margin:auto;width:min(900px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:12px;border:1px solid #ff902c80;border-radius:20px;background:#130f12;color:#fff5e9;overflow:auto;box-shadow:0 20px 100px #000a;font-family:system-ui,sans-serif}.am-promo-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}
.am-promo-dialog img{display:block;width:100%;height:auto;max-height:calc(100dvh - 140px);object-fit:contain;border-radius:12px}.am-promo-modal-close{position:absolute;right:16px;top:16px;background:#151014dd}.am-promo-footer{padding:16px 0 4px;display:flex;justify-content:center}.am-promo-join{display:block;min-height:48px;width:min(380px,100%);border-radius:12px;padding:12px 24px;background:linear-gradient(110deg,#ffb400,#ff6b00 45%,#ed176b);color:#fff;text-align:center;text-decoration:none;font-weight:700;font-size:18px}.am-promo-dialog[open] .am-promo-join{animation:am-cta .45s .3s both}.am-promo-open:focus-visible,.am-promo-close:focus-visible,.am-promo-modal-close:focus-visible,.am-promo-join:focus-visible{outline:3px solid #fff;outline-offset:3px}
@keyframes am-arrive{from{transform:translateX(110%)}to{transform:translateX(0)}}@keyframes am-nudge{0%,100%{transform:translateX(0) rotate(0)}50%{transform:translateX(-7px) rotate(-2deg)}}@keyframes am-cta{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:640px){.am-promo{top:auto;bottom:calc(90px + env(safe-area-inset-bottom,0px));width:100px}.am-promo-open{padding:9px 8px 12px;gap:5px;font-size:12px}.am-promo-open strong{font-size:19px}.am-promo-art{height:58px}.am-promo-date{font-size:12px}.am-promo-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 24px);padding:8px;border-radius:15px}.am-promo-dialog img{border-radius:9px}.am-promo-footer{padding:12px 4px 4px}.am-promo-modal-close{right:10px;top:10px}}
@media(prefers-reduced-motion:reduce){.am-promo,.am-promo-dialog[open] .am-promo-join{animation:none}}
