/*
Theme Name: Southbay 
Theme URI: http://www.neztechsolutions.com/
Author: Neztech Solutions
Author URI: http://www.neztechsolutions.com/
Description: Theme V7
Version: 1.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: Southbay

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.
*/

/* 
============================================================================================================
============================================================================================================

                                        THEME STYLE default CSS START

============================================================================================================
============================================================================================================
*/



body, html, ul {
	margin: 0px;
 	padding: 0px;
}

body {
	font-family: 'Conv_Montserrat-Medium';
	word-wrap: break-word;
	overflow-x: hidden;
	opacity: 0;
	transition: all .5s;
	transition-delay: .3s;
}

.wrapperOuter {
    overflow: hidden;
}

.elementor-section.elementor-section-boxed > .elementor-container .elementor-container {
	padding: 0;
}
body.elementor-editor-active {
	opacity: 1;
}
.elementor-editor-active .smart-page-loader {
	display: none !important;
}
b, strong {
	font-family: 'Conv_Montserrat-Bold';
}

a {
	text-decoration:none;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	outline:0!important;
}

.upb_row_bg {
	width: 100% !important;
}

::selection {
   color: #fff; 
   background: #0098da !important;
}

* { 
	outline:none!important;
}


h1,h2,h3,h4,h5,h6 {
	margin-top:0;
	font-family: 'TruenoSBd';
	font-weight: normal;
	margin-bottom: 10px;
}

ul {
	list-style:disc;
	list-style-position:inside;
	margin:0;
	padding:0;
}

ol {
	list-style:decimal;
	list-style-position:inside;
	margin:0;
	padding:0;
}

ol li,ul li {
	margin:0;
	padding:0;
}

p {
	margin: 0px;
	padding-bottom: 20px;
	line-height: 30px;
}

img {
	transition:all .5s;
	max-width: 100%;
	height: auto;
}

/* content */

.containerWrap ol li, 
.containerWrap ul li {
	list-style-position: inside;
}

.containerWrap ol, 
.containerWrap ul {
	margin: 0px 0 20px 20px;
}

/* pointer css start */

.cursor {
  top: 0px;
  left: 0px;
  position: fixed;
}

.dot {
  top: -20px;
  left: -20px;
  position: fixed;
  border-radius: 50%;
  z-index: 9999;
  mix-blend-mode: multiply;
  pointer-events: none;
  will-change: transform;
  transform: scale(.3);
  transition: 0.2s all;
  width: 40px;
  height: 40px;
}

.drag,
.scroll,
.play {
  box-sizing: border-box;
  overflow: hidden;
  cursor: none;
}

.drag-pointer {
  opacity: 1;
  transform: scale(1);
}

.scroll-pointer {
  opacity: 1;
  transform: scale(1);
}

.play-pointer { 
  opacity: 1;
  transform: scale(1);
}

.dot.play-pointer:before {
	content: 'Play'; 
}

.dot.scroll-pointer:before {
	content: 'scroll'; 
}
.dot.drag-pointer:before {
	content: 'drag'; 
}

.dot:before { 
	display: inline-block;
	border: 2px solid #061424;
	width: 50px;
	height: 50px;
	line-height: 51px;
	border-radius: 50%;
	text-align: center;
	color: #061424;
	text-transform: uppercase;
	font-size: 11px;
	transition: all .5s;
	opacity: 0;
	visibility: hidden;
}

.dot.play-pointer:before,
.dot.scroll-pointer:before,
.dot.drag-pointer:before {
	opacity: 1;
	visibility: visible;
}


/* pointer css end */



/*default form css start*/

form.elementor-form select,
form.elementor-form textarea, 
form.elementor-form input {
	color: #8d8d8d !important;
	font-size: 17px !important;
	font-family: 'Conv_Montserrat-Regular' !important;
	border: none !important;
	box-shadow: 0 0 15px rgba(0,0,0,.2);
	height: 50px;
	padding: 10px 20px 10px;
	letter-spacing: .25px;
}

textarea {
	min-height: 150px !important;
}

form.elementor-form .elementor-message {
	text-align: center;
	font-size: 12px;
	margin-top: 20px;
}

/* radio/checkbox */
form.elementor-form .elementor-field-type-upload .elementor-field-label,form.elementor-form .elementor-field-type-acceptance .elementor-field-label,form.elementor-form .elementor-field-type-checkbox .elementor-field-label,form.elementor-form .elementor-field-type-radio .elementor-field-label {
    position: static !important;
    padding: 0 !important;
    min-height: auto !important;
    color: #fff !important;
    margin-bottom: 15px; 
    background: transparent !important;
    font-weight: 400 !important;
}

form.elementor-form .elementor-field-type-radio .elementor-field-subgroup{
	flex-basis: auto !important;
    margin-left: 20px;
}
 

form.elementor-form .elementor-field-type-upload .elementor-field-label:before,form.elementor-form .elementor-field-type-acceptance .elementor-field-label:before,form.elementor-form .elementor-field-type-checkbox .elementor-field-label:before,form.elementor-form .elementor-field-type-radio .elementor-field-label:before {
	display: none;
}

form.elementor-form .elementor-field-type-upload,form.elementor-form .elementor-field-type-acceptance,form.elementor-form .elementor-field-type-checkbox,form.elementor-form .elementor-field-type-radio {
	border: none !important;
}

form.elementor-form .elementor-field-type-acceptance .elementor-field-option,form.elementor-form .elementor-field-type-radio .elementor-field-option,form.elementor-form .elementor-field-type-checkbox .elementor-field-option {
    position: relative;
    margin-right: 18px;
    padding-right: 0;
    margin-bottom: 15px;
}

form.elementor-form .elementor-field-type-acceptance .elementor-field-option:last-child,form.elementor-form .elementor-field-type-radio .elementor-field-option:last-child,form.elementor-form .elementor-field-type-checkbox .elementor-field-option:last-child {
	margin-right: 0;
}

form.elementor-form .elementor-field-type-acceptance input,form.elementor-form .elementor-field-type-radio input,form.elementor-form .elementor-field-type-checkbox input {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    text-indent: -9999px;
    opacity: 0;
    display: block !important;
    margin: 0;	
    cursor: pointer;
}

form.elementor-form .elementor-field-type-acceptance label,form.elementor-form .elementor-field-type-radio label,form.elementor-form .elementor-field-type-checkbox label {
    padding-left: 26px;
    vertical-align: middle;
    display: block !important;
    line-height: 26px !important;
}
form.elementor-form .elementor-field-type-acceptance .elementor-field-option label:before,form.elementor-form .elementor-field-type-radio .elementor-field-option label:before,form.elementor-form .elementor-field-type-checkbox .elementor-field-option label:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 3px;
    left: 0;
    height: 20px;
    width: 20px;
    border: 2px solid #cccccc;
    background: #ffffff;
    cursor: pointer;
}
form.elementor-form .elementor-field-type-acceptance .elementor-field-option label:after,form.elementor-form .elementor-field-type-radio .elementor-field-option label:after,form.elementor-form .elementor-field-type-checkbox .elementor-field-option label:after {
	content: "";
	display: none;
}

form.elementor-form .elementor-field-type-acceptance .elementor-field-option label:after,form.elementor-form .elementor-field-type-radio .elementor-field-option label:after,form.elementor-form .elementor-field-type-checkbox .elementor-field-option label:after {
    left: 5px;
    top: 8px;
    width: 11px;
    position: absolute;          
    height: 6px;
    border-left: 2px solid #0098da;
    border-bottom: 2px solid #0098da;
    transform: rotate(-50deg);
}

form.elementor-form .elementor-field-type-acceptance .elementor-field-option input:checked ~ label:after,form.elementor-form .elementor-field-type-radio .elementor-field-option input:checked ~ label:after,form.elementor-form .elementor-field-type-checkbox .elementor-field-option input:checked ~ label:after {
	display: block;
}

form.elementor-form .elementor-field-type-radio .elementor-field-option label:before {
   border-radius: 0;
    border: none !important;
}

/*form.elementor-form .elementor-field-type-acceptance .elementor-field-option input:checked ~ label:before,form.elementor-form .elementor-field-type-checkbox .elementor-field-option input:checked ~ label:before,
form.elementor-form .elementor-field-type-radio .elementor-field-option input:checked ~ label:before {
	background: #ed008b;
	border: 3px solid #fff !important
}*/

textarea::-webkit-input-placeholder,
input::-webkit-input-placeholder {
	color: #8d8d8d !important;
	opacity: 1 !important;
}

textarea:-moz-placeholder,
input:-moz-placeholder { /* Firefox 18- */
	color: #8d8d8d !important;
	opacity: 1 !important;
}

textarea::-moz-placeholder,
input::-moz-placeholder {  /* Firefox 19+ */
	color: #8d8d8d !important;
	opacity: 1 !important;
}

textarea:-ms-input-placeholder,
input:-ms-input-placeholder {  
	color: #8d8d8d !important;
	opacity: 1 !important;
}

.flatpickr-calendar .dayContainer span {
    transition: all .8s;
    opacity: 0;
    width: 0;
    transform: scale(.2);
    color: transparent;	
}
.flatpickr-calendar.open .dayContainer span {
	opacity: 1;
	transform: scale(1);
	color: #393939;
}

.owl-carousel .owl-stage-outer {
  overflow: hidden;
}
.owl-carousel .owl-item {
  display: inline-block;
  vertical-align: top;  
}





/*default form css end*/

.dbtn .mText:last-child {
   display: none;
}

.projectWrap .pagination .next.page-numbers,
.projectWrap.studiesWrap .project .elementor-button,
.keepWrap .pagination a.next,
.dbtn {
    font-size: 18px !important;
    padding: 22px 55px !important;
    text-transform: uppercase;
    font-family: 'Conv_Montserrat-SemiBold';
    background-color: #0098da !important;
    color: #fff !important;
    border: none;
    border-radius: 0 !important;
    display: inline-block;
    -webkit-transition: all .5s !important;
    -moz-transition: all .5s !important;
    -o-transition: all .5s !important;
    transition: all .5s !important;
    margin-bottom: 0;
    position: relative;
    z-index: 9;
    overflow: hidden;
    cursor: pointer;
}

.projectWrap .pagination .next.page-numbers:before,
.projectWrap.studiesWrap .project .elementor-button:before,
.keepWrap .pagination a.next:before,
.dbtn:before {
	content: '';
    background-repeat: repeat-x;
    background-position: top center; 
    background-size: auto;
    width: 100%;
    height: 25px;
    display: inline-block;
    position: absolute;
    left: 0;
    bottom: -10px;
    opacity: .15;
    transition: all .5s;
}

.projectWrap .pagination .next.page-numbers:hover:before,
.projectWrap.studiesWrap .project .elementor-button:hover:before,
.keepWrap .pagination a.next:hover:before,
.dbtn:hover:before {
	animation: anim 20s infinite linear;
}
@keyframes anim {
	0% {
	   background-position: 50vw top;
	}
	 
	100% {
	   background-position: 0vw top;
	}

}

.projectWrap .pagination .next.page-numbers,
.projectWrap.studiesWrap .project.button2 .elementor-button,
.button2 .dbtn {
    background-color: transparent !important;
    border: 3px solid #0098da;
    color: #000 !important;
}

.projectWrap .pagination .next.page-numbers,
.projectWrap.studiesWrap .project.button2 .elementor-button {
	color: #0098da !important;
}

.projectWrap .pagination .next.page-numbers:before,
.projectWrap.studiesWrap .project.button2 .elementor-button:before,
.button2 .dbtn:before {
	opacity: 0;
}

.projectWrap .pagination .next.page-numbers:hover:before,
.projectWrap.studiesWrap .project.button2 .elementor-button:hover:before,
.button2 .dbtn:hover:before {
	opacity: .15;
}

.projectWrap .pagination .next.page-numbers:hover,
.projectWrap.studiesWrap .project .elementor-button:hover,
.dbtn:hover {
	background-color: #02aef8 !important;
	color: #fff !important;
}

/* Post Image Start*/

/* Post Image Start*/
.wp-block-image figure {
  margin-top: 20px;
  margin-bottom: 20px;
}
img.alignright,
.wp-block-image .alignright {
  margin-left: 20px;
    float: right;
    margin-bottom: 10px;
    max-width: 50% !important;
}
img.alignleft,
.wp-block-image .alignleft {
  margin-right: 20px;
  float: left;
    margin-bottom: 10px;
}
img.aligncenter,
.wp-block-image .aligncenter {
  margin: 0 auto 10px;
    display: block;
}
img.alignnone {
  display: block;
    margin-bottom: 10px;
}


@media (min-width: 1025px) and (max-width: 1200px) {
	img.alignright,
	img.alignleft {
		max-width: 50% !important;
				     
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	
     img.alignright,
	img.alignleft {
		max-width: 50% !important;
				     
	}
}

@media (max-width: 767px) {
  img.alignnone,
  img.alignright,
  img.alignleft,
  img.aligncenter,
  .wp-block-image .alignright,
  .wp-block-image .alignleft,
  .wp-block-image .aligncenter {
    float: none !important;
    margin: 10px 0 10px !important;
    display: block;
    max-width: 100% !important;
  }

}



/* Post Image End */


/* testimonial css */

.elementor-widget-testimonial-carousel .elementor-testimonial {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    width: 100%;
}






/* 
============================================================================================================
============================================================================================================

                                    THEME STYLE RESPONSIVE CSS START

============================================================================================================
============================================================================================================
*/


@media (min-width: 1600px) {

	.dbtn {
		
	}
}


/* Portrait tablet to landscape and desktop */

@media (min-width: 1200px) and (max-width: 1379px) {




}
/* Large desktop */
@media (min-width: 1025px) {
	
	 .elementor-section.elementor-section-boxed > .elementor-container {
		padding-left: 80px;
		padding-right: 80px;
	}	 
}

/* Portrait tablet to landscape and desktop */
@media (min-width: 1025px) and (max-width: 1199px) {

	.projectWrap .pagination .next.page-numbers,
	.dbtn {
	    font-size: 17px !important;
	    padding: 18px 35px !important;
	}
}

   
/* Portrait tablet to landscape and desktop */
@media (min-width: 768px) and (max-width: 1024px) { 
	
	.elementor-section.elementor-section-boxed > .elementor-container {
		padding-left: 10px;
		padding-right: 10px;
	}

	.projectWrap .pagination .next.page-numbers,	 
	.keepWrap .pagination a.next,
	.dbtn {
	    font-size: 16px !important;
    	padding: 16px 30px !important;
	}

	.projectWrap .pagination .next.page-numbers:before,
	.keepWrap .pagination a.next:before,
	.dbtn:before {
	    height: 22px;
	}
}

@media (min-width: 768px) and (max-width: 991px) {


}

     
/* Landscape phone to portrait tablet */
@media (max-width: 767px) { 
	
	@media screen and (orientation: landscape) {

	}
	
	.header nav.elementor-nav-menu--dropdown {
		padding: 0px;
	}
	
	.elementor-section.elementor-section-boxed > .elementor-container {
		padding-left: 10px;
		padding-right: 10px;
	}

	.projectWrap .pagination .next.page-numbers,
	.keepWrap .pagination a.next,
	.dbtn {
	    font-size: 16px !important;
    	padding: 16px 30px !important;
	}

	.projectWrap .pagination .next.page-numbers:before,
	.keepWrap .pagination a.next:before,
	.dbtn:before {
	    height: 22px;
	}

	.safari.iphone.osx form.elementor-form select, 
	.safari.iphone.osx form.elementor-form textarea,
	.safari.iphone.osx form.elementor-form input {
	 	box-shadow: 0 0 0;
	 	border: 1px solid #8d8d8d !important;
	 }

	

 


}

     
/* Landscape phones and down */
@media (max-width: 480px) { 


}