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


    .boxed_body_wrapper {
        width: 95%;
    }

    .boxed_body_wrapper #frontpage_slider .rev_slider_wrapper,
    .boxed_body_wrapper #aeron_header,
    .boxed_body_wrapper #ABdev_sticky_header {
        width: 100% !important;
    }

    .dnd_container [class*="column_dd_span"],
    .tcvpb_container [class*="column_tc_span"] {
        width: 100%;
        margin-left: 20px;
        margin-bottom: 40px;
    }

    .dnd-callout_box [class*="column_dd_span"],
    .tcvpb-callout_box [class*="column_tc_span"] {
        margin-bottom: 0;
    }

    header#aeron_header {
        position: static !important;
        height: auto;
        margin-top: 0 !important;
    }

    /*	header#aeron_header.ABdev_on_sticky_header {
		position: static!important;
	}*/
    #main_menu {
        background: #004F60;
        max-height: 80vh;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    header#aeron_header .container {
        position: relative;
    }

    header#aeron_header .logo img {
        position: static;
    }

    #ABdev_sticky_header {
        margin-top: 0 !important;
        position: static;
    }

    #header-image {
        margin-top: -10px;
    }

    header.ABdev_on_sticky_header {
        position: static;
    }

    .title_bar {
        height: auto;
        padding-top: 0px;
    }

    .title_bar .breadcrumbs {
        text-align: left;
    }

    #ABdev_menu_toggle {
        display: block;
        width: 32px;
        height: 32px;
        color: #fff;
        position: absolute;
        right: 0;
        top: 40px;
        font-size: 24px;
        z-index: 2000;
    }

    nav {
        position: relative;
        float: none !important;
    }

    nav > ul {
        display: none;
        line-height: 30px;
        margin: 30px 0;
        padding-left: 5em;
    }

    nav > ul > li {
        display: block;
        width: 100%;
    }

    nav > ul > li > a {
        display: block;
        width: 100%;
        text-align: left;
    }

    nav > ul > li > a > i {
        display: none;
    }

    nav > ul ul {
        position: static;
        display: block;
        background: none;
        border: none;
        padding: 0px;
        margin: 0 !important;
        width: 100%;
        z-index: auto;
        margin-left: 20px;
    }

    nav > ul > li > ul:before {
        display: none;
    }

    nav > ul li:hover > ul,
    nav > ul li.sfHover > ul {
        display: block;
        z-index: auto;
        position: static;
    }

    nav > ul ul li {
        position: static;
    }

    nav > ul ul li.has_children:hover:after {
        display: none;
    }

    nav > ul ul li {
        padding: 0px;
    }

    nav > ul ul li.current-menu-item a {
        color: #fff !important;
    }

    nav > ul ul li a,
    nav > ul ul li a,
    nav > ul ul li:hover a {
        text-transform: none;
        color: #c0ccd7 !important;
        width: 100%;
        text-align: left;
    }

    nav > ul ul li:hover {
        background: none !important;
    }

    nav > ul ul li:hover > a {
        color: #ffffff !important;
    }

    nav > ul ul ul {
        position: static;
        margin-top: 0;
        z-index: auto;
        margin-left: 20px;
    }

    nav > ul ul ul:before {
        display: none;
    }


    .leading_line {
        text-align: center;
    }



    .about_box p {
        text-align: center;
    }

    #magic-line {
        display: none;
    }

    .sf-arrows .sf-with-ul:after {
        display: none;
    }

    nav > ul > .current-menu-item > a,
    nav > ul > .current-menu-ancestor > a {
        color: #fff;
    }

    #frontpage_slider {
        max-height: none;
    }

    #contact_map,
    #contact_streetview {
        height: 300px;
    }

    #ABdev_sticky_header {
        height: auto;
    }


    .timeline_post,
    .timeline_post_first {
        width: 100%;
    }

    #timeline_posts {
        background: none;
    }

    #ABp_latest_portfolio {
        left: 0 !important;
        width: 100% !important;
        height: auto !important;
        position: relative !important;
    }

    #ABp_latest_portfolio li {
        width: 100%;
        margin: 0;
        display: inline-block !important;
        margin-bottom: 240px;
    }

    .timeline_post_left:after,
    .timeline_post_right:after {
        display: none;
    }

    footer #footer_copyright {
        text-align: center;
    }

    footer #footer_copyright .span5,
    footer #footer_copyright .span6,
    footer #footer_copyright .span2 {
        padding: 20px 0;
        margin: 0;
    }


    footer #footer_copyright .footer_logo img {
        position: static;
    }

    footer #footer_copyright .footer_social_links {
        text-align: center;
    }

    footer #footer_copyright .footer_social_links a:first-child {
        margin-left: 0px;
    }

    footer #footer_copyright .footer_social_links span {
        display: block;
        margin-bottom: 20px;
    }

    .portfolio_item_4,
    .portfolio_item_3,
    .portfolio_item_2 {
        width: 100% !important;
    }

    .dnd-callout_box .dnd-button,
    .tcvpb-callout_box .tcvpb-button {
        margin-right: 0px;
        margin-bottom: 0;
    }

    .dnd-callout_box .span9,
    .dnd-callout_box .span3,
    .tcvpb-callout_box .span9,
    .tcvpb-callout_box .span3 {
        width: 100%;
        text-align: center;
    }

    .dnd-callout_box .span3,
    .tcvpb-callout_box .span3 {
        padding-top: 30px;
    }

    .dnd-callout_box_title,
    .tcvpb-callout_box_title {
        line-height: 32px;
    }

    .dnd-callout_box p,
    .tcvpb-callout_box p {
        margin-bottom: 20px;
    }

    .dnd-callout_box.dnd-callout_box_style_3,
    .tcvpb-callout_box.tcvpb-callout_box_style_3 {
        padding: 35px 10px;
    }

    .dnd-callout_box.dnd-callout_box_style_2,
    .tcvpb-callout_box.tcvpb-callout_box_style_2 {
        padding-bottom: 0;
    }

    .dnd-tabs .ui-tabs-nav li,
    .dnd-tabs.dnd-tabs-style1 .ui-tabs-nav,
    .dnd-tabs.dnd-tabs-style2 .ui-tabs-nav,
    .tcvpb-tabs .ui-tabs-nav li,
    .tcvpb-tabs.tcvpb-tabs-style1 .ui-tabs-nav,
    .tcvpb-tabs.tcvpb-tabs-style2 .ui-tabs-nav {
        width: 100%;
        position: relative;
        text-align: center;
        padding: 0;
    }

    .dnd-tabs.dnd-tabs-style2 .ui-tabs-nav,
    .tcvpb-tabs.tcvpb-tabs-style2 .ui-tabs-nav {
        border-right: 0;
    }

    .dnd-tabs.dnd-tabs-style1 .ui-tabs-nav,
    .dnd-tabs.dnd-tabs-style2 .ui-tabs-nav,
    .tcvpb-tabs.tcvpb-tabs-style1 .ui-tabs-nav,
    .tcvpb-tabs.tcvpb-tabs-style2 .ui-tabs-nav {
        padding-bottom: 0;
    }

    .dnd-tabs.dnd-tabs-style1 .ui-tabs-panel,
    .dnd-tabs.dnd-tabs-style2 .ui-tabs-panel,
    .tcvpb-tabs.tcvpb-tabs-style1 .ui-tabs-panel,
    .tcvpb-tabs.tcvpb-tabs-style2 .ui-tabs-panel {
        margin-left: 0;
    }

    .dnd-tabs.dnd-tabs-style2 .ui-tabs-panel,
    .tcvpb-tabs.tcvpb-tabs-style2 .ui-tabs-panel {
        padding-top: 20px;
    }

    .dnd-tabs.dnd-tabs-style1 .ui-tabs-nav li.ui-tabs-active:after,
    .tcvpb-tabs.tcvpb-tabs-style1 .ui-tabs-nav li.ui-tabs-active:after {
        bottom: 5px;
    }

    .dnd-accordion .ui-accordion-header,
    .tcvpb-accordion .ui-accordion-header {
        text-align: left !important;
    }

    .dnd_service_box.dnd_service_box_square_aside_right,
    .tcvpb_service_box.tcvpb_service_box_square_aside_right {
        text-align: left;
        padding-left: 126px;
        position: relative;
    }

    .dnd_service_box.dnd_service_box_square_aside_right .dnd_service_box_header h3,
    .tcvpb_service_box.tcvpb_service_box_square_aside_right .tcvpb_service_box_header h3 {
        text-align: left;
        margin-bottom: 33px;
    }

    .dnd_service_box.dnd_service_box_square_aside_right .dnd_icon_boxed,
    .tcvpb_service_box.tcvpb_service_box_square_aside_right .tcvpb_icon_boxed {
        position: absolute;
        left: 0;
        top: 0;
        text-align: center;
    }

    .dnd-animo,
    .tcvpb-animo {
        text-align: center;
    }

    .dnd-teaser,
    .tcvpb-teaser {
        padding-bottom: 0;
    }

    .dnd-teaser .container,
    .tcvpb-teaser .container {
        padding: 0 !important;
    }

    .dnd-teaser i,
    .tcvpb-teaser i {
        display: none;
    }

    .dnd-teaser img,
    .tcvpb-teaser img {
        display: none;
    }

    .sidebar_left .widget_nav_menu ul li {
        text-align: left;
    }

    .right_aligned {
        text-align: left;
    }

    .home2_services {
        text-align: center;
    }

    .home2_services span.clear {
        height: 0px !important;
    }

    .dnd_stats_excerpt,
    .tcvpb_stats_excerpt {
        text-align: center;
    }

    .dnd-callout_box_4,
    .tcvpb-callout_box_4 {
        padding: 29px 45px 45px 45px;
    }

    #page404 .big_404 {
        font-size: 100px;
        line-height: 200px;
    }

    #knob_countdown {
        margin-left: -65px !important;
        top: 250px;
    }

    #knob_countdown > div {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
    }

    #knob_countdown > div > div {
        width: 100px !important;
        height: 100px !important;
    }

    #knob_countdown > div > div > canvas {
        width: 100px !important;
        height: 100px !important;
    }

    #cs_countdown .cs_text {
        top: 40px;
    }

    #knob_countdown input {
        font-size: 30px;
        line-height: 30px;
        margin-top: 10px !important;
        margin-left: -92px !important;
    }

    #knob_countdown div span {
        position: absolute;
        width: 100px;
        bottom: 30px;
        left: 0;
        font-size: 18px;
    }

    .content_with_right_sidebar {
        padding-right: 0;
    }

    .content_with_left_sidebar {
        padding-left: 0;
    }

    .post_content .post_badges {
        display: none;
    }

    .post_content .post_main {
        padding-left: 0;
    }

    #under_maintenance .margin-right: {
        margin-right: 0 !important;
    }

    #under_maintenance .alignleft {
        float: none !important;
        margin-right: 0 !important;
    }

    #bbpress-forums li.bbp-body ul.forum,
    #bbpress-forums li.bbp-body ul.topic {
        padding: 31px 0px 13px 0px;
    }

    .forum-titles,
    .bbp-header {
        display: none;
    }

    .title_bar {
        padding-bottom: 20px;
    }

    .title_bar .container {
        padding-top: 20px;
    }

    header .row > [class*="span"],
    footer .row > [class*="span"],
    .title_bar .row > [class*="span"] {
        margin-bottom: 0px;
    }

    .title_bar .row > [class*="span"] {
        display: block;
        width: 100%;
        text-align: center;
    }

    .title_bar h1 {
        margin-bottom: 20px;
    }

    #under_maintenance {
        text-align: center;
    }

    #under_maintenance i {
        font-size: 150px;
    }

    #filters li {
        display: block;
    }

    .post_main .postmeta-under i {
        margin-left: 10px;
    }

    .spacer_responsive_hide_mobile {
        display: none !important;
    }

}

@media only screen and (min-width: 1189px) and (max-width: 1224px) {
    nav > ul {
        right: 0px;
    }

    #top-section {
        width: 100vw;
        height: 500px;

    }

}

@media only screen and (min-width: 979px) and (max-width: 1015px) {
    nav > ul {
        right: 0px;
    }

    #top-section {
        width: 100vw;
        height: 500px;

    }

}

@media only screen and (min-width: 767px) and (max-width: 803px) {
    nav > ul {
        right: 0px;
    }

    #top-section {
        width: 100vw;
        height: 500px;

    }

}

/****************************/
/* Below 600px */
/****************************/
/* Point de rupture pour smartphones (600px) */
@media only screen and (max-width: 600px) {

    .container,
    .tcvpb_section_content {
        width: auto;
        margin: 0 20px;
    }

    .home #hd {
        padding: 0px;
        position: relative !important;
    }

    #hd > div > div {
        background: transparent !important;
    }

    /*  main menu */
    #main_menu {
        background: #004F60;
        z-index: 1000;
    }

    #nav-menu-item-6946,
    #nav-menu-item-6947,
    #nav-menu-item-6948 {
        display: inline-block;
        vertical-align: middle;
        margin-right: 10px;
        /* espace entre les icônes */
        width: auto;
    }

    /* Le conteneur UL doit permettre l'affichage en ligne */
    #main_menu {
        text-align: center;
        /* ou left selon l’effet souhaité */
    }

    #main_menu > li {
        /* Les autres éléments restent en bloc sauf les 3 ciblés ci-dessus */
        display: block;
    }

    .tcvpb_container {
        flex-direction: column !important;
        display: flex !important;
        align-items: center !important;
        position: relative;
        z-index: 0;
        width: auto;
    }

    body:not(.home) .ci_icon-menu2 {
        color: #004F59 !important;
    }

    body:not(.home) .menu-item-depth-0 > a > span {
        color: #ffffff;
    }

    /* logos */
    header#aeron_header.ABdev_on_sticky_header .logo img,
    header#aeron_header.with_topbar:not(.ABdev_on_sticky_header) .logo img {
        width: 208px !important;
        padding: 5px 10px !important;
    }

    div.span2.logo {
        min-height: 65px;
        width: 100% !important
    }

    /* image en-tete */
    .fullscreen {
        width: 100% !important;
        min-height: 65px;
    }

    .tcvpb-callout_box p {
        width: auto;
    }

    /* === CONTENEUR FLEX PRINCIPAL === */
    * {
        outline: none;
        border: none;
        box-shadow: none;
    }

    img,
    video,
    canvas {
        z-index: 0 !important;
    }


    #header-image-inner {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        height: 100vh;
        position: relative;
        width: 100%;
        z-index: 0 !important;
    }

    #top-section {
        width: 100vw;
        height: 500px;

    }

    #top-section.tcvpb_section_tc {
        min-height: 0px !important;
    }

    /* === CONTENU TEXTE + BOUTON === */
    #texte-header {
        top: -20px;
        left: 50%;
        transform: translateX(-50%);
        width: 90%;
        text-align: center;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 15px;
        max-width: 90%;
        z-index: 10 !important;
        position: absolute !important;
    }

    /* === PARAGRAPHE SOUS-TITRE === */
    #texte-header .p_tc {
        max-width: 330px;
        margin: 0 auto;
        font-size: 1rem;
        text-align: center !important;
    }

    #texte-header .p_tc span {
        font-size: 24pt !important;
        /* Réduire la taille de police */
        line-height: 1.5 !important;
        /* Ajuster l'espacement des lignes */
        display: inline-block;
        /* Assurer que les sauts de ligne fonctionnent correctement */
    }

    /* === BOUTON === */
    .button-about {
        left: 50%;
        transform: translateX(-50%);
        z-index: 3 !important;
        transition: all 0.3s ease;
        top: 360px;
        position: absolute;
    }

    /* Assure la zone de clic complète */
    .button-about::before {
        content: '';
        position: absolute;
        top: -10px;
        left: -10px;
        right: -10px;
        bottom: -10px;
        z-index: 5;
    }

    /* Section what-we-do */
    #what-we-do {
        position: relative !important;
        z-index: 0 !important;
        background: transparent !important;
        margin-top: 0px !important;
        padding: 0px !important;
    }


    #what-we-do h3 {
        text-align: center;
        margin-top: 0px !important;
    }



    /* parametres des 3 blocs why eumetnet */
    /* Configuration des colonnes pour qu'elles passent en dessous les unes des autres */

    .tcvpb_column_tc_span4.bgblocwhite {
        width: 280px !important;
        margin: 25px auto !important;
        /* Ajoute de l'espace entre les blocs */
        padding: 20px 15px !important;
        /* Padding augmenté pour plus d'espace intérieur */
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        height: 175px;
        background: rgba(255, 255, 255, 0.1) !important
    }

    /* Centrage et dimensionnement des icônes */
    .tcvpb-image.blocimghead {
        display: flex;
        justify-content: center !important;
        width: 100% !important;
    }

    .tcvpb-image.blocimghead img {
        width: 80px !important;
        height: auto;
        display: block !important;
    }

    .tcvpb-callout_box p {
        line-height: 0px !important;
    }

    /* Ajustement des titres */
    h3.textblochead {
        width: 100% !important;
        text-align: center !important;
        font-size: 32px !important;
        line-height: 40px !important;
        font-weight: 400 !important;
        margin: 0 !important;
        /* Supprime toutes les marges par défaut */
        padding: 0 !important;
        /* Supprime tout padding par défaut */
    }

    /* Ajustement des paragraphes dans les titres */
    h3.textblochead .p_tc {
        text-align: center !important;
        margin: 0 auto !important;
        padding: 0 !important;
    }

    /* ourAreas min 360 */
    #ourareas {
        height: 1530px;
        background-color: #00282D;
        z-index: 3;
        padding: 0 10px;
    }

    #ourareas h3 {
        padding: 0 !important;
    }

    #ourareas header .tcvpb_container h3 {
        text-align: center !important;
        width: 100% !important;
    }

    /* Transformer le conteneur flex pour empiler les boîtes */
    #ourareas .tcvpb_container {
        display: block !important;
    }

    /* Adaptation des boîtes */
    #ourareas .tcvpb_column_tc_span3.ourbox,
    #ourareas .tcvpb_column_tc_span2.ourbox {
        width: 280px !important;
        margin: 0 auto 20px !important;
        float: none !important;
        padding: 20px !important;
        /* Padding uniforme */
        box-sizing: border-box !important;

        /* Organisation de l'intérieur des boîtes */
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    /* Centrage des images "our" */
    #ourareas .tcvpb-image.our {
        display: flex !important;
        justify-content: center !important;
        margin-bottom: 15px !important;
    }

    /* Correction pour maintenir les images en cercles parfaits */
    #ourareas .tcvpb-image.our img {
        width: 60px !important;
        height: 60px !important;
        /* Même valeur que la largeur pour un cercle parfait */
        object-fit: contain !important;
        /* Préserve les proportions de l'image */
        /* Si les images sont déjà dans des balises de forme ronde, ajoutez : */
        border-radius: 50% !important;
        /* Pour s'assurer que c'est un cercle */
    }

    #ourareas .tcvpb-image.our img {
        /* Si vous voulez spécifier une taille d'image */
        width: auto !important;
        /* Ajustez selon vos besoins */
        height: auto !important;
    }

    /* Centrage des h4 et leur contenu */
    #ourareas h4,
    #ourareas h4.ourtexte {
        width: 100% !important;
        text-align: center !important;
        margin: 0 0 15px 0 !important;
    }

    #ourareas h4 span,
    #ourareas h4 .p_tc {
        text-align: center !important;
        width: 100% !important;
        display: block !important;
    }

    .our {
        margin-left: 80px;
    }

    /* ===== SECTION FOCUS - STYLES MOBILE/RESPONSIVE ===== */

    #focus {
        position: inherit;
        display: flex;
        flex-direction: column;
        padding: 0 !important;
    }

    #focus .tcvpb_container {
        display: flex;
        flex-direction: column;
        padding: 0 15px;
    }

    /* Inversion de l’ordre des colonnes */
    #focus .tcvpb_container > .tcvpb_column_tc_span6:first-child {
        order: 1;
        /* Texte (h3, h4, bouton, texte) */
    }

    #focus .tcvpb_container > .tcvpb_column_tc_span6:last-child {
        order: 2;
        /* Image */
    }

    /* Colonne prend toute la largeur */
    #focus .tcvpb_column_tc_span6 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto 20px auto;
        float: none !important;
        display: block;
    }

    /* Centrage des textes */
    #focus h3,
    #focus h4,
    #focus .p_tc {
        text-align: center !important;
    }

    #focus h3 {
        width: auto;
        font-size: 28px;
        margin-bottom: 10px;
    }

    #focus h4 {
        font-size: 22px;
        margin: 10px 0;
    }

    /* Bouton centré */
    #button-focus {
        text-align: center;
        margin: 15px 0;
    }

    /* Image responsive */

    .desktop-only {
        display: none !important;
    }

    .mobile-only {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 15px auto !important;
        padding: 0 !important;
        box-sizing: border-box;
    }


    /* Texte final */
    #focus .focustext {
        padding: 0 10px;
    }

    /* section latest news */
    #latestnews {
        height: auto !important;
    }

    #latestnews .tcvpb_container {
        display: flex;
        flex-direction: column;
        padding: 0 15px;
    }

    #latestnews .colnewssection {
        width: 100% !important;
        max-width: 100%;
        float: none !important;
        margin-bottom: 30px;
    }

    #latestnews h3.titlesection {
        text-align: center;
        font-size: 28px;
        margin-bottom: 10px;
    }

    #latestnews .link-viewal {
        text-align: center;
        margin-bottom: 20px;
    }

    #latestnews .tcvpb_posts_shortcode {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    #latestnews .tcvpb_latest_news_shortcode_thumb img {
        width: 100%;
        height: auto;
        display: block;
        margin-bottom: 10px;
    }

    #latestnews .tcvpb_latest_news_shortcode_content {
        text-align: center;
        width: 100%;
    }

    #latestnews .tcvpb_latest_news_shortcode_content .category,
    #latestnews .tcvpb_latest_news_shortcode_content .tcvpb_latest_news_time {
        display: inline-block;
        margin: 0 5px;
        font-size: 14px;
        color: #333;
    }

    #latestnews .tcvpb_latest_news_shortcode_content h5 {
        font-size: 18px;
        margin: 10px 0;
    }

    #latestnews .tcvpb_read_more_button {
        display: inline-block;
        color: #0073aa;
        padding-top: 08px;
    }

    /* position bloc view all */
    #news1 {
        padding-top: 30px !important;
    }

    #colnew3 .link-viewal {
        display: none;
    }

    .mobile-viewall {
        display: flex !important;
        justify-content: center;
        margin: 20px 0;
    }

    .mobile-viewall p {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 42px;
        height: 42px;
        background-color: #8C9DB8;
        text-decoration: none;
        transition: background 0.3s, color 0.3s;
    }

    .mobile-viewal {
        position: static !important;
        /* Supprime les décalages hérités */
        text-align: center;

    }

    .mobile-view-all::after {
        content: '\2192';
        font-size: 20px;
        color: white;
    }

    .mobile-viewall p:hover {
        background-color: white;
    }

    .mobile-viewall p:hover::after {
        color: #8C9DB8;
    }

    #latestnews .mobile-viewal p {
        margin: 0;
        font-weight: bold;
        color: #0073aa;
    }

    .tcvpb_read_more_button {
        position: initial;
        right: 120px;
    }


    #colnew2 {
        position: relative;
        margin: 0 auto !important;
    }

    #colnew3 {
        position: relative;
        margin: 0px !important;
    }

    #latestnews .tcvpb_container {
        display: flex;
        flex-direction: column;
        gap: 25px;
        padding: 0 15px;
    }

    /*hauteur des colonnes*/
    #news1,
    #news2,
    #news3 {
        height: auto;
        border: none;
    }

    /* Toutes les colonnes en pleine largeur */
    #latestnews .tcvpb_column_tc_span6,
    #latestnews .tcvpb_column_tc_span3 {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        margin: 0 auto;
    }

    .colnewssection {
        padding: 0px;
    }

    /* Centrer les titres */
    #latestnews .titlesection,
    #latestnews .p_tc,
    #latestnews h5 {
        text-align: center !important;
    }

    #latestnews h3 {
        padding: 0px !important;
        margin: 0px !important;
    }

    /* Images responsives */
    #latestnews img {
        width: 100%;
        height: auto;
        display: block;
        margin: 20px auto 0;
    }

    /* Bouton "View all" centré */
    #latestnews .link-viewal {
        text-align: center;
        padding: 10px 0;
    }

    /* Réduction des marges internes si besoin */
    #latestnews .tcvpb_latest_news_shortcode_content {
        padding: 10px 0;
    }

    #latestnews #news2 {
        margin-top: auto;
    }

    #ABdev_sticky_header_content {
        z-index: 0;
    }

    footer#main_footer {
        z-index: 1;
        margin-bottom: 0 !important;
    }

    body {
        overflow-y: auto;
    }
 #latestnews .tcvpb_read_more_button {
    display: block;        /* pour prendre la largeur dispo */
    margin: 20px auto 0;   /* auto à gauche/droite = centré */
  }
    /* popup builder */
    .sgpb-popup-dialog-main-div {
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        position: fixed !important;
        max-height: 90vh;
        overflow-y: auto;
    }

    .sgpb-popup-dialog-main-div-theme-wrapper-4 {
        left: 0 !important;
        top: 0 !important;
        width: 90vw !important;
        height: 100vh !important;
        padding: 10px !important;
        box-sizing: border-box;
    }

    #sgpb-popup-dialog-main-div {
        width: 99% !important;
        max-width: 99% !important;
        max-height: 90vh !important;
        overflow-y: auto !important;
        padding: 15px !important;
        box-sizing: border-box;
    }

    .sgpb-main-html-content-wrapper {
        font-size: 16px !important;
        line-height: 1.5 !important;
    }

    /* Bouton de fermeture repositionné */
    #sgpb-close-button {
        top: 10px !important;
        right: 10px !important;
        bottom: auto !important;
        left: auto !important;
        width: 30px !important;
        height: 30px !important;
        z-index: 999999 !important;
    }

    /* soulignement titre */
    .leading_line::after,
    .leading_line_bottom::after,
    .textpopup .tcvpb_container h3::after {
        bottom: -10px !important;
        height: 4px;
    }

    /* bouton readmore bleu centres */
    .btnpopup {
        left: 25%;
        transform: translateX(-50%);
        position: relative;
    }

    /* ajustement tpl niveau 1 */
    /* correction des titres longs dans boutons bleus */
    .btn-link-interne {
        background-color: #004F59 !important;
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        height: 52px;
        text-decoration: none;
        padding: 0 5% 0 5%;
        gap: 10px;
        color: white;
    }

    .tcvpb_container [class*="column_tc_span"] {
        margin: 0;
    }

    .tcvpb_column_tc_span5 {
        margin-left: 0;
    }

    .tcvpb_section_content > .tcvpb_container > .tcvpb_column_tc_span6.tcvpb-centered {
        padding-bottom: 40px;
    }

    .btn-link-interne .btn-text {
        flex: 1;
        display: flex;
        align-items: center;
        /* centre verticalement */
        justify-content: center;
        /* centre horizontalement */
        text-align: center;
        line-height: 1.2;

        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: normal;
    }

    .btn-link-interne i {
        flex-shrink: 0;
        font-size: 20px;
        color: white;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* ----------------------------------------
   Styles généraux pour le footer
---------------------------------------- */

    footer .widget {
        text-align: center;
    }

    footer #footer_columns {
        width: 90%;
    }

    /* ----------------------------------------
   Blocs spécifiques
---------------------------------------- */

    .footer-widget-orga,
    .span3 .widget.contact-info,
    #footer-bottom {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        width: 100%;
        margin-top: 2.5em;
    }

    /* Titre centré */
    .footer-widget-orga h5 {
        text-align: center;
        width: auto;
    }

    /* Partenaires sur deux colonnes */
    .partners-container {
        display: flex;
        flex-direction: row;
        gap: 20px;
        justify-content: center;
        width: 100%;
    }

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

    /* Bloc Contacts centré */
    .contact-info {
        align-items: center;
        text-align: center !important;
    }

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

    /* Footer bottom */
    #footer-bottom {
        padding: 1.5em 0 !important;
    }

    #footer_columns.container {
        margin: 0 !important;
    }

    #footer-bottom.container {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;

    }

    /* Copyright centré */
    #footer-bottom #custom_html-2 {
        margin-right: 0;
        margin-bottom: 1em;
        align-self: center !important;
        text-align: center !important;
        width: 100%;
    }

    /* Informations légales centrées */
    #footer-bottom #nav_menu-3 {
        margin-left: 0;
        align-self: center !important;
        text-align: center !important;
        width: 100%;
    }

    /* Centrer les éléments du menu */
    #footer-bottom #menu-what-else {
        display: flex;
        justify-content: center;
    }

    /* Supprimer marges verticales superflues */
    #footer-bottom .widget {
        margin-bottom: 0;
    }


    footer .row {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    footer .span3,
    footer .span6 {
        width: 100% !important;
        max-width: 90%;
        margin-bottom: 1.5em;
        float: none;
        display: block;
        min-height: auto !important;
    }

    .partners-container {
        flex-wrap: wrap;
        justify-content: center;
    }

    .partners-column {
        width: auto;
        margin: 0 10px;
        align-items: flex-start;
    }
}

/****************************/
/* Below 330px */
/****************************/
/* Point de rupture pour smartphones (330px) */
@media only screen and (max-width: 330px) {
    #texte-header .p_tc {
        margin-top: -80px !important;
    }

    #what-we-do {
        background-color: black !important;
    }
}

/*********************************************/
/*affichage carte members et lien carte */
/********************************************/
/* Pour les écrans inférieurs ou égaux à 1000px */
@media screen and (max-width: 1000px) {
    #linkmembersmap {
        display: block;
        /* Afficher le lien */
    }

    #membersmap {
        display: none;
        /* Masquer la div */
    }
}

/* Pour les écrans supérieurs à 1000px */
@media screen and (min-width: 1001px) {
    #linkmembersmap {
        display: none;
        /* Masquer le lien */
    }

    #membersmap {
        display: block;
        /* Afficher la div */
    }
}

/*************************************************/
/* special bouton readmore blue 601 a 883     

@media screen and (max-width: 883px) {
    .tcvpb-button_rounded.tcvpb-button_small {
        width:50%;
    }
}*/
