/*Add custom styles to the skin here */
html {
	position: relative;
	min-height: 100%;
}

body {
	background: #FFF;
	color: #232323;
	font-family: urw-din,sans-serif;
	font-style: normal;
	font-size: 16px;
	margin: 0;
	padding: 0;
}

h1 {
	text-transform: uppercase;
}

.no-gutters {
	margin-right: -15px;
	margin-left: -15px;
}

.no-gutters > [class*='col-'] {
	padding-right: 0;
	padding-left: 0;
}


.header-cart {
	text-transform: uppercase;
}

.header-row {
	background:#4B4B4B;
}

	.header-row a, .header-row a:visited {
		color:#FFF;
	}

	.header-row a:hover {
		color: #ffc72c;
		text-decoration: none;
	}

.topmenu {
	background: #000;
}

ul.topmenu {
	list-style: none;
	margin:0;
	padding:0;
}

ul.topmenu li.topmenu {
	display: block;
	margin: 0;
	padding: 1rem 0.5rem;
}

a.topmenu {
	text-transform: uppercase;
	color: #FFF;
	font-weight: bold;
	font-size: 1.5rem;
}

@media only screen and (max-width : 768px) {
	ul.topmenu {
		padding:0 0 2rem 0;
	}
}

@media only screen and (min-width : 768px) {
	ul.topmenu li.topmenu {
		display: inline-block;
		padding: 2rem 0.5rem;
	}
	ul.topmenu {
		text-align: right;
	}
}

@media only screen and (min-width : 992px) {
	ul.topmenu li.topmenu {
		padding: 5rem 2rem;
	}
	a.topmenu {
		font-size: 1.6rem;
	}
}

@media only screen and (min-width : 1200px) {
	a.topmenu {
		font-size: 2rem;
	}
}

a.topmenu:hover, a.topmenu:visited {
	color: #FFF;
	text-decoration: none;
}

a.topmenu:hover {
	color: #ffc72c;
}

ul.user-links {
	margin:0;
}

@media only screen and (max-width : 768px) {
	ul.user-links {
		text-align: center;
	}
	ul.user-links li {
		margin: 0;
		padding-top: 0.25rem;
		padding-bottom: 0.25rem;
	}
	ul.user-links li.search {
		width: 100%;
	}
	ul.user-links li.login {
		float: left;
	}
	ul.user-links li.basket {
		float: right;
	}
}

ul.footer-menu {
	list-style: none;
	margin: 0;
	padding: 0 0 0 20px;
	text-align: left;
	min-height: 190px
}

ul.footer-menu li {
	display: block;
	margin: 0;
	padding: 0 0 1.2rem 0;
}

.navbar.topmenu {
	margin-right: -15px;
	margin-bottom: 0;
	margin-left: -15px;
	border-radius: 0;
}

.navbar.topmenu .navbar-toggle {
	margin-top: 16px;
}

@media only screen and (max-width : 768px) {
	.topmenu .open .dropdown-menu {
		position: static;
		float: none;
		width: auto;
		margin-top: 0;
		background-color: transparent;
		border: 0;
		-webkit-box-shadow: none;
		box-shadow: none;
		padding-top: 1.2rem;
	}
	.topmenu .dropdown-menu > li > a {
		display: block;
		padding: 0;
		color: #FFF;
	}
	.topmenu .dropdown-menu > li > a:hover, .topmenu .dropdown-menu > li > a:focus {
		background-color: #000;
		color: #ffc72c;
	}
}

@media only screen and (min-width : 768px) {
	.topmenu .dropdown-menu {
		display: none;
	}
}

.dropdown-backdrop {
	display:none;
}

#shopmenu, #stockistsmenu {
	position: absolute;
	left: 0;
	right: 0;
	z-index: 99;
	width: 100%;
	padding: 1rem 15px;
	background: #4B4B4B;
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
	-webkit-box-shadow: 0 6px 12px rgba(0,0,0,.175);
	box-shadow: 0 6px 12px rgba(0,0,0,.175);
}

#shopmenu h4, #stockistsmenu h4 {
	text-transform: uppercase;
	font-weight: bold;
	color: #ffc72c;
}

#shopmenu ul, #stockistsmenu ul {
	list-style: none;
	padding-left: 0;
}

#shopmenu li a, #stockistsmenu li a {
	color: #FFF;
}

#desktop_logo img {
	display: inline-block;
	max-width: 70px;
}

#logo {
	float: left;
	width: 70%;
	padding: 1rem;
}

a#logo:hover, a#logo:focus {
	text-decoration: none;
}

#logo span {
	display: inline-block;
	color: #FFF;
	text-transform: uppercase;
	font-weight: bold;
}

@media only screen and (min-width : 768px) {

}
@media only screen and (min-width : 992px) {
	#desktop_logo {
		position: absolute;
		top: -30px;
		left: 50px;
	}
	#desktop_logo img {
		display: block;
		max-width: 100%;
	}
	#logo {
		width: 192px;
		padding: 0;
		text-align: center;
	}
	#logo span {
		display: block;
		padding-top: 1rem;
	}
}

.main-content-wrapper {
	min-height: 300px;
	padding-top:0;
	padding-bottom: 18px;
}

.grid-item-image {
	border: none;
}

.grid-item-image-wrap img {
	margin: 0 auto;
	max-width: 100%;
}

.sub-entity-name-wrap, .grid-item-name-wrap {
	text-transform:uppercase;
}

.cat-spec thead tr {
	border-bottom: 3px solid #ffc72c;
	font-size: 2.25rem;
}

.cat-spec td, .cat-spec th {
	padding: 5px;
	border-bottom: 1px solid #ddd;
}

.product-info-wrap {
	padding-top:4rem;
	padding-right: 15px;
}

.regular-price {
	text-decoration:line-through;
}

/* btn overrides */
.btn-default {
	font-size: 12px;
}

.btn-primary {
	background-color: #FFC72C;
	font-size: 12px;
	color: #000;
	border: none;
}

.btn-primary:hover {
	background-color: #000;
	color: #fff;
}

.btn-success, btn-success:hover {
	background-color: #FFC72C;
	border: none;
}

@media only screen and (min-width : 992px) {
	.add-to-cart-selectors {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-ms-flex-preferred-size: 0;
		flex-basis: 0;
		-ms-flex-positive: 1;
		flex-grow: 1;
	}

	.add-to-cart-group {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.add-to-cart-group .select-size, .add-to-cart-group .select-color {
		-ms-flex-preferred-size: 0;
		flex-basis: 0;
		-ms-flex-positive: 1;
		flex-grow: 1;
		margin-right: 1rem;
	}

	.add-to-cart-group .form-control.quantity-field {
		margin-right: 1rem;
	}

	.add-to-cart-group .btn.add-to-cart {
		height: 45px;
	}
}

.product-description-wrap {
	min-height: 100px;
}

.email-a-friend-link {
	background: none;
	padding: 0;
}

.email-a-friend-wrap i {
	padding-left:1rem;
}

.page-wrap {
	padding-top: 2rem;
}

.product-share-wrap {
	padding-left: 1rem;
	padding-top: 3px;
}

.related-products {
	margin-top:5rem;
}

td.spec {
	font-style:italic;
	padding-right:1rem;
}

.vibram-search-form {
	padding: 0 3rem;
}

@media only screen and (max-width : 768px) {
	.header-cart {
		padding: 0.2rem 0 0 0;
	}
	.vibram-search-form {
		padding: 0;
	}
	.vibram-search-form .search-box {
		width: 90%;
	}
	.vibram-search-form .search-go {
		width: 10%;
	}
}

.search-box {
	background: #7B7B7B;
	border: none;
	height: 42px;
	color: #FFF;
	margin: 0;
	padding: 1rem;
	text-align:center;
}

.search-box::placeholder  {
	color: #FFF;
}

.search-go {
	background: #FFC72C;
	border: none;
	display:inline-block;
	height:42px;
	margin: 0;
	padding: 1rem;
}

.rotate {
	transform: rotate(270deg);
	transform-origin: left top 0;
	position: absolute;
	bottom: 0;
	left: 0;
	font-size: 14px !important;
	color: #ffc72c;
	display: block;
	width: 155px;
	text-align: right;
	text-transform: uppercase
}

.footer-row {
	background: #4B4B4B;
	padding:4rem;
}

footer .wrapper {
	position: relative;
	min-height: 145px
}

a.footermenu {
	color: #FFF;
	/*font-size: 2rem;
	font-weight: bold;*/
}

a.footermenu:hover, a.footermenu:visited {
	color: #FFF;
	text-decoration: none;
}

a.footermenu:hover {
	color: #ffc72c;
}

.copyright-row {
	background: #000;
	color: #FFF;
	font-size: 1.4rem;
	padding: 4rem;
}

.copyright-row a, .copyright-row a:visited {
	color: #FFC72C;
}

.carousel-inner > .item.active.left {
	/*background-image: none;
	border:solid 5px #F00 !important;*/
	/*height: 274px;*/
}

.mt-3 {
	margin-top: 3rem;
}

.pb-5 {
	padding-bottom:5rem;
}

.site-map-group ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.cat-badge {
	background-color: rgba(0,0,0,.6);
	color: #FFF;
	font-size: 32px;
	padding: 1rem;
	text-transform: uppercase;
}

.cat-badge-subtitle {
	color: #FFC72C;
	font-size: 20px;
}
/*Home page*/
.img-fluid {
	max-width: 100%;
	height: auto;
}

.home-item {
	background: #000;
	border-radius: 0;
	margin-top: auto;
}

	.home-item .card-title {
		padding: 0.5rem 1rem;
		margin-top: 2rem;
		width: 100%;
		background: rgba(0,0,0,.6)
	}

	.home-item .image {
		min-height: 100%;
	}

	.home-item .link {
		position: absolute;
		width: 100%;
		height: 100%;
		display: block;
	}

	.home-item a.link:hover, .home-item a.link:focus {
		text-decoration: none;
	}

	.home-item .card-image {
		position: relative;
	}

	.home-item h3, .home-item h4 {
		margin-top: 0;
		color: #FFF;
		text-transform: uppercase;
	}

	.home-item h3 {
		font-size: 1.5rem;
	}


	.home-item h4 {
		font-size: 2rem;
	}

	.home-item .card-subtitle {
		color: #ffc72c;
		font-size: 1.25rem;
	}
@media (min-width: 390px) {
	.home-item h3 {
		font-size: 1.75rem;
	}
}

@media (min-width: 1200px) {
	.home-item h3 {
		font-size: 4rem;
	}

	.home-item h4 {
		font-size: 3rem;
	}

	.home-item .card-subtitle {
		font-size: 1.75rem;
	}
}

.home-item figure {
	margin: 0;
}

.home-item .card-body-container {
	position: absolute;
	padding: 0;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

.home-item .card-body {
	width: 100%;
	padding: 0;
}

.icon-banner {
	background: #DEDEDE;
}

	.icon-banner h5 {
		margin-top: 0;
		font-size: 1.5rem;
		text-transform: uppercase;
	}

	.icon-banner i {
		margin-right: 0.75rem;
		font-size: 1em;
	}

@media (min-width: 1200px) {
	.icon-banner h5 {
		font-size: 1.75rem;
	}

	.icon-banner i {
		margin-right: 1.5rem;
		font-size: 3em;
	}
}

#home-carousel {
	background: #333;
	box-shadow: 3px 4px 5px #999;
	-moz-box-shadow: 1px 2px 5px #999;
	-webkit-box-shadow: 1px 2px 5px #999;
	margin-top: 30px;
}

	#home-carousel .nav a small {
		display: block;
	}

	#home-carousel .nav {
		background: rgba(0, 0, 0, 0.6);
		text-align: center;
	}

	#home-carousel .nav-stacked > li {
		flex: 1 1 auto;
		margin-top: 0;
	}

	#home-carousel .nav > li.active > a {
		background: #777;
	}

	#home-carousel .nav a {
		height: 100%;
		border-radius: 0px;
		padding: 14px 15px 10px 15px;
		color: #fff;
		font-weight: bold;
		font-size: 15px;
		text-transform: uppercase;
	}

	#home-carousel .nav > li > a:hover,
	#home-carousel .nav > li > a:focus {
		background: #777;
	}

	#home-carousel .carousel-caption {
		left: 0;
		bottom: 0px;
		padding: 0;
		width: 100%;
		text-align: left;
		text-transform: uppercase;
	}

		#home-carousel .carousel-caption h3 {
			color: #fff;
			font-weight: bold;
			font-size: 2em;
			text-align: left;
			margin-bottom: 0;
		}

@media only screen and (min-width : 1200px) {
	#home-carousel .carousel-caption {
		height: 100%;
	}

		#home-carousel .carousel-caption h3 {
			display: none;
		}
}

#home-carousel .carousel-caption a {
	display: block;
	height: 100%;
	width: 100%;
	padding: 0 0 20px 15px;
}

.carousel-inner > .item > img {
}

#home-carousel .carousel-caption a:hover {
	text-decoration: none;
}

.carousel-inner-vertical {
	float: left;
	position: absolute;
}

.carousel-stack {
	float: right;
	position: relative;
	z-index: 2;
}

@media only screen and (max-width : 1200px) {
	#home-carousel .nav a {
		font-size: 1.39em;
		padding: 6px 15px;
	}
}

@media only screen and (min-width : 992px) {
	#home-carousel .nav {
		height: 321px;
		display: -webkit-box !important;
		display: -webkit-flex !important;
		display: -ms-flexbox !important;
		display: flex;
		-webkit-flex-wrap: wrap !important;
		-ms-flex-wrap: wrap !important;
		flex-wrap: wrap;
		-webkit-box-orient: vertical !important;
		-webkit-box-direction: normal !important;
		-webkit-flex-direction: column !important;
		-ms-flex-direction: column !important;
		flex-direction: column;
		-webkit-box-flex: 1;
		-webkit-flex: 1 1 auto;
		-ms-flex: 1 1 auto;
		flex: 1 0 auto;
		z-index: 99;
	}
}

@media only screen and (min-width : 1200px) {
	#home-carousel .nav {
		height: 436px;
	}
}

@media only screen and (max-width : 992px) {
	.carousel-stack {
		display: none;
	}

	.carousel-inner-vertical {
		position: relative;
	}


	#home-carousel .carousel-caption {
		background: rgba(0, 0, 0, 0.6);
	}
}

.product-feature {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	background-color: #000;
}

	.product-feature .child {
		-webkit-flex: 0 1 auto;
		-ms-flex: 0 1 auto;
		flex: 0 1 auto;
	}

a.product-feature:hover {
	text-decoration: none;
}

a.product-feature .child:hover {
	color: #FFC72C;
}

.product-feature .img {
	text-align: center;
	background: #FFF;
}

.product-feature .title, .product-feature .price {
	text-align: center;
	color: #FFF;
}

.product-feature .title {
	padding: 0.5rem 0.5rem 0 0.5rem;
}

.product-feature .price {
	padding: 0 0.5rem 0.5rem 0.5rem;
}

.product-feature .title h5 {
	font-size: 1.5rem;
}

@media (min-width: 992px) {
	.product-feature .title {
		padding: 1rem 1rem 0 1rem;
	}

		.product-feature .title h5 {
			font-size: 2rem;
		}
}
.popover h5 {
	margin-bottom: 0;
}

/* Order Confirmation Page */
.orderconfirmation-page {
	width: 100%;
	text-align: left;
}

.order-confirmation-addresses, .order-confirmation-shipping-method {
	margin-top: 2rem;
}

.order-confirmation-billing-address {
	margin: 0;
}

.order-confirmation-receipt-button {
	margin: 0 7px 0 0;
}

a.pdf {
	background: url('/images/icons/pdf.gif') left top no-repeat;
	padding: 10px 0 10px 40px;
}

p.pdf {
	background: url('/images/icons/pdf.gif') left top no-repeat;
	padding: 10px 0 10px 40px;
}


.store-finder {
	padding-bottom: 1rem;
}
.store-finder .search, .store-finder .key {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin-bottom: 1rem;
}
.store-finder .key a:hover, .store-finder .key div, .store-finder .key a:hover, .store-finder .key a {
	margin-top: 1rem;
}
@media only screen and (max-width : 768px) {
	.store-finder .key a:hover, .store-finder .key div {
		width: 100%;
	}
}

.store-finder .key a:hover, .store-finder .key a:focus  {
	text-decoration: none;
}
.store-finder .search {
	margin-right: 1rem;
}
@media only screen and (min-width : 768px) {
	.store-finder .search-box {
		min-width: 300px;
	}
}
.store-finder .label {
	font-size: 100%;
}
#googlemap {
	margin-bottom: -18px;
}

.blink {
	animation: blink-animation 1s steps(5, start) infinite;
	-webkit-animation: blink-animation 1s steps(5, start) infinite;
}

@keyframes blink-animation {
	to {
		visibility: hidden;
	}
}

@-webkit-keyframes blink-animation {
	to {
		visibility: hidden;
	}
}

.europe-delay {
	color: #F00;
	margin-bottom: 2rem;
}
