/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/

li.btn_shop {
    background: #FFD633;
    padding: 5px 15px;
    border-radius: 50px;
}

.btn_shop  .brx-submenu-toggle {
    color: #003C6B;
}

.btn_shop .brx-submenu-toggle {
    gap: 0 !important;
}

.texte-decale {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.texte-decale span {
    display: block;
    line-height: 1.55;
}

.texte-decale span:nth-child(1) {
    margin-left: 0;
}

.texte-decale span:nth-child(2) {
    margin-left: 15px;
}

.texte-decale span:nth-child(3) {
    margin-left: 25px;
}

.texte-decale span:nth-child(4) {
    margin-left: 35px;
}

@media (min-width: 991px) {
.scrolling .head_rs {
    display: none;
    transition: all 0.2s;
}
}


@media (max-width: 636px) {
    .coln_men {
        display: none;
    }
}

@media screen and (min-width: 1025px) {
#brxe-alolkt .splide__pagination {
    left: max(20px, calc((100vw - 1280px) / 2)) !important;
    right: auto !important;
    transform: none !important;
    justify-content: flex-start !important;
    width: auto !important;
}
	
h1.colr_txt {
    font-size: 42px;
    text-transform: uppercase;
    color: #FFD633;
    font-weight: 900;
}
	
.cust_carsl .splide__arrow--prev {
    left: -45px;
}

.cust_carsl .splide__arrow--next {
    right: -45px;
}
	
img.img_struct {
    height: 225px !important;
    object-fit: cover;
}

img.img-consol {
    object-fit: cover;
}

img.img-acc {
    height: 225px;
    object-fit: cover;
}

.scrolling .head_logo img {
    width: 80%;
}

main#brx-content {
    margin-top: 95px;
}

.cust_arctl {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 50px;
    grid-row-gap: 50px;
}

.pers_artcl {
    width: 100% !important;
}
}

@media screen and (max-width: 1024px) and (min-width: 768px) {
h1.colr_txt {
    font-size: 32px;
    text-transform: uppercase;
    color: #FFD633;
    font-weight: 900;
}

main#brx-content {
    margin-top: 100px;
}

.cust_arctl {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}

.pers_artcl {
    width: 100% !important;
}
}

@media screen and (min-width: 768px) {
.brx-dropdown-content {
    margin-top: 54px;
}

.scrolling .brx-dropdown-content {
    margin-top: 25px;
}
}

@media screen and (max-width: 767px) {
	h1.colr_txt {
    font-size: 25px;
    text-transform: uppercase;
    color: #FFD633;
    font-weight: 900;
}

div.bloc_struct {
    display: none;
}

main#brx-content {
    margin-top: 50px;
}

.men_menu .brx-has-megamenu .brx-submenu-toggle {
    font-size: 20px;
    text-transform: uppercase;
}

.men_menu li.menu-item {
    font-size: 20px;
    text-transform: uppercase;
}

.head_rs {
    display: flex !important;
    flex-direction: row !important;
}

.head_rs a.bricks-link-wrapper {
    width: auto !important;
}

.cust_arctl {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 50px;
    grid-row-gap: 50px;
}

.pers_artcl {
    width: 100% !important;
}
}


/* =========================================
   SLIDER - BOUTONS PREV / NEXT
   ========================================= */

.ts_carsl {
    position: relative;
}

/* Conteneur des deux flèches */
.ts_carsl .splide__arrows {
    position: absolute;
    top: 290px;
    left: 10.5%;
    z-index: 20;

    display: flex;
    align-items: center;
    gap: 8px;
}

/* Boutons */
.ts_carsl .splide__arrow {
    position: static !important;

    width: 56px !important;
    height: 32px !important;

    min-width: 56px;
    min-height: 32px;

    padding: 0;

    border: 1px solid #111 !important;
    border-radius: 999px !important;

    background: transparent !important;

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

    transform: none !important;
    opacity: 1 !important;

    cursor: pointer;
}

/* Annule le positionnement natif de Splide */
.ts_carsl .splide__arrow--prev,
.ts_carsl .splide__arrow--next {
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
}

/* Taille des icônes */
.ts_carsl .splide__arrow svg {
    width: 13px !important;
    height: 8px !important;
}

/* Couleur de la flèche */
.ts_carsl .splide__arrow svg,
.ts_carsl .splide__arrow svg path {
    stroke: #004474 !important;
}

/* Hover */
.ts_carsl .splide__arrow:hover {
    background: #004474 !important;
    border-color: #004474 !important;
}

.ts_carsl .splide__arrow:hover svg,
.ts_carsl .splide__arrow:hover svg path {
    stroke: #fff !important;
}


/* =========================================
   TABLETTE
   ========================================= */

@media (max-width: 1024px) {

    .ts_carsl .splide__arrows {
        left: 50%;
        top: 102%;
        bottom: 30px;
        transform: translateX(-50%);
    }
}


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

@media (max-width: 767px) {

    .ts_carsl .splide__arrows {
        left: 50%;
        top: 104%;
        bottom: 20px;

        transform: translateX(-50%);
        gap: 8px;
    }

    .ts_carsl .splide__arrow {
        width: 52px !important;
        height: 32px !important;
        min-width: 52px;
        min-height: 32px;
    }
}

#textarea-1 span.forminator-description {
    display: none;
}

input.forminator-input[placeholder] {
    font-weight: 900 !important;
}

.forminator-textarea[placeholder] {
    font-weight: 900 !important;
}

span.select2-selection__placeholder {
    font-weight: 900;
}

span.select2-selection__rendered {
    font-weight: 900 !important;
}

div#textarea-1 {
}

textarea.forminator-textarea {
    border-top: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
}

#upload-1 label.forminator-label {
    color: #003C6B;
    font-size: 16px !important;
    font-weight: 900 !important;
}

/* =========================================
   PIÈCE JOINTE
========================================= */

/* Ligne générale */
#upload-1 > .forminator-field {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: start !important;
    column-gap: 20px !important;
    width: 100% !important;
}


/* =========================================
   LABEL "Pièce jointe"
   Centré verticalement par rapport au bouton
========================================= */

#upload-1 > .forminator-field > .forminator-label {
    margin: 0 !important;
    padding: 0 !important;

    /* même hauteur approximative que le bouton */
    min-height: 40px !important;

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

    align-self: start !important;

    width: auto !important;
}


/* =========================================
   ZONE UPLOAD
========================================= */

#upload-1 .forminator-file-upload {
    display: grid !important;

    grid-template-columns: auto 24px !important;
    grid-template-rows: auto auto !important;

    column-gap: 8px !important;
    row-gap: 6px !important;

    align-items: center !important;
    justify-content: end !important;

    width: auto !important;

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


/* =========================================
   BOUTON "Choisissez un fichier"
========================================= */

#upload-1 .forminator-button-upload {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;

    justify-self: end !important;

    margin: 0 !important;

    min-height: 40px !important;

    background: #00457c !important;
    color: #fff !important;

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

    padding: 8px 12px !important;

    white-space: nowrap !important;
}


/* =========================================
   "Aucun fichier sélectionné"
   ou nom du fichier
========================================= */

#upload-1 .forminator-file-upload > span {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;

    display: block !important;

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

    text-align: center !important;

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

    color: #444 !important;

    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}


/* =========================================
   BOUTON X
========================================= */

#upload-1 .forminator-button-delete {
    grid-column: 2 !important;
    grid-row: 2 !important;

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

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

    align-items: center !important;
    justify-content: center !important;

    border: 0 !important;
    border-radius: 50% !important;

    background: #00457c !important;
    color: #fff !important;
}


/* IMPORTANT :
   Si Forminator cache le bouton,
   on respecte son display:none
*/
#upload-1 .forminator-button-delete[style*="display: none"] {
    display: none !important;
}


/* Lorsqu'un fichier est présent */
#upload-1 .forminator-button-delete:not([style*="display: none"]) {
    display: flex !important;
}

textarea.forminator-textarea {
    padding: 0 !important;
}

/* Champ "Votre besoin" */
#textarea-1 .forminator-textarea {
    --forminator-textarea-min-height: 80px !important;

    min-height: 80px !important;
    height: 80px !important;
}

#forminator-module-333 button.forminator-button.forminator-button-submit {
    padding: 15px 25px !important;
    border-radius: 100px !important;
	font-weight: 600 !important;
}

div.cust_bloc {
    overflow: hidden;
}

.timeline-title .brxe-divider {
    flex: 1;
    width: auto;
}

span.cust_chfr {
    font-size: 16px !important;
    color: #003C6B !important;
}



/* ===================================
   GTRANSLATE - STYLE BRICKS BUILDER
   =================================== */

/* Wrapper principal */
#gt_float_wrapper {
    position: relative !important;
    overflow: visible !important;
    width: fit-content !important;
}

/* Bouton principal */
#gt_float_wrapper .gt_float_switcher {
    position: relative !important;
    display: inline-block !important;
    width: auto !important;
    background: #ffffff !important;
    border: none !important;
    border-radius: 50px !important;
    box-shadow: none !important;
    overflow: visible !important;
}

/* Zone de sélection */
#gt_float_wrapper .gt-selected {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 57px !important;
    height: 44px !important;
    padding: 0 12px !important;
    background: #ffffff !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    overflow: visible !important;
}

/* Contenu du bouton */
#gt_float_wrapper .gt-selected .gt-current-lang {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

/* Texte FR */
#gt_float_wrapper .gt-selected .gt-lang-code {
    color: #003C6B !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}

/* Masquer les drapeaux */

/* Masquer le drapeau uniquement sur le bouton FR */
#gt_float_wrapper .gt-current-lang img {
    display: none !important;
}

/* Afficher les drapeaux dans le sous-menu */
#gt_float_wrapper .gt_options img {
    display: inline-block !important;
    width: 20px !important;
    height: auto !important;
    margin-right: 8px !important;
    vertical-align: middle !important;
}

/* Aligner les drapeaux avec les noms des langues */
#gt_float_wrapper .gt_options a {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 14px !important;
    color: #003C6B !important;
    font-size: 14px !important;
}

/* Eviter les doubles espacements */
#gt_float_wrapper .gt_options a img {
    margin-right: 0 !important;
    flex-shrink: 0 !important;
}


/* Flèche vers le bas */
#gt_float_wrapper .gt-selected .gt-current-lang::after {
    content: "" !important;
    display: inline-block !important;
    width: 7px !important;
    height: 7px !important;
    border-right: 1.8px solid #003C6B !important;
    border-bottom: 1.8px solid #003C6B !important;
    transform: rotate(45deg) translateY(-2px);
    transition: transform 0.25s ease;
}

/* Masquer l'ancienne flèche GTranslate */
#gt_float_wrapper .gt-selected .gt-current-lang > span:not(.gt-lang-code) {
    display: none !important;
}

/* ===================================
   MENU DEROULANT
   =================================== */

#gt_float_wrapper .gt_options {
    position: absolute !important;
    top: calc(100% + 8px) !important;
    right: 0 !important;
    left: auto !important;

    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;

    min-width: 160px !important;
    max-height: 260px !important;
    margin: 0 !important;
    padding: 8px 0 !important;

    background: #ffffff !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.12) !important;
    overflow-y: auto !important;
    z-index: 99999 !important;
}

/* Menu ouvert */
#gt_float_wrapper .gt_options.gt-open {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Langues */
#gt_float_wrapper .gt_options a {
    display: block !important;
    padding: 10px 14px !important;
    color: #003C6B !important;
    font-size: 14px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

/* Survol */
#gt_float_wrapper .gt_options a:hover {
    background: #DEF1FF !important;
}

/* ===================================
   BRICKS - EVITER LE DEBORDEMENT
   =================================== */

header,
.brxe-shortcode,
.gtranslate_wrapper {
    overflow: visible !important;
}

/* ===================================
   RESPONSIVE
   =================================== */

@media (max-width: 767px) {
    #gt_float_wrapper .gt-selected {
        height: 40px !important;
        min-width: 54px !important;
        padding: 0 10px !important;
    }

    #gt_float_wrapper .gt-selected .gt-lang-code {
        font-size: 14px !important;
    }
}

#brxe-kbidae .cust_list_1 > li:first-child .title {
    color: #FFBA00 !important;
}

#brxe-opjsas .cust_list_1 > li:nth-child(2) .title {
    color: #FFBA00 !important;
}

#brxe-sfvorq .cust_list_1 > li:nth-child(3) .title {
    color: #FFBA00 !important;
}

#brxe-bkvwgc .cust_list_1 > li:nth-child(4) .title {
    color: #FFBA00 !important;
}

.cust_artcl ul.related-posts {
    display: flex !important;
    flex-direction: column;
}

.cust_artcl li.repeater-item {
    display: flex;
    flex-direction: row;
    gap: 20px !important;
    align-items: center;
}

.cust_artcl img.image {
    height: auto !important;
    aspect-ratio: auto !important;
}

.cust_artcl figure {
    width: 50%;
}


/* Titre des actualités : 2 lignes maximum */
.pers_artcl .brxe-heading {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Extrait des actualités : 2 lignes maximum */
.pers_artcl .brxe-text-basic {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.men_onglet .tab-menu {
    display: flex;
    flex-direction: column !important;
}

.men_onglet .tab-content {
    border: none !important;
}

.men_onglet {
    gap: 50px;
}

.cust_lst ul {
    display: flex;
    flex-direction: column;
    gap: 20px;
}



/* ============================================
   AEOLE TECHNIQUES
   RECHERCHE AUTOCOMPLETE - CSS COMPLET
   ============================================ */

/* 1. CONTENEUR DE RECHERCHE */

.brxe-blpx-algolia-blog {
    position: relative;
    z-index: 100;
}

/* 2. PANNEAU DES RESULTATS */

.blpx-autocomplete {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    bottom: auto !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;

    width: 700px !important;
    max-width: calc(100vw - 30px) !important;
    max-height: 70vh !important;

    box-sizing: border-box;
    overflow-x: hidden !important;
    overflow-y: auto !important;

    background: #ffffff !important;
    color: #003C6B !important;

    border: 1px solid #e3e9ef !important;
    border-radius: 12px !important;

    box-shadow: 0 12px 35px
        rgba(0, 60, 107, 0.14) !important;

    padding: 24px !important;
    z-index: 99999 !important;
}

/* 3. ORGANISATION DES SECTIONS */

.blpx-autocomplete-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
}

.blpx-result-section {
    padding: 0 0 18px !important;
    border-bottom: 1px solid #e8edf2;
    min-width: 0;
}

.blpx-result-section:last-child {
    border-bottom: none;
    padding-bottom: 0 !important;
}

/* 4. TITRES DES SECTIONS */

.blpx-result-heading {
    color: #003C6B !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;

    text-transform: uppercase !important;
    letter-spacing: 0.6px;

    margin: 0 0 12px !important;
}

/* 5. CONTENU DES RESULTATS */

.blpx-result-content {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* 6. SUGGESTIONS */

.blpx-suggestion {
    display: block !important;
    width: 100%;

    padding: 11px 14px !important;

    background: #f3f7fa !important;
    color: #003C6B !important;

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

    font-size: 14px !important;
    font-weight: 500 !important;
    text-align: left !important;

    cursor: pointer;

    transition: background 0.2s ease;
}

.blpx-suggestion:hover {
    background: #e6eef5 !important;
}

/* 7. BLOCS ARTICLES ET PAGES */

.blpx-page-result {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 15px;

    padding: 12px 14px !important;

    background: #f7f9fb !important;
    border: 1px solid transparent !important;
    border-radius: 7px !important;

    text-decoration: none !important;

    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

/* Effet au survol */

.blpx-page-result:hover {
    background: #eef4f8 !important;
    border-color: #d5e2ec !important;
    transform: translateX(3px);
}

/* 8. TITRES DES ARTICLES */

.blpx-result-title {
    color: #003C6B !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;

    text-transform: none !important;

    margin: 0 !important;

    flex: 1;
    min-width: 0;
}

/* 9. EXTRAITS DES ARTICLES */

.blpx-result-excerpt {
    color: #66788a !important;
    font-size: 13px !important;
    line-height: 1.5 !important;

    margin: 5px 0 0 !important;
}

.blpx-result-excerpt:empty {
    display: none !important;
}

/* 10. FLECHES A DROITE DES ARTICLES */

.blpx-page-result::after {
    content: "↗";

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

    flex-shrink: 0;

    width: 28px;
    height: 28px;

    color: #003C6B;
    background: transparent;

    font-size: 20px;
    font-weight: 400;

    border-radius: 50%;

    transition:
        background 0.2s ease,
        transform 0.2s ease;
}

/* Flèche au survol */

.blpx-page-result:hover::after {
    background: #FFD633;
    color: #003C6B;
    transform: translate(2px, -2px);
}

/* 11. MOTS RECHERCHES EN JAUNE */

.blpx-autocomplete mark {
    background: #FFD633 !important;
    color: #003C6B !important;

    border-radius: 3px;
    padding: 1px 2px;

    font-weight: 700;
}

/* 12. CATEGORIES VIDES */

.blpx-empty-section {
    color: #8794a3 !important;
    font-size: 13px !important;
    font-style: italic;

    margin: 0 !important;
}

/* 13. BOUTON FERMER */

.blpx-autocomplete .btn-clear {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;

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

    width: 28px !important;
    height: 28px !important;

    background: #f0f4f7 !important;
    color: #003C6B !important;

    border: none !important;
    border-radius: 50% !important;

    font-size: 20px !important;
    cursor: pointer;

    z-index: 2;
}

.blpx-autocomplete .btn-clear:hover {
    background: #FFD633 !important;
}

/* ============================================
   14. POSITIONNEMENT DES DEUX RECHERCHES
   ============================================ */


/* Chaque module de recherche sert de repère */
.brxe-blpx-algolia-blog {
    position: relative !important;
}

/* Position par défaut : sous le formulaire */
.brxe-blpx-algolia-blog .blpx-autocomplete {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    bottom: auto !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;

    width: 700px !important;
    max-width: calc(100vw - 30px) !important;
    max-height: min(500px, 60vh) !important;
    overflow-y: auto !important;
    z-index: 99999 !important;
}

/* Le panneau du header reste sous la recherche */
header .brxe-blpx-algolia-blog .blpx-autocomplete {
    top: calc(100% + 10px) !important;
    bottom: auto !important;
}

/* Le panneau du contenu s'affiche sous son champ */
main .brxe-blpx-algolia-blog .blpx-autocomplete {
    top: calc(100% + 10px) !important;
    bottom: auto !important;
}


/* RECHERCHE EN BAS DE PAGE */

main .blpx-autocomplete {
    position: absolute !important;

    top: auto !important;
    bottom: calc(100% + 10px) !important;

    left: 50% !important;
    right: auto !important;

    transform: translateX(-50%) !important;
}

/* ============================================
   15. RESPONSIVE TABLETTE
   ============================================ */

@media (max-width: 991px) {

    .blpx-autocomplete {
        width: 600px !important;
        max-width: calc(100vw - 30px) !important;
        padding: 20px !important;
    }

    .blpx-result-heading {
        font-size: 13px !important;
    }

    .blpx-result-title {
        font-size: 14px !important;
    }
}

/* ============================================
   16. RESPONSIVE MOBILE
   ============================================ */

@media (max-width: 767px) {

    .blpx-autocomplete {
        width: calc(100vw - 30px) !important;
        max-width: calc(100vw - 30px) !important;

        padding: 18px !important;
        max-height: 65vh !important;

        border-radius: 10px !important;
    }

    .blpx-autocomplete-grid {
        gap: 15px !important;
    }

    .blpx-result-heading {
        font-size: 13px !important;
    }

    .blpx-result-title {
        font-size: 14px !important;
    }

    .blpx-page-result {
        padding: 10px 12px !important;
        gap: 8px;
    }

    .blpx-page-result::after {
        width: 24px;
        height: 24px;
        font-size: 17px;
    }

    .blpx-suggestion {
        font-size: 13px !important;
    }
    .brxe-blpx-algolia-blog .blpx-autocomplete {
        width: calc(100vw - 30px) !important;
        max-height: 50vh !important;
    }
}

.ic_hv {
    transition: all 0.2s;
}

.bricks-button {
    transition: all 0.2s;
}

.hom_form button.forminator-button:hover {
    background-color: transparent !important;
    color: #003C6B !important;
    border: 1px solid #003C6B !important;
}

.hom_form button.forminator-button {
    border: 1px solid #003C6B !important;
}

.cust_col_hov:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 40px rgba(0, 60, 107, 0.18);
    background-color: #ffffff;
    transition: all 0.2s;
}

.cust_col_hov {
    transition: all 0.2s;
}

#brxe-axrblc .main-search-input::placeholder {
    color: #FFFFFF !important;
    opacity: 1 !important;
}

h3.aeole-agences__ville {
    font-size: 24px;
    font-weight: 900;
}

p.aeole-agences__legende, .aeole-agences__adresse {
    font-size: 20px;
    color: #000;
    font-weight: 400;
}

span.aeole-cas__number {
    text-align: center;
    font-size: 96px;
    font-weight: 900;
}

.scrolling .cust_contr {
    margin-top: 30px !important;
}

@media screen and (max-width: 1280px) and (min-width: 1025px) {
    .men_menu a.brxe-text-link {
    font-size: 14px;
}

.men_menu .brx-submenu-toggle span {
    font-size: 14px;
}
}

.cust_list_2 span.title {
    padding: 10px 12px;
}

.cust_list_2 .content {
    border-bottom: 1px solid #ffffff12;
    border-radius: 4px;
    padding-right: 12px;
}

.cust_list_2 .content:hover {
    background: #ffffff0d;
}

.cky-consent-bar button {
    border-radius: 30px;
    background-color: #ffd633 !important;
    border: solid 1px #ffd633 !important;
    color: black !important;
}
button.cky-btn.cky-btn-customize {
    background-color: white !important;
    color: #12386b !important;
}
.cky-consent-bar button:hover {
    background-color: #ffd633 !important;
    border: solid 1px #ffd633 !important;
    color: black !important;
}

.cky-prefrence-btn-wrapper button {
    background-color: #ffd633 !important;
    border: solid 1px #ffd633 !important;
    border-radius: 30px;
    color: #000 !important;
}
.cky-prefrence-btn-wrapper button:hover {
    background-color: rgba(0,0,0,0) !important;
    border: solid 1px #ffd633 !important;
    border-radius: 30px;
}
.cky-btn-revisit-wrapper {
    background: #ffd633 !important;

}

.item-search .blpx-search-panel button i:before {
    margin-left: 45px;
    font-size: 35px;
}

#brxe-nqjhik form.topbar-search button {
    width: 60px !important;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

#brxe-nqjhik input.main-search-input {
    padding-left: 30px;
}

#forminator-module-333.forminator-design--material .forminator-label .forminator-required {
    display: none !important;
}

.aeole-agences__panel a.aeole-agences__bouton:hover {
    border: solid 2px #ffd633;
    background-color: #12386b;
    color: white;
}

.brxe-section a#brxe-injbkv:hover {
    background-color: #003c6b;
    border: solid 2px #ffd633;
    color: #fff;
    border: solid 2px #ffd633;
}

#brxe-injbkv {
    border: solid 2px #ffd633;
}

.sec_equipe {
    display: none;
}


/* ============================================
   AEOLE - CORRECTION TITRES ET EXTRAITS
   RECHERCHE ALGOLIA
   ============================================ */

/* Chaque résultat */
.blpx-autocomplete .blpx-page-result {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 28px;
    grid-template-rows: auto auto;
    column-gap: 15px;
    row-gap: 4px;
    align-items: center !important;

    padding: 12px 14px !important;
    min-width: 0;
    height: auto !important;
}

/* Titre de l'article */
.blpx-autocomplete .blpx-page-result
.blpx-result-title {
    grid-column: 1;
    grid-row: 1;

    display: block !important;
    width: 100%;
    min-width: 0;

    color: #003C6B !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;

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

    overflow-wrap: anywhere;
}

/* Extrait sous le titre */
.blpx-autocomplete .blpx-page-result
.blpx-result-excerpt {
    grid-column: 1;
    grid-row: 2;

    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;

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

    color: #66788a !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;

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

    overflow-wrap: anywhere;
}

/* Masquer les extraits vides */
.blpx-autocomplete .blpx-result-excerpt:empty {
    display: none !important;
}

/* Flèche à droite */
.blpx-autocomplete .blpx-page-result::after {
    content: "↗";

    grid-column: 2;
    grid-row: 1 / 3;
    align-self: center;
    justify-self: center;

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

    width: 28px;
    height: 28px;

    color: #003C6B;
    font-size: 20px;
    font-weight: 400;

    background: transparent;
    border-radius: 50%;

    transition: all 0.2s ease;
}

/* Survol de la flèche */
.blpx-autocomplete .blpx-page-result:hover::after {
    background: #FFD633;
    transform: translate(2px, -2px);
}

/* Responsive mobile */
@media (max-width: 767px) {
    .blpx-autocomplete .blpx-page-result {
        grid-template-columns: minmax(0, 1fr) 24px;
        column-gap: 10px;
        padding: 10px 12px !important;
    }

    .blpx-autocomplete .blpx-result-title {
        font-size: 14px !important;
    }

    .blpx-autocomplete .blpx-result-excerpt {
        font-size: 12px !important;
    }
}
