.hero {
    float:left;
    clear:left;
    width:100%;
    position: relative;
    
}

    .hero img {
        width:100%;
        display:block;
    }
    
    .hero h1 {
        font-weight:300;
        color:#fff;
        width:100%;
        text-align: center;
        position:absolute;
        top:45%;
        transform:translateY(-50%);
        display:block;
        font-size:6em;
        text-shadow:0 0 6px #000;
    }

.main {
    float:left;
    clear:left;
    width:100%;
    background-color:#fff;
    padding:3%;
    margin-bottom:5%;
}

    .smaller {
        width:70%;
    }

    .pullup {
        margin-top:-5%;
    }

    .main h1,
    .main h2,
    .main h3,
    .main h4,
    .main h5,
    .main h6{
        float:left;
        clear:left;
        margin-bottom:1em;
        margin-top:0.5em;
        font-size:2.8em;
        font-weight:300;
        color:#32004b; /* purple */
    }
    
    .main h1 {
        margin-top:0;
    }
    
    .main h3 {
        font-size:2.5em;
    }
    
    .main h4 {
        font-size:2.2em;
    }
    
    .main h5 {
        font-size:1.9em;
    }
    
    .main h6 {
        font-size:1.6em;
    }
    
    .main p {
        float:left;
        clear:left;
        font-size:1.4em;
        line-height: 1.6;
        margin-bottom:1em;
    }
    
        .main p a {
            color:#00aeef; /* blue */
        }
    
    .main ul,
    .main ol {
        float:left;
        clear:left;
        margin:2em 0 2em 2em;
    }
    
        .main li {
            float:left;
            clear:left;
            padding-left:1em;
            font-size:1.4em;
            margin-bottom:1em;
        }
    
    .surveys {
        float:left;
        clear:left;
        width:100%;
        display:-webkit-flex;
        display:flex;
        -webkit-flex-direction:row;
        flex-direction:row;
        -webkit-flex-wrap:wrap;
        flex-wrap:wrap;
    }
    
    .survey {
        float:left;
        width:32%;
        margin-right:2%;
        margin-bottom:2em;
        border:1px solid #ddd;
        padding:2em;
    }
        
        .survey .icon {
            width:25px;
            float:left;
            margin-right:1em;
        }
        
        .survey:nth-of-type(3n) {
            margin-right:0;
        }
        .survey:nth-of-type(3n+1) {
            clear:left;
        }
    
        .sample,
        .tcs,
        .book{
            float:left;
            width:48.5%;
            margin:3% 3% 3% 0;
            background-color:#00aeef; /* blue */
            padding:1em;
            letter-spacing: 1px;
            text-transform: uppercase;
            text-decoration: none;
            font-weight: bold;
            text-align: center;
            color:#fff;
        }
        
            .sample:hover,
            .tcs:hover {
                background-color:#32004b; /* purple */
            }
        
        .tcs {
            margin-right:0;
        }
        
        .book {
            width:100%;
            margin:0;
        }
        
        .sample{
            clear:left;
        }
        
            .main .title {
                font-size:1.9em;
            }
            
        .survey .pic {
            float:left;
            clear:left;
            margin-bottom:3%;
        }
        
        .book{
            margin-right:0;
        }
        
        .book {
            background-color:#32004b; /* purple */
        }
        
            .book:hover {
                background-color:#00aeef; /* blue */
            }
        
        .nofile {
            background-color:#ccc;
        }
        
            .nofile:hover {
                background-color:#ccc;
            }
        
        .survey p,
        .survey h2,
        .survey h3 {
            float:left;
            clear:left;
        }

.contactform {
    float:right;
    clear:right;
    width:28%;
    background-color:#32004b; /* purple */
    color:#fff;
    padding:2em;
    margin-bottom:5%;
}

    input,
    label,
    textarea,
    select {
        float:left;
        clear:left;
        width:100%;
        margin-bottom:1em;
        border:0;
        outline:0;
		font-family: 'Open Sans', sans-serif;
		font-size:1.3em;
    }
    
        option {
            float:left;
            clear:left;
            width:100%;
            padding:0.5em;
        }
    
    input,
    textarea {
        padding:0.5em;
    }
    
    label {
        font-size:1.4em;
        margin-bottom:0.25em;
    }
    
    .submit-btn {
        margin-bottom:0;
        margin-top:1em;
        background-color:#00aeef; /* blue */
        color:#fff;
        cursor: pointer;
        text-transform: uppercase;
        font-size:1.2em;
        letter-spacing: 1px;
        font-weight: bold;
    }
    
    .contactform h2 {
        font-size:2em;
        font-weight:300;
        margin-bottom:1em;
    }

.fcw {
	float:left;
	clear:left;
	width:100%;
}

.review {
	border:1px solid #eee;
	padding:5%;
	background-color:#fafafa;
	margin-bottom:2em;
}

	.stars {
		margin-bottom:1em;
	}

		.stars img {
			float:left;
			height:30px;
			width:auto;
		}
	
	.review h2 {
		font-size:1.8em;
		margin-bottom:0.5em;
	}
	
	.review p {
		font-style:italic;
	}

.errortext {
	color:red;
	font-size:1.4em;
}

@media screen and (max-width:1200px){
    .hero h1 {
        font-size:5.75vw;
    }
}

@media screen and (max-width:850px){
    
    .smaller {
        width:60%;
    }
    
    .contactform {
        width:38%;
    }
}

@media screen and (max-width:650px){
    
    .main,
    .contactform{
        width:100%;
        float:left;
        margin-bottom:2em;
    }
    
    .contactform.pullup {
        margin-top:0;
    }
}