/*** BASICS & OVERRIDES ****/
html, body {
	font-family: 'Lato','Helvetica Neue', Helvetica, Arial, sans-serif;
	color: #666;
	background: none;
	height: 100%;
}

body {
	background-color: #fff;
	background-size: contain;
	/*
	background-image: radial-gradient(ellipse at top, #ddd 0%, #fafafa 70%);
	*/
	background-image: radial-gradient(ellipse at top, #fff 0%, #eee 90%);
	background-attachment: fixed;
	color: #666;
}

label, input, select {
	color: #666;
}

div, span, p, input, a, textarea {
	font-family: 'Lato','Helvetica Neue', Helvetica, Arial, sans-serif;
}

h1, h2, h3, h4 {
	font-family: 'Lato','Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 300;
	color: #444;
}

h5, h6 {
	font-family: 'Lato','Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 400;
	color: #444;
}

a {
	color: #468db9;
	transition: all .2s ease-in-out;
}

	a:hover {
		color: #4581a5;
	}

.button, button {
	border-radius: 0;
	border-bottom: 2px solid rgba(0,0,0,.2);
	background: #468db9;
}

	.button:hover, button:hover, .button:focus, button:focus {
		background: #4581a5;
	}

p:last-of-type {
	margin-bottom: 0px;
}

#pnlStart input:disabled, #pnlStart input[readonly] {
	background-color: #fff;
	cursor: default;
	border: 0;
	box-shadow: none;
	padding: 0;
	margin: 0;
	height: auto;
}

/*** LAYOUT ****/
.header {
}

.body-content {
	padding: 1rem 0 0 0;
}

.body-header {
	position: relative;
	z-index: 10;
}

.body-main {
	background: #eaeaea;
	position: relative;
	z-index: 5;
}

.body-footer {
	background: #eaeaea;
	padding-bottom: 2rem;
}

.section-tuckup {
	margin-top: -150px;
	padding-top: 150px;
}

.panel1 {
	background: #fff;
	border-radius: 0px;
	outline: 10px solid #f7f7f7;
	box-shadow: 0px 0px 40px 0px #ebecf0;
	margin-bottom: 2rem;
}

.panel2 {
	background: #fff;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	margin-bottom: 2rem;
}

.panel3 {
	margin-bottom: 2rem;
}

.panel4 {
	background: #fff;
	border: 3px solid #468db9;
	border-radius: 0px;
	margin-bottom: 2rem;
}

.panel-grey {
	background: #666;
	border-radius: 0px;
	color: #eee;
}


.content-pad-all {
	padding: 1rem;
}

.content-pad-top {
	padding-top: 1rem;
}

.content-pad-right {
	padding-right: 1rem;
}

.content-pad-bottom {
	padding-bottom: 1rem;
}

.content-pad-left {
	padding-left: 1rem;
}

.section-divide-top {
	border-top: 1px solid #eee;
}

.section-divide-bottom {
	border-bottom: 1px solid #eee;
}

.elem-ib {
	display: inline-block;
}

.elem-vert-m {
	vertical-align: middle;
}

.text-strikethrough {
	text-decoration: line-through;
}

.text-small {
	font-size: 0.6875rem;
}

.text-subtle {
	color: #aaa;
}

/*** ***/
.cart-header {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 0.6875rem;
}

.product-image {
	padding-right: 1rem;
}

/*** ***/
.panel-checkout {
	border-radius: 0px;
	margin-bottom: 2rem;
	background: #fff;
	outline: 10px solid #f7f7f7;
	box-shadow: 0px 0px 40px 0px #ebecf0;
}

	.panel-checkout button,
	.panel-checkout .button {
		margin-bottom: 0;
	}

	.panel-checkout .checkout-header {
		vertical-align: middle;
		line-height: 1;
		display: flex;
		justify-content: space-between;
		background: #f2f2f2;
	}

	.panel-checkout.available .checkout-header {
		cursor: pointer;
	}

	.panel-checkout .checkout-header-label {
		padding: 1rem;
		vertical-align: middle;
	}

		.panel-checkout .checkout-header-label span {
			display: inline-block;
			vertical-align: middle;
		}

		.panel-checkout .checkout-header-label .checkout-header-label-icon {
			display: none;
		}

	.panel-checkout.available .checkout-header-label .checkout-header-label-icon {
		display: inline-block;
		margin-right: 5px;
	}

	.panel-checkout .checkout-header-label .checkout-header-label-icon {
		font-size: 0.6875rem;
		color: #aaa;
		transition: all ease-in-out .2s;
	}

	.panel-checkout .checkout-header-label .checkout-header-label-text {
		font-size: 1.125rem;
		transition: all ease-in-out .2s;
	}

	.panel-checkout.available .checkout-header-label-text {
		color: #444;
	}

	.panel-checkout.active .checkout-header-label-text {
		color: #222;
		font-weight: bold;
	}

	.panel-checkout.active .checkout-header .checkout-header-label .checkout-header-label-icon,
	.panel-checkout.available .checkout-header:hover .checkout-header-label .checkout-header-label-icon {
		transform: rotate(90deg);
	}

	.panel-checkout.available .checkout-header:hover .checkout-header-label .checkout-header-label-text {
		color: #222;
	}

	.panel-checkout .checkout-header-status {
		text-align: right;
		padding: .9rem 1rem;
		vertical-align: middle;
	}

		.panel-checkout .checkout-header-status > div {
			display: none;
		}

		.panel-checkout .checkout-header-status .saving,
		.panel-checkout .checkout-header-status .complete,
		.panel-checkout .checkout-header-status .incomplete {
		}

		.panel-checkout .checkout-header-status .saving {
			color: #3979b6;
		}

		.panel-checkout .checkout-header-status .complete {
			color: #4CAF50;
		}

		.panel-checkout .checkout-header-status .incomplete {
			color: #ff9800;
		}

	.panel-checkout .checkout-form {
		padding: 1rem;
		display: none;
	}

	.panel-checkout.active .checkout-form {
		padding: 1rem;
		display: block;
	}

/********************************/

.loader,
.loader:after {
	border-radius: 50%;
	width: 1rem;
	height: 1rem;
}

.loader {
	font-size: 2px;
	position: relative;
	text-indent: -9999em;
	border-top: 1.1em solid rgba(255, 255, 255, 0.5);
	border-right: 1.1em solid rgba(255, 255, 255, 0.5);
	border-bottom: 1.1em solid rgba(255, 255, 255, 0.5);
	border-left: 1.1em solid #3979b6;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: load8 1.1s infinite linear;
	animation: load8 1.1s infinite linear;
	display: inline-block;
	/*margin: 60px auto;
	font-size: 10px;
	position: relative;
	text-indent: -9999em;
	border-top: 1.1em solid rgba(255, 255, 255, 0.2);
	border-right: 1.1em solid rgba(255, 255, 255, 0.2);
	border-bottom: 1.1em solid rgba(255, 255, 255, 0.2);
	border-left: 1.1em solid #ffffff;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: load8 1.1s infinite linear;
	animation: load8 1.1s infinite linear;*/
}

@-webkit-keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

/*** ***/
.panel-review {
	border-radius: 0px;
	margin-top: 20px;
	margin-bottom: 50px;
	background: #fff;
	outline: 10px solid #f7f7f7;
	box-shadow: 0px 0px 40px 0px #ebecf0;
}

.review-header {
	border-radius: 0px;
	background: #fff;
}

.panel-review .review-header {
	line-height: 1;
	background: #f2f2f2;
}

.panel-review .review-header-label {
	padding: 1rem;
	vertical-align: middle;
}

	.panel-review .review-header-label span {
		display: inline-block;
		vertical-align: middle;
	}

	.panel-review .review-header-label .review-header-label-icon {
		font-size: 0.6875rem;
		color: #aaa;
		transition: all ease-in-out .2s;
	}

	.panel-review .review-header-label .review-header-label-text {
		font-size: 1.125rem;
		color: #444;
		font-weight: bold;
	}

.panel-review .review-content {
	
}

.review-content h1, .review-content h2, .review-content h3, .review-content h4, .review-content h5, .review-content h6 {
	line-height: normal;
	margin-bottom: 0px;
}

.panel-narrow {
}

@media print, screen and (min-width: 40em) {
	.panel-narrow {
		max-width: 30%;
	}
}

/*** form messaging  ***/

.form-messaging {
}

	.form-messaging p:last-of-type {
		margin: 0;
		padding: 0;
	}

	.form-messaging > div {
		padding: 1rem;
		background: #eee;
		color: #666;
		margin-bottom: .5rem;
	}

		.form-messaging > div:last-of-type {
			margin-bottom: 1.5rem;
		}

	.form-messaging .form-message-information {
		background: #BDE5F8;
		color: #00529B;
		font-weight: 400;
	}

	.form-messaging .form-message-success {
		background: #DFF2BF;
		color: #4F8A10;
		font-weight: 700;
	}

	.form-messaging .form-message-warning {
		background: #FEEFB3;
		color: #9F6000;
		font-weight: 400;
	}

	.form-messaging .form-message-error {
		background: #FFBABA;
		color: #D8000C;
		font-weight: 700;
	}

.form-messaging-minimal {
	font-size: .875rem;
}

	.form-messaging-minimal > div {
		padding: 0.5625rem;
		margin: 1px 0 0 0;
		font-weight: normal !important;
		background: #fafafa !important;
	}

		.form-messaging-minimal > div:last-of-type {
			margin-bottom: 0;
		}

.status-submitting-order {
	background: #f9423a;
	padding: 0.85em 1em;
	display: inline-block;
	color: #fff;
	font-size: 0.9rem;
	line-height: 1;
	display: none;
}

.header-logo img {
}

.header-title h2 {
	line-height: normal;
	margin: 0;
	padding: 0;
}

.header-intro {
}