/*
Theme Name: Bike Shed
Theme URI: http://underscores.me/
Author: Two Monkeys
Author URI: http://twomonkeys.co.nz
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bike-shed
Tags:

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.

Bike Shed is based on Underscores http://underscores.me/, (C) 2012-2015 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 http://necolas.github.com/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
    ## Posts and pages
	## Asides
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  margin: 0;
}

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;
}

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

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

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

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-appearance: textfield;
  box-sizing: content-box;
}

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,
textarea {
  color: #404040;
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
  clear: both;
}

p {
  margin-bottom: 1.5em;
}

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 http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

body {
  background: #fff;
  /* Fallback for when there is no custom background color defined. */
}

blockquote, q {
  quotes: "" "";
}
blockquote:before, blockquote:after, q:before, q:after {
  content: "";
}

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. */
}

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;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), inset 0 15px 17px rgba(255, 255, 255, 0.5), inset 0 -5px 12px rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.8);
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1;
  padding: .6em 1em .4em;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  border-color: #ccc #bbb #aaa;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), inset 0 15px 17px rgba(255, 255, 255, 0.8), inset 0 -5px 12px rgba(0, 0, 0, 0.02);
}
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;
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.5), inset 0 2px 5px rgba(0, 0, 0, 0.15);
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
  color: #111;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"] {
  padding: 3px;
}

textarea {
  padding-left: 3px;
  width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: royalblue;
}
a:visited {
  color: purple;
}
a:hover, a:focus, a:active {
  color: midnightblue;
}
a:focus {
  outline: thin dotted;
}
a:hover, a:active {
  outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
  clear: both;
  display: block;
  float: left;
  width: 100%;
}
.main-navigation ul {
  display: none;
  list-style: none;
  margin: 0;
  padding-left: 0;
  text-align: center;
  clear: both;
}
.main-navigation ul ul {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 2em;
  left: -999em;
  z-index: 99999;
  background: #ECF0F1;
  text-align: left;
}
.main-navigation ul ul ul {
  left: -999em;
  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 {
  position: relative;
}
.main-navigation a {
  display: block;
  text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}
.menu-toggle li,
.main-navigation.toggled ul li {
  margin-bottom: 20px;
}
.menu-toggle ul.sub-menu,
.main-navigation.toggled ul ul.sub-menu {
  display: block;
  position: static;
  text-align: center;
  float: none;
  box-shadow: none;
}
.menu-toggle ul.sub-menu li,
.main-navigation.toggled ul ul.sub-menu li {
  display: block;
  position: static;
  margin-bottom: 0;
}
.menu-toggle ul.sub-menu li a,
.main-navigation.toggled ul ul.sub-menu li a {
  text-align: center;
  display: inline-block;
  font-style: italic;
  text-transform: lowercase !important;
}

.menu-toggle {
  float: right;
}

@media screen and (min-width: 980px) {
  .menu-toggle {
    display: none;
  }

  .main-navigation ul {
    display: block;
    float: right;
  }
  .main-navigation ul li {
    float: left;
  }
}
.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 {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}
.screen-reader-text:hover, .screen-reader-text:active, .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;
  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. */
}

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

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

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

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.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;
}

.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%;
}

/* Search widget. */
.widget_search .search-submit {
  display: none;
}

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

.hentry {
  margin: 0 0 1.5em;
}

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

.single .byline,
.group-blog .byline {
  display: inline;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

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

/*--------------------------------------------------------------
## Asides
--------------------------------------------------------------*/
.blog .format-aside .entry-title,
.archive .format-aside .entry-title {
  display: none;
}

/*--------------------------------------------------------------
## 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%;
}

/*--------------------------------------------------------------
## 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;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
body {
  background: white;
}

.wrap {
  width: 1140px;
  max-width: 96%;
  margin: 0 auto;
  position: relative;
}

#primary {
  background: white;
  padding-top: 40px;
}

.home #primary {
  padding-top: 0;
}

.site-title, .site-description {
  text-indent: -9999px;
  height: 0;
  margin: 0;
  padding: 0;
}

#masthead {
  background: white;
}

#masthead a.large-grey-button, a:visited.large-grey-button {
  position: absolute;
  top: 20px;
  right: 0;
  background: #7F8C8D;
  color: white;
  padding: 10px 20px;
  border-radius: 3px;
  text-decoration: none;
  font-size: 24px;
  font-weight: 700;
  display: inline-block;
  text-align: center;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
}
#masthead a.large-grey-button:hover, a:visited.large-grey-button:hover {
  background: #b5bcbd;
}

.woocommerce #content {
  width: 1140px;
  max-width: 96%;
  margin: 0 auto;
  position: relative;
}

.view-cart {
  position: absolute;
  top: 100px;
  right: 0;
}

a.cart-contents, a:visited {
  color: #FA8A00;
  text-decoration: none;
}
@media all and (max-width: 460px) {
  a.cart-contents, a:visited {
    display: none;
  }
}

a.view-cart-button, a:hover.view-cart-button {
  background: #FA8A00;
  color: white;
  padding: 5px 10px;
  border-radius: 3px;
  text-decoration: none;
  font-size: 18px;
  font-weight: 700;
  display: inline-block;
  text-align: center;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
}
a.view-cart-button:hover, a:hover.view-cart-button:hover {
  background: #ffb861;
}

.site-branding {
  min-height: 180px;
}
.site-branding img {
  position: relative;
  z-index: 2;
  margin: 10px 0 -80px 0;
  width: 264px;
  max-width: 50%;
}

#site-navigation {
  background: #ECF0F1;
}
#site-navigation a {
  color: #7F8C8D;
  font-weight: 700;
  font-size: 16px;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
  padding: 5px 0;
  margin-left: 20px;
  text-transform: uppercase;
}
#site-navigation a:hover {
  color: black;
}

.hero {
  background: #FA8A00;
  border-bottom: 20px solid #ECF0F1;
  overflow: hidden;
}

.text-slide {
  margin: 0;
  padding: 0;
  line-height: 0;
  vertical-align: bottom;
}

.logo-bar {
  border-bottom: 20px solid #ECF0F1;
  text-align: center;
  background: white;
}
.logo-bar img {
  max-width: 19.5%;
}
.logo-bar img:hover {
  opacity: 0.5;
}
@media all and (max-width: 700px) {
  .logo-bar img {
    max-width: 33%;
  }
  .logo-bar img:hover {
    opacity: 0.5;
  }
}

.featured {
  background: white;
  padding: 20px 0;
}
.featured h2 {
  text-transform: uppercase;
  color: #BDC3C7;
  text-align: center;
  font-size: 36px;
  line-height: 100%;
  margin-bottom: 0;
}
.featured .product {
  width: 25%;
  padding: 0 20px 20px 20px;
  margin-top: 20px;
  float: left;
  margin-bottom: 40px;
  min-height: 340px;
}
@media all and (max-width: 1020px) {
  .featured .product {
    min-height: 310px;
  }
}
@media all and (max-width: 640px) {
  .featured .product {
    width: 50%;
    min-height: 200px;
  }
}
.featured .product:hover {
  border: 1px solid #BDC3C7;
  border-radius: 3px;
}
.featured .product h3 {
  margin: 0;
  font-size: 16px;
  line-height: 100%;
}
.featured .product a, .featured .product a:visited {
  text-decoration: none;
  color: #7F8C8D;
}
.featured .product img {
  margin: 0;
  vertical-align: bottom;
}
.featured .product span.price {
  text-align: left;
  margin: 0;
  color: #FA8A00;
}
.featured .product button {
  border: none;
  background: #BDC3C7;
  box-shadow: none;
  color: white;
  text-shadow: none;
  padding: 10px;
  margin-top: 10px;
}
.featured .product button:hover {
  background: #ECF0F1;
}
.featured a.large-grey-button, .featured a:visited.large-grey-button {
  clear: both;
  background: #7F8C8D;
  color: white;
  padding: 20px 5px;
  border-radius: 5px;
  text-decoration: none;
  font-size: 24px;
  font-weight: 700;
  display: block;
  width: 240px;
  text-align: center;
  margin: 20px auto;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
}
.featured a.large-grey-button:hover, .featured a:visited.large-grey-button:hover {
  background: #b5bcbd;
}

#colophon {
  clear: both;
  background: #ECF0F1;
  padding: 20px 0;
}

.footer-col {
  width: 33.3%;
  float: left;
  padding: 10px;
}
.footer-col h2 {
  color: #7F8C8D;
  text-transform: uppercase;
  font-size: 18px;
}

.findus iframe {
  max-width: 100%;
}

.contactus a, .contactus a:visited {
  color: #7F8C8D;
  text-decoration: none;
}
.contactus a:hover, .contactus a:visited:hover {
  color: black;
}
.contactus p {
  color: #7F8C8D;
}

input.mail-submit {
  background: #FA8A00;
  border: none;
  box-shadow: none;
  text-shadow: none;
  color: white;
  padding: 5px 10px;
  border-radius: 3px;
  text-decoration: none;
  font-size: 16px;
  font-weight: 700;
  display: inline-block;
  text-align: center;
  -webkit-transition: all 0.2s;
          transition: all 0.2s;
}
input.mail-submit:hover {
  background: #ffb861;
  border: none;
  box-shadow: none;
}

.mailinglist a, .mailinglist a:visited {
  text-decoration: none;
}
.mailinglist a:hover h2, .mailinglist a:visited:hover h2 {
  color: #FA8A00;
}

button.single_add_to_cart_button.button.alt {
  background: #FA8A00;
}
button.single_add_to_cart_button.button.alt:hover {
  background: #ffb861;
}

table.bike-specs tr:nth-child(even) {
  background: #ddd;
}
table.bike-specs td:first-child {
  font-weight: bold;
}
table.bike-specs td {
  line-height: 150%;
  padding: 5px 5px;
}

.menu-toggle {
  background: #7F8C8D;
  border: none;
  box-shadow: none;
  padding: 10px;
  color: white;
  text-shadow: none;
  font-weight: 700;
  font-size: 20px;
  margin: 5px 0;
}
.menu-toggle:hover {
  box-shadow: none;
  background: #b5bcbd;
}

.footer-links a {
  color: #7F8C8D;
  text-decoration: underline;
}
.footer-links a:hover {
  color: #FA8A00;
}

.woocommerce #primary {
  float: right;
  width: 75%;
}
@media all and (max-width: 900px) {
  .woocommerce #primary {
    width: 100%;
  }
}
.woocommerce #secondary {
  padding-top: 40px;
  background: white;
  float: left;
  width: 23%;
}
@media all and (max-width: 900px) {
  .woocommerce #secondary {
    display: none;
  }
}

.widget_product_categories {
  background: #ECF0F1;
  padding: 5px;
}
.widget_product_categories h1 {
  color: #7F8C8D;
  margin: 0;
}
.widget_product_categories a, .widget_product_categories a:visited {
  display: inline-block;
  padding: 3px;
  color: #7F8C8D;
  text-decoration: none;
}
.widget_product_categories a:hover, .widget_product_categories a:visited:hover {
  background: #7F8C8D;
  color: white;
}
.widget_product_categories ul {
  margin: 0;
  list-style-type: none;
  padding: 0;
}
.widget_product_categories ul li {
  margin-bottom: 5px;
  font-size: 18px;
}
.widget_product_categories ul ul {
  padding-left: 10px;
}
.widget_product_categories ul ul li {
  margin-bottom: 0;
  font-style: italic;
  font-size: 14px;
}

#tab-frame_tab {
  text-align: center;
}
#tab-frame_tab h2 {
  padding-bottom: 20px !important;
}
#tab-frame_tab img {
  text-align: center;
}

.related.products ul {
  padding-top: 20px;
}
