/* Illustrated booking CTA: gentle idle sway and a pressed state. */
.cta-image-link{display:block;width:100%;border-radius:12px;text-decoration:none;line-height:1;cursor:pointer;transform:translateY(0) scale(1);transform-origin:50% 70%;transition:transform .12s ease,filter .12s ease}
.cta-image-link img{display:block;width:100%;height:auto;border-radius:0;background:transparent;animation:cta-invite-sway 3.6s ease-in-out infinite;transform-origin:50% 70%;will-change:transform}
@keyframes cta-invite-sway{0%,100%{transform:translateY(0) rotate(-.45deg)}50%{transform:translateY(-4px) rotate(.45deg)}}
.cta-image-link:focus-visible{outline:3px solid var(--navy);outline-offset:6px;box-shadow:0 0 0 9px var(--gold)}
.cta-image-link:focus-visible img{animation-play-state:paused}
@media(hover:hover){.cta-image-link:hover{filter:brightness(1.025)}.cta-image-link:hover img{animation-play-state:paused}}
.cta-image-link:active{transform:translateY(5px) scale(.97);filter:brightness(.96)}
.cta-image-link:active img{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.cta-image-link{transition:none}.cta-image-link img{animation:none;will-change:auto}.cta-image-link:active{transform:translateY(3px)}}
