/*
 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: #333;

	--mainColor: #ffc434;
	--blackColor: #000;
}

/* debug */

body.activeMobile{
	overflow: hidden;
}


.noBottom{
	margin-bottom:0px;
}
/* global */
.gb-highlight{
	color: var(--mainColor);
}
.choose .bgCover .gb-highlight{
	color: var(--whiteColor);
}

.inside{
	padding-left: 20px;
	padding-right:20px;
}

/* mobile */
@media (max-width: 781px){
	.mobileHide{
		display: none;
	}
}
@media (min-width: 782px){
	.desktopHide{
		display: none;
	}
}
/* .btns */

.btns .phone, 
.btns .contact, 
.btn{
	margin: 0px;
	padding: 10px 20px;
	font-weight:bolder;
	font-size: .9rem;
	text-transform: uppercase;
	width: max-content;
}

.btns.column > .gb-container{
	display: flex;
	flex-direction: column;
}
@media (max-width: 781px){
	.btns > .gb-container{
		flex-direction:column;
		align-items:center;
	}
	.pageTitle .btns > .gb-container, 
	.menuOverlay .btns > .gb-container{
		flex-direction:column;
		align-items:flex-start;
	}
}
.btns.alignRight> .gb-container{
	display: flex;
	align-items:flex-end;
}
.btns.justifyCenter> .gb-container{
	display: flex;
	justify-content:center;
}

.btns .phone, 
.btn.mainBtn{
	background-color: var(--mainColor) !important;
	color: var(--whiteColor) !important;
}
.btns .contact{
	background-color: var(--whiteColor);
	color: var(--blackColor);
}
.btns.secondBtn .contact{
	background-color: var(--blackColor) !important;
	color: var(--whiteColor) !important;
}

/* header */
.header{
	padding: 20px 0px;
}
.header #menu-menumain_fr{
	margin:0px;
	display: flex;
	list-style: none;
}
.header #menu-menumain_fr li a{
	text-transform:uppercase;
	text-decoration: none;
	font-weight:bolder;
	font-size: .9rem;
	color: var(--blackColor);
	padding: 10px 20px;
	display: block;
}

.header #menu-menumain_fr li.current-menu-item a, 
.header #menu-menumain_fr li.current-page-ancestor a{
	color: var(--mainColor);
}
@media (max-width: 781px){
	.header .menu-menumain_fr-container{
		display: none;
	}
	.headerElement{
		justify-content:flex-start !important;
		background-color: var(--blackColor);
	}
	.headerElement:after{
		content: "Menu";
		text-transform: uppercase; 
		font-weight:bolder;
		color: var(--whiteColor);
	}
}

/* .menuOverlay */
.page .menuOverlay{
	position: fixed;
	top:-200%;
	left:0px;
	z-index: 111;
	width:100vw;
	height:100vh;
	background-color: var(--mainColor);
	overflow: hidden;
	overflow-y:auto;
}
.activeMobile .menuOverlay{
	top:0%;
}
.menuOverlay .inside{
	height:100%;
}
.menuOverlay .wp-block-columns{
	margin-bottom:0px;
		height:100%;
}
.menuOverlay .leftColumn{
	position: relative;
	overflow: visible;
	display: flex;
	flex-direction:column;
	justify-content: center;
}
.menuOverlay .leftColumn {
	color: var(--whiteColor);
}
@media (min-width: 782px){
	.activeMobile .menuOverlay .leftColumn:before{
		position: fixed;
		top:0px;
		left:0px;
		width:36%;
		height:100%;
		content: "";
		background-color: var(--blackColor);
		z-index: 1;
	}
	
}
.menuOverlay .leftColumn >*{
	position: relative; 
	z-index: 2;
}
.menuOverlay .wp-block-columns .wp-block-column:last-child > .gb-container > .gb-container:first-child{
	border-bottom:1px solid var(--blackColor);
	padding: 20px 0px;
}
.logged-in .menuOverlay .wp-block-columns .wp-block-column:last-child > .gb-container > .gb-container:first-child{
	margin-top:32px;
}

.menuBurger{
	width:50px;
	height:50px;
	background-color: var(--blackColor);
	display: block;
	position: relative;
	
}
.menuBurger span{
	position: absolute; 
	top:10px;
	left:10px;
	width:30px;
	height:2px;
	background-color: var(--whiteColor);
}
.menuBurger span:nth-child(1){
	top:16px;
}
.menuBurger span:nth-child(2){
	top:24px;
}
.menuBurger span:nth-child(3){
	top:32px;
}
.activeMobile .menuOverlay .menuBurger {
	z-index: 999;
}
.activeMobile .menuOverlay .menuBurger span{
	transform: rotate(45deg);
	top:24px;
}
.activeMobile .menuOverlay .menuBurger span:nth-child(2){
	transform: rotate(-45deg);
}
@media (max-width: 781px){
	.activeMobile .menuOverlay .menuBurger{
		position: fixed;
		top:5px;
		right:5px;
	}
	.activeMobile .menuOverlay .leftColumn > .gb-container{
		background-color: var(--blackColor);
		padding: 50px;
	}
}

.menuOverlay #menu-menumain_fr-1{
	display:flex;
	list-style: none;
	margin: 0px;
}
.menuOverlay #menu-menumain_fr-1 li a{
	font-weight:bolder;
	color: var(--blackColor);
	text-decoration: none;
	text-transform: uppercase;
	padding: 10px 20px;
}

@media (max-width: 781px){
	.menuOverlay #menu-menumain_fr-1{
		flex-direction: column;
	}
	.menuOverlay #menu-menumain_fr-1 li a{
		text-transform:inherit;
		font-weight:inherit;
		display: block;
	}
}

.menuOverlay #menu-menuservices_fr-1{
	margin:0px;
	padding:0px;
	list-style:none;
	margin-top:20px;
}
.menuOverlay #menu-menuservices_fr-1 li a {
	color: var(--blackColor);
	text-decoration: none;
	padding: 10px 20px;
	display: block;
}

.menuOverlay #menu-menumain_fr-1 li.current-menu-item a, 
.menuOverlay #menu-menumain_fr-1 li.current-page-ancestor a, 
.menuOverlay #menu-menuservices_fr-1 li.current-menu-item a, 
.menuOverlay #menu-menuservices_fr-1 li.current-page-ancestor a{
	color: var(--whiteColor);
}

.menuOverlay #menu-menumain_fr-1, 
.menuOverlay #menu-menuservices_fr-1{
	margin-left:20px;	
}
/* .pageTitle */

@media (max-width: 781px){
	.pageTitle .alignRight, 
	.pageTitle .alignRight > .gb-container{
		align-items:flex-start !important;
	}
}
/* homepage */

.present{
	position: relative;
}
@media (min-width: 782px){
	.present:before{
		content:"";
		position: absolute; 
		top:0px;
		right:0px;
		width:30%;
		height:100%;
		background-color: var(--mainColor);
		z-index: 1;
	}
}

.present .gb-block-image {
	position:relative;
	z-index: 2;
}

.present .contentOver{
	position: relative;
	z-index: 3;
	padding-top:50px;
	padding-right:50px;
	padding-left:0px;
	background-color: var(--whiteColor);
}

@media (min-width: 782px){
	.present .contentOver{
		width:120%;
	}
}

/*.serviceHome */
.serviceHome{
	border-top:1px solid var(--cColor);
	border-bottom:1px solid var(--cColor);
}
.serviceHome .bgCover{
	position:relative;
	height:100%;
}
.serviceHome .bgCover:before{
	position: absolute; 
	top:0px;
	right:0px;
	width:300%;
	height:100%;
	background-color: var(--blackColor);
	z-index: 1;
	content: "";
}
.serviceHome .bgCover >*{
	position: relative;
	z-index: 2;
}

.serviceHome .bgCover .nav{
	display: flex;
	flex-direction: row;
}
.serviceHome .bgCover .nav > h2{
	width:50px;
	height:50px;
	border:1px solid var(--whiteColor);
	background-color: var(--blackColor);
	text-align:center;
	
}

.serviceHome .bgCover .nav > .next{
	background-color: var(--mainColor);
	border:1px solid var(--mainColor);
}
.serviceHome .serviceHomeSlider{
	overflow:hidden;
	overflow-x:auto;
}
.serviceHome .gb-grid-wrapper{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
}
.serviceHome .gb-grid-wrapper .gb-grid-column{
	position: relative;
}
.serviceHome .gb-grid-wrapper .gb-grid-column:after {
	background-color: var(--cColor);
	width:1px;
	height:200%;
	display: block;
	content: "";
	position: absolute; 
	top:-100px;
	right:0px;
}

.serviceHome .serviceHomeSlider::-webkit-scrollbar {
  display: none;
}
.serviceHome .serviceHomeSlider {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}


/* .choose */
.choose{
	overflow: hidden;
}
.choose .bgCover{
	position: relative;
	padding: 50px 0px;
	
}
.choose .bgCover:before{
	width:200%;
	height:100%;
	position: absolute; 
	top:0px;
	left:40%;
	background-color: var(--mainColor);
	content: "";
}
@media (max-width: 781px){
	.choose .bgCover:before{
		left:-50%;
		
	}
}
.choose .bgCover >*{
	position: relative; 
	z-index: 2;
}

.choose .chooseBox .title{
	color: var(--blackColor);
	cursor: pointer;
}
.choose .chooseBox .rep{
	display: none;
}
.choose .chooseBox.activeChoose .title{
	color: var(--whiteColor);
}
.choose .chooseBox.activeChoose .title .gb-highlight{
	color: var(--blackColor);
}
.choose .chooseBox.activeChoose .rep{
	display: block;
}


/*.servicePage */
.servicePage .gb-grid-column:nth-child(2n) .wp-block-columns {
	flex-direction:row-reverse;
}

/* .footer */
.footer .footerMenu{
	list-style: none;
	margin:0px;
	padding: 0px;
}
.footer .footerMenu li a {
	color: var(--whiteColor);
	text-decoration: none;
	display: block;
	padding: 10px 30px;
}
.footer .footerMenu li.current-menu-item a, 
.footer .footerMenu li.current-page-ancestor a{
	color: var(--mainColor);
}

@media (max-width: 781px){
	.footer .wp-block-columns .wp-block-column:nth-child(1){
		order:1;
	}
	.footer .wp-block-columns .wp-block-column:nth-child(2){
		order:3;
	}
	.footer .wp-block-columns .wp-block-column:nth-child(3){
		order:2;
	}
}