/*
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: 'Poppins', sans-serif;

}



.et_monarch .et_social_mobile {

	width: 100% !important;

}



h1 span {

	color: #5e5e5e;

}

/*
* H1 title tags sizing
*/
@media (min-width:768px) {
	h1.entry-title {
		font-size: 32px;
	}
}

@media (max-width:767px) {
	h1.entry-title {
		text-align: center;
		font-size: 26px;
	}
}


blockquote {
	padding-left: 0;
	border: none;
}



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



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



.button {
	position: relative;
	display: inline-block;
	background: #0f314f;
	font-weight: 600;
	text-transform: capitalize;
	text-shadow: none;
	border-bottom: 5px solid #0f314f;
	color: #fff;
	padding: 19px 20px 15px;
	margin-top: 10px;
	margin-bottom: 0px;
	transition: 0.3s ease-in-out;
	width: 240px;
}



.button:hover {
	background: #1ab3ff;
}



.content-title {

	border-bottom: 1px solid #dadada;

	padding-bottom: 20px;

}

.content-title span {
	color: #1d2127 !important;
}



#location strong {

	color: #0f314f;

}



#servcss {

	list-style-type: none;

	padding: 0;

}



#servcss li {

	margin-bottom: 0.5em;

}






/* -----------------------------------------------------------------------

* Header Style

* ----------------------------------------------------------------------- */

/* Top header */

#main-header {

	background-color: #fff;
	filter: drop-shadow(0 0 3px rgba(0, 0, 0, .25));

}



#main-header .contact-info {

	margin-top: 26px;

	transition: 0.3s;

}




#main-header .contact-info a,
#main-header .contact-info span {

	display: inline-block;

	font-size: 14px;

	font-weight: 600;

	color: #a6a6a6;

	line-height: 0;

	transition: 0.4s ease-in-out;

}



#main-header .contact-info a:hover {

	color: #223555 !important;

}



#main-header .contact-info .email-us {

	margin-right: 20px;

	margin-left: 20px;

}



#main-header .fa {

	position: relative;

	top: -8px;

	left: -10px;

	width: 35px;

	height: 35px;

	color: #0f314f;

	border-radius: 50%;

	font-size: 15px;

	padding-top: 8px;

	transition: 0.3s;

	border: 2px solid #0f314f;

}



#main-header .fa-volume-control-phone {

	font-size: 18px;

	padding-top: 6px;

}



#main-header .fa-envelope {

	font-size: 17px;

	padding-top: 6px;

}



#main-header .contact-info a em,
#main-header .contact-info span em {

	display: block;

	color: #737373;

	font-style: initial;

	text-align: left;

	position: relative;

	left: 36px;

	font-size: 12px;

	font-weight: 400;

}



/* Logo */

.et_header_style_centered #main-header .logo_container {

	height: 70px;

}



.logo_container {

	float: left;

}



.text-logo {

	display: inline-block;

	color: #fff;

	font-family: 'Roboto Slab', serif;

	font-weight: bold;

	line-height: 1em;

	text-transform: uppercase;

	z-index: 2;

	transition: 0.3s;

}



.text-logo::before {

	position: absolute;

	content: "";

	top: 0;

	left: -60%;

	width: 100%;

	height: 100%;

	background-color: #0f314f;

	transform: skewX(25deg);

	z-index: -1;

}



.comp-name {

	color: #0f314f;

	transition: 0.4s ease-out;

}



.comp-name:hover {

	text-decoration: underline;

}



/* Navigation */

#et-top-navigation {

	background: #fff;

	border-top: 1px solid #f2f2f2;

}



#top-menu li {

	padding-right: 0px;

	margin-right: -3px;

}



#top-menu li a {

	position: relative;

	padding: 17px 23px 15px !important;

	font-weight: 500 !important;

	border-bottom: 2px solid transparent;

}



#top-menu li a:hover,
#top-menu .current-menu-item>a {

	border-bottom-color: #0f314f;

	opacity: 1 !important;

}



/* mobile */

.mobile_menu_bar::before,
.et_header_style_centered .mobile_nav .select_page,
.et_mobile_menu li a {

	color: #08c !important;

}



#et_mobile_nav_menu,
.et_header_style_centered #main-header .mobile_nav {

	background: #FFF !important;

}



.et_mobile_menu {

	padding: 2% 5%;

}



#mobile_menu {

	border-top: 1px solid #fff !important;

	background: #FFF !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-family: 'Roboto Slab', serif;

	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: #0f314f;
}



#sidebar {

	color: #343434;

}



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

	display: none;

}



#servcss svg {

	display: none;

}



/* -----------------------------------------------------------------------

* Services Section Style

* ----------------------------------------------------------------------- */

#section-1 .et_pb_column_1_4 .et-pb-icon {

	transition: 0.4s ease-in-out;

}

#section-1 .et_pb_column_1_4:hover .et-pb-icon {

	color: #1D2127 !important;

}





/* -----------------------------------------------------------------------

* Testimonial

* ----------------------------------------------------------------------- */

.home-testimonial .section-heading {

	position: relative;

	font-size: 30px;

	font-weight: bold;

	line-height: normal;

}



.home-testimonial blockquote {

	border: 0;

	margin-bottom: 0px;
	padding-bottom: 0px !important;

	padding-left: 0;

}



.home-testimonial div.wpcr3_review div.wpcr3_review_title,
.home-testimonial div.wpcr3_dotline,
.home-testimonial div.wpcr3_review div.wpcr3_review_author,
.home-testimonial div.wpcr3_review div.wpcr3_review_datePublished,
.home-testimonial div.wpcr3_review div.wpcr3_review_ratingValue {

	display: none !important;

}



.home-testimonial .wpcr3_item_name a {

	color: #fff !important;

}



.home-testimonial .learn-more a {

	background: transparent;

	border: 2px solid #fff;

	color: #fff;

	text-transform: uppercase;

	padding: 13px 18px 11px;

	font-size: 14px;

	transition: 0.3s ease-out;

}



.home-testimonial .learn-more a:hover {

	background: #0f314f;

	border-color: #0f314f;

}

/***** 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;
	}

	.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: #333 !important;

	line-height: 30px;

}



.free-estimate-heading {
	position: relative;
	color: #383f48 !important;
	font-family: 'Roboto Slab', serif;
	font-weight: 600;
	font-size: 30px;
	line-height: normal;
}



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: #000 #000 #e1e1e1;

	color: #272727 !important;

	padding: 15px 2px;

	font-family: 'Poppins', 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: #757575 !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: #383f48;

}

#contactForm input[type=text]:focus::placeholder,

#contactForm input[type=password]:focus::placeholder,

#contactForm input[type=tel]:focus::placeholder,

#contactForm input[type=email]:focus::placeholder,

#contactForm input.text:focus::placeholder,

#contactForm input.title:focus::placeholder,

#contactForm textarea:focus::placeholder,

#contactForm select:focus::placeholder {

	color: #1d2127 !important;
}



#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: #fff;cursor: pointer;height: auto !important;-webkit-border-radius: 0px;-moz-border-radius: 0px;-o-border-radius: 0px;background: #0f314f;border-bottom: 5px solid #0f314f;border-radius: 2px;margin-top: 35px !important;overflow: hidden;transition: 0.3s;width: 100% !important;}



#submitter:hover {background-color: #0088cc;}




/* -----------------------------------------------------------------------

* Footer Style

* ----------------------------------------------------------------------- */

#main-footer {

	background-color: #272727;

	padding-top: 30px;

}



#main-footer #footer-widgets {

	margin-bottom: 30px;

	padding: 3% 0 0;

}



#main-footer .footer-widget {

	color: #c9c9c9 !important;

}



#main-footer #footer-widgets .footer-widget:nth-child(2)>div {

	width: 100%;

}



#main-footer h4 {

	position: relative;

	color: #fff !important;

	font-family: 'Roboto Slab', serif;

	font-size: 18px;

	font-weight: 600;

	text-transform: uppercase;

	padding-bottom: 20px;

	margin-bottom: 30px;

}



#main-footer h4:before {position: absolute;content: "";bottom: 0;left: 0;height: 2px;width: 30px;background: rgba(255, 255, 255, 0.2);}

table.openinghours {
	width: 100%;
	max-width: 350px;
	margin: 0 auto;
}

.openinghours tr td:last-child {

	text-align: right !important;

}



#current-day {

	background-color: transparent;

}



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



#text-7 .textwidget br,

#text-7 .textwidget strong {

	display: none;

}



.hours th,

.openinghours td {

	text-align: left !important;

	font-family: 'Poppins', sans-serif;

	font-size: 14px !important;

	font-weight: 400 !important;

	text-shadow: none !important;

}



.openinghours td,
.hours th {

	color: #c9c9c9 !important;

}



#footer-bottom {

	padding: 22px 0 18px;

	background: #1a1a1a !important;

	font-size: 16px;

	line-height: 18px;
	color: white;

}



/* -----------------------------------------------------------------------

* 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: 1200px) {

	.text-logo {

		color: #0f314f;

	}



	.text-logo:before {

		content: none;

	}

	/*

	#et-top-navigation {

	background-color: #0f314f;

}



	#top-menu li a, .et-fixed-header #top-menu a {
	color: #fff !important;
}
	#top-menu .sub-menu li a {
	background: #0f314f;
}



	#top-menu li a:hover {

	background-color: #fff;

	color: #0f314f!important;

}
	*/
}



@media (max-width: 980px) {


	#top-header .pull-left {

		margin-top: 12px;

	}



	#et-top-navigation {

		padding-top: 0;

		padding-bottom: 0;

		background-color: transparent;

	}



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

	}



	#mobile_menu {

		top: 33px;

		border-top: 0;

	}



	.logo_container {

		float: none;

		margin-bottom: 15px;

	}



	#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 h2,
	.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: 600px) {

	#main-header .contact-info a,
	#main-header .contact-info span {

		display: block;
		line-height: 30px;

	}

}



@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 h2:before {

		content: none;

	}



	.et_pb_slider .et_pb_slide_0.et_pb_slide .et_pb_slide_description h2.et_pb_slide_title {

		font-size: 45px !important;

		line-height: 50px;

		padding-bottom: 0;

	}

}



@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) {}

@media (max-width: 600px) {
	#main-header .contact-info {
		margin-bottom: 5px;
	}
}

/***** BODY SIZING *****/
body,
.wpcr3_content p {
	font-size: 17px !important;
}

/***** CENTER SLIDE DESCRIPTION/BUTTON *****/
@media screen and (max-width:600px) {
	.et_pb_slide_description {
		width: 100% !important;
		padding: 0 !Important;
	}

	.et_pb_slides .et_pb_container {
		width: 100%;
	}
}

/***** 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: 5px !important;
}

/***** FIX DROPDOWN *****/
.sub-menu {
	padding: 0 !important;
	width: unset !important;
	border-top: 3px solid #ddd !important;
}

.sub-menu li {
	padding: 0 !important;
	line-height: 1.2em !important;
}

.sub-menu li a {
	border-left: 0 !important;
}

.et_mobile_menu .sub-menu {
	border: none !important;
}

/***** FIX MENU TEXT COLOR *****/

@media only screen and (min-width: 981px) and (max-width: 1200px) {

	.et-fixed-header nav #top-menu li a,
	.et-fixed-header nav #top-menu li.current-menu-ancestor>a,
	.et-fixed-header nav #top-menu li.current-menu-item>a {
		color: #5e5e5e !important;
	}

	.et-fixed-header nav #top-menu li a:hover {
		color: #0f314f !important;
	}

}

/***** FIX MENU SIZING *****/

@media (min-width: 981px) {
	#et-top-navigation .et_menu_container {
		margin: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

/***** FIX MOBILE MENU *****/
@media (max-width: 600px) {

	#et_mobile_nav_menu {
		margin: 0 !important;
	}

	.et_menu_container {
		width: 100%;
	}

}

@media (max-width: 980px) {

	#main-header .contact-info {
		padding-bottom: 10px;
	}

	.et_header_style_centered #et_mobile_nav_menu {
		margin-top: 0;
	}

}

/***** 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%;
}

.payments strong,
.payments br {
	display: none;
}

/***** ROW WIDTH/CENTER TEXT *****/
@media (max-width:980px) {
	.et_pb_text {
		text-align: center;
	}

	img.scroll-down-btn {
		bottom: 5px;
	}

	#contact-section .et_pb_column {
		margin: 0 auto !important;
	}

	#contact-form {
		margin-top: 30px !important;
	}

	/***** MOBILE MENU SIZING *****/
	.logo_container {
		height: fit-content !important;
		width: 95%;
		margin: 15px auto 15px;
	}

	header .mobile_nav {
		padding: 10px !important;
	}

	.contact-info.pull-right * {
		line-height: 2em !important;
		font-size: 15px !important;
	}

	.container.clearfix.et_menu_container {
		width: 100%;
	}

	a.text-logo {
		max-width: 550px;
	}
}

/***** DESKTOP MENU SIZING *****/
@media (min-width:981px) {
	.logo_container {
		max-width: 40%;
		text-align: left;
		display: table;
		padding: 0 !important;
		width: fit-content;
	}

	a.text-logo {
		line-height: 1em;
		display: table-cell;
		vertical-align: middle;
		margin-top: 0 !important;
	}

	header .container {
		width: 94% !important;
	}
}

/***** MORE *****/
.white-bg-box {
	background: rgba(255, 255, 255, .85);
	padding: 20px;
}

@media (min-width:981px) {
	.white-bg-box {
		box-shadow: 0 0 3px rgba(56, 63, 72, 0.3);
	}
}

#servcss {
	display: inline-block;
}

:not(.et_pb_widget)>div>#servcss {
	font-size: 20px;
}

footer .container {
	width: 90%;
}

/* Full-width clickable mobile menu */
#et_mobile_nav_menu {
	width: 100%;
}

.mobile_menu_bar_toggle {
	height: 44px;
	width: 100%;
	position: absolute;
	top: 0 !important;
	right: 0 !important;
}

.mobile_menu_bar:before {
	right: 5px !important;
	left: unset !important;
	top: 7px;
	position: absolute;
}

ul#mobile_menu {
	top: 100%;
}

/*****************************************
********   IF LOGO IS IMAGE     *********
*****************************************/
@media (min-width: 981px) {
	.image-logo header {
		height: 120px;
		transition: all .3s !important;
		border-top: none;
		padding-top: 0 !important;
	}

	.image-logo header.et-fixed-header {
		height: 105px;
	}

	.image-logo .logo_container {
		max-width: 100% !important;
		max-height: 100% !important;
		width: 100% !important;
		height: 100% !important;
		position: absolute;
		margin: 15px 0 0 0 !important;
	}

	.image-logo #logo {
		position: absolute;
		left: 0;
	}

	.image-logo #main-header .contact-info {
		line-height: 110px !important;
		padding-top: 10px;
		margin: 0;
	}

	.image-logo #main-header.et-fixed-header .contact-info {
		line-height: 95px !important;
		padding-top: 10px;
	}

	.image-logo .et_menu_container {
		width: 100% !important;
		max-width: 1350px;
		padding-right: 10px;
	}

	.image-logo #top-menu>li>a {
		transition: all .3s !important;
	}

	.image-logo .et-fixed-header #top-menu>li>a {
		padding-top: 13px !important;
		padding-bottom: 13px !important;
	}

	.image-logo #page-container {
		padding-top: 168px !important;
	}
}

@media (max-width: 980px) {
	.image-logo .logo_container {
		width: fit-content;
		margin: 0 auto;
		height: 100% !important;
	}

	.image-logo .logo_container,
	.image-logo #logo {
		max-height: 120px !important;
		max-width: 100%;
	}

	#logo {
		padding: 10px;
	}
}


/*
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;
	}
}

@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;
		margin-top: 30px;
	}

	.paymentType {
		display: inline-block;
		float: none;
	}
}

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

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

#mobile_menu li a {
	text-transform: capitalize !important;
}

.et_pb_post {
	text-align: justify;
}

.image-logo .logo_container a {
	display: block;
}

@media (min-width: 981px) {
	.image-logo #main-header .logo_container {
		width: auto !important;
		float: left;
		height: auto !important;
	}
}

.et_header_style_centered #logo {
	position: static;
}

span.logo_helper {
	display: none !important;
}

@media screen and (max-width: 980px) and (min-width: 767px) {
	.footer-widget:nth-child(n) {
		width: 100% !important;
	}

	#footer-widgets .footer-widget:nth-child(n),
	#footer-widgets .footer-widget {
		margin-bottom: 5% !important;
	}

	#footer-widgets .footer-widget .fwidget {
		margin-bottom: 5%;
	}

}

@media screen and (max-width:980px) {
	.et_pb_title_container h1 {
		font-size: 26px;
		text-align: center;
	}

	.wpcr3_review {
		text-align: center;
	}
}

@media screen and (max-width:600px) {
	.text-logo {
		margin-top: 15px;

	}
}

@media (max-width: 472px) {
	.et_header_style_centered #main-header {
		padding: 0 !important;
	}
}

/* add buttons*/
.booking-button-switch {
	display:none !important; 
}

.slider-button {
	margin-top: 20px;
	margin-bottom: 100px;
}

.button-quote-header {
	text-align: center;
	padding: 10px 0;
	background: #0074ae;
}

.top_button {
	position: relative;
	display: inline-block;
	background-color: #fff;
	font-weight: bold !important;
	text-transform: capitalize;
	text-shadow: none;
	color: #000;
	padding: 12px 25px;
	transition: 0.3s ease-in-out;
	font-size: 16px;
	border-radius: 0px;
}

.top_button:hover {
	color: #000;
}

.top_button .fa {
	top: 0px !important;
	left: 0px !important;
	height: 0px !important;
	color: #000 !important;
	border: 0px !important;
	padding: 5px 5px 5px 0px !important;
}

.floating-estimate-btn {
	text-align: center;
	padding: 10px 15px 10px 15px;
	background-color: #0f314f;
	color: #ffffff !important;
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
	border: 3px solid #272727;
	border-left: 0px;
	font-size: 15px;
	z-index: 999999;
	position: fixed;
	bottom: 60px;
	text-transform: capitalize;
	width: 200px;
}

#main-footer .listing-rev-btn {
	display: flex;
	align-items: center;
	position: fixed;
	padding: 6px 10px 6px 10px;
	border: 3px solid #0088cc;
	border-left: 0px;
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
	bottom: 10px;
	background: #0f314f;
	color: #fff;
	text-transform: capitalize;
	font-size: 15px;
	justify-content: center;
	z-index: 9999;
	width: 200px;
	font-weight: 500;
}

#main-footer .listing-rev-btn img {
	display: none;
}

#main-footer .listing-rev-btn .fa {
	display: block;
	margin-right: 5px;
	color: #fff;
	position: relative;
	bottom: 2px;
}

/* end add buttons */

@media screen and (min-width:601px) {
	.slider-button {
		display: flex;
		justify-content: center;
	}

	.slider-button .booking-button-switch {
		margin-right: 15px;
	}
}

/* BADGES SECTION STYLE */
div#css-badges-section {
	background-color: #202020 !important;
	padding: 30px 0;
}

.badges-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
}

.badge-holder {
	background: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 160px;
	padding: 15px 5px 22px 5px;
	margin-top: 10px;
	margin-bottom: 30px;
	position: relative;
	text-shadow: 0px 15px 15px rgb(0 0 0 / 4%);
	border: 1px dashed #0f314f;
}

.badge-holder:hover {
	box-shadow: 0px 0px 8px 0px #fcfffc99;
}

p.badge-content {
	color: #6b6b6b;
	text-align: center;
	line-height: 1;
	text-transform: capitalize;
	font-size: 17px;
	min-height: 34px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.badge-holder img {
	width: 55%;
	padding-bottom: 5px;
	opacity: 0.9;
}

.badge-title {
	background: #0f314f;
	font-size: 15px;
	width: 85%;
	text-align: center;
	line-height: 1.2;
	padding: 5px;
	position: absolute;
	bottom: -15px;
	color: #ffffff;
	font-weight: bold;
}

.badge-title span {
	font-size: 17px;
}

/* SERVICES BOX */
.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: #272727;
}

.srvElementFullWidth {
	width: 100%;
	background-color: #272727;
	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: #0f314f;
}

/*h3 background*/

.badges-title h2 {
	line-height: 1.2;
}

.srvBlockTitle {
	color: #fff;
	font-family: 'Roboto Slab', serif;
	font-weight: 600;
	font-size: 30px;
	text-align: center;
	line-height: normal;
}

.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: 30%;
}

.srvElementContent a {
	color: #fff;
	font-weight: 700;
	text-decoration: underline;
}

.srvElementFullWidth .srvElementContent {
	width: 70%;
	padding-left: 20px;
}

/*h3 background hover*/
.srvElementHeader:hover {
	background-color: #1a1a1a;
	color: #000;
}

.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;
	}
}

/* END SERVICES BOX */

#main-footer .et_pb_widget li {
	list-style-type: none !important;
}

.footer-widget li:before {
	border-color: #0088cc !important;
}

#footer-widgets .footer-widget li a {
	color: #C9C9C9 !important;
}

/*--------------------------------------------------
* Testimonials Plugin CSS
--------------------------------------------------*/
#testimonials-section {
	background: #ffffff;
}

.testimonials-container {
	max-width: 1280px;
	margin-right: auto;
	margin-left: auto;
	text-align:center;
}

.testimonials-title {
	text-align: center;
	font-weight: 800;
	font-size: 2.25rem;
	line-height: 2.5rem;
	margin-bottom: 0.5rem;
	letter-spacing: -0.025em;
	color: #ffffff;
}

.testimonials-info {
	margin-bottom: 1rem;
}

.testimonial-item {
	border: 2px dashed #0088cc;
	border-radius: 0;
	padding: 1rem;
	background: #0000004d;
	min-height: 100%;
	break-inside: avoid;
	backdrop-filter: blur( 4px );
	-webkit-backdrop-filter: blur( 4px );
}

.testimonial-item:hover {
	background: #0000004d;
	border: 2px dashed #0f314f;
}

.testimonials-grid .testimonial-item {
	margin-bottom: 1rem;
}

.testimonial-item a {
	height: 100%;
	display: grid;
	justify-items: center;
}

.testimonial-subject {
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	color: #fff;
}

.rating {
	display: flex;
	justify-content: center;
	margin: 0.5rem;
}

.star {
	width: 1rem;
	height: 1rem;
	color: #ffc956;
	margin:2px;
}

.testimonial-content {
	font-size: 1rem;
	line-height: 1rem;
	font-weight: 500;
	color: #fff;
	text-align: center;
	font-style: italic;
}

.testimonial-footer {
	margin-top: 1rem;
}

.reviewer-details {
	font-size: 0.75rem;
}

.review-from-logo {
	width: 80px;
	height: auto;
	background: #ffffff;
	padding: 3px;
	border-radius: 0;
	min-height: 35px;
	filter: drop-shadow(0px 0px 3px #ffffff);
}

.reviewer-name {
	font-weight: 500;
	color: #fff;
	line-height: 1.5rem;
	margin-bottom: 5px;
	font-size: 14px;
}

.nav-arrows {
	display: flex;
	justify-content: center;
	gap: 1rem;
	margin-top: 1rem;
}

.nav-arrows button {
	padding: 0.5rem;
	border-width: 1px;
	border-color: #0f314f;
	border-radius: 0;
	cursor: pointer;
	background: #0f314f;
	border-style: solid;
	display: flex;
	color: #fff;
}

.nav-arrows button:hover {
	background: #0088cc;
	color: #ffffff;
	border-color: #0088cc;
}

.nav-arrows button svg {
	height: 1.25rem;
	width: 1.25rem;
	margin-right: 0;
}

.rotate-180 {
	rotate:180deg;
}

@media only screen and (min-width: 600px) {
	.testimonials-grid {
		column-fill: balance;
		columns: 2;
		gap: 1.5rem;
	}
}

@media only screen and (min-width: 992px) {
	.testimonials-grid {
		columns: 3;
	}

	.testimonial-subject {
		font-size: 1.25rem;
	}

	.testimonial-content {
		line-height: 1.5rem;
	}

	.testimonial-footer {
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.reviewer-details {
		display: flex;
		align-items: center;
	}

	.reviewer-name {
		padding-right: 0.75rem;
		font-size: 14px;
		border-right: 0;
	}

	.review-from-logo {
		padding-left: 5px;
	}
}


.wpcr3_button_1 {
	background: #0f314f;
	border: 0px;
	border-radius: 0px;
	color: #fff;
}

.wpcr3_button_1:hover {
	background: #0f314f;
	color: #fff;
}

.slider-title {
	font-family: 'Roboto Slab', serif;
	font-weight: 600;
	font-size: 32px;
	text-align: center;
	margin-top: 40px;
	line-height: normal;
	text-transform: uppercase;
}

.home .ws-slogan {
	font-family: 'Roboto Slab', serif;
	font-weight: 600;
	font-size: 27px;
	text-align: center;
	margin-top: 40px;
	line-height: normal;
	text-transform: uppercase;
}

.home .ws-slogan span:last-child {
	font-size: 17px;
	top: 10px;
	position: relative;
}

@media screen and (min-width: 981px) {
	.home .ws-slogan {
		font-size: 32px;
	}

	.home .ws-slogan span:last-child {
		font-size: 22px;
	}
}

.entry-title {
	color: #383f48 !important;
	font-family: 'Roboto Slab', serif;
	font-weight: 600;
	font-size: 30px;
	text-align: left;
	line-height: normal;
}
.home .entry-title {
	text-align: center;
}

/* ADDITTIONAL SERVICES STYLE */


#additionalServices {
	list-style: none;
	text-align: center;
	padding: 0;
	list-style-type: none;
	margin-top: 10px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

#additionalServices li {
	break-inside: avoid;
	padding: 5px 3px;
	font-size: 18px;
	color: #ffffff;
	position: relative;
	text-align: center;
	margin-bottom: 0 !important;
}
#additionalServices li a {
	color: #fff;
	text-decoration: underline;
}
#additionalServices li::before {
	content: "\f00c";
	font-family: 'FontAwesome';
	display: inline-block;
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 5px;
}


@media (min-width: 600px) {


	#additionalServices li {
		break-inside: avoid;
		padding: 10px 5px;
		text-align: left;
	}


}

@media (min-width: 981px) {
	#additionalServices {
		columns: 3;
		column-gap: 10px;
	}
}

.nav-arrows > button.slider-previous > svg > path{
	transition:0.1s;
}

.nav-arrows > button.slider-next > svg > path{
	transition:0.1s;
}

#mobile_menu li a {
	line-height: 1.2em;
}

.floating-estimate-btn{
	z-index: 9999;
}

#main-footer .listing-rev-btn{
	display: flex;
	align-items: baseline;
	position: fixed;
	z-index: 9999;
}

@media (max-width: 479px) {
	.et_pb_post h2 {
		font-size: 24px;
		padding-bottom: 10px;
	}
}



/* Blog Post, Services and Blog Page Style */

.page-template-default div#content-area div#left-area p, .blog-page-class p, .single-post p {
	text-align: justify !important;
}

@media (max-width: 980px) {

	.page-template-default div#content-area div#left-area h1 {
		font-size: 26px !important;
		text-align: center !important;
	}

	.page-template-default div#content-area div#left-area h2 {
		font-size: 24px !important;
	}

	.blog-page-class h2, p.post-meta{
		text-align: center !important;
	}
}

/* Page Padding Fix */
.single-post div#main-content .container {
	padding: 77px 0 !important;
}
#main-content .container {
	padding: 77px 0 !important;
}

#main-content .container h2{
	padding-bottom: 10px;
}

.blog-page-class .et_pb_post:last-of-type {
	margin-bottom: 0 !important;
}

@media (min-width: 981px) {
	#main-content .container .type-post:last-of-type {
		margin-bottom: 0 !important;
		padding-bottom: 0;
	}
}

.single-post h2 {
	text-align: left;
}
.single-post p {
	text-align: justify;
}

/* NEW CONTENT */
.last-content-1-main-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin-top: 25px;
}

.last-content-1-container {
	background: #ffffff26;
	padding: 30px;
	outline: 3px solid #0088cc;
	outline-offset: 5px;
	margin-bottom: 30px;
	color: #fff;
	width: 100%;
	max-width: 600px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.first-list-container {
	background: #ffffff26;
	padding: 30px;
	outline: 3px solid #0088cc;
	outline-offset: 5px;
	color: #fff;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	max-width: 600px;
}

.last-content-1-container h2 {
	color: #fff;
}

ul.first-list-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0;
	list-style: inside disc;
	width: 100%;
	max-width: 600px;

}

.first-list-content li {
	padding: 5px 10px;
	margin-bottom: 10px !important;
	background: #0f314f;
	color: #fff;
	text-align: left;
	width: 100%;
}

.first-list-content li:hover{
	background: #fff;
	color: #000;
}

.first-list-content li:last-child,
.second-list-content li:last-child {
	margin-bottom: 0 !important;
}

div#second-list-section {
	background: url('https://swasphaltcompany.com/wp-content/uploads/2025/11/Reliable-Services-1.webp');
	background-size: cover;
	background-repeat: no-repeat;
	background-position-y: 60%;
	position: relative;
}

div#second-list-section:before {
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #00000082;
	position: absolute;
}

.second-list-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

ol.second-list-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 600px;

}

.second-list-content li {
	color: #fff;
	width: 100%;
	padding: 5px 10px;
	margin-bottom: 10px !important;
	text-align: left;
	background: #0f314f;
}

.second-list-content li:hover{
	background: #0088cc;
}
div#last-content-3-image {
	max-width: 600px;
	margin: 0 auto;
}

div#last-content-3-image span img {
	outline: 3px solid #0f314f;
	outline-offset: 5px;

}


@media (min-width: 981px)  {
	.last-content-1-main-container {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: stretch;
	}

	.last-content-1-container, 
	.first-list-container {
		width: 48%;
		margin-bottom: 0;
	}

	div#last-content-3-row {
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}

	div#last-content-3-image span img {
		aspect-ratio: 4/5;
		object-fit: cover;
		object-position: 30%;
	}
}

#homepage-nap-section {
	padding: 0 0 54px;
}

@media screen and (max-width: 981px) {
	.entry-title {
		text-align: center;
	}
	body.single-post .entry-content h2 {
		font-size: 24px;
		text-align: center;
	}
	body.single-post .post-meta {
		text-align: center;
	}
	body.page-id-696 article article.et_pb_post h2.entry-title {
		text-align: center;
	}
	body.page-id-696 article article.et_pb_post .post-meta {
		text-align: center;
	}
	
}