/**
 * Minimal Grid System.
 *
 * Usage:
 *
 *     <div class="row">
 *         <div class="unit-75">
 *             <h1>Body</h1>
 *         </div>
 *         <div class="unit-25">
 *             <h2>Sidebar</h2>
 *         </div>
 *     </div>
 *
 * Updates:
 *
 * https://gist.github.com/jbroadway/5d027fddfadabb56aff0
 */

*, *:after, *:before {
	margin: 0;
	padding: 0;
	outline: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* attribute selector */
[class*='unit-'] {
	float: left;
	padding: 10px;
}

/* floats last '.unit-' to the right */
[class*='unit-']:last-of-type {
	padding-right: 10px;
	float: right;
}

/* clearfix */
.row:after, .row-variable:after {
	content: "";
	display: table;
	clear: both;
}

/* widths */
.unit-100 { width: 100%; }
.unit-90  { width: 90%; }
.unit-80  { width: 80%; }
.unit-75  { width: 75%; }
.unit-70  { width: 70%; }
.unit-66  { width: 66.66%; }
.unit-60  { width: 60%; }
.unit-50  { width: 50%; }
.unit-40  { width: 40%; }
.unit-33  { width: 33.33%; }
.unit-30  { width: 30%; }
.unit-25  { width: 25%; }
.unit-20  { width: 20%; }
.unit-10  { width: 10%; }

/* remove padding */
.no-padding { padding: 0; }

/* desktop */
@media (min-width: 992px) {
	.row {
		width: 992px;
		margin: 0px auto 0px auto;
	}
}

@media (max-width: 991px) {
	.row { width: 100%; }
}

/* tablets */
@media (max-width: 768px) {
	.unit-10, .unit-20, .unit-25, .unit-30, .unit-33, .unit-40, .unit-50 {
		width: 50%;
		max-width 50%;
	}
	
	.unit-60, .unit-66, .unit-70, .unit-75, .unit-80, .unit-90, .unit-100 {
		width: 100%;
	}
}

/* mobile */
@media (max-width: 480px) {
	.unit-20, .unit-25, .unit-33, .unit-40, .unit-50,
	.unit-60, .unit-66, .unit-75, .unit-80, .unit-100 {
		width: 100%;
	}
}

/* bottom margins for block elements */
p, h1, h2, h3, h4, h5, h6, ul, ol {
	margin-bottom: 0.8em;
}

ul, ol {
	margin-left: 16px;
}

img {
	border: 0;
	max-width: 95%;
}

html, body {
	width: 100% !important;
	max-width: 100% !important;
	overflow-x: hidden !important;
}

/**
 * Custom Styles Below
 */

body {
	background-color: #eee;
	color: #414042;
	font-size: 15px;
	font-family: 'Oxygen', sans-serif;
	margin: 0;
	padding: 0;
	line-height: 23px;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Dancing Script', cursive;
	/*text-transform: uppercase;*/
	margin-bottom: 0.6em;
	line-height: 1.2em;
}

h1 { font-size: 3.0em; }
h2 { font-size: 2.7em; }
h3 { font-size: 2.4em; }
h4 { font-size: 1.1em; font-family: Oxygen, sans-serif; font-weight: normal; text-transform: uppercase; }

p, ul, ol {
	margin-bottom: 0.8em;
}

a {
	text-decoration: none;
	color: #a64;
}

a:hover {
	text-decoration: underline;
	color: #842;
}

img {
	max-width: 100%;
}

hr {
	border: 0;
	border-top: 1px solid #ddd;
}

blockquote {
	margin-left: 1.5em;
	margin-right: 2em;
	padding-left: 0;
	color: #777;
	font-style: italic;
	margin-bottom: 0.8em;
}

.outer {
	background-color: #fff;
	/*border-top: 3px solid #414042;*/
	position: relative;
}

#header {
	padding-top: 20px;
	position: relative;
}

	#header>div {
		padding-bottom: 0;
	}
	
	#logo h1 {
		margin-bottom: 0.2em;
	}
	
		#logo h1 a {
			text-decoration: none;
		}

	#navbar {
		position: absolute;
		right: 0;
		bottom: 0;
		text-align: right;
	}

	#navbar ul {
		list-style-type: none;
		margin-left: 0;
		padding-left: 0;
		margin-bottom: 0;
	}

	#navbar li {
		list-style-type: none;
		margin-left: 0;
		padding-left: 0;
		display: inline;
	}

	#navbar ul a {
		/*font-family: Helvetica, Arial, sans-serif;*/
		font-size: 1.25em;
		text-transform: uppercase;
		text-decoration: none;
		display: inline-block;
		padding-left: 10px;
		padding-right: 10px;
	}
	
	#navbar ul li:last-of-type a {
		padding-right: 0;
	}

#index-photo {
	padding: 0;
	/*border-top: 5px solid #414042;*/
	margin-top: 10px;
	margin-bottom: 10px;
}

#body {
	/*border-top: 5px solid #414042;*/
}

	#content {
		padding: 25px 25px 20px 10px;
	}

#sidebar {
	/*float: right;*/
	padding: 20px;
	/*width: 25%;*/
	/*background: #f2f3f3;*/
}

	#sidebar h3 {
		/*text-align: center;*/
		font-size: 2em;
		padding-top: 12px;
	}
	
	#sidebar ul,
	#sidebar li {
		list-style-type: none;
		margin-left: 0;
		padding-left: 0;
		margin-bottom: 0.8em;
	}
	
	.blog-post {
		/*border-top: 3px solid #414042;*/
		padding-top: 20px;
	}
	
		.blog-post-full,
		.blog-post:first-child {
			padding-top: 0px !important;
			margin-top: -10px;
		}
	
		.blog-post h3 {
			/*font-size: 1.5em;*/
			margin-bottom: 8px;
		}

			.blog-info,
			.blog-tags,
			.blog-comments {
				font-size: 0.8em;
				color: #999;
			}
			
			.blog-by {
				display: none;
			}

			.blog-post h3 a {
				text-decoration: none;
			}
			
			.blog-tags {
				margin-top: 12px;
			}
			
			.blog-tags a {
				display: inline-block;
				margin-right: 6px;
			}

			.blog-comments a,
			.blog-comments div,
			.blog-comments iframe {
				display: inline-block;
			}

			iframe.twitter-share-button {
				margin-bottom: -7px;
				margin-left: 5px;
			}
	
			#___plusone_0 iframe {
				margin-bottom: -2px;
			}
		
		.blog-footer {
			margin-top: 15px;
			/*background-color: #f5f5f5;
			padding: 10px 10px 3px 15px;*/
			padding: 10px 0px 3px 0px;
		}
		
		.blog-related,
		.blog-next,
		.blog-previous {
			padding-top: 1.2em;
		}
		
		.blog-previous {
			margin-bottom: 0;
		}
		
		.blog-related .item-info h4 {
			font-family: Oxygen, sans-serif;
			font-weight: normal;
			text-transform: none;
			font-size: 1em;
		}

#footer {
	background-color: #eee;
	color: #414042;
	text-align: center;
	padding-bottom: 50px;
}

	#footer ul {
		list-style-type: none;
		margin-left: 0;
		padding: 15px 0px 15px 0px;
	}

	#footer li {
		list-style-type: none;
		margin-left: 0;
		padding-left: 0;
		display: inline;
	}

	#footer ul a {
		color: #414042;
		text-decoration: none;
		display: inline-block;
		padding-left: 10px;
		padding-right: 10px;
	}
	
	#footer a:hover {
		color: #222;
	}

input[type=text],
input[type=email],
input[type=password],
textarea {
	padding: 5px;
	border: 0;
	font-size: 0.8em;
	background-color: #f5f5f5;
	border: 1px solid #aaa;
	-webkit-appearance: none;
	-moz-appearance: none;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
}

input[type=submit],
button {
	background-color: #77787a;
	color: #fff;
	text-transform: uppercase;
	font-size: 0.8em;
	padding: 5px 7px 5px 7px;
	border: 1px solid #77787a;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
}

@media (max-width: 991px) {
	#index-photo img {
		height: auto !important;
	}
}

@media (max-width: 768px) {
	#courses-course-menu,
	#sidebar {
		clear: both;
		width: 100%;
	}
	
	.unit-33:last-of-type {
		float: left;
	}
}

@media (max-width: 480px) {
	#header {
		padding-top: 10px;
	}

	#logo {
		width: 60%;
		position: absolute;
		left: 0;
		top: 5px;
	}
	
		#logo img {
			height: auto !important;
		}
	
	#navbar {
		position: relative;
		float: right;
	}

	#navbar ul a {
		width: 100%;
		text-align: right;
		padding-right: 0px;
	}
	
	#content {
		padding-left: 25px;
	}
	
	.blog-post img,
	.blog-post iframe,
	.blog-post video {
		width: 100%;
	}

	h1 { font-size: 1.6em; }
	h2 { font-size: 1.6em; }
	h3 { font-size: 1.4em; }

	#header h1 {
		font-size: 3.0em;
	}
}

video {
  width: 100%    !important;
  height: auto   !important;
}

#content img {
	max-width: 100%;
	height: auto;
}

/* = WP image styling bullshit
------------------------------ */

.aligncenter,
.aligncenter div{
    display: block;
    margin: 0 auto 20px auto;
}

.alignright {
    float:right;
    margin: 0 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 0 20px 20px 0;
}

.aligncenter {
    display: block;
    margin: 0 auto 20px auto;
}

.alignright a img{
    float: right;
    margin: 0 0 20px 20px;
}

.alignnone a img{
    margin: 0 20px 20px 0;
}

.alignleft a img{
    float: left;
    margin: 0 20px 20px 0;
}

.aligncenter a img{
    display: block;
    margin-left: auto;
    margin-right: auto
}
