:root {
    --primary-color: #001A29;
    --secondary-color: #F4F8FA;
    --bg-color: #FFFFFF;
    --text-color: #74787C;
    /* --accent-color: #4AAB3D; */
    --accent-color: #41C575;
    --white-color: #FFFFFF;
    --divider-color: #001A291A;
    --dark-divider-color: #FFFFFF1A;
    --error-color: rgb(230, 87, 87);
    --default-font: "Inter", sans-serif;
    --accent-font: 'ClashGrotesk-Variable';
}


/************************************/
/**** 	 01. Hero Section css	 ****/
/************************************/

/* Smooth transition base for the hero section */
.banner-section-solar {
    transition: all 0.5s ease-in-out;
}

/* --- WHEN CHECKED --- */

/* Example 1: Change the background color or glow effect */
.banner-section-solar.deactive-control {
    background-color: #0b2211; /* Darken the background slightly for an active contrast */
    box-shadow: inset 0 0 100px rgba(0, 255, 100, 0.1); /* Subtle green power glow */
    background-image: url(../images2/home/hero-img8.jpg);
}

/* Example 2: Make the grid lines light up or animate */
.banner-section-solar.deactive-control .banner-content-wrap {
    /* You can swap out your background graphics or add effects here */
}

/* Example 3: Animate elements when active (like making an icon bounce or spin) */
.banner-section-solar.deactive-control .banner-icon img {
    transform: scale(1.1);
    filter: drop-shadow(0 0 8px #2ECC71);
    transition: all 0.3s ease;
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  .banner-section-solar .banner-content-wrap .banner-title h2 .switch {
    /* display: none; */
  }

  .banner-section-solar .banner-content-wrap .banner-title h2 .switch {
    display: inline-block;
    width: 64px;
    height: 36px;
  }

  .banner-section-solar .banner-content-wrap .banner-title h2 .switch .slider:before {
    left: 7px;
    top: 5px;
    width: 25px;
    height: 25px;
  }

  .banner-section-solar .banner-content-wrap .banner-title h2 .switch input:checked + .slider:before {
	-webkit-transform: translateX(25px);
	-ms-transform: translateX(25px);
	transform: translateX(25px);
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .banner-section-solar .banner-content-wrap .banner-title h2 .switch {
    /* display: none; */
  }

  .banner-section-solar .banner-content-wrap .banner-title h2 .switch {
    display: inline-block;
    width: 64px;
    height: 36px;
  }

  .banner-section-solar .banner-content-wrap .banner-title h2 .switch .slider:before {
    left: 7px;
    top: 5px;
    width: 25px;
    height: 25px;
  }
 
  .banner-section-solar .banner-content-wrap .banner-title h2 .switch input:checked + .slider:before {
	-webkit-transform: translateX(25px);
	-ms-transform: translateX(25px);
	transform: translateX(25px);
  }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  .banner-section-solar .banner-content-wrap .banner-title h2 .switch {
    /* display: none; */
  }

  .banner-section-solar .banner-content-wrap .banner-title h2 .switch {
    display: inline-block;
    width: 64px;
    height: 36px;
  }

  .banner-section-solar .banner-content-wrap .banner-title h2 .switch .slider:before {
    left: 7px;
    top: 5px;
    width: 25px;
    height: 25px;
  }

  .banner-section-solar .banner-content-wrap .banner-title h2 .switch input:checked + .slider:before {
	-webkit-transform: translateX(25px);
	-ms-transform: translateX(25px);
	transform: translateX(25px);
  }
}

@media only screen and (max-width: 440px) {
	.banner-section-solar {
        margin: -90px 0px 0px;
        border-radius: 0px;
    }

    .banner-section-solar .banner-content-wrap .banner-autor-info .banner-autor-desc {
        position: inherit;
        bottom: 0;
        left: 0;
    }

	
	.banner-section-solar .banner-content-wrap .banner-title h2 {
		font-size: 30px;
		line-height: 40px;
	}

	.banner-section-solar .banner-content-wrap .banner-autor-info .banner-autor-desc p {
        width: 100%;
    }
}

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


    .banner-section-solar .banner-content-wrap .banner-title h2 .switch {
        /* display: none; */
    }

	.banner-section-solar .banner-content-wrap .banner-title h2 .switch {
		display: inline-block;
		width: 64px;
		height: 36px;
	}

	.banner-section-solar .banner-content-wrap .banner-title h2 .switch .slider:before {
		left: 7px;
		top: 5px;
		width: 25px;
		height: 25px;
	}

	.banner-section-solar .banner-content-wrap .banner-title h2 .switch input:checked + .slider:before {
		-webkit-transform: translateX(25px);
		-ms-transform: translateX(25px);
		transform: translateX(25px);
	}
}

@media only screen and (max-width: 320px) {
    .banner-section-solar .banner-content-wrap .banner-title h2 .switch {
        /* display: none; */
    }

	.banner-section-solar .banner-content-wrap .banner-title h2 .switch {
		display: inline-block;
		width: 64px;
		height: 36px;
	}

	.banner-section-solar .banner-content-wrap .banner-title h2 .switch .slider:before {
		left: 7px;
		top: 5px;
		width: 25px;
		height: 25px;
	}

	.banner-section-solar .banner-content-wrap .banner-title h2 .switch input:checked + .slider:before {
		-webkit-transform: translateX(25px);
		-ms-transform: translateX(25px);
		transform: translateX(25px);
	}
}



.about-section-solar .about-counter-wrapper .about-counter {
    /* background-image: url(../images2/home/about-bg1.jpg), url(../images/solar/about-bg1.png) ; */
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    border-radius: 20px;
    background-image: linear-gradient(rgb(58 118 62 / 50%), rgb(30 157 28 / 50%)), url(../images2/home/about-bg1.webp);
	background-size: cover;
	background-position: center;
    padding: 32px 60px 10px 40px;
    position: relative;
    z-index: 1;
    overflow: hidden;
}


.feature-section-solar .single-feature-box .feature-thumb figure img {
    height: 376px;
}


/************************************/
/**** 	 01. Video Gallery css	 ****/
/************************************/

.page-video-gallery{
	/* padding: 120px 0 90px; */
	padding: 0px 0 90px;
}

.video-gallery-image{
	height: calc(100% - 30px);
	margin-bottom: 30px;
	overflow: hidden;
}

.video-gallery-image a{
	position: relative;
	display: block;
	cursor: none;
}

.video-gallery-image a::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #001A29;
	border-radius: 14px;
    opacity: 0%;
    visibility: hidden;
    width: 100%;
    height: 100%;
    z-index: 1;
    transform: scale(0);
    transition: all 0.4s ease-in-out;
}

.video-gallery-image:hover a::before{
    opacity: 50%;
    visibility: visible;
    transform: scale(1);
}

.video-gallery-image a::after{
    content: '\f04b';
	font-family: 'FontAwesome';
    position: absolute;
    top: 50%;
    left: 50%;
    right: 0;
    transform: translate(-50%, -50%);
	font-size: 20px;
	background: var(--theme-color2);;
	color: var(--theme-color-white);
    border-radius: 50%;
    height: 60px;
    width: 60px;
    cursor: none;
	display: flex;
	align-items: center;
	justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s ease-in-out;
    z-index: 1;
}

.video-gallery-image:hover a::after{
    opacity: 1;
    visibility: visible;
}

.video-gallery-image img{
	width: 100%;
	/* aspect-ratio: 1 / 0.9422; */
	object-fit: cover;
	border-radius: 14px;
}

.video-overlay-content {
	position: absolute;
	left: 20px;
	bottom: 20px;
	color: #fff;
	z-index: 2;
}

 .instagram-popup {
    position: relative;
    background: #FFF;
    padding: 32px;
    /* width: fit-content; */
    max-width: 385px;
    margin: 20px auto;
    border-radius: 22px;
}

 .instagram-popup iframe {
    min-width: 100% !important;
 }

.instagram-popup.is-loading {
    min-height: 220px;
}

.instagram-popup-loader {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: rgba(255, 255, 255, 0.95);
    border-radius: 22px;
    z-index: 5;
    color: #1f5a3d;
    font-weight: 600;
    text-align: center;
}

.instagram-popup-loader .spinner {
    width: 44px;
    height: 44px;
    border: 3px solid rgba(31, 90, 61, 0.2);
    border-top-color: var(--theme-color2, #1f5a3d);
    border-radius: 50%;
    animation: instagramSpinner 0.8s linear infinite;
}

@keyframes instagramSpinner {
    to {
        transform: rotate(360deg);
    }
}


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

     .instagram-popup {
        padding: 32px 3px 32px 3px;
    }

}



/************************************/
/**** 	 02. Our Approach css	 ****/
/************************************/

.our-approach.light-section {
    background-color: #F4F8FA;
}

.our-approach{
	background-image: url('../images/section-bg-1.png');
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: 100% auto;
	padding: 120px 0;
}

.our-approach-content{
	display: flex;
	flex-direction: column;
	height: calc(100% - 50px);
	margin-bottom: 50px;
}

.approach-item-list{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	margin-right: -190px;
	z-index: 1;
}

.approach-item{
	position: relative;
	width: calc(33.33% - 20px);
	min-height: 300px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 30px;
	background: #FFFFFF;
	border-radius: 14px;
	padding: 30px;
	overflow: hidden;
}

.approach-item::before{
	content: '';
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    background-color: #001A29;
    transition: all 0.4s ease-in-out;
}

.approach-item:hover:before{
	top: auto;
	height: 100%;
	border-radius: 0;
}

.approach-item .icon-box{
	position: relative;
	width: 50px;
	height: 50px;
	background: var(--theme-color2);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1;
}

.approach-item .icon-box img{
    width: 100%;
    max-width: 24px;
}

.approach-item-content{
	position: relative;
	z-index: 1;
}

.approach-item-content h3{
	font-size: 22px;
	transition: all 0.4s ease-in-out;
}

.approach-item-content p{
	border-top: 1px solid #001A291A;
	padding-top: 20px;
	margin: 20px 0 0;
	transition: all 0.4s ease-in-out;
}

.approach-item:hover .approach-item-content p,
.approach-item:hover .approach-item-content h3{
	color: var(--theme-color-white);
}

.approach-item:hover .approach-item-content p{
	border-color: #FFFFFF1A;
}

.approach-image{
	height: 100%;
	margin-left: 15px;
}

.approach-image figure{
	display: block;
	height: 100%;
	border-radius: 14px;
}

.approach-image figure img{
	width: 100%;
	height: 100%;
	aspect-ratio: 1 / 1.2926;
	object-fit: cover;
	border-radius: 14px;
}



/************************************/
/**** 	 03. Download css	 ****/
/************************************/

.download-title a.down-list {
    display: block;
    margin: 0px;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    /* color: #54595f; */
    color: var(--theme-color2);
    /* border: 1px solid #CCCCCC; */
    border: 1px solid var(--border-theme-color2);
    padding: 10px;
    height: 100%;
    border-radius: 5px;
    font-size: 15px;
    font-weight: 400;
    line-height: 20px;
}

.download-title a.down-list:hover {
    /* background: #E4DFDF; */
    background: rgb(0 26 41 / 20%);
}

.download-title a.down-list img {
    display: block;
    margin: auto;
    margin-bottom: 10px;
}




/************************************/
/***   31. Contact Us Page css    ***/
/************************************/

.page-contact-us{
	padding: 120px 0 60px;
}

.contact-us-content{
	height: 100%;
	background-color: var(--primary-color);
	border-radius: 14px;
	display: flex;
	flex-direction: column;
	gap: 40px;
	padding: 10px;
}

.contact-us-image{
	height: 100%;
}

.contact-us-image figure{
	display: block;
	height: 100%;
	border-radius: 14px;
}

.contact-us-image figure img{
	width: 100%;
	height: 100%;
	aspect-ratio: 1 / 0.76;
	object-fit: cover;
	border-radius: 14px;
}

.contact-us-body{
	padding: 0 30px 30px;
}

.contact-us-body-title{
	border-bottom: 1px solid var(--dark-divider-color);
	/* padding-bottom: 30px; */
	    padding-top: 14px;
	margin-bottom: 30px;
}

.contact-us-body-title h2{
	font-size: 22px;
	color: var(--white-color);
}
.contact-us-body-title p{
	/* font-size: 22px; */
	color: var(--white-color);
}

.contact-info-item{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 15px;
	/* margin-bottom: 30px; */
	margin-bottom: 4px;
}

.contact-info-item:last-child{
	margin-bottom: 0;
}

.contact-info-item .icon-box{
	position: relative;
	width: 43px;
	height: 43px;
	/* width: 50px;
	height: 50px; */
	background: var(--accent-color);
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}

.contact-info-item .icon-box::before{
	content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background: var(--white-color);
    border-radius: 50%;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transition: all 0.4s ease-in-out;
    z-index: 0;
}

.contact-info-item:hover .icon-box::before{
    transform: scale(1);
}

.contact-info-item .icon-box img{
    width: 100%;
    max-width: 24px;
	transition: all 0.4s ease-in-out;
}

.contact-info-item:hover .icon-box img{
	filter: brightness(0) invert(0);
}

.contact-info-item-content{
	width: calc(100% - 65px);
}

.contact-info-item-content p{
	color: var(--white-color);
	/* margin-bottom: 5px; */
	margin-bottom: 2px;
}

.contact-info-item-content h3{
	/* font-size: 22px; */
	font-size: 18px;
	color: var(--white-color);
}

.contact-info-item-content h3 a{
	color: inherit;
	transition: all 0.4s ease-in-out;
}

.contact-info-item-content h3 a:hover{
	color: var(--accent-color);
}

.contact-us-form{
	/* height: 100%; */
	align-content: center;
	background-color: var(--secondary-color);
	border-radius: 14px;
	padding: 3.125vw;
	margin-left: 15px;
}

.contact-form label{
	/* font-family: var(--accent-font); */
	font-size: 16px;
	font-weight: 500;
	color: var(--primary-color);
	margin-bottom: 15px;
}

.contact-form .form-control{
	font-size: 16px;
	font-weight: 400;
	line-height: 1.429em;
	color: var(--primary-color);
	background: var(--bg-color);
	border: none;
	border-radius: 10px;
	padding: 20px;
	box-shadow: none;
	outline: none;
}

.contact-form .form-control::placeholder{
	font-size: 14px;
	color: var(--text-color);
}



.contact-form .btn-default {
    position: relative;
    display: inline-block;
    /* font-family: var(--default-font); */
    font-size: 16px;
    font-weight: 600;
    line-height: 1em;
    text-transform: capitalize;
    color: var(--white-color);
    background: var(--accent-color);
    border-radius: 5px;
    padding: 17px 50px 17px 20px;
    border: none;
    overflow: hidden;
    transition: all 0.4s ease-in-out;
    z-index: 1;
}

.contact-form .btn-default::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 20px;
    width: 20px;
    height: 20px;
    background-image: url(../images/arrow-white.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    transform: translateY(-50%);
    transition: all 0.4s ease-in-out;
}

.contact-form .btn-default:hover::before{
	transform: translateY(-50%) rotate(45deg);
}

.contact-form .btn-default::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 0;
    height: 100%;
    background: var(--primary-color);
    transition: all 0.4s ease-in-out;
    z-index: -1;
}

.contact-form .btn-default:hover::after{
	right: auto;
	left: 0;
    width: 100%;
}

.contact-form .help-block.with-errors ul {
    margin: 0;
    text-align: left;
}

.contact-form .help-block.with-errors ul li {
    color: var(--error-color);
    font-weight: 500;
    font-size: 14px;
}


.google-map{
    padding: 60px 0 120px;
}

.google-map .section-title p {
    margin-top: 20px;
    margin-bottom: 0;
    max-width: 700px;
}

.google-map-iframe{
	width: 100%;
	height: 600px;
	border-radius: 14px;
	overflow: hidden;
}

.google-map-iframe iframe{
	width: 100%;
	height: 100%;
}




/************************************/
/***   . Product Page css    ***/
/************************************/

.product-category-section {
    margin: 37px 0px;
}

.product-category-section .tab {
	position: relative;
	-webkit-font-smoothing: antialiased;
}
.product-category-section .tab .tabs {
	display: inline-block;
	text-align: center;
	width: 100%;
}
.product-category-section .tab .tabs li {
  	display: inline-block;
}
.product-category-section .tab .tabs li a {
  outline: none;
  padding: 8px 30px;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  margin: 0 7px;
  color: var(--theme-color-white);
  background: rgba(24, 47, 36, 0.15);
  font-family: var(--title-font);
  border: 1.5px solid rgba(255, 255, 255, 0.15);
  border-radius: 45px;
  font-weight: 500;
  font-size: 18px;
  line-height: 28px;

  	color: #605959;
	background: rgb(252 255 254 / 15%);
	font-family: var(--title-font);
	border: 1.5px solid rgb(47 191 12 / 97%);
}
.product-category-section .tab .tabs li.current a {
  color: var(--theme-color-white);
  border-radius: 45px;
  background: var(--theme-color2) !important;
}
.product-category-section .tab .tab_content .tabs_item {
  display: none;
  padding: 8px 0 0;
}
.product-category-section .tab .tab_content .tabs_item .mision-vission-desc p {
  color: var(--theme-color3);
  font-weight: 400;
  font-size: 16px;
  line-height: 26px;
  width: 90%;
  margin: 20px 0 26px;
}
.product-category-section .tab .tab_content .tabs_item:first-child {
  display: block;
}

.product-showcase-section .single-feature-box {
    border: 1px solid var(--theme-color2);
    border-radius: 19px;
    padding: 12px !important;
    line-height: normal;
}

.product-showcase-section .single-feature-box h6 {
    margin-bottom: 8px;
}

.product-showcase-section .product-features .theme-btn-two {
    padding-right: 29px;
}

.product-showcase-section .product-features .theme-btn-two span {
    display: inline-block;
    width: 22px;
    height: 22px;
    line-height: 20px;
    background: var(--theme-color2);
    border-radius: 50%;
    margin-right: 5px;
    text-align: center;
}

.product-showcase-section .product-features .theme-btn-two svg
{
    font-size: 13px;
}


.product-showcase-section .solar-company-image
{
    max-width: 69px;
}

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

    .product-showcase-section .solar-company-image
    {
        max-width: 100%;
        /* padding: 48px; */
    }

}

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

    .product-showcase-section .solar-company-image
    {
        max-width: 100%;
        padding: 48px;
    }

}





/************************************/
/**** 	 02. Brand css	 ****/
/************************************/

.brand-area-one .band-active .brand-box {
    height: auto;
	border-radius: 0px;
}



/************************************/
/**** 	 02. Work PRocess css	 ****/
/************************************/

.work-process-section-one .working-process-box::before {
	content: unset;
}
.work-process-section-one .working-process-box::after {
	content: unset;
}



/************************************/
/**** 	 02. EPC css	 ****/
/************************************/

.epc-section .auto-container {
	max-width: unset;
}

.epc-section .left-space {
	padding-left: 0px;
}

.epc-section .about-thumb .reveal {
	border-radius: 10px;
}

.epc-section .list-unstyled li span {
    display: inline-block;
    width: 22px;
    height: 22px;
    line-height: 20px;
    background: var(--theme-color2);
    border-radius: 50%;
    margin-right: 5px;
    text-align: center;
}

.epc-section .list-unstyled li span svg
{
    font-size: 13px;
}


/************************************/
/**** 	 02. Order Now Button css	 ****/
/************************************/

.order-now-btn a {
	display: inline-block;
	font-family: var(--title-font);
	color: var(--theme-color-white);
	background-color: var(--theme-color2);
	padding: 16px 36px;
	font-weight: 400;
	font-size: 18px;
	border-radius: 45px;
	position: relative;
	z-index: 1;
	transition: all 300ms ease;
	overflow: hidden;
}
.order-now-btn a::before {
	position: absolute;
	content: "";
	height: 16px;
	width: 1px;
	background-color: var(--theme-color-white);
	/* left: 166px; */
	left: 138px;
	top: 24px;
}

.order-now-btn a::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: -15%;
	right: 0;
	width: 0;
	height: 106%;
	background: var(--heading-color);
	transform: skew(45deg);
	transition: all 0.4s ease-in-out;
	z-index: -1;
}

.order-now-btn a:hover::after {
	width: 100%;
	transform: skew(0deg);
	left: 0;
}

.order-now-btn a i {
	display: inline-block;
	margin-left: 22px;
	font-size: 16px;
	font-weight: 400;
	position: relative;
	top: 2px;
}









/************************************/
/**** 	 02. Why Choose Us css	 ****/
/************************************/

@media (min-width: 1200px) and (max-width: 1399.98px) {
  	.why-choose-section-solar .choose-box .choose-title h4 {
		font-size: 19px;
	}
}

@media only screen and (max-width: 1024px) {
    .our-approach .our-approach-content {
        height: auto;
        margin-bottom: 30px;
    }
}



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

    .our-approach {
        padding: 60px 0;
    }

	.our-approach .section-title {
        margin-bottom: 30px;
    }

	.our-approach .section-title p {
        margin-top: 10px;
    }

	.our-approach .approach-item-list {
        gap: 20px;
    }

	.our-approach .approach-item-list {
        margin-right: 0;
    }

	.our-approach .approach-item {
        width: calc(33.33% - 13.33px);
        min-height: auto;
        gap: 20px;
        padding: 20px;
    }

	.our-approach .approach-item-content p {
        padding-top: 15px;
        margin: 15px 0 0;
    }


}



@media only screen and (max-width: 767px) {
    .our-approach .section-title h2 {
        font-size: 26px;
    }

	.our-approach .approach-item {
        width: 100%;
    }

	.our-approach .approach-item-content h3 {
        font-size: 18px;
    }
}


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

	.why-choose-section-solar .choose-box .choose-title h4 {

		font-size: 19px;

	}
    .why-choose-section-solar .choose-box {
		height: auto;
		width: 100%;
	}

}




/************************************/
/**** 	 02. Team css	 ****/
/************************************/


.team-section-one .single-team-box .team-thumb .team-icon a {
	pointer-events: none;
}
.team-section-one .single-team-box .team-thumb .team-icon a i {
    transform: none;
}
