.elementor-712 .elementor-element.elementor-element-1bb9047{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-712 .elementor-element.elementor-element-c944d9e{--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;}.elementor-712 .elementor-element.elementor-element-ce0f401{--display:flex;}.elementor-712 .elementor-element.elementor-element-f6b05f6{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-field-group.recaptcha_v3-bottomleft, .elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-field-type-html{padding-bottom:0px;}.elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-712 .elementor-element.elementor-element-3cffb8b .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-button[type="submit"]{color:#ffffff;}.elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-712 .elementor-element.elementor-element-3cffb8b .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-712 .elementor-element.elementor-element-3cffb8b .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-712 .elementor-element.elementor-element-3cffb8b .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-712 .elementor-element.elementor-element-3cffb8b .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-712 .elementor-element.elementor-element-3cffb8b{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}@media(min-width:768px){.elementor-712 .elementor-element.elementor-element-1bb9047{--width:100%;}.elementor-712 .elementor-element.elementor-element-c944d9e{--width:100%;}}/* Start custom CSS for container, class: .elementor-element-ce0f401 *//* =====================================================
   NOTRE BÉBÉ — INLINE SVG SOCIAL ICONS
   ===================================================== */

.nb-contact-info__icon svg {
    width: 20px !important;
    height: 20px !important;

    display: block !important;

    color: currentColor;
}


/* Email and Instagram line icons */
.nb-contact-info__icon--email svg,
.nb-contact-info__icon--instagram svg {
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.9 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}


/* Instagram small dot */
.nb-contact-info__icon--instagram
.nb-icon-dot {
    fill: currentColor !important;
    stroke: none !important;
}


/* Facebook filled icon */
.nb-contact-info__icon--facebook svg {
    width: 12px !important;
    height: 21px !important;

    fill: currentColor !important;
    stroke: none !important;
}


/* Email colour */
.nb-contact-info__icon--email {
    color: #4f86bd !important;
    background: #edf7fc !important;
}


/* Instagram colour */
.nb-contact-info__icon--instagram {
    color: #e4405f !important;
    background: rgba(228, 64, 95, 0.1) !important;
}


/* Facebook colour */
.nb-contact-info__icon--facebook {
    color: #1877f2 !important;
    background: rgba(24, 119, 242, 0.1) !important;
}


/* Mobile */
@media (max-width: 767px) {

    .nb-contact-info__icon svg {
        width: 18px !important;
        height: 18px !important;
    }

    .nb-contact-info__icon--facebook svg {
        width: 11px !important;
        height: 19px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c944d9e */<style>
/* =====================================================
   NOTRE BÉBÉ — CONTACT PAGE
   Hero + information + simple contact form
   ===================================================== */


/* ===== GENERAL VARIABLES ===== */

.nb-contact-hero,
.nb-contact-main {
    --nb-blue: #75b9e7;
    --nb-blue-dark: #376fa9;
    --nb-blue-text: #4f86bd;
    --nb-navy: #15233b;
    --nb-pink: #f7a9ae;
    --nb-text: #53667c;
    --nb-light-blue: #f2f8fc;
    --nb-light-pink: #fff7f8;

    font-family: "Poppins", sans-serif;
}

.nb-contact-hero *,
.nb-contact-main *,
.nb-contact-hero *::before,
.nb-contact-main *::before,
.nb-contact-hero *::after,
.nb-contact-main *::after {
    box-sizing: border-box;
}

.nb-contact-hero h1,
.nb-contact-hero h2,
.nb-contact-hero p,
.nb-contact-main h1,
.nb-contact-main h2,
.nb-contact-main h3,
.nb-contact-main p {
    margin-top: 0;
}


/* =====================================================
   HERO
   ===================================================== */

.nb-contact-hero {
    position: relative;

    width: 100%;
    padding: 75px 25px 70px;

    background:
        radial-gradient(
            circle at 8% 20%,
            rgba(117, 185, 231, 0.2),
            transparent 24%
        ),
        radial-gradient(
            circle at 92% 80%,
            rgba(247, 169, 174, 0.19),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #f4faff 0%,
            #ffffff 50%,
            #fff7f8 100%
        );

    overflow: hidden;
}

.nb-contact-hero__grid,
.nb-contact-hero .nb-contact__container {
    width: min(1100px, 100%);
    margin: 0 auto;

    display: block !important;

    text-align: center;
}

.nb-contact-hero__content {
    width: 100%;
    max-width: 900px;

    margin: 0 auto;
}


/* Hide the old large visual */

.nb-contact-hero__visual {
    display: none !important;
}


/* Small label */

.nb-contact__eyebrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    margin-bottom: 18px;
    padding: 8px 15px;

    color: #376fa9;
    background: rgba(117, 185, 231, 0.14);

    border: 1px solid rgba(117, 185, 231, 0.23);
    border-radius: 999px;

    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
}

.nb-contact__eyebrow::before {
    content: "";

    width: 8px;
    height: 8px;

    background: #f7a9ae;
    border-radius: 50%;
}


/* Hero title */

.nb-contact-hero h1 {
    max-width: 850px;

    margin: 0 auto 21px;

    color: #15233b;

    font-family: "Poppins", sans-serif;
    font-size: clamp(39px, 5vw, 60px);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -1.5px;

    text-align: center;
}

.nb-contact-hero h1 span {
    color: #75b9e7;
}


/* Hero description */

.nb-contact-hero__content > p {
    max-width: 780px;

    margin: 0 auto;

    color: #53667c;

    font-family: "Poppins", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;

    text-align: center;
}


/* Hide remaining old visual text */

.nb-contact-hero__circle,
.nb-contact-hero__mail {
    display: none !important;
}


/* =====================================================
   MAIN CONTACT SECTION
   ===================================================== */

.nb-contact-main {
    width: min(1160px, calc(100% - 48px)) !important;
    max-width: 1160px !important;

    margin: 0 auto !important;
    padding: 90px 0 !important;

    display: grid !important;
    grid-template-columns: 0.85fr 1.15fr !important;
    align-items: stretch !important;
    gap: 42px !important;

    background: transparent !important;
}


/* Elementor child containers */

.nb-contact-main > .e-con,
.nb-contact-main > .elementor-element {
    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
}


/* =====================================================
   LEFT CONTACT INFORMATION
   ===================================================== */

.nb-contact-info {
    width: 100% !important;
    height: 100%;

    padding: 38px !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;

    background: linear-gradient(
        145deg,
        #f2f8fc 0%,
        #fff8f8 100%
    );

    border: 1px solid rgba(117, 185, 231, 0.18);
    border-radius: 28px;

    box-shadow: 0 17px 42px rgba(55, 111, 169, 0.09);
}

.nb-contact-info .nb-contact__eyebrow {
    align-self: flex-start;

    margin-bottom: 18px;
}


/* Information title */

.nb-contact-info h2 {
    max-width: 470px;

    margin-bottom: 18px;

    color: #15233b;

    font-family: "Poppins", sans-serif;
    font-size: clamp(29px, 3vw, 41px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.7px;
}


/* Information description */

.nb-contact-info__intro {
    margin-bottom: 29px !important;

    color: #53667c;

    font-family: "Poppins", sans-serif;
    font-size: 14px;
    line-height: 1.75;
}


/* Contact cards */

.nb-contact-info__cards {
    width: 100%;

    display: grid;
    gap: 11px;
}

.nb-contact-info__card {
    width: 100%;
    padding: 14px 15px;

    display: flex;
    align-items: center;
    gap: 13px;

    color: #53667c !important;
    background: rgba(255, 255, 255, 0.86);

    border: 1px solid rgba(117, 185, 231, 0.2);
    border-radius: 16px;

    text-decoration: none !important;

    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        background-color 0.25s ease;
}

.nb-contact-info__card:hover {
    color: #53667c !important;
    background: #ffffff;

    border-color: rgba(117, 185, 231, 0.42);

    box-shadow: 0 11px 25px rgba(55, 111, 169, 0.1);

    transform: translateY(-2px);
}


/* Contact icons */

.nb-contact-info__icon {
    width: 44px;
    height: 44px;
    min-width: 44px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: #376fa9;
    background: #edf7fc;

    border-radius: 13px;

    font-family: "Poppins", sans-serif;
    font-size: 18px;
    font-weight: 800;
}

.nb-contact-info__card strong,
.nb-contact-info__card small {
    display: block;
}

.nb-contact-info__card strong {
    margin-bottom: 2px;

    color: #15233b;

    font-family: "Poppins", sans-serif;
    font-size: 13px;
    font-weight: 700;
}

.nb-contact-info__card small {
    color: #6f8195;

    font-family: "Poppins", sans-serif;
    font-size: 11px;
    line-height: 1.5;

    overflow-wrap: anywhere;
}


/* Engagement box */

.nb-contact-info__note {
    width: 100%;

    margin-top: 22px;
    padding: 19px 20px;

    color: #ffffff;
    background: linear-gradient(
        135deg,
        #75b9e7 0%,
        #4f86bd 100%
    );

    border-radius: 17px;
}

.nb-contact-info__note strong {
    display: block;

    margin-bottom: 5px;

    color: #ffffff;

    font-family: "Poppins", sans-serif;
    font-size: 14px;
    font-weight: 700;
}

.nb-contact-info__note p {
    margin: 0 !important;

    color: #ffffff;

    font-family: "Poppins", sans-serif;
    font-size: 12px;
    line-height: 1.65;
}


/* =====================================================
   RIGHT FORM CARD
   ===================================================== */

.nb-contact-form-card {
    position: relative;

    width: 100% !important;
    height: 100%;

    padding: 38px !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;

    background: #ffffff;

    border: 1px solid rgba(117, 185, 231, 0.2);
    border-radius: 28px;

    box-shadow: 0 18px 45px rgba(55, 111, 169, 0.11);
}


/* Form heading created with CSS */

.nb-contact-form-card::before {
    content: "Envoyez-nous votre message";

    display: block;

    margin-bottom: 8px;

    color: #15233b;

    font-family: "Poppins", sans-serif;
    font-size: 26px;
    font-weight: 800;
    line-height: 1.25;
}

.nb-contact-form-card::after {
    content: "Remplissez le formulaire ci-dessous. Notre équipe vous répondra dans les meilleurs délais.";

    display: block;

    margin-bottom: 27px;

    color: #53667c;

    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.65;
}


/* Ensure form appears after pseudo text */

.nb-contact-form-card
.elementor-widget-form {
    position: relative;
    z-index: 2;

    width: 100% !important;
    margin: 0 !important;
}

.nb-contact-form-card
.elementor-form {
    width: 100%;
}

.nb-contact-form-card
.elementor-form-fields-wrapper {
    width: 100%;

    display: flex !important;
    flex-wrap: wrap !important;

    row-gap: 16px !important;
}


/* Field groups */

.nb-contact-form-card
.elementor-field-group {
    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* Labels */

.nb-contact-form-card
.elementor-field-label {
    margin: 0 0 7px !important;

    color: #376fa9 !important;

    font-family: "Poppins", sans-serif !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1.3 !important;
}


/* Inputs and message */

.nb-contact-form-card
input.elementor-field,
.nb-contact-form-card
textarea.elementor-field {
    width: 100% !important;

    margin: 0 !important;
    padding: 13px 15px !important;

    color: #15233b !important;
    background: #f7fbfe !important;

    border: 1px solid rgba(117, 185, 231, 0.3) !important;
    border-radius: 13px !important;

    outline: none !important;
    box-shadow: none !important;

    font-family: "Poppins", sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;

    transition:
        border-color 0.25s ease,
        background-color 0.25s ease,
        box-shadow 0.25s ease !important;
}


/* Text field height */

.nb-contact-form-card
input.elementor-field {
    min-height: 52px !important;
}


/* Message height */

.nb-contact-form-card
textarea.elementor-field {
    min-height: 150px !important;

    resize: vertical;
}


/* Placeholder */

.nb-contact-form-card
.elementor-field::placeholder {
    color: #91aed0 !important;
    opacity: 1 !important;
}


/* Focus */

.nb-contact-form-card
input.elementor-field:focus,
.nb-contact-form-card
textarea.elementor-field:focus {
    background: #ffffff !important;
    border-color: #75b9e7 !important;

    box-shadow:
        0 0 0 4px rgba(117, 185, 231, 0.13) !important;
}


/* Submit area */

.nb-contact-form-card
.elementor-field-type-submit {
    width: 100% !important;

    margin-top: 2px !important;
}


/* Submit button */

.nb-contact-form-card
.elementor-button {
    width: 100% !important;
    min-height: 53px;

    padding: 14px 24px !important;

    color: #ffffff !important;
    background: #75b9e7 !important;

    border: 0 !important;
    border-radius: 999px !important;

    font-family: "Poppins", sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;

    box-shadow: 0 11px 25px rgba(55, 111, 169, 0.2);

    cursor: pointer;

    transition:
        transform 0.25s ease,
        background-color 0.25s ease,
        box-shadow 0.25s ease !important;
}

.nb-contact-form-card
.elementor-button:hover {
    color: #ffffff !important;
    background: #376fa9 !important;

    box-shadow: 0 16px 30px rgba(55, 111, 169, 0.27);

    transform: translateY(-2px);
}


/* Success message */

.nb-contact-form-card
.elementor-message-success {
    margin-top: 17px;
    padding: 13px 15px;

    color: #287a55;
    background: #edf9f3;

    border: 1px solid rgba(40, 122, 85, 0.14);
    border-radius: 12px;

    font-family: "Poppins", sans-serif;
    font-size: 12px;
    font-weight: 600;
}


/* Error messages */

.nb-contact-form-card
.elementor-message-danger,
.nb-contact-form-card
.elementor-help-inline {
    color: #d85d6a !important;

    font-family: "Poppins", sans-serif !important;
    font-size: 11px !important;
}


/* =====================================================
   TABLET
   ===================================================== */

@media (max-width: 1024px) {

    .nb-contact-hero {
        padding: 60px 24px;
    }

    .nb-contact-main {
        width: min(100% - 36px, 900px) !important;

        padding: 70px 0 !important;

        grid-template-columns: 0.9fr 1.1fr !important;
        gap: 25px !important;
    }

    .nb-contact-info,
    .nb-contact-form-card {
        padding: 28px !important;
    }

    .nb-contact-form-card::before {
        font-size: 23px;
    }
}


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

@media (max-width: 767px) {

    .nb-contact-hero {
        padding: 48px 18px 52px;
    }

    .nb-contact-hero h1 {
        margin-bottom: 17px;

        font-size: 37px;
        line-height: 1.1;
        letter-spacing: -1px;
    }

    .nb-contact-hero__content > p {
        font-size: 14px;
        line-height: 1.7;
    }

    .nb-contact__eyebrow {
        margin-bottom: 15px;

        font-size: 11px;
    }

    .nb-contact-main {
        width: calc(100% - 28px) !important;

        padding: 55px 0 !important;

        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }

    .nb-contact-info,
    .nb-contact-form-card {
        width: 100% !important;
        height: auto;

        padding: 24px 18px !important;

        border-radius: 21px;
    }

    .nb-contact-info {
        text-align: center;
    }

    .nb-contact-info .nb-contact__eyebrow {
        align-self: center;
    }

    .nb-contact-info h2 {
        max-width: 100%;

        margin-bottom: 15px;

        font-size: 30px;
    }

    .nb-contact-info__intro {
        margin-bottom: 23px !important;

        font-size: 13px;
    }

    .nb-contact-info__card {
        text-align: left;
    }

    .nb-contact-info__note {
        text-align: left;
    }

    .nb-contact-form-card::before {
        font-size: 22px;
        text-align: center;
    }

    .nb-contact-form-card::after {
        margin-bottom: 22px;

        text-align: center;
    }

    .nb-contact-form-card
    .elementor-form-fields-wrapper {
        row-gap: 14px !important;
    }

    .nb-contact-form-card
    input.elementor-field {
        min-height: 49px !important;
    }

    .nb-contact-form-card
    textarea.elementor-field {
        min-height: 140px !important;
    }

    .nb-contact-form-card
    input.elementor-field,
    .nb-contact-form-card
    textarea.elementor-field {
        padding: 12px 14px !important;

        font-size: 13px !important;
        border-radius: 11px !important;
    }

    .nb-contact-form-card
    .elementor-button {
        min-height: 50px;

        font-size: 13px !important;
    }
}


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

@media (max-width: 390px) {

    .nb-contact-hero h1 {
        font-size: 32px;
    }

    .nb-contact-main {
        width: calc(100% - 22px) !important;
    }

    .nb-contact-info,
    .nb-contact-form-card {
        padding: 21px 14px !important;
    }

    .nb-contact-info h2 {
        font-size: 27px;
    }
}





/* =====================================================
   FIX — CONTACT COLUMNS TOO NARROW
   Add at the bottom of the existing contact CSS
   ===================================================== */


/* Main contact container */
.nb-contact-main {
    --display: flex !important;

    width: min(1160px, calc(100% - 48px)) !important;
    max-width: 1160px !important;

    margin: 0 auto !important;
    padding: 80px 0 !important;

    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: center !important;

    gap: 35px !important;
}


/* Reset Elementor restricted child widths */
.nb-contact-main > .e-con,
.nb-contact-main > .elementor-element {
    --width: 100% !important;
    --min-height: 0 !important;
    --flex-grow: 1 !important;
    --flex-shrink: 1 !important;
    --flex-basis: 0% !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;

    flex-grow: 1 !important;
    flex-shrink: 1 !important;
}


/* Left information column */
.nb-contact-main .nb-contact-info {
    --width: 43% !important;

    width: 43% !important;
    max-width: 490px !important;
    min-width: 0 !important;

    flex: 0 1 43% !important;
}


/* Right form column */
.nb-contact-main .nb-contact-form-card {
    --width: 57% !important;

    width: 57% !important;
    max-width: 635px !important;
    min-width: 0 !important;

    flex: 1 1 57% !important;
}


/* Form widget must fill its column */
.nb-contact-form-card .elementor-widget-form,
.nb-contact-form-card .elementor-widget-container,
.nb-contact-form-card form.elementor-form,
.nb-contact-form-card .elementor-form-fields-wrapper {
    width: 100% !important;
    max-width: 100% !important;
}


/* Correct heading, subtitle and form order */
.nb-contact-form-card::before {
    order: 1 !important;
}

.nb-contact-form-card::after {
    order: 2 !important;
}

.nb-contact-form-card .elementor-widget-form {
    order: 3 !important;
}


/* =====================================================
   TABLET
   ===================================================== */

@media (max-width: 1024px) {

    .nb-contact-main {
        width: calc(100% - 36px) !important;

        padding: 65px 0 !important;

        gap: 24px !important;
    }

    .nb-contact-main .nb-contact-info {
        --width: 44% !important;

        width: 44% !important;
        flex-basis: 44% !important;
    }

    .nb-contact-main .nb-contact-form-card {
        --width: 56% !important;

        width: 56% !important;
        flex-basis: 56% !important;
    }
}


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

@media (max-width: 767px) {

    .nb-contact-main {
        --display: flex !important;

        width: calc(100% - 28px) !important;

        padding: 50px 0 !important;

        flex-direction: column !important;
        align-items: stretch !important;

        gap: 22px !important;
    }

    .nb-contact-main > .e-con,
    .nb-contact-main > .elementor-element,
    .nb-contact-main .nb-contact-info,
    .nb-contact-main .nb-contact-form-card {
        --width: 100% !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        flex: 0 0 100% !important;
    }
}
</style>/* End custom CSS */
/* Start custom CSS *//* Remove “Envoyez-nous votre message” */
.nb-contact-form-card
.elementor-widget-form::before {
    content: none !important;
    display: none !important;
}










/* =====================================================
   FIX FORM TITLE OVERLAP
   ===================================================== */

/* Remove generated text from the Elementor container */
.nb-contact-form-card::before,
.nb-contact-form-card::after {
    content: none !important;
    display: none !important;
}


/* Reset form widget */
.nb-contact-form-card .elementor-widget-form {
    position: relative !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    display: block !important;
}


/* Real form title */
.nb-contact-form-card
.elementor-widget-form::before {
    content: "Envoyez-nous votre message";

    position: static !important;

    width: 100%;

    margin: 0 0 8px !important;
    padding: 0 !important;

    display: block !important;

    color: #15233b !important;
    background: transparent !important;

    font-family: "Poppins", sans-serif !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;

    text-align: left !important;
}


/* Form subtitle */
.nb-contact-form-card
.elementor-widget-form
> .elementor-widget-container::before {
    content: "Remplissez le formulaire ci-dessous. Notre équipe vous répondra dans les meilleurs délais.";

    position: static !important;

    width: 100%;

    margin: 0 0 25px !important;
    padding: 0 !important;

    display: block !important;

    color: #53667c !important;
    background: transparent !important;

    font-family: "Poppins", sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.7 !important;

    text-align: left !important;
}


/* Keep form below the heading */
.nb-contact-form-card
.elementor-widget-form
> .elementor-widget-container {
    position: relative !important;

    width: 100% !important;
    max-width: 100% !important;

    display: block !important;
}


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

@media (max-width: 767px) {

    .nb-contact-form-card {
        height: auto !important;

        padding: 25px 18px !important;
    }

    .nb-contact-form-card
    .elementor-widget-form::before {
        margin-bottom: 8px !important;

        font-size: 22px !important;
        line-height: 1.25 !important;

        text-align: center !important;
    }

    .nb-contact-form-card
    .elementor-widget-form
    > .elementor-widget-container::before {
        margin-bottom: 23px !important;

        font-size: 12px !important;
        line-height: 1.65 !important;

        text-align: center !important;
    }

    .nb-contact-form-card
    .elementor-form {
        width: 100% !important;
        margin: 0 !important;
    }
}


/* Very small mobile */
@media (max-width: 390px) {

    .nb-contact-form-card {
        padding: 22px 14px !important;
    }

    .nb-contact-form-card
    .elementor-widget-form::before {
        font-size: 20px !important;
    }
}/* End custom CSS */