/*
Theme Name: BBS Theme
Description: Main theme for Bois Béton Solutions, based on Uncode
Author: Huit Onze
Author URI: http://www.huitonze.ch
Template: uncode
Version: 1.0.0
Text Domain: uncode
*/


:root {
	--charbon-color: #383937;
	--bois-color: #B58150;
	--beton-color: #888B8D;
	--medium-gray-color: #C3C5C6;
	--light-gray-color: #F3F3F4;
}

span.display-none {
    display: none;
}

/************************* 
 * Font
 *************************/

@font-face {
    font-family: 'Lexend Deca';
    src: url('fonts/LexendDeca-VariableFont_wght.ttf') format('truetype');
    font-weight: 300 700;
    font-style: normal;
    font-display: swap;
    font-optical-sizing: auto;
}

p, li, dt, dd, dl, address, label, small, pre, code, span.tab-excerpt {
    line-height: 1.6;
}

@media (max-width: 959px) {
	#bigtext-id0 .bigtext-line0,
	.text-lead .heading-text p.h4 span{
		font-size: 20px!important;
	}
}

.text-lead .heading-text p.h4 span {
    line-height: 1.6em;
}

.bbs-text-caps p {
	text-transform:uppercase;
}

/************************* 
 * Components
 *************************/
/*** BOUTON ***/
.btn {
    padding: 9px 36px !important;
}

.btn-color-jevc.btn-flat:not(.btn-hover-nobg):hover, 
.btn-color-jevc.btn-flat:not(.btn-hover-nobg):focus, 
.btn-color-jevc.btn-flat:active {
    background-color: var(--bois-color) !important;
    border-color: var(--bois-color) !important;
}

.btn-accent.btn-flat:not(.btn-hover-nobg):hover, 
.btn-accent.btn-flat:not(.btn-hover-nobg):focus, 
.btn-accent.btn-flat:active,
#btn-white_line:hover,
#btn-white_line:focus,
#btn-white_line:active {
    background-color: var(--charbon-color) !important;
    border-color: var(--charbon-color) !important;
	color:  var(--light-gray-color) !important;
}

a.bbs_btn-big {
    padding: 18px 36px !important;
}

/*** ARROW SCROLLDOWN ***/
#bbs-arrow_down {
	margin-left:36px;
	animation: fade-out-down 2s ease infinite;
	cursor: pointer;
	position: inherit;
}

@keyframes fade-out-down {
	0% {
		opacity: 1;
		transform: translateY(0);
	}
	100% {
		opacity: 0;
		transform: translateY(36px);
	}
}

@media (max-width: 959px) {
    .header-wrapper .header-scrolldown {
        display: block;
    }
}

/*** ACCORDION ***/
.bbs-accordion-static {
	padding-top: 18px !important;
	border-top: 1px solid var(--charbon-color);
	margin-top: 18px !important;
}

.bbs-accordion-static strong {
    color:var(--bois-color) !important;
	font-weight:300;
	text-transform:uppercase;
	letter-spacing:.05em;
	font-size: 1.2em;
}

.bbs-accordion-static p {
    color: var(--beton-color) !important;
	margin-top:0;
}

/*** FORMULAIRE ***/
.frm-fluent-form .ff-t-container {
	gap: 27px!important;
}

.fluentform .ff-el-input--label {
    margin-bottom: 0px!imporant;
}

@media (min-width: 768px) {
    .frm-fluent-form .ff-t-container {
        gap: 36px!important;
    }
}

.fluentform .ff-el-group {
    margin-bottom: 36px!important;
}

.ff-default .ff-el-input--label label {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600 !important;
}


/************************* 
 * Menu
 *************************/

@media screen and (min-width:960px) {
	
	/*** GLOBAL MENU ITEM ***/
	#menu-menu-principal.menu-primary-inner .menu-item a:hover {
		color: var(--bois-color);
	}
	
	/*** CURRENT MENU ITEM ***/
	#menu-menu-principal.menu-primary-inner .current-menu-item a,
	.tax-portfolio_category #menu-menu-principal.menu-primary-inner .menu-item-type-custom a,
	.single-portfolio #menu-menu-principal.menu-primary-inner .menu-item-type-custom a {
		font-weight: 700;
	}

	#menu-menu-principal.menu-primary-inner .current-menu-item a::after,
	.tax-portfolio_category #menu-menu-principal.menu-primary-inner .menu-item-type-custom a::after,
	.single-portfolio #menu-menu-principal.menu-primary-inner .menu-item-type-custom a::after {
		content: '';
		display: block;
		background-color: var(--bois-color);
		position: absolute;
		height: 8px;
		width: 85%;
		bottom: 0px;
		left: 0px;
		right: 0px;
		margin: auto;
	}
	
	/*** CTA CONTACT ***/	
		
	body.hmenu-position-center .main-menu-container .navbar-cta.navbar-nav-last {
        min-width: 0px;
    }
	.double-h-padding#masthead .row-menu .row-menu-inner {
        padding-right: 0px;
    }
	
	#menu-menu-contact {
		background-color: var(--charbon-color);
		padding: 0 72px!important;
		margin-left: 36px;
		transition: all 0.25s ease-out;
	}
	
	#menu-menu-contact:hover,
	#menu-menu-contact:has(.current_page_item) {
		background-color: var(--bois-color);
	}
	
	#menu-menu-contact .menu-item a {
		color: var(--light-gray-color);
		font-weight:700;
	}
	
	.main-menu-cta.contact a::after {
        content: image-set("assets/img/picto-message.png" 2x);
        display: inline-table;
        width: 33px;
        height: 27px;
        margin-left: 18px;
        position: relative;
    }
}

@media screen and (min-width:960px) and (max-width:1220px) {
	
	/*** GLOBAL MENU ***/
	.double-h-padding#masthead .row-menu .row-menu-inner {
		padding-left:36px;
	}
	
	/*** GLOBAL MENU ITEM ***/
	#menu-menu-principal.menu-primary-inner .menu-item a,
	.main-menu-cta.contact a {
		font-size:.8em;
	}
	
	/*** CTA CONTACT ***/
	#menu-menu-contact {
		padding: 0 36px!important;
		margin-left: 36px;
		transition: all 0.25s ease-out;
	}
	
		
	#menu-menu-contact .menu-item a {
		font-size:.8em;
	}
	
	.main-menu-cta.contact a::after {
        content: image-set("assets/img/picto-message.png" 3x);
        width: 22px;
        height: 18px;
        margin-left: 9px;
    }
}


/************************* 
 * Header
 *************************/

/*** SHAPE HOMEPAGE ***/
.header-wrapper:has(#bbs-shape_header_small) {
	overflow:visible;
}

#bbs-shape_header::after,
#bbs-shape_header_small .row-inner::after {
	content: '';
	display: inline-block;
	position: absolute;
	z-index: 1;
	background-image: url("assets/img/bbs-shape_header.svg");
	background-size: cover;
}

#bbs-shape_header::after {
	display:none;
}
#bbs-shape_header_small .row-inner::after {
	bottom: -54px;
	right: 0px;
	width: 200px;
	height: 103px;
}

@media screen and (min-width:570px) and (max-width:959px) {
	#bbs-shape_header::after {
		display:inline-block;
		bottom: 36px;
		right: 36px;
		width: 350px;
		height: 180px;
	}
	#bbs-shape_header_small .row-inner::after {
		bottom: -54px;
		right: 0px;
		width: 350px;
		height: 180px;
	}
}

@media screen and (min-width:960px) and (max-width:1219px) {
	#bbs-shape_header::after {
		display:inline-block;
		bottom: 72px;
		right: 72px;
		width: 504px;
		height: 259px;
	}
	#bbs-shape_header_small .row-inner::after {
		bottom: -54px;
		right: 0px;
		width: 425px;
		height: 218px;
	}
}

@media screen and (min-width:1220px) {
	#bbs-shape_header::after {
		display:inline-block;
		bottom: 72px;
		right: 72px;
		width: 504px;
		height: 259px;
	}
	
	#bbs-shape_header_small .row-inner::after {
		bottom: -72px;
		right: 0px;
		width: 504px;
		height: 259px;
	}
}

/************************* 
 * Footer
 *************************/

/*** GLOBAL ***/
.site-footer #bbs-footer .full-width.row-parent {
    max-width: 2070px;
    margin: auto;
}

#bbs-footer:hover .style-color-lxmt-bg {
	background-color: var(--bois-color);
	opacity: 1 !important;
	transition: all 0.25s ease-out;
	transition-delay: 0ms !important;
}

/*** LIST STYLE ***/
.widget_nav_menu .menu {
    padding: 0px !important;
}
	
.widget_nav_menu li.menu-item {
    list-style: none!important;
    padding: 0 0 6px 0 !important;
}

#bbs-nav_menu_mentions a {
	font-weight:700;
	font-size:14px;
}

/*** LOGO FOOTER ***/
@media screen and (max-width:569px) {
	.bbs-logo-footer.text-left {
		text-align: center;
	}
	
	#bbs-footer.bbs-footer-row-1 .double-top-padding {
    	padding-top: 0;
	}
}


/************************* 
 * Content
 *************************/

/*** About ***/
@media (max-width: 569px) {
    .main-container .bbs-about_gallery .row-inner > div:not(.vc_helper) {
        padding: 0px 0px 0px 0px;
    }
}

/*** Post Queries ***/
@media screen and (min-width:960px) {
	.bbs-realisations_posts-query .t-entry-text-tc.single-block-padding {
		padding-top: 0;
	}
}

@media screen and (max-width: 569px) {
    .bbs-realisations_posts-query .single-block-padding {
        padding-top: 0 !important;
    }
}

.bbs-realisations_posts-query .t-entry-visual a::after {
    content: url("assets/img/bbs-plus_alone.svg");
	display: block;
    position: absolute;
    background-color: var(--charbon-color);
	bottom: 36px;
    right: 36px;
    width: 36px;
    height: 36px;
	padding: 7px;
	transition: all 0.25s ease-out;
	cursor:pointer;
	z-index:10;
}


.bbs-realisations_posts-query .t-entry-visual:hover a::after {
    background-color: var(--bois-color);
}

/*** Realisations Archives ***/
.bbs-realisations_posts-query .t-entry-cf-detail-491282 {
    text-transform: uppercase;
    margin-top: 0px !important;
}

.bbs-realisations_posts-query p.t-entry-meta,
.bbs-realisations_posts-query span.t-entry-category {
    display: inline-block;
    position: absolute;
    bottom: 2px;
}

.bbs-realisations_posts-query span.t-entry-category {
    right: 0px;
}

.bbs-realisations_posts-query .tmb .t-entry p.t-entry-meta .t-entry-category {
    right: 0px;
	border: 1px solid var(--charbon-color);
	border-radius: 3px;
    padding: 3px 9px;
	transition: all 0.25s ease-out;
	word-wrap:unset!important;
}

.bbs-realisations_posts-query .tmb .t-entry p.t-entry-meta .t-entry-category:has(a:hover) {
	border-color: var(--bois-color);
}

.bbs-realisations_posts-query div.t-entry {
    margin-bottom: 18px;
}

@media screen and (max-width:1399px) {
	.bbs-realisations_posts-query p.t-entry-meta,
	.bbs-realisations_posts-query span.t-entry-category {
		position: relative;
	}
}

/*** Realisations Single ***/
.bbs-realisation_single-page_cat_display {
	display: inline-block;
	font-size: 12px;
	border: 1px solid var(--charbon-color);
	border-radius: 3px;
    padding: 3px 9px;
    text-transform: uppercase;
	transition: all 0.25s ease-out;
}

.bbs-realisation_single-page_cat_display:has(a:hover) {
	border-color: var(--bois-color);
}

.bbs-scf_details_box .row::before {
	content:'';
	background-image: url("assets/img/bbs-shape_content.svg");
	display: inline-block;
	position: absolute;
	z-index: 10;
	background-size: cover;
	width:200px;
	height:103px;
	right:36px;
	top:-36px;
}

@media screen and (min-width:570px) and (max-width:959px) {
	.bbs-scf_details_box .row::before {
		z-index: 10;
		width:350px;
		height:180px;
		right:36px;
		top:-36px;
	}
}

@media screen and (min-width:960px) {
	.bbs-scf_details_box .row::before {
		z-index: 0;
		width:504px;
		height:259px;
		right:36px;
		top:-36px;
	}
}

.bbs_scf_author-realisation p,
.bbs_scf_details-realisation p{
	text-transform: uppercase;
}

.bbs_scf_details-realisation p {
    border-top: 1px solid var(--charbon-color);
    padding: 12px 18px;
}

.bbs_scf_details-realisation:last-child p {
    border-bottom: 1px solid var(--charbon-color);
}

.bbs_scf_details-realisation p::before {
    content: '+';
    position: absolute;
    display: inline-block;
    left: 0;
}

/*** CGU ***/

