/* 1. Relative container to anchor the absolute pointer */
.cta-wrapper {
    position: relative;
    display: inline-flex;
    align-items: center;
}

/* 2. Styling and position of the pointing object */
.pointer-arrow {
    position: absolute;
    left: -48px; /* Position to the left of the button pointing right */
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    pointer-events: none; /* Allows mouse interactions to pass through to the button */
    /* Animation setup */
    animation: pointBackAndForth 1.2s ease-in-out infinite alternate;
    /* Transition for smooth fade-in / fade-out */
    opacity: 1;
    visibility: visible;
    /* When mouse leaves the button/wrapper:
           delay 0.8s before starting to fade back in over 0.3s */
    transition: opacity 0.3s ease 0.8s, visibility 0.3s ease 0.8s;
}

/* 3. Hide the pointer immediately when hovering over the CTA area */
.cta-wrapper:hover .pointer-arrow {
    opacity: 0;
    visibility: hidden;
    /* Instant disappear on hover without delay */
    transition: opacity 0.15s ease 0s, visibility 0.15s ease 0s;
}

/* 4. Smooth back-and-forth pointing keyframe animation */
@keyframes pointBackAndForth {
    0% {
        transform: translateY(-50%) translateX(0px);
    }

    100% {
        transform: translateY(-50%) translateX(12px); /* Moves right toward the button */
    }
}
