@media screen and (min-width:0px) {

	h1 {
		font-size: 30px;
		padding: 120px 20px;
	    text-align: center;
	    text-shadow: 5px 5px 5px #01133e;
	    color: white;
	    background-position: center;
	    background-repeat: no-repeat;
	    background-size: cover;
	    margin: 46px 0 0 0;
	}

	h2 {
		font-size: 22px;
		line-height: 30px;
		padding: 22px 5% 10px 5%;
		margin: 0;
		text-align: center;
	}

	h2 span {
    	white-space: nowrap;
	}


	h4 {
		font-size: 16px;
		font-weight: bold;
		padding: 5px 10px;
		text-align: center;
		margin: 0;
	}

	nav {
	    background-color: #02316e;
	    /*background: linear-gradient(#014cad, #012758);*/
	    padding: 0;
	    position: fixed;
	    top: 0;
	    left: 0;
	    width: 100%;
	    z-index: 2;
	    box-shadow: -8px 1px 14px 0 #03226b;
	    border-bottom: 1px solid #95dafe;
	}

    nav a {one;
        /*color:#0362c4;*/
        /*color:#012758;*/
        color: #95dafe;
    }

	nav a:visited {
        color: #95dafe;
    }

    nav a:hover {
        text-decoration: none;
        color: white;
    }

    #capitol {
		margin: 0 auto;
		width: 225px;
		height: 225px;	
		border-radius: 225px;
		display: flex;
		align-items: center;
	}

	#capitol div {
		width: 80%;
		height: 80%;
		margin: 0 auto;
		position: relative;
		top: -8px;
		background-position: center;
	    background-repeat: no-repeat;
	    background-size: contain;
	    background-image: url("images/capitol.webp");
	}

    #closeBtn {
    	margin: 5px 5px 0 auto;
    	border: 2px solid white;
    	color: white;
    	font-size: 18px;
    	padding: 5px;
    	border-radius: 16px;
    	width: 16px;
    	height: 16px;
    	text-align: center;
    	line-height: 16px;
    	cursor: pointer;
    }

    #closing {
		font-size: 20px;
		text-align: center;
		padding: 10px 5%;
	}

    #contact {
		cursor: pointer;
	}

	#contactBtn {

	}

	#contactForm {
		display: none;
		width: 85%;
		height: 100%;
		position: fixed;
		top: 0px;
		right: 0px;
		z-index: 4;
		box-shadow: -1px 0px 6px 0 #03226b;
		overflow-y: scroll;

	}

	#contactForm p {
		font-size: 22px;
		color: white;
		text-align: center;
		margin: 0 0 5px 0;
	}

	#incentives {
		padding: 30px 0 0 0;
		margin: 0 0 20px 0;
		background: linear-gradient(white, #aecef6);
	}

	#itc {
		font-size: 16px;
		padding: 20px 10%;
	}

    #links {
    	padding: 10px 0;
 		text-align: center;
 		font-size: 14px;
        line-height: 20px;
        display: none;
        background-color: #0459a8;

        /*overflow: hidden;
        transition: height .1s ease;*/
    }

    #links a {
    	margin: 0 10px;
    	white-space: nowrap;
    	font-size: 16px;
    }

    #links div {
    	white-space: nowrap;
    	display: inline;
    }

    .logo {
		padding: 10px 5px;
		width:200px;
		height: 54px;	
	}

	#logo2 {
		padding: 10px 5px;
		display: none;
	}

	#mw > div {
		background-position: center;
	    background-repeat: none;
	    background-size: cover;
	    background-image: url("images/maintenance4.webp");
	    min-height: 300px;
	}

	#mw > section {
		font-size: 16px;
		margin: 0;
		padding: 20px;
	}

	#mw p {
		padding:0 0 10px 0;
		margin: 0;
		text-align: center;
		font-size: 16px;
		line-height: 22px;
	}


	#navToggle {
		height: 75px;
		width: 50px;
		padding: 0 10px;
		position: absolute;
		top: 0;
		right: 0;
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		cursor: pointer;	
	}

	#navToggle div {
		background-color: white;
		height: 5px;
		margin: 7px auto;
	}

	#navToggle > section {
		width: 70%;
		margin: 0 auto;
	}

	#phoneBtn {
		padding: 5px 10px;
		text-decoration: none;
		color: white;
		font-size: 24px;
		border: 0;
		display: block;
		margin: 0 auto 25px auto;
		width: 180px;
		text-align: center;
		border-radius: 4px;
		border: 1px solid white;
		cursor: pointer;
	}

	#phoneBtn:hover {
		color: white;
		text-decoration: none;
	}

	#phoneBtn:visited {
		color: white;
	}

	#response {
		font-size: 18px;
		color: white;
		text-align: center;
	}

	#sendBtn {
		color: white;
		font-size: 24px;
		border: 0;
		display: block;
		margin: 20px auto;
		width: 90px;
		text-align: center;
		border-radius: 4px;
		border: 1px solid white;
		cursor: pointer;
	}

	#services {
		padding: 20px 5%;
		text-align: center;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-evenly;
	}

	#services h3 {
		font-size: 24px;
		text-align: center;
	}

	#start {
		border: 0;
	    padding: 5px 10px;
	    margin-top: 10px;
	    border-radius: 2px;
	    font-size: 20px;
	    cursor: pointer;
	}

	#sunIcon {		
		display: none;
	}

	.basic2 {
		text-align: center;
	}

	.basic2 h3 {
        font-size: 24px;
    }

    .basic2 div {
        width: 200px;
        height: 200px;
        border-radius: 100px;
        margin: 10px auto;
        border: 2px solid white;
    }

    .basic2 p {
    	margin: 10px 5%;
    }

    .basic2 > section {
        padding: 0 20px 20px 20px;
        margin: 0;
    }

    .borderTb {
    	border-top: 1px solid white;
		border-bottom: 1px solid white;
    }


    .flexList {
    	margin-bottom: 20px;
    	display: flex;
    }

    .flexList h3 {
    	margin-bottom: 0;
    	padding: 0;
    	font-size: 22px;
    }

    .flexList p {
    	padding: 0;
    	margin: 0;
    }

    .flexListPic {
    	width: 30px;
    	height: 30px;
    	min-width: 30px;
    	min-height: 30px;
    	margin-right: 20px;
    	border-radius: 15px;
    }

	.halfFlex section {
		min-height:250px;
		
	}

	.halfFlexPic {
		background-position: center;
	    background-repeat: no-repeat;
	}

	.hvCenter {
		margin:0;
	  	position: absolute;
	  	top: 50%;
	  	left: 50%;
	  	transform: translate(-50%, -50%);
	  	min-width:90%
	}



	.intro {
		margin: 0;
		padding: 20px 5%;
		font-size: 18px;
		text-align: center;
	}

	.intro2 {
		margin: 0 10px;
		font-size: 18px;
		text-align: center;
	}

	.group1 button {
		border-radius: 12px;
		border: 0;
		font-size: 28px;
		padding: 5px 10px;
		margin-top: 20px;
		color: white;
	}

	.group1 h3 {
		font-size: 24px;
		font-weight: bold;
		color: white;
		text-align: center;
		position: absolute;
		top: 0;
		left:0;margin: 10px;
		text-shadow: 1px 1px 2px #01133e;
	}

	.group1Pic {
		background-position:center;
	    background-repeat:none;
	    background-size:cover;
	    min-height:300px;
	    border-bottom:2px solid white;
	}

	.group1Text {
		margin: 0;
		line-height: 20px;
	}

	.group1Text > div {
		float: left;
		width: 75px;
		height: 75px;
		margin: 0 15px 5px 0;
		color: white;
		font-size: 66px;
		border-radius: 100px;
		position: relative;
		top: 3px;
		display: flex;
		align-items: center;
		text-align: center;
	}

	.group1Text p {
		margin: 0 3%;
		font-size: 16px;
		margin: 0;
		line-height: 20px;
		padding: 20px 6%;
	}

	.padWrapper {
		padding:30px 5%;
	}

	.padWrapper2 {
		padding: 0;
		margin: 0;
	}

	.servicePic {
		width: 150px;
		height: 150px;
		min-width: 150px;
		border-radius: 75px;
		margin: 0 auto;
	}

	
	.servicesWrapper {
		width: 100%;
		min-width: 250px;
		display: flex;
		flex-wrap: wrap;
	}

	.textBig {
		font-size: 41px;
	}

}

@media screen and (min-width: 330px){

	.halfFlex section {
		min-height:275px;
	}

}

@media screen and (min-width:340px) {

	nav span {
		white-space: nowrap;
	}

	.textBig {
		font-size: 52px;
	}

}

@media screen and (min-width:380px) {
	#sunIcon {
		width: 65px;
		height: 65px;
		display: block;
		position: absolute;
		right: 1%;
		bottom: 10px;
	}
}

@media screen and (min-width:481px) {
	h1 {
		font-size: 30px;
	}

	#contactForm {
		width: 60%;
	}

	#closing {
		font-size: 22px;
	}

	.intro {
		font-size: 22px;
	}

	.serviceFlex {
		display: flex;
	}

	.textBig {
		font-size: 60px;
	}
}

@media screen and (min-width:576px) {
	h1 {
		font-size: 40px;
		padding: 110px 0;
	}

	h2 {
		font-size: 30px;
	}

	h4 {
		font-size: 18px;
		text-align: left;
	}

	nav {
		display: flex;
		text-align: right;
		justify-content: space-between;
		align-items: center;
	}

	#capitol {
		width: 140px;
		height: 140px;	
		border-radius: 140px;
	}

	#closing {
		font-size: 24px;
	}

	#contactForm {
		width: 50%;
	}

	#incentives {
		display: flex;
		justify-content: center;
		padding: 20px 0;
		background:linear-gradient(white, #aecef6);
		/*background: linear-gradient(white, #fba66d);*/
	}

	#itc {
		width: 66%;
		margin: 0;
		text-align: left;
		padding: 0 5% 0 0;
		font-size: 16px;
	}

	#links {
		margin: 0 20px;
		display: block;
		text-align: right;
		background-color: transparent;
	}

	#mw {
		display: flex;
		justify-content: space-around;
		align-items: stretch;
	}

	#mw p {
		text-align: left;
	}

	#mw > div {
		width: 50%;
		min-height: 200px;
	}

	#mw > section {
		width: 50%;
		margin: 0;
		padding: 20px;
	}

	#mw {
		display: flex;
		justify-content: space-around;
		align-items: stretch;
	}

	#mw p {
		text-align: left;
	}

	#mw > div {
		width: 50%;
		min-height: 200px;
	}

	#mw > section {
		width: 50%;
		margin: 0;
		padding: 20px;
	}


	#navToggle {
		display: none;
	}

	#start {
	    padding: 7px 14px;
	    font-size: 26px;
	}

	.basic2 {
        display: flex;
        justify-content: space-evenly;
    }

    .basic2 > section {
        width: 45%;
        border-radius: 4px;
        margin: 0 2% 20px 2%;
    }

	.group1 {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
	}

	.group1Pic {
		width: 33%;
		min-height: 150px;
		border-left: 10px solid white;
		border-bottom: 0;
	}

	.group1Text {
		width: 67%;
	}

	.group1Text p {
		padding: 20px 7%;
	}

	.halfFlex section {
		min-height:350px;
	}

	.hvCenter {
		min-width:80%;
	}


	.intro {
		padding: 40px 8%;
		font-size: 24px;
	}

	.padWrapper2 {
		padding:30px 0;
	}

	.servicesWrapper {
		width: 35%;
		min-width: 250px;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-evenly;
	}

	.textBig {
		font-size: 78px;
	}
}

@media screen and (min-width:768px) {
	h1 {
		font-size: 52px;
		padding: 120px 0;
	}

	h2 {
		font-size: 42px;
		line-height: 42px;
		padding-top: 30px;
	}

	#capitol {
		width: 160px;
		height: 160px;	
		border-radius: 160px;
	}

	#closing {
		font-size: 26px;
	}

	#contactForm {
		width: 40%;
	}

	#incentives {
		padding: 30px 0;
	}

	#itc {
		font-size: 18px;
		line-height: 24px;
	}

	#logo {
		padding: 10px 5px;
	}

	#start {
	    padding: 10px 15px;
	    font-size: 28px;
	}

	#sunIcon {
		width: 85px;
		height: 85px;
	}

	.group1Text p {
		font-size: 18px;
		line-height: 28px;
		padding: 25px 7%;
	}

	.group1Text > div {
		width: 100px;
		height: 100px;
		font-size: 100px;
		border-radius: 100px;
	}

	.flexList h3 {
    	margin-bottom: 0;
    	padding: 0;
    	font-size: 28px;
    }

    .flexList p {
    	padding: 0;
    	margin: 0;
    	font-size: 20px;
    }

	.intro {
		font-size: 26px;
	}

	.halfFlex {
		display:flex;
		flex-wrap: wrap;
	}

	.halfFlex section {
		width:50%;
		min-height: 325px;
	}


	.padWrapper {
		padding:30px 10%;
	}

	.reverse {
		flex-direction: row-reverse;
	}

	.textBig {
		font-size: 100px;
	}
}

@media screen and (min-width:962px) {
	h1 {
		font-size: 62px;
		padding: 130px 0;
	}
	h2 {
		font-size: 50px;
		line-height: 50px;
		padding-top: 36px;
	}

	h4 {
		font-size: 22px;
	}

	nav li {
		font-size: 16px;
	}

	#capitol {
		width: 200px;
		height: 200px;	
		border-radius: 200px;
	}

	#closing {
		font-size: 26px;
		padding: 30px 7%;
	}

	#contactForm {
		width: 35%;
	}

	#incentives {
		padding: 40px 0;
	}

	#itc {
		font-size: 20px;
		line-height: 28px;
	}

	#mw > section {
		padding: 30px
	}

	#mw p {
		font-size: 20px;
		line-height:32px;
	}


	#start {
	    padding: 12px 18px;
	    font-size: 30px;
	}

	#sunIcon {
		width: 100px;
		height: 100px;
	}

	.group1Text p {
		font-size: 20px;
		line-height: 28px;
		padding:40px 9%;
	}
	.group1Text > div {
		width: 120px;
		height: 120px;
		font-size: 120px;
		border-radius: 120px;
	}

	.intro {
		padding: 50px 10%;
		font-size: 30px;
	}

	.halfFlex section {
		min-height:375px;
	}

	.textBig {
		font-size: 110px;
	}  
}

@media screen and (min-width:1100px) {
	.group1Text {
		font-size: 24px;
		line-height: 34px;
	}
}

@media screen and (min-width:1200px) {
	h1 {
		font-size: 72px;
		padding: 140px 0;
	}

	h2 {
		font-size: 54px;
		line-height: 54px;
		padding-top: 50px;
	}

	h3 {
		font-size: 26px;
	}

	h4 {
		font-size: 22px;
		text-align: left;
	}

	#capitol {
		width: 225px;
		height: 225px;	
		border-radius: 225px;
	}

	#closing {
		font-size: 28px;
		padding: 40px 9%;
	}

	#contactForm {
		width: 30%;
	}

	#incentives {
		padding: 60px 0;
	}

	#itc {
		font-size: 22px;
		line-height: 32px;
	}

	#mw > section {
		padding: 40px
	}

	#mw p {
		font-size: 24px;
		line-height: 36px;
	}


	#start {
	    padding: 14px 20px;
	    font-size: 32px;
	}

	#sunIcon {
		width: 115px;
		height: 115px;
	}

	.group1Text p {
		padding: 45px 10%;
		font-size: 24px;
		line-height: 34px;
	}
	.group1Text > div {
		width: 130px;
		height: 130px;
		font-size: 130px;
		border-radius: 130px;
	}

	.intro {
		padding: 60px 10%;
		font-size: 36px;
	}

	.halfFlex section {
		min-height:425px;
	}

	.textBig {
		font-size: 120px;
	}

}





/*#################################################################################*/



body {
    background-color: white;
    font-family: "helvetica";
    font-size: 16px;
    margin: 0;
    padding: 0;
    color: #02316e;
}


footer {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 200px;
    padding: 0 10%;
    font-size: 16px;
}

footer > section {
    color: #aecef6;
    text-align: center;
}

footer img {
	display: block;
	margin: 0 auto;
}

footer button {
	display: block;
	margin: 20px auto;
	font-size: 24px;
	border: 0;
	border-radius: 4px;
	padding: 5px 10px;
	cursor: pointer;
}

form > section {
	margin: 0 auto;
	width: 90%;
}

label {
	display:none;
	color: white;
}

input, textarea {
	height: 20px;
	width: 90%;
	display: block;
	margin: 20px auto 0 auto;
	border-radius: 4px;
	border: 0;
	font-family:"helvetica";
	padding: 5px;
	color: #02316e;	
}

textarea {
	height: 70px;
}

#cover {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #012758;
	opacity: 0.4;
	z-index: 3;
}


/*#######################################################################*/


.approved {
	background-image: url("images/approved.webp");
}

.bgCover {
	background-size: cover;
}

.bgCover {
	background-size: cover;
}

.bgImg {
	background-position: center;
    background-repeat: no-repeat;	
}

.blueBg {
    background-color: #008ad1;
}

.blueText {
    color: #008ad1;
}

.blueMBg {
    background-color: #0459a8;
}

.blueLText {

}

.blueMText {
    color: #0459a8;
}

.centerText{
	text-align: center;
}

.design {
	background-image: url("images/design2.webp");
}

.dBlueText {
    color: #02316e;
}

.dBlueBg {
    background-color: #02316e;
}

.dBlueBg2 {
	background-color: #012758;
}

.checkmark {
	background-image: url("images/checkmark.webp");
}

.clear {
	clear: both;
}


.contain {
	background-size: contain;
}

.cover {
	background-size: cover;
}

.currentPage {
	cursor: default;
	color: white;
}

.error {
	font-size: 11px;
	background-color: red;
	color: white;
	font-weight:  bold;
	padding: 2px;
	display: none;
}

.flex {
		display: flex;
}


.floatLeft {
	float: left;
	margin: 0 10px 5px 0;
	position: relative;
	top: 3px;
}

.grad1 {
	background: linear-gradient(white, #5ab3fe);
}

.grad2 {
	background: linear-gradient(white, #aecef6);
}

.gradGr {
	background: linear-gradient(#017430, #01a844);
}

.greenBg {
    background-color: #01a844;
}

.greenText {
    color: #01a844;
}

.greenMText {
    color: #018837;
}

.greenMBg {
    background-color: #018837;
}

.height50 {
	width: 50%;
}

.hmtop {
	margin-top: 20px;
}

.installation1 {
	background-image: url("images/installation200.webp");
}

.jfc {
	justify-content: center;
}

.middle {
	align-items: center;
}

.nowrap {
	white-space: nowrap;
}

.oneThird {
    width: 34%;
}

.twoThirds {
    width: 66%;
}

.orangeBg {
    background-color: #f3711b;
}

.orangeMBg {
    background-color: #ca4b12;
}

.orangeText {
    color: #f3711b;
}

.percent50 {
	width: 50%;
}

.relative {
	position: relative;
}

.rightText {
	text-align: right;
}

.round8 {
	border-radius:8px
}

.textLeft {
	text-align: left;
}

.twoThird {
    width: 66%;
}

.underline {
	text-decoration: underline;
	cursor: pointer;
}

.whiteText {
    color: white;
}

.whiteBg {
	background-color: white;
}

.width50 {
	width: 50%;
}

.yellowBg {
    background-color: #fcb809;
}

.yellowText {
    color: #fcb809;
}