.elementor-1758 .elementor-element.elementor-element-efc9528{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1758 .elementor-element.elementor-element-0a34588 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 50px 0px;}.elementor-1758 .elementor-element.elementor-element-0a34588 .bdt-gravity-forms .gform_wrapper .field_sublabel_above .ginput_complex.ginput_container label, .elementor-1758 .elementor-element.elementor-element-0a34588 .bdt-gravity-forms .gform_wrapper .field_sublabel_below .ginput_complex.ginput_container label, .elementor-1758 .elementor-element.elementor-element-0a34588 .bdt-gravity-forms .gform_wrapper .field_sublabel_above div[class*="gfield_time_"].ginput_container label, .elementor-1758 .elementor-element.elementor-element-0a34588 .bdt-gravity-forms .gform_wrapper .field_sublabel_below div[class*="gfield_time_"].ginput_container label, .elementor-1758 .elementor-element.elementor-element-0a34588 .bdt-gravity-forms .gform_wrapper .field_sublabel_above div[class*="gfield_date_"].ginput_container label, .elementor-1758 .elementor-element.elementor-element-0a34588 .bdt-gravity-forms .gform_wrapper .field_sublabel_below div[class*="gfield_date_"].ginput_container label{display:block;}.elementor-1758 .elementor-element.elementor-element-0a34588 .bdt-gravity-forms .gfield label{font-family:"Public Sans", Sans-serif;}.elementor-1758 .elementor-element.elementor-element-0a34588 .bdt-gravity-forms .gfield.gsection{border-bottom-style:solid;border-bottom-width:1px;}.elementor-1758 .elementor-element.elementor-element-0a34588 .bdt-gravity-forms .gform_footer input[type="submit"]{width:100px;}.elementor-1758 .elementor-element.elementor-element-0a34588 .bdt-gravity-forms .gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), 
                    .elementor-1758 .elementor-element.elementor-element-0a34588 .gform_wrapper li.gfield_error textarea{border-width:1px;}.elementor-widget .tippy-tooltip .tippy-content{text-align:center;}/* Start custom CSS for bdt-gravity-form, class: .elementor-element-0a34588 *//* =========================================================
   EMERALD ACADEMY — FORGOT PASSWORD FORM
   Single clean section, balanced spacing
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');

/* =========================================================
   ANIMATIONS
   ========================================================= */

@keyframes emeraldFadeUp {
    from { opacity: 0; transform: translateY(16px); }
    to   { opacity: 1; transform: translateY(0); }
}

@keyframes emeraldGlow {
    0%   { box-shadow: 0 0 0 0 rgba(74, 158, 142, 0); }
    100% { box-shadow: 0 0 0 4px rgba(74, 158, 142, 0.12); }
}

/* =========================================================
   PAGE WRAPPER — vertically & horizontally centred
   ========================================================= */

body.forgot-password-page,
.forgot-password-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 100vh !important;
    background: #f7f9f8 !important;
    padding: 2rem 1rem !important;
    box-sizing: border-box !important;
}

/* =========================================================
   FORM CARD — one clean box, no extra wrappers
   ========================================================= */

.gform_wrapper {
    width: 100% !important;
    max-width: 400px !important;

    margin: 0 auto !important;
    padding: 2.8rem 2.4rem 2.4rem !important;

    background: #ffffff !important;

    border: 2px solid #4a9e8e !important;
    border-radius: 20px !important;

    box-shadow: 0 6px 28px rgba(74, 158, 142, 0.09) !important;

    animation: emeraldFadeUp 0.5s ease-out both;

    box-sizing: border-box !important;
}

/* =========================================================
   HEADING BLOCK
   ========================================================= */

.gform_wrapper .gform_heading {
    text-align: center !important;
    margin: 0 0 1.8rem !important;
}

.gform_wrapper .gform_title {
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.01em !important;
    color: #111827 !important;
    margin: 0 0 8px !important;
    text-align: center !important;
}

.gform_wrapper .gform_description {
    display: block !important;
    margin: 0 auto !important;
    max-width: 300px !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 13.5px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
    color: #6b7280 !important;
    text-align: center !important;
}

/* =========================================================
   DIVIDER between heading and fields
   ========================================================= */

.gform_wrapper .gform_heading::after {
    content: "" !important;
    display: block !important;
    width: 48px !important;
    height: 2px !important;
    background: #4a9e8e !important;
    border-radius: 2px !important;
    margin: 1.2rem auto 0 !important;
    opacity: 0.5 !important;
}

/* =========================================================
   FIELD LABELS
   ========================================================= */

.gform_wrapper .gfield_label {
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    color: #374151 !important;
    letter-spacing: 0 !important;
    margin-bottom: 6px !important;
    display: block !important;
}

.gform_wrapper .gfield_required {
    color: #1D794F !important;
}

/* =========================================================
   FIELDS — consistent vertical rhythm
   ========================================================= */

.gform_wrapper .gfield {
    margin-bottom: 1.1rem !important;
    padding: 0 !important;
}

.gform_wrapper .ginput_container {
    margin-top: 0 !important;
}

/* =========================================================
   INPUTS — pill shaped, teal border
   ========================================================= */

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="password"] {
    width: 100% !important;
    box-sizing: border-box !important;

    height: 50px !important;
    padding: 0 1.1em !important;

    background: #ffffff !important;
    border: 1.5px solid #4a9e8e !important;
    border-radius: 50px !important;

    font-family: "Inter", Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #1a1a2e !important;

    outline: none !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.gform_wrapper input::placeholder {
    color: #9ca3af !important;
    font-size: 14px !important;
    opacity: 1 !important;
}

.gform_wrapper input[type="text"]:hover,
.gform_wrapper input[type="email"]:hover,
.gform_wrapper input[type="password"]:hover {
    border-color: #1D794F !important;
}

.gform_wrapper input[type="text"]:focus,
.gform_wrapper input[type="email"]:focus,
.gform_wrapper input[type="password"]:focus {
    border-color: #1D794F !important;
    box-shadow: 0 0 0 3px rgba(29, 121, 79, 0.10) !important;
    animation: emeraldGlow 0.3s ease-out !important;
}

/* =========================================================
   SUBMIT FOOTER — tight gap after last field
   ========================================================= */

.gform_wrapper .gform_footer,
.gform_wrapper .gform_page_footer {
    margin: 1.4rem 0 0 !important;
    padding: 0 !important;
}

/* =========================================================
   SUBMIT BUTTON — outline pill, fills on hover
   ========================================================= */

.gform_wrapper .gform_footer input[type="submit"],
.gform_wrapper .gform_button {
    width: 100% !important;
    height: 50px !important;
    padding: 0 24px !important;

    background: transparent !important;
    border: 1.5px solid #1D794F !important;
    border-radius: 999px !important;

    color: #000000 !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;

    cursor: pointer !important;
    transition: background 0.22s ease, color 0.22s ease, transform 0.18s ease, box-shadow 0.22s ease !important;
}

.gform_wrapper .gform_footer input[type="submit"]:hover,
.gform_wrapper .gform_button:hover {
    background: #1D794F !important;
    color: #ffffff !important;
    border-color: #1D794F !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 16px rgba(29, 121, 79, 0.18) !important;
}

.gform_wrapper .gform_footer input[type="submit"]:active,
.gform_wrapper .gform_button:active {
    transform: translateY(0) !important;
    box-shadow: none !important;
}

/* =========================================================
   BACK / HELPER TEXT — centred below button
   ========================================================= */

.gform_wrapper .gform_footer + p,
.gform_wrapper .gform-body + p {
    text-align: center !important;
    margin-top: 1rem !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 13px !important;
    color: #6b7280 !important;
}

.gform_wrapper a {
    font-family: "Inter", Arial, sans-serif !important;
    color: #4a9e8e !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.gform_wrapper a:hover {
    color: #1D794F !important;
    text-decoration: underline !important;
}

/* =========================================================
   VALIDATION / ERRORS
   ========================================================= */

.gform_wrapper .gfield_error input {
    border-color: #c94b4b !important;
}

.gform_wrapper .gfield_error input:focus {
    box-shadow: 0 0 0 3px rgba(201, 75, 75, 0.10) !important;
}

.gform_wrapper .validation_message {
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 12px !important;
    color: #c94b4b !important;
    margin-top: 5px !important;
}

.gform_wrapper .gform_validation_errors {
    border: 1.5px solid #c94b4b !important;
    border-radius: 10px !important;
    background: #fff5f5 !important;
    padding: 10px 14px !important;
    margin-bottom: 1.2rem !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 13px !important;
    color: #c94b4b !important;
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
    .gform_wrapper {
        padding: 2rem 1.4rem 1.8rem !important;
        border-radius: 16px !important;
    }

    .gform_wrapper .gform_title {
        font-size: 27px !important;
    }

    .gform_wrapper input[type="text"],
    .gform_wrapper input[type="email"],
    .gform_wrapper input[type="password"],
    .gform_wrapper .gform_footer input[type="submit"],
    .gform_wrapper .gform_button {
        height: 46px !important;
        font-size: 14px !important;
    }
}/* End custom CSS */