html,
body{
	border-collapse: collapse;
}

body{
	background-color: #fff;
	color: #3f3e3e;
	font-family: "Alegreya Sans", sans-serif;
	font-size: 18px;
	line-height: 1.2;
	margin: 0;
	min-width: 320px;
	text-align: center;
}

img{
	max-width: 100%;	
}

header img{
	margin: 0 auto;
}

.intro{
	margin: 0 auto;
	max-width: 80%;
}

.intro h2{
	color: #054583;
	letter-spacing: 0.05em;
	font-size: 1.56388889em;
	font-weight: 700;
	margin: 0.25em auto;
}

.intro p{
	font-size: 1.53111111em;
	margin: 0.5em auto;
}

.intro .free{
	color: #054583;
	font-weight: 700;
	text-transform: uppercase;
}

.greg-macdougall{
	margin: 0 auto;
	max-width: 93.75%;
	position: relative;
	text-align: center;
}

.greg-macdougall .image-wrapper{
	border: 10px solid #3866a3;	
	display: table;
	margin: 0 auto;
	position: relative;
	max-width: 100%;
}

.greg-macdougall .image-wrapper img{
	display: block;
}

.greg-macdougall .caption{
	background-color: rgba(255, 255, 255, 0.55);
	bottom: 5px;
	color: #054583;
	display: block;
	font-size: 0.84143687em;
	font-weight: 700;
	left: 5px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 8px;
	position: absolute;
	right: 5px;
	width: calc(100% - 10px);
}

.greg-macdougall .caption p{
	margin: 0;
}

.report-form{
	border-bottom: 2px solid #c7c7c6;
	border-top: 2px solid #c7c7c6;
	color: #054583;
	margin: 28px 4.6875% 20px 4.6875%;
	padding: 8px 0 20px 0;
	text-align: center;
}

.report-form p{
	font-size: 1.56388889em;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.25754885;
	margin: 0 auto 14px auto;
	max-width: 75%;
}

::placeholder{
	color: #054583;
	font-family: "Merriweather Sans", sans-serif;
}

.report-form form{
	font-family: "Merriweather Sans", sans-serif;	
}

.report-form input{
	background-color: #ebebeb;
	border: none;
	font-size: 1.161875em;
	margin-bottom: 16px;
	padding: 9px 16px;
}

.report-form button{
	background-color: #054583;
	border: none;
	color: #fff;
	font-family: "Merriweather Sans", sans-serif;	
	font-size: 1.04375em;
	margin-top: 0;
	outline: none;
	padding: 7px 18px;
}

.report-form button:hover{
	cursor: pointer;
}

.thank-you{
	padding-top: 20px;
}

.biography h1{
	color: #054583;
	font-size: 1.56388889em;
	letter-spacing: 0.05em;
	line-height: 1.28880995;
	margin: 0;
}

.biography h2{
	color: #054583;
	font-size: 1.56388889em;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: 1.12788632;
	margin: 0 auto 0.25em auto;
}

.biography p{
	font-size: 1.08777778em;
	font-style: italic;
	margin: 0 auto;
	max-width: 82%;
}

.biography a{
	color: #054583;
	font-style: normal;
	font-weight: bold;
	text-decoration: none;
}

.biography a[href^=mailto]{
	display: block;
	font-size: 0.81103166em;
	letter-spacing: 0.05em;
	line-height: 2.15239295;
	margin-top: 0.5em;
}

.biography a[href^=tel]{
	font-size: 1.33656793em;
	letter-spacing: 0.05em;
	line-height: 1.01108139;
}

.biography img{
	display: block;
	margin: 1em auto 0.6em auto;
	max-width: 69.0625%;
}

.biography img + p{
	color: #054583;
	font-size: 0.89111111em;
	font-style: normal;
	letter-spacing: 0.05em;
	line-height: 1.15710723;
	margin: 9px auto;
	max-width: 69.0625%;
}

.hidden-mobile{
	display: none;
}

.testimonials{
	border-top: 2px solid #c7c7c6;
	margin: 18px 4.6875% 40px 4.6875%;
}

.testimonials h2{
	color: #054583;
	font-size: 1.56388889em;
	letter-spacing: 0.05em;
	line-height: 2.48667851;
	margin-bottom: 0;
	margin-top: 0;
}

.testimonials blockquote{
	font-style: italic;
	margin: 0 auto 1.6em auto;
	max-width: 75%;
	position: relative;
}

.testimonials blockquote::before{
	color: #1960ac;
	content: '“';
	display: inline-block;
	font-family: 'Alegreya Sans', sans-serif;
	font-size: 5.14198161em;
	font-weight: bold;
	left: -35px;
	line-height: 0;
	opacity: 0.25;
	position: absolute;
	top: 25px;
}

.testimonials p{
	font-size: 1.08777778em;
	margin: 0 auto;
}

.testimonials cite{
	display: inline-block;
	font-size: 1.08777778em;
	font-weight: 700;
	position: relative;
}

.testimonials cite::before{
	content: "- ";
}

.testimonials cite::after{
	bottom: -15px;
	color: #1960ac;
	content: '”';
	display: inline-block;
	font-family: 'Alegreya Sans', sans-serif;
	font-size: 5.14198161em;
	font-weight: bold;
	line-height: 0;
	opacity: 0.25;
	position: absolute;
}

.nowrap{
	display: block;
	white-space: pre;
}

@media(min-width: 768px){
	.hidden-mobile{
		display: block;
	}
	
	.hidden-desktop{
		display: none;
	}	
}

@media (min-width: 992px){
	body{
		font-size: 16px;
	}
	
	main{
		margin: 0 auto;
		max-width: 85.7%;
	}
	
	.intro{
		max-width: 90%;
	}
	
	.intro::after{
		clear: both;
		content: "";
		display: table;
	}
	
	.intro h2{
		font-size: 2.6871875em;
		margin: 0.5em auto;
	}
	
	.intro > p{
		float: left;
		font-size: 2.1390625em;
		margin-top: 3em;
		width: 50%;
		text-align: right;
	}
	
	.greg-macdougall{
		float: right;
		margin-left: 5%;
		width: 45%;
	}
	
	.greg-macdougall .image-wrapper{
		float: left;
		max-width: 100%;
	}
	
	.greg-macdougall .caption p{
		font-size: 1.1396875em;
	}
	
	.report-form{
		margin-bottom: 1.6em;
		margin-top: 2.78em;
	}
	
	.report-form::after{
		clear: both;
		content: "";
		display: table;
	}
	
	.report-form p{
		font-size: 1.875em;
	}
	
	.report-form p:not(.thank-you){
		background-color: #fff;
		display: inline-block;
		margin-bottom: -28px;
		padding: 0 15px;
		position: relative;
		top: -28px;
	}
	
	.report-form input{
		font-size: 1.313125em;
		width: calc(80% - 32px);
	}
	
	.report-form button{
		font-size: 1.310625em;
		float: right;
		margin-right: 10%;
	}
	
	.biography::after{
		clear: both;
		content: "";
		display: table;
	}
	
	.biography .write-up{
		float: right;
		text-align: left;
		padding-right: 5%;
		width: 50%;
	}
	
	.biography h1{
		font-size: 1.9390625em;
		margin-top: -5px;
	}
	
	.biography h2{
		font-size: 1.5721875em;
	}
	
	.biography p{
		font-size: 1.1521875em;
		margin-left: 0;
		max-width: 100%;
	}
	
	.biography .photograph{
		float: left;
		width: 40%;
	}
	
	.biography img{
		margin: 0 0 0 auto;
		max-width: 80%;
	}
	
	.biography img + p{
		font-size: 1.1965625em;
		margin-right: 0;
		max-width: 80%;
	}
	
	.biography a[href^=mailto],
	.biography a[href^=tel]{
		font-size: 1.3228125em;
		letter-spacing: 0.05em;
		line-height: 1.30663831;
	}
	
	.nowrap{
		display: inline;
	}
	
	.nowrap::before{
		content: "/ ";
	}	
	
	.testimonials{
		margin-top: 30px;
	}
	
	.testimonials h2{
		background-color: #fff;
		display: inline-block;
		font-size: 1.875em;
		margin: 0 auto -1.75em auto;
		padding: 0 15px;
		position: relative;
		top: -38px;
	}
	
	.testimonials blockquote{
		float: left;
		margin-left: 5%;
		text-align: left;
		width: 42.5%;
	}
	
	.testimonials blockquote:nth-of-type(2n){
		float: right;
		margin-left: 0;
	}
	
	.testimonials blockquote::before{
		font-size: 9.7534375em;
		top: 50px;
		left: -80px;
	}
	
	.testimonials p{
		font-size: 1.0096875em;
	}
	
	.testimonials cite{
		float: right;
		font-size: 1.0096875em;
		margin-right: 20%;
		margin-top: 0.2em;
	}
	
	.testimonials cite::after{
		font-size: 9.7534375em;
		bottom: -30px;
	}
}

@media (min-width: 1200px){
	body{
		font-size: 22px;		
	}
	
	.report-form p:not(.thank-you){
		top: -35px;
	}	
	
	.nowrap{
		display: block;
	}
	
	.nowrap::before{
		display: none;
	}	

	.testimonials{
		margin-top: 2.5em;
	}
	
	.testimonials h2{
		margin-bottom: -1.75em;
		top: -55px;
	}
	
	.testimonials blockquote::before{
		left: -90px;
	}	
		
}

@media (min-width: 1590px){
	body{
		font-size: 26px;		
	}
	
	.report-form p:not(.thank-you){
		top: -38px;
	}	

	.testimonials h2{
		margin-bottom: -1.75em;
		top: -60px;
	}
	
	.testimonials blockquote::before{
		left: -110px;
		top: 70px;
	}	
	
	.testimonials cite::after{
		bottom: -45px;
	}	
}

@media (min-width: 1888px){
	body{
		font-size: 32px;		
	}
	
	.intro > p{
		margin-left: 10%;
		margin-top: 50px;
		width: 40%;
	}
	
	.report-form p:not(.thank-you){
		top: -46px;
	}

	.testimonials h2{
		top: -75px;
	}	
	
	.testimonials blockquote::before{
		left: -130px;
		top: 80px;
	}	

	.testimonials cite::after{
		bottom: -55px;
	}		
}