.elementor-3897 .elementor-element.elementor-element-bb91fae{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-3897 .elementor-element.elementor-element-672fb44{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3897 .elementor-element.elementor-element-736a107{text-align:left;}.elementor-3897 .elementor-element.elementor-element-736a107 img{width:100%;}.elementor-3897 .elementor-element.elementor-element-9f6dabb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3897 .elementor-element.elementor-element-2cd5510 .eael-contact-form-7 .wpcf7-not-valid-tip{display:block !important;}.elementor-3897 .elementor-element.elementor-element-2cd5510 .eael-contact-form-7 .wpcf7-validation-errors{display:block !important;}.elementor-3897 .elementor-element.elementor-element-2cd5510 .eael-contact-form-7-wrapper{text-align:default;}.elementor-3897 .elementor-element.elementor-element-2cd5510 .eael-contact-form-7 .wpcf7-form p:not(:last-of-type) .wpcf7-form-control-wrap{margin-bottom:0px;}.elementor-3897 .elementor-element.elementor-element-55d28d3{--display:flex;}.elementor-3897 .elementor-element.elementor-element-55d28d3:not(.elementor-motion-effects-element-type-background), .elementor-3897 .elementor-element.elementor-element-55d28d3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FEFEFC;}.elementor-3897 .elementor-element.elementor-element-763f87b img{width:57%;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-3897 .elementor-element.elementor-element-672fb44{--width:40%;}.elementor-3897 .elementor-element.elementor-element-9f6dabb{--width:50%;}}/* Start custom CSS for eael-contact-form-7, class: .elementor-element-2cd5510 *//* ===============================
   ASTRO BOOKING FORM
================================= */
.astro-booking{
    max-width:700px;
    margin:40px auto;
    padding:35px;
    background:#fffaf3;
    border-radius:18px;
    box-shadow:0 8px 25px rgba(0,0,0,.12);
    border:1px solid #edd8aa;
    font-family:"Poppins",sans-serif;
}
/* Labels */
.astro-booking label{
    display:block;
    font-size:15px;
    font-weight:600;
    color:#5a1d22;
    margin:18px 0 8px;
}
/* Inputs */
.astro-booking select,
.astro-booking input,
.astro-booking textarea{
    width:100%;
    height:52px;
    padding:0 16px;
    border:1px solid #d7b66c;
    border-radius:10px;
    background:#fff;
    font-size:15px;
    line-height:50px; /* keeps text vertically centered inside fixed-height fields */
    color:#333;
    transition:.3s;
    box-sizing:border-box;
}
/* Textarea */
.astro-booking textarea{
    height:140px;
    padding:15px;
    line-height:1.5;
    resize:vertical;
}
/* Focus */
.astro-booking select:focus,
.astro-booking input:focus,
.astro-booking textarea:focus{
    outline:none;
    border-color:#b8860b;
    box-shadow:0 0 8px rgba(184,134,11,.25);
}
/* Disabled selects (e.g. Duration locked until astrologer/counsellor chosen) */
.astro-booking select:disabled{
    background:#f3ede1;
    color:#999;
    border-color:#e2d6ba;
    cursor:not-allowed;
}
/* Hide all service boxes */
.service-box{
    display:none;
    margin-top:20px;
    padding:18px;
    background:#fffdf7;
    border:1px solid #ead39b;
    border-radius:12px;
}
/* Price Box */
.price-box{
    margin-top:25px;
    padding:20px;
    min-height:100px; /* prevents layout jump between 1-line and 2-line messages */
    background:#fff;
    border-left:5px solid #b8860b;
    border-radius:12px;
    font-size:18px;
    font-weight:600;
    color:#5a1d22;
    box-sizing:border-box;
}
#selectedPrice{
    margin-top:10px;
    font-size:22px;
    font-weight:700;
    color:#8b0000;
    line-height:1.4;
}
/* Two Columns */
.form-row{
    display:flex;
    gap:20px;
    margin-top:5px;
}
.form-field{
    flex:1;
}
/* Button */
.pay-button{
    display:block;
    width:100%;
    margin-top:30px;
    padding:16px;
    background:#7a2035;
    color:#fff !important;
    text-align:center;
    text-decoration:none;
    font-size:18px;
    font-weight:600;
    border-radius:10px;
    transition:.3s;
    box-sizing:border-box;
}
.pay-button:hover{
    background:#b8860b;
    color:#fff !important;
}
/* Disabled state: shown when no valid service/price selected yet,
   or for items like Gold Yantra with no live payment link */
.pay-button.disabled{
    background:#c9b8a8;
    cursor:not-allowed;
    pointer-events:none; /* belt-and-braces alongside the JS click guard */
}
.pay-button.disabled:hover{
    background:#c9b8a8;
}
/* Placeholder */
::placeholder{
    color:#999;
}
/* Dropdown options */
.astro-booking option{
    color:#333;
}
/* Success Banner — shown after Pay Now submits successfully,
   just before redirecting to Razorpay */
.success-banner{
    display:none; /* JS reveals this on successful submission */
    margin-top:20px;
    padding:22px;
    background:#f0faf3;
    border:1px solid #a9dcb8;
    border-left:5px solid #2e7d32;
    border-radius:12px;
    text-align:center;
}
.success-banner #successMessage{
    font-size:16px;
    font-weight:600;
    color:#2e7d32;
    margin-bottom:14px;
    line-height:1.5;
}
.whatsapp-button{
    display:inline-block;
    padding:12px 24px;
    background:#25D366;
    color:#fff !important;
    text-decoration:none;
    font-size:15px;
    font-weight:600;
    border-radius:8px;
    transition:.3s;
}
.whatsapp-button:hover{
    background:#1ebe5b;
    color:#fff !important;
}

/* Mobile */
@media(max-width:768px){
    .astro-booking{
        padding:20px;
        margin:20px 10px;
    }
    .form-row{
        flex-direction:column;
        gap:0;
    }
}/* End custom CSS */