.wpcf7[id*="cfc8f7d"] .wpcf7-form-control,
.wpcf7[id*="wpcf7-f13954"] .wpcf7-form-control,
.wpcf7[data-wpcf7-id="13954"] .wpcf7-form-control,
.wpcf7-form[id*="cfc8f7d"] .wpcf7-form-control,
.wpcf7-form[id*="wpcf7-f13954"] .wpcf7-form-control,
form[id*="cfc8f7d"] .wpcf7-form-control,
form[id*="wpcf7-f13954"] .wpcf7-form-control,
form[action*="cfc8f7d"] .wpcf7-form-control,
form[action*="wpcf7-f13954"] .wpcf7-form-control {
    width: 100% !important;
    box-sizing: border-box !important;
    border: 1px solid #d9d9d9 !important;
    background: #f7f7f7 !important;
    border-radius: 8px !important;
    padding: 12px 14px !important;
    font-size: 16px !important;
    line-height: 22px !important;
    color: #111111 !important;
}

.wpcf7[id*="cfc8f7d"] ::placeholder,
.wpcf7[id*="wpcf7-f13954"] ::placeholder,
.wpcf7[data-wpcf7-id="13954"] ::placeholder,
.wpcf7-form[id*="cfc8f7d"] ::placeholder,
.wpcf7-form[id*="wpcf7-f13954"] ::placeholder,
form[id*="cfc8f7d"] ::placeholder,
form[id*="wpcf7-f13954"] ::placeholder,
form[action*="cfc8f7d"] ::placeholder,
form[action*="wpcf7-f13954"] ::placeholder {
    color: #8a8a8a !important;
}

/*
Theme Name: Divi Child
Template: Divi
Description: Divi Child 
Theme Author: mattkonnect.com
Author URI: https://mattkonnect.com/
*/

@import url("../Divi/style.css");

@font-face {
    font-family: 'Switzer';
    src: url('https://cdn.fontshare.com/wf/EW5HJEX6O4L64XUWQA2XU7Q6BZ3B4JA4/ZWUP4SQYHHMMSS5LFHFFBX6DXL7C3DTU/H5EOHLIZH5K7IZK6SGYJI75L4KV6FUO7.woff2') format('woff2'),
        url('https://cdn.fontshare.com/wf/EW5HJEX6O4L64XUWQA2XU7Q6BZ3B4JA4/ZWUP4SQYHHMMSS5LFHFFBX6DXL7C3DTU/H5EOHLIZH5K7IZK6SGYJI75L4KV6FUO7.woff') format('woff'),
        url('https://cdn.fontshare.com/wf/EW5HJEX6O4L64XUWQA2XU7Q6BZ3B4JA4/ZWUP4SQYHHMMSS5LFHFFBX6DXL7C3DTU/H5EOHLIZH5K7IZK6SGYJI75L4KV6FUO7.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


/* Modifier le gras du menu principal (Desktop) */
#top-menu li a {
    font-weight: 400 !important;
    /* 400 = normal, 600 = semi-bold, 700 = bold */
}

/* Modifier le gras du menu mobile (Accordéon) */
.et_mobile_menu li a {
    font-weight: 400 !important;
}

/* Augmente la spécificité du sélecteur */
body .et_pb_row.hero-image {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 400px !important;
}

/* Hero global (toutes pages) */
body .et_pb_section.hero-section,
body .et_pb_section.hero-image {
    padding: 0 !important;
    margin: 0 !important;
}

body .et_pb_section.hero-section .et_pb_row,
body .et_pb_section.hero-image .et_pb_row {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
}

body .et_pb_row.hero-image .hero__content,
body .et_pb_section.hero-section .hero__content {
    width: 100%;
    padding: 120px 24px 80px;
    text-align: center;
    box-sizing: border-box;
}

body .hero__title {
    font-size: 46px !important;
    line-height: 1.15 !important;
    font-weight: 400 !important;
    color: #000000 !important;
    margin: 0 0 18px 0 !important;
}

body .hero__subtitle {
    font-size: 20px !important;
    line-height: 1.6 !important;
    color: #111111 !important;
    margin: 0 !important;
}

/* Tablette et Mobile */
@media (max-width: 980px) {
    body .et_pb_row.hero-image {
        min-height: 300px !important;
    }

    body .et_pb_row.hero-image .hero__content,
    body .et_pb_section.hero-section .hero__content {
        padding: 90px 18px 60px;
    }

    body .hero__title {
        font-size: 34px !important;
    }

    body .hero__subtitle {
        font-size: 18px !important;
    }
}

@media (max-width: 767px) {
    body .et_pb_row.hero-image {
        min-height: 250px !important;
        background-attachment: scroll !important;
    }
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
a {
    font-family: 'Switzer', sans-serif !important;
}

/* Base card */
.fairway-card {
    background: #b7c3cc;
    border-radius: 24px;
    padding: 40px;
    height: 100%;
    box-sizing: border-box;
}

/* Container pour les cartes */
.fairway-cards-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Titre des cartes */
.fairway-card h2,
.fairway-card h3 {
    font-size: 32px !important;
    line-height: 1.3 !important;
    margin-bottom: 30px !important;
    font-weight: 500 !important;
}

/* Listes dans les cartes */
.fairway-card ul {
    list-style-position: outside;
    padding-left: 20px;
    margin: 0;
}

.fairway-card ul li {
    font-size: 18px !important;
    line-height: 1.6 !important;
    margin-bottom: 15px;
}

/* Texte dans les cartes */
.fairway-card p {
    font-size: 18px !important;
    line-height: 1.6 !important;
}

/* Masquer les sous-titres des images/cartes */
.img_caro_text p {
    display: none !important;
}

/* Responsive Cartes */
@media (max-width: 1024px) {
    .fairway-cards-container {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .fairway-card {
        padding: 30px;
    }

    .fairway-card h2,
    .fairway-card h3 {
        font-size: 28px !important;
    }
}

/* Pills */
/* --- SECTION TITRES --- */
.fairway-tags .trigger-bar {
    display: flex;
    justify-content: center;
    gap: 120px;
    margin-bottom: 80px;
    text-align: center;
    padding-top: 150px;
    padding-bottom: 50px;
}

/* ==========================
   Blog grid (Divi) – aligné au design "Nos actu"
   ========================== */

.custom-blog-grid .et_pb_salvattore_content {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 16px !important;
}

/* Neutraliser les wrappers de colonne générés par Salvattore (Divi) */
.custom-blog-grid .et_pb_salvattore_content>.column {
    width: auto !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

@media (max-width: 980px) {
    .custom-blog-grid .et_pb_salvattore_content {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 640px) {
    .custom-blog-grid .et_pb_salvattore_content {
        grid-template-columns: 1fr !important;
    }
}

.custom-blog-grid article.et_pb_post {
    background: #ffffff !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
}

.custom-blog-grid article.et_pb_post:hover {
    border-color: #cfcfcf !important;
    box-shadow: none !important;
}

/* Image bloc */
.custom-blog-grid .et_pb_image_container {
    width: 100% !important;
    aspect-ratio: 1 / 1;
    overflow: hidden !important;
    position: relative !important;
}

.custom-blog-grid .entry-featured-image-url,
.custom-blog-grid .entry-featured-image-url a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    position: relative !important;
}

.custom-blog-grid .entry-featured-image-url img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
}

/* Zone texte */
.custom-blog-grid .post-content {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    min-height: 88px !important;
}

.custom-blog-grid .post-content-inner.et_multi_view_hidden {
    display: none !important;
}

.custom-blog-grid .entry-title {
    margin: 0 0 2px 0 !important;
    text-align: left !important;
    grid-area: title;
}

.custom-blog-grid .entry-title a {
    color: #111111 !important;
    font-size: 24px !important;
    line-height: 28px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    text-decoration: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
    min-height: 56px !important;
}

.custom-blog-grid .post-meta {
    margin: 0 0 2px 0 !important;
    padding: 0 !important;
    color: #9a9a9a !important;
    font-size: 16px !important;
    line-height: 16px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    grid-area: meta;
    display: block;
}

.custom-blog-grid .more-link,
.custom-blog-grid .post-content a.more-link {
    color: #9a9a9a !important;
    font-size: 16px !important;
    line-height: 16px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    text-decoration: none !important;
    grid-area: more;
    display: block !important;
    text-align: left !important;
}

/* ==========================
   Blog grid – fallback (modules sans classe .custom-blog-grid)
   Aligne le rendu sur le mosaic carré avec date au-dessus et read more sous le titre
   ========================== */
.et_pb_blog_grid article.et_pb_post {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
}

.et_pb_blog_grid .et_pb_salvattore_content {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 16px !important;
}

.et_pb_blog_grid .et_pb_salvattore_content>.column {
    width: auto !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

.et_pb_blog_grid .et_pb_image_container {
    width: 100% !important;
    aspect-ratio: 1 / 1;
    overflow: hidden !important;
    position: relative !important;
    margin: 0 !important;
}

.et_pb_blog_grid .et_pb_image_container img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
}

.et_pb_blog_grid .et_overlay,
.et_pb_blog_grid .et_pb_inline_icon {
    display: none !important;
}

.et_pb_blog_grid .post-content {
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    min-height: 88px !important;
}

@media (max-width: 980px) {
    .custom-blog-grid .post-content,
    .et_pb_blog_grid .post-content {
        min-height: 0 !important;
    }
}

.et_pb_blog_grid .post-content-inner.et_multi_view_hidden {
    display: none !important;
}

.et_pb_blog_grid .post-meta {
    margin: 0 0 2px 0 !important;
    padding: 0 !important;
    color: #9a9a9a !important;
    font-size: 20px !important;
    line-height: 24px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    grid-area: meta;
}

.et_pb_blog_grid .entry-title {
    margin: 0 0 2px 0 !important;
    text-align: left !important;
    grid-area: title;
}

.et_pb_blog_grid .entry-title a {
    color: #111111 !important;
    font-size: 24px !important;
    line-height: 28px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    text-decoration: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
    min-height: 56px !important;
}

.et_pb_blog_grid .more-link,
.et_pb_blog_grid .post-content a.more-link {
    color: #9a9a9a !important;
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    text-decoration: none !important;
    grid-area: more;
    display: block !important;
    text-align: left !important;
}

/* Fin blog */
/* Style de base des titres (Noir permanent) */
.fairway-tags .trigger-bar span.trigger {
    font-family: 'Switzer', sans-serif !important;
    font-size: 50px !important;
    line-height: 55px !important;
    font-weight: 400 !important;
    color: #000000 !important;
    /* Force le noir pur */
    cursor: pointer;

    /* Crucial pour un soulignement qui colle au texte sur 2 lignes */
    display: inline;
    text-decoration: none !important;
    padding-bottom: 2px;
}

/* ÉTAT ACTIF : Soulignement noir lors du clic */
.fairway-tags .trigger-bar span.trigger.active {
    opacity: 1 !important;
    /* Soulignement qui suit exactement le texte */
    text-decoration: underline !important;
    text-decoration-color: #000000 !important;
    text-decoration-thickness: 4px !important;
    text-underline-offset: 4px !important;
}

/* ÉTAT INACTIF : Texte noir mais semi-transparent */
.fairway-tags .trigger-bar span.trigger:not(.active) {
    text-decoration: none !important;
}

/* --- SECTION PILLS (Paramètres Prod) --- */
.fairway-tags .tag-list {
    display: flex;
    flex-wrap: wrap;
    /* Les pilules se répartissent naturellement */
    justify-content: center;
    gap: 15px 25px;
    padding: 0 !important;
    list-style: none !important;
}

.fairway-tags .tag-list li {
    font-family: "Roboto", sans-serif !important;
    font-size: 39px !important;
    line-height: 59px !important;
    font-weight: 400;
    color: #000000 !important;
    background-color: transparent;
    border: 1px solid #000000;
    border-radius: 50px;
    padding: 12px 35px;
    text-align: center;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.3s ease;
}

/* État Actif des Pills (Fond Bleu-Gris) */
.fairway-tags .tag-list li.active-li {
    background-color: #4D6B7C !important;
    border-color: #4D6B7C !important;
    color: #FFFFFF !important;
}

/* --- RESPONSIVE --- */
@media (max-width: 1200px) {
    .fairway-tags .trigger-bar {
        gap: 60px;
    }

    .fairway-tags .trigger-bar span.trigger {
        font-size: 38px !important;
        line-height: 42px !important;
    }

    .fairway-tags .tag-list li {
        font-size: 16px !important;
        line-height: 24px !important;
        padding: 10px 28px;
    }
}

@media (max-width: 767px) {
    .fairway-tags .trigger-bar {
        flex-direction: column;
        gap: 30px;
        padding-top: 80px;
        padding-bottom: 30px;
    }

    .fairway-tags .trigger-bar span.trigger {
        font-size: 32px !important;
        line-height: 38px !important;
    }

    .fairway-tags .tag-list {
        gap: 10px 15px;
        padding: 0 15px !important;
    }

    .fairway-tags .tag-list li {
        font-size: 18px !important;
        line-height: 27px !important;
        padding: 8px 20px;
        white-space: normal;
        text-align: center;
    }
}

/* Carousel / Owl Carousel */
.gs-member-specialty {
    display: none;
}

.gs-member-desc img {
    width: 200px;
}

.gs-team--fixed-height .single-member .gs_team_image__wrapper img {
    object-position: top;
}

.elementor-widget-wpr-grid .wpr-grid-item-title {
    width: 100%;
}

.owl-item .gs-member-name,
body .single-member-div .gs-member-name {
    color: #000000 !important;
    font-size: 26px;
    font-weight: 400;
    text-align: left !important;
}

.gs_tm_theme7 .single-mem-desc-social {
    transform: inherit !important;
    background-color: #4D6B7C;
    opacity: 0;
}

.gs_tm_theme7 .single-mem-desc-social:hover {
    opacity: 0.3 !important;
}

.owl-prev,
.owl-next {
    top: calc(50% - 110px) !important;
    width: 55px !important;
    height: 55px !important;
    background: #78FF5F !important;
    color: black !important;
    hover: none !important;
}

.owl-next:hover,
.owl-prev:hover {
    background-color: black;
    color: white;
}

/* Swiper Navigation Buttons */
.swiper-button-prev,
.swiper-button-next {
    background-color: #78FF5F !important;
    width: 55px !important;
    height: 55px !important;
    border-radius: 50%;
    top: 50% !important;
    transform: translateY(-50%);
}

.swiper-button-prev:after,
.swiper-button-next:after {
    color: black !important;
    font-size: 20px !important;
    font-weight: bold;
}

.swiper-button-prev:hover,
.swiper-button-next:hover {
    background-color: black !important;
}

.swiper-button-prev:hover:after,
.swiper-button-next:hover:after {
    color: white !important;
}

.owl-item .gs-member-desig,
body .single-member-div .gs-member-desig {
    color: #B9B9B9 !important;
    font-weight: 400;
    font-size: 18px;
    text-align: left !important;
    height: 75px;
}

/* Calage uniforme des infos membre dans la grille */
.gs_member_info {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-height: 90px;
    max-height: 130px;
    overflow: hidden;
}

/* Nettoie le séparateur pipe éventuel */
.gs_member_info .gs-member-desig::after {
    content: none !important;
}


.ha-carousel .slick-prev,
.ha-slider .slick-prev {
    left: -12px;
}

.ha-carousel .slick-next,
.ha-slider .slick-next {
    right: -12px;
}

.ha-carousel .slick-next,
.ha-carousel .slick-prev,
.ha-slider .slick-next,
.ha-slider .slick-prev {
    z-index: 99 !important;
}

/* Team Member Popup */
body .mfp-gsteam .white-popup {
    margin: inherit !important;
}

.mfp-gsteam .white-popup {
    background-color: #E7E7E7;
    border-radius: 50px !important;
}

.gs-team-popup--default .mfp-close {
    background-color: black !important;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 1 !important;
}

.gs-team-popup--default .mfp-close svg {
    width: 15px;
}

.gs-team-popup--default .mfp-close svg path {
    fill: white !important;
}

.gs-member-desc img {
    width: 200px;
}

.gs-member-desc p,
.gs-member-desc ul li,
.gs_secondary_button,
.gs-member-cphon>*,
.gs-member-lphon>*,
.gs-member-email>* {
    color: black !important;
}

/* Harmonise les infos contact (tel/email) */
.gs-member-cphon,
.gs-member-lphon,
.gs-member-email,
.gs-member-cphon *,
.gs-member-lphon *,
.gs-member-email *,
.level-info-cphon,
.levels {
    font-size: 16px !important;
    line-height: 21px !important;
}

.gs-member-desc h4,
.gs-member-desc h3 {
    color: black !important;
    font-weight: 300 !important;
}

/* Adjust the size of titles in the popup */
.gs-team-popup--default .gs-member-desc h3,
.gs-team-popup--default .gs-member-desc h4 {
    font-size: 28px !important;
    line-height: 34px !important;
    margin-top: 20px !important;
    margin-bottom: 10px !important;
    color: #000000 !important;
    font-weight: 300 !important;
}

/* Ajuster l'espacement dans le popup */
.gs-team-popup--default .gs-member-desc p {
    font-size: 16px !important;
    line-height: 28px !important;
    margin-bottom: 10px !important;
}

.gs-team-popup--default .gs-member-desc ul {
    margin-top: 5px !important;
    margin-bottom: 15px !important;
}

.gs-team-popup--default .gs-member-desc ul li {
    font-size: 16px !important;
    line-height: 28px !important;
    margin-bottom: 5px !important;
}

.gs-member-desc hr {
    background-color: #cccccc;
    margin: 50px 0 !important;
}

.gstm-details .gs-team-social .linkedin {
    height: inherit !important;
    border: none !important;
    color: black !important;
    width: inherit !important;
    font-size: 16px !important;
    line-height: 21px !important;
}

.gstm-details .gs-team-social .linkedin:hover {
    background-color: transparent !important;
    border: none !important;
}

@media screen and (min-width: 769px) {
    .gs-member-desig {
        padding-right: 50px;
    }

    .gs-team-popup--default .gs-member-desc.gs-team--scrollbar {
        max-height: 68vh !important;
    }
}

@media screen and (max-width: 768px) {
    .gs-team-popup--default {
        position: fixed !important;
        top: 0 !important;
        height: 100vh !important;
        overflow: scroll !important;
    }

    .gs-team-popup--default .mfp-close {
        position: fixed;
    }

    .mfp-gsteam .white-popup {
        margin: 5px auto 50px !important;
    }

    .gs_team_popup_img {
        padding-top: 0px;
        border-top-left-radius: 35px;
        border-top-right-radius: 35px;
        overflow: hidden;
    }

    .gs-team-popup--default .mfp-content--container {
        padding: 10px;
    }

    .gs-team-popup--default .gs-member-desc.gs-team--scrollbar {
        max-height: inherit !important;
    }

    .gs_team_image__wrapper {
        height: 400px !important;
    }
}

.team-image-clickable .gs_team_image__wrapper,
.team-image-clickable .gs_team_image__overlay {
    cursor: pointer;
}

.gs_team_image__wrapper img {
    object-fit: cover !important;
    object-position: center top !important;
    width: 100% !important;
    height: 100% !important;
}

/* Filtres équipe */
.gs-team-filter-cats.gs-team-filter-theme--default {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-bottom: 40px;
}

.gs-team-filter-cats.gs-team-filter-theme--default button {
    font-family: 'Switzer', sans-serif !important;
    font-size: 18px !important;
    font-weight: 400;
    color: #000000 !important;
    background-color: #FFFFFF !important;
    border: 1px solid #000000 !important;
    border-radius: 50px;
    padding: 12px 30px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.gs-team-filter-cats.gs-team-filter-theme--default button:hover,
.gs-team-filter-cats.gs-team-filter-theme--default button.active {
    background-color: #78FF5F !important;
    border-color: #78FF5F !important;
    color: #000000 !important;
}

/* Suppression espace entre cartes */
.gs-roow.gs_team {
    gap: 0 !important;
    margin: 0 !important;
}

.single-member-div {
    margin-bottom: 20px !important;
    padding: 0 !important;
}

.share-icon {
    display: none !important;
}

.gs-team-filter-cats .filter a {
    font-size: 26px;
    font-weight: 400;
    color: #000000 !important;
    background-color: #00000000 !important;
    border-style: solid !important;
    border-width: 1px 1px 1px 1px !important;
    border-radius: 50px 50px 50px 50px !important;
    padding: 12px 24px !important;
}

.gs-team-filter-cats .filter a:hover {
    color: black !important;
    background-color: #78FF5F !important;
    border-color: #78FF5F !important;
}

/* Style actif général pour tous les filtres */
.gs_team_area .gs-team-filter-cats li.filter.active>a {
    color: black !important;
    background-color: #78FF5F !important;
    border-color: #78FF5F !important;
}

/* --- PROVISOIRE : remplacer les rules nth-child fragiles par sélecteurs :has() basés sur data-filter --- */

/* neutraliser tout order hérité */
.gs-team-filter-cats .filter {
    order: 999 !important;
}

/* FR : 1. Associés, 2. Counsels, 3. Collaborateurs, 4. Consultants, 5. Staff */
html:lang(fr-FR) .gs-team-filter-cats li:has(a[data-filter*="associes-fr"]) {
    order: 1 !important;
}

html:lang(fr-FR) .gs-team-filter-cats li:has(a[data-filter*="counsels-fr"]) {
    order: 2 !important;
}

html:lang(fr-FR) .gs-team-filter-cats li:has(a[data-filter*="collaborateurs-fr"]) {
    order: 3 !important;
}

html:lang(fr-FR) .gs-team-filter-cats li:has(a[data-filter*="consultants-fr"]) {
    order: 4 !important;
}

html:lang(fr-FR) .gs-team-filter-cats li:has(a[data-filter*="staff-fr"]) {
    order: 5 !important;
}

/* EN : 1. Partners, 2. Counsels, 3. Associates, 4. Consultants, 5. Staff */
html:lang(en-GB) .gs-team-filter-cats li:has(a[data-filter*="partners-en"]) {
    order: 1 !important;
}

html:lang(en-GB) .gs-team-filter-cats li:has(a[data-filter*="counsels-en"]) {
    order: 2 !important;
}

html:lang(en-GB) .gs-team-filter-cats li:has(a[data-filter*="associates-en"]) {
    order: 3 !important;
}

html:lang(en-GB) .gs-team-filter-cats li:has(a[data-filter*="consultants-en"]) {
    order: 4 !important;
}

html:lang(en-GB) .gs-team-filter-cats li:has(a[data-filter*="staff-en"]) {
    order: 5 !important;
}


/* Provisoire — cacher toutes les catégories FR (data-filter contenant "-fr") sur la page EN */
html:lang(en-GB) .gs-team-filter-cats li:has(a[data-filter*="-fr"]) {
    display: none !important;
}

/* ==========================
   Contact Form 7 – styles communs (EN/FR)
   ========================== */

/* Mise en page locale du formulaire home (wrap #leFormPlaquette) */
#leFormPlaquette {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    max-width: 1240px;
}

#leFormPlaquette .c6 {
    width: calc(50% - 8px);
}

#leFormPlaquette .c6.end {
    width: calc(50% - 8px);
}

#leFormPlaquette .c12,
#leFormPlaquette .c12.end,
#leFormPlaquette>div {
    width: 100%;
}

#leFormPlaquette p,
#leFormPlaquette br {
    margin: 0;
    padding: 0;
}

#leFormPlaquette input[type="text"],
#leFormPlaquette input[type="email"],
#leFormPlaquette input[type="tel"],
#leFormPlaquette input[type="url"],
#leFormPlaquette input[type="file"],
#leFormPlaquette textarea,
#leFormPlaquette select {
    width: 100% !important;
    box-sizing: border-box !important;
    border: 1px solid #d9d9d9 !important;
    background: #f7f7f7 !important;
    border-radius: 8px !important;
    padding: 12px 14px !important;
    font-size: 16px !important;
    line-height: 22px !important;
    color: #111111 !important;
    font-family: 'Switzer', sans-serif !important;
}

#leFormPlaquette ::placeholder {
    color: #8a8a8a !important;
}

#leFormPlaquette .BlocBoutonEnvoyer {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    margin-top: 8px;
}

#leFormPlaquette .boutonValidNousRejoindre {
    background: #78FF5F !important;
    color: #000 !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 12px 28px !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    cursor: pointer;
    text-transform: none !important;
    transition: transform 0.12s ease, box-shadow 0.12s ease;
}

#leFormPlaquette .boutonValidNousRejoindre:hover {
    background-color: #000 !important;
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08);
}

#leFormPlaquette .boutonValidNousRejoindre:active {
    transform: translateY(0);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06);
}

@media (max-width: 900px) {

    #leFormPlaquette .c6,
    #leFormPlaquette .c6.end {
        width: 100%;
    }
}

/* Sélecteurs partagés (EN/FR) */
.wpcf7[id*="cfc8f7d"],
.wpcf7[id*="wpcf7-f13954"],
.wpcf7[data-wpcf7-id="13954"],
.wpcf7-form[id*="cfc8f7d"],
.wpcf7-form[id*="wpcf7-f13954"],
form[id*="cfc8f7d"],
form[id*="wpcf7-f13954"],
form[action*="cfc8f7d"],
form[action*="wpcf7-f13954"] {
    --cf-bg: #f7f7f7;
    --cf-border: #d9d9d9;
    --cf-text: #111;
    --cf-placeholder: #8a8a8a;
    --cf-radius: 8px;
    --cf-pad: 12px 14px;
    --cf-font: 'Switzer', sans-serif;
}

/* Wrapper */
.wpcf7[id*="cfc8f7d"] .wpcf7-form,
.wpcf7[id*="wpcf7-f13954"] .wpcf7-form,
.wpcf7[data-wpcf7-id="13954"] .wpcf7-form,
.wpcf7-form[id*="cfc8f7d"],
.wpcf7-form[id*="wpcf7-f13954"],
form[id*="cfc8f7d"],
form[id*="wpcf7-f13954"],
form[action*="cfc8f7d"],
form[action*="wpcf7-f13954"] {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px 40px;
    box-sizing: border-box;
    font-family: var(--cf-font);
}

.wpcf7[id*="cfc8f7d"] .wpcf7-form p,
.wpcf7[id*="wpcf7-f13954"] .wpcf7-form p,
.wpcf7[data-wpcf7-id="13954"] .wpcf7-form p,
.wpcf7-form[id*="cfc8f7d"] p,
.wpcf7-form[id*="wpcf7-f13954"] p,
form[id*="cfc8f7d"] p,
form[id*="wpcf7-f13954"] p,
form[action*="cfc8f7d"] p,
form[action*="wpcf7-f13954"] p {
    margin: 0 0 14px 0;
}

/* Champs */
.wpcf7[id*="cfc8f7d"] .wpcf7-form-control,
.wpcf7[id*="wpcf7-f13954"] .wpcf7-form-control,
.wpcf7[data-wpcf7-id="13954"] .wpcf7-form-control,
.wpcf7-form[id*="cfc8f7d"] .wpcf7-form-control,
.wpcf7-form[id*="wpcf7-f13954"] .wpcf7-form-control,
form[id*="cfc8f7d"] .wpcf7-form-control,
form[id*="wpcf7-f13954"] .wpcf7-form-control,
form[action*="cfc8f7d"] .wpcf7-form-control,
form[action*="wpcf7-f13954"] .wpcf7-form-control {
    width: 100% !important;
    box-sizing: border-box !important;
    border: 1px solid var(--cf-border) !important;
    background: var(--cf-bg) !important;
    border-radius: var(--cf-radius) !important;
    padding: var(--cf-pad) !important;
    font-size: 16px !important;
    line-height: 22px !important;
    color: var(--cf-text) !important;
    font-family: var(--cf-font) !important;
}

.wpcf7[id*="cfc8f7d"] ::placeholder,
.wpcf7[id*="wpcf7-f13954"] ::placeholder,
.wpcf7[data-wpcf7-id="13954"] ::placeholder,
.wpcf7-form[id*="cfc8f7d"] ::placeholder,
.wpcf7-form[id*="wpcf7-f13954"] ::placeholder,
form[id*="cfc8f7d"] ::placeholder,
form[id*="wpcf7-f13954"] ::placeholder,
form[action*="cfc8f7d"] ::placeholder,
form[action*="wpcf7-f13954"] ::placeholder {
    color: var(--cf-placeholder) !important;
}

.wpcf7[id*="cfc8f7d"] textarea,
.wpcf7[id*="wpcf7-f13954"] textarea,
.wpcf7[data-wpcf7-id="13954"] textarea,
.wpcf7-form[id*="cfc8f7d"] textarea,
.wpcf7-form[id*="wpcf7-f13954"] textarea,
form[id*="cfc8f7d"] textarea,
form[id*="wpcf7-f13954"] textarea,
form[action*="cfc8f7d"] textarea,
form[action*="wpcf7-f13954"] textarea {
    min-height: 180px;
    resize: vertical;
}

.wpcf7[id*="cfc8f7d"] .wpcf7-form-control-wrap,
.wpcf7[id*="wpcf7-f13954"] .wpcf7-form-control-wrap,
.wpcf7[data-wpcf7-id="13954"] .wpcf7-form-control-wrap,
.wpcf7-form[id*="cfc8f7d"] .wpcf7-form-control-wrap,
.wpcf7-form[id*="wpcf7-f13954"] .wpcf7-form-control-wrap,
form[id*="cfc8f7d"] .wpcf7-form-control-wrap,
form[id*="wpcf7-f13954"] .wpcf7-form-control-wrap,
form[action*="cfc8f7d"] .wpcf7-form-control-wrap,
form[action*="wpcf7-f13954"] .wpcf7-form-control-wrap {
    display: block;
}

.wpcf7[id*="cfc8f7d"] input[type="file"],
.wpcf7[id*="wpcf7-f13954"] input[type="file"],
.wpcf7[data-wpcf7-id="13954"] input[type="file"],
.wpcf7-form[id*="cfc8f7d"] input[type="file"],
.wpcf7-form[id*="wpcf7-f13954"] input[type="file"],
form[id*="cfc8f7d"] input[type="file"],
form[id*="wpcf7-f13954"] input[type="file"],
form[action*="cfc8f7d"] input[type="file"],
form[action*="wpcf7-f13954"] input[type="file"] {
    padding: 8px 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    border: none !important;
}

.wpcf7[id*="cfc8f7d"] input[type="submit"],
.wpcf7[id*="cfc8f7d"] button[type="submit"],
.wpcf7[id*="wpcf7-f13954"] input[type="submit"],
.wpcf7[id*="wpcf7-f13954"] button[type="submit"],
.wpcf7[data-wpcf7-id="13954"] input[type="submit"],
.wpcf7[data-wpcf7-id="13954"] button[type="submit"],
.wpcf7-form[id*="cfc8f7d"] input[type="submit"],
.wpcf7-form[id*="cfc8f7d"] button[type="submit"],
.wpcf7-form[id*="wpcf7-f13954"] input[type="submit"],
.wpcf7-form[id*="wpcf7-f13954"] button[type="submit"],
form[id*="cfc8f7d"] input[type="submit"],
form[id*="cfc8f7d"] button[type="submit"],
form[id*="wpcf7-f13954"] input[type="submit"],
form[id*="wpcf7-f13954"] button[type="submit"],
form[action*="cfc8f7d"] input[type="submit"],
form[action*="cfc8f7d"] button[type="submit"],
form[action*="wpcf7-f13954"] input[type="submit"],
form[action*="wpcf7-f13954"] button[type="submit"] {
    display: inline-block;
    background: #111111;
    color: #ffffff;
    border: none;
    border-radius: 10px;
    padding: 14px 28px;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform 0.1s ease, box-shadow 0.2s ease;
    margin-top: 8px;
}

.wpcf7[id*="cfc8f7d"] input[type="submit"]:hover,
.wpcf7[id*="cfc8f7d"] button[type="submit"]:hover,
.wpcf7[id*="wpcf7-f13954"] input[type="submit"]:hover,
.wpcf7[id*="wpcf7-f13954"] button[type="submit"]:hover,
.wpcf7[data-wpcf7-id="13954"] input[type="submit"]:hover,
.wpcf7[data-wpcf7-id="13954"] button[type="submit"]:hover,
.wpcf7-form[id*="cfc8f7d"] input[type="submit"]:hover,
.wpcf7-form[id*="cfc8f7d"] button[type="submit"]:hover,
.wpcf7-form[id*="wpcf7-f13954"] input[type="submit"]:hover,
.wpcf7-form[id*="wpcf7-f13954"] button[type="submit"]:hover,
form[id*="cfc8f7d"] input[type="submit"]:hover,
form[id*="cfc8f7d"] button[type="submit"]:hover,
form[id*="wpcf7-f13954"] input[type="submit"]:hover,
form[id*="wpcf7-f13954"] button[type="submit"]:hover,
form[action*="cfc8f7d"] input[type="submit"]:hover,
form[action*="cfc8f7d"] button[type="submit"]:hover,
form[action*="wpcf7-f13954"] input[type="submit"]:hover,
form[action*="wpcf7-f13954"] button[type="submit"]:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08);
}

.wpcf7[id*="cfc8f7d"] input[type="submit"]:active,
.wpcf7[id*="cfc8f7d"] button[type="submit"]:active,
.wpcf7[id*="wpcf7-f13954"] input[type="submit"]:active,
.wpcf7[id*="wpcf7-f13954"] button[type="submit"]:active,
.wpcf7[data-wpcf7-id="13954"] input[type="submit"]:active,
.wpcf7[data-wpcf7-id="13954"] button[type="submit"]:active,
.wpcf7-form[id*="cfc8f7d"] input[type="submit"]:active,
.wpcf7-form[id*="cfc8f7d"] button[type="submit"]:active,
.wpcf7-form[id*="wpcf7-f13954"] input[type="submit"]:active,
.wpcf7-form[id*="wpcf7-f13954"] button[type="submit"]:active,
form[id*="cfc8f7d"] input[type="submit"]:active,
form[id*="cfc8f7d"] button[type="submit"]:active,
form[id*="wpcf7-f13954"] input[type="submit"]:active,
form[id*="wpcf7-f13954"] button[type="submit"]:active,
form[action*="cfc8f7d"] input[type="submit"]:active,
form[action*="cfc8f7d"] button[type="submit"]:active,
form[action*="wpcf7-f13954"] input[type="submit"]:active,
form[action*="wpcf7-f13954"] button[type="submit"]:active {
    transform: translateY(0);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06);
}

/* Titre & labels */
.wpcf7[id*="cfc8f7d"] h2,
.wpcf7[id*="cfc8f7d"] h3,
.wpcf7[id*="cfc8f7d"] h4,
.wpcf7[id*="wpcf7-f13954"] h2,
.wpcf7[id*="wpcf7-f13954"] h3,
.wpcf7[id*="wpcf7-f13954"] h4,
.wpcf7[data-wpcf7-id="13954"] h2,
.wpcf7[data-wpcf7-id="13954"] h3,
.wpcf7[data-wpcf7-id="13954"] h4,
.wpcf7-form[id*="cfc8f7d"] h2,
.wpcf7-form[id*="cfc8f7d"] h3,
.wpcf7-form[id*="cfc8f7d"] h4,
.wpcf7-form[id*="wpcf7-f13954"] h2,
.wpcf7-form[id*="wpcf7-f13954"] h3,
.wpcf7-form[id*="wpcf7-f13954"] h4,
form[id*="cfc8f7d"] h2,
form[id*="cfc8f7d"] h3,
form[id*="cfc8f7d"] h4,
form[id*="wpcf7-f13954"] h2,
form[id*="wpcf7-f13954"] h3,
form[id*="wpcf7-f13954"] h4,
form[action*="cfc8f7d"] h2,
form[action*="cfc8f7d"] h3,
form[action*="cfc8f7d"] h4,
form[action*="wpcf7-f13954"] h2,
form[action*="wpcf7-f13954"] h3,
form[action*="wpcf7-f13954"] h4 {
    font-family: 'Switzer', sans-serif !important;
    font-size: 28px;
    line-height: 34px;
    font-weight: 500;
    margin: 0 0 12px 0;
    color: #000000;
}

.wpcf7[id*="cfc8f7d"] label,
.wpcf7[id*="wpcf7-f13954"] label,
.wpcf7[data-wpcf7-id="13954"] label,
.wpcf7-form[id*="cfc8f7d"] label,
.wpcf7-form[id*="wpcf7-f13954"] label,
form[id*="cfc8f7d"] label,
form[id*="wpcf7-f13954"] label,
form[action*="cfc8f7d"] label,
form[action*="wpcf7-f13954"] label {
    display: block;
    font-size: 15px;
    line-height: 20px;
    color: #111111;
    margin: 0 0 6px 0;
}

/* Empile proprement sur mobile */
@media (max-width: 768px) {

    .wpcf7[id*="cfc8f7d"] .wpcf7-form,
    .wpcf7[id*="wpcf7-f13954"] .wpcf7-form,
    .wpcf7[data-wpcf7-id="13954"] .wpcf7-form,
    .wpcf7-form[id*="cfc8f7d"],
    .wpcf7-form[id*="wpcf7-f13954"],
    form[id*="cfc8f7d"],
    form[id*="wpcf7-f13954"],
    form[action*="cfc8f7d"],
    form[action*="wpcf7-f13954"] {
        padding: 0 16px 32px;
    }

    .wpcf7[id*="cfc8f7d"] input[type="submit"],
    .wpcf7[id*="cfc8f7d"] button[type="submit"],
    .wpcf7[id*="wpcf7-f13954"] input[type="submit"],
    .wpcf7[id*="wpcf7-f13954"] button[type="submit"],
    .wpcf7[data-wpcf7-id="13954"] input[type="submit"],
    .wpcf7[data-wpcf7-id="13954"] button[type="submit"],
    .wpcf7-form[id*="cfc8f7d"] input[type="submit"],
    .wpcf7-form[id*="cfc8f7d"] button[type="submit"],
    .wpcf7-form[id*="wpcf7-f13954"] input[type="submit"],
    .wpcf7-form[id*="wpcf7-f13954"] button[type="submit"],
    form[id*="cfc8f7d"] input[type="submit"],
    form[id*="cfc8f7d"] button[type="submit"],
    form[id*="wpcf7-f13954"] input[type="submit"],
    form[id*="wpcf7-f13954"] button[type="submit"],
    form[action*="cfc8f7d"] input[type="submit"],
    form[action*="cfc8f7d"] button[type="submit"],
    form[action*="wpcf7-f13954"] input[type="submit"],
    form[action*="wpcf7-f13954"] button[type="submit"] {
        width: 100%;
        text-align: center;
    }
}

/* fallback — si :has() pas supporté, masquer au moins le lien (réduit l'affichage) */
html:lang(en-GB) .gs-team-filter-cats a[data-filter*="-fr"] {
    display: none !important;
}

/* Sous menu en gris */
/* Texte en gris foncé pour le contraste */
.nav li ul a {
    color: #54595F !important;
    font-family: 'Switzer', sans-serif !important;
    font-size: 16px !important;
    line-height: 24px !important;
    font-weight: 400 !important;
}



.separateur-contact,
.separateur-contact>a {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.petite-langue,
.petite-langue>a {
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

/* Séparateur vertical entre le menu et le sélecteur de langue */
.petite-langue {
    display: inline-flex;
    align-items: center;
    position: relative;

}

.petite-langue::before {
    content: "|";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-62%);
    width: 1px;
    height: 24px;
    background-color: #2f3237;
    opacity: 0.9;
}



/* Fallback si la classe n'est pas posée : cible directement le switcher Polylang (EN/FR) */
.nav li.pll-parent-menu-item>a[href*="pll_switcher"],
.nav li.pll-parent-menu-item>a[href*="pll-switcher"],
.nav li[class*="pll-"]>a[href*="pll_switcher"],
.nav li[class*="pll-"]>a[href*="pll-switcher"],
.nav li.lang-item>a,
.nav li[class^="lang-item"]>a,
.nav li[class*=" lang-item"]>a {
    position: relative;
    display: inline-flex !important;
    align-items: center;
    padding-left: 14px !important;
    margin-left: 14px !important;
    font-size: 12px !important;
}

.nav li.pll-parent-menu-item>a[href*="pll_switcher"]::before,
.nav li.pll-parent-menu-item>a[href*="pll-switcher"]::before,
.nav li[class*="pll-"]>a[href*="pll_switcher"]::before,
.nav li[class*="pll-"]>a[href*="pll-switcher"]::before,
.nav li.lang-item>a::before,
.nav li[class^="lang-item"]>a::before,
.nav li[class*=" lang-item"]>a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-120%);
    width: 1px;
    height: 24px;
    background-color: #2f3237;
    opacity: 0.9;
}

/* --- MENU MOBILE ACCORDÉON --- */
body .et_mobile_menu .menu-item-has-children>ul {
    display: none !important;
    visibility: hidden !important;
    max-height: 0 !important;
    overflow: hidden !important;
}

body .et_mobile_menu .menu-item-has-children.visible>ul {
    display: block !important;
    visibility: visible !important;
    max-height: 9999px !important;
    overflow: visible !important;
}

body .et_mobile_menu .menu-item-has-children>a {
    position: relative !important;
}

.et_mobile_menu .menu-item-has-children>a:after {
    content: '\33';
    font-family: 'ETmodules';
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
    display: inline-block;
}

.et_mobile_menu .menu-item-has-children.visible>a:after {
    transform: translateY(-50%) rotate(180deg);
}

/* --- HERO RESPONSIVE --- */
.hero-image {
    background-size: cover !important;
    background-position: center center !important;
    min-height: 400px !important;
}

@media (max-width: 767px) {
    .hero-image {
        min-height: 250px !important;
    }
}