/* =========================================================
   FIRST LAW & BUSINESS OFFICE
   CSS GLOBAL
   Couleur principale : #102647
   ========================================================= */


/* =========================================================
   1. MASQUER LES TITRES DE PAGE DU THEME
   ========================================================= */

.page-header,
.inner-banner,
.entry-header,
.page-title,
.page_title {
    display: none !important;
}


/* =========================================================
   2. LOGO FIRST LAW
   Plus grand sans augmenter la hauteur du header
   ========================================================= */

.site-branding {
    width: auto !important;
    max-width: 400px !important;
    overflow: visible !important;
}

.custom-logo-link {
    width: auto !important;
    height: auto !important;

    display: block !important;

    overflow: visible !important;
}

.logo {
    overflow: visible !important;
}

.logo .custom-logo,
.custom-logo-link .custom-logo {

    content: url("https://firstlawandbusiness.com/wp-content/uploads/2026/09/logofinal.png") !important;

    width: 200px !important;
    height: auto !important;

    max-width: none !important;
    max-height: none !important;

    display: block !important;

transform: translateY(-6px) scale(1.18) !important;
    transform-origin: left center !important;

    margin: 0 !important;
}


/* =========================================================
   3. COULEURS DES SECTIONS DU THEME
   ========================================================= */

.skt-nurse-work-section::before,
.skt-nurse-work-section::after,
.elementor-element-67e10c67::before,
.elementor-element-67e10c67::after {
    background-color: #10233f !important;
}


/* Cercles / icônes */
.skt-nurse-care-image-box img,
.skt-nurse-care-image-box .elementor-image-box-img,
.skt-nurse-care-image-box .elementor-image-box-img img {

    background-color: #102647 !important;
    border-radius: 50% !important;
}


/* =========================================================
   4. HEADER - FOND 100% BLANC
   ========================================================= */

html,
body,
#main-set,
.header-main-area,
.header-main-area .header,
.header-main-area .header .container,
.navigatearea,
.header-right-infos {

    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
}


/* Empêche le thème de remettre une zone grise */
.header-right-infos::before,
.header-right-infos::after {

    content: none !important;
    display: none !important;

    background: transparent !important;
    background-image: none !important;
}


/* =========================================================
   5. HEADER PLUS COMPACT
   ========================================================= */

.header-main-area .header {

    position: relative !important;

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

    background: #ffffff !important;
}


/* Le container ne sert pas de référence au bouton téléphone */
.header-main-area .header .container {
    position: static !important;
}


@media screen and (min-width: 768px) {

    .header-main-area .header .container {

        height: 112px !important;
        min-height: 112px !important;

        display: flex !important;
        align-items: center !important;

        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }


    .navigatearea {

        height: 112px !important;

        display: flex !important;
        align-items: center !important;

        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}


/* =========================================================
   6. ZONE TELEPHONE
   Placée complètement à droite
   ========================================================= */

.header-right-infos {

    position: absolute !important;

    top: 50% !important;
    right: 30px !important;

    transform: translateY(-50%) !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    height: auto !important;
    min-height: 0 !important;

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

    float: none !important;

    display: block !important;

    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    border: none !important;
    box-shadow: none !important;
}


/* Clear ajouté par le thème */
.header-right-infos .clear {
    display: none !important;
}


/* =========================================================
   7. BOUTON TELEPHONE
   ========================================================= */

.header-phone-number {

    position: relative !important;

    width: 285px !important;
    height: 70px !important;

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

    box-sizing: border-box !important;

    background: #102647 !important;
    background-color: #102647 !important;

    color: #ffffff !important;

    border: none !important;
    border-radius: 11px !important;

    /* Cache le numéro brut du thème */
    font-size: 0 !important;

    box-shadow:
        0 5px 15px rgba(16, 38, 71, 0.16) !important;

    transition:
        background 0.2s ease,
        box-shadow 0.2s ease !important;
}


/* Ancienne icône turquoise du thème */
.header-phone-number img {
    display: none !important;
}


/* =========================================================
   8. ICONE TELEPHONE BLANCHE
   ========================================================= */

.header-phone-number::before {

    content: "" !important;

    position: absolute !important;

    left: 26px !important;
    top: 50% !important;

    width: 24px !important;
    height: 24px !important;

    transform: translateY(-50%) !important;

    background-color: #ffffff !important;

    -webkit-mask:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.62 10.79a15.46 15.46 0 006.59 6.59l2.2-2.2a1 1 0 011.02-.24c1.12.37 2.33.57 3.57.57a1 1 0 011 1V20a1 1 0 01-1 1C10.61 21 3 13.39 3 4a1 1 0 011-1h3.5a1 1 0 011 1c0 1.25.2 2.45.57 3.57a1 1 0 01-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E")
        center / contain no-repeat !important;

    mask:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.62 10.79a15.46 15.46 0 006.59 6.59l2.2-2.2a1 1 0 011.02-.24c1.12.37 2.33.57 3.57.57a1 1 0 011 1V20a1 1 0 01-1 1C10.61 21 3 13.39 3 4a1 1 0 011-1h3.5a1 1 0 011 1c0 1.25.2 2.45.57 3.57a1 1 0 01-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E")
        center / contain no-repeat !important;
}


/* =========================================================
   9. HORAIRES
   Remplace "Call Anytime"
   ========================================================= */

.header-phone-number span {

    position: absolute !important;

    left: 70px !important;
    top: 14px !important;

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

    font-size: 0 !important;

    line-height: 1 !important;
}


.header-phone-number span::after {

    content: "10:00 AM – 6:00 PM" !important;

    display: block !important;

    font-size: 12px !important;
    font-weight: 600 !important;

    line-height: 1.2 !important;

    color: rgba(255, 255, 255, 0.80) !important;

    letter-spacing: 0.2px !important;

    white-space: nowrap !important;
}


/* =========================================================
   10. NUMERO FORMATE
   ========================================================= */

.header-phone-number::after {

    content: "+66 98 919 9819" !important;

    position: absolute !important;

    left: 70px !important;
    top: 35px !important;

    font-size: 18px !important;
    font-weight: 700 !important;

    line-height: 1.15 !important;

    letter-spacing: 0.2px !important;

    color: #ffffff !important;

    white-space: nowrap !important;
}


/* Hover */
.header-phone-number:hover {

    background: #18365f !important;

    box-shadow:
        0 7px 18px rgba(16, 38, 71, 0.22) !important;
}


/* =========================================================
   11. TABLETTE
   ========================================================= */

@media screen and (max-width: 1100px) and (min-width: 768px) {

    .header-right-infos {
        right: 15px !important;
    }

    .header-phone-number {
        width: 235px !important;
    }

    .header-phone-number span,
    .header-phone-number::after {
        left: 60px !important;
    }

    .header-phone-number::after {
        font-size: 15px !important;
    }
}


/* =========================================================
   12. MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    .header-main-area .header .container {
        position: relative !important;
    }

    .header-right-infos {

        position: static !important;

        width: 100% !important;

        transform: none !important;

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

        padding: 10px 0 !important;

        background: #ffffff !important;
    }

    .header-phone-number {

        width: 235px !important;
        height: 60px !important;
    }

    .header-phone-number::before {

        left: 20px !important;

        width: 21px !important;
        height: 21px !important;
    }

    .header-phone-number span {

        left: 57px !important;
        top: 11px !important;
    }

    .header-phone-number span::after {
        font-size: 11px !important;
    }

    .header-phone-number::after {

        left: 57px !important;
        top: 29px !important;

        font-size: 15px !important;
    }
}


/* =========================================================
   13. MASQUER COMPLETEMENT LE FOOTER NATIF DU THEME
   ========================================================= */

.site-footer,
.footer-wrapper,
.footer-copyright,
.copyright-wrapper,
.site-info,
#footer,
#footer-wrapper {

    display: none !important;
}


/* =========================================================
   14. FOOTER FIRST LAW
   Généré à la toute fin du BODY
   ========================================================= */

body::after {

    content:
        "© 2026 FIRST LAW & BUSINESS OFFICE"
        "\A"
        "ข้อกำหนดทางกฎหมาย   |   นโยบายความเป็นส่วนตัว";

    display: block !important;

    position: relative !important;

    width: 100% !important;

    box-sizing: border-box !important;

    margin: 45px 0 0 0 !important;

    padding:
        22px
        20px
        20px
        20px !important;

    background: #102647 !important;
    background-color: #102647 !important;

    color: #ffffff !important;

    text-align: center !important;

    white-space: pre-line !important;

    font-family: inherit !important;

    font-size: 13px !important;
    font-weight: 400 !important;

    line-height: 2 !important;

    border: none !important;

    z-index: 1 !important;
}


/* =========================================================
   15. FOOTER MOBILE
   ========================================================= */

@media screen and (max-width: 767px) {

    body::after {

        margin-top: 30px !important;

        padding:
            20px
            15px
            18px
            15px !important;

        font-size: 12px !important;

        line-height: 2 !important;
    }
}
/* =========================================
   SUPPRIMER LA SIDEBAR DROITE
   ========================================= */

#sidebar,
.sidebar,
.widget-area,
.right-sidebar,
#secondary {
    display: none !important;
}


/* Le contenu principal prend toute la largeur */
#primary,
.content-area,
.site-main,
.content-left {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}


/* Supprime l'espace réservé à la sidebar */
.container .content-area {
    padding-right: 0 !important;
}

/* =========================================
   BOUTONS CONTACT FIRST LAW
   ========================================= */

.firstlaw-contact-buttons a,
.firstlaw-contact-buttons a:link,
.firstlaw-contact-buttons a:visited,
.firstlaw-contact-buttons a:active,
.firstlaw-contact-buttons a:focus {
    background-color: #102647 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Texte toujours blanc */
.firstlaw-contact-buttons a span {
    color: #ffffff !important;
}

/* Icônes SVG toujours blanches */
.firstlaw-contact-buttons a svg {
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
}

/* Hover */
.firstlaw-contact-buttons a:hover {
    background-color: #18365f !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Empêche le thème de mettre le texte noir/bleu au survol */
.firstlaw-contact-buttons a:hover span,
.firstlaw-contact-buttons a:hover svg {
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
}
/* SUPPRIMER DEFINITIVEMENT LE BANDEAU GRIS DU THEME */
.inner-banner-thumb {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}
.header::after {
    content: none !important;
    display: none !important;
}
/* Réduire l'espace entre le header et le contenu Elementor */
body.elementor-page .entry-content > .elementor {
    margin-top: -55px !important;
}

/* Elementor nouvelle structure */
body.elementor-page .elementor > .e-con:first-child {
    margin-top: 0 !important;
    padding-top: 10px !important;
}
/* Navigation — couleur dorée au survol et sur la page active */

.main-navigation a:hover,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a,
.main-navigation .current-menu-ancestor > a,
.main-navigation .current_page_ancestor > a {
    color: #d4a85f !important;
}
/* =========================================================
   HOMEPAGE — RÉDUIRE L'ESPACE ENTRE HEADER ET SLIDER
   ========================================================= */

/* Supprime les marges/paddings ajoutés par le thème */
body.home #main-set,
body.home #primary,
body.home .content-area,
body.home .site-main,
body.home .entry-content,
body.home .page-content,
body.home .page_content,
body.home article,
body.home .elementor {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* Elementor : premier conteneur de la homepage */
body.home .elementor > .e-con:first-child,
body.home .elementor > .elementor-section:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* Supprime un éventuel espace sous le header du thème */
body.home .header-main-area,
body.home .header-main-area .header,
body.home .navigatearea {
    margin-bottom: 0 !important;
}


/* Slider First Law */
body.home .fl-home,
body.home .fl-hero {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
a,
a:link,
a:visited {
    color: #fff !important;
}

a:hover,
a:focus,
a:active {
    color: #fff !important;
}
/* NAVIGATION — garder les couleurs d'origine */

.navigatearea a,
.navigatearea a:link,
.navigatearea a:visited,
.navigatearea ul li a {
    color: #111111 !important;
}

/* Survol */
.navigatearea a:hover,
.navigatearea ul li a:hover {
    color: #d4a85f !important;
}

/* Page active */
.navigatearea .current-menu-item > a,
.navigatearea .current_page_item > a,
.navigatearea .current-menu-ancestor > a {
    color: #d4a85f !important;
}
/* =========================================================
   FIRST LAW — NAVIGATION
   ========================================================= */

/* Liens normaux du menu */
#site-navigation #primary > li > a,
#site-navigation #primary > li > a:link,
#site-navigation #primary > li > a:visited,
.navigarea #site-navigation a {
    color: #111111 !important;
    text-decoration: none !important;
}


/* Hover */
#site-navigation #primary > li > a:hover,
#site-navigation #primary > li > a:focus {
    color: #d4a85f !important;
}


/* Page actuellement ouverte */
#site-navigation #primary > li.current-menu-item > a,
#site-navigation #primary > li.current_page_item > a,
#site-navigation #primary > li.current-menu-ancestor > a,
#site-navigation #primary > li.current_page_ancestor > a {
    color: #d4a85f !important;
}


/* Sous-menus éventuels */
#site-navigation .sub-menu a,
#site-navigation .children a {
    color: #111111 !important;
}

#site-navigation .sub-menu a:hover,
#site-navigation .children a:hover {
    color: #d4a85f !important;
}
/* =========================================================
   MOBILE — CENTRER LE LOGO FIRST LAW
   ========================================================= */

@media(max-width:767px){

    .navigarea{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;
        width:100% !important;
    }

    .navigarea .logo{
        width:100% !important;
        display:flex !important;
        justify-content:center !important;
        align-items:center !important;
        text-align:center !important;
        margin:0 auto !important;
        float:none !important;
    }

    .navigarea .logo .custom-logo-link{
        display:flex !important;
        justify-content:center !important;
        align-items:center !important;
        width:100% !important;
        margin:0 auto !important;
        text-align:center !important;
    }

    .navigarea .logo .custom-logo{
        display:block !important;
        margin:0 auto !important;
        float:none !important;
    }

}
/* =====================================================
   FIRST LAW PAYMENT PAGE
   ===================================================== */

.fl-payment-page{
    --navy:#102647;
    --dark:#071b35;
    --gold:#d4a85f;
    --text:#17243a;
    --muted:#687387;
    --line:#e2e7ee;

    width:100%;
    max-width:980px;
    margin:0 auto;
    padding:30px 20px 55px;
    box-sizing:border-box;
}

.fl-payment-page *,
.fl-payment-page *:before,
.fl-payment-page *:after{
    box-sizing:border-box;
}


/* HEADER */

.fl-payment-header{
    max-width:720px;
    margin:0 auto 24px;
    text-align:center;
}

.fl-payment-kicker{
    display:block;
    margin-bottom:7px;

    color:var(--gold);

    font-size:10px;
    font-weight:800;
    letter-spacing:1.5px;
}

.fl-payment-header h1{
    margin:0 0 10px !important;

    color:var(--navy) !important;

    font-size:31px !important;
    line-height:1.35 !important;
    font-weight:800 !important;
}

.fl-payment-header p{
    margin:0 !important;

    color:var(--muted) !important;

    font-size:12px !important;
    line-height:1.75 !important;
}


/* STEPS */

.fl-payment-steps{
    display:grid;
    grid-template-columns:repeat(3,1fr);

    gap:8px;

    margin-bottom:18px;
}

.fl-payment-step{
    padding:12px;

    border:1px solid var(--line);
    border-radius:10px;

    background:#fff;

    text-align:center;
}

.fl-payment-step > span{
    display:flex;
    align-items:center;
    justify-content:center;

    width:28px;
    height:28px;

    margin:0 auto 5px;

    border-radius:50%;

    background:var(--navy);
    color:#ead4aa;

    font-size:8px;
    font-weight:800;
}

.fl-payment-step strong{
    display:block;

    color:var(--navy);

    font-size:10px;
}

.fl-payment-step small{
    display:block;

    margin-top:2px;

    color:var(--muted);

    font-size:8px;
}


/* PAYMENT CARD */

.fl-payment-main{
    display:grid;
    grid-template-columns:.9fr 1.1fr;

    align-items:center;

    gap:34px;

    padding:30px;

    border:1px solid var(--line);
    border-radius:20px;

    background:#fff;

    box-shadow:0 15px 45px rgba(16,38,71,.08);
}


/* QR */

.fl-payment-qr{
    max-width:355px;

    margin:0 auto;

    padding:9px;

    border:1px solid #d4a85f;
    border-radius:18px;

    background:#fff;
}

.fl-payment-qr img{
    display:block;

    width:100%;
    height:auto;

    border-radius:10px;
}


/* PAYMENT INFO */

.fl-payment-small{
    display:block;

    margin-bottom:5px;

    color:var(--gold);

    font-size:9px;
    font-weight:800;
    letter-spacing:1.2px;
}

.fl-payment-info h2{
    margin:0 0 8px !important;

    color:var(--navy) !important;

    font-size:23px !important;
}

.fl-payment-info > p{
    margin:0 0 15px !important;

    color:var(--muted) !important;

    font-size:11px !important;
    line-height:1.7 !important;
}

.fl-payment-instruction{
    display:flex;
    align-items:center;

    gap:10px;

    margin-bottom:7px;

    padding:9px 11px;

    border:1px solid #edf0f4;
    border-radius:9px;

    background:#f7f9fc;
}

.fl-payment-instruction b{
    display:flex;
    align-items:center;
    justify-content:center;

    width:26px;
    height:26px;

    border-radius:7px;

    background:var(--navy);
    color:#fff;

    font-size:9px;
}

.fl-payment-instruction span{
    color:var(--navy);

    font-size:10px;
    font-weight:700;
}


/* PAYMENT PROOF */

.fl-payment-proof{
    margin-top:16px;

    padding:24px 30px 28px;

    border:1px solid var(--line);
    border-radius:16px;

    background:#fafbfd;
}

.fl-payment-proof h3{
    margin:0 0 4px !important;

    color:var(--navy) !important;

    font-size:19px !important;
}

.fl-payment-proof > p{
    margin:0 0 14px !important;

    color:var(--muted) !important;

    font-size:10px !important;
}


/* UPLOAD */

.fl-payment-upload{
    padding:19px;

    border:1.5px dashed #bec8d4;
    border-radius:12px;

    background:#fff;

    text-align:center;
}

.fl-upload-symbol{
    display:flex;
    align-items:center;
    justify-content:center;

    width:38px;
    height:38px;

    margin:0 auto 7px;

    border-radius:9px;

    background:var(--navy);
    color:#fff;

    font-size:17px;
}

.fl-payment-upload strong{
    display:block;

    margin-bottom:2px;

    color:var(--navy);

    font-size:11px;
}

.fl-payment-upload small{
    display:block;

    margin-bottom:10px;

    color:var(--muted);

    font-size:8px;
}

.fl-payment-file{
    display:block !important;

    width:100% !important;

    padding:11px !important;

    border:1px solid var(--line) !important;
    border-radius:8px !important;

    background:#f7f9fc !important;

    color:var(--muted) !important;

    font-size:9px !important;
}

.fl-payment-file::file-selector-button{
    margin-right:10px;

    padding:8px 12px;

    border:0;
    border-radius:7px;

    background:var(--navy);

    color:#fff;

    font-size:9px;
    font-weight:800;

    cursor:pointer;
}


/* SUBMIT */

.fl-payment-submit{
    display:block !important;

    width:100% !important;
    min-height:47px !important;

    margin-top:14px !important;

    border:1px solid var(--gold) !important;
    border-radius:9px !important;

    background:var(--gold) !important;

    color:var(--dark) !important;
    -webkit-text-fill-color:var(--dark) !important;

    font-size:11px !important;
    font-weight:800 !important;

    cursor:pointer !important;
}


/* CONTACT FORM 7 MESSAGES */

.fl-payment-page .wpcf7-not-valid-tip{
    margin-top:5px !important;

    color:#b42318 !important;

    font-size:9px !important;
}

.fl-payment-page .wpcf7-response-output{
    margin:13px 0 0 !important;

    padding:10px 12px !important;

    border-radius:8px !important;

    font-size:9px !important;
}


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

@media(max-width:767px){

    .fl-payment-page{
        padding:15px 12px 35px;
    }

    .fl-payment-header{
        margin-bottom:15px;
    }

    .fl-payment-header h1{
        font-size:22px !important;
    }

    .fl-payment-header p{
        font-size:9px !important;
        line-height:1.6 !important;
    }

    .fl-payment-steps{
        gap:5px;
        margin-bottom:11px;
    }

    .fl-payment-step{
        padding:8px 3px;
    }

    .fl-payment-step > span{
        width:23px;
        height:23px;

        font-size:7px;
    }

    .fl-payment-step strong{
        font-size:8px;
    }

    .fl-payment-step small{
        display:none;
    }


    .fl-payment-main{
        display:block;

        padding:16px 13px;

        border-radius:14px;
    }


    .fl-payment-qr{
        width:250px;
        max-width:100%;

        margin-bottom:15px;

        padding:6px;

        border-radius:13px;
    }


    .fl-payment-info{
        text-align:center;
    }

    .fl-payment-info h2{
        font-size:17px !important;
    }

    .fl-payment-info > p{
        font-size:9px !important;
    }

    .fl-payment-instruction{
        padding:7px 8px;

        text-align:left;
    }

    .fl-payment-instruction b{
        width:23px;
        height:23px;

        font-size:8px;
    }

    .fl-payment-instruction span{
        font-size:9px;
    }


    .fl-payment-proof{
        margin-top:11px;

        padding:16px 13px 18px;

        border-radius:12px;
    }

    .fl-payment-proof h3{
        font-size:16px !important;
    }

    .fl-payment-proof > p{
        font-size:9px !important;
    }


    .fl-payment-upload{
        padding:14px 10px;

        border-radius:9px;
    }

    .fl-upload-symbol{
        width:34px;
        height:34px;

        font-size:15px;
    }

    .fl-payment-upload strong{
        font-size:10px;
    }


    .fl-payment-file{
        padding:9px !important;

        font-size:8px !important;
    }

    .fl-payment-file::file-selector-button{
        padding:7px 8px;

        font-size:8px;
    }


    .fl-payment-submit{
        min-height:44px !important;

        font-size:10px !important;
    }

}
/* =========================================================
   FIRST LAW PAYMENT — FIX CONTACT FORM 7
   ========================================================= */

/* Supprime les marges parasites ajoutées par CF7 / thème */
.fl-payment-page .wpcf7-form p,
.fl-payment-upload p,
.fl-payment-proof p {
    margin-top: 0 !important;
}

.fl-payment-upload .wpcf7-form-control-wrap {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* ZONE UPLOAD PLUS COMPACTE */

.fl-payment-upload {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 0 !important;
    height: auto !important;

    padding: 22px 20px !important;

    border: 1.5px dashed #bdc8d5 !important;
    border-radius: 12px !important;

    background: #ffffff !important;

    text-align: center !important;
}


/* ICONE */

.fl-upload-symbol {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 38px !important;
    height: 38px !important;

    margin: 0 auto 8px !important;

    padding: 0 !important;

    background: #102647 !important;
    color: #ffffff !important;

    border-radius: 9px !important;

    font-size: 18px !important;
    line-height: 1 !important;
}


/* TITRE UPLOAD */

.fl-payment-upload strong {
    display: block !important;

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

    color: #102647 !important;

    font-size: 11px !important;
    line-height: 1.4 !important;
    font-weight: 800 !important;
}


/* JPG PNG PDF */

.fl-payment-upload small {
    display: block !important;

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

    color: #687387 !important;

    font-size: 8px !important;
    line-height: 1.4 !important;
}


/* CHAMP DE FICHIER */

.fl-payment-file,
.fl-payment-upload input[type="file"] {
    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 9px 10px !important;

    border: 1px solid #e2e7ee !important;
    border-radius: 8px !important;

    background: #f7f9fc !important;

    color: #687387 !important;
    -webkit-text-fill-color: #687387 !important;

    font-size: 9px !important;
    line-height: 1.4 !important;
}


.fl-payment-file::file-selector-button,
.fl-payment-upload input[type="file"]::file-selector-button {
    margin-right: 10px !important;

    padding: 8px 12px !important;

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

    background: #102647 !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family: inherit !important;
    font-size: 9px !important;
    font-weight: 800 !important;

    cursor: pointer !important;
}


/* BOUTON SUIVANT */

.fl-payment-page input.fl-payment-submit,
.fl-payment-page input.fl-payment-submit:link,
.fl-payment-page input.fl-payment-submit:visited,
.fl-payment-page .wpcf7-submit {
    display: block !important;

    width: 100% !important;
    min-height: 46px !important;

    margin: 14px 0 0 !important;
    padding: 11px 18px !important;

    border: 1px solid #d4a85f !important;
    border-radius: 9px !important;

    background: #d4a85f !important;

    color: #071b35 !important;
    -webkit-text-fill-color: #071b35 !important;

    opacity: 1 !important;

    font-family: inherit !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;

    text-align: center !important;

    cursor: pointer !important;
}


.fl-payment-page input.fl-payment-submit:hover,
.fl-payment-page .wpcf7-submit:hover {
    background: #dfb469 !important;
    color: #071b35 !important;
    -webkit-text-fill-color: #071b35 !important;
}


/* SUPPRIME LES ESPACES CF7 INUTILES */

.fl-payment-page .wpcf7-spinner {
    margin: 8px auto 0 !important;
}

.fl-payment-page br {
    line-height: 0 !important;
}


/* MOBILE */

@media (max-width: 767px) {

    .fl-payment-proof {
        padding: 16px 13px 18px !important;
    }

    .fl-payment-upload {
        padding: 17px 12px !important;
    }

    .fl-upload-symbol {
        width: 34px !important;
        height: 34px !important;

        margin-bottom: 7px !important;

        font-size: 16px !important;
    }

    .fl-payment-upload strong {
        font-size: 10px !important;
    }

    .fl-payment-upload small {
        margin-bottom: 9px !important;
        font-size: 8px !important;
    }

    .fl-payment-file,
    .fl-payment-upload input[type="file"] {
        padding: 8px !important;
        font-size: 8px !important;
    }

    .fl-payment-file::file-selector-button,
    .fl-payment-upload input[type="file"]::file-selector-button {
        padding: 7px 9px !important;
        font-size: 8px !important;
    }

    .fl-payment-page input.fl-payment-submit,
    .fl-payment-page .wpcf7-submit {
        min-height: 44px !important;
        font-size: 10px !important;
    }
}