/*
 Theme Name:   Spacious Child Theme
 Theme URI:    http://www.richardmeredith.net
 Description:  A Spacious Child Theme
 Author:       Richard Meredith
 Author URI:   http://www.richardmeredith.net
 Template:     spacious
 Version:      0.3.8
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
*/

body {
	padding:10px 0px;
}

h1,h2,h3,h4,h5
{
	color:inherit;
}

#header-text-nav-container {
	border-bottom: none;
}

.header-image-container
{
	position: relative;
	margin-bottom: -0.5px;	/*to fix the occastional weirdness with image resizing */
}
.header-image-container ul
{
	position: absolute;
	right: 0;
	top: 0;
	height:100%;
	width:100%;
}

.header-image-container ul li
{
	position:absolute;
	right:0;
	
	line-height: 1em;
	margin-top: -0.5em;
	padding-right:60px;
	text-align:right;
	font-size: 21pt;
	color:#eee;
	padding-right:50px;
}
.header-image-container:after
{
	/* pseudo element for image shadow */
	content: '';
	display: block;
	position:absolute;
	left:0;
	top: 0;
	width:100%;
	height:100%;
}

.header-image-container ul li:nth-child(1) {top:12%;}
.header-image-container ul li:nth-child(2) {top:33%; padding-right:65px;}
.header-image-container ul li:nth-child(3) {top:54%; padding-right:57px;}
.header-image-container ul li:nth-child(4) {top:75%;}

.header-image
{
	border: none;
}

.header-image-container:after,
.header-image-container + .header-post-title-container
{
	box-shadow: 0px 12px 10px -10px rgba(0, 0, 0, 0.4) inset;
}

.header-post-title-container,
.footer-socket-wrapper,
.main-small-navigation .menu-main-navigation-container
{
	box-shadow: 0px 12px 10px -10px rgba(0, 0, 0, 0.15) inset;
}

.footer-socket-wrapper {
	padding: 0;
	padding: 15px 15px 10px 15px;
}

.footer-socket-wrapper .copyright{
	color: #666666;
	float: left;
	font-size: 12px;
	text-align: left;
}

.footer-socket-wrapper .social_media_buttons{
	float: right;
	text-align:right;
}

.footer-socket-wrapper .social_media_buttons li
{
	display: inline-block;
	border-radius: 8px;
	width: 36px;
	height: 36px;
	background-color: #fff;
	overflow: hidden;
	margin: 0px 0px 0px 5px;
}

#github_button,
#pinterest_button
{
	border-radius: 50%;
}

.footer-socket-wrapper .social_media_buttons li img{
	width: 100%;
	height: 100%;
}

.footer-socket-wrapper .social_media_buttons li img{
	width: 100%;
	height: 100%;
}

#header-right-section {
	float: right;
}

#header-text-nav-wrap {
	padding-top: 15px;
	padding-bottom: 15px;
}

/* todo - look into why site-title is so convoluted */

#site-title a{
	font-size: 40px;
}

h1#site-title {
	padding-bottom: 0px;
}

h3#site-title {
	padding-bottom: 0px;
}

#site-description {
	font-size: 14px;
	margin-bottom: 0px;
}

#content h2, #content h3 {
	font-weight: bold;
	padding: 0px;
	vertical-align: bottom;	
}
	
#content h2 {
	font-size: 150%;
	margin: 20px 0px 5px 0px;
}

#content h3 {
	font-size: inherit;
	margin: 20px 0px -5px 0px;
}

#content h2+h3{
	margin-top:-5px;
}

#content ul, #content ol{
	margin: 5px 0 15px 0;
}

#content p+ul, #content p+ul{
	margin-top: -10px;
}

#content li img{
	margin: 0;
}

p code{
	display:inline-block;
	font-weight:bold;
	padding-left:0.05em;
	padding-right:0.05em;
	font-size:90%;
}
p>code{
	color:#636363;
}

.header-post-title-container {
	padding: 0;
	font-weight: bold;
	border: 0;
	border-bottom: 1px solid #ddd;
	color: #777;
}

.header-post-title-container .post-title-wrapper {
	padding: 0px;
	float: none;
}

.header-post-title-class{
	font-size:21pt;
	padding: 10px 0;
	font-weight:bold;
}

span.header-post-title-class
{
	display: block;
	padding: 15px 25px;
	font-size: 16pt;
	font-weight: bold;
	font-style: italic;
	text-align: center;
	line-height: normal;
}

#main
{
	padding: 15px 0 10px 0;
}

#main #content .entry-content h2:first-child,
#main #content .entry-content h3:first-child,
#main #content .entry-content h4:first-child
{
	margin-top: 0;
}

#content ul.taxonomy-list,
ul.taxonomy-list {
	display: block;
	text-align: inherit;
	margin: 0;
	padding:0;
}

ul.taxonomy-list li{
	display : inline-block;
	margin: 5px 5px;
	font-weight: bold;
	font-size: 12pt;
}

ul.taxonomy-list li a,
ul.taxonomy-list li span{
	display: inline-block;
	padding: 4px 6px;
	border-radius: 8px;

	border: 1px solid #eee;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.05) inset;
	color : #aaaaaa;
}

ul.taxonomy-list li a:hover{
	border: 1px solid #ccc;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.08) inset;
	color: #888;
}

ul.taxonomy-list li a.selected_tag
{
	padding: 8px, 10px;
	border: 1px solid #eee;
	color: #8224e3;
	box-shadow: 0 0 30px rgba(130, 36, 227, 0.1) inset;
}

ul.taxonomy-list li a.selected_tag:hover{
	color: #888;
}

ul.taxonomy-list li a:focus,
ul.taxonomy-list li a.selected_tag:focus{
	border: 1px solid #eee;	
	box-shadow: 0 0 30px rgba(130, 36, 227, 0.15) inset;
	color: #ccc;
}

.portfolio-filters-wrapper
{
	padding: 5px 10px;
	text-align: center;
}

p.portfolio-filters-description
{
	margin: 10px 0px 15px 0px;
}

.portfolio-page-taxonomy-wrapper
{
	text-align: left;
	margin: 10px 0 0 0;
}
.portfolio-page-taxonomy-wrapper ul
{
	display: inline;
}

#content article.jetpack-portfolio,
#content article.page,
#content article.post,
.single #content article.post
{
	margin: 0;
	padding: 0;
	margin-bottom:1em;
} 

#content article.jetpack-portfolio h2.entry-title{margin-top:0px;}
#content article.jetpack-portfolio{	margin:10px 0 20px 0;}

h2.entry-title
{
	font-size: 22pt;
	padding: 0;
}

h2.entry-title .entry-date
{
	display:block;
	float:right;
}

a.subtle-link      {color: inherit;}
a.subtle-link:hover{color: #8224e3;}
a.subtle-link:focus{color: #d8f;}

a.back-to:before
{
	-webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
	font-family: 'Genericons';
	content: '\f467  ';
}

.post .entry-meta
{
	margin-bottom: 0;
	border-width: 0;
	margin-top: 25px;
}

.pagination
{
	margin-top: 30px;
	text-align: center;
}

figure.post-featured-image img
{
	padding: 0;
	margin: 0;
	margin-bottom: 0;
}

#content .post
{
	padding: 0;
}

#content .post-archive
{
	border: 1px solid #ddd;
	margin-bottom: 30px;
}
#content article:last-child .post-archive
{
	margin-bottom: 0;
}

#content .post-archive figure
{
	padding: 10px;
}
#content .post-archive h2
{
	margin: 0;
	padding: 0 10px;
}

h2 .entry-date-container
{
	display:block;
	float:right;
	padding: 0;
	font-weight: normal;
	font-size:14px;
}

#content .post-archive p
{
	margin: 0 0 10px 0;
	padding: 0 10px;
	clear: both;
}

#content .post-archive .entry-meta
{
	margin:0 0 0 0;
	text-align:left;
	padding: 0px;
	border-top: 1px solid #ddd;
	background-color: #f8f8f8;
	padding:0px 5px;
}

#content .post-archive .entry-meta span
{
	display: inline-block;
	float: none;
	padding: 5px;
}

.post .entry-meta .by-author:before,
.post .entry-meta .date:before,
.post .entry-meta .category:before,
.post .entry-meta .tag:before,
.post .entry-meta .comments:before,
.post .entry-meta .edit-link:before, 
.main-small-navigation ul.nav-menu li.current-menu-item a:before
{
	display: inline-block;
	-webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
	font: normal 18px/1 'Genericons';
	vertical-align: top;
}

.post .entry-meta .by-author:before { content: '\f304'; }
.post .entry-meta .date:before { content: '\f307'; }
.post .entry-meta .category:before { content: '\f301'; }
.post .entry-meta .tag:before { content: '\f302'; }
.post .entry-meta .comments:before { content: '\f300'; }
.post .entry-meta .edit-link:before { 	content: '\f411'; }

#content .post-archive .entry-meta span.read-more-link
{
	float: right;
	background: none;
	color: inherit;
}
#content .post-archive .entry-meta span.read-more-link:hover
{
	-webkit-box-shadow:none;
	-moz-box-shadow:none;
	box-shadow:none;
	color:#8224e3;
}

#content .post-archive .entry-meta span.read-more-link a
{
	color:inherit;
}

.rtm_feature_panel_wrapper
{
	margin: 0px -10px 25px -10px;
	font-size: 18pt;
}

.rtm_feature_panel_container
{
	display: table;
	width: 100%;
	text-align: center;
}
.rtm_feature_panel
{
	display: table-cell;
	position: relative;
	padding: 0 10px;
}

.rtm_container_of_1 > .rtm_feature_panel{ height: 400px;}
.rtm_container_of_2 > .rtm_feature_panel{ height: 250px;}
.rtm_container_of_3 > .rtm_feature_panel{ height: 200px;}
.rtm_container_of_4 > .rtm_feature_panel{ height: 155px;}
.rtm_container_of_5 > .rtm_feature_panel{ height: 120px;}

.rtm_feature_panel a
{
	display: block;
	position: relative;
	height: 100%;
	overflow: hidden;
}

.rtm_feature_panel img
{
    position: absolute;
	left: 0px;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}

.rtm_feature_panel span
{
	position: absolute;
	width: 100%;
	left: 0;
	bottom: 0%;
	z-index: 1;
	color: white;
	font-weight: bold;
	text-shadow: 0 0 1.5em black;
	opacity: 0;
	transform: scale(0.85);
	filter: blur(15px);
}

.rtm_container_of_1 > .rtm_feature_panel span {font-size: 200%; line-height:1.2em;}
.rtm_container_of_2 > .rtm_feature_panel span {font-size: 130%; line-height:1.2em;}
.rtm_container_of_3 > .rtm_feature_panel span {font-size: 100%; line-height:1.2em;}
.rtm_container_of_4 > .rtm_feature_panel span {font-size: 80%; line-height:1.2em;}
.rtm_container_of_5 > .rtm_feature_panel span {font-size: 75%; line-height:1.2em;}

.rtm_feature_panel img,
.rtm_feature_panel span
{
	transition: filter 0.15s , opacity 0.15s, transform 0.15s, bottom 0.15s;
}

.rtm_feature_panel a:hover img,
.rtm_feature_panel a:hover span
{
	transition: filter 0.15s , opacity 0.4s, transform 0.2s, bottom 0.15s;
	transition-timing-function: ease-out;
}

.rtm_feature_panel a:hover img.main,
.rtm_feature_panel a:focus img.main
{
	opacity: 0.9;
	transform: scale(1.05);
	filter: blur(1.5px);
}

.rtm_feature_panel a:hover span,
.rtm_feature_panel a:focus span
{
	opacity: 1;
	transform: scale(1.0, 1.0);
	filter: none;
	bottom: 10%
}

.rtm_feature_panel a:focus span,
.rtm_feature_panel a:focus img.main
{
	transition: filter 0.075s , opacity 0.075s, transform 0.075s;
}

.rtm_feature_panel a:focus img.main
{
	transform: scale(1);
	opacity: 0.8;
}

.rtm_feature_panel a:focus span
{
	transform: scale(1.025);
	text-shadow: 0 0 7px #8224e3;
}

@media screen and (max-width: 768px) {

	body {
		padding: 0;
	}
	#page{
		margin:0;
		width:100%;
	}

	#header-text-nav-wrap {
		padding: 0;
	}
	.inner-wrap {
		width: 100%;
		margin: 0;
	}

	#header-text {
		margin: 0;
		padding: 5px 0px 10px 10px;
		text-align:left;
	}
	
	#site-description {
		padding-bottom: 0;
		margin-bottom: 10px;
	}
	#header-text-nav-container
	{
		position:relative;
	}
	#header-right-section {
		max-width: 50%;
		position:absolute;
		right:0;
		height:100%;
	}
	#header-left-section
	{
		margin-right: 50px;
	}
	
	.header-post-title-class{
		font-size: 18pt;
		padding: 4px 0;
		font-weight: normal;
	}
	
	.site-header .menu-toggle
	{
		text-align: right;
		position:absolute;
		right:0;
		height:100%;
		padding: 0px;
		min-width: 3em;
	}
	.site-header .menu-toggle span
	{
		display:none;
	}

	.site-header .menu-toggle:before {
		content: none;
		margin: 0;
	}
	.site-header .menu-toggle:after {
	  content: '\2261';
	  font-size: 150%;
	  position: absolute;
	  right:20px;
	  top:50%;
	  line-height: 1em;
	  margin-top: -0.5em;
	}
	
	.site-header .main-small-navigation .menu-toggle:after
	{
		color: #aaa;
	}	
	.main-small-navigation .menu-main-navigation-container
	{
		position:absolute;
		right:0;
		top:100%;
		z-index:1000;
		min-width:55vw;
		background-color: white;
		border: 1px solid #ddd;
		border-right:none;
		border-top:none;
	}
	
	.main-navigation ul.nav-menu li.menu-item {
		padding: 0 0 0 0;
	}
	.main-small-navigation a
	{
		color:inherit;
	}

	.main-small-navigation a:hover
	{
		color:white;
	}
	
	#primary, #secondary, .wide-978 #primary, .narrow-978 #primary {
		width: auto;
		margin: 0 10px;
	}

	.header-post-title-container .inner-wrap {
		width: auto;
		margin: 0px 10px;
	}
	
	.footer-socket-wrapper{
		padding-left: 10px;
		padding-right: 10px;
	}
	
	
	#site-title a{
		font-size: 20pt;
		line-height:normal;
	}

	#site-description {
		font-size: 8pt;
		margin-bottom: 0px;
		line-height:normal;
	}
	
	.footer-socket-wrapper .copyright{
		float: none;
		text-align: center;
	}

	.footer-socket-wrapper .social_media_buttons{
		float: none;
		text-align:center;
		margin: 15px 0 0 0;
	}
	
	.footer-socket-wrapper .social_media_buttons li{
		margin: 0 5px;	
	}
		
	article.jetpack-portfolio
	{
		margin: 0;
		padding: 5px 0;
	} 
	
	#content article.jetpack-portfolio
	{
		margin:5px 0;
	}
	
	#content article h2.entry-title
	{
		font-weight:normal;
		margin-bottom: 0;
		font-size:16pt;
	}
	
	ul.taxonomy-list{
		display: inline;
	}
	ul.taxonomy-list li{
		display : inline-block;
		margin: 2px 2px;
		font-weight: normal;
		font-size: 80%;
	}

	.main-navigation,
	.main-small-navigation{
		padding: 0px;
		margin: 0px;
		background: none;
		color: #555;
	}
	
	.main-navigation h3.menu-toggle,
	.main-small-navigation h3.menu-toggle,
	.main-navigation h3.menu-toggle:hover,
	.main-small-navigation h3.menu-toggle:hover
	{
		background-color: inherit;
		color: inherit;
	}
	
	.main-small-navigation ul
	{
		text-align: right;
		font-size: 12pt;
		font-weight: bold;
		color: inherit;
	}

	.main-small-navigation ul.nav-menu a {
		padding: 10px 25px;
	}

	/*.main-navigation h3.menu-toggle:hover,*/
	/*.main-small-navigation h3.menu-toggle:hover,*/
	.main-small-navigation ul.nav-menu a:hover{
		background-color: #8224e3;
	}
	
	.main-small-navigation ul.nav-menu li,
	.main-small-navigation ul.nav-menu li.current-menu-item
	{
		background-color: inherit;
		line-height:normal;
	}
	
	.main-small-navigation ul.nav-menu li.current-menu-item a:before
	{
		font: normal 18px/1 'Genericons';
		vertical-align: bottom;
		content: '\f452';
	}
	
	.rtm_feature_panel_wrapper
	{
		margin: 0 -1vw 10px -1vw;
	}
	.rtm_feature_panel
	{
		padding: 0 1vw;
		font-size: 3.1vw;
	}
	.rtm_container_of_1 > .rtm_feature_panel { height:50vw; }
	.rtm_container_of_2 > .rtm_feature_panel { height:33vw; }
	.rtm_container_of_3 > .rtm_feature_panel { height:24vw; }
	.rtm_container_of_4 > .rtm_feature_panel { height:19vw; }
	.rtm_container_of_5 > .rtm_feature_panel { height:16.5vw; }
	
	.header-image-container ul li{ font-size: 4.0vw;}
	.header-image-container ul li:nth-child(1) {padding-right: 6vw;}
	.header-image-container ul li:nth-child(2) {padding-right: 6vw;}
	.header-image-container ul li:nth-child(3) {padding-right: 6vw;}
	.header-image-container ul li:nth-child(4) {padding-right: 6vw;}
	
	span.header-post-title-class
	{
		padding: 10px 5% ;
		font-size:12pt;
	}
	
}

/* youtube embed responsive hacks */

.youtube-embed-container{
	position: relative; 
	padding-bottom: 56.25%; /* 16:9 resloution */
	height: 0; 
	overflow: hidden;
	margin: 10px 0 25px 0;
}

.youtube-embed-container iframe, 
.youtube-embed-container object, 
.youtube-embed-container embed,
.youtube-embed-container video{
	position: absolute;
	top: 0; 
	left: 0; 
	width: 100%; 
	height: 100%;
}

/* Hacks for styling code from Syntax highlighter plugin */
.syntaxhighlighter div.line,
.syntaxhighlighter div code,
.syntaxhighlighter td.gutter div
{
	  font-size: 10pt !important;
	  line-height: 10pt !important;
}
code
{
	white-space: nowrap !important;
}


/* extra narrow page width hacks */

.narrow-978 #page {
    max-width: 760px;
}
.narrow-978 .inner-wrap {
    max-width: 725px;
}