/*!
Theme Name: McBride Charles Ryan
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: mcbride-charles-ryan
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

McBride Charles Ryan is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	font-family: 'Karla', sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

body {
	margin: 0;
	background-color: #F0F5F2;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
	transition: all 0.5s ease;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 16px;
	margin: 0.67em 0;
}
h2 {
	font-size: 16px;
}
h3 {
	font-size: 16px;
	color: #D10F3B;
	font-weight: 400;
}
h4 {
	font-size: 16px;
	font-weight: 400;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
	color: #394351;
	font-family: 'Karla', sans-serif;
	font-size: 13px;
	font-size: 1rem;
	line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
	clear: both;
	margin-top: 0;
	line-height: 1.2em;
}

p {
	margin-top: 0;
	margin-bottom: 1.5em;
	font-size: 14px;
}

dfn, cite, em, i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code, kbd, tt, var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark, ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after {
	/* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul, ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto;
	/* Make sure images are scaled correctly. */
	max-width: 100%;
	/* Adhere to container width. */
}

figure {
	margin: 1em 0;
	/* Extra wide images within figure tags don't overflow the content area. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: #D10F3B;
}

a:visited, a:focus, a:active {
	color: #D10F3B;
}

a:hover {
	color: #000000!important;
	text-decoration: underline;
}

a:focus {
	outline: thin dotted;
}

a:hover, a:active {
	outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
	display: block;
	position: relative;
}

.main-navigation ul {
	display: block;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	z-index: 99999;
}

.main-navigation ul ul ul {
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	float: left;
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
	font-size: 16px;
	color: #394351;
}
.main-navigation a.active, .page-template-page-contact #menu-item-24 a { color: #D10F3B; }

/* Small menu. */
.main-navigation.toggled ul {
	display: block;
}


.main-navigation ul ul, .main-navigation ul li:hover ul.clicked {
		float: none;
		position: relative;
		top: 0;
		left: 0;
		height: 0;
		overflow: hidden;
		opacity: 0;
		padding: 0;
		transition: all .5s ease-in-out;
		-moz-transition: all .5s ease-in-out;
		-webkit-transition: all .5s ease-in-out;
}
.main-navigation ul ul a { padding: 4px 0; }


@media screen and (min-width: 37.5em) {
	
	/* MENU UPDATE */
	.main-navigation li { float: none; }
	.main-navigation #primary-menu > li > a { padding: 10px 0; }
	#site-navigation {
		position: fixed;
		z-index: 9995;
		left: 49px;
		top: 123px;
	}
	.site-branding {
		position: fixed;
		left: 50px;
		top: 50px;
		z-index: 9994;
	}
	.main-navigation ul li:hover ul {
		height: 96px;
		padding-left: 20px;
		opacity: 1;
	}
	
}
@media screen and (max-width: 37.5em) {
	
	.main-navigation li {
		float: none;
	}
	.main-navigation > div > ul > li { border-bottom: 1px solid #dce2df; }
	.main-navigation > div > ul > li.menu-item-has-children:before {
		position: absolute;
		right: 14px;
		content: '+';
		line-height: 53px;
	}
	.main-navigation > div > ul > li.menu-item-has-children.open:before { content: '-'; }
	.main-navigation div > ul > li > a {
		font-size: 16px;
		padding: 14px;
		position: relative;
		z-index: 9960;
	}
	.main-navigation ul li:hover > a { font-weight: 600; }
	.main-navigation ul li:hover > ul {
	
	}
	
	
	#menu-toggle {
		position: fixed;
		top: 21px;
		right: 13px;
		z-index: 1200;
		width: 50px;
		height: 43px;
		padding: 10px;
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
		-webkit-transition: .5s ease-in-out;
		-moz-transition: .5s ease-in-out;
		-o-transition: .5s ease-in-out;
		transition: .5s ease-in-out;
		cursor: pointer;
	}
	#menu-toggle .inner {
		position: relative;
		display: block;
	}
	#menu-toggle span {
		display: block;
		position: absolute;
		height: 4px;
		width: 50%;
		background: #D10F3B;
		opacity: 1;
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
		-webkit-transition: .25s ease-in-out;
		-moz-transition: .25s ease-in-out;
		-o-transition: .25s ease-in-out;
		transition: .25s ease-in-out;
	}
	/*.show-nav #menu-toggle span { background: #D10F3B; }*/
	#menu-toggle span:nth-child(even) {
		left: 50%;
		border-radius: 0 9px 9px 0;
	}
	#menu-toggle span:nth-child(odd) {
		left:0px;
		border-radius: 9px 0 0 9px;
	}
	#menu-toggle span:nth-child(1), #menu-toggle span:nth-child(2) { top: 0px; }
	#menu-toggle span:nth-child(3), #menu-toggle span:nth-child(4) { top: 9px; }
	#menu-toggle span:nth-child(5), #menu-toggle span:nth-child(6) { top: 18px; }
	#menu-toggle.open span:nth-child(1),#menu-toggle.open span:nth-child(6) {
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	
	#menu-toggle.open span:nth-child(2),#menu-toggle.open span:nth-child(5) {
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	
	#menu-toggle.open span:nth-child(1) {
		left: 3px;
		top: 4px;
	}
	
	#menu-toggle.open span:nth-child(2) {
		left: 13px;
		top: 4px;
	}
	
	#menu-toggle.open span:nth-child(3) {
		left: -50%;
		opacity: 0;
	}
	
	#menu-toggle.open span:nth-child(4) {
		left: 100%;
		opacity: 0;
	}
	
	#menu-toggle.open span:nth-child(5) {
		left: 3px;
		top: 15px;
	}
	
	#menu-toggle.open span:nth-child(6) {
		left: 13px;
		top: 15px;
	}
	#nav-container {
		position: fixed;
		left: -101%;
		top: 0;
		width: 80%;
		height: 100%;
		background-color: #ffffff;
	    -webkit-backface-visibility: hidden;
	    -moz-backface-visibility: hidden;
	    -ms-backface-visibility: hidden;
	    -o-backface-visibility: hidden;
	    backface-visibility: hidden;
	    transition: all 0.5s linear;
	    border-right: 1px solid #dce2df;
	    z-index: 1108;
	}
	#nav-container nav { padding: 100px 0 50px 0; }
	.main-navigation ul li.open ul {
		padding: 0 28px 14px 28px;
		height: 110px;
		opacity: 1;
	}
	.show-nav #nav-container { left: 0; }
	#page {
		transition: left 0.5s ease-in-out;
		z-index: 5001;
		left: 0;
	}
	#page { position: relative; }
	.show-nav #page {
		left: 80%;
		background: rgba(57, 67, 81, .6);
	}
	
}

.site-main .comment-navigation, .site-main
.posts-navigation, .site-main
.post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear {
	min-height: 1px;
	width: 100%;
	display: block;
}
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 1.5em;
	/* Make sure select elements fit in widgets. */
}

.widget select {
	max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
	display: block;
}

.hentry {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	/* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}
.custom-logo-link img {
	max-width: 180px;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}
/*--------------------------------------------------------------
## MCR Custom
--------------------------------------------------------------*/
.inner-wrapper {
	max-width: 1200px;
	margin: 0 auto;
}
.inner-narrow {
	max-width: 600px;
	margin: 0 auto;
}
.spacenone { margin-bottom: 0; }
.spacexshort { margin-bottom: 5px; }
.spaceshort { margin-bottom: 15px; }
.spacemedium { margin-bottom: 25px; }
.spacelarge { margin-bottom: 50px; }
.spacexlarge { margin-bottom: 75px; }
.spacexxlarge { margin-bottom: 150px; }

.left { float: left; }
div.right { float: right; }
p.right { text-align: right; }
.center { text-align: center; }

.overflow { overflow: hidden; }
.relative { position: relative; }
.table { display: table; width: 100%; }
.table-cell { display: table-cell; vertical-align: middle; }
.cover { background-size: cover; }

.twocol-one{width:48%;}
.threecol-one{width:30.66%;}
.threecol-two{width:65.33%;}
.fourcol-one{width:22%;}
.fourcol-two{width:48%;}
.fourcol-three{width:74%;}
.fivecol-one{width:16.8%;}
.fivecol-two{width:37.6%;}
.fivecol-three{width:58.4%;}
.fivecol-four{width:78.4%;}
.sixcol-one{width:13.33%;}
.sixcol-two{width:30.66%;}
.sixcol-three{width:47.99%;}
.sixcol-four{width:65.33%;}
.sixcol-five{width:82.67%;}
.eightcol-one{width: 12.5%;float:left;}
.ninecol-one{width: 11.1%;float:left;}
.twocol-one,.threecol-one,.threecol-two,.fourcol-one,.fourcol-two,.fourcol-three,.fivecol-one,.fivecol-two,.fivecol-three,.fivecol-four,.sixcol-one,.sixcol-two,.sixcol-three,.sixcol-four,.sixcol-five{float:left;margin-right:4%;position:relative;}
.last{ clear:right; margin-right:0; float: right; }

#colophon {
	transition-delay: 3s;
}
.site-info {
	background-color: #D10F3B;
	color: #FFF7F7;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	font-size: 13px;
}
#menu-footer-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}
#menu-footer-menu li {
	display: inline-block;
}
#menu-footer-menu li a {
	color: #394351;
	font-size: 13px;
	text-decoration: none;
	padding: 0 10px 0 25px;
    line-height: 39px;
}

.project-list-item {
	display: block;
	line-height: 30px;
}
.project-list-item svg {
	max-width: 30px;
	max-height: 30px;
	float: left;
	margin-right: 10px;
}

.mobile-only { display: none; }
.desktop-only { display: block; }

#projectsbyyear, #projectsbycategory { display: none; }

@media screen and (min-width: 50em) {
	
	.left { float: left; }
	.right { float: right; }
	
	.categories #projectsbyyear, .categoriesbyyear #projectsbycategory {
		display: block;
		position: fixed;
	    right: 50px;
	    top: 50px;
	    z-index: 9994;
	}
	#projectsbyyear a, #projectsbycategory a { color: #394351; }
	#projectsbyyear a.active, #projectsbycategory a.active { color: #D10F3B; }
	
}

@media screen and (max-width: 50em) {

	.twocol-one,.threecol-one,.threecol-two,.fourcol-one,.fourcol-two,.fourcol-three,.fivecol-one,.fivecol-two,.fivecol-three,.fivecol-four,.sixcol-one,.sixcol-two,.sixcol-three,.sixcol-four,.sixcol-five,.last{margin-right: 0; width: 100% !important; float: none;}.spacexshort { margin-bottom: 5px; }
	.spaceshort { margin-bottom: 10px; }
	.spacemedium { margin-bottom: 20px; }
	.spacelarge { margin-bottom: 30px; }
	.spacexlarge { margin-bottom: 50px; }
	.spacexxlarge { margin-bottom: 100px; }
	
	.inner-wrapper { padding: 0 1.2em; }
	.inner-narrow { padding: 0 1.2em; }
	
	#masthead {
		position: fixed;
		z-index: 1109;
		top: 0;
		left: 0;
    	width: 100%;
	}
	
	.site-branding.left {
		float: none;
		text-align: center;
		width: 100%;
	}
	.site-branding img {
		width: 120px;
		padding-top: 29px;
	}
	
	.site-info { padding: 10px; }
	#menu-footer-menu { display: none; }
	
	.mobile-only { display: block; }
	.desktop-only { display: none; }

}

/*--------------------------------------------------------------
## Project
--------------------------------------------------------------*/

.stats { font-size: 13px; }
.stats p {
	font-size: 13px;
	margin: 0;
	
}
.caption {
	font-size: 13px;
	padding-top: 10px;
	margin-top: 25px;
	border-top: 1px solid #D10F3B;
}
#media .arrow {
	position: absolute;
	top: 37%;
	cursor: pointer;
	padding: 20px;
	z-index: 8000;
	color: #D10F3B;
}
#media .arrow.prev { left: 30px; }
#media .arrow.next { right: 30px; }

#hero svg {
	max-width: 150px;
	height: auto;
}
#hero svg g, #hero svg path { fill: #394351!important; }

@media screen and (min-width: 50em) {
	
	.single-project #hero {
		width: 100%;
		z-index: 200;
		text-align: right;
	}
	#hero {
		position: relative;
		/*min-height: 600px;*/
	}
	#hero .entry-header {
		/*position: absolute;
		top: 0;
		left: 50px;*/
		padding-top: 40px;
		text-align: left;
	}
	#hero h1.entry-title, .single h1.entry-title { 
		font-size: 60px;
		font-weight: 400;
	}
	#hero inner-wrapper { text-align: left; }
	#project-hero {
		max-width: 74%;
		width: 100%;
		/*position: absolute;
		top: 0;
		right: 0;
		text-align: right;*/
	}
	#media .media-narrow {
		padding: 0 50px;
		float: left;
		margin-left: auto;
		margin-right: auto;
    	position: relative;
    	opacity: .3;
	}
	#media .media-narrow.slick-slide img {
		height: 600px;
		width: auto;
	}
	#media .media-narrow.slick-current { opacity: 1; }
	#media .arrow {
		padding: 60px;
		font-size: 30px;
	}
	#media .arrow.next { right: 0; }
	#media .arrow.prev { left: 0; }
	
}
@media screen and (max-width: 50em) {
	
	#hero h1.entry-title, .single h1.entry-title { 
		font-size: 30px;
		font-weight: 400;
	}
	
	#media { overflow-x: hidden; }
	#media .arrow.prev { left: 0px; }
	#media .arrow.next { right: 0px; }
	
	#hero.spacexxlarge { margin-bottom: 50px; }
	/* #hero svg { margin-top: -60px; } */
	
}

#circle {
	position: absolute;
	overflow: hidden;
	z-index: 3;
	/* z-index: 0; */
	background-color: #D10F3B;
	border-radius: 50%;
	-webkit-box-shadow: 0px 0px 43px 0px rgba(0,0,0,0.1);
	-moz-box-shadow: 0px 0px 43px 0px rgba(0,0,0,0.1);
	box-shadow: 0px 0px 43px 0px rgba(0,0,0,0.1);
	transition: all 0.5s ease;
}
#circle .table {
	height: 100%;
}
#circle .table-cell { padding: 5em; }
#circle .table * {
	text-align: center;
	color: white;
	font-size: 17px;
}
#circle .table input { color: black; }
#circle .table .gform_wrapper input[type="submit"] {
	background-color: black;
	color: white;
}
#circle #default p:last-of-type { margin-bottom: 0; }

.contact-trigger {
	cursor: pointer;
	text-decoration: underline;
	display: inline-block;
	padding: 5px;
	margin-top: 15px;
}

@media screen and (max-width: 50em) {
	
	#primary.contact {
		margin-top: 75px;
		padding: 0 1.2em;
		text-align: center;
	}
	#primary.contact form { text-align: left; }
	.page-template-page-contact #main { text-align: center; }
	#circle { position: relative; }
	#circle .table-cell { padding: 0; }
	#circle .table * { font-size: 14px; }
	#circle.mailinglistactive {
		background: none;
		border-radius: 0;
		box-shadow: none;
	}
	#circle.mailinglistactive .table * { color: #000000; }
	#circle.mailinglistactive .table-cell { padding: 5em 0; }
	.gform_wrapper input[type="submit"] { margin-left: 0!important; }
	
}

@media screen and (min-width: 50em) {
	
	#primary.contact {
		width: 100%;
		overflow: hidden;
	}
	
}

.testimonial-item img { display: block; }
.testimonial-item .testimonial {
	padding: 50px;
	background-color: #ffffff;
}
.testimonial-item .testimonial p:last-of-type { margin-bottom: 0; }

#team-members .member img { width: 100%; }
#team-members .member p { font-size: 13px; }


/* SLICK SLIDER */
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.slick-list:focus { outline: none; }
.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}
.slick-track {
    position: relative;
    top: 0;
    left: 0;
	display: block;
}
.slick-track:before, .slick-track:after {
    display: table;
    content: '';
}
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
    padding: 0 60px;
}
[dir='rtl'] .slick-slide { float: right; }
.slick-slide img { display: inline-block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}
.slick-arrow.slick-hidden { display: none; }
button.slick-prev, a.slick-prev {
	position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 70%;
    background: transparent;
    color: transparent;
    z-index: 111;
}
a.slick-prev:hover { cursor: url('images/left.png'), auto!important; }
button.slick-next, a.slick-next {
	position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 70%;
    background: transparent;
    color: transparent;
    z-index: 112;
}
a.slick-next:hover { cursor: url('images/right.png'), auto!important; }
.slick-list .slick-center { 
	z-index: 113;
	position: relative;
}
.slick-track .col-narrow .inner {
	opacity: 0;
    visibility: hidden;
}
.slick-track .slick-active .col-narrow .inner {
	opacity: 1;
    visibility: visible;
    -webkit-transition: opacity 0.75s ease, visibility 0.75s ease;
    transition: opacity 0.75s ease, visibility 0.75s ease;
    -webkit-transition-delay: 0.75s;
    transition-delay: 0.75s;
}

@media screen and (min-width: 70em) {
	
	.slick-slide .col-narrow { min-width: 720px; }
	.slick-slide img {
		max-height: 520px;
	}
	
}

@media screen and (max-width: 70em) {
	.slick-slide { padding: 0; }
}

/* GRAVITY FORMS */
.gform_wrapper ul {
	list-style: none;
	margin: 0px 0px 15px 0px;
	padding: 0;
}
.gform_wrapper ul li {
	list-style: none;
	margin-bottom: 10px;
	overflow: hidden;
}
.gform_wrapper ul li label {
	float: left;
	width: 25%;
	text-transform: uppercase;
	font-size: 12px;
	letter-spacing: 2px;
	line-height: 40px;
}
.gform_wrapper ul li .ginput_container {
	float: left;
	width: 75%;
}
.gform_wrapper ul li input {
	padding: 0 10px;
	line-height: 38px;
	border-radius: 0;
	border: 1px solid #e0e8e3;
	width: 100%;
}
.gform_wrapper input[type="submit"] {
	border-radius: 0;
    padding: 1em 3em;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 1px;
    background-color: #D10F3B;
    color: white;
    border: none;
    margin-left: 25%;
}

/* ROULETTE */
.node {
    cursor:pointer;
    fill:#000;
}
.node:hover text { fill: #000000; }
.node:hover circle, .node:hover path { fill: white; }
.node text {
    /*fill:#394351;*/
    fill: #000000;
    font-size:15px;
}
.node text.type-category{ font-weight: bold; }
.node rect{
    fill:#FFF7F7;
    visibility: hidden;
    stroke: #D10F3B;
    stroke-dasharray: 0,300,0,30,300,600;
    width: 300px;
    height: 30px;
    display: none;

}
.node .minusplus{
    font-weight: normal;
    font-size: 12px;
}
.node.selected text { fill:#f00; }
.node.selected image { fill:#D10F3B; }
.node.selected image path, .node.selected image polygon, .node.selected image rect { fill:#D10F3B; }
.node.selected rect{ visibility: visible; }

@media (max-width: 1024px) {
    .node text { font-size:12px; }
    .node rect {
        height: 24px;
        stroke-dasharray: 0,210,0,24,210,600;
        width:210px;
    }
}
nav .navbar-brand img{ width:60px; }
#svg-container{ text-align: center; }
#mobile-description-text p {
    text-align: center;
    font-size: 20px;
    margin: 0;
}
#img-container{
    position: absolute;
    overflow: hidden;
    /* z-index:3; */
    z-index:0;
    border-radius: 50%;
    -webkit-box-shadow: 0px 0px 43px 0px rgba(0,0,0,0.1);
	-moz-box-shadow: 0px 0px 43px 0px rgba(0,0,0,0.1);
	box-shadow: 0px 0px 43px 0px rgba(0,0,0,0.1);
	transition: all 0.5s ease;
}
#img-container.withcontent { background: #000000; }
#img-container.withcontent img { opacity: 0.4; }
#img-container a {
	display: block;
	position: relative;
}
#img-container img {
    /*margin-top: -2%;
    margin-left: -3%;
    min-width: 104%;
    max-width: 200%;
    max-height: 200%;
    width: auto;
    height: auto;*/
    max-width: 200%;
    max-height: 200%;
    z-index:0;
    opacity:1;
    transition: opacity .5s, filter 1s ease;
    -webkit-transition: opacity .5s, -webkit-filter 1s ease;
}
@media screen and (min-width: 50em) {
	#img-container img { min-height: 550px; }
}
@media screen and (max-width: 50em) {
	
	#graph.news #img-container.withcontent img, #graph.awards #img-container.withcontent img { opacity: 1; }
	
}
#img-container img.taller {
	width: 100%;
    width: -moz-available;
    width: -webkit-fill-available;
    width: fill-available;
}
#img-container img.wider {
	height: 100%;
    height: -moz-available;
    height: -webkit-fill-available;
    height: fill-available;
}
#img-container img.loading {
	opacity:0.3!important;
	-webkit-filter: blur(5px);
	-moz-filter: blur(5px);
	-o-filter: blur(5px);
	-ms-filter: blur(5px);
	filter: blur(5px);
}
#img-container .blocker {
	position: absolute;
	display: none;
	height: 100%;
	width: 100%;
	z-index: 1;
}
#img-container.withvideo .blocker { display: block; }
#img-container #project-video {
	z-index: 2;
	width: 994px;
	max-width: 994px;
	height: 560px;
	margin-left: -215px;
}
#img-container #description {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
}
#img-container .table.inner { height: 100%; }
#img-container #description .content:empty { padding: 0; }
#img-container #description .content {
	padding: 3em;
	color: white;
}
#img-container #description .content * { color: white; }
#img-container #description .content h4, #extra .content h4 {
	font-weight: 600;
	margin: 1em 0 .5em 0!important;
}
@media (min-width: 1024px) {
	
	#img-container:hover, #img-container.hovered {
		-webkit-box-shadow: 0px 0px 43px 0px rgba(0,0,0,0.4);
		-moz-box-shadow: 0px 0px 43px 0px rgba(0,0,0,0.4);
		box-shadow: 0px 0px 43px 0px rgba(0,0,0,0.4);
	}
	#img-container img:hover, #img-container.hovered img {
		-webkit-filter: grayscale(1);
		-webkit-filter: grayscale(100%);
		filter: gray;
		filter: grayscale(100%);
	}
	
}
#graph {
	margin-top: 0;
	transition: all 0.5s ease;
}
#canvas-div { z-index: 2; }
#canvas-div svg {
	position: absolute;
	overflow: visible;
}

#extra { display: none; }
.categories #description {
	display: none;
	transition: all 0.5s ease;
}
#selected-project a, a.view-more-link {
	color: #FFF7F7;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 13px;
	line-height: 31px;
	text-decoration: none;
	background-color: #D10F3B;
	padding: 2px 6px;
}
#selected-project a {
	display: block;
	text-align: center;
	margin-top: 15px;
}
#mobile-description-text { display: none; } /* Hid mobile news excerpt entirely on October 20 */
#selected-project a#newsurl {
	background-color: #394351!important;
	text-transform: uppercase;
}
.news #selected-project a#newsurl:after { content: 'Read News Item'; }
.awards #selected-project a#newsurl:after { content: 'Read Award'; }
#newsurl[href=""] { display: none; }
#circlelink[href=''] { display: none; }
#circlelink {
	display: block;
    border-radius: 50%;
    position: absolute;
}
#img-container a.view-more-link { display: inline-block; }
#img-container #description a.view-more-link[href=''], #selected-project a[href=''] { display: none; }
#mcr-intro {
	color: #D10F3B;
	font-size: 26px;
	font-weight: 400;
}
#spinner-holder {
	padding-top: 10em;
}
#spinner {
	width: 40px;
	height: 40px;
	margin: 100px auto;
	background-color: #D10F3B;
	border-radius: 100%;  
	-webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
	animation: sk-scaleout 1.0s infinite ease-in-out;
}

@-webkit-keyframes sk-scaleout {
	0% { -webkit-transform: scale(0) }
	100% {
		-webkit-transform: scale(1.0);
		opacity: 0;
	}
}

@keyframes sk-scaleout {
	0% { 
		-webkit-transform: scale(0);
		transform: scale(0);
	} 100% {
    	-webkit-transform: scale(1.0);
		transform: scale(1.0);
		opacity: 0;
	}
}
#main-container div.col-md-3{ padding-left: 0px; }
#main-container1{
	/* overflow-x: hidden; */
	position: relative;
	opacity: 0;
}
nav.navbar-default {
    background-color: #eee;
    border:none;
    margin-bottom: 0px;
}

@media (min-width: 1024px) {
	div#mobile-description-text { display: none!important; }
}
@media (max-width: 1024px) {
    #graph.news #img-container, #graph.news #canvas-div svg, #graph.awards #img-container, #graph.awards #canvas-div svg { margin-top:-80px; }
    #description, .categories #extra { display: none!important; }
    #extra {
	    position: fixed;
	    bottom: 0;
	    top: auto;
	    left: 0;
	    width: 100%;
	    padding: 2em;
	    z-index: 4;
	    background: -moz-linear-gradient(top, rgba(240,245,242,0) 0%, rgba(240,245,242,1) 30%);
		background: -webkit-linear-gradient(top, rgba(240,245,242,0) 0%,rgba(240,245,242,1) 30%);
		background: linear-gradient(to bottom, rgba(240,245,242,0) 0%,rgba(240,245,242,1) 30%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0f5f2', endColorstr='#ffffff',GradientType=0 );
    }
   
    
    
    
}
@media screen and (min-width: 50em) {
	#selected-project { display: none!important; }
	/* #selected-project {
		display: none!important;
		position: absolute;
	}
	#circlelink:hover + #extra { display: block!important; }
	#circlelink:hover + #extra #selected-project { display: block!important; }
	#extra { display: block; } */
	
	.categories #img-container.hovered #description, .categoriesbyyear #img-container.hovered #description {
		display: block!important;
		z-index: 9999;
		opacity: 1;
	}
	
}
@media screen and (max-width: 50em) {
	
	.home #primary.inner-wrapper { padding: 0; }
	
}


/* SMOOTHSTATE */
.m-scene .scene_element {
  animation-duration: 0.4s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: both;
}

.m-scene .scene_element--delay1 {
  animation-delay: 0.1s;
}

.m-scene .scene_element--delay2 {
  animation-delay: 0.2s;
}

.m-scene .scene_element--delay3 {
  animation-delay: 0.3s;
}

.m-scene .scene_element--delay4 {
  animation-delay: 0.4s;
}

.m-scene .scene_element--delay {
  animation-delay: 0s;
}

.m-scene.is-exiting .scene_element.scene_element--delay {
  transition-timing-function: linear;
  animation-delay: 0.3s;
}

.m-scene.is-exiting .scene_element--alternate {
  animation-direction: alternate-reverse;
}

/*
 * fadein
 */

.m-scene .scene_element.scene_element--fadein {
  animation-name : fadeIn;
  animation-duration: 0.4s;
}

@keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

/*
 * slideUp
 */

.page-work[data-pt=moveleft] .m-scene:not(.is-exiting) .scene_element.scene_element--slideup {
	animation-name: slideInRight;
    animation-duration: 0.3s;
    animation-timing-function: ease-out;
}
  
.page-work[data-pt=moveright] .m-scene:not(.is-exiting) .scene_element.scene_element--slideup {
    animation-name: slideInLeft;
    animation-duration: 0.3s;
    animation-timing-function: ease-out;
}


@keyframes slideInRight {
  0% {
	  opacity: 0;
	  transform: translateX(40px);
  }
  100% {
	  opacity: 1;
	  transform: translateX(0);
  }
}

@keyframes slideInLeft {
  0% {
	  opacity: 0;
	  transform: translateX(-40px);
  }
  100% {
	  opacity: 1;
	  transform: translateX(0);
  }
}

/*
 * .scene_element--smallblock
 * Depends on page transition
 */

body[data-pt=moveleft] .m-scene .scene_element--smallblock {
    animation-name: smallBlockLeft;
    animation-duration: 0.2s;
}

body[data-pt=moveright] .m-scene .scene_element--smallblock {
    animation-name: smallBlockRight;
    animation-duration: 0.2s;
}

@keyframes smallBlockRight {
  0% {
    transform: translateY(40px);
    opacity: 0;
  }
  100% { 
    transform: translateX(0); 
    opacity: 1;
  }
}

@keyframes smallBlockLeft {
  0% {
    transform: translateY(40px);
    opacity: 0;
  }
  100% { 
    transform: translateX(0); 
    opacity: 1;
  }
}

/*
 * .scene_element--move
 * Depends on page transition
 * ..and on move-out / move-in variable
 */

body[data-pt=moveleft] .m-scene .scene_element.scene_element--move, body[data-pt=moveright] .m-scene .scene_element.scene_element--move {
     /* animation-duration: .4s; */
}

body[data-pt=moveleft] .m-scene .scene_element--move {
    animation-name: moveInFromRight;
}
body[data-pt=moveleft] .m-scene.move-out .scene_element--move {
    animation-name: moveOutToLeft;
}

body[data-pt=moveright] .m-scene .scene_element--move {
    animation-name: moveInFromLeft;
}
body[data-pt=moveright] .m-scene.move-out .scene_element--move {
    animation-name: moveOutToRight;
}

body[data-pt=moveup] .m-scene .scene_element--move {
    animation-name: moveInFromTop;
}
body[data-pt=moveup] .m-scene.move-out .scene_element--move {
    animation-name: moveOutToTop;
}

body[data-pt=movedown] .m-scene .scene_element--move {
    animation-name: moveInFromBottom;
}
body[data-pt=movedown] .m-scene.move-out .scene_element--move {
    animation-name: moveOutToBottom;
}


@keyframes moveInFromLeft {
  0% { 
  	transform: translateX(-100px); 
  	opacity: 0;
  }
  100% {
  	transform: translateX(0);
  	opacity: 1;
  }
}

@keyframes moveOutToLeft {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% { 
    transform: translateX(-50%); 
    opacity: 0;
  }
}


@keyframes moveInFromRight {
  0% { 
    transform: translateX(100px); 
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes moveOutToRight {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  100% { 
    transform: translateX(50%); 
    opacity: 0;
  }
}

@keyframes moveInFromTop {
  0% { 
    transform: translateY(-40px); 
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes moveOutToTop {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  100% { 
    transform: translateY(-40px); 
    opacity: 0;
  }
}

@keyframes moveInFromBottom {
  0% { 
    transform: translateY(40px); 
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes moveOutToBottom {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  100% { 
    transform: translateY(40px); 
    opacity: 0;
  }
}


/* Search */
input[type="search"] {
	border-radius: 0;
	border-color: #D10F3B;
	color: #D10F3B;
	padding: 10px;
	font-size: 16px;
	width: 100%;
	background: none;
    border-top: none;
    border-left: none;
    border-right: none;
}
.search-form input[type="submit"] {
	-webkit-appearance: none;
	appearance: none;
	border: none;
	background: none;
	display: none;
}
input[type="search"]:focus {
	outline: none;
	color: #D10F3B;
}
a.view-more-link.fromnewslink {
	display: block;
	text-align: center;
	padding: 2px 6px;
	margin-top: 15px;
}
#search-holder {margin-top: 8px; }
#search-icon { float: left; }
#search-icon:hover { cursor: pointer; }
#search-inner {
	float: left;
	padding-left: 10px;
    margin-top: -10px;
}
body ul.search_results {
	box-shadow: none;
	background: #F0F5F2;
	border: 1px solid #D10F3B;
	margin-top: -1px;
}
body ul.search_results li {
	background-color: transparent;
	border-top: none;
	border-bottom: 1px solid #D10F3B;
	padding: 10px;
}
body ul.search_results li.daves-wordpress-live-search_result:last-of-type { border-bottom: none; }
body ul.search_results li.post_with_thumb img.post_thumb {
	border: none;
}
body ul.search_results li a, ul.search_results li a:visited { 
	font-size: 15px;
}
body ul.search_results li a:hover { color: #D10F3B!important; }
body .search_footer { display: none; }

@media screen and (max-width: 50em) {
	
	#search-holder {
		padding: 14px;
		margin-top: 10px;
	}
	#search-inner {
		display: block!important;
		max-width: 60%;
		width: 100%;
		margin-top: -10px;
	}
	body ul.search_results {
		background: white; 
	}

}