/* Undo stuff */
#page-container {
	min-height: 50vh;
}
.card h1, .card h2, .card h3, .card h4 {
	margin: 0.83em 0;
}
#cart a {
	display: inline-block;
	border-width: 0;
	padding: 0;
}
#cart .badge {
	animation: none;
	line-height: 1.2em;
	background-color: var(--primary-color);
	top: auto;
	bottom: 15px;
	/* TODO: Can we pulse briefly then stop? */
	transition: all ease 3s, animation steps(1, jump-end) 5s;
}
#cart .badge:empty {
	animation: pulsating 1.5s linear infinite;
	opacity: 0;
	background-color: transparent;
	transition: all ease 3s, animation steps(1, jump-end) 5s;
}
.listing .category, .listing .manufacturer, .listing .product,
.listing .category:hover, .listing .manufacturer:hover, .listing .product:hover {
	transform: none;
	box-shadow: none;
}
.card {
	border: 0;
	box-shadow: none;
}
.carousel-caption {
	top: 0;
	left: 0;
	right: 0;
	padding-bottom: 0;
}
.carousel .carousel-control, .carousel .carousel-indicators {
	opacity: 1;
	z-index: 20;
}
.card .card-header, .card .card-filter, .card .card-body, .card .card-footer {
	padding: 0;
	clear: both;
}
#footer {
	padding: 0;
}
#box-product h1 {
	margin-top: 0;
}
#box-product .description p:first-child {
	margin-top: initial;
}
#box-recently-viewed-products .link img {
	border-radius: 0;
	padding: 0;
}
#box-recently-viewed-products .link img:hover {
	box-shadow: none;
	transform: none;
}
#box-also-purchased-products {
	position: initial;
}
.btn {
	box-shadow: none;
}

@keyframes flasher {}

/* CSP fixes */
iframe{border:0}
.nomargin {
	margin: 0 !important
}
.mfgrlogo {
	margin: 0px 15px !important
}
.buy_now .form-group {
	margin-bottom: 0
}
.buy_now .form-group>div {
	display: flex;
	gap: 1em;
}
#box-product .tax, #box-product .offer-expires {
	margin-bottom: 1em
}
#add_cart_product {
	margin-inline-start: 1em
}
.product-section {
	margin: 1em 0
}
.social-bookmarks .fa-facebook {
	color: #3b5998
}
.social-bookmarks .fa-link {
	color: #333
}
.social-bookmarks .fa-twitter {
	color: #000
}
.social-bookmarks .fa-pinterest {
	color: #bd081c
}
.form-control.quantity {
	width: 100px
}
.dropdown [data-toggle="dropdown"] {
	background: none
}
select.form-control {
	background-image: none
}
.select-wrapper {
	position: relative
}
.dropdown [data-toggle="dropdown"]::after, .select-wrapper::after {
	content: "\f107";
	font: normal normal normal 18px/1 FontAwesome;
	text-rendering: auto;
	position: absolute;
	right: calc(var(--input-padding-x) - 0.25em);
	top: 50%;
	margin-top: -0.45em;
	pointer-events: none
}
input[type="checkbox"]:checked {
	background: #999
}
input[type="checkbox"]:checked::before {
	content: "\f00c";
	font-family: FontAwesome;
	font-size: 0.9em;
	text-rendering: auto;
	position: absolute;
	top: -0.05em;
	left: 0.15em;
	color: #fff
}
#box-category>.row {
	margin-bottom: 0
}
#box-category>.listing.categories {
	margin-bottom: var(--gutter-y)
}
.filters>.dropdown, .filters>.btn-group-inline {
	flex-grow: 0
}
.featherlight.active {
	display: block
}
.featherlight-content.featherlight-seamless {
	max-width: 980px
}
.featherlight .loader {
	width: 128px;
	height: 128px;
	opacity: 0.5
}
.loader-wrapper>.loader {
	width: 256px;
	height: 256px
}
#box-contact-us textarea {
	height: 250px
}
#box-contact-us .btn-default, #box-cookie-notice button[name="accept_cookies"] {
	font-weight: bold
}
form.maxwide {
	max-width: 800px
}
form.maxmid {
	max-width: 640px
}
form.maxnarrow {
	max-width: 480px
}
.btn-group.float-end {
	margin-inline-end: 1.5em;
	margin-top: 1.5em
}
#captcha {
	padding: 0
}
#captcha input {
	font-size: 24px;
	padding: 0;
	text-align: center
}
#box-checkout-cart .item{
	padding: 1rem;
}
#box-checkout-cart .row{
	grid-gap: 1rem;
}
#box-checkout-cart .quantity {
	display: inline-flex
}
#box-checkout-cart .quantity .input-group {
	max-width: 175px
}
#box-checkout-cart button[name="update_cart_item"] {
	margin-inline-start: 0.5em
}
#box-checkout-cart button[name="remove_cart_item"] {
	margin-inline-start: 1em
}
tr.tax {
	color: #999
}
input.hidden, .hidden-toggle {
	display: none
}
#payment-due {
	width: 25%
}
.total-row {
	white-space: normal
}
.confirm.row {
	align-items: center;
	margin-bottom: 0
}
.fade-in, .fade-out-refresh {
	transition: opacity 0.3s
}
.fade-in {
	opacity: 1
}
.fade-out-refresh {
	opacity: 0.15
}
#box-checkout-summary .consent {
	font-size: 1.25em;
	margin-top: 0.5em;
	margin-bottom: 0
}
.no-items {
	font-size: 1.25em
}
.trumbowygLeft {
	text-align: left
}
.trumbowygCenter {
	text-align: center
}
.trumbowygRight {
	text-align: right
}
.trumbowygFull {
	text-align: justify
}

/* Fonts */
/* latin-ext */
@font-face {
	font-family: 'Spinnaker';
	font-style: normal;
	font-weight: 400;
	src: url(https://fonts.gstatic.com/s/spinnaker/v19/w8gYH2oyX-I0_rvR6HmX1XYKmOo.woff2) format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
	font-family: 'Spinnaker';
	font-style: normal;
	font-weight: 400;
	src: url(https://fonts.gstatic.com/s/spinnaker/v19/w8gYH2oyX-I0_rvR6HmX23YK.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Open Sans';
	src: local('Open Sans'),
		 url('../fonts/OpenSans-Regular-webfont.woff') format('woff'),
		 url('../fonts/OpenSans-Regular-webfont.ttf') format('truetype'),
		 url('../fonts/OpenSans-Regular-webfont.svg#open_sansregular') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'Open Sans';
	src: local('Open Sans Bold'),
		 url('../fonts/OpenSans-Bold-webfont.woff') format('woff'),
		 url('../fonts/OpenSans-Bold-webfont.ttf') format('truetype'),
		 url('../fonts/OpenSans-Bold-webfont.svg#open_sansbold') format('svg');
	font-weight: bold;
	font-style: normal;
}

/* Styles */
:root {
	--input-padding-x: 0.8em;
	--primary-color: #018d83;
	--primary-color-lightened: #01a59a;
	--success-button-background-color: var(--primary-color);
	--success-button-background-color-hover: var(--primary-color-lightened);
	--success-button-background-color-active: var(--primary-color-lightened);
	--important-notice-background-color: #01a59a;
	--important-notice-text-color: #fff;
	--success-notice-background-color: #4e9a06;
	--success-notice-border-color: var(--success-notice-background-color);
	--success-notice-text-color: #fff;
	--copyright-background-color: #f0edee;
	--pills-background-color-active: transparent;
	--link-text-color: var(--primary-color);
	--link-hover-color: var(--primary-color-lightened);
	--default-border-color: #ddd4d4;
	--default-button-border-color: var(--default-border-color);
	--default-text-color: #21221d;
	--navigation-text-color: #21221d;
}

::selection {
	color: #fff;
	background: #34b7ae;
}

body {
	padding: 0;
	margin: 0 auto;
	max-width: 1600px;
	font-family: "Open Sans";
	font-size: 14px;
	font-weight: 400;
	background-color: #fff;
	color: var(--default-text-color);
}
#scroll-up {color: #000}
#header {
	/* TODO: use `box-shadow: inset …` to blur edges when at max width */
	display: flex;
	flex-direction: column;
	padding: 0;
	height: 440px;
	background: #fff url(/includes/templates/bdstrike.catalog/images/header.png) center / cover no-repeat;
	text-align: center;
	font-family: "Spinnaker";
}

#header h1, #header p, nav > ul, #page-container, #footer .columns, #copyright {
	max-width: 1400px;
	margin-left: 100px;
	margin-right: 100px;
}
#header h1 {
	display: flex;
	flex-direction: column-reverse;
}
#header h1, #header p {
	flex-grow: 1;
}
#header h1 a, #header p a {
	display: block;
	margin: 0;
	text-decoration: none;
	color: inherit;
	line-height: 1;
}
#header h1 a {
	font-size: 100px;
	letter-spacing: -1px;
	text-shadow: rgb(255, 255, 255) 0px 0px 30px, rgb(255, 255, 255) 0px 0px 30px, rgb(255, 255, 255) 0px 0px 30px, rgb(255, 255, 255) 0px 0px 30px;
}
#header p a {
	font-size: 30px;
	line-height: 33px;
	text-shadow: rgb(255, 255, 255) 0px 0px 9px, rgb(255, 255, 255) 0px 0px 9px, rgb(255, 255, 255) 0px 0px 9px, rgb(255, 255, 255) 0px 0px 9px;
}
nav {
	background-color: #fff;
	position: sticky;
	top: 0;
	z-index: 25;
	box-shadow: 0px 16px 20px -15px rgba(0,0,0,0.1), 0px -16px 20px -15px rgba(0,0,0,0.1);
}
nav > ul {
	list-style-type: none;
	text-align: center;
	padding: 0
}
nav > ul > li {
	display: inline-block;
	text-transform: uppercase;
	font-weight: bold;
	padding: 0 1em;
}
nav > ul > li > a:link, nav > ul > li > a:visited {
	color: var(--default-text-color);
	font-size: 15px;
	letter-spacing: 1px;
	line-height: 50px;
	text-decoration: none;
}
nav > ul > li > a:hover {
	color: var(--link-hover-color);
}
#cart a {
	font-size: 150%;
	padding: 0 0.5em;
}
h1 {
	font-size: 40px;
	font-weight: 400;
}
h2 {
	font-size: 24px;
	font-weight: 400;
}
.card .card-header .card-title {
	margin-bottom: 1em;
}
.content-wrapper {
	margin: 0 0 3em;
	text-align: justify;
}
#content-wrapper p {
	line-height: 25px;
}
code {
	display: inline-block;
	font-family: monospace;
	border: 1px solid #999;
	background-color: #ccc;
	color: var(--primary-color);
	padding: 0.25em;
	line-height: 1em;
}
dl.faq > dt {
	font-weight: bold;
	margin-bottom: 0.5em;
}
#important-notice {
	padding: 0.5em;
	margin: 1em 0 2.5em;
	border-left: 8px solid #018d83;
}
dl.faq > dt::before {
	content: "Q: ";
	font-size: 175%;
	font-weight: bold;
}
dl.faq > dd::before {
	content: "A: ";
	font-size: 175%;
	float: left;
	margin: -0.2em 0.3em 0 0.1em;
}
dl.faq > dd {
	margin-left: 0;
	margin-bottom: 1.5em
}
.infobox {
	background-color: #acb8c9;
	padding: 1em 2em;
}
#sidebar {position: sticky; top: 4.5em}
.nav-pills li > a {
	border: 0 solid transparent;
	border-width: 0 3px;
	border-radius: 0;
	padding: 0.75em 1em;
}
.nav-pills li:only-child:not(.opened) > a {
	border-width: 0;
	background-color: transparent;
}
.nav-pills li > a:hover {
	border-color: var(--link-hover-color);
}
.nav-pills li.active > a {
	border-color: var(--link-text-color);
	background-color: #81bfbb22;
}
.nav-pills li.active > a:hover {
	background: var(--pills-background-color-hover);
}
.carousel-caption {
	height: 100%;
	font-size: 20px;
	background-color: #018d83cc;
	color: #fff;
	padding: 0 15%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	opacity: 0;
}
.carousel-caption > * {
	max-width: 30em;
}
.item.active .carousel-caption {
	opacity: 1;
	transition: opacity ease-in 1s
}
.carousel-caption h1 {
	color: #fff;
	font-size: 60px;
	font-weight: 400;
}
.carousel-caption > p, .carousel-caption > div {
	margin: 1em;
}
.carousel-indicators li {
	height: 16px;
	width: 16px;
	border-radius: 8px;
	transition: all ease 1s;
	border-width: 2px;
}
.carousel-indicators li.active {
	width: 40px;
}
.carousel .carousel-control {
	opacity: 0.75;
}
.carousel .carousel-control:hover {
	opacity: 1
}
#cat-title {
	margin-bottom: 0;
}
#cat-title .description, #cat-title .thumbnail, #box-category .listing.categories {
	margin-bottom: var(--gutter-y);
}
.listing.products {
	grid-gap: 1rem;
}
.listing .product {
	padding: 0.5em;
}
.listing.columns .category, .listing.columns .manufacturer, .listing.columns .product {
	border-color: transparent;
}
.listing .category:hover, .listing .manufacturer:hover, .listing .product:hover {
	border: 1px solid var(--link-hover-color);
}
.listing.products.columns {
	grid-template-columns: repeat(3, 1fr)
}
.listing.rows .product h4 {
	font-size: 20px;
	font-weight: bold;
}
.listing.rows .product .link {
	padding: 1rem;
}
#box-filter .filters > .btn-group-inline, #box-filter .filters > .dropdown.sortby {
	flex-grow: 0;
}
.price-wrapper {
	color: var(--primary-color);
}
#box-product .images.row {
	margin-bottom: 0
}
#box-product blockquote {
	font-size: 19px;
	line-height: 1.6;
	border-left: 3px solid var(--primary-color);
	padding-left: 1em;
}
#box-product .main-image .sticker, .listing .product .image-wrapper .sticker {
	box-shadow: 0px 12px 10px -10px #000;
	outline: 1px solid #0003;
}
#box-product .main-image .sticker.new, .listing .product .image-wrapper .sticker.new {
	background-color: var(--primary-color);
}
#box-product .main-image .sticker {
	top: 25px;
}
#box-recently-viewed-products .listing {
	grid-template-columns: repeat(5, 1fr);
	grid-gap: 5px;
}
#box-recently-viewed-products .link img:hover {
	border: 1px solid var(--link-hover-color);
}
.btn.active, .btn:active {
	background-color: #e0e0e0;
}
.input-group:focus-within {
	outline: 1px solid var(--link-text-color);
}
.input-group .input-group-text {
	margin: 0;
	border-inline-start: none;
	border-inline-end: 1px solid var(--default-border-color);
}
.input-group .input-group-text:last-child {
	border-inline-start: 1px solid var(--default-border-color);
	border-inline-end: none;
	margin-inline-end: 0;
}
.input-group .input-group-text img {
	border-radius: 1.1em 0 0 1.1em;
}
.input-group .form-control:focus, select:focus,
input[type="text"]:focus, input[type="email"], input[type="password"],
input[type="radio"]:hover, input[type="checkbox"]:hover {
	box-shadow: none;
	border-color: var(--link-text-color);
}
input[type="radio"], input[type="checkbox"] {
	box-shadow: none;
}
input[type="radio"]:checked {
	background-image: radial-gradient(#fff 0, #fff 35%, var(--link-text-color) 40%);
	border-color: var(--link-text-color);
	box-shadow: none;
}
input[type="checkbox"]:checked {
	background-color: var(--link-text-color);
}
button[type="submit"].btn.btn-default {
	background-color: var(--link-text-color);
	color: #fff;
	border: none;
	font-weight: bold;
}
button[type="submit"].btn.btn-default:hover:not(.active):not(.disabled):not([disabled]) {
	background-color: var(--link-hover-color);
}
.thumbnail { border: none }
#box-checkout-cart .thumbnail {
	padding: 0;
}
#box-checkout-cart button[type="submit"].btn.btn-default {
	background-color: var(--default-button-background-color);
	color: var(--default-button-text-color);
	border: 1px solid var(--default-button-border-color);
	font-weight: bold;
}
#box-checkout-cart button[type="submit"].btn.btn-default:hover:not(.active):not(.disabled):not([disabled]) {
	background-color: var(--default-button-background-color-hover);
}
#box-checkout-shipping .option, #box-checkout-payment .option, #box-checkout-shipping .btn.active, #box-checkout-payment .btn.active {
	box-shadow: none !important;
}
#box-checkout-shipping .btn:active, #box-checkout-payment .btn:active {
	box-shadow: inset 1px 1px 1px #00000040 !important;
}
#box-checkout-shipping .btn.active, #box-checkout-payment .btn.active {
	border-color: var(--link-text-color);
}
#box-checkout-shipping .btn.active + .btn {
	border-top-width: 0;
	margin-top: 0;
}
#box-checkout-cart .item:nth-child(2n+1) {
	background: none;
}
.cart .card .card-footer {
	padding: 0.5em;
	border-top: 1px solid #e0e0e0;
	box-shadow: none;
}
#box-checkout-cart .subtotal {
	font-size: 1.3em;
}
#box-checkout-customer button[type="submit"]:not([disabled]) {
	color: #fff;
	animation: flasher 1s linear 2;
}
.featherlight .card {
	padding: 1em;
}
#box-login, #box-login-create {
	margin: 0 auto;
	max-width: 40em;
}

#box-checkout-discount-code {
	display: grid;
	align-items: center;
	grid-template-columns: 1fr 1fr;
	grid-gap: var(--gutter-y) var(--gutter-x);
	margin-bottom: 1em;
}
#box-checkout-discount-code-button {
	border-radius: 0 var(--input-border-radius) var(--input-border-radius) 0;
	border-color: transparent transparent transparent var(--default-button-border-color);
	margin: 0px;
}
.form-control.valid-discount {
	background: #e1fae2
}
.form-control.invalid-discount {
	background: #ffd4d4
}
#box-checkout-tip .btn-group-horizontal {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
}
#box-checkout-tip .btn-group-horizontal input[type="radio"] {
	display: none;
}
#box-checkout-tip .btn-group-horizontal .btn
{
	background: var(--card-background-color);
	border-radius: 0;
	border-right-color: transparent;
	border-bottom-color: transparent;
	padding: 0;
	position: relative;
	min-height: 3.5em;
}
#box-checkout-tip .btn-group-horizontal .btn label {
	display: block;
	height: 100%;
	cursor: pointer;
	align-content: center;
}
#box-checkout-tip .btn-group-horizontal .btn:first-child
{
	border-radius: var(--input-border-radius) 0 0 0;
}
#box-checkout-tip .btn-group-horizontal .btn:nth-child(7)
{
	border-right-color: var(--default-button-border-color);
	border-radius: 0 var(--input-border-radius) 0 0;
}
#box-checkout-tip .btn-group-horizontal .btn:last-child
{
	border: 1px solid var(--default-button-border-color);
	border-radius: 0 0 var(--input-border-radius) var(--input-border-radius);
	grid-column: 1/8;
	display: flex;
	align-items: center;
	gap: 1em;
	padding: 1em;
}
#box-checkout-tip .btn-group-horizontal .btn.active {
	background: #eaebef;
	border: 1px solid var(--link-text-color);
	margin-bottom: -1px;
	box-shadow: none !important;
	z-index: 1;
}
#box-checkout-tip .btn-group-horizontal .btn.active + .btn:not(:last-child) {
	border-left-width: 0;
}
button + a {
	margin-left: 2em
}
#footer {
	background-color: #edeeee;
	padding: 1em;
}
#footer .columns {
	display: flex;
	justify-content: space-between;
	font-size: 16px;
	padding: 0.5em 0 1em;
	border-bottom: 1px solid #b9bbba;
}
#footer .columns section {
	width: 30%;
	margin-bottom: 1em;
}
#footer h3.title {
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	display: flex;
	flex-direction: row;
}
#footer h3::before, #footer h3::after {
	content: "";
	flex: 1;
	border-bottom: 1px solid #000;
	margin: auto;
}
#footer h3::before {
	margin-right: 1em;
}
#footer h3::after {
	margin-left: 1em;
}
#footer ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#footer ul li {
	margin: 0;
	padding: 0.75em 0;
	border-bottom: 1px dotted #000;
}
#footer a {
	text-decoration: none;
	color: var(--default-text-color);
}
#footer a:hover {
	color: var(--link-hover-color);
}
#footer .form-group {
	margin-bottom: 1em;
}
#footer label {
	margin-left: 2em;
}
#footer input.form-check {
	margin-left: -2em;
}

@media (min-width: 1500px) {
	#header {
		background: linear-gradient(to right, #fff, #fff0 100px, #fff0 1400px, #fff) center / 1500px no-repeat, #fff url(/includes/templates/bdstrike.catalog/images/header.png) center / 1500px no-repeat;
	}
}

@media (min-width: 1600px) {
	#header {
		background: linear-gradient(to right, #fff, #fff0 100px, #fff0 1400px, #fff) 50px center / 1500px no-repeat, #fff url(/includes/templates/bdstrike.catalog/images/header.png) 50px center / 1500px no-repeat;
	}
}

@media (max-width: 900px) {
	#header h1, #header p, nav > ul, #page-container, #footer .columns, #copyright{
		margin-left: 50px;
		margin-right: 50px;
	}
	#header {
		height: 320px;
	}
}

@media (max-width: 768px) {
	.carousel-caption {
		font-size: 18px;
		padding-bottom: 1em;
	}
	.carousel-caption h1 {
		font-size: 40px;
	}
	.carousel-caption > p, .carousel-caption > div {
		margin: 0 0 0.5em 0;
	}
	.carousel-indicators {
		margin-bottom: 0;
		bottom: 0.5em;
	}
	section.listing.products.columns {
		grid-template-columns: repeat(2, 1fr);
	}
	nav > ul > li {
		min-width: 24%;
	}
}

@media (max-width: 640px) {
	#header {
		height: 240px;
	}
	#header h1, #header p, nav > ul, #page-container, #footer .columns, #copyright{
		margin-left: 30px;
		margin-right: 30px;
	}
	#header h1 a {
		font-size: 85px;
	}
	.carousel-caption {
		font-size: 16px;
	}
	.carousel-caption h1 {
		font-size: 32px;
		margin-bottom: 0.5em;
	}
	.carousel-caption > p, .carousel-caption > div {
		margin: 0 0 0.5em 0;
	}
	.col-xs-6 {
		grid-column: span 12 !important;
	}
	#footer .columns {
		display: block;
	}
	#footer .columns::after {
		content: "";
		display: block;
		clear: left;
	}
	#footer .columns section {
		float: left;
		width: 47%;
		margin-right: 3%;
	}
}

@media (max-width: 490px) {
	nav {
		position: initial;
	}
	#header h1, #header p, nav > ul, #page-container, #footer .columns, #copyright{
		margin-left: 10px;
		margin-right: 10px;
	}
	section.listing.products.columns {
		grid-template-columns: repeat(1, 1fr);
	}
	.carousel-caption .verbose {
		display: none;
	}
	.carousel-indicators {
		bottom: 0em;
	}
}