/*
Theme Name: Divi Child Template
Version: 1.0
Description: A customized version of Divi which adds a number of tiny features you need.
Template: Divi
*/

/* -----------------------------------------------------------------------
* Base Style
* ----------------------------------------------------------------------- */
body {
	font-family: 'Montserrat', sans-serif;
}

h1 span {
	color: #272727;
}
/*
* H1 title tags sizing
*/
@media (min-width:981px) {
	h1.entry-title {
		font-size: 32px;
	}
}
@media (max-width:980px) {
	h1.entry-title {
		text-align: center;
		font-size: 26px;
	}
}
blockquote {
	border-left: none !important;
	padding-left: 0;
}

.wpcr3_item_name a {
	color: #0D396A!important;
}

.entry-title.main_title {
	font-family: 'Montserrat', sans-serif;
	font-weight: bold;
}

.button {
	position: relative;
	display: inline-block;
	background: #F2E908;
	font-weight: 600;
	text-transform: uppercase;
	text-shadow: none;
	border: 2px solid #CC270B;
	color: #000000;
	padding: 16px 22px 16px;
	margin-top: 40px;
	margin-bottom: 100px;
	transition: 0.3s ease-in-out;
}
.button:hover {
	background: #000;
	color: #fff;
	box-shadow: 0 0 10px 2px rgba(255,255,255,0.5);
}
.content-title {
	border-bottom: 1px solid #dadada;
	padding-bottom: 20px;
}

#location strong {
	color: #fff;
}

#servcss {
	list-style-type: none;
	padding: 0;
}

#servcss li {
	margin-bottom: 0.5em;
}


/* -----------------------------------------------------------------------
* Header Style
* ----------------------------------------------------------------------- */
/* Top header */
#main-header {
	background-color: #000;
}

#main-header .contact-info {
	margin-top: 24px;
	margin-bottom: 10px;
	transition: 0.3s;
}

#main-header .contact-info a, #main-header .contact-info span {
	display: inline-block;
	font-size: 16px;
	font-weight: 600;
	color: #fff;
	line-height: 0;
	transition: 0.4s ease-in-out;
}

#main-header .contact-info a:hover {
	color: #F2E908!important;
}

#main-header .contact-info .email-us {
	margin-right: 20px;
	margin-left: 20px;
}

#main-header .fa {
	position: relative;
	top: -5px;
	left: -10px;
	width: 25px;
	height: 40px;
	color:#F2E908;
	border-radius: 50%;
	font-size: 15px;
	padding-top: 11px;
	transition: 0.3s;
}

#main-header .fa-volume-control-phone {
	font-size: 18px;
	padding-top: 10px;
}

#main-header .fa-envelope {
	font-size: 17px;
}

#main-header .contact-info a em, #main-header .contact-info span em {
	display: block;
	color: #fff;
	font-style: initial;
	text-align: left;
	position: relative;
	left: 26px;
	font-size: 14px;
	font-weight: 400;
}

/* Logo */
.logo_container {
	height: 100%!important;
	position: absolute;
	width: 100%;
	text-align: left;
}
.et-fixed-header .logo_container, .logo_container {
	padding: 0;
}

.text-logo {  
	position: relative;
	top: 10px;
	display: inline-block;
	color: #000;
	text-shadow: 2px 1px 0 #dadada, 2px 2px 2px #353535;
	font-size: 36px;
	font-weight: bold;
	line-height: 32px;
	text-transform: uppercase;  
	transition: 0.3s;
}

.text-logo:hover {
	transform: skew(-10deg);
}

.comp-name {
	color: #000;
	transition: 0.4s ease-out;
}

.comp-name:hover {
	text-decoration: underline;
}

/* Navigation */
#et-top-navigation {
	background: #000;  
}

#top-menu li {
	padding-right: 0px;
	margin-right: -3px;
}

#top-menu > li > a {
	position: relative;
	padding: 25px!important;
	font-weight: 500;
}

#top-menu li a:before {
	position: absolute;
	content: '\f1b9';
	top: 39%;
	left: 0;
	font-family: 'FontAwesome';
	color: #CC270B;
	transition: 0.4s ease-in-out;
}

#top-menu li a:hover::before {
	transform: scale(1.18);
	color: #F2E908;
}

#top-menu li a:hover {
	padding-left: 30px;
}

#top-menu li a:hover, #top-menu .current-menu-item > a {
	opacity: 1!important;
}

@media (min-width: 981px) {
	.image-logo #main-header .logo_container {
		max-width: 40%;
		float: left !important;
		margin: 5px 0;
		text-align: left;
	}
	.image-logo #main-header .contact-info,
	.image-logo #main-header.et-fixed-header .contact-info {
		width: 50% !important;
		float: right !important;
		margin: 0;
		margin-top: 10px;
		transition: all 0.4s ease-in-out;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.image-logo #main-header .contact-info a,
	.image-logo #main-header .contact-info span {
		display: block;
		margin: 10px 0 !important;
		text-align: left;
	}
	.image-logo #main-header .contact-info .email-us {
		float: left;
	}
	.image-logo #main-header .fa {
		position: relative;
		left: -10px;
		width: 40px;
		height: 40px;
		font-size: 22px;
		padding-top: 8px;
		padding-left: 8px;
	}
	.image-logo .fa-phone {
		padding-left: 10px !important;
	}
}
#logo {
	max-height: 100px !important;
}
.et-fixed-header #logo {
	max-height: 100px !important;
}
@media (max-width: 980px) {
	.et-fixed-header #logo {
		max-height: 100px !important;
	}
	.image-logo .logo_container {
		max-height: unset !important;
	}
}

/* mobile */
.mobile_menu_bar::before {
	color: #fff!important;
}

#et_mobile_nav_menu, .et_header_style_centered #main-header .mobile_nav {
	background: #000!important;
}

.et_mobile_menu {
	padding: 2% 5%;
}

#mobile_menu {
	border-top: 1px solid #F2E908!important;
	background: #000!important;
	text-align: center;
}

/* Scroll Down Button */
.scroll-down-btn {
	z-index: 99999;
	position: absolute;
	bottom: 35px;
	text-align: center;
	margin: 0 auto;
	left: 0;
	right: 0;
	-moz-animation: bounce 2s infinite;
	-webkit-animation: bounce 2s infinite;
	animation: bounce 2s infinite;
}

.scroll-down-btn:hover {
	opacity: 0.8;
}

/* -----------------------------------------------------------------------
* Sidebar Style
* ----------------------------------------------------------------------- */
.widgettitle {
	position: relative;
	color: #272727!important;
	font-size: 18px;
	font-weight: 600;
	padding-bottom: 15px;
	margin-bottom: 25px;
	border-bottom: 1px solid #eee; }

.widgettitle:before {
	position: absolute;
	content: "";
	display: block;
	bottom: -1px;
	left: 0;
	width: 35px;
	height: 2px;
	background-color: #0D396A; }

#sidebar {
	color: #343434;
}

#sidebar > .widgettitle + .textwidget br:nth-child(4), #sidebar > .widgettitle + .textwidget br:nth-child(5) {
	display: none;
}

#sidebar #servcss li {
	position: relative;
	color: #666;
	transition: 0.4s ease-in-out;
}


#servcss svg {
	display: none;
}

/* -----------------------------------------------------------------------
* Services Section Style
* ----------------------------------------------------------------------- */
#section-1 .et_pb_column_1_4 {
	background-color: #fff;
	padding-top: 40px;
	padding-bottom: 38px;
	box-shadow: 0 0 5px rgba(205,205,205,0.7);
	transition: 0.4s ease-in-out;
}

#section-1 .et_pb_column_1_4:hover {
	box-shadow: 0 0 20px rgb(205,205,205);
	transform: scale(1.03);
}

#section-1 .et_pb_column_1_4 h4 {
	position: relative;
	color: #000!important;
	font-weight: 500!important;
	font-size: 16px!important;
	text-transform: uppercase!important;
	padding: 0 10px;
}

#section-1 .et_pb_column_1_4 h4:before {
	position: absolute;
	content: "";
	bottom: -10px;
	left: 45%;
	width: 20px;
	height: 2px;
	background-color: #000;
}

#section-1 .et_pb_column_1_4 .et_pb_main_blurb_image {
	margin-bottom: 20px;
}

#section-1 .et_pb_column_1_4 .et_pb_main_blurb_image img {
	width: 85px;
	padding: 20px;
	transition: 0.3s ease-in-out;
	background-color: #000;
}

/* -----------------------------------------------------------------------
* Testimonial
* ----------------------------------------------------------------------- */

.home-testimonial .heading {
	position: relative;
	font-size: 30px;
	font-weight: bold;
	line-height: 40px;
}

.home-testimonial blockquote {
	border: 0;
	margin-bottom: 20px;
	padding-left: 0;
}

.home-testimonial div.wpcr3_review div.wpcr3_review_title, .home-testimonial div.wpcr3_dotline {
	display: none!important;
}

.home-testimonial .wpcr3_item_name a {
	color: #fff!important;
}

.home-testimonial .learn-more a {
	background: transparent;
	border: 2px solid #F2E908;
	color:#F2E908;
	text-transform: uppercase;
	padding: 13px 18px 11px;
	font-size: 14px;
	transition: 0.3s ease-out;
}

.home-testimonial .learn-more a:hover {
	background:#000;
	border-color:#f2e908;
	color:#fff;
}
/***** TESTIMONIALS FORM *****/
.wpcr3_respond_2 input[type="text"] {
	margin: 3px 0;
}
.wpcr3_table_2 td {
	font-size: 1em !important;
}
.wpcr3_leave_text {
	font-size: 1.1em;
}
.wpcr3_leave_text {
	margin-bottom: 20px;
}
@media (min-width: 981px) {
	.wpcr3_respond_2 input[type="text"],
	.wpcr3_respond_2 textarea {
		min-width: 100%;
	}
	.wpcr3_table_2 td {
		text-align: left !important;
	}
	.wpcr3_review_form_rating_field label {
		margin: 6px 0 !important;
	}
	.wpcr3_button_1 {
		margin-top: 10px;
	}
}
@media (max-width: 980px) {
	.wpcr3_respond_3,
	.wpcr3_aggregateRating,
	.wpcr3_table_2 td {
		text-align: center !important;
	}
	.wpcr3_div_2 {
		width: 100%;
	}
	.wpcr3_table_2 tr:last-of-type td {
		margin: 20px auto 0 !important;
	}
	.wpcr3_table_2 td {
		display: block;
		padding: 0 !important;
	}
	.wpcr3_table_2 td:first-child {
		margin-top: 10px !important;
		padding: 0;
	}
	.wpcr3_rating_style1_status {
		width: 85px !important;
	}
	.wpcr3_respond_2 input[type="text"],
	.wpcr3_in_content textarea {
		width: 100% !important;
		min-width: unset !important;
	}
	.wpcr3_submit_btn, .wpcr3_cancel_btn {
		width: 40%;
	}
}


/* -----------------------------------------------------------------------
* Get a Free Estimate Style
* ----------------------------------------------------------------------- */
#location h3 {
	font-size: 20px;
	color: #fff !important;
	line-height: 30px;
}

.free-estimate-heading {
	position: relative;
	color: #fff!important;
	font-weight: 600;
	line-height: 40px;
	font-size: 40px;
	padding-left: 8px; }

textarea {
	resize: none;
}

#contactForm input[type=text],
#contactForm input[type=password],
#contactForm input[type=tel],
#contactForm input[type=email],
#contactForm input.text,
#contactForm input.title,
#contactForm textarea,
#contactForm select {
	background-color: transparent;
	border-style: none none solid;
	border-width: 1px;
	border-color: #fff #fff #fff;
	color: #fff!important;
	padding: 15px 2px;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	line-height: 1.42857143;
	margin: 10px 0px!important;
	border-radius: 2px;
	transition: 0.3s linear;
	width: 100% !important;
}

#contactForm input[type=text]::placeholder,
#contactForm input[type=password]::placeholder,
#contactForm input[type=tel]::placeholder,
#contactForm input[type=email]::placeholder,
#contactForm input.text::placeholder,
#contactForm input.title::placeholder,
#contactForm textarea::placeholder,
#contactForm select::placeholder {
	color: #fff!important;
}

#contactForm input[type=text]:focus,
#contactForm input[type=password]:focus,
#contactForm input[type=tel]:focus,
#contactForm input[type=email]:focus,
#contactForm input.text:focus,
#contactForm input.title:focus,
#contactForm textarea:focus,
#contactForm select:focus {
	opacity: 1;
	border-bottom-color: #000; 
}

#contactForm div:nth-child(5) img {float: left; margin-top: 5px;}
#contactForm div:nth-child(5) input {
	float: right;
	width: 50% !important;
	height: 50px;
	margin: 0 !important;
}

#submitter {
	font-size: 16px;
	padding: 20px 30px;
	font-weight: 700 !important;
	color: #000;
	cursor: pointer;
	height: auto !important;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	-o-border-radius: 0px;
	background: #F2E908;
	border: 2px solid #F2E908;
	border-radius: 2px;  
	margin-top: 35px!important;
	overflow: hidden;
	transition: 0.3s;
	width: 100% !important;
}

#submitter:hover {
	background: #000;
	color: #fff;
}

#services ul li {
	position: relative;
	padding-left: 25px;
	font-size: 20px;
}
.home #services ul li {
	color:#fff;
}
#services ul li:before {
	position: absolute;
	content: "\f00c";
	left: 0;
	font-family: 'FontAwesome';
	color: #fff;
}


/* -----------------------------------------------------------------------
* Footer Style
* ----------------------------------------------------------------------- */
#main-footer {
	border-top:5px solid #cc270b;
	background-color: #000 !important;
	padding-top: 30px;
}

#main-footer #footer-widgets {
	margin-bottom: 30px;    
}

@media (max-width:980px) {
	#footer-widgets {
		padding: 5% !important;
	}
}

#main-footer .footer-widget {
	color: #fff!important;
}

#main-footer #footer-widgets .footer-widget:nth-child(2) > div {
	width: 100%;
}

#main-footer h4 {
	position: relative;
	color: #fff!important;
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	font-weight: 600;
	text-transform: uppercase;
	padding-bottom: 15px;
	margin-bottom: 15px;
}

#main-footer h4:before {
	position: absolute;
	content: "";
	bottom: 0;
	left: 0;
	height: 2px;
	width: 30px;
	background: #fff;
}

.openinghours tr td:first-child {
	padding-left: 5px!important;
}

.openinghours tr td:last-child {
	text-align: right!important;
	padding-right: 5px!important;
}

#current-day {
	background-color:#F2E908;
}

#current-day td {
	color:#000!important;
	font-weight: 600!important;
}

#text-7 .textwidget br,
#text-7 .textwidget strong {
	display: none;
}

.hours th,
td {
	text-align: left !important;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px !important;
	font-weight: 400!important;
	text-shadow: none !important;
}

.openinghours td, .hours th {
	color: #fff!important;
}

#footer-bottom {
	padding: 22px 0 18px;
	background: #000 !important;
	font-size: 16px;
	line-height: 18px;
	color: #fff;
}

/* -----------------------------------------------------------------------
* Animation Style
* ----------------------------------------------------------------------- */
/* Bounce */
@-moz-keyframes bounce {
	0%,
	20%,
	50%,
	80%,
	100% {
		-moz-transform: translateY(0);
		transform: translateY(0);
	}
	40% {
		-moz-transform: translateY(-30px);
		transform: translateY(-30px);
	}
	60% {
		-moz-transform: translateY(-15px);
		transform: translateY(-15px);
	}
}

@-webkit-keyframes bounce {
	0%,
	20%,
	50%,
	80%,
	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	40% {
		-webkit-transform: translateY(-30px);
		transform: translateY(-30px);
	}
	60% {
		-webkit-transform: translateY(-15px);
		transform: translateY(-15px);
	}
}

@keyframes bounce {
	0%,
	20%,
	50%,
	80%,
	100% {
		-moz-transform: translateY(0);
		-ms-transform: translateY(0);
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	40% {
		-moz-transform: translateY(-30px);
		-ms-transform: translateY(-30px);
		-webkit-transform: translateY(-30px);
		transform: translateY(-30px);
	}
	60% {
		-moz-transform: translateY(-15px);
		-ms-transform: translateY(-15px);
		-webkit-transform: translateY(-15px);
		transform: translateY(-15px);
	}
}

/* Phone Ring Icon */
.ring {
	display: inline-block;
	-webkit-animation: Ringing 2000ms linear 2000ms infinite;
	animation: Ringing 2000ms linear 2000ms infinite; }

@-webkit-keyframes Ringing {
	0% {
		-webkit-transform: rotate(0deg); }
	4% {
		-webkit-transform: rotate(-45deg);}
	8% {
		-webkit-transform: rotate(0deg); }
	12% {
		-webkit-transform: rotate(-45deg);}
	16% {
		-webkit-transform: rotate(0deg); }
	20% {
		-webkit-transform: rotate(-45deg);}
	24% {
		-webkit-transform: rotate(0deg); }
	100% {
		-webkit-transform: rotate(0deg); } }

@keyframes Ringing {
	0% {
		transform: rotate(0deg); }
	4% {
		transform: rotate(-45deg);}
	8% {
		transform: rotate(0deg); }
	12% {
		transform: rotate(-45deg);}
	16% {
		transform: rotate(0deg); }
	20% {
		transform: rotate(-45deg);}
	24% {
		transform: rotate(0deg); }
	100% {
		transform: rotate(0deg); } }

/* Pulsing */
.pulsing {
	display: inline-block;
	animation: color-cycle 1.5s infinite;
	-webkit-animation: color-cycle 1.5s infinite;
	-moz-animation: color-cycle 1.5s infinite;
	-o-animation: color-cycle 1.5s infinite;

}

@keyframes color-cycle {
	0% {
		color: #fff;
	}
	50% {
		color: #2ECC71;
	}
	100% {
		color: #fff;
	}
}

/* Beat */
@keyframes beat {
	0% {
		transform: scale(1);
	}
	50% {
		transform: scale(1.03);
	}
	100% {
		transform: scale(1);
	}
}

.beat {
	animation: beat 1s infinite;
	-webkit-animation: beat 1s infinite;
	-moz-animation: beat 1s infinite;
	-o-animation: beat 1s infinite;
}

/* linear wipe */
.linear-wipe {
	background: linear-gradient(to right, #FFF 20%, #F8CF29 40%, #F8CF29 60%, #FFF 80%);
	background-size: 200% auto;  
	background-clip: text;
	text-fill-color: transparent;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;  
	animation: shine 3s linear infinite;
	padding: 10px 0;
}

@keyframes shine {
	to {
		background-position: 200% center;
	}
}

/* -----------------------------------------------------------------------
* Helper Style
* ----------------------------------------------------------------------- */
.pull-right { float: right!important; }
.pull-left { float: left!important; }

/* -----------------------------------------------------------------------
* Media Queries Style
* ----------------------------------------------------------------------- */
@media (max-width: 980px) { 
	#top-header .pull-left {
		margin-top: 12px;
	}

	#et-top-navigation {
		padding-top: 0;
		padding-bottom: 0;
	}

	.et_header_style_centered #main-header {
		padding-bottom: 0!important;
	}

	#mobile_menu {
		top: 33px;
		border-top: 0;
	}

	#main-header .contact-info {
		margin-top: 5px;
		float: none !important;
	}

	#main-header .contact-info a, #main-header .contact-info span {
		font-size: 14px;
	}

	#main-header .fa {
		top: 0;
		width: auto;
		height: auto;
		border: 0;
		font-size: 14px;
	}

	#main-header .contact-info a em, #main-header .contact-info span em {
		display: none;
	}

	#home-testimonial-wrapper {
		background-position-x: right;
	}

	.home-testimonial .wpcr3_item_name a, .home-testimonial .heading, .home-testimonial .et_pb_text {
		text-align: center;
	}

	#section-1 .et_pb_column_1_4:hover {
		transform: none;
	}

	#services {
		margin-bottom: 20px;
	}

}

@media (max-width: 900px) { 
	.scroll-down-btn {
		bottom: 30px;
		width: 60px;
	}
}

@media (max-width: 768px) { 
	.logo_container {
		position: static;
		text-align: center;
	}

	.text-logo {
		margin-bottom: 15px;
	}
}

@media (max-width: 600px) { 
	#main-header .contact-info a, #main-header .contact-info span {
		display: block;
		line-height: 20px;
	}
}

@media (max-width: 500px) { 
	#contactForm div:nth-child(5) img {
		float: none;
		display: block;
		margin: 0 0 10px;
		width: 100%;
	}

	#contactForm div:nth-child(5) input {
		float: none;
		width: 100% !important;
	}

	.home-testimonial .heading:before {
		content: none;
	}

}

@media screen and (max-width: 425px) {
	.et_pb_slide_description {
		width: 400px;
		padding: 60px 25px 100px 0;
		line-height: 1.1em;
	}	

	.et_pb_slider .et_pb_slide_0.et_pb_slide .et_pb_slide_description h2.et_pb_slide_title {
		font-size: 35px!important;
		line-height: normal;
	}
}

@media screen and (max-width: 400px) {
	#top-header .pull-left, #top-header .pull-right {
		float: none !important;
		text-align: center;
	}

	#top-header .pulsing {
		margin-top: 7px!important;
	}
}

@media screen and (max-width: 375px) {
	.et_pb_slider .et_pb_slide_0.et_pb_slide .et_pb_slide_description h2.et_pb_slide_title {
		font-size: 30px!important;
		line-height: 1.1em;
	}
}

/***** BODY FONT-SIZE *****/
body,
div.wpcr3_review blockquote.wpcr3_content p {
	font-size: 17px !important;
}
/***** CENTER SLIDE DESCRIPTION/BUTTON *****/
@media (max-width: 600px) {
	.et_pb_slide_description {
		width: 100% !important;
		padding: 0 !important;
		margin-top: 20px;
	}
	.et_pb_slides .et_pb_container {
		width: 100%;
	}
	.home .et_pb_text {
		text-align: center;
	}
}
/***** SET MONARCH SHARE DROPDOWN WIDTH *****/
.et_monarch .et_social_mobile {
	width: 65% !important;
}
/***** FIX DROPDOWN ARROW POSITION *****/
.menu-item-has-children>a:after {
	top: unset !important;
	right: 8px !important;
}
/***** FIX DROPDOWN *****/
#top-menu .sub-menu {
	padding: 0 !important;
	width: unset !important;
	border-top: 3px solid #ddd !important;
	background: #000 !important;
}
#top-menu .sub-menu li {
	border-left: 0 !important;
	padding: 0 !important;
}
#top-menu .sub-menu li a {
	border-left: 0 !important;
}
.et_mobile_menu .sub-menu {
	border: none !important;
}
#top-menu .sub-menu li a:before {
	display: none;
}
/***** FIX MENU SIZING *****/
header .container {
	max-width: 1250px;
	width: 100%;
}
@media (min-width: 981px) and (max-width: 1350px) {
	header .container {
		margin: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}
header li a {
	font-size: 15px !important;
}
/***** Cleaning template menu fix *****/
@media (min-width:981px) {
	.logo_container {
		margin-top: 5px;
		position: static;
		text-align: center;
	}
	#main-header .contact-info {
		float: none !important;
		margin: 20px 0 10px;
	}
	#main-header .fa {
		top: 0;
	}
	#main-header .contact-info a em,
	#main-header .contact-info span em {
		display: none;
	}
	header>.container.clearfix.et_menu_container {
		padding: 0 10px;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	#et-top-navigation {
		border-top: 2px solid #000;
		border-bottom: 2px solid #000;
	}
	#main-header.et-fixed-header .contact-info {
		margin: 10px 0 0px;
	}
	.et-fixed-header #top-menu li a,
	.image-logo #top-menu li a {
		position: relative;
		padding: 17px 25px!important;
	}
}
@media (max-width:980px) {
	.logo_container {
		position: relative;
		text-align: center;
		padding: 0 10px !important;
	}
	.text-logo {
		font-size: 28px;
		line-height: 30px;
		display: inline;
		top: 0;
	}
}
/***** CENTER TEXT ON MOBILE *****/
@media (max-width: 980px) {
	.home #services .et_pb_text_inner {
		text-align: center;
	}
	.et_pb_text {
		text-align: center;
	}
	.free-estimate-heading {
		padding:0;
		text-align: center;
	}
}
ul#servcss {
	display: inline-block;
}
/***** FOOTER, widgets *****/
@media (max-width: 980px) {
	#main-footer h4 {
		text-align: center;
	}
	.widgettitle:before,
	#main-footer h4:before {
		width: 100%;
	}
	.et_pb_widget {
		text-align: center;
	}
	footer .et_pb_widget {
		float: none;
	}
}
#main-footer .container {
	width: 93%;
}

/**** MORE *****/
header#main-header,
header.et-fixed-header#main-header {
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.5) !important;
}
@media (max-width:980px) {
	#location {
		text-align: center;
	}
	.textwidget {
		text-align: center;
		font-size: 17px !important;
	}
}
@media (max-width:600px) {
	img.scroll-down-btn {
		display: none;
	}
}

.white-bg-box {
	background: rgba(255, 255, 255, .75);
	box-shadow: 0 0 5px rgba(0,0,0,0.3);
	padding: 20px 10px;
}

/* Full-width clickable mobile menu */
#et_mobile_nav_menu {
	width: 100%;
}
.mobile_menu_bar_toggle {
	height: 100%;
	width: 100%;
	right: 0 !important;
	top: 0 !important;
	text-align: right;
}
.mobile_menu_bar:before {
	right: 5px !important;
	left: unset !important;
	position: absolute !important;
	top: 1px !important;
}
ul#mobile_menu {
	top: 100%;
}

/*
SIDEBAR FULL-WIDTH WIDGETS ON MOBILE
SIDEBAR LIST ADD BULLET
SIDEBAR TITLE FONT-SIZE
*/

h4.widgettitle {
	font-size: 1.2em;
}
.et_pb_widget svg {
	display: none;
}
@media (min-width: 981px) {
	.et_pb_widget li {
		list-style: disc inside;
	}
}
@media (max-width: 980px) {
	.et_pb_column .et_pb_widget:nth-child(n) {
		width: 100% !important;
		max-width: 100% !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
	}
}

/***************************
FORMAT LISTS IN CONTENT ONLY
***************************/
article div:not(.et_pb_widget_area) ul:not(#servcss) li,
article div:not(.et_pb_widget_area) ol li {
	margin-bottom: 1em;
}

#left-area ul,
.entry-content ul,
.comment-content ul,
body.et-pb-preview #main-content .container ul,
#left-area ol,
.entry-content ol,
.comment-content ol,
body.et-pb-preview #main-content .container ol {
	padding-bottom: 0;
}

/***********
FOOTER FIXES
***********/
.fwidget {
	width: 100%;
}
#social-icons {
	text-align: inherit;
}

@media (max-width:980px) {
	.et_pb_widget {
		text-align: center;
	}
	.paymentType {
		display: inline-block;
		float: none;
	}
}

#social-icons .social-icon {
	filter: drop-shadow(0 1px 1px rgba(0,0,0,.75));
}

.et_pb_slide {
	background-position: center!important;
}


.qr-label {
	margin-top: -15px;
	text-align: center;
	font-weight: 600;
	color:#fff;
	font-size: 17px;
	text-transform: uppercase;
}



/* for Gallery page */
.et_pb_grid_item img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	object-fit: cover;
}

.et_pb_grid_item .et_pb_gallery_image {
	padding-top:100%;
}
.openinghours {
	width: 100% !important;
}


@media screen and (max-width: 981px) and (min-width: 767px) {
	body .footer-widget:nth-child(n) {
		width: 100% !important;
	}
	body #footer-widgets .footer-widget:nth-child(n), #footer-widgets .footer-widget {
		margin-bottom: 5% !important;
	}
	body #footer-widgets .footer-widget .fwidget {margin-bottom: 5% !important;}
	.openinghours {
		margin: none;
	}	
	.hours, .openinghours {
		width: 65%;
		margin: 0 auto !important;
	}
}
.et_pb_post {
	text-align:justify;
}

#top-menu li a {
	text-transform: uppercase !important;
}

#mobile_menu li a {
	text-transform: capitalize !important;
}
h3 {
	line-height:27px;
}

.video-about iframe {
	height:500px;
	width:100%;
}
@media screen and (max-width:1024px) {

}
@media screen and (max-width:980px) {

}
@media screen and (max-width:600px) {
	.video-about iframe {
		height:250px;
	}

}
@media screen and (max-width:375px) {

}
@media screen and (max-width:320px) {

}

.hero-header {
	overflow: hidden;
}
.hero-content-wrap {
	padding-block: 8%;
	position: relative;
}
.hero-content-wrap:after {
	content: '';
	position: absolute;
	background: #9000004a;
	width: 200px;
	height: 200%;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);   
	z-index: -1;
}
.hero-content-wrap h1 {
	color: #fff;
	text-align: center;
	font-size: 3rem;
}
.hero-content-wrap p,
.hero-content-wrap a {
	margin-bottom: 0;
	text-align: center;
}
@media screen and (min-width: 981px) {
	.hero-content-wrap:after {
		width: 250px;
		left: -2%;
		transform: translateY(-50%);
	}
	.hero-content-wrap h1 {
		font-size: 3rem;
		max-width: 80%;
		font-weight: 600;
		text-align: left;
	}
	.hero-content-wrap p {
		text-align: left;    
	}
	.row-reverse {
		flex-direction: row-reverse;
	}
}



/* service blocks  */
.srv-section-title {
	font-size: 2rem;
	font-weight: 600;
	padding: 1rem !important;
	margin-bottom: 1rem;
	margin-top: 2rem;
	background: #F2E908;
	color: #000;
	border-left: 5px solid #CC270B;
	text-align: center;
	width: fit-content;
	margin-inline: auto;
}
/*Codes for the services section*/
.srvBlock {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-direction: row;
	margin: 0 auto;
	margin-bottom: 20px;
}
/*content bakground*/
.srvElement {
	width: 32%;
	float: left;
	padding: 0px;
	background-color: #222;
}
.srvElementFullWidth {
	width: 100%;
	background-color: #222;
	display: flex;
	flex-direction: column;
	margin-bottom: 20px;
}
.srvElementHeader {
	min-height: 65px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	background-color: #111;
	border-top: 2px solid #F2E908;
}
/*h2 background*/
.srvElementHeader h2 {
	color: #fff;
	font-size: 120%;
	padding: 0px;
	font-weight: bold;
}
.srvElementContent {
	text-align: justify;
	color: #fff;
	padding: 10px;
}
.srvElementFullWidth .srvElementHeader {
	width: 100%;
}
.srvElementFullWidth .srvElementBody {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px;
}
.srvElementFullWidth .srvElementImg {
	width: 40%;
}
.srvElementFullWidth .srvElementContent {
	width: 60%;
	padding-left: 20px;
}
/*h2 background hover*/
.srvElementHeader:hover {
	background-color: #000;
	color: #fff;
}
.srvElementHeader:hover h2 {
	color: #fff;
}
@media only screen and (max-width: 981px) {
	.srvBlock {
		display: block;
		height: 100%;
		padding: 0px;
		margin-bottom: 0px;
	}
	.srvElement {
		width: 100%;
		margin: 0 auto;
		margin-bottom: 5px;
	}
	.srvElementFullWidth {
		display: inline-block;
	}
	.srvElementImg {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.srvElementFullWidth .srvElementBody {
		display: block;
	}
	.srvElementFullWidth .srvElementImg {
		width: 100%;
	}
	.srvElementFullWidth .srvElementContent {
		width: 100%;
		padding: 5px;
	}
	.srvElementBody {
		padding: 10px;
	}
}

@media (max-width: 450px) {
	.nap-contact h3 {
		font-size: 18px;
	}
	#location h3 {
		font-size: 18px;
	}
}

/* google review section  */
.review-section {
  display: flex;
  justify-content: center;
}

.review-card {
  display: flex;
  align-items: center;
  gap: 40px;
  max-width: 900px;
  background: #fff;
  padding: 40px;
  border-radius: 20px;
  box-shadow: 0 6px 20px rgba(0,0,0,0.08);
}

.review-content {
  flex: 1;
}

.review-content p.section-title {
  font-size: 28px;
  color: #202124;
  margin-bottom: 15px;
}

.review-content p {
  font-size: 16px;
  color: #555;
  margin-bottom: 20px;
}

.review-btn {
  display: inline-block;
  background: #4285F4;
  color: #fff;
  font-weight: 600;
  text-decoration: none;
  padding: 12px 25px;
  border-radius: 8px;
  transition: 0.3s;
}

.review-btn:hover {
  background: #3367D6;
}

.review-qr img {
  width: 160px;
  height: auto;
  border-radius: 12px;
  border: 3px solid #eee;
}

.mb-auto {
	margin-block: auto;
}