/*  Page styles  */

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body{
    font-family: 'Red Hat Text', sans-serif;
    background-color: rgb(34,22,15);
}

a {
  text-decoration: none;
  color: #000; }
  
.cl { clear: both; }

.clpad {
  clear: both;
  margin-top: 10px;
  margin-bottom: 15px;	
 }

.contact_sticky_btn {
	position: fixed;
	cursor: pointer;
	display: flex;
	padding: 20px 11px 10px; 
	flex-direction: column;	
	z-index: 5000;
	right: 0;
	top: calc(100vh - 170px);
	width: 8%;
	height: 170px;
	border-radius: 10px 0px 0px 0px;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#23382b+0,080d0a+100 */
    background: rgb(35,56,43); /* Old browsers */
    background: -moz-linear-gradient(top,  rgba(35,56,43,1) 0%, rgba(8,13,10,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(35,56,43,1) 0%,rgba(8,13,10,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(35,56,43,1) 0%,rgba(8,13,10,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#23382b', endColorstr='#080d0a',GradientType=0 ); /* IE6-9 */
	-webkit-box-shadow: 0px 4px 5px 0px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 4px 5px 0px rgba(0,0,0,0.75);
	box-shadow: 0px 4px 5px 0px rgba(0,0,0,0.75);
}

.contact_sticky_btn:hover {
	background: rgba(103,73,60,1);
}

.contact_sticky_btn .topline {
	color: #ece8dc;	
	font-size: 0.9em;
	font-weight: 500;
	letter-spacing: -1px;
	line-height: 0.8em;
}

.contact_sticky_btn .midline {
	color: #ece8dc;	
	font-size: 1.8em;
	font-weight: 700;
	letter-spacing: -1px;
	line-height: 1em;
	margin: 7px 0px;
}
	
.contact_sticky_btn .bottomline {
	color: #ece8dc;	
	font-size: 1em;
	font-weight: 500;
	letter-spacing: -1px;
	line-height: 1em;
}

.section_top-logo {
	width: 10%;
	height: 175px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-image: url("../images/layout/circle-logo.png");
}

.section_wrap {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.section_line-decoration {
	width: 97%;
	height: 12px;
	background-repeat: repeat-x;
	background-position: center;
	background-size: contain;
	background-image: url("../images/layout/line.png");
}

.section_circle-decoration {
	width: 1%;
	height: 12px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-image: url("../images/layout/circle.png");
}

.section_decoration {
	display: flex;
	justify-content: space-between;
	height: 12px;
}

.section_header_text {
	font-size: 1.8em;
	font-weight: 400;
	line-height: 1.1em;
	text-transform: uppercase;
	letter-spacing: -1px;
	padding: 0.5% 0%;
	width: auto;
	text-align: center;
}
.section_header {
	width: 88%;
	color: #ece8dc;	
	display: flex;
	flex-direction: column;
	height: auto;
	overflow: auto;
	margin-top: 10px;
}


/*---------------------------------------------------------------------------------------------*/
/*-------------   GRIDS                                           -----------------------------*/
/*---------------------------------------------------------------------------------------------*/

.pinmg1, .pinmg2 {
	width: 100%;
	min-height: 85vh;		
	position: relative;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	background-attachment: fixed;
	display: flex;
	justify-content: center;
	align-content: center;
}

.border1, .border2, .border3 {
	width: auto;	
	opacity: 0;	
	transition: all 270ms ease-in;
}

.js-border-animate {
	opacity: 1;
}

.contentblock {
	margin: 0;	
	width: 100%;
	min-height: 730px;
	height: auto;
	overflow: auto;
	padding: 80px 10%;	
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22160f+0,644638+5,644638+95,22160f+100 */
    background: rgb(34,22,15); /* Old browsers */
    background: -moz-linear-gradient(top,  rgba(34,22,15,1) 0%, rgba(100,70,56,1) 1%, rgba(100,70,56,1) 99%, rgba(34,22,15,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(34,22,15,1) 0%,rgba(100,70,56,1) 1%,rgba(100,70,56,1) 99%,rgba(34,22,15,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(34,22,15,1) 0%,rgba(100,70,56,1) 1%,rgba(100,70,56,1) 99%,rgba(34,22,15,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#22160f', endColorstr='#22160f',GradientType=0 ); /* IE6-9 */
	border-top: 3px solid #120c07; 
	border-bottom: 3px solid #120c07; 
}

.contentblock .page_wrap {
	width: 100%;	
	display: flex;
	justify-content: space-between;
	height: auto;
	overflow: auto;
}

.contentblock .page_wrap .page_text {
	width: 85%;
	text-align: left;
	font-size: 1.3em;
	line-height: 1.2;
	padding: 0px 0px 0px 12%;
}

.contentblock .page_wrap .page_image {
	width: 10%;
	height: 100px;
}


.testimonialblock {
	margin: 0;	
	background-color: #fff;
	width: 100%;
	min-height: 730px;
	height: auto;
	overflow: auto;
	padding: 10px 0%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	-webkit-box-shadow: inset 0px -26px 59px 13px rgba(0,0,0,0.61);
	-moz-box-shadow: inset 0px -26px 59px 13px rgba(0,0,0,0.61);
	box-shadow: inset 0px -26px 59px 13px rgba(0,0,0,0.61);
	border-bottom: 2px #000 solid;
}

.testimonialblock .page_text {
	width: 100%;
	font-size: 1.3em;
	line-height: 1.2;
}

.cta_wrap {
	width: 100%;
	height: auto;
	overflow: auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 80px 10%;
	z-index: 500;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22160f+0,644638+5,644638+95,22160f+100 */
    background: rgb(34,22,15); /* Old browsers */
    background: -moz-linear-gradient(top,  rgba(34,22,15,1) 0%, rgba(100,70,56,1) 5%, rgba(100,70,56,1) 99%, rgba(34,22,15,1) 100%); /* FF3.6-15 */  
    background: -webkit-linear-gradient(top,  rgba(34,22,15,1) 0%,rgba(100,70,56,1) 5%,rgba(100,70,56,1) 99%,rgba(34,22,15,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(34,22,15,1) 0%,rgba(100,70,56,1) 5%,rgba(100,70,56,1) 99%,rgba(34,22,15,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#22160f', endColorstr='#22160f',GradientType=0 ); /* IE6-9 */
	border-top: 3px solid #120c07; 
	border-bottom: 3px solid #120c07; 
}


.cta_wrap .page_text {
	width: 100%;
	text-align: left;
	font-size: 1.3em;
	line-height: 1.2;
	padding: 0px 0px 0px 12%;
}

/*----------------------------------------------------------------------------------------*/
/* 	HEADER                                                                                */      
/*----------------------------------------------------------------------------------------*/

.hbg {
	width: 100%;
	height: 80px;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 4000;	
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
	background-image: url("../images/layout/headerbg.jpg");
}

.header {
	width: 100%;
	height: 80px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	top: 0px;
	left: 0px;
	padding: 0px 5%;
	z-index: 5000;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#67493c+0,35221b+25,150c0a+100 */
    background: rgb(103,73,60); /* Old browsers */
    background: -moz-linear-gradient(top,  rgba(103,73,60,0.7) 0%, rgba(53,34,27,0.7) 25%, rgba(21,12,10,0.7) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(103,73,60,0.7) 0%,rgba(53,34,27,0.7) 25%,rgba(21,12,10,0.7) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(103,73,60,0.7) 0%,rgba(53,34,27,0.7) 25%,rgba(21,12,10,0.7) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#67493c', endColorstr='#150c0a',GradientType=0 ); /* IE6-9 */
	border-bottom: 5px solid #110a08;
    border-top: 2px solid #745140;	
	
}

.header .toplogo {
	width: 16%;
}

.header .navbar {
	width: 70%;
	height: 80px;
	display: flex;
	justify-content: space-around;
	font-weight: 400 !important;
	text-transform: uppercase;
	align-items: center;
	font-size: 1.2em;
}

.header .navbar .menu_item a {
	width: auto;
	color: #ece8dc;		
	margin: 0px 2%;
}

.header .navbar .menu_item a:hover {
	color: #d88c29;

}

.selected_menu {
	color: #d88c29 !important;
	font-weight: 500;
}

.header .contactside {
	width: 16%;
	height: 40px;
	line-height: 40px;
	color: #ece8dc;	
	display: flex;
	justify-content: flex-end;
	font-size: 1.4em;
	font-weight: 600;
}

.header .contactside .fas {
	margin-right: 10px;
	margin-top: 5px;
	font-size: 1.2em;
}


.contact_wrap {
	width: 100%;
	display: flex;
	justify-content: space-between;
    height: auto;
    overflow: auto;
	padding: 0px 0px 0px 12%;
}

.contact_wrap .form_side {
	width: 55%;	
}

.contact_wrap .address_block {
	width: 46%;
	align-self: center;
	display: flex;
	flex-direction: column;
	height: auto;
	overflow: auto;
	padding-bottom: 5px;
}

.contact_wrap .address_block .title {
	width: 100%;
	font-size: 2em;
	font-weight: 500;
	margin-bottom: 10px;
}

.contact_wrap .address_block .socialline {
	font-size: 2em;
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;	
}

.social_btn {
	cursor: pointer;
}

.social_btn:hover {
	color: #3e2c23;	
}

.contact_wrap .address_block .address_label {
	font-size: 1em;
	line-height: 1.2em;
}

.contact_wrap .address_block .phone_label {
	font-size: 1.4em;
	line-height: 1.2em;
}


.max_wrap {
	width: 100%;
}

.services_wrap {
	width: 100%;
	display: flex;
	flex-direction: column;
	margin: 20vh 40vw 0px 10%;
}

.services_wrap .service_line {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin-top: 8px;
}

.services_wrap .service_line .service_name {
	font-size: 1.7em;
	height: 1.2em;
	width: 70%;
	font-weight: 700;
}

.services_wrap .service_line .service_price {
	font-size: 1.7em;
	height: 1.2em;
	width: 30%;
	font-weight: 700;
	text-align: right;
}

.footer {
	width: 100%;
	height: auto;
	overflow: auto;
	color: #ece8dc;	
}

.footer .copyright {
	background-color: #000000;
	text-align: center;
	font-size: 0.6em;
	height: 28px;
	line-height: 28px;
	margin-bottom: 30px;
}

.footer .copyright a {
	color: #ece8dc;	
}

.footer .copyright a:hover {
	color: #d88c29;
}

.header .mobile_nav {
	display: none;
	width: 100%;
	position: absolute;
	z-index: 1000;
	top: 12px;
	left: 0px;
	justify-content: center;
	align-items: center;
	height: 65px;	
}

.header .mobile_nav .fas {
	font-size: 2.5em;
	padding-left: 3%;
	color: #ece8dc;	
}

.header .mobile_wrap {
	position: absolute;
	display: none;
	z-index: 1000;	
	top: 55px;
	left: 0px;
	width: 100%;
	padding-bottom: 10px;
	border-bottom: 2px #999 solid;
	height: auto;
	overflow: auto;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: rgba(255,255,255,0.95);
}

.header .mobile_wrap .menu_item {
	width: 100%;
	text-align: center;
	font-size: 1.5em;
	line-height: 1.2em;
	padding: 5px 15px;
	border-radius: 5px;
}

.header .mobile_wrap .menu_item a {
	color: #000;
	padding: 5px 15px;
	border-radius: 5px;
}

.header .mobile_wrap .menu_item a:hover {
	color: #fff;
	padding: 5px 15px;
	border-radius: 5px;
	background-color: #402b2b; 
}




#gmap {
	margin-top: 50px;
	width: 106%;
	height: 400px;
	border-radius: 10px;
	border: 2px #543b2f solid;
}

.page_container {
	width: 100%;
	height: auto;
	overflow: auto;
	padding: 200px 10% 10% 10%;
	min-height: calc(100vh - 58px);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	background-image: url("../images/pagebg.jpg");
}

.page_container .page_wrap {
	padding: 2%;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22160f+0,644638+5,644638+95,22160f+100 */
    background: rgb(34,22,15); /* Old browsers */
    background: -moz-linear-gradient(top,  rgba(34,22,15,1) 0%, rgba(100,70,56,1) 1%, rgba(100,70,56,1) 99%, rgba(34,22,15,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(34,22,15,1) 0%,rgba(100,70,56,1) 1%,rgba(100,70,56,1) 99%,rgba(34,22,15,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(34,22,15,1) 0%,rgba(100,70,56,1) 1%,rgba(100,70,56,1) 99%,rgba(34,22,15,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#22160f', endColorstr='#22160f',GradientType=0 ); /* IE6-9 */
	border-top: 3px solid #120c07; 
	border-bottom: 3px solid #120c07; 
	-webkit-box-shadow: 0px -9px 11px -6px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px -9px 11px -6px rgba(0,0,0,0.75);
	box-shadow: 0px -9px 11px -6px rgba(0,0,0,0.75);
}

.page_container .page_wrap .page_text {
	width: 100%;
	text-align: left;
	font-size: 1.3em;
	line-height: 1.2;
	padding: 0px 0px 30px 12%;
}

.home_contact_wrap {
	width: 100%;
	text-align: left;
	padding: 15px 0px 0px 12%;	
}

.home_contact_wrap .title {
	width: 100%;
	font-size: 2em;
	font-weight: 500;
	margin-bottom: 10px;
}

.home_contact_wrap .socialline {
	font-size: 2em;
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;	
}

.home_contact_wrap .address_label {
	font-size: 1.3em;
	line-height: 1.2em;
}

.home_contact_wrap .phone_label {
	font-size: 1.5em;
	line-height: 1.2em;
}



/*************************************
	FORMS - NORMAL
*************************************/

.form_comment {
	width: 100%;
	min-height: 60px;
	height: auto;
	overflow: auto;
}

.form_wrap {
	width: 50%;
}

.form-block {
	display: flex;
	flex-direction: column;
	background-color: #543b2f;
	width: 100%;
	height: auto;
	overflow: auto;
	border-radius: 5px;
	padding: 2%;
}

.form-block-nb {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	width: 100%;
	height: auto;
	padding: 1% 0%;
}

.form-block .form-title {
	width: 100%;
	font-size: 1.8em;
    color: #224757;
    font-weight: 600;
    padding-bottom: 10px;
    line-height: 1em;
    letter-spacing: -1px;
    word-spacing: -1px;		
}

.form-block .form-row {
  width: 100%;
  padding: 5px 0px;	 
  display: flex;
  flex-direction: row;
  align-items: center;	
}

.form-block .form-row .form-label {
    color: #ece8dc;	
    font-size: 1.2em;
	font-weight: 500;
	letter-spacing: -1px;
    width: 28%;
	text-align: right;
	padding-right: 2%;
}

.form-block .form-row .form-input {
    width: 70%;
}

.form-block .form-row .form-input input {
     font-size: 1.1em;
     color: #ece8dc;	
     border: thin solid #ece8dc;
	 border-radius: 5px;
	 background: #775c46;
     padding: 5px 2%;
     width: 100%;
}

.form-block .form-row .form-input textarea {
     font-size: 1.2em;	
     color: #ece8dc;	
	 background: #775c46;	
  	 font-family: 'Red Hat Text', sans-serif;	
     padding: 5px 2%;	
     width: 100%;	
     border: thin solid #ece8dc;
	 border-radius: 5px;
}


.form-block .form-row .form-input select {
     font-size: 1.1em;
     border: thin solid #aaa;
	 border-radius: 5px;
	 background: #fff;
     padding: 4px 2%;
     width: 100%;
}

.form-block-nb .g-recaptcha {
	width: 50%;
}

.form-block-nb input[type="submit"] {
	width: 50%;
    text-align: center;
    font-size: 1.4em;
    font-weight: 600;
    color: #ece8dc;	
    line-height: 1em;
    height: 76px;
    cursor: pointer;
	border: none;
    padding: 0;
    background-color: #543b2f;
	border-radius: 5px;
    -moz-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.form-block-nb input[type="submit"]:hover {
	background-color: #3e2c23;
}


.form-block .form-row .form-input input.invalid, .form-block .form-row .form-input select.invalid, .form-block .form-row .form-input textarea.invalid {
        background: #FFD4D5;
}

.overlay {
	width: 100vw;
	height: 100vh;
	position: fixed;
	display: flex;
	background-color: rgba(0,0,0,0.65);
	z-index: 5000;
	justify-content: center;
	align-items: center;
	top: 0px;
	left: 0px;
}

.overlay .message_box {
	width: 60%;
	height: auto;
	overflow: auto;
	padding-bottom: 20px;
	display: flex;
	flex-direction: column;
	background-color: #ddd;
	border-radius: 8px;
	padding: 4%;
	justify-content: center;
}

.overlay .message_box .headline {
	width: 100%;
	font-size: 2em;
	font-weight: 700;
	color: #1F130B;
	margin-bottom: 15px;
}

.overlay .message_box .message_paragraph {
	width: 100%;
	font-size: 1.2em;
	font-weight: 400;
	color: #1F130B;
	margin-bottom: 15px;
	height: auto;
	overflow: auto;
}

.overlay .message_box .message_paragraph p {
	font-size: 1.2em;
	font-weight: 400;
	color: #1F130B;
}


.overlay .message_box .close_btn {
	width: auto;
	padding: 8px;
	background-color: #160E0E;
	color: #ece8dc;
	font-size: 1.4em;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 50px;
	border-radius: 5px;
	margin-top: 15px;cursor: pointer;
}