.camp-invitation{position:fixed;right:22px;bottom:22px;z-index:150;width:min(340px,calc(100vw - 24px));padding:22px;background:#f7f7ef;color:#163c39;border:1px solid #d7e2d3;border-top:4px solid #f5c76d;border-radius:18px;box-shadow:0 12px 40px #123b3824;animation:camp-invite-in .24s ease-out;box-sizing:border-box;max-height:calc(100dvh - 100px);overflow-y:auto}.camp-invitation[hidden]{display:none!important}.camp-invitation-close{position:absolute;right:5px;top:5px;width:44px;height:44px;display:grid;place-items:center;border:0;background:transparent;color:#163c39;cursor:pointer;border-radius:50%}.camp-invitation-close:hover{background:#e7eee1}.camp-invitation-close svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}.camp-invitation-brand{display:flex;gap:8px;align-items:center;padding-right:24px;margin-bottom:14px;font-size:10px;letter-spacing:.09em;font-weight:600}.camp-invitation-brand span{font-size:9px;color:#64776c;font-weight:400}.camp-invitation h2{font-size:28px;line-height:1.12;letter-spacing:-.035em;font-weight:500;margin:0 0 9px;max-width:280px}.camp-invitation p{font-size:13px;line-height:1.5;color:#536c62;margin:0 0 16px}.camp-invitation-cta{display:flex;justify-content:space-between;align-items:center;gap:12px;text-decoration:none;background:#f5c76d;color:#153b37;border:1px solid #f5c76d;border-radius:10px;padding:12px 15px;min-height:46px;font-size:14px;line-height:1.4;font-weight:600;box-sizing:border-box}.camp-invitation-cta:hover{background:#f8d68e;color:#153b37}.camp-invitation-cta svg{flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}.camp-invitation a:focus-visible,.camp-invitation button:focus-visible{outline:2px solid #a05c1e;outline-offset:3px}@keyframes camp-invite-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:760px){.camp-invitation{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:auto;max-width:380px;margin-left:auto;padding:15px 16px;border-radius:14px;max-height:min(290px,calc(100dvh - 100px))}.camp-invitation-brand{margin-bottom:8px}.camp-invitation h2{font-size:23px;max-width:calc(100% - 18px);margin-bottom:6px}.camp-invitation p{font-size:12px;line-height:1.45;margin-bottom:10px}.camp-invitation-cta{font-size:13px;padding:10px 13px;min-height:44px}}@media(prefers-reduced-motion:reduce){.camp-invitation{animation:none}}
