.k-popup-overlay {
    position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.65); z-index: 100000;
    display: flex; align-items: center; justify-content: center;
    opacity: 0; visibility: hidden; transition: all 0.3s ease;
}
.k-popup-overlay.k-show { opacity: 1; visibility: visible; }
.k-popup-content {
    background: #fff; padding: 35px 25px; border-radius: 12px;
    width: 90%; max-width: 400px; text-align: center;
    position: relative; box-shadow: 0 10px 40px rgba(0,0,0,0.3);
    transform: translateY(20px); transition: transform 0.3s ease;
}
.k-popup-overlay.k-show .k-popup-content { transform: translateY(0); }
.k-popup-close {
    position: absolute; top: 12px; right: 18px;
    font-size: 28px; color: #999; cursor: pointer;
    line-height: 1; font-weight: 300;
}
.k-popup-content h3 { font-size: 24px; color: #111; margin: 0 0 10px; font-weight: 700; }
.k-popup-content p { font-size: 15px; color: #555; margin-bottom: 20px; line-height: 1.4; }
.k-popup-phone {
    width: 100%; padding: 14px; margin-bottom: 15px;
    border: 2px solid #eaeaea; border-radius: 8px;
    font-size: 16px; text-align: center; transition: border 0.2s;
    box-sizing: border-box;
}
.k-popup-phone:focus { border-color: #000; outline: none; }
.k-popup-submit, .k-popup-continue {
    width: 100%; padding: 16px; background: #000; color: #fff;
    border: none; border-radius: 8px; font-size: 16px; font-weight: 600;
    cursor: pointer; text-transform: uppercase; letter-spacing: 0.5px;
}
.k-popup-submit:hover, .k-popup-continue:hover { background: #333; }
.k-popup-consent { font-size: 11px !important; color: #888 !important; margin: 15px 0 0 !important; }

/* Mobile Full Screen */
@media(max-width: 600px) {
    .k-popup-content {
        width: 100%; height: 100%; max-width: none; border-radius: 0;
        display: flex; flex-direction: column; justify-content: center;
    }
    .k-popup-close { top: 20px; right: 20px; font-size: 32px; }
}
