
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');


	body{

		font-family: Open sans, sans-serif;
		font-optical-sizing: auto;

		font-style: normal;
		font-variation-settings: "wdth" 100;

		background-color: #FFF;
		color: #393839;
		max-width: 2160px;
		width:100%;
		height: 100%;
		margin: 0 auto;
		box-sizing: border-box;
	}


	main{
		transition: all .3s;
	}



	* {
	  box-sizing: border-box;
	}

	.col{
	    display: inline-block;
	}

	a{
		text-decoration: none;
	}

	html{
		scroll-behavior: smooth;
		overflow-y: scroll;
	}


/* --- TRANSITION PAGES --- */


	main#main {

	    transition: opacity 0.5s ease-in-out; /* Transición para la opacidad */
	}


	.transitioning {
	    opacity: 0; /* Ocultar la página mientras se cambia */
	    transition: opacity 0.5s ease-in-out;
	    pointer-events: none; /* Desactivar eventos mientras se cambia */

	}





/* --- NAVBAR --- */
	
	.menu{
		margin: auto;
    padding: 7px 10%;
    color: #fff;
    font-size: 14pt;
    /* max-width: 1110px; */
    /*position: fixed;*/
    top: 0;
    background-color: #02409b;
	}

	.menu a{
		text-decoration: none;
		color: inherit;
	}

	.menu a:hover{
		text-decoration: underline;
	}

	.logo span:hover{
		text-decoration: none !important;
	}

	.nav-link{
		color: #fff !important;
	}


	.logo{
		color: #662D91 !important;
		text-align: center;
		font-weight: ;
		line-height: 13px;
	}

	.box-head button{
		background-color: rgb(251 251 251);
    border-color: rgb(251 251 251);
	}

	.logo span{
		font-size: 10pt;
		text-align: center;
	}



/* -- BUTTONS -- */

	.def-btn{
		box-sizing: border-box;
		display: block;
	    margin:0;
	    /*position: relative;*/
	    max-width: 314px;
	    height: 57px;
	    width: 100%;
	    border: none;
	    font-family: inherit;
	    line-height: 100%;
	    text-align: center;
	    transition: all 500ms ease;
	    cursor: pointer;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	}


	.btn-opt{
		display: block;
		margin: auto;
		margin-top: 6%;
		width: 100%;
		max-width: 150px;
		border: none;
		font-family: inherit;
		font-size: .9rem;
		text-align: center;
		transition: all 500ms ease;
		cursor: pointer;
		padding: 10px 15px;
		color: #fff;
		font-weight: 700;
		background-color: #f37e00;
	}



	.cta-btn{
		display: block;
		/*position: relative;*/
		margin: auto !important;
		width: 100%;
		max-width: 240px;
		border: none;
		font-family: inherit;
		font-size: 1rem;
		text-align: center;
		transition: all 500ms ease;
		cursor: pointer;
		padding: 20px;
		color: #fff;
		font-weight: 700;
		border-radius: 5px;
		background-color: #02409b;
	}



	.sel-btn{
		height: 50px;
		border-radius: 0 15px 15px 0;
		background-color: #ff7d00;
	}

	.sel-btn:hover{
		background-color: #02409b;
	}



/* -- MAIN FORM -- */
	
	  .s1-bg-mainform{
	  	background: url(../images/bg-main-form.webp) no-repeat;
	    background-size: auto;
	    background-position: top;
	    min-height: 300px;
	  }

	.s2-mainform-container{
		max-width: 1200px;
		width: 100%;
		margin: auto;
		padding: 30px 0;
	}

	.size-box-form{
		background-color: #f2f2f2;

		padding: 35px 40px;
		max-width: 700px;
		width: 100%;
		margin: auto;
	}

	.size-box-form h3{
		font-weight: bold;
		color: #444444;
		margin-bottom: 20px;
		font-size: 2.1rem;
		text-decoration: ;
	}


	.box-check{
		padding-bottom: 8px;
	}

	.box-check label{
		font-size: 10pt;
		color: #7c7c7c;
	}

	.s2-sidebox-contain{
		background-color: #eff5f6;

	}

	.s2-sidebox-img{
		margin: auto;
	}

	.s2-sidebox-img img{
		max-width: 400px;
		width: 100%;
		margin: auto;
	}

	.s2-sidebox-txt{
		padding: 20px 30px 30px;
	}

	.s2-sidebox-txt h3{
		color: #02409b;
		font-weight: 700;
	}

	.s2-sidebox-txt li{
		line-height: 25pt;
	}

	.s2-sidebox-btn{
		max-width: 300px;
		width: 100%;
		margin: auto;
		background-color: #f37e00;
		margin-top: 20px;
		text-align: center;
		border-radius: 5px;
	}

	.s2-sidebox-btn a{
		display: block;
		color: #fff;
		padding: 12px 20px;
	}


	.fieldpp{
		padding: 0 40px 15px;
		font-size: 0.8rem;
	}




/*   ------- HOME -----   */


	/* -- BANNER HEAD -- */

		#background-video {
		  height: 600px;
		  width: 100%;
		  object-fit: cover;
		  position: absolute;
		  left: 0;
		  right: 0;
		  top: 88px;
		  bottom: 0;
		  z-index: -1;


		}

		#shadow-color{
			height: 587px;
		}


		.intro-section{
			margin: auto;
			display: flex;
			justify-content: center;
			align-items: center;
			padding: 0;
			background-color: rgb(0 0 0 / 45%);
		}

		.intro-box{
			display: flex;
		}


		.title{
			max-width: 650px;
			margin: auto;
			width: 100%;
			color: #FFF;
		}

		.title p[class="tlt-mobile"]{
			display: none;
		}

		.title h2{
			font-size: calc(1.3rem + 1vw);
	    	font-weight: bold;
		}

		.info-box{
			display: flex;
		}


		.info-box select{
			min-height: 50px;
			border-radius: 15px 0px 0px 15px;
			padding-left: 1rem;
		}


		.info-box a{
			text-decoration: none;
		}
		


	/* -- SECTION 2 -- */
		
		.section-2{
			padding: 30px 0;
			max-width: 1250px;
			width: 100%;
			margin: auto;
		}


		.opt-box-cont{
			line-height: 16px;
			font-weight: lighter;
			justify-content: center;
		}


		.opt-box-cont p{
			font-weight: bold;
			margin-top: 7%;
			margin-bottom: 5px;
		}


		.box-opt{
			font-size: 14pt;
			font-weight: 500;
			line-height: 18pt;
			display:inline-block;
			position:relative;
			margin-bottom: 50px;
			padding: 3px 2.7rem;
		}


		.box-opt span{
			margin: auto;
			max-width: 180px;
			display: block;
			padding-top: 20px;
		}


		.img-opt{
			max-width: 100px;
			width: 100%;
			margin: auto;
		}



	/* -- SECTION 3 -- */


		.section-3{
			background-color: #eff5f6;
			padding: 20px 0 40px;
		}

		.tlt-s3 h2{
			font-size: calc(1.4rem + .9vw);
			font-weight: bold;
			color: #02409b;
			text-align: center;
			padding: 20px 0;
		}

		.s3-container{
			max-width: 1200px;
			width: 100%;
			margin: auto;
		}
		.s3-box{
			max-width: 300px;
			width: 100%;
			margin: auto;
		}

		.s3-box-txt{
			background-color: #fff;
			padding: 5px 15px 15px;
			min-height: 17.9rem;
			display: flex;
			border-radius: 0 0 5px 5px;
		    justify-content: space-between;
		    flex-direction: column;
		}

		.s3-box-txt h3{
			font-size: calc(.8rem + .4vw);
			padding-top: 10px;
			font-weight: 700;
		}

		.s3-box-txt p{
			font-size: 11pt
		}

		.s3-box-txt a{
			text-decoration: none;
			color: #f37e00;
			font-weight: bold;
		}

		.s3-box-txt a:hover{
			color: #02409b;
		}

		.s3-img-opt{
			max-width: 300px;
			width: 100%;
			margin: auto;
		}

		.s3-cta-btn{
			padding: 30px 0;
		}



	/* -- SECTION 4 -- */


		.section-4{
			background-color: #ffff;
			padding: 30px 0 60px;
	    	border-bottom: solid 1px #e8e8e8;
		}

		.s4-box{
			max-width: 1200px;
			width: 100%;
			margin: auto;
		}

		.s4-box img{
			max-width: 500px;
			width: 100%;
		}

		.s4-txt{
			align-content: center;
		}

		.s4-txt h3{
			font-size: calc(1.6rem + .6vw);
			font-weight: 600;
		}

		.s4-txt p{
			font-size: 15pt;
		    font-weight: 200;
		    line-height: 23pt;
		}

		.s4-cta-btn div{
			background-color: #f37e00;
		}




/*   ------- SERVICE -----   */


	/* -- SERVICE 1 -- */

		.service-s1{
		  background-color: #eff5f6;
		  padding: 3rem 5%;
		  align-items: center;
		}

		.serv-s1-txt{
			max-width: 1150px;
	    width: 100%;
	    margin: auto;
	    padding-bottom: 1.5rem;
		}

		 
		.serv-s1-txt h4 {
		  color: #f37e00;
		  font-weight: 800;
		  font-size: 3rem;
		  text-align: center;
		}


		.serv-s1-txt p{
			text-align: center;
	    font-size: 17pt;
	    line-height: 22pt;
	    font-weight: 100;
		}


		.serv-s1-logos div{
		  display: flex;
		  flex-direction: column;
		  justify-content: center;

		  align-items: center;
		  color: #1f4686;
		  margin: 1rem;
		  background-color: #fff;
		  padding: 10px 20px 25px;
		  font-size: 20px;
		  font-weight: 600;
		  border-radius: 2px;

		 
		  text-align: center;
		}

		.serv-s1-logos div:hover{
			box-shadow: rgba(88, 47, 13, 0.4) 0px 2px 4px, rgba(88, 47, 13, 0.3) 0px 7px 13px -3px, rgba(88, 47, 13, 0.2) 0px -3px 0px inset;
			 transition: .7s;
		}

		.serv-s1-logos img{
		  max-width: 130px;
		  width: 100%;
		}


		.serv-cta-btn{
		  display: block;
		  border-radius: 5px;
		  background-color: #ff7400 !important;
		  color: white;
		  text-align: center;
		  padding: 0.5rem 2.3rem;
		  margin: 1rem auto;
		  font-size: 14px;
		  cursor: pointer;
		  transition: 1s all;

		}

		{
			box-shadow: rgba(88, 47, 13, 0.4) 0px 2px 4px, rgba(88, 47, 13, 0.3) 0px 7px 13px -3px, rgba(88, 47, 13, 0.2) 0px -3px 0px inset;
			transition: .3s;
		}





/*   ------- PROJECTS -----   */


	/* -- SHOW SLIDE -- */

		div[class="pro-s2-contain"] {
		    min-height: 100vh;
		    display: flex;
		    justify-content: center;
		    align-items: center;
		    font-size: 2rem;
		    opacity: 0;
		    transform: translateX(-100%);
		    transition: opacity 1.2s ease-out, transform 1.2s ease-out;
		}

		div.hidden {
		    opacity: 0;
		    transform: translateX(-100%);
		    transition: opacity .9s ease-out, transform .9s ease-out;
		}

		div.show {
		    opacity: 1;
		    transform: translateX(0);
		    transition: opacity 1.2s ease-out, transform 1.2s ease-out;
		}



	/* -- PROJECT 1 -- */
		.project-s1{
			background-color: #;
			padding: 5% 4% 3%;
		}

		.pro-s1-contain{
			max-width: 1150px;
			width: 100%;
			margin: auto;
			text-align: center;
			font-size: 17pt;
			line-height: 22pt;
			font-weight: 100;
		}

		.pro-intro-mobile, .pro-tlt-mobile{
			display: none;
		}

		.pro-s1-contain h2{
		    font-size: calc(2.0rem + .4vw);
		    font-weight: bold;
		    color: #f37e00;
		    line-height: calc(2.2rem + .5vw);
		}



	/* -- PROJECT 2 -- */

		.project-s2{
			background-color: #eff5f6;
		}

		.pro-s2-contain{
			max-width: 900px;
			width: 100%;
			margin: auto;
			padding-top: 50px;

		}

		

		.pro-s2-txt p{
			font-size: 12pt;
			line-height: 20pt;
			font-weight: 100;
		}

		.pro-s2-txt h3{
			font-size: 2rem;
			font-weight: 600;
			color: #02409b;
		}

		.pro-s2-txt a{
			text-decoration: underline;
			color: #393839;
			font-weight: bold;

		}

		.pro-s2-img img{
			max-width: 400px;
			width: 100%;
		}






/*   ------- PROJ SUBLANDING -----   */

	
	/* -- SOLAR 1 -- */
		.panels-s1{
			background-color: #;
			padding: 5% 4% 3%;
		}

		.pa-s1-contain{
			max-width: 1150px;
			width: 100%;
			margin: auto;
			text-align: center;
			font-size: 17pt;
			line-height: 22pt;
			font-weight: 100;
		}

		.pa-s1-contain h2{
			font-size: calc( 2.5rem + .9vw);
		    font-weight: bold;
		    color: #f37e00;
		    line-height: 2.8rem;
		}


	/* -- SOLAR 2 -- */

		.panels-s2{
			background-color: #fff;
		}

		.pa-s2-contain{
			max-width: 1250px;
			width: 100%;
			margin: auto;
			text-align: left;
			font-size: 11.5pt;
			font-weight: 800;
			line-height: 22pt;
			padding: 40px 0;
		}

		.pa-s2-img{
			text-align: center;
		}

		.pa-s2-img img{
			max-width: 420px;
			width: 100%;
		}

		.pa-s2-txt p{
			font-size: 12pt;
			line-height: 20pt;
			font-weight: 100;
		}

		.pa-s2-txt ol{
			font-size: 11.5pt;
			line-height: 20pt;
			font-weight: 100;
		}

		.pa-s2-txt h3{
			font-size: 2rem;
			font-weight: 600;
			color: #393839;
		}


		.panels-s3{
			background-color: #02409c;
			padding: 50px 0;
		}


		.pa-s3-contain{
			max-width: 1000px;
			width: 100%;
			margin: auto;
			display: flex;
    		align-items: center;
		}

		.pa-s3-txt h3{
			font-size: 2.1rem;
			font-weight: 600;
			color: #fff;
		}

		.new-cta-btn{
		  display: block;
		  border-radius: 5px;
		  background-color: #ff7400 !important;
		  color: white;
		  text-align: center;
		  padding: 1rem 2.3rem;
		  margin: auto;
		  max-width: 210px;
		  width: 100%;
		  font-size: 17px;
		  cursor: pointer;
		  transition: 1s all;

		}

		.panels-s4{
			background-color: #eff5f6;
		}




/*   ------- PROJ STORIES -----   */

	/* -- STORY 1 -- */

		.sto-s1{
			background-color: #fff;
		}

		.sto-s1-contain{
			max-width: 1400px;
			width: 100%;
			margin: auto;
			padding: 30px 0 60px;
		}

		.sto-mobile-txt{
			display: none;
		}

		.sto-s1 h1{
			font-size: 40pt;
			font-weight: 600;
			color: #323232;
			text-align: left;
			padding: 20px 55px;
			margin-bottom: 0;
		}

		.sto-s1 p{
			padding: 20px 55px;
			color: #323232;
			font-size: 12pt;
			font-weight: 100;
		}


	/* -- STORY 2 -- */

		.sto-s2{
			background-color: #f7f7f7;
			padding: 45px 0 50px;
		}

		.sto-s2-contain{
			max-width: 1400px;
			width: 100%;
			margin: auto;
			padding-top: 20px;
		}

		.sto-s2-contain img{
			max-width: 650px;
			width: 100%;
		}

		.sto-s2-txt{
			font-size: 12pt;
			font-weight: 100;
		}

		.sto-s2-txt h3{
			font-weight: 700;
		}


	/* -- STORY 3 -- */








/*   ------- PARTNERS -----   */


	/* -- PARTNER 1 -- */
		.partner-s1{
			background-color: #FFF;
			background: url(../images/bg-partner.webp) no-repeat;
		    background-size: auto;
		    background-position: top;
		    min-height: 450px;
		}


	/* -- PARTNER 2 -- */


		.partner-s2{
			background-color: #eff5f6;
			padding: 25px 0 50px;
		}

		.partner-s2 h2{
			font-size: 32pt;
			font-weight: bold;
			color: #f37e00;
			text-align: center;
			padding: 20px 0;
		}

		.ptr-s2-contain{
			max-width: 1100px;
			width: 100%;
			margin: auto;
		}

		.ptr-s2-contain p{
			font-size: 12pt;
			line-height: 20pt;
			font-weight: 100;
		}

		.ptr-s2-img{
			text-align: center;
		}

		.ptr-s2-img img{
			max-width: 400px;
			width: 100%;
		}

		.ptr-s2-txt a{
			text-decoration: underline;
			color: #393839;
			font-weight: bold;

		}


	/* -- PARTNER 3 -- */

		.partner-s3{
			background-color: #fff;
			padding: 60px 30px 80px;
			text-align: center;
		}

		.partner-s3 h2{
			font-weight: bold;
			color: #f37e00;
			margin-bottom: 20px;
		}

		.ptr-s3-logos img{
			max-width: 180px;
			width: 100%;
			margin: auto;
			margin: 30px 0;
		}


	/* -- PARTNER FORM -- */

		.partner-form{
			background-color: #eff5f6;
			padding: 40px 0 50px;
		}


		.box-form{
			background-color: ;
			/*border: solid 1.5px #cacaca;*/
			border-radius: 5px;
			padding: 35px 20px;
			max-width: 880px;
			width: 100%;
			margin: auto;
		}

		.box-partner-form input, .box-partner-form textarea{
			background-color: transparent;
		}

		.quest-title h3{
			font-weight: bold;
			color: #323232;
			margin-bottom: 20px;
			font-size: 3.4rem;
			text-decoration: ;
			padding: 4% 1% 0;
			text-align: left;
		}


		.box-check label{
			font-size: 10pt;
			color: #7c7c7c;
		}

		.ptr-btn{
		    max-width: 100%;
		    color: #fff;
		    font-weight: 700;
		    border-radius: 5px;
		    background-color: #f37e00;
		}


		.fieldpp{
			padding: 0 40px 15px;
			font-size: 0.8rem;
		}




/*   ------- US -----   */


	/* -- US 0 -- */

		.us-s0{
			background-color: #02409b;
		}

		.us-s0-contain{
			max-width: 1400px;
			width: 100%;
			margin: auto;
			padding: 30px 0 70px;
		}

		.us-s0 h1{
			font-size: 40pt;
			font-weight: 600;
			color: #fff;
			text-align: left;
			padding: 20px 55px;
			margin-bottom: 0;
		}


	/* -- US 1 -- */


		.us-s1{
			background-color: #fff;
			padding: 25px 0 50px;
		}

		.us-s1 h2{
			font-size: 28pt;
			font-weight: 700;
			color: #f37e00;
			text-align: center;
			padding: 20px 0;
		}

		.us-s1-contain{
			max-width: 1100px;
			width: 100%;
			margin: auto;
		}

		.us-s1-contain p{
			font-size: 12pt;
			line-height: 20pt;
			font-weight: 100;
		}

		.us-s1-img{
			text-align: center;
		}

		.us-s1-img img{
			max-width: 400px;
			width: 100%;
		}

		.us-s1-txt{
			padding-top: 20px;
		}


		/* -- US 2 -- */

		.us-s2{
			background-color: #f5f5f5;
			padding: 40px 45px 8%;
			text-align: ;
		}

		.us-s2-contain{
			max-width: 1440px;
	    width: 100%;
	    padding: 0 40px;
	    margin: auto;
		}

		.us-s2-contain h2{
			font-weight: bold;
			color: #343434;
			margin-bottom: 20px;
		}

		.us-s2-logos img{
			max-width: 150px;
			width: 100%;
			margin: auto;
		}



/*   ------- REVIEW -----   */


	/* -- REVIEW SECTION 1 -- */

	.review-s1{
		background-color: #eff5f6;
    	padding: 3rem 5%;
	}


	.rev-s1-tlt h1{
		font-size: 40pt;
	    font-weight: 600;
	    color: #323232;
	    text-align: left;
	    padding: 20px 55px;
	    margin-bottom: 30px;
	    text-align: center;
	}

	.rev-s1-box div{
		display: flex;
	    flex-direction: column;
	    justify-content: center;
	    min-height: 630px;
	    color: #343434;
	    margin: 0 1rem 1rem;
	    background-color: #fff;
	    font-weight: 100;
	    border-radius: 2px;
	    padding-bottom: 30px;
	}

	p[class="padding-rev"]{
		padding-top: 30px;
	}

	.padding-rev{
		padding:0 15px;
	}

	.rev-s1-box p{
		font-size: 1.5rem;
		font-weight: 700;
	}

	.rev-s1-box img{
		max-width: 500px;
		width: 100%;
	}

	.star-checked {
	  color: orange;
	  padding-bottom: 20px;
	}




/*   ------- CONTACT -----   */


	/* -- CONTACT SECTION 1 -- */

		.s1-bg-contact{
		  background-color: #eff5f6;
		  padding: 3rem 5%;
		  align-items: center;
		}

		.cnt-s1-txt{
			max-width: 1100px;
		    width: 100%;
		    margin: auto;
		    padding-bottom: 1.5rem;
		}

		 

		.cnt-s1-txt h2 {
			font-size: calc(5rem + .5vw);
			font-weight: 600;
			color: #363636;
			text-align: left;
			padding: 20px 0 ;
			margin-bottom: 0;
		}

		.cnt-s1-txt h4 {
		  color: #f37e00;
		  font-weight: 800;
		  font-size: 2rem;
		  text-align: center;
		}


		.cnt-s1-txt p{
			text-align: left;
		    font-size: 16pt;
		    line-height: 22pt;
		    font-weight: 100;
		}

		.{

		}

		.s2-contact-container{
			background-color: #eff5f6;
			padding: 1% 0 4%;
		}

		.size-contact-form{
			background-color: transparent;
		    padding: 45px 3%;
		    max-width: 1200px;
		    width: 100%;
		    margin: auto;
		}

		.size-contact-form input, .size-contact-form textarea{
			background-color: transparent;
		}

		.size-contact-form label{
			color: #;
			padding-bottom: 10px;
		}



		.form-end div[class="form-group row"]{
			margin-left:0;
			margin-right:0;
		}

		.form-end h4{
		   color: #7c7c7c;
		   font-weight: 400;
		   font-size: .9rem;
		   text-align: left;
		   padding-bottom: 10px;
		}



		[type="radio"] {
		  position: absolute !important;
		  opacity: 0 !important;
		  width: 0 !important;
		  height: 0 !important;
		}

		[type=radio] + img {
		  cursor: pointer;
		}


		.options label{
		  max-width: 300px;
		  margin: auto;
		  margin-bottom: 15px;
		}

		.item-active div{
		  background-color: #229b46;
		  color: #fff;
		}

		.options select{
		  max-width: 500px;
		  margin: auto;
		  margin-bottom: 2rem;
		}

		#contactform p{
			margin-bottom: 0;
		}

		.answer-holder-2opt{
		    border-radius: 5px;
		    color: #7c7c7c;
		    align-items: center;
		    text-align: center;
		    background-color: transparent;
		    border: 1px solid #ced4da;

		    cursor: pointer;
		    transition: all 0.2s ease-in-out;
		    margin: auto;
		    padding: 5px 15px;
		    min-height: 60px;
		    font-size: 11pt;
		}



		.answer-holder-2opt:hover, .answer-holder-4opt:hover ,.answer-holder-8opt:hover{
		    background-color: #02409c;
		    border: 2px solid #02409c; 
		    color: #fff;
		}


		.line-box{

		  min-height: 45px;
		  font-size: 1rem;
		  border-radius: 5px;
		  /*max-width: 520px;*/
		}






/* -- FOOTER -- */

	.foot{
		background-color: #FFF;


	}

	.foot-terms{
		background-color: #ECF1FE;
		color: #662D91;
		margin-top: 30px;
	}

	.only{
		max-width: 1600px;
		width: 100%;
		margin: auto;
    	padding: 20px;
    	padding-top: 3%;
    	display: flex;
    	font-weight: lighter;
    	text-align: left;
	}

	.foot span{
		font-weight: 800;
	}

	.footlogo{
		flex-wrap: nowrap !important;
	}

	.footlogo span{
		font-weight: lighter;
	}

	.footlogo, .over, .social{
		display: flex;
    	flex-direction: column;
		text-align:left;
		color: #323232 !important;
		align-content: center;
    	flex-wrap: wrap;
    	font-size: calc(.6rem + .2vw);
	}
	
	.social img{
		max-width: 30px;
		width: 100%;
	}

	.foot-legal{
		padding: 50px 0 10px;
		display: flex;
   		align-items: center;
   		font-size: calc(.6rem + .2vw);
	}

	.foot-legal span{
		font-weight: lighter;
	}

	.footlogo a, .over a{
		color: #323232;
	}

	.legal a{
		color: #323232;
		padding: 0 30px;
		text-decoration: underline;
	}

	.legal a:hover, .footlogo a:hover, .over a:hover{
		color: #249b46;
		transition: 1s;
	}


	.foot-mobile{
		display: none;
	}




/* -- loader -- */



	.loading{
		opacity: 0;

	}

	.window-close{
	  border: 0;
	  border-radius: 5px;
	  color: #f1faee;
	  background-color: #ff97a7;
	  font-weight: 800;
	  font-style: normal;
	  padding: 0.01rem 0.3rem;
	}




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



	/* -- SECTION 3 -- */

		.s3-box{
			padding-bottom: 30px;
		}

		.s3-box-txt{
			min-height:;
		}


}



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

	/* -- SECTION 1 -- */



	/* -- SECTION 2 -- */
		.section-2{
			padding: 20px;
		}

}



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

	/* -- HOME -- */

		.intro-section{
			padding: 10px 30px;
			margin: auto;
		}

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


		/* -- SECTION 1 -- */

			#shadow-color {
			    height: 572px;
			}



}

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

	/* -- BANNER HEAD (HOME) -- */

		.info-box{
			width: 100%;
		}

		.cta-btn {
			margin: auto;
		}



	/* -- PARTNERS -- */

		.partner-s1{
			background-color: #FFF;
			background: url(../images/bg-partner-mobile.webp) no-repeat;
		    background-size: auto;
		    background-position-x: center;
	        background-position-y: center;
		    min-height: 200px;
		}

		.partner-s2{
			padding: 25px 25px 20px;
		}


}


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

	.menu{
		max-width: 800px;
    	width: 100%;
		padding: 10px 0 10px;
	}


	/* -- HOME -- */

		.tlt-desktop{
			display: none;
		}

		.title p[class="tlt-mobile"]{
			display: block;
			font-size: calc(.8rem + .4vw);
		}


	/* -- MAIN FORM -- */


		.form-end{
			padding: 0px;
		}


		/* -- SECTION 3 -- */

		.section-3	{
			padding: 10px 30px;
		}


		/* -- SECTION 4 -- */

		.section-4{
			padding: 30px;
		}

		.s4-txt{
			padding-top: 20px;
		}

		.s4-cta-btn div {
			max-width: 100%;
		}



	/* -- PROJECT -- */

		.pro-s1-contain{
			font-size: 14pt;
			line-height: 18pt;
		}

		.pro-intro-desktop, .pro-tlt-desktop{
			display: none;
		}

		.pro-intro-mobile, .pro-tlt-mobile{
			display: block;
		}


		.pro-s2-contain{
			padding: 20px;
		}

		.pro-s2-img{
			padding: 10px 15px 20px;
		}

		.pro-s2-contain:last-child{
			padding-bottom: 70px !important;
		}


	/* -- STORY PROJ -- */


		.sto-s2-contain{
			padding: 20px 15px;
		}




	/* -- SOLAR -- */

		.panels-s2, .panels-s4{
			padding: 10px 20px;
		}


		.panels-s4{
			padding-top: 40px;
		}


		.pa-s2-contain{
			padding-top: 0;
		}


		.panels-s3{
			text-align: center;
		}


		.pa-s2-txt{
			padding-top: 20px;
		}


		.pa-s3-txt h3 {
		    font-size: 1.9rem;
		}



	/* -- REVIEW -- */
	
	.rev-s1-tlt h1{
		font-size: 4rem;

	}	
	



	/* -- FOOTER -- */

		.footlogo{
			align-items: ;
			padding-bottom: 10px;
		}

		.legal, .over, .social{
			padding-top: 20px;
			flex-wrap: nowrap;

		}



}



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


	/* -- HOME  -- */

		.title{	
			padding: 20px 30px 40px;
		}



		/* -- SECTION 1 -- */

			#shadow-color {
			    height: 561px;
			}



		/* -- SECTION 2 -- */

			.box-opt{
				padding:5px 20px;
				margin: 0;
				margin-bottom: 40px;
				font-size: 12pt;
			}

			.cnt-s1-txt h2 {
				font-size: calc(2.8rem + .4vw);
			}


	/* -- PARTNER -- */

		.ptr-s2-img {
    		padding-top: 10%;
    	}
	

		/* -- PARTNER FORM -- */

			.quest-title h3{
				font-size: 2.4rem;
			}





	/* -- STORY PROJ -- */

		.sto-s1-contain{
			padding: 30px 0 15px;
		}

		.sto-s1 h1{
			font-size: 26pt;
			padding: 20px 35px;
		}

		.sto-mobile-txt{
			display: block;
			padding: 20px 35px!important;
		}
		.sto-desktop-txt{
			display: none;
		}



	/* -- CONTACT  -- */

		/* -- SECTION 1 --*/

		.cnt-s1-txt h2 {
			font-size: calc(2.8rem + .4vw);
		}


	/* -- FOOTER -- */


		.foot-mobile{
			display: block;
		}

		.foot{
			display: none;
		}

		.accordion{
			padding: 20px 0;
			font-size: 1rem;
		}
		.accordion-button{
			color: #5d5d5d;
		}

		.accordion-button:not(.collapsed){
			background-color: transparent;
			color: #249b46;
		}

		.style-accordion{
			border: none;
			padding: 0px 20px;
		}

		.style-accordion ul{
			list-style: none;
			padding-left: 0;
		}

		.style-accordion button{
			font-size: .9rem !important;
		}

		.style-accordion a{
			color: #5d5d5d;
			line-height: 25pt;
		}

		.style-accordion a:hover{
			color: #249b46;
			transition: 1s;
		}

		.social{
			text-align: center;
			padding-bottom: 30px;
		}

		.social span{
			font-weight: 800;
			font-size: .9rem;
			color: #343434;
		}

		.social img{
			max-width: 35px;
			margin: 0 10px;
		}

		.footlogo{
			border-top: solid 1px #d8d8d8;
			display: flex;
			align-items: center;
			padding-top: 20px;
		}




}








/* Loader */

.loaderbg {
	background-color: #c1c1c18a;
	height: 100%;
	width: 100%;
	z-index: 1;
	position: absolute;
}

.loader {
	background-image: url("../images/loader.gif"); 
	width: 30px;
	height: 30px;
	/*border: 1px solid grey;*/
	/*border-radius: 5px;*/
	z-index: 10;
	/*position: relative;
	top: 50%;
	left: 50%;*/
	background-repeat: no-repeat;
	background-size: contain;
	max-width: 30px;
	max-height: 30px;
	float: left;
}

.checker {
	background-image: url("../images/checker.gif");
	background-repeat: no-repeat;
	background-size: contain;
	width: 30px;
	height: 30px;
	display: block;
	float: left;
}

.thankyouloader {
	background-image: url("https://media2.giphy.com/media/3oEjI6SIIHBdRxXI40/200.gif");
	background-repeat: no-repeat;
	/*background-size: contain;*/
	background-position: center;
	background-color: white;
	width: 100%;
	height: 100%;
}