
.promo-trigger{position:fixed;left:22px;bottom:22px;z-index:89;border:1px solid #68715c;background:#151715ed;color:var(--green);border-radius:30px;padding:14px 20px;font:12px Consolas,monospace;cursor:pointer;transition:background .25s,color .25s}
.promo-trigger:hover{background:var(--green);color:#111310}
.promo-dialog{box-sizing:border-box;width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:54px 44px;border:1px solid #465044;background:#111310;color:#f1f2eb;overflow:auto}
.promo-dialog::backdrop{background:rgba(4,7,5,.82);backdrop-filter:blur(8px)}
.promo-dialog[open]{display:flex;align-items:center;gap:42px;animation:promo-enter .45s ease both}
.promo-close{position:absolute;top:12px;right:14px;width:36px;height:36px;border:1px solid #465044;border-radius:50%;background:transparent;color:inherit;font:24px Arial;cursor:pointer}
.promo-cat{flex:0 0 165px;transform-origin:50% 0;animation:cat-arrive .9s ease both}.promo-cat svg{display:block;width:100%;height:auto}
.promo-message small{font:9px/1.6 Consolas,monospace;letter-spacing:1.5px;color:var(--green)}
.promo-message h2{font:36px/1.08 Arial,sans-serif;letter-spacing:-1.3px;margin:20px 0}.promo-message h2 em{font-family:Georgia,serif;font-weight:400;color:var(--green)}
.promo-message p{font:14px/1.6 Arial;color:#b4bbaf}.promo-code{display:block;font:32px/1.4 Consolas,monospace;letter-spacing:3px;color:var(--green);user-select:all;margin:16px 0}
.promo-copy{border:0;border-radius:26px;background:var(--green);color:#111310;padding:14px 24px;cursor:pointer;font:13px Arial}.promo-feedback{display:block;min-height:20px;margin-top:10px;font:12px Arial;color:var(--green)}
.promo-message .promo-note{font-size:12px;max-width:260px}.promo-contact{display:inline-block;margin-top:8px;color:inherit;font:12px Arial;text-underline-offset:5px}
.promo-dialog button:focus-visible,.promo-contact:focus-visible{outline:2px solid var(--green);outline-offset:4px}
@keyframes promo-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes cat-arrive{from{opacity:0;transform:translateY(-30px) rotate(-8deg)}60%{transform:rotate(3deg)}to{opacity:1;transform:none}}
@media(max-width:600px){.promo-trigger{left:14px;bottom:14px;padding:13px}.promo-dialog[open]{flex-direction:column;gap:12px;padding:36px 24px 28px;text-align:center}.promo-cat{flex-basis:auto;width:85px}.promo-message h2{font-size:30px;margin:12px 0}.promo-message .promo-note{margin-inline:auto}.promo-code{margin:10px 0}}
@media(prefers-reduced-motion:reduce){.promo-dialog[open],.promo-cat{animation:none}.promo-trigger{transition:none}}
