h3 {margin-bottom: 0px;}

p{
 text-align: justify;
}

h3 + p {margin-top: 0px;}

#wrapper{background-color: white;}

.half{
 max-width: calc(50% - 25px);
}

#opening{
 float: left;
 margin: 0 10px 0 15px;
}

#opening p:first-of-type {margin-top: 10px;}
#opening p:last-of-type {margin-bottom: 10px;}

#fullform{
 margin: 15px 10px 15px 10px;
 float: right;
 position: sticky;
 position: -webkit-sticky;
 top: 0;
}

.formpart, #mc_embed_signup{
 border-left: 1px solid #22451c;
 border-right: 1px solid #22451c;
 padding-left: 10px;
 padding-right: 10px;
 margin: auto;
 max-width: 100%;
}

#formtop{
font-family: 'Overlock';
 border-top: 1px solid #22451c;
 padding-top: 10px;
 padding-bottom: 10px;
 height: 55px;
 margin-bottom: 0px;
 background-color: #57b147;
 background-image: linear-gradient(to right, #59bc49,#55a645);
 color: white;
 border-radius: 5px 5px 0px 0px;
}

#arrow{
 margin: -10px;
 height: 75px;
 left: 0px;
 top: 0px;
 float: left;
}

p#u50{
 margin: 0;
 font-size: 27pt;
 text-align: center;
 transform: translate(-7px,0px);
}

#formtextbox {padding-top: .3em; padding-bottom: 1.5em;}

h2#form {margin-top: 0; margin-bottom: .1em;}

#formtext {margin-top: 0; margin-bottom: 0;}

#mc_embed_signup{
 background-color: white;
 padding-top: 5px;
 padding-bottom: 10px;
}


.indicates-required{
 color:#555;
 position: relative;
 top: -1em;
 float: right;
}


span.asterisk{
 color: red;
}

input[type="text"], input[type="email"], select{
 box-sizing: border-box;
 width: 100%;
 padding: 5px 5px;
 margin: 8px 0;
 border: 1px solid black;
 border-radius: 5px;
 background-color: white;
 transition: border .15s;
 font-size: 15px;
}

input[type="text"]:focus, input[type="email"]:focus, select:focus{
 border: 1px solid #095;
}

div.input-group label{
 font-size: 18px;
}

ul{
 list-style: none;
 margin: 0;
 padding: 5px;
}

li label {margin-left: 3pt;}

input[type="submit"]{
 display: block;
 font-size: 18px;
 padding: 5px 7px;
 border-radius: 5px;
 background-color: #1e3d19;
 color: white;
 width: 80%;
 margin: 8px auto;
}

input[type="submit"]:active{
 color: #ddd;
}

#powered{
 font-size: 14px;
}

p#thanks{
 text-align:center;
}

span.big{
 font-size: 20px;
}

div#priv{
 background-color: white;
 border-bottom: 1px solid #22451c;
 padding-top: 0px;
 margin-top: -20px;
 border-radius: 0px 0px 5px 5px;
}

p#priv{
 margin-bottom: 8px;
}

p.foot{
 padding: .2em 0;
}

/*----------RESPONSIVE DESIGN STARTS HERE----------*/
@media only screen and (max-width: 1100px) {
 div#wrapper{
  max-width: 90%;
 }

 p#u50{
 font-size: 20pt;
 margin-top: 3px;
 transform: translate(-3%,-3px);
 }

 #arrow{
 height: 60px;
 }

 #formtop{
 height: 40px;
 }
}

@media only screen and (max-width: 780px) {
 h1{
  font-size: 25pt;
 }

 h2.top{
  font-size: 17pt;
 }

 p#u50{
 font-size: 17pt;
 margin-top: 3px;
 transform: translate(-2%,-4px);
 }

 #arrow{
 height: 50px;
 }

 #formtop{
 height: 30px;
 }

@media only screen and (max-width: 730px) {


 .half{
  max-width: 100%;
  margin: auto;
 }

 #opening, #fullform{
  float: none;
 }

 div#opening img {margin-top: .2em;}

 p#u50{
 font-size: 17pt;
 margin-top: 0px;
 transform: translate(-2%,-2px);
 }
}