#cpf-popup-overlay{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.65);
    display:flex;
    justify-content:center;
    align-items:center;
    visibility:hidden;
    opacity:0;
    transition:.35s;
    z-index:999999;
}
#cpf-popup-overlay.active{
    visibility:visible;
    opacity:1;
}
#cpf-popup{
    width:450px;
    max-width:95%;
    background:#fff;
    border-radius:18px;
    padding:40px;
    position:relative;
    transform:translateY(40px);
    transition:.35s;
    box-shadow:0 30px 70px rgba(0,0,0,.25);
}
#cpf-popup-overlay.active #cpf-popup{
    transform:translateY(0);
}
#cpf-close{
    position:absolute;
    top:15px;
    right:18px;
    border:none;
    background:none;
    font-size:30px;
    cursor:pointer;
}
#cpf-popup input,
#cpf-popup textarea,
#cpf-popup select{
    width:100%;
    padding:14px;
    border:1px solid #ddd;
    border-radius:10px;
    margin-bottom:15px;
    box-sizing:border-box;
}
#cpf-popup textarea{
    min-height:120px;
    resize:vertical;
}
#cpf-popup button[type=submit]{
    width:100%;
    padding:15px;
    background:#000;
    color:#fff;
    border:none;
    border-radius:10px;
    cursor:pointer;
}
.cpf-success{
    display:none;
    margin-top:15px;
    text-align:center;
    color:#11863b;
    font-weight:600;
}
#cpf-floating-btn{
    position:fixed;
    right:-52px;
    top:50%;
    transform:translateY(-50%) rotate(-90deg);
    background:#000;
    color:#fff;
    padding:14px 28px;
    border-radius:12px 12px 0 0;
    cursor:pointer;
    z-index:999998;
    font-weight:600;
    box-shadow:0 10px 25px rgba(0,0,0,.25);
    transition:.3s;
}
#cpf-floating-btn:hover{
    right:-45px;
    background:#222;
}
@media(max-width:768px){
    #cpf-popup{
        padding:25px;
    }
    #cpf-floating-btn{
        right:-48px;
        font-size:14px;
    }
}