/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/


:root {
	--whiteColor: #FFF;
	--lightColor: #f5f5f5;
	--eColor: #eee;
	--dColor: #DDD;
	--cColor: #CCC;
	--darkColor: #000;
	--mainColor: #ff5316;
}

*{
	transition: .3s all ease-in-out;
}
body.mobile{
	overflow:hidden;
}

@media (max-width: 781px) {
	.mobileHide{
		display: none !important;
	}	
	.logo {
		width:100% !important;
	}
	.logo > *{
		margin: 0 auto;
		text-align:center;
	}
	.choose:before{
		content: inherit !important;
	}
	.titlePageDevis .devis{
		width:100% !important;
	}
	.site-footer #menu-menusecond_fr li{
		margin-left:0px !important;
		width:100% !important;
	}
	.mobileContainer .right:before{
		width:100% !important;
		background-color: var(--whiteColor) !important;
	}
	.mobileContainer .footerMenu li{
		border-bottom:1px solid rgba(0, 0, 0, .25);
	}
	.mobileContainer .footerMenu li a{
		color: var(--darkColor) !important;
		font-size: 1.5rem !important;
	}
	.mobileContainer .footerMenu li.current-menu-item a{
		color: var(--mainColor) !important;
	}
	.mobileContainer .footerMenu{
		margin:0px !important;
	}
	.header .wp-block-column:nth-child(2){
		background-color: var(--darkColor);
		justify-content:flex-start !important;
	}
	.header .mobileMenu:after{
		content: "Menu";
		color: var(--whiteColor);
		position: absolute;
        top: 15px;
        left: 60px;
        width: max-content;
        font-weight: bolder;
        font-size: 1rem;
        text-transform: uppercase;
	}
	.mainService .gb-grid-wrapper{
		flex-direction:column !important;
		width:100% !important;
	}
	.mainService .gb-grid-wrapper .gb-grid-column{
		width:100% !important;
		margin-bottom:50px !important;
	}
	.mainService .gb-grid-wrapper .gb-grid-column:last-child{
		margin-bottom:50px !important;
	}
}

#main .gb-container > .inside, 
.titlePage .inside, 
.site-footer .inside, 
.mobileContainer .inside{
	padding: 0px 20px;
}
/*.debug */
body{
	background-color: inherit;
}

/*.contactConfig */
.contactConfig .mail, 
.contactConfig .phone{
	display:none;
}
.contactConfig.mail .mail, 
.contactConfig.phone .phone{
	display:inline-flex;
	width:max-content;
}
.contactConfig.center .buttons{
	justify-content:center;
	align-items:center;
}
.contactConfig.column .buttons{
	flex-direction:column;
}
.contactConfig.column .buttons .gb-button{
	margin-bottom:5px;
}

.contactConfig .gb-button, 
.btn{
	font-weight:bolder;
	font-size:.9rem;
	padding: 10px 20px;
	text-transform: uppercase;
}

.contactConfig.mainColor .gb-button.phone, 
.btn.mainColor {
	background-color: var(--mainColor) !important;
	color: var(--whiteColor) !important;
}
.contactConfig.mainColor .gb-button.mail{
	background-color: var(--darkColor) !important;
	color: var(--whiteColor) !important;
}
.contactConfig.secondColor .gb-button.phone{
	background-color: var(--darkColor) !important;
	color: var(--whiteColor) !important;
}
.contactConfig.secondColor .gb-button.mail{
	background-color: var(--whiteColor) !important;
	color: var(--mainColor) !important;
}


/*.gb */
.gb-highlight{
	color: var(--mainColor) !important;
}
/*.header */
.header{
	background-color: var(--lightColor);
}
.header .wp-block-columns{
	gap: 0em !important;
	align-items:stretch;
	margin:0px;
}
.header .wp-block-colum:nth-child(1){
	width:300px;
}
.header .wp-block-column:nth-child(2){
	width: calc(100% - 300px) !important;
	flex-grow:1 !important;
	border-top:3px solid var(--mainColor);
	flex-basis:inherit !important;
	align-self:stretch;
	display: flex;
	justify-content:flex-end;
}
.header .wp-block-column:nth-child(2) > .gb-container{
	align-self:center;
}
.header #menu-menumain_fr{
	display: flex;
	list-style:none;
	margin:0px;
	padding:0px;
}
.header #menu-menumain_fr li a{
	text-decoration: none;
	font-weight:bolder;
	text-transform: uppercase;
	display: block;
	padding:10px 20px;
	color: var(--darkColor);
}

.header #menu-menumain_fr li.current-menu-item  a {
	color: var(--mainColor);
}

/*.mobileMenu */
.mobileMenu{
	position: relative;
	width:50px;
	height:50px;
	background-color: var(--darkColor);
	cursor:pointer;
}
.mobileMenu span{
	width:26px;
	height:3px;
	background-color: var(--whiteColor);
	position: absolute; 
	left:12px;
}

.mobileMenu span:nth-child(1){
	top:17px;
}
.mobileMenu span:nth-child(2){
	top:25px;
	opacity:1;
}
.mobileMenu span:nth-child(3){
	top:33px;
}
.mobile .mobileMenu span:nth-child(2){
	opacity:0;
}
.mobile .mobileMenu span:nth-child(1){
	transform: rotate(45deg);
}
.mobile .mobileMenu span:nth-child(3){
	transform: rotate(-45deg);
}
.mobile .mobileMenu span{
	top:25px;
}

/*.mobileContainer */
.mobile .mobileContainer{
	top:0% !important;
	left:0%;
	overflow-y:scroll;
}

.mobile .mobileContainer h1 a{
	text-decoration: none;
}

.mobileContainer{
	position:fixed;
	z-index:999;
	top:-100% !important;
	left:0%;
	width:100vw;
	height:100vh;
	background-color: var(--whiteColor);
	overflow:hidden;
}
.mobileContainer .right:before{
	content: "";
	width:66vw;
	height:100vh;
	position: absolute; 
	top:0px;
	z-index:-1;
	background-color: var(--mainColor);
}
.mobileContainer .inside{
	position:relative;
	z-index:1;
}

.mobileContainer .footerMenu{
	padding:0px;
	margin:0px 0px 0px 40px;
	list-style: none;
	border-left: 1px solid var(--whiteColor);
}
.mobileContainer .footerMenu li a {
	display: block;
	color: var(--whiteColor);
	text-decoration: none;
	padding: 10px 20px;
}

.mobileContainer .footerMenu li.current-menu-item a{
	color: var(--darkColor);
}

.logged-in.mobile .mobileContainer{
	top:32px !important;
	height: calc(100vh - 32px) !important;
}


/*.titlePageDevisLink */
.titlePage{

	background-color: var(--lightColor);
}
.titlePageContainer{
	left:0px;
	width:100%;
}

.titlePageDevis:before{
	content: "";
	position: absolute; 
	top:0px;
	right: calc(100% - 20px);
	background-color: var(--mainColor);
	width:100%;
	height:100%;
}
.titlePageDevisLink a{
	position: absolute;
	background:red;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	opacity:0;
	z-index: 3;
}

.mainService .slideService{
	overflow-x:scroll;
}

.mainService .slideService::-webkit-scrollbar {
  display: none;
}
.mainService .gb-grid-wrapper{
	width: max-content;
	flex-direction:row;
	display: flex;
}
.mainService .gb-grid-wrapper .gb-grid-column{
	width:300px ;
	background-color: var(--whiteColor);
	display: flex;
	box-sizing: initial;
	margin-right:20px;
}
.mainService .gb-grid-wrapper .gb-grid-column:nth-child(3n){
	margin:0px;
	margin-right:20px;
}

.mainService .slide{
	position:relative;
	padding: 50px;
	display: flex;
	align-items:stretch;
	overflow: hidden;
	width:100%;
	
}
.mainService .slide > *{
	position:relative;
	z-index: 2;
}
.mainService .slide .gb-block-image{
	width:50px;
	position: absolute; 
	top:50px;
	left:50px;
	z-index: 1 !important;
}
.mainService .slide:hover .gb-block-image{
	width:100px;
	left:90px;
	top:75px;
}
.mainService .slide .gb-headline-text{
	text-align:center !important;
}
.mainService .slide .gb-button{
	margin: 0 auto;
	display: block;
	position: absolute; 
	bottom:0px;
	left:0px;
	width:-webkit-fill-available;
	display:flex;
	flex-direction: row;
	justify-content:space-between;
	
}


/*.choose */
.choose:before{
	width:45%;
	right:0px !important;
	left: inherit !important;
}
.choose .chooseFaqOption{
	padding:30px 20px 20px 20px;
	border-bottom:1px solid var(--cColor);
	cursor:pointer;
}

.choose .chooseFaqOption.chooseActive{
	background-color: var(--whiteColor);
	cursor: normal !important;
}
.choose .chooseFaqOption p{
	display: none;
	padding-left:45px;
}
.choose .chooseFaqOption.chooseActive .gb-headline{
	color: var(--mainColor);
}
.choose .chooseFaqOption p{
	display: none;
	padding-left:45px;
}
.choose .chooseFaqOption.chooseActive p{
	display: block;
}

/*.site-footer */
.site-footer .footerMenu{
	list-style:none;
	display flex;
	flex-direction:column; 
	justify-content:center;
	align-items:center;
	margin:0px;
	padding:0px;
}
.site-footer .footerMenu li{
	text-align:center;
}
.site-footer .footerMenu li a{
	color: var(--whiteColor);
	text-decoration: none;
	display: block;
	padding: 10px;
	border-bottom: 1px solid rgba(255, 255, 255, .5);
}

.site-footer .footerMenu li:last-child a{
	border-width: 0px;
}

.site-footer #menu-menusecond_fr{
	flex-direction:row;
	display: flex;
	flex-wrap:wrap;
	align-items:flex-start;
	justify-content:flex-start;
}
.site-footer #menu-menusecond_fr li{
	align-self:flex-start;
	width:45%;
}
.site-footer #menu-menusecond_fr li:nth-child(2n){
	margin-left:5%;
}

.site-footer .footerMenu li.current-menu-item a{
	color: var(--mainColor);
}






