/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/


/* home page custom css */

.spi-blue-btn{
    align-items: center;
}
.spi-blue-btn a{
    background-color: #14679D;
    color: #fff !important;
    border-radius: 5px;
    padding: 8px 27px !important;
    font-size: 18px !important;
    line-height: 27px !important;
    height: auto !important;
    border: 2px solid #14679D;
    transition: .32s; 
}
.spi-blue-btn a:hover{
    background-color: #fff;
    color: #14679D !important;
}

.testimonial-spi .swiper-pagination .swiper-pagination-bullet{
    background-color: transparent !important;
    border: 1px solid #14679D !important;
    opacity: 1 !important;
}
.testimonial-spi .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    background-color:  #14679D !important;
}
.testimonial-spi .swiper-slide .elementor-testimonial__name{
    position: relative;
    padding-left: 10px;
}
.testimonial-spi .swiper-slide .elementor-testimonial__name:before{
    content: '-';
    position: absolute;
    left: 0;
    top: 0;
}
.parallax-img-bg{
    will-change: transform;
}
.mix-blend-images .elementor-widget-container img,
.mix-blend-images .swiper-slide-inner img{
    mix-blend-mode: multiply;
}

/* architects page custom style */
.full-bg-inside-container{
    position: relative;
}
.full-bg-inside-container:before {
    position: absolute;
    content: '';
    left: 0;
    right: 0;
    top: 0;
    background-color: #F8F8F8;
    height: 100%;
    height: 100%;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
}
.spi-faq .elementor-accordion .elementor-accordion-item{
    box-shadow: 0px 2px 7px 3px rgb(230 230 230);
    margin-bottom: 15px;
}
.spi-logo-carousel .swiper-slide .swiper-slide-image{
    max-height: 120px;
    object-fit: contain;
}
.spi-btn-blue.wp-block-button a{
	border: 2px solid #14679d;
}
.spi-btn-blue a:visited:hover,
.spi-btn-blue a:focus:hover,
.spi-btn-blue a:focus{
    color: #14679d !important;
}
.spi-select-form input[type="text"]{    
    line-height: 1.3;
}
.searchandfilter ul{
    margin-left: 0;
}
.searchandfilter ul li{
    margin-bottom: 10px;
}

.searchandfilter ul li {
	margin-top: 16px;
}
.searchandfilter ul li select {
	font-size: 16px !important;
}
.searchandfilter ul li input {
	line-height: 1em;
}

@media screen and (min-width:1025px){
    .max-200{
        max-width: 200px;
        margin-left: auto;
    }
	.elementor-image-carousel-wrapper.swiper .elementor-swiper-button {
		display: none !important; 
	}
}
@media screen and (max-width:1024px){
    .main-header .spi-blue-btn a{
        margin: 10px;
    }
}
@media screen and (min-width:1025px) and (max-width:1180px){
    .main-header nav ul li a.elementor-item{
        font-size: 14px !important;
    }
    .main-header .spi-blue-btn a{
        font-size: 14px !important;
        line-height: 22px !important;
    }
}
@media screen and (max-width:767px){
    .order-top-mob{
        order: -1 !important;
    }
	.searchandfilter ul {
		margin-left: 0;
	}
	.searchandfilter ul li,
	.searchandfilter ul li select ,
	.searchandfilter ul li input {
		width: 100%;
	}
}

/***Projects Page Button After Pagination ***/
.spi-archive-btn {
	display: none;
}

.spi-archive-btn.show_btn {
	display: block;
}

/** filter style **/

.custom-spi-filter{
	max-width: 100% !important;
}

.custom-spi-filter {
  background: #f5f5f5;
  padding: 60px 0;
}

.custom-spi-filter .result-wrapper {
  display: none;
  justify-content: space-between;
  align-items: center;
  min-height: 40px;
}

.custom-spi-filter .result-wrapper  .hide-on-mobile {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  align-items: center;
  width: 85%;
  padding-right: 10px;

}

.custom-spi-filter .flex-space-bet {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.custom-spi-filter .filter-wrapper {
    padding-top: 60px;
    margin-top: -40px;
    position: relative;
    overflow: hidden;
}

.custom-spi-filter .filter-and-sort-button button {
  width: 100%;
}

.custom-spi-filter .plus-icon::before,
.custom-spi-filter .plus-icon::after {
  content: "";
  width: 2px;
  height: 12px;
  background: #14679D;
}

.custom-spi-filter button.pill {
  position: relative;
  font-size: 14px;
  color: #404040;
  background: #fff;
  text-decoration: none;
  border-radius: 20px;
  padding: 8px 40px 8px 20px;
  border: none;
  text-transform: capitalize;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.custom-spi-filter button.pill .close-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  position: absolute;
  right: 10px;
  top: 8px;
  z-index: 999;
}

.custom-spi-filter button.pill span {
  font-weight: 600;
}

.custom-spi-filter .pill.plus-icon::before,
.custom-spi-filter .pill.plus-icon::after {
  position: absolute;
  right: 20px;
  top: 12px;
}

.custom-spi-filter button.pill::before {
transform: rotate(-45deg);
}

.custom-spi-filter button.pill::after {
transform: rotate(45deg);
}

.custom-spi-filter .result-wrapper .result {
  font-size: 19px;
  line-height: 29px;
  font-weight: bold;
  font-family: 'Poppins';
  margin-right: 12px;
  color: #404040;
}

.custom-spi-filter .sort-filter .select-wrapper {
  position: relative;
}

.custom-spi-filter .sort-filter .select-wrapper::after {
  content: "";
  position: absolute;
  right: 2px;
  top: 6px;
  width: 10px;
  height: 10px;
  z-index: 0;
  transform: rotate(45deg);
  transition: transform .2s ease-in-out;
  border-right: 2px solid #14679D;
  border-bottom: 2px solid #14679D;
}

.custom-spi-filter .sort-filter form {
  display: flex;
  align-items: center;
  gap: 5px;
  text-wrap: nowrap;
}

.custom-spi-filter .sort-filter label {
  font-size: 16px;
  line-height: 25px;  
  color: #404040;
}

.custom-spi-filter .sort-filter select {
  position: relative;
  font-size: 16px;
  line-height: 25px;
  font-weight: 600;
  padding: 0 20px 0 0;
  border: none;
  color: #404040;
  background: transparent;
  text-indent: 1px;
  z-index: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.custom-spi-filter .toggle-button {
  padding: 14px;
}
.custom-spi-filter .toggle-button button {
  position: relative;
  font-size: 14px;
  color: #14679D;
  background: transparent;
  width: 100%;
  padding: 12px 12px 12px 36px;
  text-align: left;
  border: 1px solid #C4C4C4;
}

.custom-spi-filter .toggle-button .view-more.plus-icon::before ,
.custom-spi-filter .toggle-button .view-more.plus-icon::after {
  position: absolute;
  left: 20px;
  top: 16px;
}

.custom-spi-filter .toggle-button .view-less.plus-icon::before {
  position: absolute;
  left: 20px;
  top: 14px;
}

.custom-spi-filter .toggle-button .plus-icon::before {
  transform: rotate(90deg);
}

.custom-spi-filter .card {
  background-color: #fff;
  text-align: center;
}

.custom-spi-filter .card h2 {
  font-size: 16px;
  line-height: 19px;
  padding: 16px;
  margin-bottom: 0;
  font-family: 'Poppins', sans-serif;
}
.custom-spi-filter .card img {
  width: 100%;
  height: 300px;
  object-fit: cover;
}

.custom-spi-filter .card a {
  display: block;
  color: #000;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.custom-spi-filter .accordion-item {
  margin-bottom: 10px;
}
  
.custom-spi-filter .accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 1rem 1.25rem;
  font-size: 14px;
  font-weight: 600;
  color: #404040 !important;
  background-color: #fff;
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
}
  
.custom-spi-filter .accordion-button[aria-expanded="true"]::after {
  transform: rotate(-135deg);
}

.custom-spi-filter .accordion-button::after {
  content: "";
  width: 12px;
  height: 12px;
  position: absolute;
  top: 22px;
  right: 26px;
  border-right: 2px solid #14679D;
  border-bottom: 2px solid #14679D;
  transition: transform .2s ease-in-out;
  transform: rotate(45deg);
}

.custom-spi-filter .accordion-body {
  padding: 10px 0;
}

.custom-spi-filter .checkbox-wrapper {
  padding-left: 1rem;
  margin-bottom: 20px;
}


.custom-spi-filter .accordion-collapse {
  display: none;
}

.custom-spi-filter .accordion-collapse .accordion-collapse .accordion-body {
  padding: 1rem 1.25rem;
}

.custom-spi-filter .accordion-collapse.show { 
  display: block;
  background-color: #fff;
}

.custom-spi-filter .accordion-collapse.show .accordion-button[aria-expanded="true"]::after {
  transform: rotate(-135deg);
}
.custom-spi-filter .accordion-collapse.show .accordion-button[aria-expanded="false"]::after {
  transform: rotate(45deg);
}

.custom-spi-filter .accordion select {
  width: 100%;
  padding: 5px;
  margin-bottom: 1rem;
}


.custom-spi-filter .checkbox-wrapper {
  margin-bottom: 5px;
  display: flex;
  align-items: center;
}

.custom-spi-filter .checkbox-wrapper input[type="checkbox"] {
  position: relative;
  border: 2px solid #8E8E8E;
  border-radius: 2px;
  background: none;
  cursor: pointer;
  line-height: 0;
  margin: 0 .6em 0 0;
  outline: 0;
  padding: 0 !important;
  vertical-align: text-top;
  height: 20px;
  width: 20px;
  -webkit-appearance: none;
  opacity: .5;
}


.custom-spi-filter .checkbox-wrapper input[type="checkbox"]:before {
  content: '';
  position: absolute;
  right: 50%;
  top: 50%;
  width: 6px;
  height: 12px;
  border: solid #FFF;
  border-width: 0 2px 2px 0;
  margin: -1px -1px 0 -1px;
  transform: rotate(45deg) translate(-50%, -50%);
  z-index: 1;
}

.custom-spi-filter .checkbox-wrapper input[type="checkbox"]:checked {
  background-color: #14679D;
  opacity: 1;
  border: none;
}

.custom-spi-filter .checkbox-wrapper.isDisabled{
opacity: 0.5;
cursor: no-drop;
}
.hide {
  display: none !important; /* Hide elements by default */
}

/** pagination **/

.custom-spi-filter #wrapper {
  margin: 40px 0;
}

.custom-spi-filter #pagination {
  margin: 0;
  text-align: center
}

.custom-spi-filter #pagination li {
  display: inline-block
}

.custom-spi-filter #pagination li a {
  display: inline-block;
  font-size: 20px;
  line-height: 40px;
  color: #14679D;
  padding: 5px 10px;
  text-decoration: none;
}

/* Active and Hoverable Pagination */
.custom-spi-filter #pagination li a {
border-radius: 5px;
-webkit-transition: background-color 0.3s;
transition: background-color 0.3s
  
}
.custom-spi-filter #pagination li a.active {
  background-color: #fff;
  color: #404040;
}
.custom-spi-filter #pagination li a:hover:not(.active) {
  background-color: #fff;
} 

.pe-none {
  pointer-events: none;
}

body.fixed-body {
  position: fixed;
  inset: 0;
}

.custom-spi-filter .close-button.plus-icon {
  display: inherit;
  font-size: 0;
  line-height: 0;
  padding: 0;
  width: 30px;
  height: 30px;
  position: relative;
  border: none;
  background: transparent;
}

.custom-spi-filter .close-button.plus-icon::before, .custom-spi-filter .close-button.plus-icon::after {
  position: absolute;
  right: 12px;
  top: 6px;
  width: 3px;
  height: 20px;
}

.custom-spi-filter .close-button.plus-icon:before {
  transform: rotate(45deg);
}

.custom-spi-filter .close-button.plus-icon:after {
  transform: rotate(-45deg);
}

.custom-spi-filter .close-button-wrapper {
  padding: 20px 15px;
  background-color: #fff;
  border-top: 45px solid #14679D;
}

.custom-spi-filter .bold-text {
  font-size: 19px;
  line-height: 29px;
  font-weight: bold;
}

.custom-spi-filter .flex-space-bet.clear-button-wrapper {
  padding: 20px 15px;
}

.custom-spi-filter .clear-button-wrapper button {
  background: transparent;
  color: #14679D;
  font-size: 16px;
  line-height: 25px;
  border: none;
  padding: 0;
}

.custom-spi-filter .post-not-found {
  font-size: 28px;
  line-height: 36px;
  font-weight: bold;
  text-align: center;
}

.custom-spi-filter .right-col .view-archive-text {
  text-align: center;
}
.custom-spi-filter .right-col .view-archive-text a {
  color: #404040;
  font-size: 20px;
  line-height: 40px;
}

.custom-spi-filter .reset-filter-btn-wrap button {
  display: none;
}

@media screen and (max-width: 767px) {
  .custom-spi-filter .filter-wrapper .left-col {
    position: fixed;
    bottom: -1000px;
    left: 0;
    right: 0;
    padding-bottom: 140px;
    height: 100vh;
    background: #F5F5F5;
    overflow: scroll;
    transition: all 0.5s ease-in-out;
  }
  
  .custom-spi-filter .filter-wrapper .left-col.show-mobile-filter {
    inset: 0;
    z-index: 1;
  }
  .custom-spi-filter .filter-wrapper .left-col.show-mobile-filter .sort-filter {
    display: block;
    padding: 10px;
    margin: 10px;
    background-color: #fff;
  }

  .custom-spi-filter .filter-wrapper .left-col.show-mobile-filter .sort-filter label {
    font-size: 16px;
    line-height: 25px;
    color: #404040;
  }
  .custom-spi-filter .filter-wrapper .left-col.show-mobile-filter .sort-filter select {
    font-size: 14px;
    line-height: 21px;
  }

  .custom-spi-filter .left-col.show-mobile-filter .view-result-btn-wrapper {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 2;
    padding: 10px;
    background: #fff;
    box-shadow: 0px 0px 10px #00000039;
  }

  .custom-spi-filter .left-col.show-mobile-filter .view-result-btn-wrapper:empty {
    display: none;
  }

  .custom-spi-filter .view-result-btn-wrapper button {
    font-size: 16px;
    line-height: 25px;
    font-weight: 600;
    width: 100%;
    border-radius: 0;
  }
  .custom-spi-filter .accordion{
    padding: 10px;
  }
  .custom-spi-filter .right-col {
    padding: 40px 20px;
  }
}

@media screen and (min-width: 768px) {
  .custom-spi-filter .left-col {
    flex-basis: 30%;
  }
  .custom-spi-filter .filter-wrapper .hide-on-desktop {
    display: none;
  }
  .custom-spi-filter .result-wrapper,
  .custom-spi-filter .filter-wrapper {
    display: flex;
    align-items: flex-start;
  }
  .custom-spi-filter .right-col {
    flex-basis: 70%;
  }
  .custom-spi-filter .card-wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    padding-left: 30px;
    text-align: center;
  }
  .custom-spi-filter .card img {
    height: 160px;
  }
  .custom-spi-filter .filter-and-sort-button {
    display: none;
  }
  .custom-spi-filter .sort-filter .select-wrapper::after {
    content: "";
    top: 8px;
  }
  .custom-spi-filter .reset-filter-btn-wrap button {
    display: block;
    width: 100%;
    margin-bottom: 20px;
  }
}
@media screen and (min-width:768px) and (max-width:1200px){
  .custom-spi-filter .result-wrapper  .hide-on-mobile{
    width: 70%;
  }
}
@media screen and (min-width: 992px) {
  .custom-spi-filter .left-col {
    flex-basis: 24%;
  }
  .custom-spi-filter .right-col {
    flex-basis: 76%;
  }
  .custom-spi-filter .card img {
    height: 280px;
  }
  .custom-spi-filter .card h2 {
    font-size: 20px;
    line-height: 24px;
  }
}

@media screen and (min-width: 1200px) {
  .custom-spi-filter .card-wrapper {
    grid-template-columns: repeat(3, 1fr);
  }
}


/* Portfolio Links style */

ul.portfolio-links {
  margin-left: 20px;
}

ul.portfolio-links li {
margin-bottom: 10px;
}

ul.portfolio-links li::marker {
color: #14679d;
}

@media screen and (min-width: 768px) {
ul.portfolio-links {
  column-count: 2;
    column-gap: 3rem;
    -moz-column-count: 2;
    -moz-column-gap: 3rem;
    -webkit-column-count: 2;
    -webkit-column-gap: 3rem;
}
}