.promo-dialog{position:fixed;inset:0;margin:auto;border:1px solid #354365;padding:0;width:min(440px,calc(100% - 28px));max-height:calc(100dvh - 36px);border-radius:24px;background:#0a0e15;color:#fafbff;overflow:auto;box-shadow:0 24px 90px #0009}.promo-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.promo-close{position:sticky;display:block;top:10px;margin:10px 10px -54px auto;z-index:2;min-width:44px;min-height:44px;border:1px solid #ffffff45;border-radius:50%;background:#05070be8;color:#fff;font:28px/1 system-ui;cursor:pointer}.promo-image{width:100%;height:auto;max-height:330px;object-fit:contain;background:#05070b}.promo-content{padding:30px}.promo-content.promo-no-image{padding-top:66px;background:radial-gradient(ellipse at top right,#225cff22,transparent 70%)}.promo-label{font:800 11px/1.4 system-ui;letter-spacing:.16em;text-transform:uppercase;color:#ff861f;margin:0 0 12px}.promo-title{font:900 clamp(26px,6vw,36px)/1.08 system-ui;letter-spacing:-.035em;margin:0 0 16px;overflow-wrap:anywhere}.promo-message{font:15px/1.6 system-ui;color:#c8d1df;white-space:pre-line;overflow-wrap:anywhere;margin:0 0 24px}.promo-cta{display:flex;justify-content:center;align-items:center;min-height:48px;padding:12px 16px;border-radius:12px;background:#ff801e;color:#080b12;font:800 14px/1.4 system-ui;text-decoration:none}.promo-blue .promo-cta{background:#225cff;color:#fff}.promo-blue .promo-label{color:#83a6ff}.promo-dismiss{display:block;margin:14px auto 0;background:none;border:0;color:#b7c2d2;padding:10px;min-height:44px;font:13px system-ui;cursor:pointer}.promo-dialog :focus-visible{outline:3px solid #ffae62;outline-offset:-4px}.promo-dialog [hidden]{display:none!important}@media(max-width:360px){.promo-content{padding:24px}}@media print{.promo-dialog{display:none}}

.promo-flyer .promo-image{aspect-ratio:4/5;max-height:calc(100dvh - 160px);object-fit:contain;background:#05070b}.promo-flyer .promo-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.promo-flyer .promo-content{padding:16px 22px 8px}.promo-flyer .promo-message{margin-bottom:16px}.promo-flyer .promo-dismiss{margin-top:6px}.promo-flyer .promo-label{margin-bottom:10px}

.promo-video{display:block;width:100%;aspect-ratio:4/5;max-height:calc(100dvh - 160px);object-fit:contain;background:#05070b}
