/*========== Widget ==========*/

.cul-contact-widget{
    position:fixed;
    right:20px;
    bottom:160px;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:12px;
    z-index:9999;
}

/*========== Botones ==========*/

.cul-contact-btn,
.cul-popover-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    font-weight:600;
    text-decoration:none;
    transition:.25s;
}

.cul-contact-btn{
    width:190px;
    height:58px;
    border-radius:40px;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(0,0,0,.18);
}

.cul-contact-btn:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 28px rgba(0,0,0,.22);
    color:#fff!important;
}

.cul-contact-btn i{font-size:22px;color:#fff!important;}

.cul-phone,.cul-copy-btn{background:#ff7a00;}
.cul-phone:hover,.cul-copy-btn:hover{background:#ef7100;}

.cul-whatsapp{background:#25D366;}
.cul-whatsapp:hover{background:#1fc65a;}

.cul-call-btn{background:#173f7a;color:#fff!important;}
.cul-call-btn:hover{background:#0f3265;}

/*========== Popover ==========*/

.cul-phone-popover{
    position:absolute;
    top:50%;
    right:205px;
    width:260px;
    padding:18px;
    background:#fff;
    border-radius:18px;
    box-shadow:0 15px 40px rgba(0,0,0,.18);
    opacity:0;
    visibility:hidden;
    transform:translateY(-50%) translateX(18px) scale(.95);
    transform-origin:right center;
    transition:opacity .3s,transform .3s cubic-bezier(.22,1,.36,1),visibility .3s;
}

.cul-phone-popover.show{
    opacity:1;
    visibility:visible;
    transform:translateY(-50%) translateX(0) scale(1);
}

.cul-phone-popover::after{
    content:"";
    position:absolute;
    top:50%;
    right:-8px;
    width:16px;
    height:16px;
    background:#fff;
    transform:translateY(-50%) rotate(45deg);
}

/*========== Contenido ==========*/

.cul-popover-title{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:18px;
    color:#ff7a00;
    font-size:24px;
    font-weight:700;
}

.cul-popover-title i{color:#ff7a00;}

.cul-popover-number{
    margin:18px 0;
    text-align:center;
    font-size:22px;
    font-weight:700;
    color:#333;
    white-space:nowrap;
}

.cul-popover-actions{
    display:flex;
    gap:10px;
}

.cul-popover-btn{
    flex:1;
    height:42px;
    border:none;
    border-radius:12px;
    cursor:pointer;
    box-shadow:0 6px 14px rgba(0,0,0,.10);
}

.cul-popover-btn:hover{
    transform:translateY(-2px);
}

/*========== Toast ==========*/

.cul-toast{
    position:fixed;
    right:25px;
    bottom:35px;
    padding:14px 22px;
    border-radius:10px;
    background:#2ecc71;
    color:#fff;
    font-weight:600;
    box-shadow:0 10px 30px rgba(0,0,0,.18);
    animation:culToast .25s;
    z-index:999999;
}

@keyframes culToast{
    from{opacity:0;transform:translateY(10px);}
    to{opacity:1;transform:translateY(0);}
}

/*========== Responsive ==========*/

@media (max-width:768px){

    .cul-contact-widget{
        right:15px;
        bottom:135px;
    }

    .cul-contact-btn{
        width:58px;
        height:58px;
    }

    .cul-contact-btn span{
        display:none;
    }

    .cul-phone-popover{
        right:75px;
        width:240px;
        transform:translateY(-50%) translateX(15px) scale(.95);
    }

    .cul-phone-popover.show{
        transform:translateY(-50%) translateX(0) scale(1);
    }

    .cul-popover-title{font-size:20px;}
    .cul-popover-number{font-size:20px;}
    .cul-popover-actions{flex-direction:column;}
}