@import url('https://fonts.googleapis.com/css?family=Homemade+Apple');

html {
	box-sizing: border-box;
	line-height: 1.2;
}

*, *:before, *:after {
	box-sizing: inherit;
}

/* copied from Bootstrap, plus colors */
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	border: 0;
	background-color: white;
	color: #00E;
}

/* "skip to" link */
body > a.sr-only:hover, body > a.sr-only:focus {
	width: auto;
	height: auto;
	padding: .2em;
	margin: .5em;
	overflow: auto;
	clip: inherit;
	border: 2px dotted #00E;
}

body {
	background-color: #20300D;
	color: #DDD;
	margin: 0 auto;
	max-width: 60em;
}

a {
	color: #DCFFB8;
}

h1, h2, h3 {
	clear: both;
	font-family: serif;
}

ul {
	padding: 0;
}

li {
	list-style: none;
	padding: 0.5em 0;
}

header, div.row, .home {
	background-color: #2F4111;
}

header {
	background-color: #4F6C2D;
	background: url('../img/fairy-glen-480w-1x.jpg') no-repeat;
	min-height: 64px;
	/*padding-bottom: 1.5em;*/
	width: 100%;
}

/* responsive background image */
@media (-webkit-min-device-pixel-ratio: 1.5), 
	   (min-resolution: 144dpi)  {
	header {
		background: url('../img/fairy-glen-480w-2x.jpg') no-repeat;
		background-size: 480px 96px;
	}
}

@media (min-width: 30.01em) {
	header {
		background: url('../img/fairy-glen-960w-1x.jpg') no-repeat;
		background-size: 960px 64px;
	}
}

@media (min-width: 30.01em) and (-webkit-min-device-pixel-ratio: 1.5), 
	   (min-width: 30.01em) and (min-resolution: 144dpi) {
	header {
		background: url('../img/fairy-glen-960w-2x.jpg') no-repeat;
		background-size: 960px 64px;
	}
}

header p {
	color: #DDD;
	font-family: 'Homemade Apple', 'Lucida Handwriting', 'Apple Chancery', cursive;
	font-size: 1.5rem;
	margin-top: 0;
	margin-bottom: 0;
	margin: 0 0;
	padding-top: 1em;
	text-align: center;
	text-shadow: black 1px 1px 2px;
}

header nav li {
	text-align: center;
}

header nav ul li:hover, header nav ul li:focus {
	color: #EEE;
	background-color: #6E7F5C;
}

header nav ul li:hover a, header nav ul li:focus a {
	color: #DDD;
}

main {
	max-width: 60em;
	outline: 0;
}

figure {
	margin: 0 auto;
}

figure:not(.video) {
	margin-bottom: -2em;
	max-width: 19em;
}

figcaption {
	background-color: rgb(0,0,0);
	background-color: rgba(0,0,0, .5);
	border-radius: 3px;
	color: #DDD;
	display: inline-block;
	padding: .5em;
	position: relative;
	top: -3em;
	left: .3em;
	font-family: serif;
	font-style: italic;
	text-shadow: black 1px 1px 2px;
}

img {
	border: 2px solid black;
	border-radius: 3px;
	width: 100%;
}

video {
	width: 98%;
}


table {
	clear: both;
}

caption {
	font-family: Arial, sans-serif;
	font-size: 1.2rem;
	font-weight: bold;
}

th, td {
	vertical-align: top;
}

th {
	text-align: left;
	font-family: Arial, sans-serif;
	padding-right: .5em;
	vertical-align: bottom;
}

th:first-child {
	max-width: 6em;
}

th[colspan] {
	padding-left: .5em;
	border-top: 2px solid #4F6C2D;
}

.home {
	padding-top: .1em;
}

.home li {
	text-align: center;
}

.home img {
	width: initial;
}

.home a img:focus, a img:hover {
	opacity: .7;
}

.home a span {
	background-color: rgb(221,221,221);
	background-color: rgba(221,221,221, .7);
	border-top: 2px solid black;
	border-left: 2px solid black;
	border-top-left-radius: 3px;
	border-bottom-right-radius: 3px;
	color: black;
	padding: .5em;
	position: absolute;
	text-decoration: underline;
	text-shadow: white 1px 1px 2px;
	z-index: 10;
}

.home a span:focus, .home a span:hover {
	background-color: rgb(0,0,0);
	background-color: rgba(0,0,0, .5);
	color: #DDD;
	text-shadow: black 1px 1px 2px;
}

/* stack columns on home page in portrait layout */
@media (orientation: portrait) {
	.home .col-4 {
		width: 100%;
	}
}
/* Grid system*/
.row {
	/*outline: 1px solid green;*/
	padding: 0;
	position: relative;
}
/* https://css-tricks.com/snippets/css/clear-fix/ */
.row::after {
	content: "";
	display: table;
	clear: both;
}

[class*='col-'] {
	float: left;
	padding-left: 1%;
	min-height: 1px; /* hack for IE */
	width: 100%;
}

/* wide enough to have images beside text */
@media (min-width: 26em) {
	figure {
		margin: 0 0.5em;
	}

	figure:not(.video) {
		float: left;
	}

	.col-1, .col-2, .col-3, .col-4 {
		width: 50%;
	}

	.col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {
		width: 100%;
	}
}

/* smaller images relative to text */
@media (min-width: 26em) and (max-width: 40em) {
	figure:not(.video) {
		max-width: 12.75em;
	}

}

/* medium */
@media (min-width: 42em) {
	.col-1, .col-2 {
		width: 16.66%;
	}

	.col-3 {
		width: 25%;
	}

	.col-4 {
		width: 50%;
	}

	.col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {
		width: 100%;
	}
}

/* large */
@media (min-width: 60em) {
	.col-1 {
		width: 8.33%;
	}

	.col-2 {
		width: 16.66%;
	}

	.col-3 {
		width: 25%;
	}

	.col-4 {
		width: 33.33%;
	}

	.col-5 {
		width: 41.66%;
	}

	.col-6 {
		width: 50%;
	}

	.col-7 {
		width: 58.33%;
	}

	.col-8 {
		width: 66.66%;
	}

	.col-9 {
		width: 75%;
	}

	.col-10 {
		width: 83.33%;
	}

	.col-11 {
		width: 91.66%;
	}

	.col-12 {
		width: 100%;
	}
}
