a.cta-btn {
    display: grid;
    grid-template-columns: 90px auto;
    background: white;
    padding: 15px 2rem;
    border-radius: var(--BorderRadius);
    color: var(--FooterBtnColor);
    align-items: center;
    font-weight: bolder;
    font-size: 2rem;
    letter-spacing: 2px;
    line-height: 1.5;
    box-shadow: 9px 11px 15px rgb(78 117 147 / 25%);
    transition: var(--TransitionEase);
}

a.cta-btn:hover {
    box-shadow: 9px 11px 15px rgb(78 117 147 / 35%);
    transition: var(--TransitionEase);
}

a.cta-btn .cta-text {
    display: flex;
    flex-direction: column;
}

.cta-icon {
    width: 62px;
    height: 62px;
    border: 1px solid var(--FooterBtnColor);
    border-radius: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    transition: var(--TransitionEase);
}

.cta-icon:before {
    content: "\f3d6";
    position: absolute;
    font-family: "Ionicons";
    font-size: 1.75rem;
    transition: var(--TransitionEase);
    right: 17px;
}

a.cta-btn .cta-text small {
    font-size: var(--FontSizeP);
    letter-spacing: 1px;
    font-weight: 400;
}


a.cta-btn:hover .cta-icon {
    color: white;
    background: var(--FooterBtnColor);
    transition: var(--TransitionEase);
}

.cta-icon:after {
    content: "\f3d6";
    position: absolute;
    font-family: "Ionicons";
    font-size: 1.75rem;
    left: -2rem;
    opacity: 0;
    transition: var(--TransitionEase);
}

a.cta-btn:hover .cta-icon:before {
    right: -2rem;
    opacity: 0;
    transition: var(--TransitionEase);
}

a.cta-btn:hover .cta-icon:after {
    left: 23px;
    opacity: 1;
    transition: var(--TransitionEase);
}


@media (max-width: 1800px) {
    a.cta-btn {
        font-size: 1.75rem;
        grid-template-columns: 80px auto;
    }


}

@media (max-width: 1600px) {
    a.cta-btn {
        font-size: 1.5rem;
        grid-template-columns: 80px auto;
        letter-spacing: 1.5px;
        padding: 15px 1.5rem;
    }

}



@media (max-width: 1024px) {
    a.cta-btn {
        font-size: 1.6rem;
        padding: 10px 1rem;
        max-width: 360px;
    }
}

@media (max-width: 800px) {
    a.cta-btn {
        max-width: none;
    }
}

@media (max-width: 600px) {

    a.cta-btn {
        font-size: 1.5rem;
    }

}

@media (max-width: 480px) {
    .cta-icon {
        display: none;
    }

    a.cta-btn {
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        letter-spacing: 1px;
    }
}