/*
 Theme Name:   Corbesier Child Theme
 Theme URI:    https://corbesier.themerex.net/
 Description:  Corbesier Child Theme
 Author:       ThemeREX
 Author URI:   https://themerex.net/
 Template:     corbesier
 Version:      1.0
 Tags:         flexible-header, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, full-width-template, microformats, post-formats, theme-options, threaded-comments, translation-ready
 Text Domain:  corbesier
*/


/* =Child-Theme customization starts here
------------------------------------------------------------ */
/* NOS VALEURS - HOME */
.nos-valeurs-home .sc_icons_item_details .sc_icons_item_description {
	text-align: justify;
}
.nos-valeurs-home .sc_icons_item_details .sc_icons_item_title {
	text-align: center;
}
.nos-valeurs-home .sc_icons_divider .sc_icons_columns_wrap .sc_icons_item {
    padding: 15px 50px 15px 25px;
}
.nos-valeurs-home .sc_icons_divider .sc_icons_columns_wrap.trx_addons_columns_wrap>[class*=trx_addons_column-] {
	padding-right: 25px;
}
.wpcf7 .wpcf7-submit-style .submit-style-in {
	background-color: #000 !important;
}

.scroll_to_top_style_default:hover{
background-color:#e80000!important;
border-color:#e80000!important;	
}

.simple_text_link.underline_anim.underline_do_hover, .simple_text_link.underline_anim.underline_do_hover:hover {
    background-image: linear-gradient(#e80000, #e80000) !important;
}

/* Si votre thème utilise une bordure classique */
.simple_text_link.underline_anim.underline_do_hover:hover {
    border-color: #e80000 !important;
}

.sc_portfolio.sc_portfolio_extra .sc_portfolio_item .post_featured .post_info .post_meta .post_categories {
    background-color: #e80000;
}

.sc_slider_controls.sc_slider_controls_light .slider_controls_wrap>a.slider_next:hover, .sc_slider_controls.sc_slider_controls_light .slider_controls_wrap>a.slider_prev:hover {
	color: #e80000 !important;
}

.sc_services_timeline .extra_row .sc_services_item_timeline_point {
background-color: #e80000 !important;
}

.sc_services_timeline .extra_row .sc_services_item:hover .sc_services_item_timeline_point:before
 {
    background-color: #fff !important;
}


.page-id-18555 .post_meta_item.post_categories a {
color: #e80000  !important;align-content
}

.page-id-18555.post_meta_item.post_categories a:hover {
color: #e80000  !important;align-content
}

.sc_blogger_default.sc_blogger_default_classic .post_meta_categories .post_meta_item a:hover{
color: #e80000  !important;align-content
}


.sc_blogger .sc_blogger_item_button .item_more_link{
color: #e80000 !important;
}

[class*=scheme_].sidebar li > a:hover{
color:#e80000 !important;	
}

.widget ul > li a:first-child:hover:before {
	background-color: #e80000 !important;
}

.sc_item_subtitle {
	color: #e80000!important;
}

.post_layout_band .post_content_wrap .post_meta_item.post_categories a {
	background-color: #e80000 !important;
}

.post_header_single .post_meta.post_meta_categories a:not(.post_sponsored_label){
	background-color: #e80000 !important;
}



/* Option 1 : Utilisation de l'ID (Le plus puissant pour écraser Elementor-kit) */
#noir h1.sc_layouts_title_caption,
#noir .sc_layouts_title_caption {
    color: #ffffff !important;
}

/* Option 2 : Si vous préférez utiliser la classe (plus propre si vous réutilisez .noir ailleurs) */
.elementor-widget-trx_sc_layouts_title.noir h1.sc_layouts_title_caption {
    color: #ffffff !important;
}


/* On cible l'image précisément dans votre structure HTML */
.logo .swiper-slide-image {
    filter: grayscale(100%) !important;
    opacity: 0.6; /* Optionnel : rend l'image un peu plus claire/fondue */
    transition: all 0.3s ease; /* Pour un effet fluide au survol */
}

/* Option : On remet la couleur quand on passe la souris dessus */
.logo .swiper-slide-image:hover {
    filter: grayscale(0%) !important;
    opacity: 1;
}

.post_item_single .post_tags_single a, .post_item_single .post_tags_single a:hover {
    color: var(--theme-color-text_link);
    color: #fff;
    background: #e80000;
    border-color: #e80000;
}

.sc_item_pagination_load_more .nav-links, .nav-links-more .nav-load-more, .nav-links-more .woocommerce-load-more, .woocommerce-links-more .woocommerce-load-more, .sidebar_small_screen_above .sidebar_control, .trx_addons_popup_form_field_submit .submit_button, .simple_text_link, .show_comments_single .show_comments_button, form button:not(.components-button), input[type="button"], input[type="reset"], input[type="submit"], .theme_button, .sc_layouts_row .sc_button, .sc_portfolio_preview_show .post_readmore, .wp-block-button__link, .post_item .more-link, div.esg-filter-wrapper .esg-filterbutton>span, .mptt-navigation-tabs li a, .corbesier_tabs .corbesier_tabs_titles li a {
	text-transform: initial !important;
}

.menu_hover_color_line .sc_layouts_menu_nav > li:not(.menu-collapse) > a:after {
 background-color: #e80000!important;
}

.menu_hover_color_line .sc_layouts_menu_nav > li:not(.menu-collapse) > a:before { background-color: #e80000!important;
}


.sc_layouts_row_type_compact .sc_layouts_item_icon{
	color:#fff!important;
}


@media (min-width: 1024px) {
    .allignement-profil {
        --width: 125%!important;
        margin-left: -70px!important;
    }
}

@media (max-width: 1023px) {
    .allignement-profil {
        --width: 100%!important;
        margin-left: 0px!important;
    }
	
.sc_services_panel .sc_services_item.with_more:not(.no_links) .sc_services_item_content_inner_bottom

 {
   
    transform: translateY(30px)!important;
}
}

.team_page_wrap_info{
display:none;
}

/*css intégration éléments page unique des réalisations"
 * 
/* --- 1. STRUCTURE CÔTE À CÔTE (Grand écran > 1100px) --- */
/* --- CONFIGURATION GRAND ÉCRAN (CÔTE À CÔTE) --- */
/* 1. ON FORCE LE CÔTÉ À CÔTÉ SANS CASSER LE DESIGN */
@media (min-width: 1101px) {
    /* Le conteneur qui tient les images ET le texte */
    .portfolio_page_content_wrap {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        max-width: 1400px !important;
        margin: 0 auto !important;
        gap: 60px !important; /* L'espace au milieu */
    }

    /* La partie gauche (Images) */
    .portfolio_page_gallery, 
    .portfolio_page_content {
        width: 50% !important;
        flex: 0 0 50% !important;
    }

    /* La partie droite (Ton nouveau texte) */
    .portfolio_page_details_wrap {
        width: 45% !important;
        flex: 0 0 45% !important;
        position: sticky !important;
        top: 120px !important;
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
    }
}

/* 2. ON SUPPRIME LES ANCIENNES INFOS DU THÈME */
.portfolio_page_description, 
.sc_portfolio_details, 
.portfolio_page_details_item,
.portfolio_page_details_share,
.lerns-content-hidden {
    display: none !important;
}

/* 3. TON STYLE VISUEL (LIGNE ROUGE) */
.portfolio-label {
    font-size: 1.2rem !important;
    font-weight: 900 !important;
    color: #000 !important;
    text-transform: uppercase !important;
    border-bottom: 4px solid #ff0000 !important; /* TA LIGNE ROUGE */
    display: table !important;
    margin-bottom: 15px !important;
    padding-bottom: 5px !important;
}

.portfolio-item {
    margin-bottom: 20px !important;
}

.portfolio-value {
    font-size: 1rem !important;
    line-height: 1.6 !important;
    color: #333 !important;
}

/* SOCIALS & BOUTON */
.portfolio-socials { margin: 25px 0 !important; }
.portfolio-socials a { font-size: 22px !important; margin-right: 15px !important; color: #000 !important; }
.portfolio-socials a:hover { color: #ff0000 !important; }

.portfolio-cta {
    display: block !important;
    background: #000 !important;
    color: #fff !important;
    text-align: center !important;
    padding: 15px !important;
    font-weight: bold !important;
    text-decoration: none !important;
	width:200px;
}
.portfolio-cta:hover { background: #ff0000 !important; }

/* 4. MOBILE */
@media (max-width: 1100px) {
    .portfolio_page_content_wrap { display: block !important; }
    .portfolio_page_details_wrap { width: 100% !important; position: relative !important; top: 0 !important; }
}

.portfolio_page.portfolio_page_details_right .portfolio_page_content_wrap{
width:100%;
}



    @media (max-width: 767px) {
        .tabs_style_2.elementor-widget-tabs .elementor-tab-mobile-title.elementor-active {
            color: var(--theme-color-inverse_link);
            border-color: #e80000;
            background-color: #e80000;
        }
    }


/*pop-up*/

.pum-theme-22823, .pum-theme-theme-par-defaut {
    background-color: rgb(255 255 255 / 32%)!important;
}

.pum-theme-22823 .pum-container, .pum-theme-theme-par-defaut .pum-container{
background-color: unset!important;	
}

/*articles*/

/* Ce code va coller le bloc à droite de l'écran pour vérifier qu'il existe */
.lerns-sidebar-fixed-recovery {
    position: fixed;
    top: 200px;
    right: 20px;
    width: 300px;
    background: white;
    z-index: 9999;
    padding: 20px;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
    border-left: 5px solid red;
}

/* On cache les labels s'ils sont vides */
.lerns-sidebar-fixed-recovery:empty { display: none; }

.portfolio_page_details_right .portfolio_page_details_wrap

 {
    padding-left: 0em!important;
}

.portfolio_page_content p {
margin-bottom: 0em!important;
}

.portfolio_page .entry-content > .wp-block-heading {
font-size: 1.2rem !important;
    font-weight: 900 !important;
    color: #000 !important;
    text-transform: uppercase !important;
    border-bottom: 4px solid #ff0000 !important;
    display: table !important;
    margin-bottom: 15px !important;
    padding-bottom: 5px !important;
}

/* --- CONFIGURATION SLIDER 750PX (Desktop) --- */
@media (min-width: 1101px) {
    /* On cible tous les conteneurs imbriqués que tu as identifiés */
    .portfolio_page_gallery_content,
    .slider_outer,
    .slider_container,
    .slider_swiper,
    .swiper-slider-container,
    .slider-wrapper,
    .slider-slide,
    #swiper_7ea7782 { /* Ciblage par ID pour écraser le JS */
        height: 800px !important;
    }

    /* Optimisation de l'affichage de l'image de fond */
    .slider-slide {
        background-size: cover !important;
        background-position: center center !important; /* Centrage parfait */
        background-repeat: no-repeat !important;
    }
}

/* --- AJUSTEMENT POUR LES ÉCRANS MOYENS (Tablettes) --- */
@media (min-width: 768px) and (max-width: 1100px) {
    .portfolio_page_gallery_content,
    .slider_outer,
    .slider_container,
    .slider_slide {
        height: 500px !important;
    }
}

/* --- AJUSTEMENT MOBILE --- */
@media (max-width: 767px) {
    .portfolio_page_gallery_content,
    .slider_outer,
    .slider_container,
    .slider_slide {
        height: 350px !important;
    }
}

/* --- CORRECTIONS DE NAVIGATION --- */
/* On s'assure que les flèches suivent le mouvement */
.slider_controls_wrap {
    height: 100% !important;
    top: 0 !important;
    display: flex !important;
    align-items: center !important;
}

/* Masque les images et galeries insérées dans l'éditeur pour les réalisations */
.single-cpt_portfolio .portfolio_page_gallery .wp-block-image,
.single-cpt_portfolio .portfolio_page_gallery img:not(.wp-post-image),
.single-cpt_portfolio .portfolio_page_gallery .wp-block-gallery {
    display: none !important;
}

.comments_wrap{
display:none!important;
}

comments_wrap opened
.portfolio_page_featured img {
display:none!important;
}

/* Supprime les metas (date, etc) spécifiquement dans le slider de l'accueil */
.slider-accueil .post_meta {
    display: none !important;
}

/* Au cas où le thème utilise la classe individuelle */
.slider-accueil .post_meta_item {
    display: none !important;
}


.elementor-18555 .elementor-element.elementor-element-eeb1516 > .elementor-widget-container {
    background-color: #ffffff00;
}

.slider-accueil .sc_portfolio_slider {
    height: 500px !important;
    min-height: 0 !important;
}


.post_footer .post_tags_single {
display:none!important;
}

.author_info{
display:none!important;
}

.lien-team a {
    pointer-events: none;
    cursor: default;
    color: inherit; /* Conserve la couleur d'origine pour éviter que le texte ne devienne terne */
    text-decoration: none; /* Supprime le soulignement éventuel */
}
.elementor-slideshow__title{
display:none!important;
}

portfolio_page_gallery {
    position: -webkit-sticky; /* Pour la compatibilité Safari */
    position: sticky;
    top: 100px; /* Ajustez cette valeur selon la hauteur de votre menu de navigation en haut de page */
    max-height: calc(100vh - 120px); /* Empêche le bloc de dépasser la hauteur de l'écran */
    z-index: 10;
}


/* 1. On place le conteneur principal en mode flexible */
.portfolio_page_content_wrap {
    display: flex !important;
    flex-direction: row;
    align-items: flex-start;
    gap: 40px; /* Espace entre l'image et le texte */
}

/* 2. On dimensionne et on rend le bloc du slider "sticky" */
.portfolio_page_gallery {
    position: -webkit-sticky;
    position: sticky;
    top: 140px; /* Distance par rapport au haut de l'écran lors du défilement */
    align-self: flex-start; /* S'assure que le bloc ne s'étire pas de manière excessive */
    flex: 0 0 45%; /* La galerie occupe 45% de la largeur */
    max-width: 45%;
}

/* 3. Le texte prend le reste de l'espace */
.portfolio_page_content {
    flex: 1; /* Le texte occupe l'espace restant (55%) */
}

/* 4. Adaptation pour les écrans plus petits (smartphones) pour garder un affichage propre */
@media (max-width: 991px) {
    .portfolio_page_content_wrap {
        flex-direction: column; /* Le slider et le texte s'empilent sur mobile */
    }
    
    .portfolio_page_gallery {
        position: relative;
        top: auto;
        flex: 100%;
        max-width: 100%;
    }
    
    .portfolio_page_content {
        flex: 100%;
    }
}

/* On affiche la barre rouge uniquement sur la page blog ET les sous-pages d'articles */
body.blog #menu-item-21996 > a > span::after,
body.archive #menu-item-21996 > a > span::after,
body.single-post #menu-item-21996 > a > span::after {
    content: "";
    position: absolute;
    bottom: 26px;
    left: 50%;
    transform: translateX(-50%);
    width: 75%; 
    height: 2px;
    background-color: #d72828; /* Couleur rouge de votre thème */
    transition: all 0.3s ease-in-out;
}

/* S'assure que le conteneur du texte du menu est en position relative pour recevoir la barre */
.sc_layouts_menu_nav li > a {
    position: relative;
}

/* 1. On force tous les blocs d'images à avoir la même hauteur et largeur, peu importe l'article */
.blog .post_item .post_featured, 
.blog .post_item .post_featured a.link {
    height: 400px !important; /* Vous pouvez ajuster cette valeur (ex: 250px) */
    max-height: 400px !important;
    width: 100% !important;
    display: block;
    position: relative;
    overflow: hidden;
}

/* 2. On empêche l'étirement et l'écrasement de l'image */
.blog .post_item .post_featured img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important; /* Recadre l'image proprement dans son cadre */
    object-position: center !important; /* Centre la photo */
}