:root {
	--bs-body-font-family:	roboto;

	--blood-red:			#B1242E;
	--dark-azure:			#0066CC;
	--flag-green:			#009246;
	--flag-red:				#CE2B37;
	--flag-white:			#F2F2F2;
	--light-green:			#00B959;
	--savoy-azure:			#0080FF;
}

.about-text {
	margin-top:				2em;
	font-size:				110%;
}

.alert-scrunched {
	border:					0px;
	height:					0px;
	padding:				0px;
}

.btn-add-to-cart {
	width:					100%;
}

.btn-product-card-add {
	background-color:		var(--flag-green);
	color:					var(--flag-white);
	height:					1.75em;
	margin:					.25em 0;
	padding:				0;
	width:					100%;
}

.btn-product-card-add:hover {
	background-color:		var(--light-green);
	color:					var(--flag-white);
}

.btn-product-details {
	background-color:		var(--dark-azure);
	color:					var(--flag-white);
	height:					1.75em;
	margin:					.25em 0;
	padding:				0;
	width:					100%;
}

.btn-product-details:hover {
	background-color:		var(--savoy-azure);
	color:					var(--flag-white);
}

.cart-link {
	text-decoration:		none;
}

.cart-product-card {
	margin:					.2em 0;
	width:					100%;
}

.cart-product-link {
	color:					var(--dark-azure);
	text-decoration:		none;
}

.cart-product-price {
	float:					right;
}

.cart-product-remove {
	background-color:		inherit;
	border:					none;
	color:					var(--flag-red);
	cursor:					pointer;
	font-size:				.85em;
}

.cart-product-remove.inactive {
	background-color:		inherit;
	border:					none;
	color:					silver;
	cursor:					inherit;
	font-size:				.85em;
}

img.cart-thumb {
	width:					75px;
}

.checkout-btn {
	margin:					1em 0;
	width:					100%;
}

.checkout-price-line {
	float:					right;
}

.checkout-row {
	margin:					1em 0;
}

.checkout-tax-message {
	background-color:		var(--light-green);
	border-left:			1em solid white;
	border-right:			1em solid white;
	font-style:				italic;
	margin-top:				1em;
	text-align:				center;
	width:					100%;
}

.product-card-title {
	background:				var(--blood-red);
	color:					var(--flag-white);
	text-align:				center;
}

.product-carousel {
	display:				none;
}

.product-carousel.flickity-enabled {
	display:				block;
}

.cart-count {
	background-color:		rgba(255,196,20,.4);
	border-radius:			90%;
	font-size:				.9em;
	left:					-32px;
	padding:				5px 8px;
	position:				relative;
	top:					-10px;
}

.cart-icon {
	color:					var(--flag-green);
	margin:					0 1em;
}

.contact-form button,label {
	margin-top:				1em;
}

.contact-form textarea {
	height:					20em;
}

.form-error {
	color:					var(--flag-red);
}

.inactive-btn {
	cursor:					default !important;
}

.input-group {
}

li.nav-item {
	align-items:			center;
	display:				flex;
}

a.nav-link, a.nav-link:hover {
	color:					black;
}

a.nav-link.active {
	color:					var(--flag-green);
	font-weight:			500;
}

a.navbar-brand {
	margin-left:			1em;
}

div.container {
	margin-top:				1em;
}

.logo-font {
	color:					var(--flag-red) !important;
	font-family:			'Oleo Script';
	font-size:				1.65em;
	font-style:				italic;
}

.main-menu-right {
	margin-right:			1em;
}

.postcode-input {
	border:					1px solid lightgray;
	border-radius:			4px;
	height:					2.4em;
	text-align:				right;
	width:					100%;
/*	width:					8em; */
}

.product-card-text {
	font-size:				.85em;
}

.product-detail-add-to-cart-section {
	margin-top:				2em;
}

.product-detail-description {
	margin-top:				2em;
}

.product-detail-headline {
	font-family:			'Oleo Script';
}

.product-detail-price {
	font-size:				1.6em;
}

.product-detail-sku {
	font-size:				1.2em;
}

.product-qty {
	width:					5em;
}

img.rss-image {
	float:					left;
	margin:					0 1em 0 0;
	width:					350px;
}

.rss-item-headline {
	display:				inline;
}

.rss-item-signature {
	float:					right;
	font-size:				.9em;
	font-style:				italic;
	display:				inline;
	
/*
	position:				absolute;
	right:					4px;
	top:					4px;
*/
}

.rss-title-link {
	color:					var(--savoy-azure);
	filter:					brightness(50%);
	text-decoration:		none !important;
}

.show-password-btn {
	cursor:					pointer;
	height:					38px;
}

.sidebar {
	top:					0;
	bottom:					0;
	left:					0;
	box-shadow:				0 2px 5px 0 rgb(0 0 0 / 5%), 0 2px 10px 0 rgb(0 0 0 / 5%);
	width:					240px;
	z-index:				600;
}

.spec-header {
	margin-top:				2em;
}

.specline {
	border-top:				1px solid gainsboro;
	margin:					.5em 2em;
}

.product-list {
	position:				sticky;
	display:				inline;
	top:					0;
	left:					241px;
}

.text-image {
	float:					left;
	margin:					1em;
}

/* Flickety */
.carousel-cell {
	background:				#8C8;
	border-radius			5px;
	height					400px;
	margin-right:			10px;
	opacity:				0.2;
	width:					400px;
}

.carousel-cell.is-selected {
	opacity:				1.0;
}

/* Product loading overlay spinner */
#product-loading-overlay {
	background:				#ffffff;
	color:					var(--flag-red);
	float:					left;
	height:					100%;
	left:					0;
	opacity:				.35;
	padding-top:			25%;
	position:				fixed;
	text-align:				center;
	top:					0;
	width:					100%;
	z-index:				5000;
}

.product-loading-spinner {
	animation:				rotate 0.8s infinite linear;
	border-radius:			50%;
	border-right-color:		transparent;
	border:					10px solid var(--flag-red);
	height:					120px;
	margin:					0 auto;
	width:					120px;
}

@keyframes rotate {
	0% {
	    transform: rotate(0deg);
	}
	100% {
	    transform: rotate(360deg);
	}
}
