#home{
    height: auto !important;
}

#home:after {
    content: '';
    width: 100%;
    position: absolute;
    background: rgba(255, 255, 255, 0.5);
    left: 0;
    top: 0;
    right: 0;
    height: 100%;
    display: block;
}

.aiz-main-wrapper {
    min-height: 0 !important;
}

.hero-content {
    position: relative;
    z-index: 9;
}

#provinceList {
    list-style-type: none;
    padding: 0;
    margin: 0;
  }
  #provinceList .country {
    font-weight: bold;
    margin-top: 15px;
  }
  #provinceList li {
    position: relative;
  }

  #provinceList ul li {
    padding: 5px 5px;
  }

#provinceList ul{
	list-style: none;
	margin: 0;
	padding: 0;
}

#provinceList ul ul{
	display: none;
	text-align: center;
	margin-top: 10px;
}

#provinceList ul ul li{
	display: inline-block;
	margin-right: 5px;
	margin-bottom: 5px;
	padding: 0;
}

#provinceList ul ul li a{
	background-color: #13a9e4;
    font-size: .8rem;
    padding: 2px 7px;
    color: #fff;
    border-radius: 30px;
    text-decoration: none;
    border: 1px solid #13a9e4;
    transition: .3s;
}

#provinceList span.country{
	background-color: #dfdfdf;
	margin-top: 25px;
	display: block;
	padding: 5px 10px;
}



.franchise_cta{
	text-align: center;
	position: relative;
	background-color: #fafaff;
}

.franchise_cta h3 {
	color: #fff;
	font-size: 40px;
	margin-bottom: 25px;
	font-weight: 700;
	text-shadow: 2px 2px 5px #000;
}

.franchise_cta_bg{
	width: 100%;
	height: 100%;
	background-image: url(../../../uploads/2022/11/franchise-bg.png);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.franchise_bg_inner{
	background:#13a9e4;
	padding: 50px 0 25px 0;
}

.franchise_content{
	position: relative;
	z-index: 2;
	text-align: center;
}

.post .post-image .img-wrap{
   position: relative;
   width: 100%;
   padding-top: 56.25%; /* 16:9 Aspect Ratio */

}
.post .post-image .img-wrap img {
      position: absolute;
      top: 0;
      height: 100%;
      width: 100%;
      object-fit: cover;
   }

.contact-mini {
    list-style: none;
    margin: 0;
    padding: 0;
}
.contact-mini li {
    padding-left: 55px;
    position: relative;
    margin-bottom: 25px;
    font-size: 1.2rem;
    font-weight: 600;
}
.contact-mini li a {
    color: #231f20;
    text-decoration: none;
}
.contact-mini li span.c_circle {
    position: absolute;
    left: 0;
    top: -3px;
    border-radius: 50%;
    background-color: #13a9e4;
    text-align: center;
    width: 35px;
    height: 35px;
    line-height: 35px;
    color: #fff;
}

.city-services{
	text-align: center;
	margin: 35px 0 50px 0;
	border-top: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
	padding-bottom: 35px;
}



.sidebar-featured {
  display: inline-block;
  border-radius: 5px;
  overflow: hidden;            /* clip the excess when child gets bigger than parent */
}
.sidebar-featured img {
	width: 100%;
	height: auto;

  display: block;
  transition: transform .4s;   /* smoother zoom */
}
.sidebar-featured:hover img {
  transform: scale(1.3);
  transform-origin: 50% 50%;
}


.form-wrap{
	background-color: #fff;
	padding: 50px;
	margin: 25px;
	border-radius: 10px;
	box-shadow: 0 0 75px rgba(0,0,0,.1);
}

.fullscreen-banner .form-wrap{
	text-align: center;
    margin: 0;
    padding: 15px;
}

.featured-item {
	display: block;
	color: #5f5f5f;
}



.form-title{
	text-align: center;
	color: #000;
	font-weight: 700;
	font-size: 2rem;
	margin-bottom: 15px;
}

.btn-wide{
	width: 100%;
}

.btn-yellow{
	background: #ffe000;
}

.btn-yellow:hover{
	color: #1c1d3e;
	background: #fff;
}

input[type=text], input[type=number], input[type=email], input[type=tel], select, textarea, input[type=date], textarea {
    width: 100%;
    height: 58px;
    background: no-repeat;
    box-shadow: none;
    padding: 1rem 0.5rem;
    background-color: #f6f8f8;
    border: 1px solid #cecece;
    border-radius: 4px;
    line-height: 1.2;
    margin-bottom: 0px;
}

textarea{
	min-height: 100px;
}

.request-quote-page{
	text-align: center;
	padding: 25px;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 0 75px rgba(0,0,0,.1);

}
.request-quote-page textarea{
	background-color: #f6f8f8;
    border: 1px solid #cecece;
    border-radius: 4px;
    min-height: 100px;
}

::placeholder {
    color: #333 !important;
    font-weight: 500;
    text-transform: capitalize;
    font-size: .9rem;
}



.has_wave:after{
    content: url(images/wave.png);
    display: block;
    margin: -10px auto 0 auto;
    padding: 0px 0 20px 0;
}

.white_wrap{
	background-color: #fff;
	padding: 30px;
	box-shadow:15px 15px 17px -4px rgba(0,0,0,.81);
	border: 1px solid #dfdfdf;
}


.video-container { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; }
.video-container iframe, .video-container object, .video-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

section#countup {
    background: #13a9e4;
    text-align: center;
    position: relative;
    padding: 100px 0;
}

section#countup:before, .cust_orange_bg:before {
    content: '';
    background: url(images/wave-top.svg) no-repeat;
    background-position: bottom;
    background-size: cover;
    display: block;
    position: absolute;
    left: 0;
    top: -67px;
    width: 100%;
    height: 70px;
}


section#countup:after {
    content: '';
    background: url(images/wave-bottom.svg) no-repeat;
    background-position: top;
    background-size: cover;
    display: block;
    position: absolute;
    left: 0;
    bottom: -67px;
    width: 100%;
    height: 70px;
}


.filters{
	display: block;
	text-align: center;
	list-style: none;
	margin: 25px 0;
	padding: 0;
}

.filters li{
	display: inline-block;
	margin: 5px 10px;
}

.filters li a.active{
	background: #13a9e4;
    color: #ffffff;
}

.gallery_item{
	flex: 0 0 auto;
    width: 8.33333333%;
}

.gallery-wrap {
    content: "";
    display: block;
    padding-bottom: 100%;
    background-size: cover;
    position: relative;
    background-position: center;
}
.gallery_hover {
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    opacity: 0;
    transition: 0.5s;
}
.gallery_hover img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100px;
}
.gallery-wrap:hover .gallery_hover {
    opacity: 1;
}

.hide{
	display: none;
}

section#signup {
    background: url(images/swim.png) no-repeat #13a9e4;
    background-position: left;
    padding: 60px 0;
}

section#signup2 {
    background: url(../../../uploads/2022/11/swim.png) no-repeat #13a9e4;
    background-position: right;
    padding: 60px 0;
}

.featured_img{
	width: 100%;
	margin: 25px 0;
}

.search-title{
	color: #333333;
	margin-bottom: 5px;
	font-size: 1.3rem;
}

.search-meta{
	margin-bottom: 25px;
}

section#signup h3, section#signup2 h3 {
	text-transform: uppercase;
    font-weight: 100;
    text-align: left;
    color: #a6ecff;
    margin-bottom: 0;
}

section#signup h3 strong, section#signup2 h3 strong{
	font-weight: 700;
	color: #fff;
}


section#blog {
    background: #ededed;
    margin-top: -40px;
}

article.blog-post {
    background: #f6f8f8;
    padding: 40px;
    border-radius: 20px;
    box-shadow: 5.5px 9px 15px 0px rgba(0, 0, 0, 0.2);
    margin-bottom: 80px;
}

article.blog-post .blog-thumbnail {
    padding: 0;
    background: #3cbeee;
    overflow: hidden;
}

article.blog-post .blog-thumbnail a:after {
    content: '\f0c1';
    font-family: 'fontawesome';
    color: #f6f8f8;
    font-size: 32px;
    position: absolute;
    top: 50%;
    left: -20%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 0;
    -webkit-transition: all .7s ease;
    -moz-transition: all .7s ease;
    -ms-transition: all .7s ease;
    -o-transition: all .7s ease;
    transition: all .7s ease;
}

article.blog-post .blog-thumbnail:hover a:after {
    left: 50%;
    opacity: 1;
}

.blog-thumbnail img {
	max-height: 325px;
    object-fit: cover;
    height: 100%;
    width: 100%;
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -ms-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}

article.blog-post .blog-thumbnail:hover img {
    transform: scale(1.2);
    opacity: .5;
}







.blog-post .blog-desc {
    padding: 0 0 0 50px;
    color: #999;
}

.blog-post .blog-desc h4 a {
    color: #323232;
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    cursor: pointer;
}

.blog-post .blog-desc h4 a:hover {
    color: #3cbeee;
}

.post-detail {
    padding: 10px 0 30px 0;
    color: #999;
}

.post-detail span:after {
    content: '|';
    padding: 0 7px;
}

.post-detail span:last-child:after {
    display: none;
}

.post-detail span i {
    padding-right: 5px;
}

.blog-post .blog-desc a.btn {
    margin-top: 30px;
}

section#blog .text-center {
    margin: 0 0 90px 0;
}

section.map_foot{
	padding: 0 !important;
}

.cust_orange_bg{
	padding-top: 5px;
	background-color: #13a9e4;
    color: #fff;
    text-align: center;
	position: relative;
}

.cust_orange_bg a, .cust_orange_bg h2{
	color: #fff;

}

::selection {
  background: #13a9e4;
  color: #fff;
}

.footer_map_details{
	list-style: none;

}
#owl-icons {
    padding: 15px 25px 15px 25px;
    background-color: #fff;
}
#owl-icons img {
    max-width: 100px;
}

.owl-carousel .owl-dots .owl-dot:hover span, .owl-carousel .owl-dots .owl-dot.active span{
	background: #13a9e4;
}
.footer{
	background-color: #111;
}

.footer .news a{
	color: #ffe000;
}

.footer h3{
	color: #fff;
	margin-bottom: 25px;
}

.footer p{
	color: #909090;
}

.footer-contact{
	list-style: none;
	margin: 0 0 25px 0;
	padding: 0;
}

.footer-contact li{
	color: #fff;
}

.footer .footer-contact a{
	color: #13a9e4;
}

.footer .social{
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer .social li{
	display: inline-block;
	margin-right: 15px;
}

.footer .social li a{
	color: #13a9e4;
	font-size: 2rem;
}

.footer_bottom {
    background-color: #000;
    padding: 25px;
    text-align: center;
}

.owl-carousel .owl-dots{
	bottom: 30px;
}

section#countup img {
    height: 60px;
    margin-bottom: 25px;
}

section#countup{
	color: #fff;
}

a{
	color: #13a9e4;
}

.testimonial-content{
	min-height: 340px;
}

h3.services_heading{
	font-size: 1.1rem;
	color: #0f0f22;
	margin-bottom: 15px;
	margin-top: 25px;
	font-weight: 700;
	line-height: 1.2rem;
}

.sidebar{
	box-shadow: 3.5px 19px 25px 10px rgba(0, 0, 0, 0.2);
	margin-top: 75px;
	padding: 25px 25px;
	background-color: #fafaff;
	border-radius: 25px;
}

.sidebar-logo{
	width: 100%;
	max-width: 250px;
	margin: 50px auto 25px auto;
	display: block;
}

#thank_you{
	display: none;
	position: fixed;
	width: 90%;
	max-width: 600px;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	z-index: 99;
}

#thank_you img{
	width: 100%;
}

.overlay-content {
	margin: 30px auto;
  position: relative;
  top: 10%; /* 25% from the top */
  width: 100%; /* 100% width */
z-index: 3;
	max-width: 600px;
  text-align: center; /* Centered text/links */

}

.overlay-content label{
	color: #7b7b7b;
	margin-bottom: 5px;
}


/* The navigation links inside the overlay */
.overlay .close_btn {
	cursor: pointer;
  padding: 8px;
  text-decoration: none;
  font-size: 36px;
  color: #818181;
  display: block; /* Display block instead of inline */
  transition: 0.3s; /* Transition effects on hover (color) */
}

/* When you mouse over the navigation links, change their color */
.overlay .close_btn:hover, .overlay .close_btn:focus {
  color: #f1f1f1;
}

/* Position the close button (top right corner) */
.overlay .close_btn {
  position: absolute;
  top: 20px;
  right: 45px;
  font-size: 60px;
}
.overlay textarea{
	min-height: 100px;
}


.city_links{
	margin: 0;
	padding: 0;
}

.city_links li{
	display: inline-block;
	margin: 3px;
}

.city_links li a{
	background-color: #13a9e4;
	font-size: .8rem;
	padding: 2px 7px;
	color: #fff;
	border-radius: 30px;
	text-decoration: none;
	border: 1px solid #13a9e4;
	transition: .3s;
}

.city_links li a:hover{
	background-color: #fff;
	color: #13a9e4;
}

.inner_page h2{
	font-size: 25px;
	line-height: 30px;
}

.inner_page h2.entry-title{
	font-size: 40px;
	line-height: 46px;
}

#about{
	position: relative;
	z-index: 3;
}

section.reviews{
	background-color: #fff;
	padding: 50px 0;
}

.review_heading {
    text-align: center;
    margin-bottom: 50px;
}

.review-item {
    margin-bottom: 35px;
    padding-bottom: 25px;
    border-bottom: 1px dashed #aaa;
}

.review-item:last-child{
	border-bottom: none;
}

#owl-footer .owl-item div {
    background-color: #fff;
    padding: 15px;
}

#owl-footer .owl-item img{
	width: 100%;
}

#owl-footer .owl-dots .owl-dot.active span{
	background: #02060b;
}

.review-meta {
    display: inline-block;
}
h2.news-title{
	font-size:32px;
	line-height: 36px;
}
.review-author {
    font-weight: 800;
}

.review-stars ul {
    list-style: none;
    margin: 0 0 15px;
    padding: 0;
}

.review-stars ul li {
    display: inline-block;
}

.review-stars ul li i {
    color: #f8991d;
}

.cust_orange_bg {
    padding: 0px;
    background-color: #13a9e4;
    color: #fff;
}

.van-adjust{
	top: 55px;
	position: relative;
}

.header .mobile-buttons a{
	display: none;
}

.bottom_wave{
	position: relative;
	bottom: 7px;
}

.top_wave{
	position: relative;
	top: 7px;
}

.gallery_section{
	overflow: hidden;
}

.denise{
	position: absolute; right: 50px; bottom: 0px; width: 200px; z-index: 999;
}

.why-puddle{
	top: -1px;
}
.header .mobile-buttons a{
	display: none;
	color: #fff;
	font-size: 1rem;
	margin-left: 5px;
	background-color: #1261a0;
	border-radius: 15px;
	padding: 2px 8px;
}

.page-title{
	padding-bottom: 160px;
}

body.category .navbar-toggler span, body.page-template-template-pagesquote-php .navbar-toggler span, body.single  .navbar-toggler span, .page-template-small-header .navbar-toggler span{
	background: #fff;
}
body.category .fixed-header .navbar-toggler span, body.page-template-template-pagesquote-php .fixed-header .navbar-toggler span, body.single .fixed-header .navbar-toggler span, .page-template-small-header .fixed-header .navbar-toggler span{
	background: #13a9e4;
}

.radio-label{
	margin-bottom: 10px;

}

.request-form{
	text-align: left;
}

@media only screen and (max-width: 1250px) {
	.navbar-nav .nav-item{
		margin: 0 10px;
	}
}

@media only screen and (max-width: 1199px) {

	.navbar-nav .nav-item{
		margin: 0 20px;
	}

	section#countup:before, .cust_orange_bg:before{
		display: none;
	}

	.address_wrap{
		padding: 25px 0;
	}

	.header a.btn{display: none;}
	.header .mobile-buttons a{    display: flex;
        align-items: center;
        height: 30px;
        width: 30px;}

}

#home .hero-content + div {
        position: absolute;
        z-index: 9;
        top: 85%;
        width: 90%;
	}
	
	#home{
		padding: 0 !important;
        height: 500px !important;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
	}

@media only screen and (max-width: 991px) {

	.header a.btn{display: inline-block;}
	.header .mobile-buttons a{display: none;}

	.blog-thumbnail img{
		max-height: none;
	}

	.hero-bg img{
		opacity: .3;
	}

	.why-puddle .morph-wrap{
		left: auto;
		bottom: auto;
		transform: none;
	}

	.van-adjust{
		top: 0;
		margin-top: 50px;
	}

	.custom-py-2{
		padding-top: 25px !important;
		padding-bottom: 25px !important;
	}

	#about{
		text-align: center;
	}

	#about .title-effect-2{
		margin: 15px auto;
	}

	section{
		padding: 75px 0 0;
	}
	
	#service {
	    padding-bottom: 75px;
	}

	#home{
		padding: 0 !important;
        height: 500px !important;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
	}
	
	



.form-wrap{
    margin: 25px 0;
}

.gallery_item {
    width: 12.5%;
}

.image-column{
    position: static;
}

}

@media only screen and (max-width: 767px) {
    
    .fullscreen-banner .form-wrap .row {
        gap: 15px;
    }
    
    .page-content {
        margin-top: 125px;
    }
    
    #home .hero-content + div {
    
    top: 75%;
    
}

.form-title {
    font-size: 26px;
}

    .section-title h2 {
        font-size: 26px;
        line-height: 37px;
    }
    
    .lead {
    
    font-size: 14px;
    line-height: 26px;
    
}

.overlay-content{
    padding: 15px 25px;
}

.footer-1{
    padding-top: 50px;
}

#signup2{
    text-align: center;
}

section#signup2 h3{
    margin-bottom: 10px;
    text-align: center;
}

.denise{
    display: none;
}

.blog-desc h4{
    margin-top: 25px;
}

.blog-thumbnail img {
    max-height: 325px;
}

.blog-post .blog-desc{
    padding-left: 0;
}

.label-seperate{
    border-top: 1px solid #bebebe;
    padding-top: 15px;
    margin-top: 15px;
    width: 100%;
}

.request-form{
    text-align: left;
}

}

@media only screen and (max-width: 667px) {

.header a.btn{display: none;}
.header .mobile-buttons a{display: inline-block;}

}



@media only screen and (max-width: 575px) {

.page-title{
    padding-bottom: 85px;
    margin-bottom: 15px;
}

section .btn{
    margin-bottom: 10px;
}

.gallery_item {
    width: 16.66%;
}

h1 {
    font-size: 40px;
    line-height: 45px;
}

.fullscreen-banner{
    padding-top: 100px !important;
}

.form-wrap{
    padding: 50px 25px;
}

.custom-li li{
    float: none;
    width: 100%;
}

}

@media only screen and (max-width: 375px) {
.logo img, #header-wrap.fixed-header .logo img{
    height: 40px;
}

#header-wrap.fixed-header{
    padding: 10px 10px;
}

}
