/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
1.0 Normalize
2.0 Typography
3.0 Elements
4.0 Forms
5.0 Navigation
	5.1 Links
	5.2 Menus
6.0 Accessibility
7.0 Alignments
8.0 Clearings
9.0 Widgets
10.0 Content
	10.1 Posts and pages
	10.2 Asides
	10.3 Comments
11.0 Infinite scroll
12.0 Media
	12.1 Captions
	12.2 Galleries
--------------------------------------------------------------*/
@import url(//fonts.googleapis.com/css?family=Michroma|Yanone+Kaffeesatz:300);
/*--------------------------------------------------------------
1.0 Normalize
--------------------------------------------------------------*/
/*--------------------------------------------------------------
2.0 Typography
--------------------------------------------------------------*/
body, button, input, select, textarea { font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 1.7rem; }
body *, button *, input *, select *, textarea * { -webkit-font-smoothing: antialiased; }

h1, h2, h3, h4, h5, h6 { font-size: 1.6rem; line-height: 2rem; margin: 1rem 0; clear: none; }
h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child { margin-top: 0; }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { text-decoration: none; }

h1 { /*	@media screen and ( min-width: 480px ) {
		font-size: 3rem;
		line-height: 3.5rem;
	}*/ }

h2 { font-size: 1.5rem; line-height: 1.9rem; }

h3 { font-size: 1.4rem; line-height: 1.8rem; }
h3.staff-name { background: rgba(0, 0, 0, 0.5); border-radius: 5px; padding: .5rem; margin: 0 1rem; }

h4 { font-size: 1.3rem; line-height: 1.7rem; }

h5 { font-size: 1.2rem; line-height: 1.7rem; }

h6 { font-size: 1.1rem; line-height: 1.7rem; }

p { margin-bottom: 1rem; }

.tiny { font-size: .8rem; }

.req, .required { color: red; }

/*--------------------------------------------------------------
3.0 Elements
--------------------------------------------------------------*/
hr { background-color: rgba(64, 64, 64, 0.25); margin-bottom: 1rem; }

ul, ol { margin: 0 0 1rem 1rem; padding: .5rem 0 .5rem 1rem; }

#page { margin: 0 auto; max-width: 1100px; }
@media screen and (min-width: 1100px) { #page { overflow-x: hidden; } }

.constrainer { max-width: 1100px; margin: 0 auto; position: relative; padding: 1rem .5rem; }

header#masthead { width: 100%; position: relative; text-align: center; background-image: url("../images/carbon_fiber.png"); background-repeat: repeat; background-position: left top; }
header#masthead div.constrainer { background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.5)); background: linear-gradient(to bottom, rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.5)); padding: .25rem .5rem; position: relative; }
header#masthead div.constrainer:after { content: ''; display: table; clear: both; }
@media screen and (min-width: 600px) { header#masthead div.constrainer { padding: 0; } }
@media screen and (min-width: 950px) { header#masthead div.constrainer { background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.9)); background: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.9)); } }
header#masthead .site-branding { padding-top: 1.5rem; }
@media screen and (min-width: 872px) { header#masthead .site-branding { width: 60%; float: left; } }
@media screen and (min-width: 950px) { header#masthead .site-branding { text-align: left; padding-left: 2.5rem; } }
header#masthead .site-branding a { text-decoration: none; }
header#masthead .site-branding .site-title { padding: 0 .5rem; margin: 0; }
header#masthead .site-branding .site-title a { text-decoration: none; color: #00acee; opacity: 1; }
@media screen and (min-width: 950px) { header#masthead .site-branding .has-logo { margin-bottom: 0; } }
header#masthead .site-branding .has-logo span { position: absolute; visibility: hidden; }
header#masthead .site-branding .site-description { position: absolute; visibility: hidden; }

#breadcrumbs { font-size: .8rem; line-height: 1.1rem; padding: 0; margin: 0 auto 1.5rem; text-align: left; max-width: 1100px; background: url("../images/grey_metal_holes.png") repeat left top; box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5), inset 0 0 5px rgba(0, 0, 0, 0.5); }
@media screen and (min-width: 550px) { #breadcrumbs { box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.7), inset 0 0 5px rgba(0, 0, 0, 0.5); } }
@media screen and (min-width: 950px) { #breadcrumbs { width: 95%; border-bottom-right-radius: 100px; margin: 0 0 1.5rem; overflow: hidden; } }
#breadcrumbs > span { display: block; padding: .25rem .75rem; background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.3)); background: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.3)); }
@media screen and (min-width: 480px) { #breadcrumbs > span { padding: .25rem 1rem; } }
@media screen and (min-width: 550px) { #breadcrumbs > span { background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.2)); background: linear-gradient(to right, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.2)); } }
#breadcrumbs a.current-item { color: #fff; text-decoration: none; cursor: pointer; }

#content { position: relative; background: url("../images/watermark.png") repeat-y center 2rem transparent; background-size: contain; }
@media screen and (min-width: 600px) { #content { background-size: auto; } }
#content div.constrainer { overflow: hidden; padding: 0; background: url("../images/bg_content.png") repeat left top rgba(0, 0, 0, 0.5); }

div#primary p:first-child, div#primary div:first-child, div#primary h1:first-child, div#primary h2:first-child, div#primary h3:first-child, div#primary h4:first-child, div#primary h5:first-child, div#primary h6:first-child, div#primary ul:first-child, div#primary ol:first-child, div#primary aside:first-child, #secondary p:first-child, #secondary div:first-child, #secondary h1:first-child, #secondary h2:first-child, #secondary h3:first-child, #secondary h4:first-child, #secondary h5:first-child, #secondary h6:first-child, #secondary ul:first-child, #secondary ol:first-child, #secondary aside:first-child, #page-footer p:first-child, #page-footer div:first-child, #page-footer h1:first-child, #page-footer h2:first-child, #page-footer h3:first-child, #page-footer h4:first-child, #page-footer h5:first-child, #page-footer h6:first-child, #page-footer ul:first-child, #page-footer ol:first-child, #page-footer aside:first-child { margin-top: 0; }
div#primary p:last-child, div#primary div:last-child, div#primary h1:last-child, div#primary h2:last-child, div#primary h3:last-child, div#primary h4:last-child, div#primary h5:last-child, div#primary h6:last-child, div#primary ul:last-child, div#primary ol:last-child, div#primary aside:last-child, #secondary p:last-child, #secondary div:last-child, #secondary h1:last-child, #secondary h2:last-child, #secondary h3:last-child, #secondary h4:last-child, #secondary h5:last-child, #secondary h6:last-child, #secondary ul:last-child, #secondary ol:last-child, #secondary aside:last-child, #page-footer p:last-child, #page-footer div:last-child, #page-footer h1:last-child, #page-footer h2:last-child, #page-footer h3:last-child, #page-footer h4:last-child, #page-footer h5:last-child, #page-footer h6:last-child, #page-footer ul:last-child, #page-footer ol:last-child, #page-footer aside:last-child { margin-bottom: 0; }

div#primary { overflow: hidden; padding: 0 .5rem; }
@media screen and (min-width: 480px) { div#primary { padding: 0 1rem; } }
@media screen and (min-width: 600px) { div#primary { padding: 0 1.5rem; } }
@media screen and (min-width: 872px) { div#primary { padding: 0 2rem; } }

#secondary { padding: 0 0 1rem; overflow: hidden; position: relative; }

#page-footer { position: relative; line-height: 1.2rem; font-size: .9rem; background: url("../images/carbon_fiber.png") repeat left top; }
#page-footer div.constrainer { padding: 0; }

#colophon { text-align: center; font-size: .8rem; color: rgba(255, 255, 255, 0.5); }
#colophon div.constrainer { padding-top: 0; }
#colophon a { text-decoration: none; color: rgba(255, 255, 255, 0.5); }
#colophon a:hover { color: rgba(255, 255, 255, 0.75); }

.display-none { display: none; }

/*--------------------------------------------------------------
4.0 Forms
--------------------------------------------------------------*/
input { max-width: 100%; }

button, input[type="button"], input[type="reset"], input[type="submit"] { font-size: 1.25rem; padding: 0 1rem; line-height: 2.5rem; box-shadow: inset 1px 1px 2px rgba(255, 255, 255, 0.5), 1px 1px 2px rgba(0, 0, 0, 0.25); -webkit-transition: all 0.2s; transition: all 0.2s; background: #e6e6e6; }
button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { background: #d9d9d9; }
button:focus, button:active, input[type="button"]:focus, input[type="button"]:active, input[type="reset"]:focus, input[type="reset"]:active, input[type="submit"]:focus, input[type="submit"]:active { outline: none; }
button:active, input[type="button"]:active, input[type="reset"]:active, input[type="submit"]:active { -webkit-transform: translate3d(1px, 1px, 0); transform: translate3d(1px, 1px, 0); }

input[type="text"], input[type="password"], input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="week"], textarea { background: #f7f7f7; background: rgba(255, 255, 255, 0.8); }

input[type="text"], input[type="password"], input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="week"] { line-height: 2.2rem; }

.wpcf7 span[class*="mathcaptcha"] { display: block; }
.wpcf7 .column { padding-bottom: 0; }

/*--------------------------------------------------------------
5.0 Navigation
--------------------------------------------------------------*/
a { -webkit-transition: all 0.2s; transition: all 0.2s; text-decoration: none; }

a.button { display: inline-block; background: #e2c84a; color: #000; min-width: 200px; padding: .25rem; }
a.button:hover { background: #000; color: #fff; }

#site-navigation { position: absolute; top: 0; left: 0; text-align: right; line-height: 2.25rem; z-index: 1000; width: 100%; }
@media screen and (min-width: 872px) { #site-navigation { position: relative; clear: both; margin: 0; float: none; background: url("../images/bg_nav.png") repeat left top transparent; line-height: 1.9rem; z-index: 100; box-shadow: inset 0 0 15px rgba(0, 0, 0, 0.5); } }
@media screen and (min-width: 950px) { #site-navigation { float: right; width: auto; padding-left: 3rem; border-top-left-radius: 100px; } }
#site-navigation div { position: absolute; top: 0; width: 100%; z-index: 99998; padding: 0 0 1rem; list-style: none; -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); -webkit-transition: all 0.75s; transition: all 0.75s; }
@media screen and (min-width: 872px) { #site-navigation div { position: relative; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); padding: 0; -webkit-transition: all 0s; transition: all 0s; } }
#site-navigation.toggled > div { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
#site-navigation a, #site-navigation a:visited { text-decoration: none; font-size: 1.25rem; display: block; line-height: 2.25rem; padding: .1rem 1rem; border-top: 1px solid rgba(255, 255, 255, 0.1); }
@media screen and (min-width: 872px) { #site-navigation a, #site-navigation a:visited { line-height: 1.9rem; position: relative; white-space: nowrap; font-size: .9rem; border: none; text-transform: lowercase; font-family: Michroma, Verdana, Arial, Helvetica, sans-serif; } }
#site-navigation ul.menu { display: block; text-align: left; margin: 0 1rem; padding: 0; }
@media screen and (min-width: 872px) { #site-navigation ul.menu { text-align: center; margin: 0; } }
#site-navigation ul.menu li { position: relative; float: none; }
@media screen and (min-width: 872px) { #site-navigation ul.menu li { display: inline-block; -webkit-transition: all 0.2s; transition: all 0.2s; }
  #site-navigation ul.menu li:hover > ul.sub-menu { visibility: visible; opacity: 1; z-index: 1; } }
#site-navigation ul.menu li li a { padding-left: 1.4rem; }
#site-navigation ul.menu li li li a { padding-left: 2.1rem; }
@media screen and (min-width: 872px) { #site-navigation ul.menu > li { padding: 0 .75rem; }
  #site-navigation ul.menu > li.current-menu-item > a, #site-navigation ul.menu > li.current_page_ancestor > a, #site-navigation ul.menu > li.current-product-parent > a { border-bottom: 5px solid #000; } }
#site-navigation ul.menu > li > a { position: relative; }
@media screen and (min-width: 872px) { #site-navigation ul.menu > li > a { padding: 0; border-bottom: 5px solid transparent; padding-top: 5px; line-height: 1.5rem; }
  #site-navigation ul.menu > li > a:hover { border-bottom-color: #000; } }
#site-navigation ul.menu > li:first-child > a:before { display: none; }
#site-navigation ul.menu > li ul.sub-menu { padding: 0; display: none; width: 100%; background: rgba(255, 255, 255, 0.05); }
@media screen and (min-width: 872px) { #site-navigation ul.menu > li { display: inline-block; background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.1), transparent); background: linear-gradient(to right, rgba(0, 0, 0, 0.1), transparent); }
  #site-navigation ul.menu > li ul.sub-menu { display: block; position: absolute; top: 100%; left: 0; text-align: left; visibility: hidden; opacity: 0; z-index: -1; -webkit-transition: all 0.3s; transition: all 0.3s; width: auto; background: #5A5346; }
  #site-navigation ul.menu > li ul.sub-menu li { display: block; border-top: 1px solid #fed329; }
  #site-navigation ul.menu > li ul.sub-menu li:first-child { border: none; }
  #site-navigation ul.menu > li ul.sub-menu li.current-menu-item > a, #site-navigation ul.menu > li ul.sub-menu li.current_page_ancestor > a, #site-navigation ul.menu > li ul.sub-menu li.current-product-parent > a { background: #fed329; color: #000; }
  #site-navigation ul.menu > li ul.sub-menu li a { padding-left: 1rem; color: #fff; }
  #site-navigation ul.menu > li ul.sub-menu li a:hover { background: #fed329; color: #000; }
  #site-navigation ul.menu > li ul.sub-menu li ul.sub-menu { top: 0; left: 100%; margin-left: 0; border-left: 1px solid #fed329; } }
@media screen and (min-width: 872px) and (min-width: 872px) { #site-navigation ul.menu > li ul.sub-menu.menu-item-has-children { padding-right: .6rem; } }
@media screen and (min-width: 872px) { #site-navigation ul.menu > li ul.sub-menu li.menu-item-has-children > i.fa { -webkit-transform: rotate(-90deg); -ms-transform: rotate(-90deg); transform: rotate(-90deg); } }
#site-navigation ul.menu li.menu-item-has-children { position: relative; }
#site-navigation ul.menu li.menu-item-has-children > i.fa { display: block; float: right; font-size: 20px; line-height: 1.9rem; height: 1.9rem; width: 40px; text-align: center; position: relative; z-index: 12; cursor: pointer; -webkit-transition: all 0.2s; transition: all 0.2s; }
@media screen and (min-width: 400px) { #site-navigation ul.menu li.menu-item-has-children > i.fa { margin-right: .25rem; } }
@media screen and (min-width: 872px) { #site-navigation ul.menu li.menu-item-has-children > i.fa { position: absolute; float: none; font-size: 14px; top: 0; right: .6rem; width: 10px; height: 2.25rem; line-height: 2.25rem; } }
#site-navigation ul.menu li.menu-item-has-children > i.fa:hover { color: #fff; }
#site-navigation ul.menu li.menu-item-has-children > i.fa.open { -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); }
@media screen and (min-width: 872px) { #site-navigation ul.menu li.menu-item-has-children > a { position: relative; z-index: 11; padding-right: 1rem; } }
@media screen and (min-width: 872px) { #site-navigation ul.menu li.menu-item-has-children:hover > ul.sub-menu { display: block; } }

button.menu-toggle { background: transparent; border: none; border-color: transparent; font-size: 18px; box-shadow: none; text-shadow: none; display: inline-block; width: 2.6rem; padding: 0; }
button.menu-toggle:focus { box-shadow: inset 2px 2px 5px rgba(0, 0, 0, 0.25); border: none; outline: none; }
@media screen and (min-width: 872px) { button.menu-toggle { display: none; } }

div.nav-links { border-top: 1px solid rgba(255, 255, 255, 0.25); margin: 1rem 0; padding: 1rem .5rem; font-size: 1.1rem; }
div.nav-links a:before { font-family: FontAwesome; font-size: .9rem; display: inline-block; -webkit-transform: translate3d(0, -1px, 0); transform: translate3d(0, -1px, 0); padding-right: .25rem; }
div.nav-links .nav-previous, div.nav-links .nav-next { width: 100% !important; float: none !important; }
div.nav-links .nav-previous a:before, div.nav-links .nav-next a:before { content: '\f053'; }
div.nav-links .nav-next { text-align: left !important; }
div.nav-links .nav-next a:before { content: '\f054'; }

.site-main .comment-navigation, .site-main .posts-navigation, .site-main .post-navigation { margin: 0; }

.posts-navigation { text-align: center; }

div.wp-pagenavi { display: inline-block; padding: .25rem 1.5rem; border-radius: 100px; box-shadow: inset 0 0 50px rgba(0, 0, 0, 0.5); }
div.wp-pagenavi > *, div.wp-pagenavi span.current, div.wp-pagenavi a:hover { border: none; border-left: 1px solid rgba(0, 0, 0, 0.25); }
div.wp-pagenavi > * { padding: 0 .5rem; display: inline-block; margin: 0; }
div.wp-pagenavi > *:first-child { border: none; padding-left: 0; }
div.wp-pagenavi > *:last-child { padding-right: 0; }
div.wp-pagenavi .pages, div.wp-pagenavi .last, div.wp-pagenavi .first { font-size: .9rem; }
@media screen and (min-width: 480px) { div.wp-pagenavi .pages, div.wp-pagenavi .last, div.wp-pagenavi .first { font-size: 1.1rem; } }
div.wp-pagenavi i { font-size: .8rem; -webkit-transform: translate3d(0, -1px, 0); transform: translate3d(0, -1px, 0); }
@media screen and (min-width: 480px) { div.wp-pagenavi i { font-size: .9rem; } }

.more-link { display: block; padding: .5rem 1rem 0; text-align: right; }
.more-link i { font-size: .9rem; }

/*--------------------------------------------------------------
6.0 Accessibility
--------------------------------------------------------------*/
/*--------------------------------------------------------------
7.0 Alignments
--------------------------------------------------------------*/
.alignleft, .alignright { display: block; float: none; margin: .5rem auto; }

.alignleft.first-image { float: left; max-width: 40%; margin: 0 .5rem .5rem 0; }

.alignright.first-image { float: right; max-width: 40%; margin: 0 0 .5rem .5rem; }

@media screen and (min-width: 600px) { .alignleft, .alignleft.first-image { max-width: 50%; display: inline-block; float: left; margin-right: 1.5rem; }
  .alignright, .alignright.first-image { max-width: 50%; display: inline-block; float: right; margin-left: 1.5rem; } }
@media screen and (min-width: 768px) { .alignleft, .alignleft.first-image { max-width: 75%; }
  .alignright, .alignright.first-image { max-width: 75%; } }
/*--------------------------------------------------------------
8.0 Clearings
--------------------------------------------------------------*/
.clearboth { clear: both; }

/*--------------------------------------------------------------
9.0 Widgets
--------------------------------------------------------------*/
#masthead .widget_custom_cf7 { border-top-left-radius: 10px; border-bottom-right-radius: 10px; border: 1px solid #fed329; background: -webkit-linear-gradient(left, #434343, #0e0e0e); background: linear-gradient(to right, #434343, #0e0e0e); margin: 1rem .5rem; overflow: hidden; position: relative; z-index: 200; }
@media screen and (min-width: 480px) { #masthead .widget_custom_cf7 { max-width: 420px; margin: 1rem auto; } }
@media screen and (min-width: 600px) { #masthead .widget_custom_cf7 { width: 300px; position: absolute; top: 150px; left: 50%; -webkit-transform: translate3d(-20%, 0, 0); transform: translate3d(-20%, 0, 0); } }
@media screen and (min-width: 872px) { #masthead .widget_custom_cf7 { top: 10px; right: 1.5rem; left: auto; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); height: 165px; -webkit-transition: all 0.3s; transition: all 0.3s; } }
#masthead .widget_custom_cf7 h3.widget-title { font-family: Michroma, Verdana, Arial, Helvetica, sans-serif; font-size: .9rem; text-transform: lowercase; line-height: 1.5rem; margin: 0 0 .25rem; }
@media screen and (min-width: 872px) { #masthead .widget_custom_cf7 h3.widget-title { text-align: left; padding: 0 1rem; } }
#masthead .widget_custom_cf7 h3.widget-title:after { display: inline-block; content: '\f0dd'; font-family: FontAwesome; margin: 0 0 0 .25rem; font-size: .9rem; -webkit-transform: translate3d(0, -2px, 0); transform: translate3d(0, -2px, 0); -webkit-transition: all 0.3s; transition: all 0.3s; }
@media screen and (min-width: 872px) { #masthead .widget_custom_cf7 h3.widget-title:after { display: none; } }
#masthead .widget_custom_cf7 > div { display: none; background: url("../images/logo_light.png") no-repeat right center #fed329; background-size: contain; padding: .25rem .5rem 0; border-top-left-radius: 10px; color: #000; }
@media screen and (min-width: 872px) { #masthead .widget_custom_cf7 > div { display: block; } }
#masthead .widget_custom_cf7 form p.submit { text-align: right; }
#masthead .widget_custom_cf7 form .wpcf7-submit { font-family: "Yanone Kaffeesatz", Verdana, Arial, Helvetica, sans-serif; font-weight: 300; background: #d81116; color: #fff; border: 2px solid #e2e2e2; border-radius: 100px; font-size: 1rem; font-size: 1.25rem; line-height: 1.75rem; padding: 0 1.5rem; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5); }
#masthead .widget_custom_cf7.open h3.widget-title:after { -webkit-transform: translate3d(0, -2px, 0) rotate(-180deg); transform: translate3d(0, -2px, 0) rotate(-180deg); }

#content .widget_search .search-submit { display: none; }

#secondary aside ul { margin-left: 0; padding-left: .5rem; }
#secondary aside ul li { list-style: none; }
#secondary aside ul li a { position: relative; display: block; line-height: 1.25rem; padding: .25rem 0; }
#secondary aside .widget-title { border-bottom: 1px solid rgba(128, 128, 128, 0.5); }
@media screen and (min-width: 872px) { #secondary aside .widget-title { margin-top: 0; } }

#page-footer .footer-widget-area { padding: .5rem .5rem 1rem; }
@media screen and (min-width: 480px) { #page-footer .footer-widget-area { padding: .5rem 1rem 1rem; } }
@media screen and (min-width: 600px) { #page-footer .footer-widget-area { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; padding: .5rem 0; }
  #page-footer .footer-widget-area .widgets-count-2, #page-footer .footer-widget-area .widgets-count-4 { width: 49%; }
  #page-footer .footer-widget-area .widgets-count-2:nth-child(2n-1), #page-footer .footer-widget-area .widgets-count-4:nth-child(2n-1) { margin-right: 2%; }
  #page-footer .footer-widget-area .widgets-count-3 { width: 32%; margin-right: 2%; }
  #page-footer .footer-widget-area .widgets-count-3:nth-child(3) { margin-right: 0; } }
@media screen and (min-width: 872px) { #page-footer .footer-widget-area { -webkit-justify-content: space-around; -ms-flex-pack: distribute; justify-content: space-around; } }
@media screen and (min-width: 950px) { #page-footer .footer-widget-area { padding: .5rem 1rem; } }
#page-footer .footer-widget-area .widget { margin-bottom: .5rem; text-align: left; }
#page-footer .footer-widget-area .widget:last-child { margin-bottom: 0; }
@media screen and (min-width: 480px) { #page-footer .footer-widget-area .widget, #page-footer .footer-widget-area .widget:last-child { margin-bottom: 1rem; } }
#page-footer .footer-widget-area .widget_pc-sidebar-module { border-top-left-radius: 10px; border-bottom-right-radius: 10px; border: 1px solid #fed329; background: -webkit-linear-gradient(left, #434343, #0e0e0e); background: linear-gradient(to right, #434343, #0e0e0e); margin: 1rem .5rem; overflow: hidden; }
@media screen and (min-width: 950px) { #page-footer .footer-widget-area .widget_pc-sidebar-module { margin: 1rem; } }
#page-footer .footer-widget-area .widget_pc-sidebar-module h3.module-title { font-family: Michroma, Verdana, Arial, Helvetica, sans-serif; font-size: 1rem; text-transform: lowercase; line-height: 1.5rem; margin: 0; padding: 0 1rem .25rem; }
#page-footer .footer-widget-area .widget_pc-sidebar-module .content-container { background: url("../images/logo_light.png") no-repeat right center #fed329; background-size: contain; padding: .5rem; border-top-left-radius: 10px; position: relative; overflow: hidden; }
@media screen and (min-width: 600px) { #page-footer .footer-widget-area .widget_pc-sidebar-module .content-container { min-height: 10rem; } }
@media screen and (min-width: 400px) { #page-footer .footer-widget-area .widget_pc-sidebar-module .content-thumbnail { float: left; margin: .25rem .5rem .1rem 0; max-width: 40%; } }
@media screen and (min-width: 600px) { #page-footer .footer-widget-area .widget_pc-sidebar-module .content-thumbnail { float: none; margin: 0 auto; max-width: 100%; } }
@media screen and (min-width: 872px) { #page-footer .footer-widget-area .widget_pc-sidebar-module .content-thumbnail { float: left; margin: .25rem .5rem 1px 0; max-width: 42%; } }
#page-footer .footer-widget-area .widget_pc-sidebar-module .content-thumbnail img { display: block; margin: 0 auto .5rem; border: 2px solid #000; border-radius: 5px; }
#page-footer .footer-widget-area .widget_pc-sidebar-module .content { color: #000; }
#page-footer .footer-widget-area .widget_pc-sidebar-module span.learn-more { font-family: "Yanone Kaffeesatz", Verdana, Arial, Helvetica, sans-serif; font-weight: 300; background: #d81116; color: #fff; border: 2px solid #e2e2e2; border-radius: 100px; font-size: 1.1rem; line-height: 1.5rem; padding: 0 .75rem; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5); float: right; }

#colophon div.constrainer { padding: 0 0 .5rem; }
#colophon .built-by { clear: both; }
#colophon .copyright-widget-area { margin: 0; padding: 0; color: #fff; line-height: 1rem; font-size: .8rem; background: url("../images/carbon_fiber.png") repeat left top; }
@media screen and (min-width: 950px) { #colophon .copyright-widget-area { width: auto; min-width: 80%; float: left; text-align: left; border-bottom-right-radius: 100px; overflow: hidden; } }
#colophon .copyright-widget-area p { margin: 0 0 1rem; }
#colophon .copyright-widget-area .copyright { text-align: center; background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.4)); background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.4)); padding: .5rem; }
@media screen and (min-width: 950px) { #colophon .copyright-widget-area .copyright { padding: .5rem 2.5rem .5rem 1.5rem; margin: 0; } }
#colophon .copyright-widget-area .copyright a { color: #fff; border-bottom: 1px dotted rgba(255, 255, 255, 0.25); }
#colophon .copyright-widget-area .copyright span { display: block; padding: 0 0 .25rem; }
@media screen and (min-width: 600px) { #colophon .copyright-widget-area .copyright span { padding: 0; }
  #colophon .copyright-widget-area .copyright span.phone, #colophon .copyright-widget-area .copyright span.address { display: inline-block; position: relative; margin: 0 .5rem .25rem; }
  #colophon .copyright-widget-area .copyright span.address:before { content: '\f111'; font-family: FontAwesome; font-size: 4px; position: absolute; width: .8rem; height: .8rem; top: 1px; left: -16px; } }
@media screen and (min-width: 872px) { #colophon .copyright-widget-area .copyright span, #colophon .copyright-widget-area .copyright span.phone, #colophon .copyright-widget-area .copyright span.address { margin: 0 .5rem; }
  #colophon .copyright-widget-area .copyright span.copy { display: inline-block; position: relative; }
  #colophon .copyright-widget-area .copyright span.copy:before { content: '\f111'; font-family: FontAwesome; font-size: 4px; position: absolute; width: .8rem; height: .8rem; top: 1px; left: -16px; } }

/*--------------------------------------------------------------
10.0 Content
--------------------------------------------------------------*/
.entry-header, .page-header { margin: 0 0 .5rem; position: relative; }

h1.entry-title, .page-title { line-height: 1.8rem; font-size: 1.6rem; position: relative; z-index: 1; }

.entry-meta, .entry-footer { font-size: .8rem; margin: 0 1.5rem; line-height: 1.5rem; }

.entry-footer .edit-link, .entry-footer .comments-link { display: block; }

pre { background: rgba(255, 255, 255, 0.05); }

@media screen and (min-width: 768px) { #content .column { float: left; padding: 0; }
  #content .one-fifth { width: 19.2%; margin-right: 1%; }
  #content .two-fifths { width: 39.4%; margin-right: 1%; }
  #content .three-fifths { width: 59.6%; margin-right: 1%; }
  #content .four-fifths { width: 79.8%; margin-right: 1%; }
  #content .one-fourth { width: 23.5%; margin-right: 2%; }
  #content .one-third { width: 32%; margin-right: 2%; }
  #content .one-half { width: 48.5%; margin-right: 3%; }
  #content .two-thirds { width: 66%; margin-right: 2%; }
  #content .three-fourths { width: 74.5%; margin-right: 2%; }
  #content .the-end { margin-right: 0 !important; } }

body.archive article .entry-header, body.blog article .entry-header, body.search article .entry-header, body.single-post article .entry-header, body.error404 article .entry-header { margin-bottom: 0; }

body.blog .page-header, body.archive .page-header, body.search .page-header { margin-bottom: 1.5rem; }
body.blog article, body.archive article, body.search article { margin-bottom: 2rem; }

body.archive .page-header .taxonomy-description { font-size: .9rem; }
body.archive .entry-content { margin-bottom: 1.5rem !important; }

body.search .entry-footer .comments-link { display: none; }

#comments { padding-top: 1.5rem; }
#comments h2.comments-title { font-size: 1.3rem; line-height: 1.7rem; }
#comments ol.comment-list { padding: 0; margin: 0 0 1.5rem; }
#comments ol.comment-list li { list-style: none; border: 1px solid rgba(230, 230, 230, 0.05); background: rgba(255, 255, 255, 0.05); margin-bottom: 1rem; border-radius: 3px; }
#comments ol.comment-list li .comment-meta { padding: .5rem 1rem; background: rgba(255, 255, 255, 0.05); overflow: hidden; }
@media screen and (min-width: 600px) { #comments ol.comment-list li .comment-author { width: 60%; display: inline-block; } }
#comments ol.comment-list li .comment-author .avatar { vertical-align: baseline; }
@media screen and (min-width: 600px) { #comments ol.comment-list li .comment-author .avatar { vertical-align: middle; } }
#comments ol.comment-list li .comment-metadata { font-size: .8rem; margin-left: .25rem; }
@media screen and (min-width: 600px) { #comments ol.comment-list li .comment-metadata { width: 38%; text-align: right; display: inline-block; margin: 0; }
  #comments ol.comment-list li .comment-metadata .comment-edit-link { display: block; } }
#comments ol.comment-list li .comment-content { padding: 1rem 1rem 0; }
#comments ol.comment-list li .comment-content p:last-child { margin-bottom: 0; }
#comments ol.comment-list li .reply { text-align: right; padding: 0 1rem .5rem; }
#comments ol.comment-list li.bypostauthor { border: 1px solid rgba(230, 230, 230, 0.1); }
#comments .form-allowed-tags { background: rgba(230, 230, 230, 0.1); padding: .5rem; }
#comments .form-allowed-tags, #comments .form-allowed-tags code { font-size: .8rem; }

body.home #breadcrumbs, body.home header.entry-header { position: absolute; visibility: hidden; }

#business-listing { clear: both; margin-top: 1.5rem; }
#business-listing h3.p-name { font-size: 1.3rem; line-height: 1.5rem; border-bottom: 1px solid rgba(128, 128, 128, 0.5); }
#business-listing h4 { font-size: 1.1rem; line-height: 1.25rem; margin: .75rem 0 .25rem; font-weight: bold; }
#business-listing div.adr { margin: 1rem 0; }
@media screen and (min-width: 480px) { #business-listing div.adr { width: 45%; float: left; margin-right: 0; } }
#business-listing div.adr span.street-address, #business-listing div.adr span.street-address span { display: block; margin: 0 .5rem; }
#business-listing div.adr span.locality { display: inline-block; margin-left: .5rem; }
#business-listing div.phone-numbers { margin: 1rem 0; }
@media screen and (min-width: 480px) { #business-listing div.phone-numbers { width: 50%; float: left; margin-left: 0; } }
#business-listing div.phone-numbers span.tel { display: block; }
#business-listing div.phone-numbers span.tel span.type { font-weight: bold; display: inline-block; min-width: 75px; }
#business-listing div.office-hours { clear: both; margin: 1rem 0; }
#business-listing div.office-hours > span { display: block; margin: 0 .5rem; }
#business-listing div.email-form { clear: both; margin: .75rem 0; }
#business-listing div.email-form div.wpcf7 > form { margin: 0 .5rem; }
#business-listing div.email-form div.wpcf7 > form p { margin-top: 0; }
#business-listing .acf-map { margin: 2rem 0 1rem; }
#business-listing .acf-map .fn, #business-listing .acf-map .adr { color: #000; font-weight: normal; }
#business-listing .acf-map .fn { font-size: 1.1rem; border: none; }
#business-listing .acf-map .adr { line-height: 1.3rem; margin: .25rem 0; }
@media screen and (min-width: 480px) { #business-listing .acf-map .adr { width: 100%; float: none; } }
#business-listing .acf-map .adr h4 { display: none; }
#business-listing .acf-map .adr span.street-address, #business-listing .acf-map .adr span.street-address span { display: block; }

/*--------------------------------------------------------------
11.0 Infinite scroll
--------------------------------------------------------------*/
/*--------------------------------------------------------------
12.0 Media
--------------------------------------------------------------*/
.acf-map { width: 100%; height: 400px; border: #ccc solid 1px; margin: 20px 0; }

.iframe-wrap { position: relative; padding-bottom: 56.25%; max-width: 100%; max-height: 100%; }
.iframe-wrap iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; max-height: 100%; }

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

.pswp .pswp__caption__center { text-align: center; }

figcaption { position: absolute; visibility: hidden; }