.elfie-banner{position:fixed;z-index:1000;right:12px;bottom:8px;width:min(440px,95vw);aspect-ratio:3/2;opacity:0;transform:translateY(14px);transition:opacity 1.5s cubic-bezier(.2,.7,.2,1),transform .55s cubic-bezier(.2,.8,.2,1);pointer-events:none}.elfie-banner--ready{opacity:1;transform:translateY(calc(-1 * var(--elfie-lift, 0px)))}.elfie-banner:not(.elfie-banner--ready){visibility:hidden}.elfie-banner:not(.elfie-banner--ready) *{pointer-events:none!important}.elfie-banner--closing{transition-duration:.3s}.elfie-banner--waiting,.elfie-banner--closing{opacity:0;transform:translateY(calc(12px - var(--elfie-lift, 0px)));pointer-events:none!important}.elfie-banner--waiting *, .elfie-banner--closing *{pointer-events:none!important}.elfie-banner__inner{position:absolute;inset:0;filter:drop-shadow(0 7px 15px #000a)}.elfie-banner__art{position:absolute;inset:0;width:100%;height:100%;max-width:none!important;pointer-events:none}.elfie-banner__link{position:absolute;inset:0;pointer-events:auto;clip-path:polygon(0 30%,9% 0,43% 0,58% 44%,100% 44%,100% 89%,0 89%)}.elfie-banner__plane{position:absolute;left:3.7%;top:72%;width:6%;height:10%;pointer-events:none;filter:drop-shadow(0 1px 3px #000)}.elfie-banner__plane svg{width:100%;height:100%}.elfie-banner__copy{position:absolute;left:11%;top:68%;width:42%;color:#f1dfc3;pointer-events:none}.elfie-banner__copy strong{display:block;color:#ffe0a3;font:700 clamp(10px,1.1vw,14px)/1.1 Georgia,serif!important;letter-spacing:normal;text-transform:none}.elfie-banner__copy span{display:block;margin-top:4px;color:#d3bfae;font:400 clamp(7px,.78vw,10px)/1.3 Arial,sans-serif!important;letter-spacing:normal;text-transform:none}.elfie-banner__cta{box-sizing:border-box!important;text-decoration:none!important;display:flex;align-items:center;justify-content:center;position:absolute;left:54.8%;top:69.1%;width:40.8%;height:14%;border:0;border-radius:5px;cursor:pointer;background:transparent;pointer-events:auto;transition:box-shadow .12s cubic-bezier(.2,.8,.2,1),transform .1s cubic-bezier(.2,.8,.2,1)}.elfie-banner__cta span{display:block;color:#ffe3ad;font:bold clamp(19px,2vw,26px)/1 Georgia,serif!important;text-shadow:0 2px 3px #310000;letter-spacing:normal;text-transform:none}.elfie-banner__cta:hover,.elfie-banner__cta:focus-visible{box-shadow:inset 0 0 0 1px #ffda99,0 0 10px 2px #f7aa4c88;outline:none}.elfie-banner__cta:after{content:'';position:absolute;inset:2px;border-radius:3px;background:linear-gradient(110deg,transparent 25%,#fff6 50%,transparent 70%);opacity:0;animation:elfie-shine 5s infinite;pointer-events:none}.elfie-banner__cta:active{transform:scale(.96);box-shadow:inset 0 2px 6px #300a0caa,0 0 5px #f7aa4c77}.elfie-banner__close,.elfie-banner__close:focus{all:unset;box-sizing:border-box;position:absolute;left:89%;top:47%;width:9%;height:14%;border:0;border-radius:50%;background:transparent;cursor:pointer;pointer-events:auto;transition:box-shadow .12s cubic-bezier(.2,.8,.2,1),transform .1s cubic-bezier(.2,.8,.2,1)}.elfie-banner__close:hover,.elfie-banner__close:focus-visible{outline:none;box-shadow:inset 0 0 0 1px #ffe4a7,0 0 10px 2px #ffba5888}.elfie-banner__close:active{transform:scale(.90);box-shadow:inset 0 2px 5px #300a0caa,0 0 5px #f7aa4c77}@keyframes elfie-shine{0%,70%,100%{opacity:0;transform:translateX(-20%)}80%{opacity:.5}90%{opacity:0;transform:translateX(20%)}}@media(prefers-reduced-motion:reduce){.elfie-banner,.elfie-banner *,.elfie-banner *:after{animation:none!important;transition:none!important}}

@media(max-width:600px){.elfie-banner{width:min(360px,94vw);right:6px;bottom:calc(6px + env(safe-area-inset-bottom,0px))}}
