/*
Theme Name: 7thVision Theme 2017
Theme URI: http://7thvision.com.au
Description: A 7thVision Theme 2017
*/

/*________ GLOBAL ELEMENTS ________*/

@import url('frontend/css/devs-form.css');
@import url('/shop/includes/templates/shoei/css/products.css');

* {
	border: 0;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
html {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
*,
*:before,
*:after {
	box-sizing: inherit;
}

.ie * {

}
img {
	display: block;
	border: 0;
	/*chrome fix for animations */
	position: relative;
}
a {
	outline: none;
	text-decoration: underline;
	color: #000;
}
a:hover {
	color: #000;
	text-decoration: none;
}
a[href*='tel:'] {
	cursor: default;
	text-decoration: none;
}
strong {
	font-weight: 600;
}
html {
	font-size: 100%;
}
body {
	font-family: 'Montserrat', Arial, 'Helvetica Neue', Helvetica, sans-serif;
	font-size: 16px;
	font-size: 1rem;
	color: #000;
	line-height: 1;
	-webkit-text-size-adjust: 100%; /* Prevent font scaling in landscape */
	-ms-text-size-adjust: 100%;
	font-weight: 500;

	background-color: #fff;
}

.wrapper {
	width: 100%;
	max-width: 1240px;
	max-width: 77.5rem;
	margin: 0 auto;
	padding: 0 20px;
	padding: 0 1.25rem;
}
.wrapper.full {
	max-width: 100%;
}
.ie .wrapper {
	width: 1240px;
}



/*________ HEADER & NAV ________*/

.topHeader {
	background-color: #111;
	border-bottom: 1px solid #fff;
	padding: 16px 0;
	padding: 1rem 0;
	color: #fff;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
}
.topHeader a {
	color: #fff;
	text-decoration: none;
}
.topHeader a:hover {
color: #ccc;
}
.topHeader .flexItems {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
.topHeader .flexItems .flexItem {

}
.topHeader .flexItems .flexItem.search {
	width: 192px;
	width: 12rem;
	height: 20px;
	height: 1.25rem;
	position: relative;
	margin-right: auto;
}
.topHeader .flexItems .flexItem.search form {
	width: 100%;
	height: 100%;
}
.topHeader .flexItems .flexItem.search form ::-webkit-input-placeholder { /* WebKit browsers */
	color: #fff;
}
.topHeader .flexItems .flexItem.search form :-moz-placeholder { /* Firefox 18- */
	color: #fff;
}
.topHeader .flexItems .flexItem.search form ::-moz-placeholder {  /* Firefox 19+ */
	color: #fff;
}
.topHeader .flexItems .flexItem.search form :-ms-input-placeholder { /* Internet Explorer 10+ */
	color: #fff;
}

.topHeader .flexItems .flexItem.search form label {
	display: none;
}
.topHeader .flexItems .flexItem.search form input {
	width: 100%;
	height: 100%;
	padding: 0 24px 0 0;
	padding: 0 1.5rem 0 0;
	background-color: transparent;
	font-weight: 100;
	color: #fff;
border: 0;
}
.topHeader .flexItems .flexItem.search form button[type="submit"] {
	border: none;
	width: 18px;
	width: 1.125rem;
	height: 18px;
	height: 1.125rem;
	background: none;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	opacity: 1;
}
.topHeader .flexItems .flexItem.search form button[type="submit"]:hover {
	opacity: 1;
}
.topHeader .flexItems .flexItem.search form button[type="submit"] img,
.topHeader .flexItems .flexItem.search form button[type="submit"] svg {
	width: 100%;
	height: 100%;
}
.topHeader .flexItems .flexItem.search form button[type="submit"] * {
	fill: #fff;
}

.topHeader .flexItems .flexItem.special {
	text-transform: uppercase;
	font-weight: 300;
}

.topHeader .flexItems .flexItem.actions {
	text-transform: uppercase;
}



.header {
	position: relative;
	background-color: #111;
	color: #fff;
	border-bottom: 1px solid #fff;
	padding: 22px 0;
	padding: 1.375rem 0;
	line-height: 1.5;
}
.header a {
	color: #fff;
	text-decoration: none;
}
.header a:hover {
color: #ccc;
}
.header .flexItems {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
}


.header .flexItems .flexItem.secondaryLogo,
.header .flexItems .flexItem.cart {
	width: 50%;
	width: calc(50% - 110px);
	width: calc(50% - 6.875rem);
}
.header .flexItems .flexItem.secondaryLogo .logo {
    width: 100%;
    max-width: 200px;
    max-width: 12.5rem;
}
.header .flexItems .flexItem.secondaryLogo .logo span {
    display: block;
    font-size: 10px;
    font-size: 0.625rem;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    margin: 4px auto 0;
    margin: 0.25rem auto 0;
}
.header .flexItems .flexItem.logo {
	width: 220px;
	width: 13.75rem;
	-webkit-flex-grow: 0;
	flex-grow: 0;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}
.header .flexItems .flexItem.logo h1,
.header .flexItems .flexItem.logo h2 {
	width: 100%;
}
.header .logo img {
	width: 100%;
	height: auto;
}

.header .flexItems .flexItem.cart {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	text-align: right;
}
.header .flexItems .flexItem.cart .info {
	padding: 0 8px 0 0;
	padding: 0 0.5rem 0 0;
}
.header .flexItems .flexItem.cart .info .total {
	font-weight: 300;
	font-size: 22px;
	font-size: 1.375rem;
	line-height: 1;
	padding: 0 0 6px;
	padding: 0 0 0.375rem;
}
.header .flexItems .flexItem.cart .info .view {
	text-transform: uppercase;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 600;
}
.header .flexItems .flexItem.cart .icon {
	position: relative;
	width: 80px;
	width: 5rem;
}
.header .flexItems .flexItem.cart .icon * {
	fill: #fff;
}

.header .flexItems .flexItem.cart .icon img,
.header .flexItems .flexItem.cart .icon svg {
	width: 54px;
	width: 3.375rem;
	height: 45px;
	height: 2.8125rem;
	float: left;
}
.header .flexItems .flexItem.cart .icon .count {
	display: block;
	border-radius: 50%;
	background-color: #ff0000;
	font-weight: 600;
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1;
	width: 32px;
	width: 2rem;
	height: 32px;
	height: 2rem;
	text-align: center;
	line-height: 32px;
	line-height: 2rem;
	position: absolute;
	top: -16px;
	top: -1rem;
	right: 0;
}
.header .flexItems .flexItem.cart .icon a:hover .count {
background-color: #f1f1f1;
color: #ff0000;
}


.navContainer {
	width: 100%;
	position: relative;
	clear: both;
	z-index: 1000;
	height: 51px;
	height: 3.1875rem;
	background-color: #111;
	border-bottom: 1px solid #fff;
	color: #fff;

}
.navContainer .wrapper {
	padding: 0;
}


.navToggle {
	display: none;
}

.mainNav {
	margin: 0;
	line-height: 100%;
	position: relative;
}
.mainNav li {
	margin: 0;
	padding: 0;
	list-style: none;
}
/* main level link */
.mainNav a {
	text-decoration: none;
	display: block;
	padding: 0 16px;
	padding: 0 1rem;
	margin: 0;
	line-height: 50px;
	line-height: 3.125rem;
	-webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s linear;
	-o-transition: all 0.15s linear;
	transition: all 0.15s linear;
	color: #fff;
}
.mainNav a:hover {
}

/* level 1 list */
.mainNav > li {
	float: left;
	width: 20%;
	border-right: 1px solid #fff;
}
.mainNav > li:first-child {
	border-left: 1px solid #fff;
}
.mainNav > li > a {
	text-align: center;
	text-transform: uppercase;
}
.mainNav > li:hover > a {
	background-color: #ff0000;
}
.mainNav > li.relative-children {
	position: relative;
}
.mainNav > li.has-children > a:after {
	content: '';
	display: inline-block;
	width: 11px;
	width: 0.6875rem;
	height: 6px;
	height: 0.375rem;
	margin: 0 0 2px 6px;
	margin: 0 0 0.125rem 0.375rem;
	background: url(images/icons/icon-arrow-down.png) center center no-repeat;
	background-size: contain;
}

.mainNav li .products {
	margin: 0;
	padding: 0;
	max-width: 100%;
	width: 1239px;
	width: 77.4375rem;
	position: absolute;
	top: 50px;
	top: 3.125rem;
	border: 1px solid #555;
	background-color: #fff;
	display: none;

	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
	-webkit-align-content: flex-start;
	align-content: flex-start;
}
.mainNav li:hover > .products {
	display: -webkit-flex;
	display: flex;
}

.mainNav li .products .category {
	text-align: center;
	width: 16.66%;
	border-right: 1px solid #636363;

	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-content: flex-start;
	align-content: flex-start;
}
.mainNav li .products .category:last-child {
	border-right: none;
}
.mainNav li .products .category.full-face {
	text-align: center;
	width: 49.99%;
	/*width: 83.31%;*/
}
.mainNav li .products .category a.entryTitle {
	font-weight: 300;
	background-color: #252525;
	margin-bottom: 16px;
	margin-bottom: 1rem;
	width: 100%;
	display: block;
}
.mainNav li .products .category a.entryTitle:hover {
	font-weight: 300;
	background-color: #111;
}
.mainNav li .products .category .product {
	width: 100%;
	padding-bottom: 20px;
	padding-bottom: 1.25rem;
}
.mainNav li .products .category.full-face .product {
	width: 33.33%;
	/*width: 20%;*/
}
.mainNav li .products .category .product a {
	line-height: 1.25;
	color: #555;
	font-weight: 300;
}
.mainNav li .products .category .product a:hover {
	color: #ff0000;
}
.mainNav li .products .category .product img {
	width: 80%;
	height: auto;
	max-width: 120px;
	max-width: 7.5rem;
	margin: 0 auto 10px;
	margin: 0 auto 0.625rem;
}
.mainNav li .products .category .product span {
	display: block;

}

/* level 2 list */
.mainNav ul {
	display: none;
	margin: 0;
	padding: 0;
	width: 100%;
	position: absolute;
	top: 50px;
	top: 3.125rem;
	left: 0;
}
.mainNav li:hover > ul {
	display: block;
}
.mainNav ul li {
	float: none;
	margin: 0;
	padding: 0;
	border-top: 1px solid #fff;
}
.mainNav ul a {
	background-color: #252525;
}
.mainNav ul a:hover {
	background-color: #ff0000;
}
.mainNav ul li.menu-item-has-children > a:after {
	border-left-color: #fff;
	top: 16px;
	top: 1rem;
	right: 8px;
	right: 0.5rem;
}
.mainNav ul li.menu-item-has-children > a:hover:after {
	border-left-color: #fff;
}

/* level 3+ list */
.mainNav ul ul {
	left: 240px;
	left: 15rem;
	top: 0;
}




.headerSliderContainer {
	padding-bottom: 64px;
	padding-bottom: 4rem;
}
.headerSliderContainer .slide {
	padding: 74px 0;
	padding: 4.625rem 0;
	text-align: center;
}
.headerSliderContainer .slide h1 {
	padding-bottom: 0;
	color: #fff;
}





/*________ CONTENT ________*/

.contentSection {
	clear: both;
	width: 100%;
}

.contentContainer {
	width: 100%;
	clear: both;
}
.content {
}
.contentContainer .content {
	padding: 0 0 40px;
	padding: 0 0 2.5rem;
}
.mainContent .content {
	width: 71.5%;
	float: left;
}
.halfContent .content {
	width: 50%;
	float: left;
}
.fullContent .content {
	width: 100%;
	float: none;
}


.content h1,
.content .h1,
.content h2,
.content .h2,
.content h3,
.content .h3,
.content h4,
.content .h4,
.content h5,
.content .h5,
.content h6,
.content .h6 {
	line-height: 1.25;
	padding: 0 0 20px;
	padding: 0 0 1.25rem;
	font-weight: 600;
}
.content h1,
.content .h1 {
	text-transform: uppercase;
	font-size: 48px;
	font-size: 3rem;
}
.content h2,
.content .h2 {
	font-size: 36px;
	font-size: 2.25rem;
	font-weight: 300;
}
.content h3,
.content .h3 {

}
.content h4,
.content .h4,
.content h5,
.content .h5,
.content h6,
.content .h6 {

}
.content p {
	padding: 0 0 20px;
	padding: 0 0 1.25rem;
	line-height: 1.5;
	text-align: justify;
}
.content ul,
.content ol {
	padding: 0 0 20px 40px;
	padding: 0 0 1.25rem 2.5rem;
}
.content ul ul,
.content ol ol {
	padding-bottom: 0;
}
.content ul li,
.content ol li {
	line-height: 1.5;
}
.content blockquote {
	font-style: italic;
	padding: 0 0 0 40px;
	padding: 0 0 0 2.5rem;
	margin-bottom: 20px;
	margin-bottom: 1.25rem;
	border-left: 4px solid #222;
	border-left: 0.25rem solid #222;
}
.content iframe {
	padding: 0 0 20px;
	padding: 0 0 1.25rem;
}
.content img {
	max-width: 100%;
	height: auto;
}
.content table {
	margin: 0 0 20px;
	margin: 0 0 1.25rem;
	width: 100%;
	text-align: left;
	line-height: 1.5;
    border-collapse: collapse;
}
.content table thead tr {
}
.content table thead tr th {
    padding: 4px;
    padding: 0.25rem;
    font-weight: 700;
    font-size: 14px;
    font-size: 0.875rem;
}
.content table tbody tr {
	border-top: 1px dotted #ccc;
}
.content table tbody tr td {
	padding: 4px;
    padding: 0.25rem;
    font-size: 12px;
    font-size: 0.75rem;
}
.content hr {
	border: none;
	margin: 0 0 20px;
	margin: 0 0 1.25rem;
	display: block;
	clear: both;
	border-bottom: 1px solid #ccc;
}
.content .entryContent {
	overflow: hidden;/*for gallery +20px*/
	width: 100%;
}
/*.content .entryContent br + br {
	display: none;
}*/


.content .articleContainer {

}
.content .articleContainer .article {
	margin: 0 0 40px;
	margin: 0 0 2.5rem;
	border-bottom: 1px dotted #ccc;
	overflow: hidden;
}
.content .articleContainer .article:last-child {
	border-bottom: none;
}
.content .articleContainer .article .thumbContainer {
	display: block;
	width: 100%;
	max-width: 320px;
	max-width: 20rem;
	float: left;
	margin: 0 30px 40px 0;
	margin: 0 1.875rem 2.5rem 0;
}
.content .articleContainer .article .thumbContainer img {
	width: 100%;
	height: auto;
}
.content .articleContainer .article .thumbContainer:hover img {
	opacity: 0.8;
}
.content .articleContainer .article .articleInfo {
	overflow: hidden;
}
.content .articleContainer .article h3 {
	padding: 0 0 12px;
	padding: 0 0 0.75rem;
	margin: 0 0 12px;
	margin: 0 0 0.75rem;
	border-bottom: 1px solid #e1e1e1;
}
.content .articleContainer .article h3 a {
	text-decoration: none;
}
.content .articleMeta {
	text-align: left;
	margin: 0 0 12px;
	margin: 0 0 0.75rem;
	border-bottom: 1px solid #e1e1e1;
	font-size: 12px;
	font-size: 0.75rem;
}
.content .articleMeta p {
	display: inline-block;
	zoom: 1;
	*display: inline;
	vertical-align: top;
	padding: 0 12px 0 0;
	padding: 0 0.75rem 0 0;
	margin: 0 12px 12px 0;
	margin: 0 0.75rem 0.75rem 0;
	border-right: 1px solid #808080;
	line-height: 1;
	font-size: 14px;
	font-size: 0.875rem;
}
.content .articleMeta p:last-child {
	margin-right: 0;
	padding-right: 0;
	border-right: none;
}
.content .articleContainer .article .articleInfo p.excerpt {
	padding-bottom: 40px;
	padding-bottom: 2.5rem;
}

.content .navBelow {
	padding: 0 0 40px;
	padding: 0 0 2.5rem;
	overflow: hidden;
}
.content .navBelow a.pageNav {
	float: left;
}
.content .navBelow a.navNext {
	float: right;
}






/*________ CONTENT SECTIONS ________*/

.contentSection.dealer {
	padding: 68px 0;
	padding: 4.25rem 0;
	text-align: center;
}

.contentSection.newsletter {
	padding: 40px 0 48px;
	padding: 2.5rem 0 3rem;
}
.contentSection.newsletter p {
	text-transform: uppercase;
	padding: 0 0 12px;
	padding: 0 0 0.75rem;
	line-height: 1.5;
}
.contentSection.newsletter form {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
.contentSection.newsletter form .fieldContainer label {
	display: none;
}
.contentSection.newsletter form .fieldContainer {
	padding: 0 20px 0 0;
	padding: 0 1.25rem 0 0;
}
.contentSection.newsletter form button[type="submit"] {
	width: 180px;
	width: 11.25rem;
	height: 50px;
	height: 3.125rem;
	-webkit-flex-grow: 0;
	flex-grow: 0;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}







/*________ SIDEBAR ________*/

.sidebar {
	padding: 0 0 40px;
	padding: 0 0 2.5rem;
}
.mainContent .sidebar {
	width: 28.5%;
	padding-left: 40px;
	padding-left: 2.5rem;
	float: left;
}
.halfContent .sidebar {
	width: 50%;
	float: left;
	padding-left: 40px;
	padding-left: 2.5rem;
}
.fullContent .sidebar {
	width: 100%;
	float: none;
}

.sidebar .section {
	padding: 0 0 20px;
	padding: 0 0 1.25rem;
}

.sidebar .section h5,
.sidebar .section h6 {
	line-height: 1.25;
	padding: 0 0 20px;
	padding: 0 0 1.25rem;
	font-size: 16px;
	font-size: 1rem;
}

.sidebar .section ul.basicList {
	list-style: none;
	border-top: 1px dotted #ccc;
}
.sidebar .section ul.basicList li {
	list-style: none;
	border-bottom: 1px dotted #ccc;
}
.sidebar .section ul.basicList li a {
	line-height: 1.5;
	padding: 8px 0;
	padding: 0.5rem 0;
	display: block;
	text-decoration: none;
	-webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s linear;
	-o-transition: all 0.15s linear;
	transition: all 0.15s linear;
	font-size: 14px;
	font-size: 0.875rem;
}
.sidebar .section ul.basicList li a:hover {
	padding-left: 4px;
	padding-left: 0.25rem;
}







/*________ FOOTER ________*/

.footer {
	width: 100%;
	clear: both;
	border-bottom: 1px solid #fff;
	background-color: #000;
	color: #646464;
	line-height: 1.3;
	padding: 28px 0;
	padding: 1.75rem 0;
}
.footer .flexBlocks {
	margin-left: -10px;
	margin-left: -0.625rem;
	margin-right: -10px;
	margin-right: -0.625rem;
}
.footer .flexBlocks .flexBlock {
	padding: 0 10px 20px;
	padding: 0 0.625rem 1.25rem;
	-webkit-flex-basis: 25%;
	-ms-flex-preferred-size: 25%;
	flex-basis: 25%;
	max-width: 25%;
}
.footer .flexBlocks .flexBlock a {
	color: #646464;
	text-decoration: none;
	-webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s linear;
	-o-transition: all 0.15s linear;
	transition: all 0.15s linear;
}
.footer .flexBlocks .flexBlock a:hover {
	color: #fff;
}
.footer .flexBlocks .flexBlock h5,
.footer .flexBlocks .flexBlock h6 {
	color: #fff;
	font-weight: 500;
	font-size: 16px;
	font-size: 1rem;
	padding: 0 0 12px;
	padding: 0 0 0.75rem;
}
.footer .flexBlocks .flexBlock h6 {
	padding-bottom: 0;
}

.footer .flexBlocks .flexBlock p {
	padding: 0 0 12px;
	padding: 0 0 0.75rem;
}
.footer .flexBlocks .flexBlock p span {
	color: #fff;
}
.footer .flexBlocks .flexBlock p span a {
	color: #fff;
}
.footer .flexBlocks .flexBlock ul.nav {
	padding: 0 0 24px;
	padding: 0 0 1.5rem;
}
.footer .flexBlocks .flexBlock ul.nav li {
	list-style: none;
	line-height: 1.75;
}
.footer .flexBlocks .flexBlock.logo img {
	width: 100%;
	height: auto;
	max-width: 180px;
	max-width: 11.25rem;
}





.bottomFooter {
	background-color: #000;
	color: #646464;
	font-size: 12px;
	font-size: 0.75rem;
	text-transform: uppercase;
	line-height: 1.25;
	padding: 16px 0;
	padding: 1rem 0;
}
.bottomFooter a {
	color: #646464;
	text-decoration: none;
}
.bottomFooter a:hover {
	color: #fff;
}
.bottomFooter p {
	overflow: hidden;
}
.bottomFooter p span {
	position: relative;
	float: left;
	padding-right: 6px;
	padding-right: 0.375rem;
	margin-right: 6px;
	margin-right: 0.375rem;
}
.bottomFooter p span:last-child {
	padding-right: 0;
	margin-right: 0;
}
.bottomFooter p span:after {
	height: 10px;
	width: 1px;
	content: '';
	display: block;
	background-color: #646464;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.bottomFooter p span:last-child:after {
	display: none;
}



/*________ FORMS ________*/

form * {
	font-family: inherit;
	font-size: 16px;
	font-size: 1rem;
}
form ::-webkit-input-placeholder { /* WebKit browsers */
	color: #666;
}
form :-moz-placeholder { /* Firefox 18- */
	color: #666;
	opacity: 1;
}
form ::-moz-placeholder {  /* Firefox 19+ */
	color: #666;
	opacity: 1;
}
form :-ms-input-placeholder { /* Internet Explorer 10+ */
	color: #666;
}

form fieldset {
  border: none;
}
form fieldset legend {
  display: none;
}
form label {
  display: block;
  margin: 0 0 4px 0;
  margin: 0 0 0.25rem 0;
}
form label.checkbox {
  margin: 0 0 8px 0;
  margin: 0 0 0.5rem 0;
}
form input[type="text"],
form input[type="password"],
form input[type="email"],
form select,
form textarea {
  border: 1px solid #9a9a9a;
  color: #414141;
  width: 100%;
  height: 40px;
  height: 2.5rem;
  font-family: 'Montserrat', Arial, 'Helvetica Neue', Helvetica, sans-serif;
  font-size: 16px;
  font-size: 1rem;
  padding: 0 16px;
  padding: 0 1rem;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 0 10px 0;
  margin: 0 0 0.625rem 0;
}
form select {
  padding: 6px;
  padding: 0.375rem;
}
form label input {
  margin-right: 5px;
  margin-right: 0.3125rem;
}
.g-recaptcha iframe {
	padding: 0;
}





/*________ PRODUCTS LISTING ________*/

.productsContainer .flexBlocks {
	margin-left: -10px;
	margin-left: -0.625rem;
	margin-right: -10px;
	margin-right: -0.625rem;
}
.productsContainer .flexBlocks .flexBlock {
	padding: 0 10px 20px;
	padding: 0 0.625rem 1.25rem;
	-webkit-flex-basis: 33.33%;
	-ms-flex-preferred-size: 33.33%;
	flex-basis: 33.33%;
	max-width: 33.33%;
}
.productsContainer .flexBlocks .flexBlock img {
	width: 100%;
}




/*________ FRONT PAGE ________*/

.home .sliderContainer {
	width: 100%;
	clear: both;
}
.home .sliderContainer .slider {
	position: relative;
}
.home .sliderContainer .slider .slide {
	height: 874px;
	height: 54.625rem;
	position: relative;
}
.home .sliderContainer .slider .slide .overlay {
	height: 220px;
	height: 13.75rem;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: rgba(0,0,0,0.5);
}
.home .sliderContainer .slider .slide .overlay .wrapper {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;

	height: 150px;
	height: 9.375rem;
}

.home .sliderContainer .slider .slide .overlay .wrapper .logoContainer {
	margin-right: 80px;
	margin-right: 5rem;

	-webkit-flex-grow: 0;
	flex-grow: 0;
	-webkit-flex-shrink: 1;
	flex-shrink: 1;
}

.home .sliderContainer .slider .slide .overlay .wrapper .logoContainer img {
	max-width: 100%;
	height: auto;
}
.home .sliderContainer .slider .slide .overlay .wrapper a.button {
	padding: 12px 20px;
	padding: 0.75rem 1.25rem;

	-webkit-flex-grow: 0;
	flex-grow: 0;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}
.home .sliderContainer .slider .slide .overlay .wrapper a.button:hover {
	background-color: #ff0000;
	color: #fff;
}

.home .sliderContainer .slider .slick-dots {
	position: absolute;
	bottom: 240px;
	bottom: 15rem;
}






.home .contentSection.promos {
	padding: 40px 0;
	padding: 2.5rem 0;
}
.home .contentSection.promos .panels {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
.home .contentSection.promos .panels img {
	width: 100%;
	height: auto;
}
.home .contentSection.promos .panels .section:hover img {
	opacity: 0.9;
}
.home .contentSection.promos .panels .large {
	width: 66.41666666666667%;
}
.home .contentSection.promos .panels .small {
	width: 31.83333333333333%;
	margin-left: 1.75%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
.home .contentSection.promos .section.text {
	position: relative;
	-webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s linear;
	-o-transition: all 0.15s linear;
	transition: all 0.15s linear;
}
.home .contentSection.promos .section .promoTxt {
	background: rgba(0,0,0,0.6);
	color: #fff;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 8% 10%;
	display: block;
	opacity: 0;
}
.home .contentSection.promos .section:hover .promoTxt {
	opacity: 1;
}
.home .contentSection.promos .section .title {
	border: 1px solid #b7b7b7;
	display: flex;
  	align-items: center;
  	justify-content: center;
	font-size: 24px;
	font-size: 1.5rem;
	text-transform: uppercase;
	font-weight: 600;
	text-align: center;
	height: 100%;
	line-height: 1.2;
}



.home .contentSection.categories {
	background-color: #ebebeb;
}
.home .contentSection.categories .content {
	background-color: #ebebeb;
	margin-top: -70px;
	margin-top: -4.375rem;
	padding: 14px 14px 0;
	padding: 0.875rem 0.875rem 0;
	position: relative;
}
.home .contentSection.categories .content .flexBlocks {
	margin-left: -10px;
	margin-left: -0.625rem;
	margin-right: -10px;
	margin-right: -0.625rem;
}
.home .contentSection.categories .content .flexBlocks .flexBlock {
	-webkit-flex-basis: 25%;
	-ms-flex-preferred-size: 25%;
	flex-basis: 25%;
	max-width: 25%;

	padding: 0 10px;
	padding: 0 0.625rem;
	text-align: center;
}
.home .contentSection.categories .content .flexBlocks .flexBlock a.inner {
	text-decoration: none;
}
.home .contentSection.categories .content .flexBlocks .flexBlock a span {
	display: block;
}
.home .contentSection.categories .content .flexBlocks .flexBlock a .thumbContainer {
	background-color: #000;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	padding: 14px;
	padding: 0.875rem;
	position: relative;
}
.home .contentSection.categories .content .flexBlocks .flexBlock a:hover .thumbContainer {
	background-color: transparent;
}
.home .contentSection.categories .content .flexBlocks .flexBlock a .thumbContainer:after {
	display: block;
	content: '';
	z-index: 1;
	position: absolute;
	width: 100%;
	width: calc(100% - 48px);
	width: calc(100% - 3rem);
	height: 100%;
	height: calc(100% - 48px);
	height: calc(100% - 3rem);
	border: 1px solid #464646;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	-webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s linear;
	-o-transition: all 0.15s linear;
	transition: all 0.15s linear;
}
.home .contentSection.categories .content .flexBlocks .flexBlock a:hover .thumbContainer:after {
	border-color: #000;
}
.home .contentSection.categories .content .flexBlocks .flexBlock a .thumbContainer img {
	margin: 0 auto;
	width: 80%;
	position: relative;
	z-index: 2;
}
.home .contentSection.categories .content .flexBlocks .flexBlock a .title {
	padding-bottom: 20px;
	padding-bottom: 1.25rem;
	line-height: 1.5;
}
.home .contentSection.categories .content .flexBlocks .flexBlock a:hover .title {
	color: #ff0000;
}


.home .contentSection.fullPromo {
	overflow: hidden;
}
.home .contentSection.fullPromo img {
	width: 100%;
	height: auto;
}


.home .contentSection.latestProducts {
	padding: 40px 0;
	padding: 2.5rem 0;
}
.home .contentSection.latestProducts .productsContainer .flexBlocks .flexBlock {
	-webkit-flex-basis: 25%;
	-ms-flex-preferred-size: 25%;
	flex-basis: 25%;
	max-width: 25%;
}


.home .contentSection.social {
	text-align: center;
}
.home .contentSection.social h5 {
	font-weight: 600;
	font-size: 20px;
	font-size: 1.25rem;
	text-transform: uppercase;
	padding: 0 0 30px;
	padding: 0 0 1.875rem;
}

.home .contentSection.social ul.socialNav {
	justify-content: center;
}
.home .contentSection.social ul.socialNav li {
	padding: 0 20px 40px;
	padding: 0 1.25rem 2.5rem;
}
.home .contentSection.social ul.socialNav li a span * {
	fill: #000;
}

.home .contentSection.social .instagramFeed .flexBlocks {
	margin-left: -10px;
	margin-left: -0.625rem;
	margin-right: -10px;
	margin-right: -0.625rem;
	padding-bottom: 20px;
	padding-bottom: 1.25rem;
}
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock {
	-webkit-flex-basis: 25%;
	-ms-flex-preferred-size: 25%;
	flex-basis: 25%;
	max-width: 25%;

	padding: 0 10px 20px;
	padding: 0 0.625rem 1.25rem;
}
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock a.backstretchThis {
	display: block;
	margin-bottom: 20px;
	margin-bottom: 1.25rem;
	cursor: pointer;
}
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock a.backstretchThis img.thumb {
	opacity: 0;
	width: 100%;
	height: auto;
}
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock a.meta {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;

	text-decoration: none;
	font-weight: 600;
}
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock a.meta > span {
	padding: 0 10px;
	padding: 0 0.625rem;

	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock a.meta > span span {
	padding: 0 4px;
	padding: 0 0.25rem;
}
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock a.meta span.likes span.icon,
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock a.meta span.comments span.icon {
	width: 25px;
	width: 1.5625rem;
	height: 21px;
	height: 1.3125rem;
}
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock a.meta span.likes span.icon svg,
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock a.meta span.likes span.icon img,
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock a.meta span.comments span.icon svg,
.home .contentSection.social .instagramFeed .flexBlocks .flexBlock a.meta span.comments span.icon img {
	width: 100%;
	height: 100%;
}



/*________ FAQ ARCHIVE PAGE ________*/

.faqContainer {
	padding: 0 0 20px;
	padding: 0 0 1.25rem;
}
.faqContainer .faq {
}
.faqContainer .faq h4 {
	line-height: 1.5;
}
.faqContainer .faq h4 a {
	text-decoration: none;
	display: block;
	background-color: #cccccc;
	padding: 8px 12px;
	padding: 0.5rem 0.75rem;

	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-align-items: center;
	align-items: center;
}
.faqContainer .faq h4 a .icon {
	width: 20px;
	width: 1.25rem;
	height: 20px;
	height: 1.25rem;
	overflow: hidden;
	margin: 0 24px 0 0;
	margin: 0 1.5rem 0 0;
	position: relative;
	border-radius: 50%;
	border: 2px solid #1d1e26;
	border: 0.125rem solid #1d1e26;
	display: block;

	-webkit-flex-grow: 0;
	flex-grow: 0;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}
.faqContainer .faq h4 a .icon:before,
.faqContainer .faq h4 a .icon:after {
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	-o-transition: all 0.1s linear;
	transition: all 0.1s linear;
	background-color: #1d1e26;
	display: block;

	position: absolute;
	margin: auto;
	content: '';

	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.faqContainer .faq h4 a .icon:before {
	width: 2px;
	width: 0.125rem;
	height: 10px;
	height: 0.625rem;
}
.faqContainer .faq h4 a .icon:after {
	height: 2px;
	height: 0.125rem;
	width: 10px;
	width: 0.625rem;
}
.faqContainer .faq h4 a:hover .icon:before,
.faqContainer .faq.show h4 a .icon:before,
.faqContainer .faq h4 a:hover .icon:after,
.faqContainer .faq.show h4 a .icon:after {
	background-color: #1d1e26;
}

.faqContainer .faq.show h4 a .icon {
	transform: rotate(45deg);
}

.faqContainer .faq h4 a .text {
	overflow: hidden;
	display: block;
}
.faqContainer .faq .faqContent {
	height: 0;
	opacity: 0;
	overflow: hidden;
}
.faqContainer .faq.show .faqContent {
	height: auto;
	opacity: 1;
}


/*________ DEALER LOCATOR ________*/

.ui-autocomplete {
	border: 1px solid #9a9a9a;
	background: #fff;
	list-style-type: none;
	max-width: 300px;
	line-height: 1.4;
}
.ui-autocomplete li {
	padding: 10px;
}
.ui-autocomplete li:hover {
	cursor: pointer;
	background: #f1f1f1;
}
.ui-helper-hidden-accessible {
	display: none;
}

.content .dealerSearch {
	margin-bottom: 8px;
	margin-bottom: 0.5rem;
}
.content .dealerSearch label,
.content .dealerSearch input,
.content .dealerSearch select {
	display: inline-block;
	width: auto;
}
.content .dealerSearch input,
.content .dealerSearch select {
	margin: 0 8px 12px;
	margin: 0 0.5rem 0.75rem;;
}
.content .dealerSearch button {
	margin-bottom: 12px;
	margin-bottom: 0.75rem;
}

.content .dealerLocator .matches {
	background: #f9f9f9;
	padding: 10px 20px;
	margin-bottom: 20px;
	margin-bottom: 1.25rem;
}
.content .dealerLocator .matches p {
	padding: 0;
}
.content .dealerLocator .matches .svButton {
	font-size: 14px;
	font-size: 0.875rem;
	padding: 0 20px;
	padding: 0 1.25rem;
	margin-left: 8px;
	margin-left: 0.5rem;
}
.content .dealerLocator .mapCanvas {
    width: 100%;
    border: 1px solid #d2d2d2;
    height: 570px;
    margin-bottom: 20px;
    margin-bottom: 1.25rem;
    left: -9999px;
}
.content .dealerListings .sidebar-item-header,
.content .dealerListings .sidebar-item {
	border-bottom: 1px solid #e4e4e4;
	padding: 12px 0;
	padding: 0.75rem 0;
}
.content .dealerListings .sidebar-item-header {
	color: #ff0000;
	border-bottom: 1px solid #ff0000;
}
.content .dealerListings .sidebar-item:hover {
	cursor: pointer;
	background: #f1f1f1;
}
.content .dealerListings .name,
.content .dealerListings .phone,
.content .dealerListings .address {
	display: inline-block;
	vertical-align: top;
	width: 31.33%;
	margin: 0 1%;
	line-height: 1.4;
}
.content .dealerListings .phone {
	width: 20.33%;
}
.content .dealerListings .address {
	width: 42.33%;
}


/*________ CONTACT PAGE ________*/

.page-template-pages-contact .type-page {
	float: right;
	width: 43%;
	padding: 0 0 0 120px;
	padding: 0 0 0 7.5rem;
	font-size: 14px;
	font-size: 0.875rem;
}

.page-template-pages-contact .contactContainer {
	float: left;
	width: 57%;
	padding: 0 0 40px;
	padding: 0 0 2.5rem;
	overflow: hidden;
}



/*________ LANDING PAGE ________*/

.page-template-pages-landing .headerSliderContainer {
	padding-bottom: 0;
}
.page-template-pages-landing .headerSliderContainer .slide h1 img {
    margin: 0 auto;
}
.page-template-pages-landing .contentContainer .wrapper {
	max-width: 100%;
	padding: 0;
}
.page-template-pages-landing .contentContainer .wrapper h2 {
	font-size: 48px;
	font-size: 3rem;
}
.page-template-pages-landing .contentContainer .wrapper h3 {
	font-size: 36px;
	font-size: 2.25rem;
    font-weight: 300;
}
.page-template-pages-landing .contentContainer .wrapper a:not(.svButton) {
	color: #ff0000;
}
.page-template-pages-landing .contentContainer .wrapper p {
	font-weight: 300;
}
.page-template-pages-landing .contentContainer .wrapper .content {
	padding: 0;
}
.page-template-pages-landing .contentContainer .wrapper .entryContent .gallerySliderContainer .carouselContainer {
	display: none;
}
.page-template-pages-landing .contentContainer .wrapper .entryContent .introContent {
	max-width: 1080px;
	max-width: 67.5rem;
	padding: 0 20px;
	padding: 0 1.25rem;
	margin: 0 auto;
}
.page-template-pages-landing .contentContainer .wrapper .entryContent .introContent p {
	font-size: 24px;
	font-size: 1.5rem;
	padding-bottom: 76px;
	padding-bottom: 4.75rem;
}
.page-template-pages-landing .contentContainer .wrapper .entryContent .columnContainer:nth-child(even) {
	background-color: #f1f2f2;
}
.page-template-pages-landing .contentContainer .wrapper .entryContent .columnContainer p {
	font-size: 20px;
	font-size: 1.25rem;
	text-align: left;
}
.page-template-pages-landing .contentContainer .wrapper .entryContent .columnContainer h3 {
	padding-bottom: 28px;
	padding-bottom: 1.75rem;
}
.page-template-pages-landing .contentContainer .wrapper .entryContent .columnContainer .row {
	max-width: 1200px;
	max-width: 75rem;
	margin: 0 auto;
}
.page-template-pages-landing .contentContainer .column-content {
    display: -webkit-flex;
    display: flex;
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    -webkit-justify-content: center;
    justify-content: center;
    height: 100%;
}
.page-template-pages-landing .contentContainer .column-content img.aligncenter {
	margin-bottom: 0;
}


/*________ ARCHIVE PAGES ________*/


/*________ CATEGORY PAGES ________*/


/*________ TAXONOMY PAGES ________*/


/*________ SINGLE PAGES ________*/


/*________ LIGHT GALLERY ________*/

body .lg-backdrop {
	background-color: rgba(0,0,0,0.8);
}
body.admin-bar .lg-outer {
	padding-top: 32px;
}
body .lg-outer .lg-toolbar {
	background-color: transparent;
}
body .lg-outer .lg-sub-html p {
	margin-top: 0;
}
body .lg-outer .lg-sub-html a {
	color: #fff;
	text-decoration: none;
}
body .lg-outer .lg-sub-html a:hover {
	text-decoration: underline;
}


/*________ SLICK SLIDER ________*/

.slick-slider button.slick-prev,
.slick-slider button.slick-next {
	width: 32px;
	width: 2rem;
	height: 32px;
	height: 2rem;
	position: absolute;
	top: 40px;
	top: 2.5rem;
	left: 40px;
	left: 2.5rem;
	text-indent: -9999px;
	background-color: #000;
	z-index: 100;
	-webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s linear;
	-o-transition: all 0.15s linear;
	transition: all 0.15s linear;
}
.slick-slider button.slick-next {
	left: 78px;
	left: 4.875rem;
}
.slick-slider button.slick-prev:hover,
.slick-slider button.slick-next:hover {
	background-color: #fff;
}
.slick-slider button.slick-prev:after,
.slick-slider button.slick-next:after {
	display: block;
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	border: 4px solid transparent;
	border: 0.25rem solid transparent;
	-webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s linear;
	-o-transition: all 0.15s linear;
	transition: all 0.15s linear;
}
.slick-slider button.slick-prev:after {
	border-right-color: #fff;
	border-right-width: 6px;
	border-right-width: 0.375rem;
	right: 4px;
	right: 0.25rem;
}
.slick-slider button.slick-prev:hover:after {
	border-right-color: #000;
}
.slick-slider button.slick-next:after {
	border-left-color: #fff;
	border-left-width: 6px;
	border-left-width: 0.375rem;
	left: 4px;
	left: 0.25rem;
}
.slick-slider button.slick-next:hover:after {
	border-left-color: #000;
}


.slick-slider .slick-dots {
	width: 100%;
	padding: 0;

	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-content: flex-start;
	align-content: flex-start;
}
.slick-slider .slick-dots li {
	width: 10px;
	width: 0.625rem;
	height: 10px;
	height: 0.625rem;
	margin: 0 10px;
	margin: 0 0.625rem;
	list-style: none;
}
.slick-slider .slick-dots li button {
	display: block;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
	border-radius: 50%;
	background-color: #a4a7ad;
	-webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s linear;
	-o-transition: all 0.15s linear;
	transition: all 0.15s linear;
}
.slick-slider .slick-dots li.slick-active button,
.slick-slider .slick-dots li button:hover {
	background-color: #fff;
}




/*________ MISC ________*/


.uppercase {
	text-transform: uppercase;
}

.button {
	background-color: transparent;
	color: #fff;
	text-decoration: none;
	border: 1px solid #fff;
	display: inline-block;
	padding: 16px 42px;
	padding: 1rem 2.625rem;
	line-height: 1.5;
	text-transform: uppercase;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 500;
}
.button:hover {
	background-color: #fff;
	color: #000;
}
.button.black {
	color: #000;
	border-color: #000;
}
.button.black:hover {
	background-color: #000;
	color: #fff;
}





.svButton,
form input[type="submit"],
.wrapper form.elab_form input[type="submit"] {
font-family: 'Montserrat', Arial, 'Helvetica Neue', Helvetica, sans-serif;
font-weight: 500;
font-size: 16px;
font-size: 1rem;
background: #ff0000;
color: #fff;
padding: 0 28px;
padding: 0 1.75rem;
line-height: 40px;
line-height: 2.5rem;
border: 0;
display: inline-block;
overflow: hidden;
text-transform: uppercase;
-webkit-transition: all 0.1s ease-in-out;
-moz-transition: all 0.1s ease-in-out;
-ms-transition: all 0.1s ease-in-out;
-o-transition: all 0.1s ease-in-out;
transition: all 0.1s ease-in-out;
text-decoration: none;
border-radius: 0;
outline: none;
-webkit-appearance: none;
}
.svButton:hover,
.wrapper form.elab_form input[type="submit"]:hover {
background: #696969;
cursor: pointer;
color: #fff;
text-decoration: none;
}
.svButton.small {
padding: 0;
width: 60px;
text-align: center;
font-size: 83%;
text-transform: none;
display: block;
}
.svButton.secondary {
background: #cccccc;
color: #000;
}
.svButton.secondary:hover {
background: #696969;
color: #fff;
}
.svButton.soldOut,
.svButton.soldOut:hover {
background: #ee4f4f;
cursor: default;
}
.svButton.blk {
background: #000;
}
.svButton.blk:hover {
background: #ff0000;
}

.show-1340,
.show-1240,
.show-1140,
.show-1040,
.show-940,
.show-840,
.show-740,
.show-640,
.show-540,
.show-440,
.show-340 {
	display: none;
}

.backstretchThis {
	overflow: hidden;
}

img.injectSvg {
	overflow: hidden;
}

.ui-widget {
	font-family: inherit;
}

.mapContainer {
	position: relative;
	width: 100%;
}
.mapContainer .locationCanvas {
	width: 100%;
	height: 100%;
	position: absolute;
}
.mapContainer img {
	max-width: none;
}
.mapContainer .gm-style-cc {
	display: none;
}

.hyphenate { /*allow really big words to wrap*/
	overflow-wrap: break-word;
	word-wrap: break-word;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	-moz-hyphens: auto;
	hyphens: auto;
}

.flexBlocks {
	overflow: hidden;
	display: -webkit-flex;
	display: flex;
	-webkit-flex: 0 1 auto;
	flex: 0 1 auto;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;

	width: auto;

	margin-left: -20px;
	margin-left: -1.25rem;
	margin-right: -20px;
	margin-right: -1.25rem;
}
.flexBlocks .flexBlock {
	padding: 0 20px;
	padding: 0 1.25rem;

	-webkit-box-flex: 0;
	-webkit-flex: 0 0 auto;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;

	-webkit-flex-basis: 50%;
	-ms-flex-preferred-size: 50%;
	flex-basis: 50%;
	max-width: 50%;
}


.wrapper .hide,
.wrapper .contentContainer .hide,
.wrapper .contentContainer .content .hide,
.hide,
.clearBoth {
	display: none;
}
.clearLeft {
clear: left;
}
.clearFix::after {
	clear: both;
	display: block;
	content: ' ';
	visibility: hidden;
	line-height: 0;
	height: 0;
}

button {
	cursor: pointer;
}
button::-moz-focus-inner { /* Remove stupid button padding in FF */
    border:0;
    padding:0;
}

.navigation .wp-pagenavi span,
.navigation .wp-pagenavi a {
	border: none;
}

.flexibleContainer { /* Flexible iFrame */
    position: relative;
    padding-bottom: 50%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}
.flexibleContainer iframe,
.flexibleContainer object,
.flexibleContainer embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.videoContainer {
    float: none;
    clear: both;
    width: 100%;
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 0;
    height: 0;
    margin-bottom: 20px;
    margin-bottom: 1.25rem;
}
.videoContainer iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
}

.animate,
.animate:hover,
.animate:focus,
.animate:active {
	-webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s linear;
	-o-transition: all 0.15s linear;
	transition: all 0.15s linear;
}

.centerVertical {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-direction: column;
	flex-direction: column;
	height: 100%;
	position: relative;
}
.absoluteWrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


.feedback {
	width: 100%;
	clear: both;
	border-radius: 4px;
	border-radius: 0.25rem;
	padding: 16px 48px 0 20px;
	padding: 1rem 3rem 0 1.25rem;
	color: #fff;
	margin: 0 auto 20px;
	margin: 0 auto 1.25rem;
	position: relative;
}
.feedback.positive {
	background-color: #26ba3b;
}
.feedback.warning {
	background-color: #ffa800;
}
.feedback.negative {
	background-color: #ee3333;
}
.feedback p {
	padding: 0 0 16px;
	padding: 0 0 1rem;

	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: nowrap;
}

.feedback p span {
	display: block;
}
.feedback p .icon {
	margin-right: 12px;
	margin-right: 0.75rem;
	width: 24px;
	width: 1.5rem;
	height: 24px;
	height: 1.5rem;

	flex-grow: 0;
	flex-shrink: 0;
}
.feedback p .icon * {
	stroke: #fff;
}
.feedback p .icon img,
.feedback p .icon svg {
	width: 100%;
	height: 100%
}

.feedback ul {
	padding: 0 0 20px 40px;
	padding: 0 0 1.25rem 2.5rem;
}
.feedback .close {
	background-color: transparent;
	height: 20px;
	height: 1.25rem;
	width: 20px;
	width: 1.25rem;
	border-radius: 50%;
	position: absolute;
	top: 16px;
	top: 1rem;
	right: 20px;
	right: 1.25rem;
	border: 1px solid #fff;
}
.feedback .close:hover,
.feedback .close:focus {
	background-color: #fff;
}
.feedback .close * {
	stroke: #fff;
	transition: all 0.15s linear;
}
.feedback.positive .close:hover *,
.feedback.positive .close:focus * {
	stroke: #26ba3b;
}
.feedback.warning .close:hover *,
.feedback.warning .close:focus * {
	stroke: #ffa800;
}
.feedback.negative .close:hover *,
.feedback.negative .close:focus * {
	stroke: #ee3333;
}
.feedback .close img,
.feedback .close svg {
	width: 12px;
	width: 0.75rem;
	height: 12px;
	height: 0.75rem;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

ul.socialNav {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: center;
	align-items: center;
	-webkit-align-content: flex-start;
	align-content: flex-start;
}
ul.socialNav li {
	list-style: none;
	padding: 10px 0;
	padding: 0.625rem 0;
}
ul.socialNav li:not(:last-child) {
	padding-right: 20px;
	padding-right: 1.25rem;
}
ul.socialNav li a {
	display: block;
	width: 36px;
	width: 2.25rem;
	height: 36px;
	height: 2.25rem;
	position: relative;
	overflow: hidden;
}
ul.socialNav li a span {
	display: block;
	width: 100%;
	height: 100%;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-transition-duration: 0.4s;
	transition-duration: 0.4s;
	-webkit-transition-property: transform;
	transition-property: transform;
}
ul.socialNav li a span img,
ul.socialNav li a span svg {
	margin: auto;
	position: absolute;
	top: 0; left: 0; bottom: 0; right: 0;
	width: 100%;
  	height: auto;
}
ul.socialNav li a:hover span,
ul.socialNav li a:focus span,
ul.socialNav li a:active span {
	-webkit-transform: scale(0.9);
  	transform: scale(0.9);
	-webkit-transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
	transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}
ul.socialNav li a span * {
	fill: #808285;
	-webkit-transition: all 0.15s linear;
	-moz-transition: all 0.15s linear;
	-ms-transition: all 0.15s linear;
	-o-transition: all 0.15s linear;
	transition: all 0.15s linear;
}
ul.socialNav li a:hover span * {
	fill: #fff;
}


/*________ WP IMAGES ________*/

/*
Resize images to fit the main content area.
- Applies only to images uploaded via WordPress by targeting size-* classes.
- Other images will be left alone. Use "size-auto" class to apply to other images.
*/
img.size-auto,
img.size-full,
img.size-large,
img.size-medium,
.attachment img {
	max-width: 100%; /* When images are too wide for containing element, force them to fit. */
	height: auto; /* Override height to match resized width for correct aspect ratio. */
}
.alignleft,
img.alignleft {
	display: inline;
	float: left;
	margin-right: 24px;
	margin-right: 1.5rem;
}
.alignright,
img.alignright {
	display: inline;
	float: right;
	margin-left: 24px;
	margin-left: 1.5rem;
}
.aligncenter,
img.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
img.alignleft,
img.alignright,
img.aligncenter,
img.alignnone {
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
}
.wp-caption {
	background: #f1f1f1;
	margin-bottom: 20px;
	margin-bottom: 1.25rem;
	max-width: 100%;
	padding: 4px;
	padding: 0.25rem;
	text-align: center;
}
.wp-caption img {
	padding: 4px 4px 0;
	padding: 0.25rem 0.25rem 0;
	max-width: 100%;
	height: auto;
}
.wp-caption p.wp-caption-text {
	color: #888;
	font-size: 12px;
	font-size: 0.75rem;
	padding: 4px;
	padding: 0.25rem;
}
.wp-smiley {
	margin: 0;
}

.gallery {
	padding: 0 0 20px;
	padding: 0 0 1.25rem;
	clear: both;
	width: 100%;
	width: calc(100% + 20px);
	width: calc(100% + 1.25rem);
	text-align: left;
}
.gallery .gallery-item {
	width: 25%;
	display: inline-block;
	zoom: 1;
	*display: inline;
	vertical-align: top;
	min-width: 120px;
	min-width: 7.5rem;
	padding: 0 20px 20px 0;
	padding: 0 1.25rem 1.25rem 0;
}
.gallery-columns-2 .gallery-item {
	width: 50%;
}
.gallery-columns-2 .gallery-item {
	width: 50%;
}
.gallery-columns-3 .gallery-item {
	width: 33.33%;
}
.gallery-columns-4 .gallery-item {
	width: 25%;
}
.gallery-columns-5 .gallery-item {
	width: 20%;
}
.gallery-columns-6 .gallery-item {
	width: 16.66%;
}
.gallery-columns-7 .gallery-item {
	width: 14.285%;
}
.gallery-columns-8 .gallery-item {
	width: 12%;
}
.gallery .gallery-item a {
	display: block;
	background-color: #222;
	overflow: hidden;
}
.gallery .gallery-item img {
	width: 100%;
	height: auto;
}
.gallery .gallery-item a img:hover {
	opacity: 0.8;
}
.gallery .gallery-caption {
	color: #888;
	font-size: 12px;
	font-size: 0.75rem;
	margin: 0 0 12px;
	margin: 0 0 0.75rem;
	text-align: center;
	line-height: 1.5;
}
.gallery br {
	display: none;
}
.gallery dl {
	margin: 0;
}
.content .attachment img {/* single attachment images should be centered */
	display: block;
	margin: 0 auto;
}


/*________ WP PRINT ________*/

@media print {

}


/*________ RESPONSIVE ________*/

/* 1540px */
@media (max-width: 96.25em) {

}

/* 1440px */
@media (max-width: 90em) {

	/*________ FRONT PAGE ________*/

	.home .sliderContainer .slider .slide {
		height: 690px;
		height: 43.125rem;
	}
}

/* 1340px */
@media (max-width: 83.75em) {

	/*________ MISC ________*/

	.hide-1340 {
		display: none;
	}
	.show-1340 {
		display: block;
	}
}

/* 1240px */
@media (max-width: 77.5em) {

	/*________ HEADER & NAV ________*/

	.mainNav > li:first-child {
		border-left: none;
	}
	.mainNav > li:last-child {
		border-right: none;
	}

	.mainNav > li > a {
		font-size: 14px;
		font-size: 0.875rem;
	}


	/*________ MISC ________*/

	.hide-1240 {
		display: none;
	}
	.show-1240 {
		display: block;
	}
}

/* 1140px */
@media (max-width: 71.25em) {

	/*________ HEADER & NAV ________*/

	.mainNav > li > a {
		font-size: 12px;
		font-size: 0.75rem;
	}
	.mainNav > li.has-children > a:after {
		width: 8px;
		width: 0.5rem;
		height: 4px;
		height: 0.25rem;
	}


	/*________ FOOTER ________*/

	.footer .flexBlocks .flexBlock {
		-webkit-flex-basis: 33.33%;
		-ms-flex-preferred-size: 33.33%;
		flex-basis: 33.33%;
		max-width: 33.33%;
	}
	.footer .flexBlocks .flexBlock.logo {
		display: none;
	}


	/*________ MISC ________*/

	.hide-1140 {
		display: none;
	}
	.show-1140 {
		display: block;
	}
}

/* 1040px */
@media (max-width: 65em) {

	/*________ MISC ________*/

	.hide-1040 {
		display: none;
	}
	.show-1040 {
		display: block;
	}


	/*________ FRONT PAGE ________*/

	.home .sliderContainer .slider .slide {
		height: 510px;
		height: 31.875rem;
	}

	.home .sliderContainer .slider .slide .overlay {
		height: 160px;
		height: 10rem;
	}
	.home .sliderContainer .slider .slide .overlay .wrapper {
		height: 100%;
	}
	.home .sliderContainer .slider .slide .overlay .wrapper a.button {
		padding-top: 8px;
		padding-top: 0.5rem;
		padding-bottom: 8px;
		padding-bottom: 0.5rem;
		font-size: 16px;
		font-size: 1rem;
	}

	.home .sliderContainer .slider .slick-dots {
		bottom: 180px;
		bottom: 11.25rem;
	}


	.home .contentSection.categories .content {
		margin-top: 0;
	}
}

/* 940px */
@media (max-width: 58.75em) {

	/*________ HEADER & NAV ________*/

	.header .flexItems .flexItem.secondaryLogo,
	.header .flexItems .flexItem.cart {
	    width: calc(50% - 80px);
	    width: calc(50% - 5rem);
	}
	.header .flexItems .flexItem.secondaryLogo .logo {
		max-width: 140px;
		max-width: 8.75rem;
	}

	.header .flexItems .flexItem.logo {
		max-width: 160px;
		max-width: 10rem;
	}


	.mainNav li > a {
		font-size: 10px;
		font-size: 0.625rem;
	}
	.mainNav li .products .category .product a {
		font-size: 14px;
		font-size: 0.875rem;
	}





	/*________ MISC ________*/

	.hide-940 {
		display: none;
	}
	.show-940 {
		display: block;
	}


	/*________ CONTACT PAGE ________*/

	.page-template-pages-contact .type-page {
		padding-left: 40px;
		padding-left: 2.5rem;
	}
}

/* 840px */
@media (max-width: 52.5em) {

	/*________ HEADER & NAV ________*/

	.topHeader .flexItems {
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-align-content: flex-start;
		align-content: flex-start;
		justify-content: flex-end;
		position: relative;
	}
	.topHeader .flexItems .flexItem {
		width: 100%;
		text-align: right;
	}
	.topHeader .flexItems .flexItem.search {
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		margin: auto;
		height: 32px;
		height: 2rem;
	}
	.topHeader .flexItems .flexItem.special {
		padding-bottom: 8px;
		padding-bottom: 0.5rem;
	}



	.header .flexItems .flexItem.tagline {
		width: 100%;
		-webkit-order: 1;
		order: 1;
		text-align: right;
	}



	.header .flexItems .flexItem.cart {
		position: absolute;
		bottom: -48px;
		bottom: -3rem;
		right: 20px;
		right: 1.25rem;
		z-index: 1600;
		width: auto;
	}
	.header .flexItems .flexItem.cart .info .total {
		padding-bottom: 0;
		font-size: 20px;
		font-size: 1.25rem;
	}
	.header .flexItems .flexItem.cart .info .view {
		display: none;
	}
	.header .flexItems .flexItem.cart .icon {
		width: 50px;
		width: 3.125rem;
	}
	.header .flexItems .flexItem.cart .icon img,
	.header .flexItems .flexItem.cart .icon svg {
		width: 36px;
		width: 2.25rem;
		height: 30px;
		height: 1.875rem;
	}
	.header .flexItems .flexItem.cart .icon .count {
		font-size: 16px;
		font-size: 1rem;
		width: 24px;
		width: 1.5rem;
		height: 24px;
		height: 1.5rem;
		line-height: 24px;
		line-height: 1.5rem;
		top: -8px;
		top: -0.5rem;
	}


















	.navContainer {
		height: 60px;
		height: 3.75rem;
	}

	.navToggle {
		transition: background 0.3s;
		overflow: hidden;
		position: relative;
		background: transparent;
		width: 40px;
		width: 2.5rem;
		margin: 10px 0 0 16px;
		margin: 0.625rem 0 0 1rem;
		float: left;
		display: block;
	}
	.navToggle span.icon {
		position: absolute;
		top: 12px;
		top: 0.75rem;
		left: 0;
		right: 0;
		margin: auto;
		width: 32px;
		width: 2rem;
		height: 3px;
		height: 0.1875rem;
		background-color: #fff;
		transition: background 0s 0.3s;
		display: block;
	}
	.navToggle span.icon::before,
	.navToggle span.icon::after {
		position: absolute;
		display: block;
		left: 0;
		width: 32px;
		width: 2rem;
		height: 3px;
		height: 0.1875rem;
		background-color: #fff;
		content: "";
		transition-duration: 0.3s, 0.3s;
		transition-delay: 0.3s, 0s;
	}
	.navToggle span.icon::before {
		top: -10px;
		top: -0.625rem;
		transition-property: top, transform;
	}
	.navToggle span.icon::after {
		bottom: -10px;
		bottom: -0.625rem;
		transition-property: bottom, transform;
	}
	.navToggle.toggled span.icon {
		background-color: transparent;
	}
	.navToggle.toggled span.icon::before {
		top: 0;
		transform: rotate(45deg);
	}
	.navToggle.toggled span.icon::after {
		bottom: 0;
		transform: rotate(-45deg);
	}
	.navToggle.toggled span.icon::before,
	.navToggle.toggled span.icon::after {
		transition-delay: 0s, 0.3s;
	}

	.navToggle span.text {
		display: block;
		text-transform: uppercase;
		font-size: 12px;
		font-size: 0.75rem;
		text-align: center;
		color: #fff;
		padding: 30px 0 0;
		padding: 1.875rem 0 0;
	}

	.mainNav {
		opacity: 0;
		height: 0;
		overflow: hidden;
		position: absolute;
		top: 80px;
		top: 5rem;
		left: 0;
		width: 100%;
		padding: 0 20px;
		padding: 0 1.25rem;
	}
	.mainNav.show {
		opacity: 1;
		height: auto;
		overflow: visible;
	}
	.mainNav li {
		width: 100%;
		float: none;
		border-bottom: 1px solid #000;
		position: relative;
	}

	.mainNav > li {
		background-color: #222;
		background-color: rgba(0, 0, 0, 0.85);
		border-right: none;
	}
	.mainNav > li:first-child {
		border-radius: 6px 6px 0 0;
		border-radius: 0.375rem 0.375rem 0 0;
		overflow: hidden;
	}
	.mainNav > li:last-child {
		border-radius: 0 0 6px 6px;
		border-radius: 0 0 0.375rem 0.375rem;
		overflow: hidden;
		border-bottom: none;
	}
	.mainNav li:hover > ul {
		display: none;
	}
	.mainNav li.hover > ul {
		display: block;
	}
	.mainNav ul {
		width: 100%;
		position: relative;
		top: auto;
		left: auto;
	}
	.mainNav .menu-item-has-children > a:after {
		border-color: transparent;
		border-top-color: #fff;
		left: auto;
		right: auto;
		top: 32px;
		top: 2rem;
	}
	.mainNav .menu-item-has-children:hover > a:after {
		border-top-color: #fff;
	}
	.mainNav ul li {
		border: none;
		border-top: 1px solid #000;
	}
	.mainNav ul a {
		text-align: center;
		line-height: 40px;
		line-height: 2.5rem;
	}
	.mainNav ul ul a {
		padding-left: 48px;
		padding-left: 3rem;
	}


	.mainNav li .products {
		display: none;
		position: relative;
		top: auto;
	}
	.mainNav li:hover .products {
		display: none;
	}
	.mainNav li.hover .products {
		display: -webkit-flex;
		display: flex;
	}
	.mainNav li .products .category a.entryTitle {
		font-size: 14px;
		font-size: 0.875rem;
	}





	/*________ CONTENT ________*/

	.content .articleContainer .article .thumbContainer {
		max-width: 200px;
		max-width: 12.5rem;
		margin-right: 20px;
		margin-right: 1.25rem;
	}


	/*________ FOOTER ________*/

	.footer .flexBlocks .flexBlock {
		-webkit-flex-basis: 50%;
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
		max-width: 50%;
	}
	.footer .flexBlocks .flexBlock.info {
		-webkit-flex-basis: 100%;
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
		max-width: 100%;
	}


	/*________ MISC ________*/

	.hide-840 {
		display: none;
	}
	.show-840 {
		display: block;
	}



	/*________ FRONT PAGE ________*/

	.home .contentSection.categories .content .flexBlocks .flexBlock a .thumbContainer {
		margin-bottom: 20px;
		margin-bottom: 1.25rem;
	}
	.home .contentSection.categories .content .flexBlocks .flexBlock a .title {
		font-size: 14px;
		font-size: 0.875rem;
	}

	.home .contentSection.latestProducts .productsContainer .flexBlocks .flexBlock {
		-webkit-flex-basis: 33.33%;
		-ms-flex-preferred-size: 33.33%;
		flex-basis: 33.33%;
		max-width: 33.33%;
	}
	.home .contentSection.latestProducts .productsContainer .flexBlocks .flexBlock:last-child {
		display: none;
	}
}

/* 782px //should only be used for .admin-bar items */
@media (max-width: 48.875em) {

}

/* 766px */
@media (max-width: 47.875em) {
	/*________ LANDING PAGE ________*/
	
	body.page-template-pages-landing .contentContainer .wrapper .entryContent .columnContainer .row .col-sm-4 {
		order: 1;
	}
}

/* 740px */
@media (max-width: 46.25em) {

	/*________ HEADER & NAV ________*/

	.mainNav li .products {
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-align-content: flex-start;
		align-content: flex-start;
	}
	.mainNav li .products .category {
		border-right: none;
	}
	.mainNav li .products .category,
	.mainNav li .products .category.full-face,
	.mainNav li .products .category.road {
		width: 100%;
	}
	.mainNav li .products .category a.entryTitle {
		line-height: 32px;
		line-height: 2rem;
	}
	.mainNav li .products .category .product,
	.mainNav li .products .category.road .product {
		width: 33.33%;
	}
	.mainNav li .products .category .product a {
		font-size: 12px;
		font-size: 0.75rem;
	}


	/*________ CONTENT ________*/

	.contentContainer .content {
		float: none;
		width: 100%;
	}


	/*________ SIDEBAR ________*/

	.contentContainer .sidebar {
		width: 100%;
		float: none;
		padding-left: 0;
	}

	/*________ MISC ________*/

	.hide-740 {
		display: none;
	}
	.show-740 {
		display: block;
	}


	/*________ FRONT PAGE ________*/


	.home .contentSection.categories .content .flexBlocks .flexBlock {
		-webkit-flex-basis: 50%;
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
		max-width: 50%;
	}
	.home .contentSection.categories .content .flexBlocks .flexBlock a .thumbContainer {
		margin-bottom: 14px;
		margin-bottom: 0.875rem;
	}

	.home .contentSection.fullPromo img {
		left: 50%;
		position: relative;
		width: 840px;
		width: 52.5rem;
		margin-left: -420px;
		margin-left: -26.25rem;
	}



	.contentSection.newsletter p {
		text-align: center;
	}
	.contentSection.newsletter form {
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-align-content: flex-start;
		align-content: flex-start;
	}

	.contentSection.newsletter form .fieldContainer {
		padding: 0 0 20px;
		padding: 0 0 1.25rem;
	}
	.contentSection.newsletter form button[type="submit"] {
		width: 100%;
	}
}

/* 640px */
@media (max-width: 40em) {

	/*________ HEADER & NAV ________*/

	.topHeader .flexItems .flexItem {
		text-align: center;
		padding-bottom: 10px;
		padding-bottom: 0.625rem;
	}
	.topHeader .flexItems .flexItem.special {
		padding-bottom: 16px;
		padding-bottom: 1rem;
	}


	.topHeader .flexItems .flexItem.search {
		position: relative;
		width: 200px;
		width: 12.5rem;
		-webkit-order: 3;
		order: 3;
		padding-bottom: 0;
	}


	.header .flexItems .flexItem.logo {
		width: 100%;
	}
	.header .flexItems .flexItem.logo h1,
	.header .flexItems .flexItem.logo h2 {
		max-width: 120px;
		max-width: 7.5rem;
		margin: 0 auto;
	}
	.header .flexItems .flexItem.tagline {
		display: none;
	}




	/*________ MISC ________*/

	.hide-640 {
		display: none;
	}
	.show-640 {
		display: block;
	}

	.button {
		font-size: 16px;
		font-size: 1rem;
	}



	/*________ FRONT PAGE ________*/

	.home .sliderContainer .slider .slide {
		height: 400px;
		height: 25rem;
	}
	.home .sliderContainer .slider .slide .overlay {
		height: 120px;
		height: 7.5rem;
	}

	.home .sliderContainer .slider .slick-dots {
		bottom: 140px;
		bottom: 8.75rem;
	}

	.home .contentSection.promos .panels {
		-webkit-align-items: flex-start;
		align-items: flex-start;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-align-content: flex-start;
		align-content: flex-start;
	}
	.home .contentSection.promos .panels .large {
		width: 100%;
		padding-bottom: 20px;
		padding-bottom: 1.25rem;
	}
	.home .contentSection.promos .panels .small {
		width: 100%;
		padding: 0;
		margin: 0;
		-webkit-flex-direction: row;
		flex-direction: row;
	}
	.home .contentSection.promos .panels .small .section {
		width: 50%;
		width: calc(50% - 10px);
		width: calc(50% - 0.625rem);
	}



	.home .contentSection.fullPromo img {
		width: 640px;
		width: 40rem;
		margin-left: -320px;
		margin-left: -20rem;
	}


	/*________ FRONT PAGE ________*/

	.home .contentSection.latestProducts .productsContainer .flexBlocks .flexBlock {
		-webkit-flex-basis: 50%;
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
		max-width: 50%;
	}
	.home .contentSection.latestProducts .productsContainer .flexBlocks .flexBlock:last-child {
		display: block;
	}


	.home .contentSection.social ul.socialNav li {
		padding-left: 10px;
		padding-left: 0.625rem;
		padding-right: 10px;
		padding-right: 0.625rem;
	}
	.home .contentSection.social .instagramFeed .flexBlocks .flexBlock {
		-webkit-flex-basis: 50%;
		-ms-flex-preferred-size: 50%;
		flex-basis: 50%;
		max-width: 50%;
	}
	.home .contentSection.social .instagramFeed .flexBlocks .flexBlock:nth-last-child(1),
	.home .contentSection.social .instagramFeed .flexBlocks .flexBlock:nth-last-child(2) {
		display: none;
	}

	/*________ DEALER LOCATOR ________*/

	.content .dealerSearch label {
		margin-bottom: 8px;
		margin-bottom: 0.5rem;
	}
	.content .dealerSearch input,
	.content .dealerSearch select {
		display: block;
		margin-left: 0;
		margin-right: 0;
		width: 100%;
	}
	.content .dealerListings {
		font-size: 12px;
		font-size: 0.75rem;
	}

	/*________ CONTACT PAGE ________*/

	.page-template-pages-contact .contactContainer {
		float: none;
		width: 100%;
	}
	.page-template-pages-contact .type-page {
		float: none;
		width: 100%;
		padding: 0 0 20px;
		padding: 0 0 1.25rem;
	}

}

/* 540px */
@media (max-width: 33.75em) {

	/*________ FOOTER ________*/

	.footer .flexBlocks .flexBlock {
		-webkit-flex-basis: 100%;
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
		max-width: 100%;
	}
	.footer .flexBlocks .flexBlock.shopCategories .socialNav {
		padding-bottom: 10px;
		padding-bottom: 0.625rem;
	}


	/*________ MISC ________*/

	.hide-540 {
		display: none;
	}
	.show-540 {
		display: block;
	}





}

/* 440px */
@media (max-width: 27.5em) {

	/*________ HEADER & NAV ________*/

	.mainNav li .products .category .product,
	.mainNav li .products .category.road .product {
		width: 50%;
	}

	/*________ CONTENT ________*/

	.content .articleContainer .article .thumbContainer {
		max-width: 100%;
		margin-right: 0;
		float: none;
	}


	/*________ IMAGERY ________*/

	.alignleft,
	img.alignleft,
	.alignright,
	img.alignright {
		float: none;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
	.gallery .gallery-item {
		width: 50% !important;
	}


	/*________ MISC ________*/

	.hide-440 {
		display: none;
	}
	.show-440 {
		display: block;
	}


	/*________ FRONT PAGE ________*/


	.home .sliderContainer .slider .slide .overlay .wrapper {
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-align-content: center;
		align-content: center;
		padding: 20px 0;
		padding: 1.25rem 0;

		text-align: center;
	}

	.home .sliderContainer .slider .slide .overlay .wrapper .logoContainer {
		margin-right: 0;
		padding-bottom: 16px;
		padding-bottom: 1rem;
	}

	.home .sliderContainer .slider .slide .overlay .wrapper .logoContainer img {
		max-width: 240px;
		max-width: 15rem;
		margin: 0 auto;
	}

	.home .sliderContainer .slider .slide .overlay .wrapper a.button {
		padding: 4px 16px;
		padding: 0.25rem 1rem;
		font-size: 14px;
		font-size: 0.875rem;
	}




	.home .contentSection.categories .content .flexBlocks .flexBlock a .thumbContainer:after {
		width: calc(100% - 24px);
		width: calc(100% - 1.5rem);
		height: calc(100% - 24px);
		height: calc(100% - 1.5rem);
	}

	.home .contentSection.fullPromo img {
		margin-left: -400px;
		margin-left: -25rem;
	}

	.home .contentSection.latestProducts .productsContainer .flexBlocks .flexBlock {
		-webkit-flex-basis: 100%;
		-ms-flex-preferred-size: 100%;
		flex-basis: 100%;
		max-width: 100%;
	}
}

/* 340px */
@media (max-width: 21.25em) {

	/*________ MISC ________*/

	.hide-340 {
		display: none;
	}
	.show-340 {
		display: block;
	}

}


/* HEIGHT */

/* 640px */
@media (max-height: 40em) {


}

/*________ API PRODUCTS ________*/

.apiProducts .product {
border-bottom: 1px solid #ccc;
margin-bottom: 20px;
padding-bottom: 20px;
overflow: hidden;
}
.apiProducts .product h3 {
font-size: 18px;
}
.apiProducts .product h4 {
font-size: 16px;
margin: 0;
padding: 0;
}
.apiProducts .product .prodImg {
float: right;
}
.apiProducts .product dl {
font-size: 14px;
font-weight: 300;
margin-bottom: 20px;
}
.apiProducts .product dl dt {
float: left;
clear: left;
width: 75px;
margin-bottom: 8px;
font-weight: 400;
}
.apiProducts .product dl dd {
overflow: hidden;
margin-bottom: 8px;
}
.apiProducts .product .variations {
clear: both;
}
.apiProducts .product .variation {
display: inline-block;
vertical-align: middle;
width: 23%;
padding: 20px 1%;
border-bottom: 1px solid #f1f1f1;
}
.apiProducts .product .variation img {
margin-bottom: 10px;
}
