.hjs-wa-float{
    --hjs-wa-green:#25D366;
    --hjs-wa-green-dark:#1DA851;
    --hjs-wa-dark:#171717;
    --hjs-wa-white:#FFFFFF;

    position:fixed;
    right:calc(24px + env(safe-area-inset-right));
    bottom:calc(24px + env(safe-area-inset-bottom));
    display:flex;
    align-items:center;
    gap:10px;
    z-index:99999;
    font-family:Arial,Helvetica,sans-serif;
    -webkit-tap-highlight-color:transparent;
}

.hjs-wa-float *,
.hjs-wa-float *::before,
.hjs-wa-float *::after{
    box-sizing:border-box;
}

.hjs-wa-float__label{
    display:inline-flex;
    min-height:42px;
    padding:10px 15px;
    align-items:center;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    background:var(--hjs-wa-dark);
    box-shadow:0 10px 26px rgba(0,0,0,.18);
    color:var(--hjs-wa-white);
    font-size:13px;
    font-weight:700;
    line-height:1.2;
    white-space:nowrap;
    opacity:0;
    transform:translateX(10px);
    transition:
        opacity .24s ease,
        transform .24s ease;
}

.hjs-wa-float__button{
    position:relative;
    display:inline-flex;
    width:60px;
    height:60px;
    flex:0 0 60px;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:50%;
    background:var(--hjs-wa-green);
    box-shadow:
        0 14px 30px rgba(0,0,0,.24),
        0 0 0 1px rgba(255,255,255,.15) inset;
    color:var(--hjs-wa-white);
    text-decoration:none;
    transition:
        background-color .22s ease,
        transform .22s ease,
        box-shadow .22s ease;
}

.hjs-wa-float__button::before{
    content:"";
    position:absolute;
    inset:-6px;
    border:1px solid rgba(37,211,102,.38);
    border-radius:50%;
    animation:hjsWaPulse 2.4s ease-out infinite;
    pointer-events:none;
}

.hjs-wa-float__icon{
    width:31px;
    height:31px;
    fill:currentColor;
}

.hjs-wa-float__button:focus-visible{
    outline:3px solid rgba(37,211,102,.38);
    outline-offset:4px;
}

@media(hover:hover) and (pointer:fine){
    .hjs-wa-float:hover .hjs-wa-float__label{
        opacity:1;
        transform:translateX(0);
    }

    .hjs-wa-float__button:hover{
        background:var(--hjs-wa-green-dark);
        box-shadow:
            0 18px 34px rgba(0,0,0,.28),
            0 0 0 1px rgba(255,255,255,.18) inset;
        color:var(--hjs-wa-white);
        transform:translateY(-3px) scale(1.03);
    }
}

@media(max-width:1024px){
    .hjs-wa-float{
        right:calc(20px + env(safe-area-inset-right));
        bottom:calc(20px + env(safe-area-inset-bottom));
    }

    .hjs-wa-float__label{
        opacity:1;
        transform:none;
    }

    .hjs-wa-float__button{
        width:58px;
        height:58px;
        flex-basis:58px;
    }
}

@media(max-width:767px){
    .hjs-wa-float{
        right:calc(16px + env(safe-area-inset-right));
        bottom:calc(16px + env(safe-area-inset-bottom));
    }

    .hjs-wa-float__label{
        display:none;
    }

    .hjs-wa-float__button{
        width:56px;
        height:56px;
        flex-basis:56px;
    }

    .hjs-wa-float__icon{
        width:29px;
        height:29px;
    }
}

@media(
    max-width:900px
) and (
    orientation:landscape
) and (
    max-height:520px
){
    .hjs-wa-float{
        right:calc(14px + env(safe-area-inset-right));
        bottom:calc(12px + env(safe-area-inset-bottom));
    }

    .hjs-wa-float__label{
        display:none;
    }

    .hjs-wa-float__button{
        width:52px;
        height:52px;
        flex-basis:52px;
    }
}

body.elementor-editor-active .hjs-wa-float,
.elementor-editor-active .hjs-wa-float{
    display:none;
}

@media(prefers-reduced-motion:reduce){
    .hjs-wa-float__button,
    .hjs-wa-float__label{
        transition:none;
    }

    .hjs-wa-float__button::before{
        animation:none;
    }
}

@keyframes hjsWaPulse{
    0%{
        opacity:.7;
        transform:scale(.92);
    }

    70%{
        opacity:0;
        transform:scale(1.2);
    }

    100%{
        opacity:0;
        transform:scale(1.2);
    }
}
