/*
Theme Name: Absolute Carpet & Tile Cleaning
Theme URI: 
Author: Absolute Carpet & Tile Cleaning Developer
Author URI: https://wordpress.org/
Description: A theme for WordPress 5.
Requires at least: WordPress 4.9.6
Version: 1.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: wp5default
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

WP5 Default is based on Underscores https://underscores.me/, (C) 2012-2018 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

html {
	line-height: 1; 
	-webkit-text-size-adjust: 100%;
}

body {
	font-family: 'Barlow', sans-serif; 
	margin: 0 auto; 
	width: 100%; 
	min-width: 1200px;
}

.container {
	width: 100%; 
	max-width: 1600px; 
	margin: 0 auto; 
	padding: 0;
}

.row {
	max-width: 1470px; 
	margin: 0 auto;
}

.so-panel,
.panel-grid {
	margin-bottom: 0 !important;
}

/* @media screen and (max-width: 1200px) {
	body {min-width: 320px;}
} */


/*--------------------------------------------------------------
## Layouts
--------------------------------------------------------------*/

.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); 
	-webkit-clip-path: inset(50%); 
	        clip-path: inset(50%); 
	height: 1px; 
	margin: -1px; 
	overflow: hidden; 
	padding: 0; 
	position: absolute !important; 
	width: 1px; 
	word-wrap: normal !important;  
}

.wp-block-column, 
.blocks-gallery-item {
	margin: 0 !important;
}

.has-1-columns .wp-block-column {
	-ms-flex-preferred-size: 100%;
	    flex-basis: 100%;
}

.wp-block-gallery.is-cropped .blocks-gallery-item img {
	height: auto; 
	width: auto; 
	-o-object-fit: contain; 
	   object-fit: contain;
}

.wp-block-image, 
.wp-block-image figure {
	margin: 0;
}

.cta {
	display: none;
}

img {
	-webkit-transition: all .5s linear;
	-o-transition: all .5s linear;
	transition: all .5s linear;
}

/*--------------------------------------------------------------
## Fonts
--------------------------------------------------------------*/
a, 
a:visited {
	text-decoration: none; 
	-o-transition: all .2s ease; 
	transition: all .2s ease; 
	-webkit-transition: all .2s ease; 
	text-decoration: none !important;
}

a:hover {}
a:focus {
	outline: none !important;
}

h1 {
	margin: 0;
	line-height: 129%;
	font-weight: 600;
	font-size: 46px;
	letter-spacing: 0.3em;
}

h2 {
	margin: 0;
	line-height: 148%;
	font-weight: 600;
	font-size: 26px;
	letter-spacing: 0.3em;
	text-decoration: underline;
}

h3 {
	margin: 0;
	line-height: 120%;
	font-weight: 400;
	font-size: 40px;
}

p, 
ul li, 
ol li {
	font-family: 'Open Sans', sans-serif;
	margin: 0;
	line-height: 190%;
	font-weight: 400;
	font-size: 17px;
}

@media screen and (max-width: 768px) {
	p, 
	ul li, 
	ol li  {
		font-size: 15px;
	}
}

/*--------------------------------------------------------------
## Buttons
--------------------------------------------------------------*/

.btn,
.kt-btn-wrap .kt-button {
  display: -moz-flex !important;
  display: -ms-flex !important;
  display: -o-flex !important;
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
  -webkit-box-align: center !important;
      -ms-flex-align: center !important;
          align-items: center !important;
  font-size: 18px !important; 
  font-weight: 300 !important; 
  color: #FFF !important; 
  position: relative !important; 
  background: #CC0000 !important; 
  z-index: 1 !important; 
  width: 200px !important;
  height: 60px !important;
  letter-spacing: 0.15em;
  font-family: 'Teko', sans-serif !important;
  padding: 0 !important;
  margin: auto;
  z-index: 1000;
  border: 1px solid transparent !important;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.btn span {
	position: relative;
	top: 2px;
	-webkit-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

.btn:hover {
  border-color: #CC0000 !important;
	
}
.btn:hover,
.btn:hover span {
	color: #CC0000 !important;
	text-shadow: 0px 3px 10px #000, 0px 3px 10px #000;
}

.btn::after {
  content: ""; 
  position: absolute; 
  width: 100%; 
  height: 100%; 
  top: 0; 
  left: 0; 
  -webkit-transition: all .2s linear; 
  -o-transition: all .2s linear; 
  transition: all .2s linear; 
  -webkit-transform: scaleX(0); 
      -ms-transform: scaleX(0); 
          transform: scaleX(0); 
  z-index: -1;
}

.btn:hover::after {
  -webkit-transform: scaleY(1);
      -ms-transform: scaleY(1);
          transform: scaleY(1);
}

.ow-button-base.ow-button-align-center {
	position: relative;
	z-index: 1000;
}

.kt-button {
	border: none !important;
} 

/*--------------------------------------------------------------
## Layouts
--------------------------------------------------------------*/
.sidebar form, 
.error-404 form {
	position: relative; 
	max-width: 700px; 
	margin: 10px auto;
}

.sidebar input[type="search"], 
.error-404 input[type="search"] {
	width: 100%; 
	padding: 5px 10px;
}

.sidebar input[type="submit"], 
.error-404 input[type="submit"] {
	background: -o-linear-gradient(top, #FFF, #ccc);
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#ccc));
	background: linear-gradient(to bottom, #FFF, #ccc);
	border: 1px solid #000; 
	position: absolute; 
	padding: 6px; 
	right: 0; 
	top: 0;
}

.sidebar .widget:not(:nth-of-type(1)) {
	background: rgba(255, 255, 255, .5);
	border-bottom: 1px solid #CCC;
	padding-bottom: 20px;
	margin-bottom: 20px;  
	padding: 10px 20px;
}

.sidebar input[type="submit"], 
.error-404 input[type="submit"] {
	-webkit-transition: all .4s linear;
	-o-transition: all .4s linear;
	transition: all .4s linear;
}

.sidebar input[type="submit"]:hover, 
.error-404 input[type="submit"]:hover {
	-webkit-box-shadow: 0px 0px 20px #000;
	        box-shadow: 0px 0px 20px #000;
}


/*--------------------------------------------------------------
## Forms
--------------------------------------------------------------*/
form p {
	margin: 0 0 10px !important;
	width: 100%;
}

form i, 
form .hide {
	display: block;
	width: .1px; 
	height: .1px; 
	overflow: hidden;
}

form label {
	display: block; 
	color: #000;
}

form .btn {
	margin: auto !important;
}

form input, form textarea {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

/* form input[type="submit"] {
	background: none !important;
	border: none !important;
	font-size: 14px !important; 
	font-weight: 700 !important; 
	color: #FFF !important; 
	font-family: 'Montserrat', sans-serif !important;
} */

div.wpcf7 .ajax-loader {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

.wpcf7 ::-webkit-input-placeholder {
	font-size: 20px;
	font-weight: 400;
	line-height: 120%;
	font-family: 'Open Sans', sans-serif;
}

.wpcf7 ::-moz-placeholder {
	font-size: 20px;
	font-weight: 400;
	line-height: 120%;
	font-family: 'Open Sans', sans-serif;
}

.wpcf7 :-ms-input-placeholder {
	font-size: 20px;
	font-weight: 400;
	line-height: 120%;
	font-family: 'Open Sans', sans-serif;
}

.wpcf7 ::-ms-input-placeholder {
	font-size: 20px;
	font-weight: 400;
	line-height: 120%;
	font-family: 'Open Sans', sans-serif;
}

.wpcf7 ::placeholder {
	font-size: 20px;
	font-weight: 400;
	line-height: 120%;
	font-family: 'Open Sans', sans-serif;
}

.wpcf7 textarea {
	padding: 15px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: 20px;
	font-weight: 400;
	line-height: 120%;
	font-family: 'Open Sans', sans-serif;
	width: 100% !important;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"] {
	padding: 15px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: 20px;
	font-weight: 400;
	line-height: 120%;
	width: 100%;
	font-family: 'Open Sans', sans-serif;
}

span.wpcf7-not-valid-tip {
	font-size: 10px;
	position: absolute;
	right: 5px;
	top: -22px;
}

p.message span.wpcf7-not-valid-tip {
	top: -170px;
}

p.acceptance span.wpcf7-not-valid-tip {
	position: relative;
	right: 0;
	top: 0;
	text-align: center;
	font-size: 15px;
}

.wpcf7-display-none {
	text-align: center;
	background: #fff;
}
/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/

/*Main Menu*/
.main-navigation {}


.main-navigation .main-menu {
  list-style: none; 
  display: -webkit-box; 
  display: -ms-flexbox; 
  display: flex;
  display: -webkit-flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-justify-content: space-between;
  width: 100%;
  margin: 0;
  padding: 0;
}

.main-navigation .main-menu > li {
  color: #0073aa;
  display: inline;
  position: relative;
}

.main-navigation .main-menu li > a {
  font-size: 15px;
  font-weight: 600;
  color: #545454;
  font-family: 'Josefin Sans', sans-serif;
  position: relative;
  text-transform: uppercase;
}

#hd-menu .main-navigation .main-menu li > a {
	font-size: 18px;
    color: #FFF;
    line-height: 120%;
    font-family: 'Barlow', sans-serif;
    font-weight: 800;
    display: block;
    padding: 50px 22px;
	position: relative;
	z-index: 1;
}
.main-navigation .main-menu li > a:hover::after,
.main-navigation .main-menu li.current_page_item > a::after {
  -webkit-transform: scaleY(1);
      -ms-transform: scaleY(1);
          transform: scaleY(1);
}

.main-navigation .main-menu li > a::after {
  content: ""; 
  background: #FFB000; 
  width: 100%; 
  height: 10px; 
  position: absolute; 
  -webkit-transform: scaleX(0); 
      -ms-transform: scaleX(0); 
          transform: scaleX(0); 
  z-index: -1; 
  display: block; 
  margin: auto; 
  left: 0; 
  right: 0; 
  bottom: 0;
  -webkit-transition: all 0.5s ease; 
  -o-transition: all 0.5s ease; 
  transition: all 0.5s ease; 
}

.main-navigation .main-menu li > a:hover::after,
.main-navigation .main-menu li.current_page_item > a::after {
  -webkit-transform: scaleY(1);
      -ms-transform: scaleY(1);
          transform: scaleY(1);
}

/*Sub Menu*/
.main-navigation ul li:hover ul {
	visibility: visible; 
	opacity: 1; 
	margin-top: 0;
}

.main-navigation ul ul {
	padding: 10px 5px; 
	display: block; 
	position: absolute; 
	background: rgba(0, 0, 0, .7); 
	margin-top: 50px; 
	-webkit-transition: all .4s linear; 
	-o-transition: all .4s linear; 
	transition: all .4s linear; 
	visibility: hidden; 
	opacity: 0; 
	width: 250px; 
	-webkit-box-sizing: border-box; 
	        box-sizing: border-box; 
	z-index: 999;
}

.main-navigation ul ul li {
	display: block; 
	margin-right: 0;
}

.main-navigation ul ul li a {
	padding: 0 10px; 
	display: block; 
	-webkit-box-sizing: border-box; 
	        box-sizing: border-box; 
	text-transform: capitalize;
	color: #fff !important;
}

.main-navigation ul ul li a:hover {
	color: #fff !important;
}

.main-navigation ul ul li a::before {
	display: none;
}

.main-navigation ul ul li a:hover {
	background: #0F3A6F;
}

.main-navigation ul ul li a::after {
	display: none;
}

/*Sub Sub Menu*/
.main-navigation ul ul li:hover ul {
	margin-left: 200px; 
	visibility: visible !important; 
	opacity: 1 !important;
}

.main-navigation ul ul ul {
	position: absolute; 
	margin-left: 240px; 
	margin-top: -48px !important; 
	visibility: hidden !important; 
	opacity: 0 !important;
}

/*Footer Menu*/
.footer-navigation {
	margin-bottom: 30px;
}

.footer-navigation ul {
	margin: 0; 
	padding: 0;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.footer-navigation ul li {
	margin-right: 10px;
}

.footer-navigation ul li a {
	text-transform: uppercase;
	font-size: 18px;
    color: #FFF;
    line-height: 120%;
    font-family: 'Barlow', sans-serif;
    font-weight: 700;
    display: block;
}
.footer-navigation ul li.current-menu-item a, .footer-navigation ul li a:hover {
	color: #38B0AA;
}


/*Social Menu*/
.social-navigation svg {
  display: none !important;
}

.social-navigation a:before {
  font-size: 15px !important;
  position: relative; 
  top: 8.5px; 
  left: 2.5px;
}

.ft-social .social-navigation a:before {
  font-size: 25px !important;
  width: 25px;
  height: 25px;
}


.social-navigation ul.social-links-menu {
	margin: 0;
	padding: 0;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.social-navigation ul.social-links-menu li {
  display: inline-block;
  vertical-align: bottom;
  vertical-align: -webkit-baseline-middle;
  list-style: none;
  width: 50px;
  height: 50px;
  -webkit-transition: all .3s linear;
  -o-transition: all .3s linear;
  transition: all .3s linear;
  border-radius: 50%;
}


.social-navigation ul.social-links-menu li:not(:last-of-type) { 
  display: block; 
}

.social-navigation ul.social-links-menu li:nth-child(n+2) {
  margin-left: 0.1em;
}

.social-navigation ul.social-links-menu li a {
  border-bottom: 1px solid transparent;
  display: block;
  color: #FFF;
  -webkit-transition: all .3s linear;
  -o-transition: all .3s linear;
  transition: all .3s linear;
  width: 30px;
  height: 30px;
}

.social-navigation ul.social-links-menu li:hover {
 	-webkit-transform: scale(1.3);
 	    -ms-transform: scale(1.3);
 	        transform: scale(1.3);
}


.social-navigation ul.social-links-menu li a:focus {
}

.social-navigation ul.social-links-menu li a svg {
  display: block;
  width: 32px;
  height: 32px;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}

.social-navigation ul.social-links-menu li a svg#ui-icon-link {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
/*--------------------------------------------------------------
## Header
--------------------------------------------------------------*/
.site-header {
	width: 100%;
	position: relative;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 10;
}
/* .admin-bar .site-header {
	top: 32px;
} */
#hd-menu .main-navigation .main-menu li > a::after {
	content: "";
	background: #38B0AA;
	width: 100%;
	height: 0;
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	transition: all ease .5s;
	transform: unset;
}
#hd-menu  .main-navigation .main-menu li > a:hover::after,
#hd-menu  .main-navigation .main-menu li.current_page_item > a::after {
	height: 100%;
}

#hd-top {
	background: #0B3CA2;
    text-align: right;
    padding: 3px 10px;
}
#hd-top .row {
	max-width: 1600px;
}
#hd-top h4 {
	margin: 0;
    font-family: 'Barlow', sans-serif;
    font-size: 16px;
    letter-spacing: 0.2em;
    line-height: 120%;
    color: #FFF;
	font-weight: 700;
}

.hd-bot {
	padding: 0 10px;
}
.hd-bot .row {
	max-width: 1920px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.hd-bot #hd-logo {
	flex-basis: 616px;
	box-sizing: border-box;
	padding-right: 30px;
}
.hd-bot #hd-logo > a img {
	width: 100% !important;
	max-width: 616px !important;
	height: auto;
}
.hd-bot #hd-menu {
	flex-basis: 720px;
}
.hd-bot .book-now {
	flex-basis: 493px;
	box-sizing: border-box;
	padding-left: 30px;
	padding-top: 12px;
}
.hd-bot .book-now > a img {
	width: 100% !important;
	max-width: 493px !important;
}

/* custom buttons */
.buttons, .elementor-widget-button .elementor-button, .button {
	width: 100% !important;
	max-width: 215px !important;
    height: 55px !important;
	box-sizing: border-box !important;
    border: 0 !important;
    font-weight: 800 !important;
    font-family: 'Barlow', sans-serif !important;
    font-size: 18px !important;
    color: #fff !important;
    padding: 10px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    line-height: 1 !important;
    background: #38B0AA !important;
	position: relative !important;
	z-index: 1 !important;
	border-radius: 4px !important;
	overflow: hidden;
}
.alt {
	background: #000 !important;
}
.buttons::after, .elementor-widget-button .elementor-button::after, .button::after {
	content: "";
	width: 100%;
	height: 100%;
	background: #000;
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	transition: all ease .5s;
	transform: scaleX(0);
}
.alt::after {
    background: #38B0AA;
}
.buttons:hover::after, .elementor-widget-button .elementor-button:hover::after, .button:hover::after {
	transform: scaleY(1);
}
.buttons:hover, .elementor-widget-button .elementor-button:hover, .button:hover {
	color: #333;
}
.alt:hover {
	color: #FFF;
}
.btn-links {
	display: flex;
	justify-content: flex-start;
	column-gap: 15px;
}

/*--------------------------------------------------------------
## Banner
--------------------------------------------------------------*/
.site-banner {}

#banner {
	position: relative;
	z-index: 9;
	margin-top: -240px;
}
.banner-image img[alt="banner"] {
	height: 1230px;
    width: 100%;
	object-fit: cover;
	object-position: left;
}
.banner-text {
	width: 100%;
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	padding: 0 15px;
	box-sizing: border-box;
}
.bn-top {
	height: 483px;
    width: 100%;
	max-width: 1175px;
	box-sizing: border-box;
    padding: 100px 50px 100px 185px;
	background: url('assets/images/captionbg.png') no-repeat top center;
	background-size: 100% 100%;
}
.bn-top h2 {
	font-size: 120px;
    text-shadow: 0 0 12px rgb(0,0,0,0.35);
    width: 100%;
	max-width: 940px;
	text-decoration: none;
	color: #FFF;
	margin: 0 0 20px;
    letter-spacing: -0.03em;
    line-height: 100%;
    font-weight: 800;
}
.bn-top h2 span {
	font-weight: 900;
    font-size: 40px;
    display: block;
    letter-spacing: 0.2em;
    line-height: 1;
}
.bn-mid .buttons {
	margin: 0 0 0 185px;
}

.bn-bot {
	position: absolute;
    bottom: 80px;
    right: 140px;
    color: #000;
    background: #FFF;
    padding: 20px;
}
.bn-bot h4{
	font-size: 22px;
	font-weight: 400;
	text-align: left;
	margin: 0 0 20px;
}
.bn-bot .flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 40px;
}
.bn-bot .flex .img-holder {
	flex-basis: 88px;
	box-sizing: border-box;
	padding-right: 30px;
}
.bn-bot .flex .img-holder img {
	width: 100%;
	max-width: 58px;
}
.bn-bot .flex .text-holder {
	box-sizing: border-box;
}
.bn-bot .flex .text-holder a {
	font-size: 66px;
    letter-spacing: -0.03em;
    font-family: 'Barlow', sans-serif;
    font-weight: 800;
	color: #000;
}
.bn-bot .flex .text-holder a:hover {
	color: #38B0AA;
}
.bn-bot .menu-socials-container {
	width: 100%;
	max-width: 255px;
	margin: 0 auto;
}
.bn-bot .menu-socials-container ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.bn-bot .menu-socials-container ul li {
	width: auto;
	height: auto;
	display: block;
}
.bn-bot .social-navigation ul.social-links-menu li.fb a {
	width: 20px;
	height: 34px;
	background: url(assets/images/bn-fb.png) no-repeat top center;
	box-sizing: 100% 100%;
}
.bn-bot .social-navigation ul.social-links-menu li.tt a {
	width: 43px;
	height: 34px;
	background: url(assets/images/bn-tt.png) no-repeat top center;
	box-sizing: 100% 100%;
}
.bn-bot .social-navigation ul.social-links-menu li.ig a {
	width: 34px;
	height: 33px;
	background: url(assets/images/bn-ig.png) no-repeat top center;
	box-sizing: 100% 100%;
}
.bn-bot .social-navigation ul.social-links-menu li.yp a {
	width: 26px;
	height: 33px;
	background: url(assets/images/bn-yp.png) no-repeat top center;
	box-sizing: 100% 100%;
}
.bn-bot .social-navigation a:before {
	display: none;
}

#bn-arrow {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 100%;
	max-width: 40px;
	
}
/*--------------------------------------------------------------
## Content
--------------------------------------------------------------*/
#content h1, #content h2, #content h3, #content h4, #content h5,  #content h6 {
	padding: 0;
    margin: 0 0 20px;
    letter-spacing: -0.03em;
    line-height: 100%;
    font-weight: 800;
    font-family: 'Barlow', sans-serif;
}
#content h1, #content h2 {
	position: relative;
	margin-bottom: 50px;
	font-size: 96px;
	color: #000;
	text-decoration: none;
}
#content h1 span, #content h2 span {
	width: fit-content;
    margin: 0 auto;
    position: relative;
    background: #FFF;
    display: block;
    padding: 0 15px;
    z-index: 1;
}

/* services home */
#services {
	position: relative;
	background-size: 100% 100%;
}
#servicesTitle {
	width: 50%;
	margin: 0 auto;
}
#services .elementor-widget-button .elementor-button {
	margin: 0 auto;
}
#services .elementor-container {
	max-width: 1920px;
}
#services .elementor-container .elementor-widget-wrap {
	padding: 0 !important;
}

.serviceslist .elementor-column:nth-of-type(1) .wp-caption-text,
.serviceslist .elementor-column:nth-of-type(5) .wp-caption-text {
	height: 140px;
}
.serviceslist .elementor-column .wp-caption-text {
	height: 180px;
	display: flex;
    align-items: center;
    justify-content: center;
    background: #FFF;
    text-align: center;
    padding: 0 15px;
	font-size: 32px;
	color: #000;
	font-weight: 700 !important;
	margin: 0;
}
.serviceslist .elementor-container {
	max-width: 1920px !important;
	align-items: flex-start !important;
    justify-content: space-between !important;
    margin-bottom: 60px;
}
.serviceslist .elementor-container .elementor-widget-wrap {
	padding: 0 !important;
}
.serviceslist .elementor-container .elementor-column {
	width: 100%;
	max-width: 455px;
	position: relative;
	z-index: 10;
	margin-top: 15px;
	/* height: 603px; */
}
.serviceslist .elementor-container .elementor-column:nth-of-type(3) {
	z-index: 11;
	margin-top: 0;
}
.serviceslist .elementor-container .elementor-column:nth-of-type(1),
.serviceslist .elementor-container .elementor-column:nth-of-type(5) {
	width: 100%;
	max-width: 360px;
	z-index: 9;
	margin-top: 60px;
}
.serviceslist .elementor-container .elementor-column .wp-caption {
	/* height: 460px; */
}
.serviceslist .elementor-container .elementor-column .wp-caption img {
	height: 100%;
	max-height: 296px;
	width: 100%;
	object-fit: fill;
}
.serviceslist .elementor-container .elementor-column:nth-of-type(1) .wp-caption img, .serviceslist .elementor-container .elementor-column:nth-of-type(5) .wp-caption img {
	height: 100%;
	max-height: 235px;
}
.serviceslist .elementor-container .elementor-column:nth-of-type(3) .wp-caption img {
	height: 100%;
	max-height: 324px;
}

/* about home */
#about .elementor-container {
	max-width: 1470px;
}
#about-top .text-holder h2 {
	font-size: 116px;
    padding-top: 20px;
	margin: 0;
}
#about-top .text-holder h4 {
	color: #0053A5;
    font-weight: 900;
    font-size: 42px;
    letter-spacing: 0.2em;
    line-height: 1;
}
#about-top .text-holder p {
	margin: 20px 0 50px;
}
#content p {
	text-align: left;
    font-family: 'Montserrat', sans-serif;
    color: #000;
    font-size: 18px;
}
#contact-form .elementor-container {
	align-items: flex-end;
}
#contact-form .elementor-col-50[data-id="46b855f"] .elementor-widget-wrap {
	padding: 0;
}
#contact-form .text-holder h3 {
	font-weight: 700;
    margin-bottom: 50px;
	font-size: 44px;
	color: #000;
}
#abt-description .elementor-widget:not(:last-child) {
	margin-bottom: 0;
}
#abt-description .elementor-widget.phone {
	margin-bottom: 100px;
}
#abt-description  .text-holder p {
	font-size: 22px;
}
#abt-description .elementor-widget.phone .elementor-shortcode {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 30px;
}
#abt-description .elementor-widget.phone .elementor-shortcode a {
    font-size: 66px;
    letter-spacing: -0.03em;
    font-family: 'Barlow', sans-serif;
	color: #000;
    font-weight: 800;
}
#abt-description .elementor-widget.phone .elementor-shortcode a:hover {
	color: #38B0AA;
}
#ctc-form h2 {
	font-size: 60px;
	color: #FFF;
}
#ctc-form p > br {
	display: none;
}
#ctc-form input[type="text"], #ctc-form input[type="email"], #ctc-form textarea {
	background: rgba(255,255,255,0.25);
    color: #FFF;
    border: 0;
	width: 100%;
	max-width: 273px;
	font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    height: 47px;
    display: block;
    border-radius: 0;
    padding: 10px 20px;
    box-sizing: border-box;
    margin: 0 auto 15px;
    font-weight: 400;
}
#ctc-form ::placeholder {
	color: #FFF;
}
#ctc-form textarea {
	max-width: 357px;
	height: 200px;
}
#ctc-form .buttons {
	max-width: 100%;
	margin: 0 auto;
}

#ctc-holder .wpcf7-form p {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	column-gap: 10px;
}
#ctc-holder .your-name,
#ctc-holder .your-address,
#ctc-holder .your-phone,
#ctc-holder .your-email {
	margin: 0 0 10px;
	flex-basis: 23%;
	box-sizing: border-box;
}
#ctc-holder .your-message {
    flex-basis: 98.8%;
}
#ctc-holder .buttons {
	margin: 20px auto 0;
}

/* recent projects */
#projects h2 {
	width: 100%;
    max-width: 673px;
    background: #FFF;
    margin: 0 auto 60px;
    padding: 0 10px;
    box-sizing: border-box;
}
#projects .elementor-container {
	max-width: 1470px;
}
#recent-top .elementor-column.elementor-col-33, #recent-top .elementor-column[data-col="33"] {
	/* width: 100%;
	max-width: 405px;
	height: 297px; */
	width: auto;
}
#recent-top .elementor-column.elementor-col-33:nth-of-type(1) {
	/* width: 100%; */
	/* max-width: 660px; */
}
#projects .elementor-column.elementor-col-25, #projects .elementor-column[data-col="25"] {
	width: 100%;
}
#projects .elementor-widget-wrap {
	padding: 0 !important;
}
#projects .elementor-widget-image a, #projects .elementor-widget-image img {
	width: 100%;
}
#projects .elementor-widget-container {
	position: relative;
}
#recent-top .elementor-widget-container::after, #recent-bot .elementor-widget-container::after {
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .8);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	transition: all ease .5s;
	transform: scaleX(0);
}
#recent-top .elementor-widget-container:hover::after, #recent-bot .elementor-widget-container:hover::after {
	transform: scaleY(1);
}
#recent-top .elementor-widget-container:hover .widget-image-caption, #recent-bot .elementor-widget-container:hover .widget-image-caption {
	opacity: 1;
}
#projects .widget-image-caption {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 100%;
    max-width: 215px;
    height: 55px;
    box-sizing: border-box;
    border: 0;
    font-weight: 800;
    font-family: 'Barlow', sans-serif;
    font-size: 18px;
    color: #fff;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    background: #38B0AA;
    z-index: 1;
    border-radius: 4px;
    overflow: hidden;
	opacity: 0;
	transition: all ease .2s;
}
#projects .widget-image-caption::after {
	content: "";
	width: 100%;
	height: 100%;
	background: #000;
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	transition: all ease .5s;
	transform: scaleX(0);
}
#projects .widget-image-caption:hover::after {
	transform: scaleY(1);
}

/* what home */
#what .elementor-container {
	max-width: 1470px;
	column-gap: 30px;
}
#what-inner ul {
	padding: 0;
    margin: 0;
    list-style: none;
    width: 100%;
	max-width: 470px;
}
#what-inner ul li {
    list-style: none;
    display: flex;
    align-items: center;
    column-gap: 20px;
    margin-bottom: 40px;
    font-size: 26px;
    font-weight: 600;
	color: #000;
}
#what ul li img {
    height: 64px;
    width: 64px;
    object-fit: scale-down;
}

/* get connected */
#get-connected .elementor-container {
	max-width: 1470px;
}
.gc-container .elementor-shortcode {
	height: 185px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
}
.gc-container .elementor-shortcode a, .gc-container .elementor-shortcode p {
	margin: 0 !important;
    font-family: 'Barlow', sans-serif !important;
    font-weight: 700 !important;
    font-size: 20px !important;
    text-transform: uppercase !important;
	color: #FFF !important;
	text-align: center !important;
}
.gc-container.phone .elementor-shortcode a {
	font-size: 42px !important;
}
.gc-container .elementor-shortcode img {
    height: 34px;
    width: 41px;
    object-fit: scale-down;
    margin-bottom: 15px;
}
/* map */
#map-container .elementor-container {
	max-width: 100%;
}
#map-container .elementor-widget-wrap {
	padding: 0 !important;
}
/* reviews */
#reviews .elementor-container {
	max-width: 1470px;
	column-gap: 30px;
	align-items: center;
}
#reviews .elementor-column-gap-default>.elementor-column>.elementor-element-populated {
	padding: 0;
}
#reviews {
	color: #fff;
}
#reviews h2 {
	margin-bottom: 30px;
	color: #fff;
}
#reviews .strong-view.wpmtst-default .strong-content {
	margin: 0;
	position: relative;
}
#reviews .strong-rating-wrapper  {
	position: absolute;
	top: 0;
	left: 0;
}
#reviews .strong-view.wpmtst-default .strong-content p {
	color: #FFF !important;
	font-size: 24px;
	margin: 30px 0 20px;
}
#reviews .strong-view.wpmtst-default .wpmtst-testimonial-inner, #reviews .strong-view.wpmtst-default .wpmtst-testimonial {
	border: 0;
	padding: 0;
}
#reviews .strong-view.wpmtst-default .wpmtst-testimonial {
	padding: 20px 0 0;
}
#reviews .strong-view.wpmtst-default .wpmtst-testimonial-field {
	text-align: left;
}
#reviews .testimonial-name {
	font-size: 24px;
	color: #FFF;
	line-height: 180%;
	margin-bottom: 20px;
	font-family: 'Montserrat', sans-serif;
}

/* reviews */
.strong-form input[type="text"], .strong-form input[type="email"], .strong-form input[type="url"], .strong-form input[type="file"], .strong-form select {
	height: 40px;
}
.strong-form .form-field {
	margin-bottom: 10px !important;
}
.strong-form label {
	font-size: 18px;
    margin-bottom: 10px;
}
.strong-rating-wrapper {
	line-height: 0 !important;
}

#testimonial-page .strong-view.wpmtst-default .wpmtst-testimonial-inner {
	background-color: #ececec !important;
    border: 3px solid #0a3ca3 !important;
	border-radius: 30px;
}
#testimonial-page .strong-view.wpmtst-default .wpmtst-testimonial {
	border: 0;
}
#testimonial-page .strong-view.wpmtst-default .wpmtst-testimonial-field {
	text-align: center !important;
	font-weight: 700;
	color: #111;
	font-size: 18px;
}

/* services page */
#services-container .elementor-container {
	max-width: 1200px !important;
}
#services-container .elementor-widget:not(:last-child) {
	margin-bottom: 0 !important;
}
#services-container h3{
	font-size: 28px;
    color: white;
    margin: 0;
}
.services-inner .elementor-widget-wrap>.elementor-widget-text-editor,
.services-inner .elementor-widget-wrap>.elementor-widget-text-editor>.elementor-widget-container {
	height: 100%;
}
/*--------------------------------------------------------------
## Footer
--------------------------------------------------------------*/
.site-footer {}
.site-footer .site-info {
	background: #0B3CA2;
    padding: 10px 15px;
	margin-bottom: -1px;
}
.site-footer .row {
	max-width: 1710px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	column-gap: 30px;
}
#ft-logo {
	flex-basis: 321px;
}
#ft-logo img {
	width: 100%;
	max-width: 321px;
}
#ft-center {
	flex-basis: 536px;
}
#ft-center p,
p.silver,
p.silver a,
.copyright {
	text-align: left;
	font-size: 16px;
    color: #fff;
    font-family: 'Barlow', sans-serif;
    font-weight: 800;
    line-height: 120%;
    margin: 0;
    text-transform: uppercase;
}
#ft-right {
	flex-basis: 400px;
}
#book-now {
	margin-bottom: 15px;
}
#book-now img {
	width: 100%;
	max-width: 400px;
}
#ft-right .social-links-menu {
	justify-content: flex-end;
	column-gap: 20px;
}
#ft-right .social-links-menu li {
	width: auto;
	height: auto;
}
#ft-right .social-links-menu li.fb a {
	width: 14px;
	height: 24px;
	background: url(assets/images/ft-fb.png) no-repeat top center;
	box-sizing: 100% 100%;
}
#ft-right .social-links-menu li.tt a {
	width: 31px;
	height: 24px;
	background: url(assets/images/ft-tt.png) no-repeat top center;
	box-sizing: 100% 100%;
}
#ft-right .social-links-menu li.ig a {
	width: 25px;
	height: 33px;
	background: url(assets/images/ft-ig.png) no-repeat top center;
	box-sizing: 100% 100%;
}
#ft-right .social-links-menu li.yp a {
	width: 18px;
	height: 24px;
	background: url(assets/images/ft-yp.png) no-repeat top center;
	box-sizing: 100% 100%;
}
#ft-right .social-navigation a:before {
	display: none;
}

p.silver img {
	position: relative;
	width: 30px;
	padding-right: 10px;
	top: 5px;
}
@media screen and (max-width: 1400px) {
#banner{margin-top: -150px;}
.bn-top h2{font-size: 105px;}
}
@media screen and (max-width: 1024px) {
#reviews .elementor-container, #what .elementor-container{column-gap: 0;}
#projects .elementor-column.elementor-col-25, #projects .elementor-column[data-col="25"]{width: 25%;}
}
#services .elementor-container,#projects .elementor-container{flex-wrap: nowrap;}
/* @media screen and (max-width: 768px) {
	.cta {
		background: url("assets/images/phonecall.png") no-repeat center center,
		-o-radial-gradient(#632528,#000,#000);
		background: url("assets/images/phonecall.png") no-repeat center center,
		radial-gradient(#632528,#000,#000);
		border-bottom-left-radius: 40px;
		border: 2px solid #632528;
		border-right: none;
		border-top-left-radius: 40px;
		bottom: 15%;
		display: block;
		height: 65px;
		position: fixed;
		right: 0;
		text-decoration: none; 
		text-indent: -9999em;
		width: 80px;
		z-index: 999;
	}
} */
/*--------------------------------------------------------------
## Sidebar Blog
--------------------------------------------------------------*/
.sidebar {
	-ms-flex-preferred-size: 30%;
	    flex-basis: 30%; 
	padding: 20px; 
	-webkit-box-sizing: border-box; 
	        box-sizing: border-box; 
	border: 1px solid #535353;
}

.sidebar .widget {
	padding: 10px; 
	background: rgba(238, 238, 238, .3); 
	-webkit-box-shadow: 0px 0px 2px #111; 
	        box-shadow: 0px 0px 2px #111; 
	margin-bottom: 20px;
}

.sidebar h2 {
	margin: 0; 
	font-size: 22px;
}

.sidebar ul {
	margin: 10px auto; 
	line-height: 120%;
}

.sidebar ul a {
	font-size: 17px; 
	color: #111;
}

.sidebar ul a:hover {
	text-shadow: 0px 0px 20px #000;
}

.sidebar .widget_search {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box; 
	padding: 20px;
	width: 100%; 
	background: #0F3A6F; 
	margin-bottom: 20px;
}

.sidebar form {
	position: relative;
}

.sidebar input[type="search"] {
	width: 100%; 
	padding: 5px 10px;
}

.sidebar input[type="submit"] {
	background: -o-linear-gradient(top, #FFF, #ccc);
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#ccc));
	background: linear-gradient(to bottom, #FFF, #ccc); 
	border: 1px solid #000; 
	padding: 6px; 
	position: absolute; 
	right: 0; 
	top: 0;
}

.sidebar input[type="submit"] {
	cursor: pointer; 
	-webkit-transition: all .4s linear; 
	-o-transition: all .4s linear; 
	transition: all .4s linear;
}

.sidebar input[type="submit"]:hover {
	-webkit-box-shadow: 0px 0px 20px #000;
	        box-shadow: 0px 0px 20px #000;
}


/*--------------------------------------------------------------
## Inner Pages
--------------------------------------------------------------*/
.inner #content {
	min-height: 500px; 
	padding: 40px 10px
}

.inner #content h1 {
	padding-bottom: 20px;
	text-align: center;
	letter-spacing: 0;
	margin-bottom: 0;
}
.ngg-galleryoverview.default-view .ngg-gallery-thumbnail {
	margin: 10px 5px;
}
.ngg-gallery-thumbnail img {
	width: 100%;
}

/*--------------------------------------------------------------
## Blog Page
--------------------------------------------------------------*/
.blog-container {
	padding-right: 5%; 
	-ms-flex-preferred-size: 65%; 
	    flex-basis: 65%;
}

.blog-list article {
	padding: 20px; 
	-webkit-box-sizing: border-box; 
	        box-sizing: border-box; 
	border: 1px solid #535353; 
	-webkit-transition: all .3s linear; 
	-o-transition: all .3s linear; 
	transition: all .3s linear;
}

.blog-list article:not(:last-of-type) {
	margin-bottom: 40px;
}

.blog-list article:hover {
	-webkit-box-shadow: 0px 0px 20px #000;
	        box-shadow: 0px 0px 20px #000;
}

.blog-title h2 a {
	font-size: 30px; 
	margin: 0 0 20px; 
	color: #111;
}

.blog-header {
	margin-bottom: 10px; 
	-webkit-box-align: end; 
	    -ms-flex-align: end; 
	        align-items: flex-end; 
	-webkit-align-items: flex-end;
}

.blog-header p {
	margin: 0; 
	font-size: 18px;
}

.blog-header p span {
	font-style: italic;
}

.blog-image {
	text-align: center;
}

.blog-image img {
	-webkit-transition: all .5s linear;
	-o-transition: all .5s linear;
	transition: all .5s linear; 
	max-width: 500px !important; 
	height: auto !important;
}

.blog-container .btn {
	padding: 10px 20px; 
	font-size: 13px; 
	margin-top: 10px;
}

.pagination-n {
	text-align: right; 
	margin-top: 15px;
}

.pagination-n a {
	padding: 2px 10px; 
	background: #0F3A6F; 
	color: #FFF;
}

.pagination-n .current {
	padding: 2px 10px; 
	background: #6A7A64; 
	color: #FFF;
}

/* @media screen and (max-width: 768px) {
	.blog-wrap {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}

	.blog-container {
		margin-bottom: 30px; 
		padding-right: 0; 
		text-align: center;
	}

}

@media screen and (max-width: 500px) {
	.blog-header {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}

	.blog-header p, .blog-header h2 {
		width: 100%; 
		text-align: center;
	}

	.blog-list article {
		text-align: center;
	}

	.blog-header h2 {
		font-size: 30px;
	}

	.blog-container .btn {
		margin-top: 20px;
	}
} */


/*--------------------------------------------------------------
## Search Page
--------------------------------------------------------------*/
.page-description {
	text-align: center; 
	font-size: 25px; 
	font-weight: 700; 
	margin-bottom: 40px; 
	display: block;
}

.page-description::after {
	content: ' "';
}

.page-description::before {
	content: '" ';
}

.search article {
	padding: 20px; 
	border: 1px solid #000; 
	margin-bottom: 30px; 
	display: block; 
	-webkit-transition: all .5s linear; 
	-o-transition: all .5s linear; 
	transition: all .5s linear;
}
.search article:hover {
	-webkit-box-shadow: 0px 0px 20px #000;
	        box-shadow: 0px 0px 20px #000;
}

.search article:last-of-type {
	margin-bottom: 0;
}

.search article h2 a {
	margin: 0 0 20px; 
	font-size: 35px; 
	color: #111;
}

.search-con {
	padding-right: 5%; 
	-ms-flex-preferred-size: 65%; 
	    flex-basis: 65%;
}

/* @media screen and (max-width: 768px) {
	.search-wrap {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.search-con {
		margin-bottom: 30px; 
		padding-right: 0; 
		text-align: center;
	}
} */

/*--------------------------------------------------------------
## Error Page
--------------------------------------------------------------*/
.error-404 {
	text-align: center;
}

@keyframes blink {
  50% {
    opacity: 0.0;
  }
}
@-webkit-keyframes blink {
  50% {
    opacity: 0.0;
  }
}
.blink {
  animation: blink 2s step-start 0s infinite;
  -webkit-animation: blink 2s step-start 0s infinite;
}