/*
** REVIMATE POPUP MANAGER STYLES V3.4
*/

/* --- Base Structure --- */
.rpp-thankyou-hidden { display: none !important; }
#revinate-popup-modal, #revinate-thankyou-modal { background: #F9F8F6; box-sizing: border-box; position: relative; text-align: center; transition: opacity 0.4s, transform 0.4s ease-out; width: 100%; }
#revinate-popup-overlay.revinate-popup-visible { opacity: 1 !important; }

/* --- Display Modes --- */
.rpp-mode-welcome-mat { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #F9F8F6; z-index: 2147483647; display: flex; align-items: center; justify-content: center; overflow-y: auto; padding: 2rem; }
.rpp-mode-modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.75); z-index: 10000; display: flex; align-items: center; justify-content: center; padding: 1.5rem; }
.rpp-mode-modal-overlay #revinate-popup-modal { box-shadow: 0 10px 30px rgba(0,0,0,0.15); transform: translateY(-20px); }
.rpp-mode-modal-overlay.revinate-popup-visible #revinate-popup-modal { transform: translateY(0); }
.rpp-mode-corner-banner #revinate-popup-modal { position: fixed; z-index: 10000; box-shadow: 0 5px 25px rgba(0,0,0,0.15); }
.rpp-pos-bottom-right { bottom: 20px; right: 20px; transform: translateX(20px); }
.rpp-pos-bottom-left { bottom: 20px; left: 20px; transform: translateX(-20px); }
.rpp-pos-top-right { top: 20px; right: 20px; transform: translateX(20px); }
.rpp-pos-top-left { top: 20px; left: 20px; transform: translateX(-20px); }
.rpp-mode-corner-banner.revinate-popup-visible .rpp-pos-bottom-right, .rpp-mode-corner-banner.revinate-popup-visible .rpp-pos-bottom-left, .rpp-mode-corner-banner.revinate-popup-visible .rpp-pos-top-right, .rpp-mode-corner-banner.revinate-popup-visible .rpp-pos-top-left { transform: translateX(0); }

/* --- Content & Component Styles --- */
.revinate-popup-content { padding: 2.5rem; }
#revinate-popup-close{position:absolute;top:15px;right:20px;font-size:30px;font-weight:300;color:#888;cursor:pointer;line-height:1;transition:color .2s;font-family:Arial,sans-serif}
#revinate-popup-close:hover{color:#2d2d2d}
.rpp-logo { max-width: 80px; margin: 0 auto 1.5rem; }
.revinate-popup-content h2{font-family:'Playfair Display',serif;font-size:1.8rem;font-weight:700;color:#2d2d2d;margin:0 0 0.75rem;text-transform:uppercase;letter-spacing:2px;line-height:1.2;}
.revinate-popup-content p{font-family:'Lato',sans-serif;margin:0 0 1.5rem;font-size:1rem;color:#555;line-height:1.6;}
.revinate-popup-content p.rpp-disclaimer{font-size:0.8rem;color:#777;margin-top:-0.5rem;margin-bottom:2rem;}
#revinate_contact_api_form fieldset { padding: 0; margin: 0; }

/*
 * === FORM LAYOUT STYLES ===
 * The classes .rpp-form-stacked and .rpp-form-side-by-side control the layout.
*/

/* --- Layout 1: Stacked (Classic & Reliable) --- */
.rpp-form-stacked fieldset { border: none; }
.rpp-form-stacked input[type=email] {
    font-family: 'Lato', sans-serif;
    width: 100%!important;
    padding: 14px 18px;
    border: 1px solid #dcdcdc;
    background: #ffffff;
    font-size: 15px;
    margin-bottom: 15px;
    box-sizing: border-box;
    border-radius: 2px;
    transition: border-color 0.3s;
}
.rpp-form-stacked .button { width: 100% !important; }
.rpp-form-stacked button[type=submit] { width: 100%; padding: 14px 20px; font-family: 'Lato', sans-serif; color: #ffffff; border: none; border-radius: 2px; font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; cursor: pointer; transition: background-color 0.3s; }

/* --- Layout 2: Side-by-Side (Modern) --- */
.rpp-form-side-by-side fieldset { border: 1px solid #dcdcdc; display: flex; flex-direction: row; align-items: stretch; border-radius: 2px; }
.rpp-form-side-by-side input[type=email] { font-family: 'Lato', sans-serif; flex-grow: 1; width: 60%; padding: 14px 18px; border: none; background: #ffffff; font-size: 15px; box-sizing: border-box; margin: 0; border-radius: 2px 0 0 2px; outline: none; transition: all 0.3s; }
.rpp-form-side-by-side input[type=email]:focus { box-shadow: 0 0 0 2px rgba(174, 98, 48, 0.3); }
.rpp-form-side-by-side .button { display: flex; margin: 0; padding: 0; }
.rpp-form-side-by-side button[type=submit] { font-family: 'Lato', sans-serif; width: auto; flex-shrink: 0; padding: 14px 22px; color: #ffffff; border: none; border-radius: 0 2px 2px 0; font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; cursor: pointer; margin: 0; transition: background-color 0.3s; }

/* --- Thank You Modal Button --- */
#revinate-thankyou-modal .button button { font-family: 'Lato', sans-serif; width: 100%; padding: 14px 20px; color: #ffffff; border: none; border-radius: 2px; font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px; cursor: pointer; transition: background-color 0.3s; }

/* --- Responsive Adjustments --- */
@media (max-width: 600px) {
    .revinate-popup-content { padding: 1.5rem; }
    .revinate-popup-content h2 { font-size: 1.5rem; }
    .revinate-popup-content p { font-size: 0.95rem; }
    .rpp-form-side-by-side fieldset { flex-direction: column; border: none; } /* Stack the modern form on mobile */
    .rpp-form-side-by-side input[type=email] { border-radius: 2px; border: 1px solid #dcdcdc; margin-bottom: 1rem; text-align: center; }
    .rpp-form-side-by-side button[type=submit] { border-radius: 2px; width: 100%; }
    .rpp-mode-corner-banner #revinate-popup-modal { width: 100%; max-width: 100%; bottom: 0; left: 0; right: 0; top: auto; transform: translateY(100%); border-radius: 0; }
    .rpp-mode-corner-banner.revinate-popup-visible #revinate-popup-modal { transform: translateY(0); }
}