/* Common
-------------------------------------------------------------- */

a, div, span, li, img, h1, h2, h3, h4, h5, h6, p, input {
	-webkit-transition: all 200ms ease-in-out;
	-moz-transition: all 200ms ease-in-out;
	-ms-transition: all 200ms ease-in-out;
	-o-transition: all 200ms ease-in-out;
	transition: all 200ms ease-in-out;
}

.reveal-modal-bg {
	cursor: pointer;
}

body {
	padding: 50px;
	background-color: #0078bd;
	font-weight: 400;
	font-family: 'Open Sans', sans-serif;
}

.container {
	display: block;
	margin-right: auto;
	margin-left: auto;
	max-width: 1500px;
	border: 20px solid rgba(255,255,255,0.30);   
	-webkit-border-bottom-right-radius: 100px;
	-moz-border-radius-bottomright: 100px;
	border-bottom-right-radius: 100px;
	-webkit-border-bottom-left-radius: 100px;
	-moz-border-radius-bottomleft: 100px;
	border-bottom-left-radius: 100px;
	background-color: transparent;
	-webkit-box-shadow:  0px 0px 100px 0px rgba(155,201,235,0.75);
    box-shadow:  0px 0px 100px 0px rgba(155,201,235,0.75);
}

.container .container-inner {
	position: relative;
	top: auto;
	left: auto;
	padding: 25px;
	width: 100%;	
	-webkit-border-bottom-right-radius: 80px;
	-moz-border-radius-bottomright: 80px;
	border-bottom-right-radius: 80px;
	-webkit-border-bottom-left-radius: 80px;
	-moz-border-radius-bottomleft: 80px;
	border-bottom-left-radius: 80px;
	background-color: #ffffff;
}

.container.simple {
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
}

.container.simple .container-inner {
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
}

.margin-top {
	margin-top: 50px;
}

.margin-bottom {
	margin-bottom: 50px;
}

.grey {
	background-color: #f5f5f5;
}

.padding {
	padding: 25px;
}

.round {
	border-radius: 8px;
}


/* Header
-------------------------------------------------------------- */

.header h1 {
	margin-top: 20px;
	margin-bottom: 35px;
	color: #024274;
	font-weight: 400;
	font-size: 46px;
	font-family: 'Open Sans', sans-serif;
}

.header h1 span {
	font-weight: 700;
}

.header .logo {
	position: absolute;
	bottom: -165px;
	left: 0px;
}


/* Testimonials
-------------------------------------------------------------- */

.testimonial blockquote {
	padding: 25px;
	border: 4px solid #f5f5f5;
	border-radius: 8px;
}

.testimonial blockquote p {
	margin-top: 0px;
	margin-bottom: 0px;
	font-weight: 400;
	font-style: italic;
	font-size: 26px;
	font-family: 'Open Sans', sans-serif;
	line-height: 40px;
}

.testimonial img {
	margin-left: 50px;
}

.testimonial .corner {
	position: absolute;
	right: -41px;
	bottom: 40px;
	width: 60px;
	height: 62px;
	background-image: url('img/blockquote-corner.png');
}

/* Points
-------------------------------------------------------------- */

.points p {
	margin-top: 60px;
	margin-bottom: 15px;
	color: #b4b4b4;
	font-weight: 400;
	font-style: italic;
	font-size: 30px;
	font-family: 'Open Sans', sans-serif;
}

.points ul {
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 20px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}

.points ul li {
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 7px;
	padding-left:70px;
	background-image: url('img/check.png');
	background-position: left center;
	background-repeat: no-repeat;
	color: #0078bd;
	list-style: none;
	font-weight: 400;
	font-size: 35px;
	font-family: 'Open Sans', sans-serif;
	
}

.points ul li strong {
	font-weight: 700;
}

.points img:hover {
	opacity: .60;
}
	
/* Phones
-------------------------------------------------------------- */		

.phone-top.simple p {
	text-align: center;
}

.phone-top p {
	margin-top: -15px;
	margin-right: 5px;
	margin-bottom: 25px;
	color: #ffffff;
	font-weight: 400;
	font-size: 40px;
	font-family: 'Open Sans', sans-serif;
}

.phone-top p a {
	color: #ffffff;
	font-weight: 700;
}

.phone-top p, .phone-bottom p {
	text-shadow: 1px 1px 0px #13557d;
    filter: dropshadow(color=#13557d, offx=1, offy=1);
}

.phone-bottom p {
	margin-top: 50px;
	margin-bottom: 50px;
	padding-bottom: 70px;
	background-image: url('img/phone-bottom-bg.jpg');
	background-position: center bottom;
	background-repeat: no-repeat;
	color: #ffffff;
	font-weight: 400;
	font-size: 60px;
	font-family: 'Open Sans', sans-serif;
}

.phone-bottom a {
	color: #ffffff;
	font-weight: 700;
}

/* Headlines
-------------------------------------------------------------- */

.headline h1, .headline h2, .headline h3, .headline h4, .headline h5, .headline h6  {
	margin-top: 0px;
	margin-bottom: 0px;
	color: #024274;
	text-align: center;
	font-weight: 400;
	font-size: 40px;
	font-family: 'Open Sans', sans-serif;
}

.headline h1 span, .headline h2 span, .headline h3 span, .headline h4 span, .headline h5 span, .headline h6 span {
	font-weight: 700;
}

.headline hr {
	margin-top: 28px;
	margin-bottom: 0px;
	width: 100%;
	height: 1px;
	border:none;
	background: #818181;
}

/* Features
-------------------------------------------------------------- */
		
.features h1, .features h2, .features h3, .features h4, .features h5, .features h6  {
	margin-top: 0px;
	margin-bottom: 10px; 
	color: #0078bd;
	font-weight: 600;
	font-size: 35px;
	font-family: 'Open Sans', sans-serif;
}

.features p {
	margin-top: 0px;
	margin-bottom: 10px;
	color: #3d3d3d;
	font-weight: 400;
	font-size: 20px;
	font-family: 'Open Sans', sans-serif;
	line-height: 40px;
}

.features .arrow {
	position: absolute;
	top: -20px;
	right: 30px;
}


/* Modals
-------------------------------------------------------------- */

.reveal-modal {
	top: 150px;
	padding: 0px;
	padding: 8px;
	border: none;
	border-radius: 8px;
	-webkit-box-shadow: 0 0 10px rgba(0,0,0,0.4);
	box-shadow: 0 0 10px rgba(0,0,0,0.4);
}

#video {
	background-color: #000000;
}

#wait {
	padding: 30px;
	background-color: #0078bd;
}

#wait h2 {
	margin-top: 0px;
	margin-bottom: 10px;
	color: #ffffff;
	font-weight: 700;
	font-size: 35px;
	font-family: 'Open Sans', sans-serif;
}

#wait p {
	margin-top: 0px;
	margin-bottom: 0px;
	color: #ffffff;
	font-weight: 400;
	font-size: 25px;
	font-family: 'Open Sans', sans-serif;
}

/* Contact
-------------------------------------------------------------- */

.contact h2 {
	margin-top: 20px;
	margin-bottom: 20px;
	color: #024274;
	font-weight: 400;
	font-size: 30px;
	font-family: 'Open Sans', sans-serif;
}

.contact h2 span {
	font-weight: 700;
}

.contact form.custom .custom.dropdown {
	position: relative;
	top: 0;
	display: block;
	margin-top: 0px;
	margin-bottom: 1.25em;
	padding: 0px;
	width: 100%;
	height: 100px;
	border:3px solid #dadada;
	border-radius: 8px;
	background: #e5e5e5;
	background: -moz-linear-gradient(top,  #e5e5e5 0%, #dadada 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e5e5e5), color-stop(100%,#dadada));
	background: -webkit-linear-gradient(top,  #e5e5e5 0%,#dadada 100%);
	background: -o-linear-gradient(top,  #e5e5e5 0%,#dadada 100%);
	background: -ms-linear-gradient(top,  #e5e5e5 0%,#dadada 100%);
	background: linear-gradient(to bottom,  #e5e5e5 0%,#dadada 100%);
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #cccccc;
	vertical-align: top;
	font-weight: 400;
	font-style: italic;
	font-size: 24px;
	font-family: 'Open Sans', sans-serif;
}

.contact form.custom .custom.dropdown .selector:after {
	position: absolute;
	top: 50%;
	left: 0.9375em;
	display: block;
	display: block;
	margin-top: -3px;
	width: 0;
	height: 0;
	border: inset 15px;
	border-color: #024274 transparent transparent transparent;
	border-top-style: solid;
	content: "";
}

.contact form.custom .custom.dropdown:hover a.selector:after, form.custom .custom.dropdown.open a.selector:after {
	border: inset 15px;
	border-color: #024274 transparent transparent transparent;
	border-top-style: solid;
}

.contact input[type="text"] {
	margin-top: 0px;
	margin-bottom: 0px;
	width: 100%;
	height: 100px;
	border:3px solid #dadada;
	border-radius: 8px;
	background-color: #ffffff;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	color: #a9a9a9;
	font-weight: 400;
	font-style: italic;
	font-size: 25px;
	font-family: 'Open Sans', sans-serif;
}

.contact input[type="text"]:focus {
	border:3px solid #bdbdbd;
	background-color: #ffffff;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	color: #8c8c8c;
	font-style: normal;
}

.contact input[type="submit"], .contact .btn {
	display: block;
	width: 100%;
	height: 100px;
	border:none;
	border-bottom: 3px solid #98c668;
	border-radius: 8px;
	background-color: #b4d78f;
	color: #ffffff;
    text-align: center;
	text-shadow: 1px 1px 0px #80a35b;
	font-weight: 700;
	font-size: 30px;
	font-family: 'Open Sans', sans-serif;
	line-height: 95px;
    filter: dropshadow(color=#80a35b, offx=1, offy=1);
    cursor: pointer;
}

.contact input[type="submit"]:hover, .contact .btn:hover {
	border-top: 3px solid #98c668;
	border-bottom: none;
	background-color: rgba(180,215,144,0.90);
	text-shadow: -1px -1px 0px #80a35b;
    filter: dropshadow(color=#80a35b, offx=1, offy=1);
}

/* I love devices!
-------------------------------------------------------------- */

/* Small screens */
@media only screen and (max-width: 767px) {

	body {
		padding: 10px;
	}
	
	.phone-bottom p {
		background-image: none;
		font-size: 40px;
	}
	
	.container {
		border: 10px solid rgba(255,255,255,0.30);   
		-webkit-border-bottom-right-radius: 25px;
		-moz-border-radius-bottomright: 25px;
		border-bottom-right-radius: 25px;
		-webkit-border-bottom-left-radius: 25px;
		-moz-border-radius-bottomleft: 25px;
		border-bottom-left-radius: 25px;
	}
	
	.container .container-inner {
		padding: 5px;
		width: 100%;	
		-webkit-border-bottom-right-radius: 15px;
		-moz-border-radius-bottomright: 15px;
		border-bottom-right-radius: 15px;
		-webkit-border-bottom-left-radius: 15px;
		-moz-border-radius-bottomleft: 15px;
		border-bottom-left-radius: 15px;
	}

	.margin-top {
		margin-top: 25px;
	}
	
	.margin-bottom {
		margin-bottom: 25px;
	}
	
	.padding {
		padding: 15px;
	}

	.phone-top p {
		margin-top: 15px;
		margin-right: 5px;
		margin-bottom: 25px;
		text-align: center;
		font-size: 20px;
	}
	
	.header h1 {
		margin-top: 15px;
		margin-bottom: 15px;
		text-align: center;
		font-weight: 400;
		font-size: 25px;
	}
	
	.header .logo {
		position: relative;
		bottom:auto;
		left: auto;
		text-align: center;
	}

	.headline h1, .headline h2, .headline h3, .headline h4, .headline h5, .headline h6  {
		font-size: 20px;
	}
	
	.headline hr {
		display: none;
	}
	
	.points p {
		margin-top: 10px;
		margin-bottom: 10px;
		text-align: center;
		font-size: 25px;
	}
	
	.points ul {
		margin-top: 0px;
		margin-right: 0px;
		margin-bottom: 20px;
		margin-left: 0px;
		padding-top: 0px;
		padding-right: 0px;
		padding-bottom: 0px;
		padding-left: 0px;
	}
	
	.points ul li {
		margin-top: 0px;
		margin-right: 0px;
		margin-bottom: 10px;
		margin-left: 15px;
		padding-top: 0px;
		padding-right: 0px;
		padding-bottom: 0px;
		padding-left:20px;
		background-image: url('img/check.png');
		background-position: left center;
		background-size: 10px 10px;
		background-repeat: no-repeat;
		color: #0078bd;
		list-style: none;
		font-weight: 400;
		font-size: 17px;
		font-family: 'Open Sans', sans-serif;
	}
	
	.contact input[type="text"] {
		margin-bottom: 20px;
	}

	.features h1, .features h2, .features h3, .features h4, .features h5, .features h6  {
		margin-top: 0px;
		margin-bottom: 10px; 
		font-size: 25px;
	}
	
	.features p {
		font-size: 17px;
		line-height: 35px;
	}
	
	.features .arrow {
		position: absolute;
		top: -10px;
		right: 30px;
		width: 40px;
		height: 40px;	
	}

	.phone-bottom p {
		margin-top: 20px;
		margin-bottom: 20px;
		padding-bottom: 0px;
		background-image: none;
		color: #ffffff;
		font-size: 15px;
	}

}

/* Medium Screens (Landscape) */
@media only screen and (max-width: 1279px) and (min-width: 768px) {

	body {
		padding: 10px;
	}
	
	.phone-bottom p {
		background-image: none;
		font-size: 40px;
	}
	
	.container {
		border: 10px solid rgba(255,255,255,0.30);   
		-webkit-border-bottom-right-radius: 50px;
		-moz-border-radius-bottomright: 50px;
		border-bottom-right-radius: 50px;
		-webkit-border-bottom-left-radius: 50px;
		-moz-border-radius-bottomleft: 50px;
		border-bottom-left-radius: 50px;
	}
	
	.container .container-inner {
		padding: 15px;
		width: 100%;	
		-webkit-border-bottom-right-radius: 40px;
		-moz-border-radius-bottomright: 40px;
		border-bottom-right-radius: 40px;
		-webkit-border-bottom-left-radius: 40px;
		-moz-border-radius-bottomleft: 40px;
		border-bottom-left-radius: 40px;
	}
	
	.header h1 {
		margin-top: 15px;
		margin-bottom: 35px;
		font-weight: 400;
		font-size: 35px;
	}
	
	.header .logo {
		position: absolute;
		bottom: -165px;
		left: 20px;
	}

	.headline h1, .headline h2, .headline h3, .headline h4, .headline h5, .headline h6  {
		font-size: 25px;
	}
	
	
	.headline hr {
		margin-top: 28px;
	}
		
	.points p {
		margin-top: 30px;
		margin-bottom: 15px;
		font-size: 20px;
	}
	
	.points ul {
		margin-top: 0px;
		margin-right: 0px;
		margin-bottom: 0px;
		margin-left: 20px;
		padding-top: 0px;
		padding-right: 0px;
		padding-bottom: 0px;
		padding-left: 0px;
	}
	
	.points ul li {
		margin-top: 0px;
		margin-right: 0px;
		margin-bottom: 10px;
		margin-left: 0px;
		padding-top: 0px;
		padding-right: 0px;
		padding-bottom: 0px;
		padding-left:35px;
		background-image: url('img/check.png');
		background-position: left center;
		background-size: 25px 25px;
		background-repeat: no-repeat;
		color: #0078bd;
		list-style: none;
		font-weight: 400;
		font-size: 25px;
		font-family: 'Open Sans', sans-serif;
	}
	
	.testimonial blockquote {
		padding:15px;
		border: 2px solid #f5f5f5;
	}
	
	.testimonial blockquote p {
		margin-top: 0px;
		margin-bottom: 0px;
		font-weight: 400;
		font-style: italic;
		font-size: 18px;
		font-family: 'Open Sans', sans-serif;
		line-height: 35px;
	}
	
	.testimonial img {
		margin-left: 0px;
		padding: 25px;
	}
	
	.testimonial .corner {
		position: absolute;
		right: -38px;
		bottom: 40px;
		width: 55px;
		height: 57px;
		background-image: url('img/blockquote-corner.png');
		background-size: 55px 57px;
	}
	
	.features h1, .features h2, .features h3, .features h4, .features h5, .features h6  {
		margin-bottom: 10px; 
		font-size: 25px;
	}
	
	.features p {
		margin-bottom: 0px;
		font-size: 17px;
		line-height: 35px;
	}
	
	.features .arrow {
		position: absolute;
		top: -20px;
		right: 30px;
	}
	
	.phone-top p {
		margin-top: 5px;
		margin-bottom: 25px;
		font-size: 25px;
	}

}

/* Medium Screens (Portrait) */
@media only screen and (orientation: portrait) and (max-width: 1279px) and (min-width: 768px) {

	body {
		padding: 25px;
	}
	
	.phone-bottom p {
		background-image: none;
		font-size: 30px;
	}

}