/* Jonnell Singh Contact Form Only */

#js-contact-form {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
}

#js-contact-form .js-form-field {
    width: 100%;
    margin-bottom: 25px;
}

#js-contact-form input[type="text"],
#js-contact-form input[type="email"],
#js-contact-form textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 15px 18px;
    border: 1px solid #d5d5d5;
    border-radius: 3px;
    background-color: #EEEEEE;
    color: #333333;
    font-family: inherit;
    font-size: 16px;
    line-height: 1.5;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#js-contact-form input[type="text"],
#js-contact-form input[type="email"] {
    height: 52px;
}

#js-contact-form textarea {
    min-height: 170px;
    resize: vertical;
}

#js-contact-form input::placeholder,
#js-contact-form textarea::placeholder {
    color: #666666;
    opacity: 1;
}

#js-contact-form input:focus,
#js-contact-form textarea:focus {
    border-color: #2A1A5E;
    box-shadow: 0 0 0 1px #2A1A5E;
}

#js-contact-form .js-form-submit {
    margin-top: 10px;
}

#js-contact-form input[type="submit"] {
    display: inline-block;
    padding: 15px 32px;
    border: none;
    border-radius: 3px;
    background-color: #2A1A5E;
    color: #FFFFFF;
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

#js-contact-form input[type="submit"]:hover {
    background-color: #F45905;
}

#js-contact-form .wpcf7-not-valid-tip {
    margin-top: 6px;
    font-size: 13px;
}

#js-contact-form .wpcf7-response-output {
    margin: 25px 0 0;
    padding: 12px 15px;
}

/* Mobile */

@media (max-width: 767px) {

    #js-contact-form .js-form-field {
        margin-bottom: 20px;
    }

    #js-contact-form input[type="text"],
    #js-contact-form input[type="email"] {
        height: 50px;
    }

    #js-contact-form textarea {
        min-height: 150px;
    }

    #js-contact-form input[type="submit"] {
        width: 100%;
    }
}


/* =========================================
   JONNELL SINGH FOOTER SUBSCRIBE FORM ONLY
   ========================================= */

/* Jonnell Singh Footer Subscribe Form Only */

#js-footer-subscribe {
    display: flex;
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    gap: 12px;
    align-items: center;
}

#js-footer-subscribe .js-subscribe-field {
    flex: 1;
    margin: 0;
}

#js-footer-subscribe .js-subscribe-field input[type="email"] {
    width: 100%;
    height: 52px;
    box-sizing: border-box;
    padding: 0 22px;
    border: 1px solid #EEEEEE;
    border-radius: 50px;
    background-color: #EEEEEE;
    color: #333333;
    font-family: inherit;
    font-size: 16px;
    outline: none;
}

#js-footer-subscribe .js-subscribe-field input[type="email"]::placeholder {
    color: #666666;
    opacity: 1;
}

#js-footer-subscribe .js-subscribe-field input[type="email"]:focus {
    border-color: #2A1A5E;
    box-shadow: 0 0 0 1px #2A1A5E;
}

#js-footer-subscribe .js-subscribe-button {
    margin: 0;
}

#js-footer-subscribe .js-subscribe-button input[type="submit"] {
    height: 52px;
    padding: 0 30px;
    border: none;
    border-radius: 50px;
    background-color: #2A1A5E;
    color: #FFFFFF;
    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.5px;
    cursor: pointer;
    white-space: nowrap;
    transition: background-color 0.2s ease;
}

#js-footer-subscribe .js-subscribe-button input[type="submit"]:hover {
    background-color: #F45905;
}

/* Mobile */

@media (max-width: 600px) {

    #js-footer-subscribe {
        flex-direction: column;
        width: 100%;
    }

    #js-footer-subscribe .js-subscribe-field {
        width: 100%;
    }

    #js-footer-subscribe .js-subscribe-button {
        width: 100%;
    }

    #js-footer-subscribe .js-subscribe-button input[type="submit"] {
        width: 100%;
    }
}



height: 60px;
overflow: hidden;
position: absolute;
top: -10px;
transform: translateY(-10px);








/* =========================================================
   JONNELL SINGH - SPEAKING BOOKING FORM
   Contact Form 7
   Scoped ONLY to this form
   ========================================================= */

.jonnell-speaking-booking-form {
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


/* INTRO */

.jonnell-speaking-booking-form .jonnell-form-intro {
    margin-bottom: 35px;
}

.jonnell-speaking-booking-form .jonnell-form-intro h3 {
    margin: 0 0 18px;
    line-height: 1.3;
}

.jonnell-speaking-booking-form .jonnell-form-intro p {
    margin: 0 0 15px;
    line-height: 1.7;
}


/* TWO-COLUMN FIELDS */

.jonnell-speaking-booking-form .jonnell-form-row {
    display: flex;
    gap: 24px;
    width: 100%;
}

.jonnell-speaking-booking-form .jonnell-form-row .jonnell-form-field {
    flex: 1;
    min-width: 0;
}


/* FIELD SPACING */

.jonnell-speaking-booking-form .jonnell-form-field {
    width: 100%;
    margin-bottom: 22px;
}


/* LABELS */

.jonnell-speaking-booking-form label {
    display: block;
    margin-bottom: 8px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
}


/* INPUTS AND SELECTS */

.jonnell-speaking-booking-form input[type="text"],
.jonnell-speaking-booking-form input[type="email"],
.jonnell-speaking-booking-form input[type="tel"],
.jonnell-speaking-booking-form input[type="date"],
.jonnell-speaking-booking-form select,
.jonnell-speaking-booking-form textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 14px 16px;

    border: 1px solid #d5d5d5;
    border-radius: 6px;

    /* FILLED FIELD COLOR */
    background-color: #f3f3f3;

    color: #333;
    font-family: inherit;
    font-size: 16px;
    line-height: 1.4;

    outline: none;

    transition:
        border-color 0.2s ease,
        background-color 0.2s ease;
}


/* STANDARD INPUT HEIGHT */

.jonnell-speaking-booking-form input[type="text"],
.jonnell-speaking-booking-form input[type="email"],
.jonnell-speaking-booking-form input[type="tel"],
.jonnell-speaking-booking-form input[type="date"],
.jonnell-speaking-booking-form select {
    min-height: 52px;
}


/* TEXTAREAS */

.jonnell-speaking-booking-form textarea {
    min-height: 150px;
    border-radius: 6px;
    resize: vertical;
}


/* FOCUS */

.jonnell-speaking-booking-form input:focus,
.jonnell-speaking-booking-form select:focus,
.jonnell-speaking-booking-form textarea:focus {
    border-color: #999;
    background-color: #eeeeee;
}


/* PLACEHOLDER */

.jonnell-speaking-booking-form input::placeholder,
.jonnell-speaking-booking-form textarea::placeholder {
    color: #777;
    opacity: 1;
}


/* SUBMIT BUTTON */

.jonnell-speaking-booking-form .jonnell-form-submit {
    margin-top: 25px;
}

.jonnell-speaking-booking-form input[type="submit"] {
    display: inline-block;

    padding: 15px 28px;
    min-height: 52px;

    border: none;
    border-radius: 5px;

    background-color: #000;
    color: #fff;

    font-family: inherit;
    font-size: 15px;
    font-weight: 600;
    line-height: 1;

    text-transform: uppercase;
    letter-spacing: 0.5px;

    cursor: pointer;

    transition: opacity 0.2s ease;
}

.jonnell-speaking-booking-form input[type="submit"]:hover {
    opacity: 0.8;
}


/* CONTACT FORM 7 VALIDATION */

.jonnell-speaking-booking-form .wpcf7-not-valid-tip {
    margin-top: 6px;
    font-size: 13px;
}

.jonnell-speaking-booking-form .wpcf7-response-output {
    margin: 20px 0 0;
    padding: 12px 15px;
    border-radius: 5px;
}


/* MOBILE */

@media (max-width: 767px) {

    .jonnell-speaking-booking-form .jonnell-form-row {
        display: block;
    }

    .jonnell-speaking-booking-form .jonnell-form-row .jonnell-form-field {
        width: 100%;
    }

    .jonnell-speaking-booking-form input[type="submit"] {
        width: 100%;
    }
}