/********* STYLES POUR LES CPT ET POSTS : SINGLE & ARCHIVES  *********/

/* Hero commune aux posts */
#banniereIntern {
    background: var(--dark);
	position:relative;
	min-height:57vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#customBreadcrumb {
    position: absolute;
    left: 0;
    width: 100%;
    bottom: 25px;
}
#customBreadcrumb ul{
	list-style:none;
	display:inline-flex;
	flex-wrap:wrap;
	gap:5px;
	padding:0;
}
#customBreadcrumb ul li a{
	color:white;
}
#customBreadcrumb ul .active{
	color:var(--brun);
	font-weight:700;
}
#customBreadcrumb ul svg{
	transform:rotate(0deg)!important;
	height:10px;
	display: flex;
    align-self: center;
}
#customBreadcrumb ul svg path{
	fill:white;
}
.container-txt h1{
	color:white;
	font-weight:700!important;
}

.banniereimg{
	position:absolute;
    width: 66% !important;
    right: 0 !important;
	top:0;
	height:100%;
    left: unset !important;
}
.banniereimg::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #231f1f3d;
}
.banniereimg img{
	height:100%;
	width:100%;
	object-fit:cover;
}
.container-txt {
    height: 100%;
    display: flex;
    align-items: center;
}
.txtBanniere {
    z-index: 2;
    position: relative;
}
@media screen and (max-width:990px){
	#banniereIntern {
		min-height:37vh;
	}
	.heroBanner > .brz-section__content > .brz-container{
		width: 100%!important;
	}
}
@media screen and (max-width:767px){
	#customBreadcrumb ul li a{
		font-size:15px;
	}
}


/*** SINGLE REALISATION ***/

/* Contenu */
.container-realisation{
    display: flex;
    gap: 60px;
	padding-top:75px;
	padding-bottom:75px;
}
.contenu-realisation, .dtls-realisation{
	width:calc(50% - 30px);
}
.descriptTxt p{
	margin-bottom:10px;
}
.descriptTxt h2{
	margin-top:20px;
}
.others-realisation-title{
	font-weight:700;
	margin-top: 30px;
}

/* Galerie Réalisation: img */
.dtls-realisation .galerie_agence{
	margin-bottom:20px;
}

/* Galerie Réalisations */

.realisations_liste .slick-track {
	margin-left: 0;
}
.realisations_liste .realisation_item img{
	aspect-ratio:2/1;
	object-fit:cover;
	width:100%;
}
.realisations_liste .slick-slide>div{
	margin-right:10px;
}
.others_rea-rea_titre{
	background:var(--dark);
}
.others_rea-rea_titre {
    text-align: left;
    padding: 8px;
    line-height: 15px;
    font-weight: 700;
    font-size: 12px;
	border-top: 1px solid white;
}
.others_rea-rea_titre a{
	color:white!important;
}

.arrows_dark .slick-arrow{
	border-color:var(--dark);
	background:var(--dark);
	border-radius:50%;
	width: 40px;
    height: 40px;
	padding: 6px;
	box-shadow: 0px 5px 15px #00000040;
	transition:0.3s ease-in-out;
}
.arrows_dark .slick-arrow:hover{
	border-color:var(--brun);
	background:var(--brun);
}
.arrows_dark .slick-arrow svg path{
	fill:white;
}
.arrows_dark .slick-arrow:before{
	display:none;
}
.realisations_liste .slick-arrow.slick-prev{
	left: -50px;
}
.realisations_liste .slick-arrow.slick-next{
	right: -50px;
}
@media screen and (max-width:990px){ 
	.single-realisation-banniere{ 
		min-height: 47vh!important; 
	} 
	.single-realisation-h1{ 
		margin-top:-50px; 
	} 
}
@media screen and (max-width:767px){
	.realisations_liste .slick-arrow.slick-next {
		right: -35px;
	}
	.realisations_liste .slick-arrow.slick-prev {
		left: -35px;
	}
	.realisations_liste .slick-arrow {
		width: 30px;
		height: 30px;
		padding: 5px;
	}
	.single-realisation-banniere{ 
		min-height: 400px!important; 
	}
	.realisation-h1{
		font-size: 24px!important;
        margin-top: -50px;
	}
}


/* Réalisation: prix */
.btn-devis{
	width:100%!important;
	font-size:20px;
	font-weight:800;
	text-transform:uppercase;
}

.divprix {
    display: flex;
    justify-content: space-between;
	gap:10px 15px;
	margin-top:10px;
}
.boxInfo{
	width:50%;
	background:var(--gris);
	padding:15px 20px;
	display:flex;
	justify-content:center;
	align-items:center;
	gap:10px;
}
.boxInfo{
	text-align:center;
	font-weight:500;
}
.icnnotice {
	 position: relative;
	cursor: pointer;
}
.icnnotice svg{
    width: 27px;
    height: 27px;
}
.txtinfo {
    font-size: 12px;
    line-height: 1.5;
    font-weight: 400;
    background: #fff;
    position: absolute;
    top: calc(100% + 14px);
    right: 0;
    width: 250px;
    padding: 20px 20px;
    z-index: 9;
    opacity: 0;
    visibility: hidden;
    transition: all .4s ease-in-out;
}
.divprix .icnnotice .txtinfo::before {
    content: '';
    display: block;
    background: #fff;
    position: absolute;
    top: -5px;
    right: 6px;
    width: 15px;
    height: 15px;
    transform: rotate(45deg);
	z-index: -1;
}
.divprix .icnnotice:hover .txtinfo {
    opacity: 1;
    visibility: visible;
}

.boxDescript{
	margin-top:10px;
	background:var(--gris);
	padding:20px 20px;
	display:flex;
	flex-direction:column;
    font-weight: 500;
}
.itemDescript{
	border-bottom: 1px solid #93795b;
	padding-bottom:15px;
	margin-bottom:15px;
}
.itemDescript:last-child{
	border-bottom: 0;
	margin-bottom:0px;
	padding-bottom:0px;
}
.itemDescript-txt{
	font-weight:700;
	color:var(--brun);
}

@media screen and (min-width:991px) and (max-width:1200px){
	.divprix {
		flex-direction: column;
	}
	.boxInfo {
		width: 100%;
	}
}
@media screen and (max-width:991px){
	.container-realisation{
		flex-direction:column-reverse;
		padding-top: 60px;
    	padding-bottom: 60px;
	}
	.contenu-realisation, .dtls-realisation{
		width:100%;
	}
	.realisations_liste {
		width: calc(100% - 40px)!important;
		margin-left:20px;
	}
}
@media screen and (max-width:767px){
	.container-realisation{
		padding-top: 40px;
    	padding-bottom: 40px;
	}
}
@media screen and (max-width:550px){
	.divprix {
		flex-direction: column;
	}
	.boxInfo {
		width: 100%;
	}
}

/*** BANDEAU CONTACT **/
.bandContact{
	width:100%;
	background:var(--gris);
	padding:75px 0px;
	display:flex;
	justify-content:center;
	align-items:center;	
	text-align:center;
}
.bandContact .row{
	display:flex;
	flex-direction:column;
	align-items:center;	
	gap:10px;
	text-align:center;
}
.txtband{
	text-align:center;
	color:var(--dark);
	font-weight:700!important;
}
.txtband span{
	color:var(--brun);
}



/****** ARCHIVE TAXONOMIES ***/
.taxonomie-title{
	font-weight:700;
	color:var(--brun);
}
.contenu-taxonomie{
	margin-top:0px;
}
.taxonomie_realisations_list{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:20px;
	margin-top:70px;
}
.rea-card{
	background:var(--dark);
}
.rea-link {
    display: flex;
    flex-direction: column;
	height: 100%;
}

.tax-title-wrap {
    display: flex;
	justify-content:space-between;
	height: 100%;
}
.tax-title{
	font-weight:800;
	color:var(--brun);
	transition:0.3s ease-in-out;
	max-width: calc(100% - 135px)!important;
	padding:15px;
}
.rea-card:hover .tax-title{
	color:white;
}
.rea-card img{
	aspect-ratio:2/1;
	width:100%;
	object-fit:cover;
}
.btn-tax {
    width: 135px !important;
    padding: 5px 18px;
}


.menu-realisations.menu-tax {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 70px;
}
.btn-other-tax{
	background:white!important;
	color:var(--brun)!important;
	border:2px solid var(--brun);
}
.btn-other-tax:hover{
	background:var(--brun)!important;
	color:white!important;
}

@media screen and (max-width:990px){
	.taxonomie_realisations_list{
		grid-template-columns:repeat(1, 1fr);
		margin-top:60px;
	}
	.menu-realisations.menu-tax {
		margin-top: 60px;
	}
}
@media screen and (max-width:767px){
	.taxonomie_realisations_list{
		margin-top:50px;
	}	
	.menu-realisations.menu-tax {
		margin-top: 50px;
	}
}


/*** SINGLE TEMOIGNAGES ***/
.container-temoignage{
    display: flex;
	flex-wrap:wrap;
    gap: 50px;
	padding-top:75px;
	padding-bottom:75px;
}
.singleTestimonials, .dtls-temoignage{
	width: calc(50% - 25px);
}
.headdescript {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    align-items: center;
    justify-content: space-between;
}
.prev-next-testimonial {
    margin-top: 30px;
	display: flex;
    justify-content: space-between;
	align-items: center;
	width: 100%;
}
.prev-next-testimonial a.btnicn {
    display: inline-flex;
    gap: 10px;
    align-items: center;
	font-weight:700;
}
.prev-next-testimonial img{
    width: 26px;
    height: auto;
}
img.prev-testimonial {
	transform:scalex(-1);
}

.dtls-temoignage .galerie_img_temoignage {
    margin-bottom: 20px;
}
.contenu-temoignage .headTestimonials , .contenu-temoignage .itemdescript{
    margin-bottom: 20px;
}
@media screen and (max-width:990px){
	.container-temoignage{
		flex-direction: column;
		padding-top:60px;
		padding-bottom:60px;
	}
	.singleTestimonials, .dtls-temoignage{
		width:100%;
	}
	.single-temoignage-banniere{
		min-height: 47vh!important; 
	}
	.temoignage-h1{
        margin-top: -50px;
	}
}
@media screen and (max-width:767px){
	.container-temoignage{
		padding-top:50px;
		padding-bottom:50px;
	}
	.single-temoignage-banniere{
		min-height: 400px!important; 
	}
	.temoignage-h1{
		font-size: 24px!important;
        margin-top: -50px;
	}
	.prev-next-testimonial a.btnicn{
		width:fit-content;
	}
}
@media screen and (max-width:480px){
	.prev-next-testimonial a span {
		width: min-content;
	}
}

/*** ARCHIVE TEMOIGNAGES ***/
.temoignages_list {
    display: grid;
    grid-template-columns: 1fr 1Fr;
    gap: 30px;
}
.temoignage-card{
	height:auto;
	background: var(--dark);
}
.temoignage-card .boxitem {
    display: flex;
	height: 100%;
}
.img-avis {
    height: auto;
    width: 30%;
    object-fit: cover;
}
.cnt-avis {
    padding: 20px;
    align-self: center;
	width: 70%;
}

.liststars {
    display: flex;
    margin-bottom: 0;
    padding-left: 0;
    margin-left: -2px;
    margin-right: -2px;
    top: -5px;
    position: relative;
    z-index: 3;
    list-style: none;
    align-items: center;
    width: 72px;
}
.avis-titre{
	color:var(--brun);
	font-weight:700;
}
.boxnote{
	display:none;
}
.icn-avis{
    height: 20px;
    margin-bottom: 13px;
}
.temoignage-card p {
    margin-bottom: 0px;
}

.avis-txt, .avis-txt * {
    color: white!important;
    font-size: 14px;
    font-style: italic;
}
.avis-link-more {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 14px;
    margin-top: 20px;
	display: inline-flex;
	transition:0.3s ease-in-out;
}
.avis-link-more:hover{
	color:white!important;
}

.st-temoignage{
	font-weight:700;
}
@media screen and (max-width:1200px){
	.temoignages_list {
		grid-template-columns: 1fr;
	}
} 
@media screen and (max-width:767px){
	.boxitem {
		flex-direction: column;
	}
	.img-avis, .cnt-avis{
		width:100%;
	}
	.img-avis{
		height:230px!important;
	}

} 

/**** SINGLE POST : actus ****/

#container-article{
	padding-top:50px;
	padding-bottom:50px;
}
.article-head {
    margin-bottom: 20px;
}
.btnbackActus{
	font-weight:700;
	font-size:16px;
	display:flex;
	align-items:center;
	gap:10px;
}
.news-wrap {
	display: flex;
	gap:20px;
}
.article-actus span{
	display:block;
	font-weight:700;
	color:var(--brun);
}
.article-detail{
	width: 66%;   
}
.cntDetailNews{
	box-shadow: 0 15px 30px #231f1f29;
}

.newsImg .cntimg img{
	height: 280px;	
	width:100%;
	object-fit:cover;
}
.bodyNews{
	padding:20px 25px 30px;
}
.bodyNews * {
    max-width: 100%;
}
.bodyNews .cntdate{
	color:var(--brun);
	margin-bottom:20px;
}
.titre-article-bis{
	font-weight:700;
	margin-bottom:30px;
	display: inline-block;
}
/*
.bodyNews p, .bodyNews ul, .bodyNews span, .bodyNews a {
    font-size: 16px;
}
*/


/* Tableau : responsive */
.single-post .newsDescript table {
  width: 100%;
  max-width: 100%;
  table-layout: fixed;           /* colonnes calculées pour éviter le débordement */
  border-collapse: collapse;
}
.single-post .newsDescript table th,
.single-post .newsDescript table td,
.single-post .newsDescript th,
.single-post .newsDescript td {
  white-space: normal !important; /* override d'éventuels nowrap du thème */
  overflow-wrap: anywhere;        /* casse même les mots longs / nombres */
  word-break: break-word;         /* fallback WebKit anciens */
  hyphens: auto;                  /* césure si possible (lang="fr" requis) */
  min-width: 0;
}
.single-post .newsDescript table td{
	padding:10px!important;
	font-size:16px!important;
}
.single-post .newsDescript table p{
	margin-bottom:5px;
}
@media screen and (max-width:767px){
	.single-post .newsDescript table td{
		font-size:15px!important;
	}
}

.cntBtnNavNews{
	margin-top:30px;
	display:flex;
	justify-content:space-between;
}
.btnbackActus.suiv img{
	transform:scalex(-1);
}

.article-archive-list{
	padding: 18px;
    box-shadow: 0 15px 30px #231f1f29;
	width: calc(33% - 20px);
	height:fit-content;
}
.article-archive-list .h5{
	font-weight:700;
}
.articleaside {
    display: flex;
    flex-direction: column;
    gap: 10px;
	margin-bottom:30px;
}
.itemnewsrecente{
	display: flex;
    gap: 10px;
}
.itemnewsrecente .colImg {
    width: 62px;
}
.cnttxtnews {
    width: calc(100% - 72px);
}
.itemnewsrecente img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.titre-arch-actu{
	font-size:14px;
	font-weight:700;
	margin-bottom:5px;
}
.titre-arch-actu a{
	color:var(--dark);	
}
.cnttxtnews .dateactus {
    font-size: 12px;
    line-height: 1.3;
    color: var(--brun);
}
.listarchives select.boxselect {
    border-radius: 0;
    border-color: var(--brun);
    color: var(--brun);
}

/* archive par mois */
.news-du-mois .news-du-mois-liste{
	display:flex;
	flex-direction:column;
	gap:20px;
}
.news-du-mois .newsItem{
	box-shadow: 0 15px 30px #231f1f29;
}
.new-mois {
    display: flex;
}
.new-mois .cntimg {
    width: 33%;
}
.new-mois img{
	height:100%;
	width:100%;
	object-fit:cover;
}
.new-mois .bodyNews{
	width:66%;	
}
.new-mois .titre-article-bis{
	margin-bottom:10px;
}
.new-mois .titre-article-bis{
	color:var(--dark);
}
.new-mois .newsDescript{
	display: -webkit-box;
	  -webkit-box-orient: vertical;
	  -webkit-line-clamp: 2;
	  overflow: hidden;
	margin-bottom:20px;
	color:var(--dark);
}
.new-mois .btn-plus{
	width:100%;
	background:white;
	color:var(--brun);
	border:1Px solid var(--brun);
}
.new-mois .btn-plus:hover{
	color:white;
	background:var(--brun);
}

@media screen and (max-width:1100px){
	.news-wrap {
		flex-direction: column;
		gap:30px;
	}
	.article-detail, .article-archive-list {
		width: 100%;
	}
}
@media screen and (max-width:1100px){
	#container-article {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.bodyNews {
		padding: 20px 20px 30px;
	}
}
@media screen and (max-width:990px){
	.single-actu-banniere{
		min-height: 47vh!important;
	}
	.single-actu-h1{
		margin-top:-50px;
	}
}
@media screen and (max-width:767px){
	.single-actu-banniere{
		min-height: 400px!important;
	}
	.single-actu-h1{
		font-size:24px!important;
		margin-top:-50px;
	}
}
@media screen and (max-width:460px){
	.cntBtnNavNews span {
		width: min-content;
	}
}

/*** ARCHIVE OFFRES EMPLOI ***/

.recrutement-title{
	color:var(--dark);
	font-weight:500;
}

/* Liste offres */

.offre_item{
	transition:0.3s ease-in-out;
	    border-bottom: 1px solid #93795b;
}
.offre-title{
	color:var(--brun);
	font-weight:700;
} 
.offre_title_wrap{
	display:flex;
	justify-content:space-between;
	align-items:center;
	cursor:pointer;
	padding: 23px 0 15px;
}

.offre_title_wrap svg{
	width:30px;
}
.offre_title_wrap svg path{
	fill:var(--brun);
}

.offre_details {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    margin: 30px 0;
    gap: 50px;
}
.offre_description {
    margin-bottom: 30px;
}
.offre_description p {
    margin-block-end: 10px;
}

.offre_contenu{
	height:0;
	visibility:hidden;
	transition:0.3s ease-in-out;
	    display: flex;
    flex-direction: column;
}
.offreOuverte .offre_contenu{
	height:fit-content;
	visibility:visible;
}

/* Form candidature */
.recrutementForm {
    margin-top: 70px;
}

.candidature-title{
	font-weight:700;
	text-align:center;
	text-transform:uppercase;
}
@media screen and (max-width:767px){
	.offre-title {
		font-size: 20px;
	}
}


section#wrapperIntern .img-avis img{
	height: 100%;
    object-fit: cover;
}