/*
Theme Name: Greenxus
Theme URI: https://divi.pixelsbuilderplus.com/divi-themes/greenxus
Description: Greenxus Divi Solar Services Theme perfect for Solar Panel Systems, Wind Turbines, Hydropower, Geothermal Energy, Eco-friendly, Environmental Protection Organizations, Alternative Energy, Green Power company websites, and many more. 
Author: Divi Builder Plus
Author URI: https://divibuilderplus.com/
Template: Divi
Version:  1.0
License:  GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
*/
/* -----------------------------------------------------------------------------   
    TABLE OF CONTENT
---------------------------------------------------------
  01. General Class CSS
		Title CSS		
		Button CSS
    Page Header Title Css
		Breadcrumbs CSS
	02.Header Section CSS
      Menu + Sub Menu CSS
    	Header v1 CSS
	    Header v2 CSS
		  Header v3 CSS
	03.Footer Section CSS
		  Footer v1 CSS
		  Footer v2 CSS
		  Footer v3 CSS
  04.Sidebar CSS
  05.Blog CSS
		  Blog Grid CSS
			  2 Columns CSS
        3 Columns CSS
			  4 Columns CSS
      Blog Listing CSS 
		  Blog Category Page CSS 
		  Blog Tags Page CSS 
		  Blog Author Page CSS 
		  Blog Single Page CSS
	06.Portfolio CSS
		  Portfolio Default CSS
		  Portfolio Filterable CSS
			  2 Columns CSS
        3 Columns CSS
			  4 Columns CSS
      Portfolio Carousel CSS 
		  Portfolio Gallary CSS 
		  Portfolio Category Page CSS 
		  Portfolio Tags Page CSS 
		  Portfolio Single Page CSS
  07.Services CSS
		  Services v1 CSS
		  Services v2 CSS
		  Services v3 CSS
		  Services Single Page CSS
	08.Contact Us CSS
		  Contact Us v1 CSS
		  Contact Us v2 CSS
	09.Team Section CSS
		  Team v1 CSS
		  Team v2 CSS
		  Team v3 CSS
		  Team Single CSS
  10.Slider Section CSS
		  Slider v1 CSS
  11.Faqs CSS
		  Faqs v1 CSS
	12.Timeline CSS
		  Timeline v1 CSS
	13.Pricing Table CSS
		  Pricing Default CSS
		  Pricing Mini CSS
		  Pricing Toggle CSS
		  Pricing Table CSS
  14Testimonial Section CSS
	    Testimonial v1 CSS
	    Testimonial v2 CSS
	    Testimonial v3 CSS	
  15.About Us Section CSS
  16.Choose Us Section CSS
  17.Process Section CSS
  18.Partner Section CSS
  19.Video Section CSS
  20.Skill-bar Section CSS
  21.Counter Section CSS
  22.Newsletter Section CSS
  23.CTA Section CSS
  24.Coming Soon Page CSS
  25.404 Page CSS
	26.Search Page CSS
  27.Tab Control CSS
  28.Feature CSS
  29.Banner Sec Css
  30. Slide In CSS
  31.Color Picker CSS
  32.Animation Part CSS

--------------------------------------------------------*/
/* -----------------------------------
    01. General Class CSS Start
-------------------------------------*/

/* ::selection {
  background-color: var(--px-color-1);
  color: #fff;
} */

/*---Title CSS---*/
.px_title h2 {
  font-size: 44px;
  line-height: 1.2em;
  font-weight: 800;
  text-transform: none;
  color: #252628;
}

.px_subtitle {
  margin-bottom: 10px !important;
}

.px_subtitle .et_pb_text_inner {
  color: var(--px-color-1);
  font-size: 16px;
  line-height: 1.2em;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

@media only screen and (max-width: 1280px) {
  .px_title h2 {
    font-size: 36px;
  }
}

/*---Button CSS---*/
.px_btn,
.px_blog_v1 .et_pb_post .more-link,
.px_slider_v1 .et_pb_slide .et_pb_more_button,
.px_portfolio_v1 .pagination .alignleft a,
.px_portfolio_v1 .pagination .alignright a,
.px_blog_v1 .pagination .alignleft a,
.px_blog_v1 .pagination .alignright a,
.px_blog_datails_v1 .px_blog_datails_comment .et_pb_button {
  position: relative;
  display: block;
  border: none;
  width: fit-content;
  text-transform: capitalize;
  text-align: center;
  background-color: var(--px-color-1);
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  padding: 12px 20px !important;
  border-radius: 9999px;
  z-index: 1;
}

.px_btn:hover,
.px_blog_v1 .et_pb_post .more-link:hover,
.px_slider_v1 .et_pb_slide .et_pb_more_button:hover,
.px_portfolio_v1 .pagination .alignleft a:hover,
.px_portfolio_v1 .pagination .alignright a:hover,
.px_blog_v1 .pagination .alignleft a:hover,
.px_blog_v1 .pagination .alignright a:hover,
.px_blog_datails_v1 .px_blog_datails_comment .et_pb_button:hover {
  color: var(--px-color-1);
  /* padding: 12px 20px !important; */
  background: var(--px-color-1) !important;
}

.px_btn::before,
.px_blog_v1 .et_pb_post .more-link::before,
.px_slider_v1 .et_pb_slide .et_pb_more_button::before,
.px_portfolio_v1 .pagination .alignleft a::before,
.px_portfolio_v1 .pagination .alignright a::before,
.px_blog_v1 .pagination .alignleft a::before,
.px_blog_v1 .pagination .alignright a::before,
.px_blog_datails_v1 .px_blog_datails_comment .et_pb_button::before {
  content: "";
  position: absolute;
  display: block;
  left: 3px;
  top: 3px;
  right: 3px;
  bottom: 3px;
  background-color: #fff;
  border-radius: inherit;
  z-index: -1;
  opacity: 0;
  visibility: hidden;
  transform: scale(0.2);
  transition: all ease .4s;
}

.px_btn:hover::before,
.px_blog_v1 .et_pb_post .more-link:hover::before,
.px_slider_v1 .et_pb_slide .et_pb_more_button:hover::before,
.px_portfolio_v1 .pagination .alignleft a:hover::before,
.px_portfolio_v1 .pagination .alignright a:hover::before,
.px_blog_v1 .pagination .alignleft a:hover::before,
.px_blog_v1 .pagination .alignright a:hover::before,
.px_blog_datails_v1 .px_blog_datails_comment .et_pb_button:hover::before {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
  margin-left: 0px !important;
}

.px_btn:after,
.px_blog_v1 .et_pb_post .more-link::after,
.px_slider_v1 .et_pb_slide .et_pb_more_button::after,
.px_portfolio_v1 .pagination .alignleft a::after,
.px_portfolio_v1 .pagination .alignright a::after,
.px_blog_v1 .pagination .alignleft a::after,
.px_blog_v1 .pagination .alignright a::after,
.px_blog_datails_v1 .px_blog_datails_comment .et_pb_button::after {
  content: "";
  position: absolute;
}

.px_btn.light {
	    background-color: #fff;
    color: var(--px-color-1);
}
.px_btn.light:hover {
	color: #fff;
    background: #fff !important;
}
.px_btn.light:before {
	    background-color: var(--px-color-1);
}



/*--- Global Class CSS ---*/
/*****Pagination******/

.pagination-container {
  margin-bottom: 0px !important;
}

.et_pb_row_custom_pagination {
  clear: both;
  text-align: left;
}

.pagination-container {
  padding-top: 0 !important;
  margin-top: 2em;
  margin-bottom: 2em;
}

.screen-reader-text {
  display: none;
}

.navigation.px_blogpagination .page-numbers {
  display: inline-block;
  border-right: 0;
  padding: 0em 1em;
  margin: 0 -1px;
  line-height: 2.6em;
}

.navigation.px_blogpagination .page-numbers.prev,
.navigation.px_blogpagination .page-numbers.next {
  padding: 0 .5em;
}

.navigation.px_blogpagination span.page-numbers {
  color: #fff;
  border: 1px solid;
  border-color: #000 !important;
  font-weight: 600;
}

.navigation.px_blogpagination .page-numbers .et-pb-icon {
  font-size: 1.6em;
  vertical-align: middle;
  line-height: 1.5em;
  margin-top: -3px;
}

.navigation.px_blogpagination a.page-numbers:hover,
.navigation.px_blogpagination span.page-numbers {
  background-color: #000 !important;
}

.navigation.px_blogpagination a.page-numbers {
  color: #fff !important;
  background: #000;
}

.navigation.px_blogpagination a.page-numbers:hover {
  color: #fff !important;
}

/* ---- Img Hover Css ---- */
.px_circle_img .et_pb_image_wrap {
  overflow: hidden;
  position: relative;
}

.px_circle_img .et_pb_image_wrap::before {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  display: block;
  content: '';
  width: 0;
  height: 0;
  background: rgba(255, 255, 255, .2);
  border-radius: 0%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
}

.px_circle_img .et_pb_image_wrap:hover::before {
  -webkit-animation: circle .95s;
  animation: circle .95s;
}

/* -----------------------------------
    01. General Class CSS End
-------------------------------------*/
/* -----------------------------------
    02. Header Section CSS Start
-------------------------------------*/
/*--- Header v1 CSS Start ---*/

.px_header_top_v1 {
  background-color: var(--px-color-1);
}

.et_pb_menu__logo {
  position: relative;
  overflow: visible;
  margin-right: 0 !important;
}

.px_header_v1 .px_header_row .px_header_column_01 {
  z-index: 1;
}

.px_header_v1 .px_header_row .px_header_column_02 .px_btn {
  border-radius: 50px 0px 0px 50px;
  position: absolute;
  left: -45px;
}

.px_header_v1 .px_header_row .px_header_column_02 .px_icon_bar {
  position: absolute;
  top: 0px;
  right: 17px;
  border-radius: 0px 50px 50px 0px;
  padding: 1.5px !important;
  z-index: 99;
  overflow: visible;
}

@media only screen and (min-width: 981px) {
  .px_header_v1 .px_header_row .px_header_column_02 {
    width: 15%;
  }

  .px_header_v1 .px_header_row .px_header_column_01 {
    width: 80%;
  }
}

@media only screen and (max-width: 980px) {
  .px_header_v1 .et_pb_menu_inner_container .et_pb_menu__wrap {
    justify-content: flex-end !important;
  }
}

.px_header_v1 .px_h_social {
  position: relative;
  right: -70px;
}

.px_header_v1 .px_h_social::before {
  position: absolute;
  content: "Share:";
  top: 3px;
  right: 0px;
  bottom: 0;
  left: -50px;
  font-weight: 600;
  color: #fff;
}

.px_header_v1 .px_h_social li {
  position: relative;
  display: inline-block;
  float: none;
  margin: 0 3px;
}

.px_header_v1 .px_h_social li a {
  position: relative;
  display: block;
  margin: 0;
  background: rgba(255, 255, 255, 0.15);
  border-radius: 50%;
  transition: all 200ms linear;
  transition-delay: 0.1s;
  z-index: 1;
}

.px_header_v1 .px_h_social li a::after {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  background: var(--px-color-1);
  content: "";
  border-radius: 50%;
  z-index: -1;
  transform: scale(0.0);
  transform-origin: center;
  transform-style: preserve-3d;
  transition: all 0.4s cubic-bezier(0.62, 0.21, 0.45, 1.52);
}

.px_header_v1 .px_h_social li a:hover::after {
  transform: scaleX(1.0);
}

.px_header_v1 .px_h_menu .et_pb_menu__logo {
  margin-right: 30px !important;
  margin-bottom: 10px;
}

.px_header_v1 .et_pb_menu__wrap {
  justify-content: flex-start !important;

}

.px_header_v1 .px_h_menu .nav li {
  padding-left: 9px;
  padding-right: 9px;
  transition: all 500ms ease;
}

.px_header_v1 .px_h_menu .nav li a {
  color: #000;
  font-size: 14px;
  font-weight: 600;
	text-transform: uppercase;
}

.px_header_v1 .px_h_menu .nav li ul li a {
  -webkit-transition: all .2s;
  transition: all .2s;
}

.px_header_v1 .px_h_menu .nav li ul li a:hover {
  margin-left: 25px;
  background: transparent;
  color: var(--px-color-1);
  opacity: 1;
}

.px_header_v1 .px_h_menu .nav li ul li a::after {
  top: 12px !important;
  color: #000;
}

.px_header_v1 .px_h_menu .nav li ul li a:before {
  margin-left: -1em;
  left: auto;
  font-family: FontAwesome!important;
  font-weight: 900!important;
  font-size: 20px;
  line-height: 1.2;
  content: "\f5ba";
  top: 15px;
  bottom: 0;
  opacity: 0;
  position: absolute;
  margin-left: -5px;
  -webkit-transition: all .2s;
  transition: all .2s;
  text-transform: none;
  -webkit-font-feature-settings: "kern" off;
  font-feature-settings: "kern" off;
  font-variant: none;
  font-style: normal;
  font-weight: 400;
  text-shadow: none;
  color: var(--px-color-1);
}

.px_header_v1 .px_h_menu .nav li ul li a:hover:before {
  left: auto;
  margin-left: -30px;
  opacity: 1;
}

.px_header_v1 .px_h_menu .nav li ul {
  position: absolute;
  width: 250px;
  padding: 0px 0;
  opacity: 0;
  visibility: hidden;
  border-radius: 10px;
  border: none;
  -moz-transform: translateY(30px);
  -webkit-transform: translateY(30px);
  -ms-transform: translateY(30px);
  -o-transform: translateY(30px);
  transform: translateY(30px);
  transition: all 100ms ease;
  z-index: 100;
}

.px_header_v1 .px_h_menu .nav li ul li a {
  color: #000;
  border-bottom: 1px solid rgba(255, 255, 255, 0.20);
  padding: 13px 0px 13px;
  font-size: 15px;
}

.px_header_v1 .px_h_menu .nav li ul li:last-child a {
  border-bottom: none;
}

.px_header_v1 .px_h_menu .nav li ul li ul {
  top: 0;
}

.px_header_v1 .px_h_menu.et_dropdown_animation_fade.et_pb_menu ul li:hover>ul {
  opacity: 1;
  visibility: visible;
  -moz-transform: translateY(0);
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -webkit-transition: all 500ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
}

.px_header_v1 .px_h_menu.et_pb_menu_0_tb_header.et_pb_menu .nav li ul,
.et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu,
.et_pb_menu_0_tb_header.et_pb_menu .et_mobile_menu ul {
  background-color: #fff !important;
}

.px_header_v1 .px_h_menu .et_mobile_menu li a {
  color: #000 !important;
}

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

  .px_header_v1 .px_header_row {
    width: 100%;
    padding: 0px !important;
  }
}

@media only screen and (min-width: 980px) and (max-width: 1230px) {
  .px_header_top_v1 .px_h_top_row {
    width: 100%;
    padding: 0 15px;
  }

  .px_header_v1 .px_h_top_row .px_h_top_row_column_02 {
    display: none;
  }

  .px_header_v1 .px_header_row {
    width: 100%;
    padding: 0 15px;
  }
}

@media only screen and (max-width: 1280px) {
  .px_header_v1 .px_h_top_row .px_h_top_row_column_02 {
    display: none;
  }

  .px_header_v1 .px_h_top_row .px_h_top_row_column_03 {
    width: 46%;
  }

  .px_header_v1 .px_h_menu .nav li {
    padding-left: 4px;
    padding-right: 4px;
  }
}

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

  .px_header_v1 .px_h_top_row .px_h_top_row_column_02 {
    width: 50%;
    margin-right: 0;
  }

  .px_header_v1 .px_h_top_row .px_h_top_row_column_03 {
    width: 100%;
  }
}

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

  .px_header_v1 .px_h_top_row .px_h_top_row_column_02 {
    display: none;
  }

  .px_header_v1 .px_h_top_row .px_h_top_row_column_03 {
    width: 100%;
  }
}

/*--- Header v1 CSS End ---*/
/*--- Header v2 CSS Start ---*/

.px_header_top_v2 .px_h_top_row .px_h_top_row_column_01,
.px_header_top_v2 .px_h_top_row .px_h_top_row_column_02,
.px_header_top_v2 .px_h_top_row .px_h_top_row_column_03 {
  padding-top: 0px;
}

.px_header_top_v2 .px_h_top_row .px_h_top_row_column_01 {
  margin-right: 0px !important;
}

.px_header_v2 .px_h_info {
  margin-left: 25px;
}

.px_header_v2 .px_h_social {
  margin-right: -45px;
  margin-top: 2px;
}

.px_header_v2 .px_h_social::before {
  content: "";
  position: absolute;
}

.px_header_v2 .px_h_social li a {
  background: none;
}

.px_header_v2 .px_h_social li a::before {
  transition: all 300ms ease;
}

.px_header_v2 .px_h_social li a:hover::before {
  color: #000;
}

.px_header_v2 .px_h_social li a:after {
  content: "";
  position: absolute;
}

.px_header_v2 .px_header_row .px_header_column_01 {
  width: auto;
  margin-right: 15px;
  margin-top: 6px;
  display: flex;
}

.px_header_v2 .px_header_row .px_header_column_02 {
  width: fit-content;
  margin: 0 !important;
  padding: 0;
}

.px_header_v2 .px_h_menu .et_pb_menu__logo {
  margin-right: 30px !important;
}

.px_header_v2 .px_header_row {
  padding-bottom: 0px !important;
}

.px_header_v2 .px_h_menu .nav li a {
  font-size: 15px;
  font-weight: 500;
  padding: 0px 15px 0px 0px;
	text-transform: none;
}

.px_header_v2 .px_h_menu .nav li a::after {
  content: "";
  position: absolute;
}

.px_header_v2 .px_btn {
  margin-top: 0px;
  border-radius: 0px 10px 10px 0px !important;
  padding: 18.7px 9px !important;
  font-size: 14px;
}

.px_header_v2 .px_btn::after {
  content: "";
  position: absolute;
  border-radius: 10px !important;
}

.px_header_v2 .px_h_menu .nav {
  background-color: #efefef;
  border-radius: 10px;
}

.px_header_v2 .px_h_contact {
  margin-top: 10px !important;
}

.px_header_v2 .px_h_contact .et-pb-icon {
  color: var(--px-color-1);
  border: 1px solid #d5d5d5;
  padding: 10px;
  border-radius: 50%;
}

.px_header_v2 .et_pb_module_header {
  line-height: 1.3em;
  padding-bottom: 0px;
}

.px_header_v2 .px_h_social li {
  margin-bottom: 0px;
}

@media only screen and (max-width: 1480px) {
  .px_header_v2 .px_h_menu .nav li {
    padding-left: 2px;
    padding-right: 2px;
  }
}


@media only screen and (min-width: 981px) and (max-width: 1300px) {
  .px_header_v2 .px_h_menu .nav li a {
    font-size: 14px;
  }
}

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

  .px_header_top_v2 .px_h_top_row .px_h_top_row_column_01,
  .px_header_top_v2 .px_h_top_row .px_h_top_row_column_02 {
    display: none !important;
  }

  .px_header_top_v2 .px_h_top_row .px_h_top_row_column_03 {
    width: 100% !important;
  }

  .px_header_v2 .px_h_social {
    margin-right: 0px !important;
  }
}

@media only screen and (min-width: 980px) and (max-width: 1050px) {

  .px_header_top_v2 .px_h_top_row .px_h_top_row_column_01 {
    display: none;
  }

  .px_header_top_v2 .px_h_top_row .px_h_top_row_column_03 {
    width: 62%;
  }

  .px_header_v2 .px_btn {
    padding: 19px 9px !important;
    font-size: 13px;
  }
}

@media only screen and (max-width: 980px) {
  .px_header_v2 .px_header_row .px_header_column_01 {
    display: unset;
    width: 100%;
  }

 
}

/*--- Header v2 CSS End ---*/
/*---Header v3  CSS Start---*/

.px_header_v3 {
  background-color: var(--px-color-3);
}

.px_header_v3 .px_header_row .px_header_column_02 {
  width: 16%;
}

.px_header_top_v3 .px_btn {
  text-align: center;
}

.px_header_v3 .px_header_row {
  padding: 20px 0px;
}

.px_header_top_v3 .px_h_top_row .px_h_top_row_column_04 {
  position: relative;
}

.px_header_top_v3 .px_h_top_row .px_btn {
  border-radius: 50px 0px 0px 50px;
  position: absolute;
  left: 40px;
}

.px_header_top_v3 .px_h_top_row .px_icon_bar {
  position: absolute;
  top: -16px;
  right: 17px;
  border-radius: 0px 50px 50px 0px;
  padding: 1.5px !important;
  z-index: 99;
  overflow: visible;
}

.px_header_v3 .px_h_menu .nav li a {
  color: #fff;
}

.px_header_top_v3 .px_h_contact {
  margin-top: 30px !important;
}

.px_header_top_v3 .px_h_contact .et-pb-icon {
  color: var(--px-color-1);
  border: 1px solid #d5d5d5;
  padding: 10px;
  border-radius: 50%;
}

.px_header_top_v3 .et_pb_module_header {
  line-height: 1.3em;
  padding-bottom: 0px;
}

.px_header_v3 .px_h_menu .nav li {
  padding-left: 15px;
  padding-right: 15px;
}

.px_header_v3 .px_h_social {
  right: -45px;
}

@media only screen and (min-width: 980px) and (max-width: 1230px) {
  .px_header_top_v3 .px_h_top_row {
    width: 100%;
    max-width: 100%;
  }
}

@media only screen and (min-width: 1231px) and (max-width: 1291px) {
  .px_header_top_v3 .px_h_top_row .px_icon_bar {
    top: -15px;
  }
}
@media only screen and (min-width: 981px) and (max-width: 1230px) {
  .px_header_top_v3 .px_h_top_row .px_btn {
    left: -20px;
  }
  .px_header_top_v3 .px_h_top_row .px_icon_bar {
    right: 104px;
    top: -18px;
  }
}
@media only screen and (min-width: 1101px) and (max-width: 1166px) {
  .px_header_top_v3 .px_h_top_row .px_icon_bar {
    top: -17px;
  }
}
@media only screen and (min-width: 1035px) and (max-width: 1100px) {
  .px_header_top_v3 .px_h_top_row .px_icon_bar {
    top: -16px;
  }
}
@media only screen and (min-width: 134px) and (max-width: 1034px) {
  .px_header_top_v3 .px_h_top_row .px_icon_bar {
    top: -15px;
  }
}
@media only screen and (min-width: 1085px) and (max-width: 1140px) {
  .px_header_top_v3 .px_h_top_row .px_icon_bar {
    right: 90px;
  }
}
@media only screen and (min-width: 1000px) and (max-width: 1085px) {
  .px_header_top_v3 .px_h_top_row .px_icon_bar {
    right: 75px;
  }
}
@media only screen and (min-width: 981px) and (max-width: 999px) {
  .px_header_top_v3 .px_h_top_row .px_icon_bar {
    right: 55px;
  }
}

@media only screen and (min-width: 981px) {
  .px_header_v3 .px_header_row .px_header_column_01 .px_h_menu .et_pb_menu__logo-wrap {
    display: none !important
  }
}

@media only screen and (min-width: 981px) and (max-width: 1050px) {
  .px_header_top_v3 .px_h_top_row {
    width: 100%;
  }

  .px_header_v3 .px_header_column_01 {
    width: fit-content !important;
  }

  .px_header_v3 .px_header_row .px_header_column_02 {
    width: 25%;
  }

  .px_header_v3 .px_h_social {
    right: -130px;
  }

  .px_header_v3 .px_header_row {
    padding: 20px !important;
  }
}

@media only screen and (max-width: 980px) {
  .px_header_top_v3 {
    display: none;
  }

  .px_header_v3 {
    background-color: #fff;
  }
}

@media only screen and (max-width: 479px) {
.px_header_v3 .px_header_row {
  	width: 90%;
}
}
/*---Header v3  CSS End ---*/
/* -----------------------------------
    02. Header Section CSS End
-------------------------------------*/
/* -----------------------------------
    03. Footer Section CSS Start
-------------------------------------*/
/*--- Footer v1 CSS Start ---*/

.px_footer_v1 .px_f_small_info .et_pb_blurb_container {
  padding-left: 0px;
}

.px_footer_v1 .px_f_info_link {
  position: relative;
  display: inline-block;
  color: #ffffff;
  font-size: 15px;
  font-weight: 400;
  transition: all 200ms linear;
  transition-delay: 0.1s;
}

.px_footer_v1 .px_f_info_link:hover {
  color: var(--px-color-1);
}

.px_footer_v1 .px_f_info_link::after {
  position: absolute;
  content: "" !important;
}

.px_footer_v1 .px_f_email {
  margin-bottom: 0px !important;
}

.px_footer_v1 .px_f_email .et_pb_newsletter_field {
  position: relative;
}

.px_footer_v1 .px_f_email .et_pb_newsletter_field::after {
  opacity: 1;
  top: 0;
  bottom: auto;
  left: auto;
  right: 0px;
  content: "\24";
  font-family: ETmodules !important;
  font-weight: 400 !important;
  font-size: 22px;
  line-height: 1em;
  position: absolute;
  transition: all .2s;
  text-transform: none;
  font-style: normal;
  background-color: var(--px-color-1);
  padding: 12.5px;
  overflow: hidden;
  border-radius: 0px 50px 50px 0px;
}

.px_footer_v1 .px_f_email .et_pb_newsletter_button_wrap {
  display: none;
}

.px_footer_v1 .px_f_social li {
  position: relative;
  display: inline-block;
  float: none;
  margin: 0 3px;
}

.px_footer_v1 .px_f_social li a {
  position: relative;
  display: block;
  margin: 0;
  background: rgba(255, 255, 255, 0.15);
  border-radius: 50%;
  transition: all 200ms linear;
  transition-delay: 0.1s;
  z-index: 1;
  padding: 7px;
}

.px_footer_v1 .px_f_social li a::before {
  font-size: 18px;
}

.px_footer_v1 .px_f_social li a::after {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  background: var(--px-color-1);
  content: "";
  border-radius: 50%;
  z-index: -1;
  transform: scale(0.0);
  transform-origin: center;
  transform-style: preserve-3d;
  transition: all 0.4s cubic-bezier(0.62, 0.21, 0.45, 1.52);
}

.px_footer_v1 .px_f_social li a:hover::after {
  transform: scaleX(1.0);
}

.px_footer_bottom_v1 .px_copyright_text .et_pb_text_inner span {
  color: var(--px-color-1);
}

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

  .px_footer_v1 .et_pb_row_1_tb_footer {
    width: 90% !important;
  }

}

@media only screen and (min-width: 980px) and (max-width: 1150px) {
  .px_footer_v1 .px_f_row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 30px;
    grid-row-gap: 20px;
  }

  .px_footer_v1 .px_f_row .et_pb_column {
    width: 100%;
  }
}

/*--- Footer v1 CSS End ---*/
/*--- Footer v2 CSS Start ---*/

.px_footer_v2 .px_f_email .et_pb_newsletter_field .input {
  border-radius: 10px !important;
}

.px_footer_v2 .px_f_email .et_pb_newsletter_field::after {
  content: "\F3FE";
  font-family: FontAwesome !important;
  background: transparent;
  color: var(--px-color-1);
  line-height: 1.7em;
  border-radius: 0px 10px 10px 0px;
}

.px_footer_v2 .px_f_social li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  font-size: 15px;
  border-radius: 17px;
  border: 2px solid var(--px-color-1);
  overflow: hidden;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
  z-index: 1;

}

.px_footer_v2 .px_f_social li a:hover {
  border: 2px solid #fff;
}

.px_footer_v2 .px_f_social li a:hover::before {
  color: var(--px-color-1) !important;
}

.px_footer_v2 .px_f_social li a::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  border-radius: 0px;
  background-color: #fff;
  -webkit-transition-delay: .1s;
  transition-delay: .1s;
  -webkit-transition-timing-function: ease-in-out;
  transition-timing-function: ease-in-out;
  -webkit-transition-duration: .4s;
  transition-duration: .4s;
  -webkit-transition-property: all;
  transition-property: all;
  opacity: 1;
  -webkit-transform-origin: top;
  transform-origin: top;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  z-index: -1;
}

.px_footer_v2 .px_f_social li a:hover::after {
  opacity: 1;
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
}

.px_footer_v2 .px_f_contact .et-pb-icon {
  color: var(--px-color-1);
}

/*--- Footer v2 CSS End ---*/
/*--- Footer v3 CSS Start ---*/

.px_footer_service .px_footer_service_row {
	background-color: var(--px-color-1);
}

.px_footer_service .px_footer_service_row .px_footer_service_blurb .et_pb_image_wrap {
	    display: block;
    margin: auto;
    background-color: #fff;
    height: 50px;
    width: 50px;
    padding: 7px;
    border-radius: 5px;
} 
.px_footer_service .px_footer_service_row .px_footer_service_blurb .et_pb_image_wrap img {
	width: 40px;
}

.px_footer_v3 .px_f_title {
  position: relative;
  margin-left: 10px;
  padding: 0px 0px 10px;
  border-bottom: 1px solid rgb(255 255 255 / 20%);
}

.px_footer_v3 .px_f_contact .et_pb_image_wrap {
  background: #fff;
  padding: 5px;
  border-radius: 5px;
  margin-top: -3px;
}

.px_footer_v3 .px_f_contact .et-pb-icon {
  color: var(--px-color-1);
}

.px_footer_v3 .px_f_email .et_pb_newsletter_field .input {
  border-radius: 10px !important;
}

.px_footer_v3 .px_f_email .et_pb_newsletter_field::after {
  content: "\F3FE";
  font-family: FontAwesome !important;
  border-radius: 10px;
  margin: 2px;
  font-size: 18px;
}

.px_footer_v3 .px_f_social li a {
  border-radius: 5px;
}

.px_footer_v3 .px_f_social li a::after {
  content: "";
  position: absolute;
  border-radius: 5px;
}

.px_footer_v3 .px_f_title::after {
  content: "";
  width: 50px;
  height: 2px;
  bottom: -2px;
  left: 0;
  display: block;
  position: absolute;
  z-index: 1;
  background: var(--px-color-1);
}


/*--- Footer v3 CSS End ---*/
/* -----------------------------------
    03. Footer Section CSS End
-------------------------------------*/
/* -----------------------------------
     04. Sidebar CSS Start
-------------------------------------*/
/* .px_sidebar {}

.px_sidebar .widgettitle {} */
/* -----------------------------------
     04. Sidebar CSS Start End
-------------------------------------*/
/* -----------------------------------
     05. Blog CSS Start
-------------------------------------*/
/* Blog v1 Start */
/*---Blog Grid CSS & 3 Columns CSS ---*/

.px_blog_v1 .pagination .alignleft,
.px_blog_v1 .pagination .alignright {
  line-height: normal;
  margin-top: 20px;
}

.px_blog_v1 .et_pb_post {
  position: relative;
  overflow: hidden;
  border: none;
  border-radius: 20px;
  padding: 0;
  box-shadow: 0px 10px 50px 0px rgb(26 46 85 / 10%);
}

.px_blog_v1 .et_pb_post .entry-title {
  color: #000;
  font-weight: 600;
  transition: all 500ms ease;
  padding: 0px 20px 10px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.px_blog_v1 .et_pb_post .entry-title:hover {
  color: var(--px-color-1);
}

.px_blog_v1 .et_pb_post .post-meta .published {
  position: absolute;
  top: -14px;
  right: -22px;
  font-size: 16px;
  font-weight: 600;
  background-color: var(--px-color-2);
  color: #fff;
  padding: 25px 20px 20px 25px;
  border-radius: 50%;
  transform: rotate(45deg);
  z-index: 1;
}

.px_blog_v1 .et_pb_post .et_pb_image_container {
  margin: 0;
  position: relative;
  overflow: hidden;
}

.px_blog_v1 .et_pb_post .et_pb_image_container::before {
  position: absolute;
  top: 0%;
  left: 0%;
  display: block;
  content: '';
  width: 0;
  height: 0;
  background: rgba(255, 255, 255, .4);
  border-radius: 50%;
  transform: translateX(-50%, -50%) !important;
  opacity: 0;
  z-index: 1;
}

.px_blog_v1 .et_pb_post:hover .et_pb_image_container::before {
  -webkit-animation: circle .95s;
  animation: circle .95s;
}

.px_blog_v1 .et_pb_post .et_pb_image_container .entry-featured-image-url img {
  border-radius: 20px;
  height: 250px;
  object-fit: cover;
}

.px_blog_v1 .et_pb_post .post-meta {
  font-size: 15px;
  font-weight: 500;
  border-bottom: 1px solid #c7c7c7;
  margin: 0px 20px 10px;
  padding-bottom: 10px;
}

.px_blog_v1 .et_pb_post .post-meta a:last-child {
  position: relative;
  margin-right: 20px;
}

.px_blog_v1 .et_pb_post .post-content {
  padding: 0px 20px 20px;
}

.px_blog_v1 .et_pb_post .post-meta a:last-child::before {
  position: absolute;
  content: "";
  height: 5px;
  width: 5px;
  border-radius: 50%;
  top: 9px;
  right: -14px;
  background-color: var(--px-color-1);
}

.px_blog_v1 .et_pb_post .more-link {
  margin-top: 20px;
  line-height: normal;
}

/* Blog v1 End */
/* Blog v1 Slider Start */

.px_blog_v1 .blog_carousel_v1 .et_pb_post {
  margin: 0px 20px 40px;
  box-shadow: 0px 10px 18px 0px rgb(26 46 85 / 10%);
}

.px_blog_v1 .blog_carousel_v1 .et_pb_post img {
  height: 350px;
  object-fit: cover;
  border-radius: 20px;
}

/* Blog v1 Slider End */
/* Blog v1 List View Start */

.px_blog_list_view .et_pb_post {
  display: flex;
  flex-direction: row-reverse;
  border-radius: 20px;
}

.px_blog_list_view .et_pb_post .entry-featured-image-url {
  margin-bottom: 0px;
}

.px_blog_list_view .et_pb_post img {
  border-radius: 20px;
  height: 250px;
  object-fit: cover;
}

.px_blog_list_view .et_pb_post .info {
  padding: 20px;
}

.px_blog_list_view .et_pb_post .post-content {
  padding-bottom: 0px;
}
@media only screen and (min-width: 700px) and (max-width: 1140px) {
	.px_blog_list_view .et_pb_post img {
		height: 100%;
	}
}
@media only screen and (min-width: 700px) {
	.px_blog_list_view .et_pb_post .entry-featured-image-url,
	.px_blog_list_view .et_pb_post .info{
		width: 50%;
	}
}
@media only screen and (max-width: 699px) {

  .px_blog_list_view .et_pb_post {
    display: block;
  }

  .px_blog_list_view .et_pb_post .info {
    padding: 0px;
  }

  .px_blog_list_view .et_pb_post .entry-title {
    margin-top: 15px;
  }

  .px_blog_list_view .et_pb_post .post-content {
    padding-bottom: 20px;
  }
}

/* Blog v1 List View End */
/*---Blog Grid 2 Columns CSS Start ---*/

.px_blog_grid_2_col .et_pb_post {
  margin-bottom: 10px !important;
}

.px_blog_grid_2_col .et_pb_salvattore_content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 30px;
  grid-row-gap: 20px;
}

.px_blog_grid_2_col .et_pb_salvattore_content .column {
  width: 100% !important;
  display: contents;
}

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

  .px_blog_grid_2_col .et_pb_salvattore_content {
    grid-template-columns: repeat(1, 1fr);
  }

}

/*---Blog Grid 2 Columns CSS End ---*/
/*---Blog Grid 4 Columns CSS Start ---*/
.px_blog_v1.px_blog_grid_4_col .et_pb_post {
  margin-bottom: 20px !important;
}

.px_blog_grid_4_col .et_pb_salvattore_content {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-column-gap: 30px;
  grid-row-gap: 20px;
}

.px_blog_grid_4_col .et_pb_salvattore_content .column {
  width: 100% !important;
  display: contents;
}

@media only screen and (max-width: 1080px) {
  .px_blog_grid_4_col .et_pb_salvattore_content {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media only screen and (max-width: 700px) {
  .px_blog_grid_4_col .et_pb_salvattore_content {
    grid-template-columns: repeat(1, 1fr);
  }
}

/*---Blog Grid 4 Columns CSS End ---*/
/*---Blog Details Page CSS Start ---*/

.px_blog_datails_v1 .px_blog_datails_img .et_pb_image_wrap img {
  border-radius: 20px;
  object-fit: cover;
  height: 400px;
}

.px_blog_datails_v1 .px_blog_datails_img .published {
  position: absolute;
  bottom: 120px;
  left: 15px;
  font-size: 20px;
  font-weight: 600;
  background-color: var(--px-color-1);
  color: #fff;
  border-radius: 20px;
  padding: 20px;
  z-index: 1;
}

.px_blog_datails_v1 .px_blog_datails_img .entry-title {
  font-size: 40px !important;
  font-weight: 600;
}

.px_blog_datails_v1.px_blog_datails_right_side_bar .px_blog_datails_img .published,
.px_blog_datails_v1.px_blog_datails_left_side_bar .px_blog_datails_img .published {
  bottom: 160px;
}

@media only screen and (max-width: 1150px) {
  .px_blog_datails_v1.px_blog_datails_full_width .px_blog_datails_img .entry-title {
    font-size: 30px !important;
  }

  .px_blog_datails_v1.px_blog_datails_full_width .px_blog_datails_img .published {
    bottom: 110px;
  }
}

@media only screen and (max-width: 500px) {
  .px_blog_datails_v1.px_blog_datails_full_width .px_blog_datails_img .published {
    bottom: 140px;
  }
}

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

  .px_blog_datails_v1.px_blog_datails_right_side_bar .px_blog_datails_img .published,
  .px_blog_datails_v1.px_blog_datails_left_side_bar .px_blog_datails_img .published {
    bottom: 140px;
  }

  .px_blog_datails_v1.px_blog_datails_right_side_bar .px_blog_datails_img .entry-title,
  .px_blog_datails_v1.px_blog_datails_left_side_bar .px_blog_datails_img .entry-title {
    font-size: 30px !important;
  }
}

@media only screen and (max-width: 527px) {
  .px_blog_datails_v1 .px_blog_datails_img .entry-title {
    font-size: 25px !important;
  }

  .px_blog_datails_v1 .px_blog_datails_img .published {
    bottom: 105px;
  }
}

.px_blog_datails_v1 .px_blog_datails_blurb {
  background-color: #eff8ee;
}

.px_blog_datails_v1 .px_blog_datails_blurb .et_pb_blurb_container {
  vertical-align: middle;
}

.px_blog_datails_v1 .px_blog_datails_blurb .et_pb_blurb_content {
  margin: 0;
  max-width: fit-content;
}

.px_blog_datails_v1 .px_blog_datails_blurb .et_pb_blurb_content .et-pb-icon {
  color: var(--px-color-1);
}

.px_blog_datails_v1 .px_blog_datails_comment .comment-reply-title {
  font-weight: 600;
  font-size: xx-large;
}

.px_blog_datails_v1 .px_blog_datails_comment .comment-form .comment-form-comment textarea {
  background-color: #fff !important;
  border: 1px solid #eee !important;
  box-shadow: none !important;
  border-radius: 20px;
}

.px_blog_datails_v1 .px_blog_datails_comment .comment-form .comment-form-author input,
.px_blog_datails_v1 .px_blog_datails_comment .comment-form .comment-form-email input,
.px_blog_datails_v1 .px_blog_datails_comment .comment-form .comment-form-url input {
  background-color: #fff !important;
  border: 1px solid #eee !important;
  border-radius: 50px !important;
  width: 100% !important;
}

.px_blog_datails_v1 .px_blog_datails_comment .et_pb_button {
  background: var(--px-color-1);
}

/*---Blog Details Page CSS End ---*/
/*--- Blog Side Bar Css Start Here ---*/

.px_blog_sidebar {
  display: none;
}

.px_blog_sidebar_v1 .widget_search {

  position: relative;
  padding: 40px 30px;
  border: 1px solid #EBEEEF;
  box-shadow: 0px 5px 10px rgb(0 0 0 / 4%);
}

.px_blog_sidebar_v1 .widget_search .searchform #searchsubmit {
  background-color: var(--px-color-1);
  border: none;
  color: #fff;
}

.px_blog_sidebar_v1 .widgettitle {
  font-weight: 600;
  font-size: 30px;
  padding-left: 15px;
  padding-bottom: 0px;
  border-left: 3px solid var(--px-color-1);
  margin-bottom: 20px;
}

.px_blog_sidebar_v1 .px_contact .et_contact_bottom_container {
  float: left;
  margin-top: 10px;
}

.px_blog_sidebar_v1 .widget_categories .cat-item a {
  color: #222;
  display: block;
  font-size: 15px;
  font-weight: 700;
  line-height: 27px;
  padding: 12px 0 12px 14px;
  position: relative;
  z-index: 1;
  font-family: fira sans, sans-serif;
  transition: all 0.4s;
  position: relative;
}

.px_blog_sidebar_v1 .widget_categories .cat-item a:before {
  content: "\35";
  font-family: 'ETmodules';
  font-weight: bolder;
  position: absolute;
  font-size: x-large;
  left: -15px;
  display: block;
  color: #222;
  transition: all 0.4s;
}

.px_blog_sidebar_v1 .widget_categories .cat-item a:hover:before {
  margin-left: 5px;
  color: var(--px-color-1);
}

.px_blog_sidebar_v1 .widget_categories .cat-item a:hover {
  color: var(--px-color-1);
  margin-left: 10px;
}

.px_blog_sidebar_v1 .widget_media_gallery .gallery-item {
  margin: 0 !important;
}

.px_blog_sidebar_v1 .widget_media_gallery .gallery img {
  height: 80px;
  object-fit: cover;
  border: none !important;
}

.px_blog_sidebar_v1 .widget_media_gallery .et_overlay {
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .8);
  opacity: 0;
  pointer-events: none;
  -webkit-transition: all .3s;
  transition: all .3s;
  border: 1px solid #e5e5e5;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
}

.px_blog_sidebar_v1 .widget_media_gallery .et_portfolio_image:hover .et_overlay {
  z-index: 3;
  opacity: 1;
}

.px_blog_sidebar_v1 .widget_media_gallery .et_overlay:before {
  color: #fff;
  content: "\55";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 20px;
  transition: all .4s;
  font-family: ETmodules !important;
  font-weight: 400;
}

.px_blog_sidebar_v1 .widget_tag_cloud .tagcloud .tag-cloud-link {
  background-color: #fff;
  border: 1px solid #eeecec;
  padding: 0 16px;
  color: #000;
  display: inline-block;
  font-size: 14px !important;
  line-height: 27px;
  font-weight: 700;
  margin-right: 2px;
  margin-top: 10px;
  position: relative;
  z-index: 1;
  font-family: fira sans, sans-serif;
  text-transform: capitalize;
}

.px_blog_sidebar_v1 .widget_tag_cloud .tagcloud .tag-cloud-link:hover {
  color: #fff;
  background-color: var(--px-color-1);
  border-color: var(--px-color-1);
}

.px_contact_sidebar .et_pb_contact_main_title {
  border-left: 3px solid var(--px-color-1) !important;
}

.px_contact_sidebar .et_pb_contact_submit {
  border-radius: 3px;
  position: relative;
  z-index: 1;
  padding: 9px 30px !important;
  top: 15px;
  border-width: 0px;
  border-radius: 5px;
  background-color: #000;
  transition: all 0.4s;
  color: #fff;
  text-transform: capitalize;
}

/* .px_contact_sidebar .more-link:hover {} */

.px_contact_sidebar .et_pb_contact_submit::after {
  content: "" !important;
  position: absolute !important;
}

.px_contact_sidebar .et_pb_contact_submit::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 4px;
  margin: auto;
  transform-origin: right center;
  transform: scale(0, 1);
  background-color: var(--px-color-1);
  display: block;
  transition: transform 0.3s cubic-bezier(0.37, 0.31, 0.2, 0.85);
  z-index: -1;
  opacity: 1;
  color: #fff;
}

.px_contact_sidebar .et_pb_contact_submit:hover:before {
  transform-origin: left center;
  transform: scale(1, 1);
  border-radius: 4px;
}

.px_social_sidebar {
  padding-top: 90px !important;
  padding-right: 30px !important;
  padding-bottom: 40px !important;
  padding-left: 30px !important;
  box-shadow: 0px 5px 10px rgb(0 0 0 / 4%);
  border: 1px solid #EBEEEF;
}

.px_social_sidebar:before {
  content: "Follow Us";
  position: absolute;
  top: 30px;
  border-left: 3px solid var(--px-color-1) !important;
  padding-left: 20px;
  font-size: 25px;
  font-weight: 600;
  color: #000 !important;
}

.px_social_sidebar li a:before {
  background-color: #eff8ee !important;
  color: #000 !important;
  transition: all 0.4s;
}

.px_social_sidebar li a:hover:before {
  background-color: var(--px-color-1) !important;
  color: #fff !important;
}

/* Blog Side Bar Css End Here */
/* -----------------------------------
     05. Blog CSS End
-------------------------------------*/
/* -----------------------------------
     06. Portfolio CSS Start
-------------------------------------*/
/*--- Portfolio Filterable CSS Start ---*/

.px_filterable_portfolio_v1 .et_pb_portfolio_filters {
  margin-left: auto;
  margin-right: auto;
  width: fit-content;
}

.px_filterable_portfolio_v1 .et_pb_portfolio_filters ul li a {
  border: none;
  position: relative;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  color: #000;
}

.px_filterable_portfolio_v1 .et_pb_portfolio_filters li a:hover {
  background-color: transparent;
}

.px_filterable_portfolio_v1 .et_pb_portfolio_filters li a.active {
  background-color: transparent;
  color: var(--px-color-1) !important;
}

.px_filterable_portfolio_v1 .et_pb_portofolio_pagination ul li a.active {
  color: var(--px-color-1);
}

.px_filterable_portfolio_v1 .et_pb_portofolio_pagination ul li a {
  color: #000;
}

/*--- Portfolio Filterable CSS End ---*/
/* Portfolio v1 Start */

.px_portfolio_v1 .pagination .alignleft,
.px_portfolio_v1 .pagination .alignright {
  line-height: normal;
  margin-top: 20px;
}

.px_portfolio_v1 .et_pb_portfolio_grid_items,
.px_filterable_portfolio_v1 .et_pb_portfolio_items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 30px;
  grid-row-gap: 20px;
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project,
.px_filterable_portfolio_v1 .et_pb_portfolio_item {
  position: relative;
  width: 100% !important;
  position: relative;
  overflow: hidden;
  box-shadow: 0px 0px 18px 0px rgb(26 46 85 / 20%);
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project::after,
.px_filterable_portfolio_v1 .et_pb_portfolio_item::after {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  content: "";
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(45%, rgba(255, 255, 255, 0)), to var(--px-color-1));
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 45%, var(--px-color-1) 100%);
  opacity: .8;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project .et_portfolio_image,
.px_filterable_portfolio_v1 .et_pb_portfolio_item .et_portfolio_image {
  overflow: hidden;
  background-color: var(--px-color-2);
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project .et_portfolio_image img,
.px_filterable_portfolio_v1 .et_pb_portfolio_item .et_portfolio_image img {
  width: 100%;
  object-fit: cover;
  transition: all 500ms ease;
  height: 443px;
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project:hover .et_portfolio_image img,
.px_filterable_portfolio_v1 .et_pb_portfolio_item:hover .et_portfolio_image img {
  opacity: 0.15;
  transform: scale(1.05);
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project .et_overlay,
.px_filterable_portfolio_v1 .et_pb_portfolio_item .et_overlay {
  background: transparent;
  border: none;
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project:hover .et_overlay,
.px_portfolio_v1 .et_pb_portfolio_grid_items .project:hover .et_overlay::before,
.px_filterable_portfolio_v1 .et_pb_portfolio_item:hover .et_overlay,
.px_filterable_portfolio_v1 .et_pb_portfolio_item:hover .et_overlay::before {
  opacity: 1;
  z-index: 1;
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project:hover .et_overlay::before,
.px_filterable_portfolio_v1 .et_pb_portfolio_item:hover .et_overlay::before {
  transform: scale(1.0);
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project .et_overlay::before,
.px_filterable_portfolio_v1 .et_pb_portfolio_item .et_overlay::before {
  font-family: ETmodules !important;
  content: "\e02b";
  /* speak: none; */
  font-weight: 200;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  background-color: #fff;
  color: var(--px-color-1);
  border-radius: 50%;
  padding: 12px;
  transition: all 500ms ease;
  transform: scale(0.0);
  right: 15px;
  left: auto;
  bottom: 20px;
  top: auto !important;
}


.px_portfolio_v1 .et_pb_portfolio_grid_items .project .et_pb_module_header,
.px_filterable_portfolio_v1 .et_pb_portfolio_item .et_pb_module_header {
  display: block;
  font-size: 20px;
  line-height: 30px;
  color: #fff;
  margin-bottom: 5px;
  font-weight: 700;
  transition: all 500ms ease;
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project .et_pb_module_header:hover,
.px_filterable_portfolio_v1 .et_pb_portfolio_item .et_pb_module_header:hover {
  color: #000;
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project .post-meta,
.px_filterable_portfolio_v1 .et_pb_portfolio_item .post-meta a {
  color: #fff !important;
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project .et_pb_module_header,
.px_portfolio_v1 .et_pb_portfolio_grid_items .project .post-meta,
.px_filterable_portfolio_v1 .et_pb_portfolio_item .et_pb_module_header,
.px_filterable_portfolio_v1 .et_pb_portfolio_item .post-meta {
  position: absolute;
  transition: all 500ms ease;
  opacity: 0;
  margin-left: 20px;
  z-index: 1;
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project:hover .et_pb_module_header,
.px_filterable_portfolio_v1 .et_pb_portfolio_item:hover .et_pb_module_header {
  transform: translateY(-90px);
  opacity: 1;
}

.px_portfolio_v1 .et_pb_portfolio_grid_items .project:hover .post-meta,
.px_filterable_portfolio_v1 .et_pb_portfolio_item:hover .post-meta {
  transform: translateY(-50px);
  opacity: 1;

}

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

  .px_portfolio_v1 .et_pb_portfolio_grid_items,
  .px_filterable_portfolio_v1 .et_pb_portfolio_items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 30px;
    grid-row-gap: 20px;
  }
}

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

  .px_portfolio_v1 .et_pb_portfolio_grid_items,
  .px_filterable_portfolio_v1 .et_pb_portfolio_items {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 30px;
    grid-row-gap: 20px;
  }
}

/* Portfolio v1 End */
/* Portfolio Full-width Start V1 */
.px_portfolio_full_v1 .et_pb_portfolio_grid_items {
  display: flex;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

.px_portfolio_full_v1 .et_pb_portfolio_grid_items .project {
  margin: 0;
  box-shadow: none;
}

@media only screen and (max-width: 1080px) {
  .px_portfolio_full_v1 .et_pb_portfolio_grid_items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    /* grid-column-gap: 30px;
    grid-row-gap: 20px;  */
  }
}

@media only screen and (max-width: 768px) {
  .px_portfolio_full_v1 .et_pb_portfolio_grid_items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /* grid-column-gap: 30px;
    grid-row-gap: 20px;  */
  }
}

@media only screen and (max-width: 480px) {
  .px_portfolio_full_v1 .et_pb_portfolio_grid_items {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    /* grid-column-gap: 30px;
    grid-row-gap: 20px;  */
  }
}

/* Portfolio Full-width End V1*/
/* .px portfolio 2 Column Start*/

.px_2_column_portfolio .et_pb_portfolio_grid_items,
.px_filterable_portfolio_2column_v1 .et_pb_portfolio_items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 30px;
  grid-row-gap: 20px;
}

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

  .px_2_column_portfolio .et_pb_portfolio_grid_items,
  .px_filterable_portfolio_2column_v1 .et_pb_portfolio_items {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
  }
}

/* .px portfolio 2 Column End */
/* .px portfolio 4 Column Start */

@media only screen and (max-width: 1199px) {
  .px_4_column_portfolio_v1 .et_pb_portfolio_grid_items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}

@media only screen and (max-width: 480px) {
  .px_4_column_portfolio_v1 .et_pb_portfolio_grid_items {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
  }
}

/* --- px portfolio 4 Column End --- */
/* --- px portfolio Carousel v1 Start --- */

.px_portfolio_slider_v1 .et_pb_portfolio_grid_items {
  display: block;
}

.poetfolio_carousel_sec_v1 .poetfolio_carousel_row_v1 .poetfolio_carousel_column_v1 {
  padding: 20px 15px;
}

.px_dots .slick-dots li {
  margin: 0px 6px;
}

.px_dots .slick-dots li.slick-active button::before {
  color: var(--px-color-1);
  opacity: 1;
  border: 2px solid;
  border-radius: 50%;
  line-height: 2.3;
}

.px_dots .slick-dots li button::before {
  font-size: 10px;
  color: var(--px-color-1);
  line-height: 2.7;
}

@media only screen and (max-width: 480px) {
  .poetfolio_carousel_sec_v1 .poetfolio_carousel_row_v1 .poetfolio_carousel_column_v1 {
    width: 320px !important;
  }
}

/* --- px portfolio Carousel v1 End --- */
/* --- Portfolio Single Page CSS Start --- */

.px_portfolio_single .px_portfolio_single_column {
  box-shadow: 0px 25px 18px 2px rgb(38 57 77 / 30%);
  border-radius: 20px;
  padding: 20px;
}

.px_portfolio_single .px_portfolio_single_img .et_pb_image_wrap {
  box-shadow: 0px 25px 18px 2px rgb(38 57 77 / 30%);
  border-radius: 20px;
}

.px_portfolio_single .px_portfolio_single_img img {
  height: 430px !important;
  object-fit: cover;
  border-radius: 20px;
}

.px_portfolio_single .px_portfolio_single_title .entry-title {
  font-size: 40px !important;
  font-weight: 700;
  text-align: center;
  margin-bottom: 30px;
}

.px_portfolio_single .px_portfolio_single_info {
  border-bottom: 1px solid var(--px-color-1);
}

.px_portfolio_single .px_portfolio_single_info .et_pb_blurb_content {
  margin: 0;
  max-width: unset;
}

.px_portfolio_single .px_portfolio_single_info .et_pb_blurb_container {

  display: flex;
}

.px_portfolio_single .px_portfolio_single_info .et_pb_module_header {
  width: 48%;
  margin: 0;
  padding: 0;
  line-height: 1.4;
}

.px_portfolio_single .px_portfolio_single_info .et_pb_blurb_description {
  width: 55%;
  color: var(--px-color-2);
}

.px_portfolio_single .px_portfolio_single_info .et_pb_blurb_description a {

  color: var(--px-color-2);
}

@media only screen and (max-width: 527px) {
  .px_portfolio_single .px_portfolio_single_title .entry-title {
    font-size: 25px !important;
  }
}

/* --- Portfolio Single Page CSS End --- */
/* -----------------------------------
     06. Portfolio CSS End
-------------------------------------*/
/* -----------------------------------
    07. Services CSS Start
-------------------------------------*/
/*--- Services v1 CSS Start ---*/

.px_services_v1 .px_service {
  position: relative;
}

.px_services_v1 .px_service::before {
  content: "";
  position: absolute;
}

.px_services_v1 .px_service::after {
  content: "";
  position: absolute;
}

.px_services_v1 .px_service {
  box-shadow: 0px 10px 50px 0px rgb(26 46 85 / 10%);
  background-color: #fff;
}

.px_services_v1 .px_service::before {
  position: absolute;
  content: '';
  background: var(--px-color-1);
  width: 100%;
  height: 0%;
  left: 0px;
  bottom: 0px;
  border-radius: 15px;
  transition: all 500ms ease;
}

.px_services_v1 .px_service:hover:before {
  height: 100%;
  top: 0px;
}

.px_services_v1 .px_service .et-pb-icon {
  transition: all 500ms ease;
  color: var(--px-color-1);
}

.px_services_v1 .px_service:hover .et-pb-icon {
  color: #fff;
}

.px_services_v1 .px_service .et_pb_module_header {
  transition: all 500ms ease;
  color: #000;
  width: fit-content;
  margin: auto;
}

.px_services_v1 .px_service .et_pb_module_header:hover {
  text-decoration: underline;
}

.px_services_v1 .px_service:hover .et_pb_module_header {
  color: #fff !important;
}

.px_services_v1 .px_service .et_pb_blurb_description {
  transition: all 500ms ease;
}

.px_services_v1 .px_service:hover .et_pb_blurb_description {
  color: #fff;
}

.px_services_v1 .px_house {
  position: relative;
  margin: auto;
  top: -20px;
  z-index: 0;
  transition: all 500ms ease;
}

.px_services_v1 .px_house .house {
  position: relative;
  margin: auto;
  width: 0px;
  height: 0px;
  border-left: 120px solid transparent;
  border-right: 120px solid transparent;
  border-bottom: 80px solid #fff;
  transition: all 500ms ease;
}

.px_services_v1 .px_house .house:after {
  position: absolute;
  content: '';
  width: 15px;
  height: 35px;
  background: #fff;
  top: 15px;
  left: 60px;
  transition: all 500ms ease;
}

.px_services_v1 .px_house .house:before {
  position: absolute;
  content: '';
  width: 165px;
  height: 60px;
  background: #fff;
  top: 75px;
  left: -80px;
  transition: all 500ms ease;
}

.px_services_v1 .px_service {
  overflow: visible !important;
  transition: all 500ms ease;
  box-shadow: 0px 30px 30px 0px rgb(26 46 85 / 10%) !important;
}

.px_services_v1 .px_service .et_pb_main_blurb_image {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 80px;
  transition: all 500ms ease;
}

.px_services_v1:hover .house {
  border-bottom: 80px solid var(--px-color-1);
}

.px_services_v1:hover .house::after,
.px_services_v1:hover .house::before {
  background: var(--px-color-1);
}

@media only screen and (max-width: 980px) {
  .px_services_v1 .px_service {
    width: fit-content;
    margin: auto;
    margin-bottom: 30px !important;
  }

  .px_services_v1 .px_service .et_pb_main_blurb_image {
    bottom: 70px;
  }
}

@media only screen and (max-width: 400px) {
  .px_services_v1 .px_service .et_pb_main_blurb_image {
    bottom: 85px;
  }
}

/*--- Services v1 CSS End ---*/
/*--- Services v2 CSS Start ---*/

.px_services_v2 .px_service {
  position: relative;
  color: #fff;
  background-color: #363738;
  border-radius: 10px;
  transition: all 500ms ease;
  width: 100%;
}

.px_services_v2 .px_service:hover,
.px_services_v2 .px_service:active {
  background: var(--px-color-1) !important;
}

.px_services_v2 .px_service::after {
  position: absolute;
  content: "" !important;
}

.px_services_v2 .px_service::before {
  position: absolute;
  content: '';
  background: var(--px-color-1);
  width: 25px;
  height: 25px;
  left: 65%;
  bottom: 0px;
  opacity: 0;
  z-index: -1;
  transform: translateX(-50%) rotate(45deg);
  transition: all 500ms ease;
  display: block;
}

.px_services_v2 .px_service:hover::before,
.px_services_v2 .px_service:active::before {
  bottom: -10px;
  opacity: 1;
}

.px_services_v2 .px_service_replacement_btn {
  margin-left: -10px;
}

.px_services_v2 .px_service_replacement_btn::before {
  color: var(--px-color-1);
  font-weight: 900 !important;
}

@media only screen and (max-width: 980px) {
  .px_services_v2 .px_services_img {
    margin: auto;
  }

  .px_services_v2 .px_service::before {
    left: 60%;
  }
}

/*--- Services v2 CSS End ---*/
/*--- Services v3 CSS Start ---*/

.px_services_v3 {
  padding-bottom: 400px !important;
}

.px_services_v3 .et_pb_row_1-4_1-2_1-4,
.px_services_v3 .px_services_row {
  border-radius: 20px;
  padding: 40px 31px 33px 31px;
  box-shadow: 0px 10px 50px 0px rgb(26 46 85 / 10%);
  position: absolute;
  left: 0;
  right: 0;
  top: -110px;
  background-color: #fff;
}

.px_services_v3 .px_services_column_01 {
  border-right: 1px solid #e5e5e5;
  padding-right: 15px;
}

.px_services_v3 .px_services_column_03 {
  border-left: 1px solid #e5e5e5;
  padding-left: 15px;
}

.px_services_v3 .px_services_blurb:nth-child(1),
.px_services_v3 .px_services_blurb:nth-child(3) {
  border-bottom: 1px solid #e5e5e5;

}

.px_services_v3 .px_services_blurb .et_pb_main_blurb_image {
  margin-top: 15px;
  margin-bottom: 15px;
}

.px_services_v3 .px_services_blurb .et_pb_image_wrap img {
  height: 50px;
  object-fit: cover;
}

.px_services_v3 .px_services_blurb .et_pb_module_header {
  position: relative;
  display: block;
  font-size: 22px;
  line-height: 30px;
  font-weight: 700;
  transition: all 500ms ease;
}

.px_services_v3 .px_services_blurb .et_pb_module_header:hover {
  color: var(--px-color-1);
}

@media only screen and (min-width: 1300px) and (max-width: 1500px) {
  .px_services_v3 {
    padding-bottom: 450px !important;
  }
}

@media only screen and (min-width: 980px) and (max-width: 1300px) {
  .px_services_v3 {
    padding-bottom: 500px !important;
  }
}

@media only screen and (max-width: 980px) {
  .px_services_v3 .px_services_column_01 {
    border-right: none;
    padding-right: unset;
  }

  .px_services_v3 .px_services_column_03 {
    border-left: none;
    padding-left: unset;
  }

  .px_services_v3 .et_pb_row_1-4_1-2_1-4 {
    position: unset;
  }

  .px_services_v3 {
    padding-bottom: 70px !important;
  }
}

/*--- Services v3 CSS End ---*/
/*--- Services v4 CSS Start ---*/

.px_services_v4 .px_services_icon .et-pb-icon {
  color: var(--px-color-1) !important;
  background-color: var(--px-color-3);
  border-radius: 50%;
  height: 50px;
  width: 50px;
  line-height: 1.3;
  transition: all 500ms ease;
}

.px_services_v4 .px_services_icon .et-pb-icon:hover {
  background-color: var(--px-color-1);
  color: #fff !important;
  transform: rotate(-25deg);
}

/*--- Services v4 CSS End ---*/
/*---Services Single Page CSS Start ---*/

.px_services_single .px_services_single_button {
  position: relative;
  background: #eff8ee;
  color: #000;
  width: 100%;
  padding: 15px 35px 15px !important;
  border-radius: 5px;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
  z-index: 1;
}

.px_services_single .px_services_single_button:hover {
  color: #fff;
}

.px_services_single .px_services_single_button::after {
  right: 20px;
}

.px_services_single .px_services_single_button::before {
  position: absolute;
  bottom: 0px;
  top: 0px;
  right: 0px;
  content: "";
  background-color: var(--px-color-1);
  transform: scaleX(0);
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
  z-index: -1;
  display: block;
  opacity: 0;
  border-radius: 5px;
  width: inherit;
}

.px_services_single .px_services_single_button:hover::before {
  transform: scaleX(1);
  opacity: 1;
}

.px_services_single .px_services_single_cta {
  padding: 150px 60px 50px;
}

.px_services_single .px_services_single_cta .et_pb_promo_description {
  padding-bottom: 0px;
}

.px_services_single .px_services_single_cta .et_pb_promo_description div {
  margin-top: 20px;
}

.px_services_single .px_services_single_cta .et_pb_promo_description div span {
  font-size: 18px;
  color: #fff;
  font-weight: 700;
}

.px_services_single .px_services_single_cta_icon .et_pb_icon_wrap .et-pb-icon {
  color: var(--px-color-1);
  background-color: #fff;
  padding: 25px;
  border-radius: 50%;
}

.px_services_single .px_services_single_img_icon .et_pb_icon_wrap .et-pb-icon {
  color: #fff;
  background-color: var(--px-color-1);
  padding: 25px;
  border-radius: 10px;
}

.px_services_single .px_services_single_info .et_pb_main_blurb_image .et_pb_image_wrap {
  border: 2px solid var(--px-color-1);
  border-radius: 50%;
  height: 80px;
  width: 80px;
}

.px_services_single .px_services_single_info .et_pb_main_blurb_image .et_pb_image_wrap .et-pb-icon {
  color: var(--px-color-1);
  margin: 20px;
}

.px_services_single .px_services_single_button_two {
  padding-left: 35px;
}

.px_services_single .px_services_single_button_two::before {
  color: var(--px-color-1);
  left: 25px;
}

.px_services_single .px_services_single_blurb .et_pb_module_header {
  border: 8px solid #fff;
  border-radius: 50%;
  background: var(--px-color-1);
  padding: 15px;
  width: fit-content;
  margin: auto;
  margin-bottom: 15px;
  box-shadow: 0px 10px 50px 0 rgb(0 0 0 / 15%);
}

.px_services_single .px_services_single_blurb .et_pb_blurb_description h4 {
  color: #000;
  font-size: 20px;
  font-weight: 600;
}

@media only screen and (min-width: 673px) and (max-width: 768px) {
  .px_services_single .px_services_single_cta_icon {
    bottom: 220px !important;
  }
}

@media only screen and (min-width: 980px) and (max-width: 1200px) {
  .px_services_single .px_services_single_cta {
    padding: 150px 30px 40px !important;
  }
}

@media only screen and (max-width: 980px) {
  .px_services_single .px_services_single_cta {
    padding: 150px 40px 40px !important;
  }
}

@media only screen and (max-width: 480px) {
  .px_services_single .px_services_single_img_icon .et_pb_icon_wrap .et-pb-icon {
    padding: 15px;
  }
}

/*---Services Single Page CSS End ---*/
/* -----------------------------------
    07. Services CSS End
-------------------------------------*/
/* -----------------------------------
    08. Contact Us CSS Start
-------------------------------------*/
/*--- Contact Us v1 CSS Start ---*/

.px_contact_v1 {
  position: relative;
  background-color: var(--px-color-1);
}

.px_contact_v1 .px_contact_form .et_pb_contact_form {
  display: flex;
  float: left;
}

.px_contact_v1 .px_contact_form .et_pb_contact_form .et_pb_contact_field {
  width: fit-content;
  margin: auto;
}

.px_contact_v1 .px_contact_form .et_pb_contact_form .et_pb_contact_field .input {
  /*   background-color: var(--px-color-2); */
  background-color: transparent;
  border-radius: 50px;
  border: 1px solid #fff;
  color: #fff;
}

.px_contact_v1 .px_contact_form .et_contact_bottom_container {
  height: fit-content;
  margin-top: 5px;
  margin-bottom: 5px;
}

.px_contact_v1 .px_contact_form .et_pb_button {
  color: #fff;
  background: #000 !important;
  padding: 10px 25px !important;
  border-radius: 50px;
  font-weight: 600;
  transition: all 500ms ease;
}

.px_contact_v1 .px_contact_form .et_pb_button:hover {
  color: #000;
  background: #fff !important;
}

.px_contact_v1 .px_contact_form .et_pb_button::after {
  content: "";
  position: absolute;
}

.px_contact_v1.px_newslatter_v1 .px_contact_img {
  transform: translateX(-50%) translateY(-47%) !important;
}

@media only screen and (max-width: 980px) {
  .px_contact_v1.px_newslatter_v1 .px_contact_img {
    transform: translateX(-50%) translateY(-99%) !important;
  }

  .px_contact_v1.px_newslatter_v1 .px_contact_form.et_pb_contact_form_container {
    margin-bottom: 400px !important;
  }
}

@media only screen and (max-width: 480px) {
  .px_contact_v1 .px_contact_form .et_pb_contact_form {
    display: unset;
  }

  .px_contact_v1 .px_contact_form .et_pb_contact_form .et_pb_contact_field {
    width: 100%;
    margin-bottom: 15px;
  }
}

/*--- Contact Us v1 CSS End ---*/
/*--- Contact Us v2 CSS Start ---*/

.px_contact_v2 {
  height: 330px;
  background-color: var(--px-color-1);
}

.px_contact_v2 .px_contact_img .et_pb_image_wrap {
  position: absolute;
  top: -120px;
}

.px_contact_v2 .px_contact_img .et_pb_image_wrap img {
  width: 115%;
  max-width: 120%;
}

@media only screen and (max-width: 980px) {
  .px_contact_v2 {
    height: unset;
  }

  .px_contact_v2 .px_contact_img .et_pb_image_wrap {
    position: unset;
  }

  .px_contact_v2 .px_contact_img .et_pb_image_wrap img {
    width: 100%;
    max-width: 100%;
  }
}

/*--- Contact Us v2 CSS End ---*/
/*--- Contact Us v3 CSS Start ---*/

.px_contact_v3 .px_house {
  z-index: 1;
}

.px_contact_v3 .px_house .house {
  border-left: 300px solid transparent;
  border-right: 300px solid transparent;
}

.px_contact_v3 .px_house .house::after {
  left: 140px;
}

.px_contact_v3 .px_house .house::before {
  width: 500px;
  left: -250px;
}

.px_contact_v3 .px_services_v1:hover .house {
  border-bottom: 80px solid #fff;
}

.px_contact_v3 .px_services_v1:hover .house::after,
.px_contact_v3 .px_services_v1:hover .house::before {
  background: #fff;
}

.px_contact_v3 .px_contact_form {
  border-radius: 20px;
  box-shadow: 0px 10px 40px 0px rgb(0 0 0 / 10%);
}

.px_contact_v3 .px_contact_form .et_pb_contact_form {
  float: unset;
}

.px_contact_v3 .px_contact_form .et_pb_contact_main_title {
  z-index: 1;
  padding-bottom: 30px;
}

.px_contact_v3 .px_contact_form .et_pb_contact_form .et_pb_contact_field {
  width: 100%;
}

.px_contact_v3 .px_contact_form .et_pb_contact_form .et_pb_contact_field .input {
  background-color: #fff;
  border: 1px solid #c1c1c1;
  color: #000000;
}

.px_contact_v3 .px_contact_form .et_pb_contact_form .et_pb_button {
  background-color: var(--px-color-1) !important;
}

.px_contact_v3 .px_contact_form .et_pb_contact_form .et_pb_button:hover {
  background-color: #000 !important;
  color: #fff;
}

@media only screen and (min-width: 981px) and (max-width: 1200px) {
  .px_contact_v3 {
    padding-bottom: 50px !important;
  }

  .px_contact_v3 .px_contact_row {
    z-index: 9 !important;
    position: unset !important;
    top: unset;
    bottom: auto;
    left: auto;
    right: auto;
    transform: none;
  }

}

@media only screen and (max-width: 768px) {
  .px_contact_v3 .px_contact_form {
    padding: 20PX !important;
  }

  .px_contact_v3 .px_house .house {
    border-left: 100px solid transparent;
    border-right: 100px solid transparent;
  }

  .px_contact_v3 .px_house .house::after {
    left: 45px;
  }

  .px_contact_v3 .px_house .house::before {
    width: 150px;
    left: -75px;
  }

}

@media only screen and (max-width: 480px) {
  .px_contact_v3 .px_contact_form .et_pb_contact_form .et_pb_contact_field {
    margin: 0 0 15px 0;
    padding: 0;
  }
}

/*--- Contact Us v3 CSS End ---*/
/*--- Contact Us v4 CSS Start ---*/

.px_contact_v4 {
  height: 380px;
  background-color: var(--px-color-1);
}

.px_contact_v4 .px_contact_img .et_pb_image_wrap {
  position: absolute;
  top: -135px;
}

.px_contact_v4 .px_contact_form {
  float: left !important;
}

.px_contact_v4 .px_contact_form .et_pb_contact_form {
  display: flex;
  float: none;
}

@media only screen and (max-width: 980px) {
  .px_contact_v4 {
    height: unset;
    background-color: var(--px-color-1);
  }

  .px_contact_v4 .px_contact_img .et_pb_image_wrap {
    position: unset;
  }
}

@media only screen and (max-width: 480px) {
  .px_contact_v4 .px_contact_form .et_pb_contact_form {
    display: unset;
  }

  .px_contact_v4 .px_contact_form .et_pb_contact_form .et_pb_contact_field {
    width: 100%;
    margin-bottom: 15px;
    padding: 0;
  }
}

/*--- Contact Us v4 CSS End ---*/
/*--- Contact Us v5 CSS Start ---*/

.px_contact_v5 .px_contact_info {
  position: relative;
  padding: 90px 0 47px;
  border-radius: 20px;
  box-shadow: 0px 10px 50px 0px rgb(26 46 85 / 10%);
  margin-bottom: 30px;
  z-index: 2;
}

.px_contact_v5 .px_contact_info .et_pb_image_wrap {
  background-color: var(--px-color-3);
  border-radius: 50%;
  height: 100px;
  width: 100px;
}

.px_contact_v5 .px_contact_info .et-pb-icon {
  color: var(--px-color-1);
  line-height: 2;
}

.px_contact_v5 .px_contact_form .et_pb_contact_main_title {
  margin-bottom: 35px;
}

.px_contact_v5 .px_contact_form .et_pb_contact .et_pb_contact_form .et_pb_contact_field input {
  background-color: #fff;
  border: 1px solid #b5b5b5;
  border-radius: 50px;
}

.px_contact_v5 .px_contact_form .et_pb_contact .et_pb_contact_form .et_pb_contact_field textarea {
  background-color: #fff;
  border: 1px solid #b5b5b5;
  border-radius: 20px;
}

/*--- Contact Us v5 CSS End ---*/
/* -----------------------------------
    08. Contact Us CSS End
-------------------------------------*/
/* -----------------------------------
    09. Team Section CSS Start
-------------------------------------*/
/*---Team v1 CSS Start ---*/

.px_team_v1 .et_pb_team_member {
  box-shadow: 0px 10px 50px 0px rgb(26 46 85 / 10%);
}

.px_team_v1 .et_pb_team_member .et_pb_team_member_image {
  margin-bottom: 0px;
  overflow: hidden;
  background: #eff8ee;
  transition: all 500ms ease;
  max-width: 100%;
}

.px_team_v1 .et_pb_team_member:hover .et_pb_team_member_image {
  background: #1f2021;
}

.px_team_v1 .et_pb_team_member .et_pb_team_member_image img {
  transition: all 500ms ease;
}

.px_team_v1 .et_pb_team_member:hover .et_pb_team_member_image img {
  transform: scale(1.05);
  opacity: 0.5;

}

.px_team_v1 .et_pb_team_member .et_pb_team_member_description {
  padding: 30px 30px 20px;
  background-color: var(--px-color-1);
}

.px_team_v1 .et_pb_team_member .et_pb_member_social_links {
  display: grid;
  position: absolute;
  right: 0px;
  bottom: 70px;
  transform: scaleY(0);
  transform-origin: bottom center;
  /* opacity: 0; */
  transition: all 500ms ease;
}

.px_team_v1 .et_pb_team_member:hover .et_pb_member_social_links {
  bottom: 70px;
  opacity: 1;
  transform: scaleY(1);
}

.px_team_v1 .et_pb_team_member .et_pb_member_social_links li {
  position: relative;
  display: block;
  margin-bottom: 10px;
}

.px_team_v1 .et_pb_team_member .et_pb_member_social_links li a {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 50px;
  line-height: 50px;
  font-size: 16px;
  color: #222;
  background: #fff;
  text-align: center;
  border-radius: 50%;
  transition: all 500ms ease;
}

.px_team_v1 .et_pb_team_member .et_pb_member_social_links li a:hover {
  background-color: var(--px-color-2);
  color: #fff;
  box-shadow: 0px 0px 18px 0px rgb(26 46 85 / 20%);
}

.px_team_v1 .et_pb_team_member .et_pb_member_position::before {
  /* font-family: eleganticons; */
  font-family: ETmodules !important;
  content: attr(data-icon);
  /* speak: none; */
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  right: 15px;
  bottom: 20px;
  -webkit-font-smoothing: antialiased;
  position: absolute;
  content: "\e0a0";
  width: 50px;
  height: 50px;
  line-height: 50px;
  font-size: 16px;
  color: #222;
  background: #fff;
  text-align: center;
  border-radius: 50%;
  transition: all 500ms ease;
}

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

  .px_team_v1 .et_pb_team_member {
    width: fit-content;
    margin: auto;
  }

  .px_team_v1 .et_pb_team_member .et_pb_team_member_image {
    margin: auto;
  }
}

/*---Team v1 CSS End ---*/
/*---Team v2 CSS Start ---*/

.px_team_v2 .et_pb_team_member {
  overflow: visible !important;
  background: transparent;
  box-shadow: none;
}

.px_team_v2 .et_pb_team_member .et_pb_team_member_image {
  position: relative;
  display: block;
  overflow: hidden;
  background: #eff8ee;
  border-radius: 20px;
  z-index: 3;
  width: 80%;
  margin: auto;
}

.px_team_v2 .et_pb_team_member .et_pb_team_member_image::before {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 110%;
  background-color: #1f2021;
  opacity: 0;
  border-radius: 3px;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
  -webkit-transform: perspective(400px) rotateX(-90deg);
  -ms-transform: perspective(400px) rotateX(-90deg);
  transform: perspective(400px) rotateX(-90deg);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
  border-radius: 6px;
  z-index: 1;
}

.px_team_v2 .et_pb_team_member:hover .et_pb_team_member_image::before {
  opacity: 0.8;
  -webkit-transform: perspective(400px) rotateX(0deg);
  -ms-transform: perspective(400px) rotateX(0deg);
  transform: perspective(400px) rotateX(0deg);
}

.px_team_v2 .et_pb_team_member .et_pb_team_member_image img {
  transition: all 500ms ease;
}

.px_team_v2 .et_pb_team_member:hover .et_pb_team_member_image img {
  transform: scale(1.1) rotate(2deg);
}

.px_team_v2 .et_pb_team_member .et_pb_member_social_links {
  position: absolute;
  top: 0px;
  left: 0px;
  bottom: 20PX;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  opacity: 0;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
  -webkit-transform: perspective(400px) rotateX(-90deg);
  -ms-transform: perspective(400px) rotateX(-90deg);
  transform: perspective(400px) rotateX(-90deg);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
  z-index: 3;
}

.px_team_v2 .et_pb_team_member:hover .et_pb_member_social_links {
  opacity: 1.0;
  -webkit-transform: perspective(400px) rotateX(0deg);
  -ms-transform: perspective(400px) rotateX(0deg);
  transform: perspective(400px) rotateX(0deg);
}

.px_team_v2 .et_pb_team_member .et_pb_member_social_links li {
  display: unset;
  margin-right: 10px !important;
  margin-left: 10px !important;
}

.px_team_v2 .et_pb_team_member .et_pb_member_social_links li a {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 50px;
  line-height: 50px;
  font-size: 16px;
  color: #222;
  background: #fff;
  text-align: center;
  border-radius: 50%;
  transition: all 500ms ease;
}

.px_team_v2 .et_pb_team_member .et_pb_member_social_links li a::before {
  font-size: 20px;
  line-height: 2.5;
}

.px_team_v2 .et_pb_team_member .et_pb_member_social_links li a:hover {
  background-color: var(--px-color-1);
  color: #fff;
}

.px_team_v2 .et_pb_team_member .et_pb_team_member_description {
  position: absolute;
  left: 0;
  bottom: -90px;
  right: 0;
  min-height: 250px;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
  padding: 0 30px 40px;
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0px 10px 50px 0px rgb(26 46 85 / 10%);
}

.px_team_v2 .et_pb_team_member .et_pb_team_member_description::before {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  background: var(--px-color-2);
  border-radius: 20px;
  transition: .5s;
  transform: perspective(400px) scaleY(0);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
  z-index: 2;
}

.px_team_v2 .et_pb_team_member:hover .et_pb_team_member_description::before {
  opacity: 1;
  transform: perspective(400px) scaleX(1.0);
}

.px_team_v2 .et_pb_team_member .et_pb_module_header {
  color: #000 !important;
  position: absolute;
  bottom: 40px;
  z-index: 3;
  left: 0;
  right: 0;
  font-weight: 700 !important;
  transition: all 500ms ease;
}

.px_team_v2 .et_pb_team_member .et_pb_member_position {
  position: absolute;
  bottom: 20px;
  z-index: 3;
  left: 0;
  right: 0;
  transition: all 500ms ease;

}

.px_team_v2 .et_pb_team_member:hover .et_pb_module_header,
.px_team_v2 .et_pb_team_member:hover .et_pb_member_position {
  color: #fff !important;
}

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

  .px_team_v2 .px_team_column {
    margin-bottom: 140px !important;
  }
}

/*---Team v2 CSS End ---*/
/*---Team v3 CSS Start ---*/

.px_team_v3 .et_pb_team_member .et_pb_team_member_image {
  position: relative;
  display: block;
  overflow: hidden;
  background: #eff8ee;
  border-radius: 20px;
  margin: auto;
  width: 100%;
  max-width: 100%;
  box-shadow: 0px 10px 40px 0px rgb(0 0 0 / 10%);
  transition: all 500ms ease;
  border-radius: 25px !important;
}

.px_team_v3 .et_pb_team_member:hover .et_pb_team_member_image {
  box-shadow: 0px 0px 40px -15px var(--px-color-1);
}

.px_team_v3 .et_pb_team_member .et_pb_team_member_image img {
  width: 100%;
  transition: all 500ms ease;
}

.px_team_v3 .et_pb_team_member:hover .et_pb_team_member_image img {
  opacity: 0.5;
  transform: scale(1.05);
}

.px_team_v3 .et_pb_team_member .et_pb_team_member_description {
  position: relative;
  display: block;
  background: #fff;
  border-radius: 15px;
  padding: 32px 20px 33px 20px;
  box-shadow: 0px 10px 40px 0px rgb(0 0 0 / 8%);
  z-index: 1;
  margin: 0px 25px;
  margin-top: -70px;
  border-radius: 20px;

}

.px_team_v3 .et_pb_team_member .et_pb_team_member_description::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0%;
  /* background: var(--px-color-1); */
  background: linear-gradient(#fff, var(--px-color-2));
  border-radius: 20px;
  transition: all 500ms ease;
  z-index: -1;
}

.px_team_v3 .et_pb_team_member:hover .et_pb_team_member_description::before {
  height: 100%;
  top: 0px;
}

.px_team_v3 .et_pb_team_member .et_pb_team_member_description div p,
.px_team_v3 .et_pb_team_member .et_pb_module_header,
.px_team_v3 .et_pb_team_member .et_pb_member_position,
.px_team_v3 .et_pb_team_member .et_pb_member_social_links {
  transition: all 500ms ease;
}

.px_team_v3 .et_pb_team_member:hover .et_pb_member_position {
  color: #000 !important;
}

.px_team_v3 .et_pb_team_member:hover .et_pb_team_member_description div p,
.px_team_v3 .et_pb_team_member:hover .et_pb_member_social_links li a {
  color: #fff !important;
}

.px_team_v3 .et_pb_team_member .et_pb_member_social_links li a,
.px_team_v3 .et_pb_team_member .et_pb_member_position {
  color: var(--px-color-1) !important;
}

.px_team_v3 .et_pb_team_member .et_pb_member_social_links li a:hover {
  color: #000 !important;
}

/*---Team v3 CSS End ---*/
/*---Team Single Page CSS Start ---*/

.px_team_single .px_team_list_img .et_pb_image_wrap img {
  height: 530px;
  object-fit: cover;
  width: 100%;
}

.px_team_single .px_team_list_social li a {
  margin: 0px 10px;
  font-size: 18px;
}

.px_team_single .px_team_list_social li:first-child a {
  margin: 0px 10px 0px 0px;
}

.px_team_single .px_team_list_social li a::before {
  color: #000;
  transition: all 500ms ease;
  border-radius: 50%;
  line-height: 2.5 !important;
  height: 50px !important;
  width: 50px !important;
}

.px_team_single .px_team_list_social li a:hover:before {
  color: var(--px-color-1);
  box-shadow: var(--px-color-1) 0px 20px 30px -10px;
}

.px_team_single .team_list_info .et_pb_main_blurb_image {
  vertical-align: middle;
}

.px_team_single .team_list_info .et_pb_image_wrap {
  background-color: #f7f7f7;
  padding: 8px;
  border-radius: 10px;
}

.px_team_single .team_list_info .et_pb_image_wrap .et-pb-icon {
  color: var(--px-color-1);
}

.px_team_single .team_list_info .et_pb_blurb_content {
  margin: 0;
}

.px_team_single .team_list_info .et_pb_blurb_container {
  display: flex;
  margin-top: 10px;
}

.px_team_single .team_list_info .et_pb_module_header {
  margin-top: 2px;
}

.px_team_single .team_list_info .et_pb_blurb_description {
  margin-left: 10px;
}

.px_team_single .px_team_list_bar .progress-title {
  font-size: 16px;
  font-weight: 700;
  color: #333;
  margin: 0 0 20px;
}

.px_team_single .px_team_list_bar .et_pb_counter_container {
  height: 10px;
  background: #333;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 30px;
  overflow: visible;
}

.px_team_single .px_team_list_bar .et_pb_counter_container .et_pb_counter_amount {
  position: relative;
  height: 100%;
  background-color: var(--px-color-1);
}

.px_team_single .px_team_list_bar .et_pb_counter_container .et_pb_counter_amount:after {
  content: "";
  display: inline-block;
  width: 9px;
  background: #fff;
  position: absolute;
  top: -10px;
  bottom: -10px;
  right: -1px;
  z-index: 1;
  transform: rotate(35deg);
}

.px_team_single .px_team_list_bar .et_pb_counter_container .et_pb_counter_amount_number {
  display: block;
  font-size: 16px;
  font-weight: 600;
  color: #333;
  position: absolute;
  top: -25px;
  right: -25px;
}

.px_team_single .px_team_list_timeline {
  box-shadow: 0 10px 40px rgb(0 0 0 / 10%);
  border-radius: 20px;
  padding: 30px;
  margin-bottom: 30px;
}

.px_team_single .px_team_list_timeline .et_pb_blurb_content {
  margin: 0;
}

.px_team_single .px_team_list_timeline .et_pb_image_wrap {
  background: #eff8ee;
  border-radius: 50%;
  height: 100px;
  width: 100px;
  border: 8px solid #fff;
  box-shadow: 0 10px 30px rgb(0 0 0 / 8%);
}

.px_team_single .px_team_list_timeline .et_pb_image_wrap .et-pb-icon {
  margin: 25px;
  color: var(--px-color-1);
  position: relative;
}

/*---Team Single Page CSS End ---*/
/* -----------------------------------
    09. Team Section CSS End
-------------------------------------*/
/* -----------------------------------
    10 Slider Section CSS Start
-------------------------------------*/
/*---Slider v1 CSS Start ---*/

.px_slider_v1 .et_pb_slide {
  position: relative;
}

.px_slider_v1 .et_pb_slide::before {
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  background: -webkit-linear-gradient(0deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.0) 100%);
  top: 0px;
  right: 0px;
  z-index: 1;
  opacity: 1;
}

.px_slider_v1 .et_pb_slide .et_pb_slide_title {
  font-size: 18px;
  line-height: 28px;
  color: #fff;
  font-weight: 700;
  margin-bottom: 10px;
  /* padding-left: 70px; */
}

.px_slider_v1 .et_pb_slide .et_pb_slide_content h2 {
  color: #ffffff;
  font-size: 60px;
  line-height: 1.30em;
  font-weight: 800;
  text-transform: capitalize;
  width: 100%;
}

.px_slider_v1 .et_pb_slide .et_pb_slide_content p {
  margin-bottom: 10px;
}

.px_slider_v1 .et-pb-controllers {
  display: none;
}

.px_slider_v1 .et-pb-slider-arrows a {
  background: rgba(255, 255, 255, 0.30);
  border-radius: 50%;
  padding: 10px;
  transition: all 500ms ease;
}

.px_slider_v1 .et-pb-slider-arrows a:hover {
  background: var(--px-color-1);
}

.px_slider_v1 .et_pb_slide .et_pb_more_button {
  background-color: var(--px-color-1);
}

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

  .px_slider_v1 .et_pb_slide .et_pb_slide_content h2 {
    font-size: 30px;
  }
}

/*---Slider v1 CSS End ---*/
/* -----------------------------------
    10 Slider Section CSS End
-------------------------------------*/
/* -----------------------------------
  	11 Faqs CSS Start
-------------------------------------*/
/*--- Faqs v1 CSS Start ---*/
.px_faqs_v1 .px_faq .et_pb_toggle {
  border: none;
  background: transparent;
  padding: 20px 20px 20px 0px;
  margin-bottom: 0px !important;
}

.px_faqs_v1 .px_faq .et_pb_toggle .et_pb_toggle_title {
  color: #000;
  transition: all 500ms ease;
}

.px_faqs_v1 .px_faq .et_pb_toggle.et_pb_toggle_open .et_pb_toggle_title {
  color: var(--px-color-1);
}

.px_faqs_v1 .px_faq .et_pb_toggle .et_pb_toggle_title:hover {
  color: var(--px-color-1);
}

.px_faqs_v1 .px_faq .et_pb_toggle .et_pb_toggle_title:active {
  color: var(--px-color-1);
}

.px_faqs_v1 .px_faq .et_pb_toggle .et_pb_toggle_title::before {
  color: #000;
  font-size: 25px;
  transition: all 500ms ease;

}

.px_faqs_v1 .px_faq .et_pb_toggle .et_pb_toggle_title:hover:before {
  color: var(--px-color-1);
  font-size: 25px;
}

.px_faqs_v1 .px_faq .et_pb_toggle .et_pb_toggle_content {
  position: relative;
  padding-top: 10px;
  padding-left: 25px;
  padding-right: 100px;
}

.px_faqs_v1 .px_faq_img {
  position: relative;
  margin-top: 40px !important;
}

.px_faqs_v1 .px_faq_img::before {
  position: absolute;
  content: "";
  top: -45px;
  right: -30px;
  width: 270px;
  height: 270px;
  background: var(--px-color-1);
  border-radius: 20px;
}

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

  .px_faqs_v1 .px_faq .et_pb_toggle .et_pb_toggle_content {
    position: relative;
    padding-top: 10px;
    padding-left: 25px;
    padding-right: 25px;
  }

  .px_faqs_v1 .px_faq_img::before {
    right: 90px;
  }
}

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

  .px_faqs_v1 .px_faq_img::before {
    right: -20px;
    top: -20px;
  }
}

@media only screen and (max-width:480px) {
  .px_faqs_v1 .px_faq .et_pb_toggle .et_pb_toggle_title {
    font-size: 16px;
  }
}

/*--- Faqs v1 CSS End ---*/
/*--- Faqs v2 CSS Start ---*/

.px_faqs_v2 .px_faq {
  width: 50%;
}

.px_faqs_v2 .px_faqs_column {
  margin-top: 60px;
}

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

  .px_faqs_v2 .px_faq {
    width: 100%;
  }

  /*   .px_faqs_v2 .px_faqs_column {
    padding: 50px;
  } */
}

/*--- Faqs v2 CSS End ---*/
/* -----------------------------------
  	11 Faqs CSS End
-------------------------------------*/
/* -----------------------------------
  	12 Timeline CSS Start
-------------------------------------*/
/*---Timeline v1  CSS Start ---*/

.px_timeline_v1 .px_timeline_row .px_timeline_img_column {
  position: relative;
}

.px_timeline_v1 .px_timeline_row .px_timeline_img_column::before {
  content: '';
  position: absolute;
  top: 0;
  right: -53px;
  z-index: 2;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  box-sizing: content-box;
  background: var(--px-color-1);
}

.px_timeline_v1 .px_timeline_row .px_timeline_img_column::after {
  content: '';
  position: absolute;
  top: 0;
  right: -45px;
  z-index: 1;
  width: 4px;
  height: 125%;
  background: var(--px-color-3);
  opacity: 0.2;
}

.px_timeline_v1 .px_timeline_row:nth-child(5) .px_timeline_img_column::after {
  content: '';
  position: absolute;
  height: 0%;
  background: transparent;
}

.px_timeline_v1 .px_timeline_img .et_pb_image_wrap img {
  width: 300px;
  height: 200px;
  border-radius: 5px;
  object-fit: cover;
}

.px_timeline_v1 .px_timeline_desc .et_pb_text_inner h2 {
  margin-bottom: 20px;
}

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

  .px_timeline_v1 .px_timeline_row .px_timeline_img_column::before,
  .px_timeline_v1 .px_timeline_row .px_timeline_img_column::after {
    content: '';
    position: absolute;
    display: none;
  }
}

@media only screen and (max-width:480px) {
  .px_timeline_v1 .px_timeline_row .px_timeline_year {
    position: unset !important;
  }

  .px_timeline_v1 .px_timeline_row .px_timeline_year .et_pb_text_inner {
    position: unset;
    text-align: center;
    color: var(--px-color-1);
  }

  .px_timeline_v1 .px_timeline_img .et_pb_image_wrap img {
    width: 100%;
    height: auto;
  }

  .px_timeline_v1 .px_timeline_desc {
    text-align: center;
  }
}

/*---Timeline v1  CSS End ---*/
/* -----------------------------------
  	12 Timeline CSS End
-------------------------------------*/
/* -----------------------------------
  	13 Pricing Table CSS Start
-------------------------------------*/
/*--- Pricing Default CSS Start ---*/

.px_pricing_table .px_recommended {
  background-color: var(--px-color-1);
}

.px_pricing_table .et_pb_pricing {
  margin-bottom: 0px !important;
}

.px_pricing_table .et_pb_button_module_wrapper {
  margin-bottom: 0px !important;
}

.px_pricing_table .et_pb_button_module_wrapper .px_btn {
  width: max-content;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table {
  position: relative;
  background: white;
  box-shadow: 0px 10px 60px 0px rgb(0 0 0 / 7%);
  border: none;
  overflow: hidden;
  border-radius: 10px;
  margin-bottom: -15px;
  padding-bottom: 55px;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  border-top: 100px solid var(--px-color-2);
  border-right: 100px solid transparent;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table::after {
  position: absolute;
  content: "";
  top: -17px;
  left: 77px;
  width: 1px;
  height: 114px;
  background-color: var(--px-color-1);
  transform: rotate(45deg);
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_heading {
  position: absolute;
  top: 100px;
  right: 0px;
  background: none;
  padding: 30px;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_heading .et_pb_best_value {
  font-size: 30px;
  color: var(--px-color-1);
  font-weight: 800;
  line-height: 40px;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_heading .et_pb_pricing_title {
  color: #6e6e6e;
  font-size: 16px;
  font-weight: 600;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content_top {
  border: none;
  position: relative;
  padding: 30px;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content_top::before {
  position: absolute;
  content: "";
  top: -24px;
  left: 80px;
  width: 1px;
  height: 155px;
  background-color: var(--px-color-1);
  transform: rotate(45deg);
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content_top .et_pb_et_price .et_pb_dollar_sign {
  font-weight: 800;
  color: #1c1b1f;
  margin-left: -10px !important;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content_top .et_pb_et_price .et_pb_sum {
  font-size: 60px;
  font-weight: 800;
  line-height: 60px;
  color: #1c1b1f;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content {
  margin-top: 75px;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content .et_pb_pricing:first-child {
  border-top: 1px solid;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content .et_pb_pricing li:first-child {
  margin-top: 50px;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content .et_pb_pricing li {
  position: relative;
  padding-left: 0px;
  padding-bottom: 10px;
  color: #000;
  font-weight: 600;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content .et_pb_pricing li:before {
  font-family: ETmodules !important;
  content: "\4e";
  position: absolute;
  border: none;
  right: 0;
  top: 0;
  left: auto;
  font-weight: 700;
  color: var(--px-color-1);
  font-size: 18px;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content .et_pb_pricing .et_pb_not_available {
  color: #6c6b6f;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content .et_pb_pricing .et_pb_not_available::before {
  font-family: ETmodules !important;
  content: "\4d";
  color: #6c6b6f;
}

.px_pricing_table .et_pb_pricing_table_wrap .et_pb_pricing_table .et_pb_pricing_content .et_pb_pricing li span:before {
  content: "";
  position: absolute;
  border: none;
}

@media only screen and (max-width:980px) {
  .px_pricing_table .px_pricing_table_column {
    margin-bottom: 100px;
  }
}

/*--- Pricing Default CSS End ---*/
/*---Pricing Mini CSS Start ---*/

.px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_title {
  width: 20%;
}

.px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_desc {
  width: 35%;
  margin-top: 25px;
}

.px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_price {
  margin-top: 25px;
  width: 20%;
}

.px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_btn {
  margin: 0;
  width: 25%;
}

@media only screen and (min-width:768px) and (max-width:980px) {
  .px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_desc {
    margin-top: 10px;
  }

  .px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_price {
    margin-top: 35px;
  }

  .px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_btn {
    margin-top: 10px;
  }
}

@media only screen and (max-width:768px) {
  .px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_title {
    margin-top: 20px;
    width: auto;
  }

  .px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_desc {
    width: auto;
  }

  .px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_price {
    margin-top: 35px;
    width: auto;
  }

  .px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_btn {
    margin-top: 10px;
    width: auto;
  }
}

@media only screen and (max-width:480px) {
  .px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_title {
    margin: auto;
    width: auto;
  }

  .px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_desc {
    width: auto;
  }

  .px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_price {
    margin-top: 35px;
    width: auto;
  }

  .px_pricing_table_mini .px_pricing_table_mini_row .px_pricing_table_mini_column_btn {
    margin-top: 20px;
    width: auto;
  }
}

/*---Pricing Mini CSS End ---*/
/*---Pricing v2 CSS Start ---*/

.px_pricing_table_v2 .px_pricing_price .et_pb_text_inner p {
  color: transparent;
  font-size: 100px;
  -webkit-text-stroke: 1px #adaeb1;
}

.px_pricing_table_v2 .px_pricing_price .et_pb_text_inner p span {
  font-size: 50px;
  line-height: 0;
}

.px_pricing_table_v2 .px_pricing_title .et_pb_blurb_description {
  color: var(--px-color-1) !important;
}

@media only screen and (max-width:479px) {
  .px_pricing_table_v2 .px_pricing_price .et_pb_text_inner p {
    text-align: center;
  }

  .px_pricing_table_v2 .px_pricing_title {
    padding-top: 20px;
  }

  .px_pricing_table_v2 .px_pricing_title .et_pb_blurb_container .et_pb_module_header,
  .px_pricing_table_v2 .px_pricing_title .et_pb_blurb_container .et_pb_blurb_description {
    text-align: center;
  }

  .px_pricing_table_v2 .px_pricing_desc {
    text-align: center !important;
    width: 100%;
  }

  .px_pricing_table_v2 .et_pb_button_module_wrapper {
    text-align: center;
    width: 100%;
  }
}

/*---Pricing v2 CSS End ---*/
/*---Pricing v1 CSS Start ---*/

.px_pricing_table .px_toggle_btn_row .px_pricing_toggle_btn.px_active  {
	color: var(--px-color-1);
	background: #fff !important;
}
.px_pricing_table .px_toggle_btn_row .px_pricing_toggle_btn.px_active:before {
	display: none;
}

/*---Pricing v2 CSS End ---*/

/* -----------------------------------
  	13 Pricing Table CSS End
-------------------------------------*/
/* -----------------------------------
  	14 Testimonial Section CSS Start
-------------------------------------*/
/*---Testimonial v1  CSS Start ---*/

.px_testimonial_v1 .px_testimonial {
  position: relative;
  background-color: #fff !important;
  box-shadow: 0px 10px 50px 0px rgb(26 46 85 / 10%);
  border-radius: 10px;
}

.px_testimonial_v1 .px_testimonial::before {
  position: absolute;
  content: "";
}

.px_testimonial_v1 .px_testimonial .et_pb_testimonial_portrait {
  position: absolute;
  top: -45px;
  right: 40px;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  z-index: 2;
}

.px_testimonial_v1 .px_testimonial .et_pb_testimonial_portrait::before {
  position: absolute;
  content: "";
}

.px_testimonial_v1 .px_testimonial .et_pb_testimonial_description {
  margin-top: 30px;
  position: relative;
}

.px_testimonial_v1 .px_testimonial .et_pb_testimonial_description::after {
  content: "\e033\e033\e033\e033\e033";
  font-family: ETmodules !important;
  position: absolute;
  top: -35px;
  font-size: 18px;
  color: var(--px-color-2);
}

.px_testimonial_v1 .px_testimonial .et_pb_testimonial_description .et_pb_testimonial_author {
  margin-top: 0px;
}

@media only screen and (max-width: 980px) {
  .px_testimonial_v1 .px_testimonial {
    margin-bottom: 30px !important;
  }

  .px_testimonial_v1 .px_testimonial .et_pb_testimonial_description {
    margin-left: 0px !important;
  }
}

@media only screen and (max-width: 768px) {
  .px_testimonial_v1 .px_testimonial .et_pb_testimonial_description {
    margin-left: 0px !important;
  }
}

/*---Testimonial v1  CSS End ---*/
/*---Testimonial v2  CSS Start ---*/

.px_testimonial_v2 .px_testimonial_shape_img .et_pb_image_wrap {
  animation: animationFramesTwo 12s infinite linear alternate;
}

.px_testimonial_v2 .px_testimonial {
  background-color: var(--px-color-1) !important;
  border-radius: 20px;
  width: 50%;
  position: absolute;
  left: 0px;
  margin-top: 50px;
}

.px_testimonial_v2 .px_testimonial_column {
  border-radius: 20px;
  padding: 230px
}

.px_testimonial_v2 .px_testimonial::before {
  font-family: ETmodules !important;
  content: "\7b";
  position: absolute;
  font-weight: 400;
  border-radius: 50%;
  font-size: 75px;
  color: var(--px-color-1);
  background: #fff;
  right: 50px;
  left: auto;
  top: -50px;
  padding: 5px;
  box-shadow: 0px 10px 50px 0px rgb(26 46 85 / 15%);
}

.px_testimonial_v2 .px_testimonial .et_pb_testimonial_portrait {
  position: absolute;
  bottom: 25px;
}

.px_testimonial_v2 .px_testimonial .et_pb_testimonial_description {
  margin-left: 0px !important;
  margin-top: 15px;

}

.px_testimonial_v2 .px_testimonial .et_pb_testimonial_description::after {
  content: "\e033\e033\e033\e033\e033";
  font-family: ETmodules !important;
  position: absolute;
  top: -35px;
  font-size: 18px;
  color: #fff;
}

.px_testimonial_v2 .px_testimonial .et_pb_testimonial_content {
  color: #fff;
}

.px_testimonial_v2 .px_testimonial .et_pb_testimonial_author {
  position: relative;
  display: block;
  font-size: 20px;
  line-height: 28px;
  color: #fff;
  font-weight: 700;
  margin-bottom: 0px;
  margin-left: 95px;
  margin-top: 20px;
}

.px_testimonial_v2 .px_testimonial .et_pb_testimonial_meta {
  position: relative;
  display: block;
  font-size: 16px;
  line-height: 28px;
  color: rgba(255, 255, 255, 0.80);
  margin-left: 95px;
}

@media only screen and (min-width: 981px) and (max-width: 994px) {
  .px_testimonial_v2 .px_testimonial {
    width: 100%;
    left: 0;
  }

  .px_testimonial_v2 .px_testimonial_title_column,
  .px_testimonial_v2 .px_testimonial_column {
    width: 100%;
  }
}

@media only screen and (min-width: 994px) and (max-width: 1300px) {
  .px_testimonial_v2 .px_testimonial {
    width: 50%;
    margin-top: 100px;
    width: 80%;
  }

  .px_testimonial_v2 .px_testimonial .et_pb_testimonial_portrait {
    position: absolute;
    bottom: 25px;
  }
}

@media only screen and (max-width: 980px) {
  .px_testimonial_v2 .px_testimonial {
    left: -75px;
  }
}

@media only screen and (min-width: 780px) and (max-width: 980px) {
  .px_testimonial_v2 .px_testimonial {
    left: -55px;
  }

}

@media only screen and (max-width: 780px) {
  .px_testimonial_v2 {
    padding-bottom: 20px !important;
  }

  .px_testimonial_v2 .px_testimonial {
    position: unset;
    width: 100%;
    left: 0;
  }

  .px_testimonial_v2 .px_testimonial .et_pb_testimonial_portrait {
    bottom: 35px;
  }

  .px_testimonial_v2 .px_testimonial_column {
    padding: 20px;
  }

  .px_testimonial_v2 .px_testimonial::before {
    right: 60px;
    top: 20px;
  }
}

@media only screen and (max-width: 767px) {
  .px_testimonial_v2 .px_testimonial .et_pb_testimonial_portrait {
    bottom: 40px;
  }
}

@media only screen and (max-width: 450px) {
  .px_testimonial_v2 .px_testimonial .et_pb_testimonial_author {
    font-size: 20px;
  }
}

/*---Testimonial v2  CSS End ---*/
/*---Testimonial v2 Grid  CSS Start ---*/

.px_testimonial_grid_v2 .px_testimonial {
  background-color: var(--px-color-1) !important;
  border-radius: 20px;
  width: 100%;
  position: unset;
  left: 0px;
  margin-top: 65px;
}

.px_testimonial_grid_v2 .px_testimonial::before {
  top: 15px;
}

@media only screen and (max-width: 780px) {
  .px_testimonial_grid_v2 .px_testimonial .et_pb_testimonial_portrait {
    bottom: 0px;
  }
}

/*---Testimonial v2 Grid  CSS End ---*/
/*---Testimonial v3  CSS Start ---*/

.px_testimonial_v3 .px_testimonial {
  position: relative;
  display: block;
  background: #fff !important;
  border-radius: 15px;
  padding: 66px 30px 35px 40px;
  box-shadow: 0px 10px 40px 0px rgb(0 0 0 / 10%);
}

.px_testimonial_v3 .px_testimonial::before {
  font-family: ETmodules !important;
  content: "\7b";
  position: absolute;
  font-weight: 400;
  border-radius: 50%;
  font-size: 75px;
  color: var(--px-color-1);
  background: #fff;
  right: 50px;
  left: auto;
  top: -50px;
  padding: 5px;
  box-shadow: 0px 10px 50px 0px rgb(26 46 85 / 15%);
}

.px_testimonial_v3 .px_testimonial .et_pb_testimonial_portrait {
  position: absolute;
  bottom: 30px;
  margin: 0px !important;
}

.px_testimonial_v3 .px_testimonial .et_pb_testimonial_description {
  margin-left: 0px !important;
}

.px_testimonial_v3 .px_testimonial .et_pb_testimonial_description .et_pb_testimonial_author {
  position: relative;
  display: block;
  font-size: 20px;
  line-height: 28px;
  color: #252628;
  font-weight: 700;
  margin-bottom: 0px;
  text-align: right;
}

.px_testimonial_v3 .px_testimonial .et_pb_testimonial_meta {
  position: relative;
  display: block;
  font-size: 16px;
  line-height: 28px;
  color: #808080;
  text-align: right;
}

.px_testimonial_v3 .px_testimonial .et_pb_testimonial_description::after {
  content: "\e033\e033\e033\e033\e033";
  font-family: ETmodules !important;
  position: absolute;
  top: -35px;
  font-size: 18px;
  color: var(--px-color-2);
}

@media only screen and (max-width: 400px) {
  .px_testimonial_v3 .px_testimonial .et_pb_testimonial_description .et_pb_testimonial_author {
    font-size: 16px;
  }

  .px_testimonial_v3 .px_testimonial .et_pb_testimonial_description .et_pb_testimonial_meta {
    font-size: 14px;
  }
}

@media only screen and (min-width: 981px) and (max-width: 1210px) {
  .px_testimonial_v3 .et_pb_column {
    width: 100% !important;
    margin-bottom: 80px;
  }
}

@media only screen and (max-width: 980px) {
  .px_testimonial_v3 .px_testimonial {
    margin-top: 50px;
  }
}

/*---Testimonial v3  CSS End ---*/
/*---Testimonial v4  CSS Start ---*/

.px_testimonial_v4 .px_testimonial {
  background-color: transparent !important;
  padding: 0px;
  position: relative;
}

.px_testimonial_v4 .px_testimonial::before {
  content: "";
  position: absolute;
}

.px_testimonial_v4 .px_testimonial .et_pb_testimonial_portrait {
  bottom: -20px;
}

.px_testimonial_v4 .px_testimonial .et_pb_testimonial_author {
  color: var(--px-color-1);
}

.px_testimonial_v4 .px_testimonial .et_pb_testimonial_content,
.px_testimonial_v4 .px_testimonial .et_pb_testimonial_meta {
  color: #000;
}

.px_testimonial_v4 .px_testimonial .et_pb_testimonial_description::after {
  color: var(--px-color-1);
}

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

  .px_testimonial_v4 .px_testimonial_column_02,
  .px_faqs_v2 .px_faqs_column,
  .px_choose_v3 .px_choose_column_02 {
    padding-top: 50px;
    padding-right: 25px;
    padding-left: 25px;
  }
}

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

  .px_testimonial_v4 .px_testimonial {
    margin-bottom: 40px !important;
  }
}

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

  .px_testimonial_v4 .px_testimonial_column_02,
  .px_faqs_v2 .px_faqs_column,
  .px_choose_v3 .px_choose_column_02 {
    padding-top: 20px;
    padding-right: 25px;
    padding-left: 25px;
  }
}

@media only screen and (max-width: 767px) {
  .px_testimonial_v4 .px_testimonial .et_pb_testimonial_portrait {
    bottom: -35px;
  }
}

/*---Testimonial v4  CSS End ---*/
/* -----------------------------------
  	14 Testimonial Section CSS End
-------------------------------------*/
/* -----------------------------------
  	15 About Us Section CSS Start
-------------------------------------*/
/*---About Us v1 CSS Start ---*/

.px_aboutus_v1 .px_about_info .et_pb_blurb_content {
  margin: 0;
}

.px_aboutus_v1 .px_about_info .et_pb_main_blurb_image {
  width: 40px;
}

.px_aboutus_v1 .px_about_info .et_pb_image_wrap .et-pb-icon {
  color: var(--px-color-1);
}

.px_aboutus_v1 .px_about_counter {
  display: flex;
  border: 2px solid var(--px-color-1);
}

.px_aboutus_v1 .px_about_counter .percent {
  margin-bottom: 0px;
}

.px_aboutus_v1 .px_about_counter .percent .percent-value {
  color: var(--px-color-2);
}

.px_aboutus_v1 .title {
  padding-bottom: 0px;
  margin: auto;
  margin-left: 15px;
}

@media only screen and (max-width: 980px) {
  .px_aboutus_v1 .px_about_info .et_pb_blurb_content {
    margin: 0;
  }

  .px_aboutus_v1 .px_about_img_01 {
    text-align: center;
    margin-bottom: 0;
  }

  .px_aboutus_v1 .px_about_img_02,
  .px_aboutus_v1 .px_about_img_03 {
    display: none;
  }
}

/*---About Us v1 CSS End ---*/
/*---About Us v2 CSS Start ---*/

.px_aboutus_v2 .px_about_img .et_pb_image_wrap {
  box-shadow: 0px 20px 40px 0px rgb(0 0 0 / 20%);
  z-index: 1;
}

.px_aboutus_v2 .px_about_btn {
  font-weight: 600;
  padding-left: 20px !important;
}

.px_aboutus_v2 .px_about_btn::before {
  color: var(--px-color-1);
}

/*---About Us v2 CSS End ---*/
/*---About Us v3 CSS Start ---*/

.px_aboutus_v3 .px_aboutus_img .et_pb_image_wrap img {
  border-radius: 20px;
}

.px_aboutus_v3 .px_aboutus_img .et_pb_image_wrap {
  position: relative;
  overflow: visible;
}

.px_aboutus_v3 .px_aboutus_img .et_pb_image_wrap::before {
  position: absolute;
  content: "";
  top: -30px;
  right: 40px;
  width: 200px;
  height: 150px;
  background: var(--px-color-1);
  display: block;
  border-radius: 55px;
  z-index: -1;
}

.px_aboutus_v3 .px_aboutus_img_02 .et_pb_image_wrap {
  border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
  box-shadow: 0px 25px 18px 2px rgb(38 57 77 / 30%);
}

/*---About Us v3 CSS End ---*/
/* -----------------------------------
  	15 About Us Section CSS End
-------------------------------------*/
/* -----------------------------------
  	16 Choose Us Section CSS Start
-------------------------------------*/
/*---Choose Us v1 CSS Start---*/

.px_choose_v1 .px_choose_info {
  position: relative;
  display: block;
  overflow: hidden;
  background: #eff8ee;
  border-radius: 20px;
  text-align: center;
  margin-bottom: 30px;
  transition: all 500ms ease;
  padding: 30px 30px 34px 30px;
}

.px_choose_v1 .px_choose_info .et_pb_image_wrap img {
  transition: all 500ms ease;
  height: 55px;
  object-fit: cover;
}

.px_choose_v1 .px_choose_info:hover .et_pb_image_wrap img {
  opacity: 0;
}

.px_choose_v1 .px_choose_info::before {
  position: absolute;
  left: 0px;
  content: "";
  top: 20px;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  background: var(--px-color-1);
  opacity: 0;
  visibility: hidden;
  transition: all 500ms ease;
}

.px_choose_v1 .px_choose_info:hover::before {
  background-color: var(--px-color-1);
  top: 0px;
  visibility: visible;
  opacity: 1;
}

.px_choose_v1 .px_choose_info .et-pb-icon {
  color: var(--px-color-1);
}

.px_choose_v1 .px_choose_info .et_pb_module_header {
  padding-bottom: 0px;
  transition: all 500ms ease;

}

.px_choose_v1 .px_choose_info .et_pb_blurb_description {
  position: absolute;
  opacity: 0;
  color: #fff;
  transition: all 500ms ease;

}

.px_choose_v1 .px_choose_info:hover .et_pb_module_header {
  transform: translateY(-70px);
  color: #fff;

}

.px_choose_v1 .px_choose_info:hover .et_pb_blurb_description {
  opacity: 1;
  transform: translateY(-50px);

}

@media only screen and (min-width: 980px) and (max-width: 1255px) {
  .px_choose_v1 .px_choose_info_row:last-child {
    margin-bottom: 20px !important;
  }
}

@media only screen and (max-width: 1280px) {
  .px_choose_shape_row {
    display: none;
  }
}

/*---Choose Us v1 CSS End---*/
/*---Choose Us v2 CSS Start ---*/
/* .px_choose_v2 */
/*---Choose Us v2 CSS End ---*/
/*---Choose Us v3 CSS Start ---*/

.px_choose_v3 .px_about_info {
  margin-bottom: 35px !important;
}

.px_choose_v3 .px_about_info .et_pb_module_header {

  margin-bottom: 10px;
}

/*---Choose Us v3 CSS End ---*/
/* -----------------------------------
  	16 Choose Us Section CSS End
-------------------------------------*/
/* -----------------------------------
  	17 Process Section CSS Start
-------------------------------------*/
/*--- Process Us v1 CSS Start ---*/

.px_process_v1 .px_process_column {
  position: relative;
  display: block;
  padding: 40px 31px 33px 31px;

}

.px_process_v1 .px_process_column .px_process_icon {
  width: fit-content;
  margin: auto;
  width: 100px;
  height: 100px;
  padding: 15px;
  transition: all 500ms ease;
}

.px_process_v1 .px_process_column .px_process_icon .et-pb-icon {
  color: #fff;
  line-height: 1.9;
  transition: all 500ms ease;
  font-size: 35px !important;

}

.px_process_v1 .px_process_column:hover .px_process_icon .et-pb-icon {
  color: var(--px-color-2);
}

.px_process_v1 .px_process_column .px_process_icon .et_pb_icon_wrap::after {
  content: "01";
  line-height: 2.4;
  position: absolute;
  color: #000;
  font-weight: 700;
  background: #fff;
  z-index: 99;
  height: 35px;
  width: 35px;
  top: -20px;
  left: -35px;
  border-radius: 50%;
  transition: all 500ms ease;
}

.px_process_v1 .px_process_column:nth-child(1) .px_process_icon .et_pb_icon_wrap::after {
  content: "01";
}

.px_process_v1 .px_process_column:nth-child(2) .px_process_icon .et_pb_icon_wrap::after {
  content: "02";
}

.px_process_v1 .px_process_column:nth-child(3) .px_process_icon .et_pb_icon_wrap::after {
  content: "03";
}

.px_process_v1 .px_process_column:hover .px_process_icon .et_pb_icon_wrap::after {
  box-shadow: 0px 10px 18px 0px rgb(26 46 85 / 20%);
}

.px_process_v1 .px_process_column .px_process_icon .et_pb_icon_wrap::before {
  position: absolute;
  content: "";
  display: inline-block;
  width: 100px;
  right: -42.5px;
  bottom: 0;
  top: -25px;
  left: auto;
  height: 100px;
  text-align: center;
  border: 2px solid rgba(255, 255, 255, 0.15);
  border-radius: 50%;
  padding: 8px;
}

.px_process_v1 .px_process_column .px_process_icon::before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  background-color: var(--px-color-1);
  content: "";
  border-radius: 50%;
  z-index: -1;
  transform: scale(1.0);
  transform-origin: center;
  transform-style: preserve-3d;
  transition: all 0.4s cubic-bezier(0.62, 0.21, 0.45, 1.52);
}

.px_process_v1 .px_process_column .px_process_icon::after {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  background: #fff;
  content: "";
  border-radius: 50%;
  z-index: -1;
  transform: scale(0.0);
  transform-origin: center;
  transform-style: preserve-3d;
  transition: all 0.4s cubic-bezier(0.62, 0.21, 0.45, 1.52);
}

.px_process_v1 .px_process_column:hover .px_process_icon::after {
  transform: scaleX(1.0);
}

.px_process_v1 .px_process_column .px_process_blurb {
  margin-top: 45px;
}

.px_process_v1 .px_process_column .px_process_blurb .et_pb_module_header {
  color: #fff;
  font-weight: 700;
}

.px_process_v1 .px_process_column .px_process_blurb .et_pb_blurb_description {
  color: #b5b5b5;
}

/*--- Process Us v1 CSS End ---*/
/*--- Process Us v2 CSS Start ---*/

.px_process_v2 .px_process_column {
  background-color: #fff;
  border-radius: 20px;
  transition: all 500ms ease;
}

.px_process_v2 .px_process_column:hover {
  transform: translateY(-10px);
}

.px_process_v2 .px_process_column .px_process_icon .et-pb-icon {
  color: var(--px-color-1);
}

.px_process_v2 .px_process_column .px_process_icon::before {
  background-color: var(--px-color-3);
}

.px_process_v2 .px_process_column .px_process_icon::after {
  background-color: var(--px-color-2);
}

.px_process_v2 .px_process_column:hover .px_process_icon .et-pb-icon {
  color: #fff;
}

.px_process_v2 .px_process_column .px_process_icon .et_pb_icon_wrap::before {
  border: 2px dashed var(--px-color-1);
}

.px_process_v2 .px_process_column .px_process_icon .et_pb_icon_wrap::after {
  background-color: var(--px-color-1);
  color: #fff;
  transition: all 500ms ease;
}

.px_process_v2 .px_process_column:hover .px_process_icon .et_pb_icon_wrap::after {
  background-color: #fff;
  color: #000;
}

.px_process_v2 .px_process_column .px_process_blurb .et_pb_module_header {
  transition: all 500ms ease;
  color: #000;
  font-weight: 700;
}

.px_process_v2 .px_process_column .px_process_blurb .et_pb_module_header:hover {
  color: var(--px-color-1);
}

.px_process_v1 .px_process_column:nth-child(1) .px_process_icon .et_pb_icon_wrap::after {
  content: "01";
}

.px_process_v1 .px_process_column:nth-child(2) .px_process_icon .et_pb_icon_wrap::after {
  content: "02";
}

.px_process_v1 .px_process_column:nth-child(3) .px_process_icon .et_pb_icon_wrap::after {
  content: "03";
}

.px_process_v2 .px_process_column .px_process_blurb .et_pb_blurb_description {
  color: #161616;
}

/*--- Process Us v2 CSS End ---*/
/*--- Process Us v3 CSS Start ---*/
.px_process_v3 {
  background-color: var(--px-color-3);
}

.px_process_v3 .px_process_img .et_pb_image_wrap {
  position: relative;
}

.px_process_v3 .px_process_img .et_pb_image_wrap::before {
  content: "01";
  line-height: 2.5;
  font-size: 25px;
  position: absolute;
  color: #fff;
  font-weight: 700;
  background: var(--px-color-1);
  z-index: 99;
  height: 60px;
  width: 60px;
  top: 0px;
  left: -25px;
  border-radius: 50%;
  transition: all 500ms ease;
}

.px_process_v3 .px_process_column:nth-child(2) .px_process_img .et_pb_image_wrap::before {
  content: "02";
}

.px_process_v3 .px_process_column:nth-child(3) .px_process_img .et_pb_image_wrap::before {
  content: "03";
}

.px_process_v3 .px_process_img .et_pb_image_wrap img {
  border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
  border: 2px dashed #fff;
  padding: 7px;
}

/*--- Process Us v3 CSS End ---*/
/* -----------------------------------
  	17 Process Section CSS End
-------------------------------------*/
/* -----------------------------------
  	18 Partner Section CSS Start
-------------------------------------*/
/*--- Partner Us v1 CSS Start ---*/
/* .px_partner_v1 {} */
/*--- Partner Us v1 CSS End ---*/
/* -----------------------------------
  	18 Partner Section CSS End
-------------------------------------*/
/* -----------------------------------
  	19 Video Section CSS Start
-------------------------------------*/
/*--- Video v1 CSS Start ---*/
.px_video_v1 .px_video_icon .et_pb_image_wrap {
  position: relative;
  z-index: 99;
}

.px_video_v1 .px_video_icon .et_pb_image_wrap:before {
  -webkit-box-shadow: 0 0 0 0 rgba(54, 124, 232, .09);
  box-shadow: 0 0 0 0 rgba(54, 124, 232, .09);
  -webkit-animation: ripple 1s infinite;
  animation: ripple 3s infinite
}

.px_video_v1 .px_video_icon .et_pb_image_wrap:before,
.px_video_v1 .px_video_icon .et_pb_image_wrap:after {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-animation-delay: .9s;
  animation-delay: .9s;
  content: "";
  position: absolute;
  -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.9);
  box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.9);
  -webkit-animation: ripple 3s infinite;
  animation: ripple 3s infinite;
  -webkit-transition: all .4s ease;
  transition: all .4s ease;
}

.px_video_v1 .px_video_icon .et_pb_image_wrap:after {
  -webkit-animation-delay: .6s;
  animation-delay: .6s;
}

.px_video_v1 .px_video_icon .et_pb_image_wrap .et-pb-icon {
  color: var(--px-color-1);
  padding: 35px;
  border: 5px solid var(--px-color-1);
  border-radius: 50%;
}

.px_video_v1 .px_video_icon .et_pb_module_header {
  margin-top: 20px;
}

/*--- Video v1 CSS End ---*/
/* -----------------------------------
  	19 Video Section CSS End
-------------------------------------*/
/* -----------------------------------
  	20 Skill-bar Section CSS Start
-------------------------------------*/
/*--- Skill-bar v1 CSS Start ---*/

/* .px_skill_v1 {}

/*--- Skill-bar v1 CSS End ---*/
/* -----------------------------------
  	20 Skill-bar Section CSS End
-------------------------------------*/
/* -----------------------------------
  	21 Counter Section CSS Start
-------------------------------------*/
/*---Counter v1 CSS Start ---*/

.px_counter_v1 .px_counter_column:nth-child(2),
.px_counter_v1 .px_counter_column:nth-child(4) {
  margin-top: 40px;
}

.px_counter_v1 .px_counter_column {
  position: relative;
  display: block;
  background: #fff;
  border-radius: 20px;
  padding: 40px 31px 33px 31px;
  box-shadow: 0px 10px 50px 0px rgb(26 46 85 / 10%);
}

.px_counter_v1 .px_counter_column .px_counter_icon {
  width: fit-content;
  margin: auto;
  width: 100px;
  height: 100px;
  padding: 15px;
  transition: all 500ms ease;
}

.px_counter_v1 .px_counter_column .px_counter_icon .et-pb-icon {
  color: var(--px-color-1);
  line-height: 1.6;
  transition: all 500ms ease;
  font-size: 45px;
}

.px_counter_v1 .px_counter_column:hover .px_counter_icon .et-pb-icon {
  color: #fff;
}

.px_counter_v1 .px_counter_column .px_counter_icon::before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  background: var(--px-color-3);
  content: "";
  border-radius: 50%;
  z-index: -1;
  transform: scale(1.0);
  transform-origin: center;
  transform-style: preserve-3d;
  transition: all 0.4s cubic-bezier(0.62, 0.21, 0.45, 1.52);
}

.px_counter_v1 .px_counter_column .px_counter_icon::after {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  background: var(--px-color-1);
  content: "";
  border-radius: 50%;
  z-index: -1;
  transform: scale(0.0);
  transform-origin: center;
  transform-style: preserve-3d;
  transition: all 0.4s cubic-bezier(0.62, 0.21, 0.45, 1.52);
}

.px_counter_v1 .px_counter_column:hover .px_counter_icon::after {
  transform: scaleX(1.0);
}

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

  .px_counter_v1 .px_counter_column:nth-child(2),
  .px_counter_v1 .px_counter_column:nth-child(4) {
    margin-top: 0px;
  }
}

@media only screen and (max-width: 768px) {
  .px_counter_v1 .et_pb_row {
    position: relative;
  }
}

/*---Counter v1 CSS End ---*/
/*---Counter v2 CSS Start ---*/

.px_counter_v2 .px_counter_row {
  background-color: var(--px-color-1);
}

.px_counter_v2 .px_counter_icon .et_pb_icon_wrap {
  background-color: var(--px-color-3);
  height: 70px;
  width: 70px;
  border-radius: 50%;
}

.px_counter_v2 .px_counter_icon .et_pb_icon_wrap .et-pb-icon {
  color: #fff;
  line-height: 2.3;
}

@media only screen and (max-width: 1470px) {
  .px_counter_v2 {
    padding-bottom: 50px !important;
  }

  .px_counter_v2 .px_counter_row {
    position: unset !important;
    transform: none !important;
  }
}

/*---Counter v2 CSS End ---*/
/*---Counter v3 CSS Start ---*/
.px_counter_v3 {
  border-radius: 20px 0px 20px 0px;
  padding: 15px;
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: var(--px-color-1);
}

.px_counter_v3 .percent {
  margin-bottom: 10px !important;
  height: auto;
}

.px_counter_v3 .percent p {
  line-height: unset;
  font-size: auto;
}

.px_counter_v3 .percent-value {
  font-size: 30px;
  font-weight: 600;
  color: #fff;
}

.px_counter_v3 .title {
  color: #fff;
  font-size: 16px;
  font-weight: 600;
}

@media only screen and (min-width: 981px) and (max-width: 1300px) {
  .px_counter_v3 {
    border-radius: 0px 20px 0px 20px;
    top: 0;
    bottom: auto;
  }
}

@media only screen and (max-width: 780px) {
  .px_counter_v3 {
    bottom: -105px;
    border-radius: 0px 20px 20px 20px;
  }
}

/*---Counter v3 CSS End ---*/
/* -----------------------------------
  	21 Counter Section CSS End
-------------------------------------*/
/* -----------------------------------
  	22 Newsletter Section CSS Start
-------------------------------------*/
/*--- Newsletter v1 CSS Start ---*/
/* .px_newsletter_v1 {} */
/*--- Newsletter v1 CSS End ---*/
/* -----------------------------------
  	22 Newsletter Section CSS End
-------------------------------------*/
/* -----------------------------------
  	23 CTA Section CSS Start
-------------------------------------*/
/*--- CTA v1 CSS Start ---*/
.px_cta_v1 {
	background-color: var(--px-color-1);
}
/*--- CTA v1 CSS End ---*/
/* -----------------------------------
  	23 CTA Section CSS End
-------------------------------------*/
/* -----------------------------------
  	24 Coming Soon Page CSS Start
-------------------------------------*/
/* Coming Soon Page V1 CSS  Start */

.px_coming_soon_v1 .px_coming_soon_timer .title {
  margin-bottom: 100px;
}

.px_coming_soon_v1 .px_coming_soon_timer .section.values {
  width: max-content;
  max-width: unset;
  vertical-align: top;
}

.px_coming_soon_v1 .px_coming_soon_timer .values .value,
.px_coming_soon_v1 .px_coming_soon_timer.et_pb_countdown_timer .sep.sep.sep.sep.sep p {
  color: transparent;
  -webkit-text-stroke: 1px #adaeb1;
}

.px_coming_soon_v1 .px_coming_soon_timer .values .label {
  margin-top: 30px;
}

/* Coming Soon Page V1 CSS  End */
/* -----------------------------------
  	24 Coming Soon Page CSS End
-------------------------------------*/
/* -----------------------------------
  	25 404 Page CSS Start
-------------------------------------*/
/* 404 Page CSS Start */

.px_404_page_v1 .px_404_text .et_pb_text_inner {
  color: transparent;
  -webkit-text-stroke: 1px #adaeb1;
  line-height: 100px;
  font-weight: 700;
  font-size: 100px;
}

@media only screen and (max-width: 600px) {
  .px_404_page_v1 .px_404_text .et_pb_text_inner {
    line-height: 100px;
    font-size: 70px;
  }
}

@media only screen and (max-width: 500px) {
  .px_404_page_v1 .px_404_text .et_pb_text_inner {
    line-height: 60px;
    font-size: 40px;
  }
}

/* 404 Page CSS End */
/* -----------------------------------
  	25 404 Page CSS End
-------------------------------------*/
/* -----------------------------------
  	26 Search Page CSS Start
-------------------------------------*/
/* -----------------------------------
  	26 Search Page CSS End
-------------------------------------*/
/* -----------------------------------
  	27 Tab Control CSS Start
-------------------------------------*/
/* Services Toggle Css Start Here*/

[class*="px_service_tab_content_"].px_active {
  opacity: 1;
  /*     -webkit-transform: scale(.9);
  -ms-transform: scale(.9);
  transform: scale(.9); */
  -webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
  -o-transition: opacity 1s ease, transform 1s ease;
  transition: opacity 1s ease, transform 1s ease;
  visibility: visible;
  display: block !important;
}

[class*="px_service_tab_content_"].px_active {
  opacity: 1;
  /*     -webkit-transform: scale(.9);
  -ms-transform: scale(.9);
  transform: scale(.9); */
  -webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
  -o-transition: opacity 1s ease, transform 1s ease;
  transition: opacity 1s ease, transform 1s ease;
  visibility: visible;
  display: block !important;
}

[class*="px_service_tab_content_"] {
  opacity: 0;
  /*     -webkit-transform: scale(.7);
  -ms-transform: scale(.7);
  transform: scale(.7); */
  -webkit-transition: opacity .4s ease, -webkit-transform .4s ease;
  -o-transition: opacity .4s ease, transform .4s ease;
  transition: opacity .4s ease, transform .4s ease;
  visibility: hidden;
  display: none !important;
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

[class*="px_service_tab_content_"].animated {
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp
}

/* Services Toggle Css End Here*/
/* -----------------------------------
  	27 Tab Control CSS End
-------------------------------------*/
/* -----------------------------------
    28. Feature CSS Start
-------------------------------------*/
/* Px Feature V1 Start */
.px_feature_v2 .px_counter_column:nth-child(2),
.px_feature_v2 .px_counter_column:nth-child(4) {
  margin-top: 0px;
}

.px_feature_v2 .px_feature_column {
  position: relative;
  display: block;
  background: #fff;
  border-radius: 20px;
  padding: 40px 40px;
  margin-bottom: 60px;
  box-shadow: 0px 10px 40px 0px rgb(0 0 0 / 8%) !important;
  z-index: 1;
}

.px_feature_v2 .px_feature_column::before {
  position: absolute;
  content: '';
  background: #fff;
  width: calc(100% - 120px);
  height: 26px;
  left: 60px;
  bottom: -26px;
  border-radius: 0px 0px 20px 20px;
  box-shadow: 0px 20px 40px 0px rgb(0 0 0 / 8%);
}

.px_feature_v2 .px_feature_column::after {
  position: absolute;
  content: '';
  background: #fff;
  width: calc(100% - 60px);
  height: 13px;
  left: 30px;
  bottom: -13px;
  border-radius: 0px 0px 20px 20px;
  box-shadow: 0px 20px 40px 0px rgb(0 0 0 / 8%);
  z-index: 1;
}

.px_feature_v2 .px_feature_column .et_pb_image .et_pb_image_wrap {
  height: 65px;
  object-fit: cover;
  width: 60px;
}

.px_feature_v2 .px_feature_blurb .et_pb_module_header {
  position: relative;
  display: block;
  font-size: 18px;
  line-height: 30px;
  font-weight: 700;
  transition: all 500ms ease;
}

.px_feature_v2 .px_feature_blurb .et_pb_module_header:hover {
  color: var(--px-color-2);
}

@media (min-width: 981px) and (max-width:1200px) {
  .px_feature_v2 .px_feature_blurb .et_pb_module_header {
    font-size: 19px;
  }
}

/* Px Feature V1 End */
/* -----------------------------------
    28. Feature CSS End
-------------------------------------*/
/* -----------------------------------
    29. Banner CSS Start
-------------------------------------*/
.px_banner_v1 .px_banner_title h3 {
  position: relative;
  padding-left: 60px;
}

.px_banner_v1 .px_banner_title h3::before {
  position: absolute;
  content: '';
  background: var(--px-color-1);
  width: 50px;
  height: 2px;
  left: 0px;
  top: 10px;
}

.px_banner_v1 .px_banner_btn_row .px_banner_btn_column {
  width: auto !important;
}

.px_banner_v2 .px_banner_title h3 {
  color: var(--px-color-1) !important;
}

.px_post_v1 {
  position: relative;
}

.px_post_v1::before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 1200px;
  content: "";
  background-image: -moz-linear-gradient(-1deg, rgb(28, 27, 31) 0%, rgba(28, 27, 31, 0) 100%);
  background-image: -webkit-linear-gradient(-1deg, rgb(28, 27, 31) 0%, rgba(28, 27, 31, 0) 100%);
  background-image: -ms-linear-gradient(-1deg, rgb(28, 27, 31) 0%, rgba(28, 27, 31, 0) 100%);
}

.px_wing_border {
  overflow: hidden;
  /* background: #000; */
  /* background: linear-gradient(#000, #fff); */
}

.px_wing_border .px_border_column .et_pb_text .et_pb_text_inner {
  opacity: 0.4;
}

.px_wing_border .px_border_column {
  z-index: 0 !important;
}

.px_wing_border .border_1,
.px_wing_border .border_2,
.px_wing_border .border_3 {
  width: 800px;
  height: 800px;
  display: block;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background-clip: border-box;
  /* border: 1px solid var(--px-color-1); */
  border: 1px solid #b6bdb8;
  position: absolute;
  bottom: 0;
  -webkit-animation: vane 20s infinite linear;
  -moz-animation: vane 20s infinite linear;
  -o-animation: vane 20s infinite linear;
  animation: vane 20s infinite linear;
  z-index: -1;
}

.px_wing_border .border_1 {
  left: 190px;
  bottom: 140px;
}

.px_wing_border .border_2 {
  left: 90px;
  bottom: 10px;
  animation-direction: reverse;
}

.px_wing_border .border_3 {
  left: 10px;
  bottom: 80px;
}

.px_wing_border .border_1::before,
.px_wing_border .border_2::before,
.px_wing_border .border_3::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -9px;
  margin-left: -9px;
  width: 18px;
  height: 18px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background-clip: border-box;
  /* background-color: var(--px-color-1); */
  background-color: #b6bdb8;
  display: block;
}

.px_wing_border .border_1::before {
  right: -9px;
  top: 50%;
  left: auto;
}

.px_wing_border .border_2::before {
  top: -9px;
  bottom: auto;
}

.px_wing_border .border_3::before {
  top: auto;
  bottom: -9px;
}

.px_wing_border .border_1:after,
.px_wing_border .border_2:after,
.px_wing_border .border_3:after {
  content: "";
  position: absolute;
  left: 50%;
  top: -9px;
  margin-left: -9px;
  width: 18px;
  height: 18px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background-clip: border-box;
  /* background-color: var(--px-color-1); */
  background-color: #b6bdb8;
  display: block;
}

.px_wing_border .border_1:after {
  left: 0;
  top: 50%;
}

.px_wing_border .border_2:after {
  bottom: -9px;
  top: auto;
}


/* Wind Img */
@keyframes vane {
  0% {
    transform: rotate(0deg)
  }

  100% {
    transform: rotate(360deg)
  }
}


/* -----------------------------------
    29. Banner CSS End
-------------------------------------*/
/* -----------------------------------
    30. Slide In CSS Start
 ----------------------------------- */
/* Show/hide the popup overlay wrapper when "is-visible" class changes, apply the CSS to frontend only */

body:not(.et-fb) .px-popup-wrapper .px-popup-content {
  position: fixed;
  z-index: 990;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transition: all .5s cubic-bezier(.14, .06, .41, 1.39);
  opacity: 0;
  visibility: hidden;

}

body:not(.et-fb) .px-popup-wrapper.popup-is-visible .px-popup-content {
  opacity: 1;
  visibility: visible;

}


/* Allow the content inside the popup wrapper to scroll */
.px-popup-inside {
  height: 100%;
  overflow-y: scroll;
}


/* Prevent Body from Scrolling when Popup is visible */
body.px-noscroll {
  overflow-y: scroll;
}

/* Center Align Popup Content inside the Section */
.px-popup-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.px-popup-content .et_pb_row {
  margin-top: 0;
  margin-bottom: 0;
}


/* Adjust the position of the popup overlay for admin bar */
@media (min-width:600px) and (max-width:782px) {
  body:not(.et-fb).admin-bar .px-popup-wrapper {
    top: 46px;
  }
}

@media (min-width:783px) {
  body:not(.et-fb).admin-bar .px-popup-wrapper {
    top: 32px;
  }
}

/* Mave the popup on top of other elements */
.et_builder_inner_content.popup-is-visible {
  z-index: 99999;
}

/* Add a hand cursor to the close trigger element */
.px-popup-close {
  cursor: pointer;
}

/*Slide In Css Start Here*/
.px_slidein {
  overflow: visible !important;
}

.px_slidein:after {
  content: "";
  position: absolute;
  bottom: 40px;
  left: 10px;
  width: calc(100% - 20px);
  height: 80%;
  background-color: var(--px-color-1);
  border-radius: inherit;
  z-index: -1;
  transition: all 0.2s;
  opacity: 0;
}

.px_slidein .et_pb_button_module_wrapper {
  background: #fff;
  padding-bottom: 15px;
}

.px_slidein:hover:after {
  bottom: -15px;
  transition: all 0.2s;
  opacity: 1;
}

.px_feature_info .et_pb_main_blurb_image .et_pb_image_wrap .et-pb-icon {
  color: var(--px-color-1);
}

.px_feature_info .et_pb_module_header span {
  color: var(--px-color-3);
}

.px_scale_in .px_contact .et_contact_bottom_container {
  margin-top: 10px;
  margin-right: 10px;
}

/* Icon CSS */
.px_icon_bar {
  padding: 0px !important;
  background: var(--px-color-1) !important;
  border-radius: 5px;
  border: 2px solid #e4e7ee;
  transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  -webkit-box-shadow: 0px 0px 0px 0px;
  box-shadow: 0px 0px 0px 0px;
}

.px_icon_bar:after {
  padding: 7px 15px 7px 9px;
  display: block;
  position: relative;
  /* -webkit-transition: all 0.5s ease; */
  color: #fff !important;
  font-size: 20px !important;
}

.px_icon_bar:before {
  content: "";
  position: absolute;
  width: 38px;
  height: 38px;
  border-radius: 5px;
  background: var(--px-color-1);
  border-radius: 5px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  ;
  display: block !important;
}

.px_icon_bar:hover {
  background: var(--px-color-2) !important;
}

.px_icon_bar:hover:before {
  width: 100%;
  height: 100%;
}

/*Popup Overlay Css Move Up Start Here*/
.px-popup-wrapper .px-popup-content.px_move_up {
  transform: translateY(100%);
  transition: all .4s ease-in-out, width .2s ease-in-out, top .4s ease-in-out !important;
}

body:not(.et-fb) .px-popup-wrapper.popup-is-visible .px-popup-content.px_move_up {
  transform: translateY(-30px);
}


/*Popup Overlay Css Move Down Start Here*/
.px-popup-wrapper .px-popup-content.px_move_downup {
  transform: translateY(-100%);
  transition: all .4s ease-in-out, width .2s ease-in-out, top .4s ease-in-out !important;
}

body:not(.et-fb) .px-popup-wrapper.popup-is-visible .px-popup-content.px_move_downup {
  transform: translateY(0%);
}

/*Popup Overlay Css Move right Start Here*/
.px-popup-wrapper .px-popup-content.px_slide_right {
  transform: translateX(-100%);
  transition: all .8s ease-in-out, width .4s ease-in-out, top .8s ease-in-out !important;
}

body:not(.et-fb) .px-popup-wrapper.popup-is-visible .px-popup-content.px_slide_right {
  transform: translateX(0%);
}

/*Popup Overlay Css Move Left Here*/
.px-popup-wrapper .px-popup-content.px_slide_left {
  transform: translateX(100%);
  transition: all .8s ease-in-out, width .4s ease-in-out, top .8s ease-in-out !important;
}

body:not(.et-fb) .px-popup-wrapper.popup-is-visible .px-popup-content.px_slide_left {
  transform: translateX(0%);
}

/* Add Row animation when popup is triggered */
/*.px-popup-wrapper.popup-is-visible .et_pb_row:not(.px-popup-close)*/
.px-popup-wrapper.popup-is-visible .px_scale_in {
  animation: scale-in .5s cubic-bezier(.14, .06, .41, 1.39) both;
  animation-delay: .5s;
}

/*Popup Overlay Css Move Up Start Here*/
body:not(.et-fb) .px-popup-wrapper .px-popup-content.px_move_up {
  top: unset;
  min-height: auto;
  right: 20px;
}

.px-popup-wrapper .px_move_up {
  transform: translateY(100%);
  transition: all .8s ease-in-out, width .4s ease-in-out, top .8s ease-in-out !important;
}

.px-popup-wrapper.popup-is-visible .px_move_up {
  transform: translateY(-30px);
}


/*Popup Overlay Css Move Down Start Here*/
.px-popup-wrapper .px_move_downup {
  transform: translateY(-100%);
  transition: all .8s ease-in-out, width .4s ease-in-out, top .8s ease-in-out !important;
}

.px-popup-wrapper.popup-is-visible .px_move_downup {
  transform: translateY(0%);
}

/*Popup Overlay Css Slide Right Start Here*/
.px-popup-wrapper .px_slide_right {
  transform: translateX(100%);
  transition: all .8s ease-in-out, width .4s ease-in-out, top .8s ease-in-out !important;
}

.px-popup-wrapper.popup-is-visible .px_slide_right {
  transform: translateX(0%);
}

/*Popup Overlay Css Slide left Here*/
.px-popup-wrapper .px_slide_left {
  transform: translateX(0%);
  transition: all .8s ease-in-out, width .4s ease-in-out, top .8s ease-in-out !important;
}

/* -----------------------------------
    30. Slide In CSS End
 ----------------------------------- */
/*-------------------------------------------
    31. Color Picker CSS Start
-------------------------------------------*/
.tm-font-selector div,
.tm-color-selector div,
.pickr .pcr-button::before,
.pickr .pcr-button::after {
  border-radius: 50%;
}

/*Front Color Picker Css */
.px-color-switcher {
  position: fixed;
  left: 8px;
  top: 50%;
  z-index: 1000;
  display: block;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  text-align: center;
  border-radius: 64px;
  padding: 15px 10px 15px 10px;
  background-color: #fff;
  font-size: 12px;
  width: 65px;
  line-height: 1.3;
  background: linear-gradient(145deg, #e2e8ec, #fff);
  box-shadow: 5px 5px 15px #d1d9e6, -5px -5px 15px #fff;
  transition: all 200ms ease-in-out;
}

.px-color-switcher .close {
  font-size: 14px;
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: 0;
  font-size: 20px;
  color: #fff;
  z-index: 20;
  text-align: center;
  line-height: 24px;
  width: 20px;
  height: 20px;
  display: block;
  opacity: 1;
  background-color: #333;
  transition: all 0.5s ease;
  cursor: pointer;
  box-shadow: 5px 5px 15px #d1d9e6, -5px -5px 15px #fff;
}

.px-color-switcher .close:hover {
  background: #fff;
  color: #333 !important;
}

.px-color-switcher.closed {
  padding: 10px 8px 6px 10px;
  left: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  transition: all 0.25s ease;
}

.px-color-switcher.closed:hover {
  padding-right: 14px;
}

.tm-font-selector:hover {
  cursor: pointer;
}

.px-color-switcher.closed img:hover {
  cursor: pointer;
}

.px-color-switcher.closed .close {
  display: none;
}

.px-color-switcher.closed div {
  display: none;
}

.px-color-switcher.closed .img {
  display: block;
  overflow: hidden;
  height: 42px;
  width: 45px;
  text-align: center;
  animation: rotation 8s infinite linear;

}

.px-color-switcher.closed .img img {
  margin: 0;
}

.px-color-switcher .close:hover {
  opacity: 1;
  color: #000;
}

@media (max-width: 991px) {
  .px-color-switcher {
    display: none !important;
  }
}

.px-font-selector div,
.px-color-selector div {
  border-radius: 50%;
  width: 35px;
  height: 35px;
  border: 4px solid #fff;
  display: block;
  margin: 4px auto 0;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  cursor: pointer;
  transition: all 0.5s ease;
}

.px-font-selector div:hover,
.px-color-selector div:hover {
  background: linear-gradient(145deg, rgba(0, 0, 0, 0.5), #fff);
  box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.5), -5px -5px 15px #fff;
}

.px-custom-field {
  padding: 0;
  border: 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  margin-bottom: 14px;
  margin-left: auto;
  margin-right: auto;
  cursor: pointer;
  display: block;
}

/*Color Picker Tooltip Css */
.px-color-selector {
  position: relative;
  ;
}

.px-color-switcher .px_tooltip {
  opacity: 0;
  visibility: hidden;
  -webkit-transform: scale(.7);
  -moz-transform: scale(.7);
  -ms-transform: scale(.7);
  transform: scale(.7);
  position: absolute;
  background-color: #fff;
  font-size: 13px;
  margin: 0;
  padding: 0px 20px;
  font-family: inherit;
  width: auto;
  font-weight: 600;
  line-height: 36px;
  letter-spacing: .1px;
  left: 5px;
  top: 0px;
  border-radius: 3px;
  white-space: nowrap;
  -webkit-box-shadow: 0 5px 40px rgb(0 0 0 / 7%), 0 0 3px -1px rgb(83 45 245 / 15%);
  -moz-box-shadow: 0 5px 40px rgb(0 0 0 / 7%), 0 0 3px -1px rgb(83 45 245 / 15%);
  box-shadow: 0 5px 40px rgb(0 0 0 / 7%), 0 0 3px -1px rgb(83 45 245 / 15%);
  -moz-transition: all .3s cubic-bezier(0.64, -0.09, 0.13, 1.15);
  -o-transition: all .3s cubic-bezier(0.64, -0.09, 0.13, 1.15);
  transition: all .3s cubic-bezier(0.64, -0.09, 0.13, 1.15);
  color: #333;
}

.px-color-switcher .px_tooltip span {
  display: block;
  position: absolute;
  left: -5px;
  top: 12px;
  width: 0;
  height: 0;
  border-right: 5px solid #fff;
  border-bottom: 5px solid transparent;
  border-top: 5px solid transparent
}

.px-color-switcher .px-color-selector:hover .px_tooltip {
  opacity: 1;
  left: 45px;
  visibility: visible;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1)
}

/*-------------------------------------------
    31. Color Picker CSS End
-------------------------------------------*/
/* -----------------------------------
    32. Animation Part CSS Start
-------------------------------------*/
/* Fade Up  */
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px)
  }

  to {
    opacity: 1;
    transform: translateY(0)
  }
}

/* Slid In */
@keyframes scale-in {
  0% {
    transform: scale(0.3);
    opacity: 0
  }

  100% {
    transform: scale(1);
    opacity: 1
  }
}

@-webkit-keyframes ripple {
  70% {
    -webkit-box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
    box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
  }

  100% {
    -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}

@keyframes ripple {
  70% {
    -webkit-box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
    box-shadow: 0 0 0 30px rgba(255, 255, 255, 0);
  }

  100% {
    -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}

@-webkit-keyframes circle {
  0% {
    opacity: 1;
  }

  40% {
    opacity: 1;
  }

  100% {
    width: 200%;
    height: 200%;
    opacity: 0;
  }
}

@keyframes circle {
  0% {
    opacity: 1;
  }

  40% {
    opacity: 1;
  }

  100% {
    width: 200%;
    height: 200%;
    opacity: 0;
  }
}


/**Color Picker Img Animation*/
@keyframes rotation {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(359deg);
  }
}

/** animationFramesTwo Img Animation*/

@keyframes animationFramesTwo {
  0% {
    transform: translateX(0)
  }

  25% {
    transform: translateX(40px)
  }

  50% {
    transform: translateX(0)
  }

  75% {
    transform: translateX(-40px)
  }

  100% {
    transform: translateX(0)
  }
}

/* -----------------------------------
    32. Animation Part End
-------------------------------------*/
