/* ── WhatsApp Flutuante Perry ── */
.wa-flutuante-perry {
    position: fixed !important; width: 65px !important; height: 65px !important;
    bottom: 25px !important; right: 25px !important;
    background-color: #25d366 !important; border-radius: 50px !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.5) !important; z-index: 9999999 !important; cursor: pointer !important;
}
.wa-flutuante-perry::after {
    content: '' !important; position: absolute !important;
    width: 100% !important; height: 100% !important;
    border-radius: 50% !important; border: 2px solid #25d366 !important;
    animation: pulso-sda 2s infinite !important;
}
@keyframes pulso-sda {
    0%   { transform: scale(1);   opacity: 1; }
    100% { transform: scale(1.8); opacity: 0; }
}

/* ── Modal ── */
#modal-zap-perry {
    display: none; position: fixed !important; z-index: 10000000 !important;
    left: 0 !important; top: 0 !important; width: 100vw !important; height: 100vh !important;
    background-color: rgba(0,0,0,0.95) !important; align-items: center !important;
    justify-content: center !important; backdrop-filter: blur(12px) !important;
    opacity: 0; transition: opacity 0.4s ease !important;
}
.perry-form-container {
    background: radial-gradient(circle, #053D5B 0%, #021722 100%) !important;
    padding: 40px !important; border-radius: 15px !important;
    width: 90% !important; max-width: 450px !important;
    position: relative !important; text-align: center !important;
    border: 1px solid rgba(157,239,1,0.4) !important;
    box-shadow: 0px 20px 80px rgba(0,0,0,1) !important;
    transform: translateY(40px) !important;
    transition: transform 0.4s cubic-bezier(0.175,0.885,0.32,1.275) !important;
    box-sizing: border-box !important; font-family: 'Poppins', sans-serif !important;
}
#modal-zap-perry.aberto { display: flex !important; opacity: 1 !important; }
#modal-zap-perry.aberto .perry-form-container { transform: translateY(0) !important; }

.perry-form-group { text-align: left !important; margin-bottom: 15px !important; width: 100% !important; }
.perry-form-container input {
    width: 100% !important; height: 55px !important; padding: 0 20px !important;
    border: 2px solid transparent !important; border-radius: 10px !important;
    font-size: 16px !important; background: #fff !important; color: #000 !important;
    box-sizing: border-box !important; display: block !important;
    transition: border 0.3s ease !important;
}
.perry-input-error { border: 2px solid #ff4d4d !important; box-shadow: 0 0 10px rgba(255,77,77,0.3) !important; }
.perry-error-msg {
    color: #ff4d4d !important; font-size: 12px !important; margin-top: 5px !important;
    display: none; font-weight: 700 !important;
}
.perry-btn-enviar {
    background-color: #9DEF01 !important; color: #000 !important; border: none !important;
    width: 100% !important; height: 60px !important; border-radius: 10px !important;
    font-weight: 800 !important; cursor: pointer !important; font-size: 18px !important;
    margin-top: 10px !important; text-transform: uppercase !important;
    transition: all 0.4s ease !important;
}
.perry-btn-enviar:hover {
    background-color: #021722 !important; color: #fff !important;
    transform: translateY(-5px) !important; outline: 2px solid #9DEF01 !important;
}
.perry-close {
    position: absolute !important; right: 20px !important; top: 15px !important;
    font-size: 24px !important; cursor: pointer !important;
    color: #fff !important; opacity: 0.8 !important;
}
