.modal-overlay{
    position:fixed;
    top:0;left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.55);
    backdrop-filter: blur(4px);
    display:none;
    z-index:999;
}

/* ===== MODAL WINDOW ===== */
.modal{
    position:fixed;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:380px;
    background:#ffffff;
    border-radius:16px;
    z-index:1000;
    display:none;
    box-shadow:0 20px 60px rgba(0,0,0,.25);
    overflow:hidden;
    animation: modalIn .25s ease-out;
}

/* animation */
@keyframes modalIn{
    from{
        opacity:0;
        transform:translate(-50%,-45%) scale(.95);
    }
    to{
        opacity:1;
        transform:translate(-50%,-50%) scale(1);
    }
}

.modal__box{
    padding:24px;
    position:relative;
    font-family: Arial, sans-serif;
}

/* CLOSE BUTTON */
.modal__close{
    position:absolute;
    right:14px;
    top:12px;
    font-size:22px;
    width:32px;
    height:32px;
    border-radius:50%;
    border:none;
    background:#f3f3f3;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.2s;
}

.modal__close:hover{
    background:#e9e9e9;
}

/* TITLE */
.foz-form-modal__title{
    text-align:center;
    font-size:20px;
    font-weight:700;
    margin-bottom:6px;
    color:#1a1a1a;
}

/* SUBTITLE */
.foz-form-modal__subtitle{
    text-align:center;
    font-size:13px;
    color:#7a7a7a;
    margin-bottom:18px;
}

/* INPUTS */
.foz-form-modal input{
    width:100%;
    padding:13px 14px;
    margin-bottom:12px;
    border:1px solid #e6e6e6;
    border-radius:10px;
    font-size:14px;
    outline:none;
    transition:.2s;
    background:#fafafa;
}

.foz-form-modal input:focus{
    border-color:#2aa7df;
    background:#fff;
    box-shadow:0 0 0 3px rgba(42,167,223,.15);
}

/* PHONE WRAP */
.foz-phone-wrap{
    position:relative;
}

/* REQUIRED STAR */
.foz-required{
    position:absolute;
    right:12px;
    top:50%;
    transform:translateY(-50%);
    color:#ff4d4d;
    font-size:16px;
}

/* BUTTON */
.foz-form-modal button{
    width:100%;
    padding:14px;
    margin-top:4px;
    border:none;
    border-radius:10px;
    background:linear-gradient(135deg,#2aa7df,#1d86c6);
    color:#fff;
    font-size:15px;
    font-weight:600;
    cursor:pointer;
    transition:.2s;
    box-shadow:0 10px 20px rgba(42,167,223,.25);
}

.foz-form-modal button:hover{
    transform:translateY(-1px);
    box-shadow:0 14px 28px rgba(42,167,223,.3);
}

/* CHECKBOX */
.foz-checkbox{
    display:flex;
    gap:10px;
    align-items:flex-start;
    font-size:12px;
    color:#666;
    margin-top:14px;
    line-height:1.3;
}

.foz-checkbox input{
    margin-top:2px;
    transform:scale(1.1);
}