* {
	font-family: Calibri,Tahoma,Arial,Helvetica,sans-serif;
	font-size: inherit;
}

html {
	background: url(/img/HTMLBackground.jpg);
	padding: 0 0 2em 0;
	font-size: 2vw;
}

body {
	margin: 7vw auto;
	width: 75%;
	position: relative;
}

a[rel='me'] {
	background-color: transparent;
	padding: 0;
	position: absolute;
	top: -5vw;
	right: -5vw;
	left: auto;
	z-index: 5;
}
a[rel='me']:first-child {
	left: -5vw;
	right: auto;
}

body > nav {
		display: flex;
		align-items: flex-start;
		align-self: flex-start;
		align-content: flex-start;
		justify-content: center;
		justify-self: center;
		justify-items: center;
		text-align: center;
		width: 100%;
	}

	body > nav.top {
		top: -7vw;
		position: absolute;
		left: 0;
	}

	body > nav.bottom {
		position: relative;
		top: -1em;
		white-space: nowrap;
	}

	body > nav > a {
		display: block;
		flex-basis: auto;
		background-color: #000;
		margin: 0 0.5vw;
		text-align: center;
		color: #fff;
		text-decoration: none;
		font-size: 66%;
		font-weight: bold;
		padding: 2vw 1vw 1vw 1vw;
		cursor: pointer;
	}

	body > nav > a > span {
		height: 3vw;
		font-size: 2.25vw;
		display: block;
		text-align: center;
		margin: 0 auto;
	}

body > article + footer {
	margin-top: 0;
	position: relative;
	top: -1em;
	border: none;
	min-height: 2em;
}

header {
	display: block;
}

article {
	display: block;
	margin: 1em auto;
	background: #fff;
	padding: 1em;
	box-shadow: 0 0 1em #000;
}

	article > aside {
		display: block;
		width: 30%;
		float: right;
		padding: 1%;
		background-color: #def;
		border-top: 5px solid #000;
		border-bottom: 1px solid #000;
		margin-left: 1%;
	}

h1 {
	text-align: center;
	color: #fff;
	text-shadow: 0 0 1px #000,0 0 0.5em #000;
	padding-top: 0.67em;
	font-size: 275%;
}

	h1 > .subtitle {
		font-size: 66%;
		display: block;
		text-align: center;
	}

h2 {
	font-size: 200%;
}

h3 {
	font-size: 150%;
}

h4 {
	font-size: 125%;
}

h5 {
	font-size: 125%;
	text-transform: uppercase;
	margin: 0;
	padding: 0;
}

p {
	font-size: 120%;
}

abbr[title], a {
	border-bottom: none !important;
	font-size: inherit;
	text-decoration: none;
}

body#intro p {
	font-size: 150%;
}

#TSANoGuns {
	width: 250px;
	float: right;
	max-width:50%;
}

#briefcase-xray {
	width: 100%;
	display: block;
}

body > footer {
	border-top: 1px solid #999;
	margin: 2em 0 4em 0;
	display: block;
}

	body > footer > p {
		text-align: center;
		font-size: 75%;
	}

	body > footer > h4 {
		text-align: center;
		text-transform: none;
		padding: 0;
	}

	body > footer > h5 {
		text-align: center;
		text-transform: none;
		padding-top: 1em;
	}

blockquote {
	position: relative;
	padding: 1em;
}

	blockquote + blockquote {
		border-top: 1px solid #cfcfdf;
		padding-top: 2em;
		margin-top: 2em;
	}

	blockquote:before {
		position: absolute;
		top: 0.5em;
		right: 100%;
		content: '“';
		font-size: 300%;
		color: rgba(0,0,0,.5);
	}

	blockquote:after {
		position: absolute;
		bottom: 1em;
		left: 100%;
		content: '”';
		font-size: 300%;
		color: rgba(0,0,0,.5);
	}

footer > blockquote:before {
	top: 0;
}

footer > blockquote:after {
	bottom: 0;
}

footer > blockquote {
	font-style: italic;
	font-size: 110%;
	margin-left: 6em;
	margin-right: 6em;
}

	footer > blockquote > cite {
		font-style: italic;
		font-size: 95%;
	}

blockquote > cite {
	font-size: 150%;
	text-align: left;
	text-indent: 75%;
	color: #666;
	display: block;
	text-align: right;
}

blockquote.federal-regulations {
	margin-left: 5em;
	margin-right: 5em;
	border-top: 2px solid #999;
	border-bottom: 1px solid #999;
	background: #f0f0e9;
	padding: 0 1em;
}

	blockquote.federal-regulations:before {
		position: absolute;
		top: 0;
		bottom: auto;
		right: 105%;
		content: '“';
		font-size: 300%;
		color: rgba(0,0,0,.5);
	}

	blockquote.federal-regulations:after {
		position: absolute;
		top: auto;
		bottom: 0;
		left: 105%;
		content: '”';
		font-size: 300%;
		color: rgba(0,0,0,.5);
	}

html.lt-ie9 article {
	filter: progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=0,strength=5),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=45,strength=2),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=90,strength=5),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=135,strength=5),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=180,strength=10),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=225,strength=5),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=270,strength=5),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=315,strength=2);
}

html.lt-ie9 header > h1 {
	zoom: 1;
	color: #000;
	background-color: #fff;
	filter: progid:DXImageTransform.Microsoft.Chroma(color=#fff),progid:DXImageTransform.Microsoft.Blur(pixelradius=6);
}

	html.lt-ie9 header > h1 > span.subtitle {
		display: none;
	}

	html.lt-ie9 header > h1:before {
		content: attr(data-innertext);
		position: absolute;
		color: #fff;
		margin-left: 6px;
		margin-top: 6px;
	}

span, strong, em, b {
	font-size: inherit;
}

object#sample-nov {
	width: 30.6vw;
	float: right;
	box-shadow: 0 0 .5em #000;
	display: block;
	margin: 0 4em 2em 1em;
	height: 42vw;
	font-size: 20%;
	color: transparent;
	background-image: url(../img/sample-tsa-notice-of-violation.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}

	object#sample-nov > h3, object#sample-nov > p {
		margin: 0.5em 2em;
	}

html.lt-ie9 #sample-nov {
	filter: progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=0,strength=3),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=45,strength=1),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=90,strength=3),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=135,strength=3),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=180,strength=5),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=225,strength=3),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=270,strength=3),progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=315,strength=1);
}

#portrait {
	float: right;
	border: 1px solid #000;
	margin: 0 0 1em 1em;
}

form > p > input, form > p > textarea {
	width: 100%;
}

@media (min-width: 1200px) {
	html {
		font-size: 1.66vw;
	}
}

@media (orientation: portrait) {

	body {
		margin-top: 6vw;
		width: 90%;
	}

	body > nav > a,
	body > a.nav.top,
	article + footer > a.nav,
	body > article + footer > a.nav {
		line-height: 0;
		color: black;
	}

	body > nav > a > span {
		color: white;
		line-height: 1;
		height: 5vw;
		font-size: 5vw;
		position: relative;
		z-index: 1;
	}

	body > a.nav.top > img, article + footer > a.nav > img,
	body > article + footer > a.nav > img {
		height: 4vw;
	}

	a.nav.tel, 
	a.nav.eml, 
	a.nav.hom, 
	a.nav.fb, 
	a.nav.abu {
		width: 6vw;
	}

	a.nav.tel {
		right: 0;
	}

	a.nav.eml {
		right: 10vw;
	}
	
	a.nav.hom {
		left: 0;
	}

	a.nav.fb {
		left: 10vw;
	}

	a.nav.abu {
		left: 20vw;
	}

	h1 {
		color: #000;
		text-shadow: none;
	}

	h1 > .subtitle {
		font-size: 75%;
	}
}
