html, body {
	font-family: 'Roboto', Helvetica, Arial, sans-serif;
	background: #f5f5f5;
	color: #54585a;
}

a {
	transition: all .2s ease-in-out;
	outline: 0;
}

	a:hover, a:active, a:focus {
		outline: 0;
	}

	a:hover {
		color: #888;
	}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Oswald', Helvetica, Arial, sans-serif;
	line-height: normal;
	font-weight: 400;
}

label {
	color: #54585a;
}

@media screen and (min-width: 40em) {
	h1 {
		font-size: 3.0rem;
	}

	h2 {
		font-size: 2.5rem;
	}

	h3 {
		font-size: 1.75rem;
	}

	h4 {
		font-size: 1.5rem;
	}

	h5 {
		font-size: 1.25rem;
	}

	h6 {
		font-size: 1.0rem;
	}
}

.row {
	max-width: 70.0rem;
}

hr {
	max-width: 70.0rem;
}


.button {
	/*
	font-weight: 600;
	font-size: 1.125rem;
	*/
	font-family: rift, 'Oswald', Helvetica, Arial, sans-serif;
	text-transform: uppercase;
	padding: 10px 16px;
	margin-bottom: 0;
	box-shadow: 0px 2px 2px rgb(0 0 0 / 30%);
	border: 1px solid rgba(255,255,255,.1);
	background: #00488c;
	background: linear-gradient(170deg, #00488c 0%,#00284d 100%);
	transition: color .2s ease-in-out, background .2s ease-in-out;
}

	.button:hover, .button:focus {
		background: #00284d;
		background: linear-gradient(170deg, #00284d 0%,#00284d 100%);
	}

	.button.secondary {
		background: #222;
		background: linear-gradient(170deg, #222 0%,#111 100%);
	}

		.button.secondary:hover, .button.secondary:focus {
			background: #111;
			background: linear-gradient(170deg, #111 0%,#111 100%);
		}

	.button.hollow {
		background: none;
	}

.close-button {
	font-size: inherit;
}

.modal-header {
	padding: 0 0.9375rem;
}

.modal-content {
	padding: 0.9375rem;
}

.header {
	background: #fff;
	position: relative;
	border-bottom: 1px solid #f5f5f5;
	box-shadow: 0px 10px 30px rgba(0,0,0,0.1);
}

	.header form {
		margin: 0;
		padding: 0;
		display: inline;
	}

.header-logo {
	padding: 5px 0;
	display: block;
}



.header .header-contacts {
	background: #f5f5f5;
	text-align: center;
	font-size: 0.875rem;
	vertical-align: middle;
	padding: 10px 0px;
	margin: 0 -0.9375rem;
}

	.header .header-contacts p {
		margin: 0;
		line-height: normal;
	}

.header-messages {
	background: #f5f5f5;
	margin: 0 -0.9375rem;
	text-align: center;
	padding: 10px 0 0px 0px;
}

.header-selectors {
	background: #f5f5f5;
	margin: 0 -0.9375rem;
	text-align: center;
}

.header-selector {
	text-align: center;
	vertical-align: middle;
	padding: 10px 0 0px 0px;
	font-size: .775rem;
	display: inline-block;
}

.header-selector-language {
	margin-left: 8px;
}

.header-selector label {
	display: inline-block;
	font-size: .775rem;
}

.header-selector select {
	display: inline-block;
	width: auto;
	min-width: 55px;
	margin: 0 0 0 3px;
	height: auto;
	font-size: .775rem;
}

.header-selector-language select {
	min-width: 75px;
}

@media screen and (min-width: 40em) {
	.header-messages {
		background: #fff;
		text-align: right;
		margin: 0;
	}

	.header-selectors {
		background: #fff;
		text-align: right;
		margin: 0;
	}

	.header-selector {
		background: #fff;
		text-align: right;
		/*
		padding: 10px 0px 0px 0px;
		*/
	}

		.header-selector label {
			text-align: right;
		}

		.header-selector select {
			/*
		text-align: right;
		*/
		}

	.header .header-contacts {
		background: #fff;
		text-align: right;
		margin: 0;
	}

		.header .header-contacts > div {
			display: inline-block;
			margin-right: 10px;
			padding-right: 10px;
			border-right: 1px solid #ddd;
			vertical-align: middle;
		}

			.header .header-contacts > div:last-of-type {
				margin-right: 0;
				padding-right: 0px;
				border-right: 0px;
			}
}


@media screen and (min-width: 60em) {
	.header-messages {
		padding: 30px 0px 0px 0px;
	}

	.header-selector {
		/*
		padding: 30px 0px 0px 0px;
		*/
	}
}

.header .contact-phone a:before {
	font-family: 'Font Awesome 5 Free';
	content: '\f095';
	padding-right: 4px;
	font-weight: 900;
}

.header .contact-email a:before {
	font-family: 'Font Awesome 5 Free';
	content: '\f0e0';
	padding-right: 4px;
	font-weight: 900;
}

/*
.navigation {
	background: #f36c1c;
}
*/

.navigation {
	background: #676b6d;
}
	.navigation .button {
		margin-bottom: 0;
		line-height: 1;
		background-color: #676b6d;
		padding: 0.85em 1em;
		/***************************************************/
		background-image: none;
		font-family: rift, 'Oswald', Helvetica, Arial, sans-serif;
		text-transform: uppercase;
		/***********************background: #00488c;****************************/
		box-shadow: none;
		border: none;
		border-radius: 0;
	}

	.navigation .is-dropdown-submenu-parent .button {
		padding: 0.85em 1.65em 0.85em 1em;
		/*
		padding: 0.7rem 1.7rem .7rem 1rem;
		*/
	}

		.navigation .button:hover {
			background-color: #989b9c;
		}

	.navigation .dropdown.menu > li.is-dropdown-submenu-parent > a::after {
		border-color: #676b6d transparent transparent;
	}

	.navigation .is-drilldown-submenu-parent > a::after {
		border-color: transparent transparent transparent #989b9c;
	}

	.navigation #main-menu {
		border-top: 1px solid #989b9c;
		clear: both;
		margin: 0 -0.9375rem;
	}

		.navigation #main-menu > div.is-drilldown {
			max-width: 100% !important;
		}

			.navigation #main-menu > div.is-drilldown li > a {
				border-bottom: 1px solid #989b9c;
			}

			.navigation #main-menu > div.is-drilldown .submenu a {
				border-bottom: 1px solid #989b9c;
			}

		.navigation #main-menu .submenu a:hover {
			background: #f2f2f3;
		}

.menu > li > a {
	padding: 0.7rem 1.65em .7rem 1rem;
}


.is-drilldown {
	/*
	overflow: visible !important;
	height:auto;
	*/
}

	.is-drilldown > ul > li ul {
		background: #fff;
	}

		.is-drilldown > ul > li ul li {
			background: #fff;
		}

.js-drilldown-back > a::before {
	border-color: transparent #989b9c transparent transparent;
}

.is-drilldown-submenu  {
	height: auto !important;
}

@media screen and (min-width: 40em) {
	.navigation #main-menu {
		border: none;
		clear: none;
		margin: 0;
	}

		.navigation #main-menu > div.is-drilldown {
			max-width: initial;
		}

	.menu.vertical > li > a {
		display: block;
		white-space: nowrap;
	}
}

.navigation .function-buttons .button.dropdown::after {
	border-style: none;
	margin: 0;
	padding: 0;
	border: 0;
}

.mobile-menu-icon {
	margin-top: 0.75em;
}

.dropdown-area {
	max-width: 70em;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

	.dropdown-area .dropdown-pane {
		top: auto !important;
		right: 0px !important;
		left: inherit !important;
	}

@media screen and (min-width: 40em) {
	.dropdown-area .dropdown-pane {
		margin-right: 0.9375rem;
	}
}

.breadcrumbs-section {
	background: #f5f5f5;
	padding: 10px;
}

	.breadcrumbs-section .breadcrumbs {
		margin: 0;
	}

	.breadcrumbs-section .row {
		background: transparent;
	}

.breadcrumbs li {
	color: #54585a;
}

.body-header {
	background: #fff;
	padding: 20px 0px 0px 0px;
}

.body-content {
	background: #fff;
	padding: 20px 0px 40px 0px;
}

.footer-section {
	padding: 20px 0px;
	background: #f5f5f5;
	background: linear-gradient(to bottom, #e5e5e5 0%, #f5f5f5 20%);
}

.credit-cart-list span {
	display: inline-block;
	margin: 0 5px 5px 0;
}

	.credit-cart-list span img {
		width: 40px;
	}

/*** HEADER CART ***/

.cart-menu-dropdown {
	width: 100%;
}

@media screen and (min-width: 40em) {
	.cart-menu-dropdown {
		width: 500px;
	}
}

.cart-menu-dropdown .cart-header {
	border-bottom: 1px solid #eee;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}

.cart-menu-dropdown .cart-footer {
}

	.cart-menu-dropdown .cart-footer .btn-checkout {
		margin: 0 0 0 .5rem;
	}

/*** PUBLIC STYLES ***/
.authorization-page .body-content {
	background: #f5f5f5;
}

/*.frm-authorization {
	border: 1px solid #c0d2dd;
	background: #fff;
	padding: 0.9375rem;
	margin-bottom: 1.875rem;
}*/

/*** COMMON PRODUCT ELEMENTS ***/
.product-image {
	border: 1px solid #f5f5f5;
	background: #f5f5f5; /* Old browsers */
	background: -moz-radial-gradient(center, ellipse cover, #ffffff 0%, #f5f5f5 90%); /* FF3.6-15 */
	background: -webkit-radial-gradient(center, ellipse cover, #ffffff 0%, #f5f5f5 90%); /* Chrome10-25,Safari5.1-6 */
	background: radial-gradient(ellipse at center, #ffffff 0%, #f5f5f5 90%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f5f5f5',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
	padding: 10px;
}

.price-effective {
	font-weight: 700;
}

.price-standard {
	text-decoration: line-through;
	color: #bbb;
	font-size: .75rem;
	margin: 0px 3px;
}

.price-discount {
	font-size: .875rem;
	color: #2ca38d;
}

/*** PRODUCT DETAIL PAGE  ***/
.product-page-section {
	border-top: 1px solid #eee;
	padding-top: 10px;
}

.product-detail-page .product-image {
	margin-bottom: 1rem;
	transition: all .3s ease-in-out;
}

	.product-detail-page .product-image img {
		transition: all .3s ease-in-out;
	}

.product-detail-page .product-images-thumbs .product-image-thumb,
.video-thumb {
	display: block;
	margin-bottom: 1rem;
}

.product-image-caption {
	margin-top: 7px;
	font-style: italic;
	font-size: .75rem;
}

.product-detail-page .product-image-thumb {
	cursor: pointer;
	margin-bottom: 0;
}

	.product-detail-page .product-image-thumb.active {
		outline: 1px solid #ccc;
	}

.product-page-cart-box {
	vertical-align: middle;
	padding: 10px;
	background: #f5f5f5;
	margin-bottom: 1rem;
}

	.product-page-cart-box input,
	.product-page-cart-box button {
		margin-bottom: 0;
	}

	.product-page-cart-box p:last-of-type {
		margin-bottom: 0;
	}

	.product-page-cart-box .product-page-sku-title p:last-of-type {
		margin-bottom: 0;
	}

	.product-page-cart-box .product-page-sku-description {
		font-size: .75em;
	}

		.product-page-cart-box .product-page-sku-description p:last-of-type {
			margin-bottom: 0;
		}

.product-page-sku-content {
	float: left;
	width: 75%;
}

.product-page-discount-notice {
	font-size: 13px;
	background: #0671b8;
	padding: 5px;
	color: #fff;
	margin-top: 20px;
	text-align: center;
}

.product-page-sku-image {
	float: right;
	width: 20%;
}

	.product-page-sku-image .product-image {
		padding: 0;
	}

.product-page-sku-price-qty {
}

.product-page-cart-box .price {
	margin-bottom: 0.4rem;
}

.product-page-cart-box .add-to-cart {
	vertical-align: middle;
}

.product-page-cart-box .quantity {
	display: inline-block;
	text-align: left;
	vertical-align: middle;
}

	.product-page-cart-box .quantity label {
		display: inline;
	}

		.product-page-cart-box .quantity label .text {
			font-size: 0.6875rem;
			font-weight: 700;
			margin-right: 3px;
		}

	.product-page-cart-box .quantity input {
		display: inline;
		width: 3.5rem;
		margin-right: 3px;
	}

@media screen and (min-width: 60em) {

	.product-page-cart-box .price {
		float: left;
		padding-top: 9px;
		margin-bottom: 0;
	}

	.product-page-cart-box .add-to-cart {
		float: right;
	}

	.product-page-cart-box .quantity {
	}

		.product-page-cart-box .quantity input {
			width: 4.5rem;
		}
}

.product-detail-page .downloads {
}

.product-detail-page .download-item {
	vertical-align: middle;
	margin-bottom: 1rem;
}

	.product-detail-page .download-item a {
		display: inline-block;
	}

	.product-detail-page .download-item .item-icon {
		display: block;
		margin-right: .25rem;
		vertical-align: bottom;
		float: left;
	}

		.product-detail-page .download-item .item-icon img {
			width: 25px;
			height: auto;
			padding: 0;
			margin: 0;
		}

	.product-detail-page .download-item .item-text {
		display: block;
		float: none;
		margin-left: 36px;
	}

.related-products {
	margin: 1.5rem 0 0 0;
	padding: 1.5rem 0 0 0;
}

.product-page-cart-box {
	cursor: pointer;
	border: 2px solid #fff;
	transition: all ease-in-out .3s;
}

	.product-page-cart-box.active {
		border: 2px solid #8d827a;
	}

.product-page-button-panel .add-to-cart {
	display: inline-block;
	vertical-align: middle;
}

.pnl-btn-cart {
	display: inline-block;
	vertical-align: top;
	max-width: 70%;
}

.product-page-button-panel .quantity {
	display: inline-block;
	text-align: left;
	vertical-align: top;
}

	.product-page-button-panel .quantity label {
		display: inline;
	}

		.product-page-button-panel .quantity label .text {
			font-size: 0.6875rem;
			font-weight: 700;
			margin-right: 3px;
		}

	.product-page-button-panel .quantity input {
		display: inline;
		width: 3.5rem;
		margin-right: 3px;
	}

.product-page-sku-content .outofstock {
	font-size: 12px;
	text-transform: uppercase
}

.skuSelectorOutOfStock {
}

.product-page-button-panel {
	margin-bottom: 1rem;
}

	.product-page-button-panel input,
	.product-page-button-panel .button {
		margin-bottom: 0;
	}

#pnlppbiibtn {
	display: none;
	text-align: left;
	font-size: 13px;
	vertical-align: top;
}

.pnlppbiibtn-seperator {
	padding: 5px 1rem;
}

.pnlppbiibtn-desc {
	padding: 0 5px;
}

.pnlppbiibtn-more {
	padding: 5px 0px;
	font-size: 13px;
}

.bii-learn-links {
	padding: 10px 0 0 0;
}

.notify-in-stock {
	display: block;
	clear: both;
	padding: 10px 0 0 0;
	position: relative;
	z-index: 10;
}

/*** COMMON SEARCH ***/
.search-controls {
	background: #f5f5f5;
	padding: 20px;
	margin: 20px 0px;
}

.search-filter-toggle {
	cursor: pointer;
	font-size: 1.25rem;
	margin-bottom: 0;
	display: inline-block;
}

.search-filters {
	margin-top: 0.5rem;
}

.search-filter-toggle .toggle-text {
	font-family: 'Oswald', Helvetica, Arial, sans-serif;
	color: #54585a;
}

.search-sort-by {
	font-size: 0.875rem;
	text-align: left;
	margin: 20px -20px 0px -20px;
	padding: 20px 20px 0px 20px;
	border-top: 1px solid #fff;
}

	.search-sort-by select {
		font-size: 0.875rem;
		padding: 0.5rem;
		height: auto;
		width: 140px;
		margin-left: .5rem;
		margin-bottom: 0;
	}

.search-block {
	background: #f5f5f5;
	padding: 10px;
	margin-bottom: 1rem;
}
	.search-block .search-block-top {
		margin-bottom: 10px;
	}

	.search-block .reviews-stars {
		min-height: 28px;
	}
	
	.search-block .price {
		margin-top: 10px;
	}

	.search-block .product-image {
		margin-bottom: 10px;
		padding: 0;
		background: #fff;
		min-height: 100px;
		text-align: center;
	}

	.search-block .product-image img {
		max-height: 228px;
	}
	
	.search-block .stock {
		padding-top: 5px;
		font-size: .875rem;
	}

.instock {
	color: #191;
}

.outofstock {
	color: #f33;
}


.attribute-group-selected {
	padding: 0.5rem;
	background: #8d827a;
	color: #fff;
	cursor: pointer;
	/*
	height: 2.4375rem;
	*/
}

.attribute-group-selected-option {
	float: none;
	text-align: left;
	padding: 0px 25px 0px 0px;
	font-size: 1rem;
}

.attribute-group-selected-hide {
	float: right;
	text-align: right;
}





/*** CATEGORY PAGE ***/

.product-category-page {
}



/*** COLLECTION PAGE ***/

.product-collection-page {
}


/*** COMMON CART ***/

.cart-item {
	border-bottom: 1px solid #eee;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}

	.cart-item:last-of-type {
		border-bottom: 0px;
	}

.cart-item-product-image {
	width: 25%;
	padding-right: 0.75rem;
}

.cart-item-product-text {
	max-width: 60%;
}

.cart-info {
	font-size: 0.875rem;
	line-height: 1.3;
	margin: 5px 0;
}

@media screen and (min-width: 40em) {
	.cart-item-product-image {
		width: 25%;
	}

	/*.cart-item-product-text {
		max-width: 75%;
	}*/
}

.checkout-cart-sidebar .cart-item-product-text {
	max-width: 55%;
}


/*** CART PAGE ***/
.cart-page {
}

	.cart-page .intro-content {
		margin-bottom: 1rem;
		border-bottom: 1px solid #eee;
	}

/*** FMAs ***/

.fma-area {
	position: relative;
	margin: 30px auto;
	background: #fff;
	max-width: 70.0rem;
	padding: 0 0.9375rem;
}

	.fma-area .fma-control {
		position: absolute;
		z-index: 100;
		color: #fff;
		opacity: 1.0;
		cursor: pointer;
		background-color: rgba(255,255,255,0.2);
		text-shadow: 0px 1px 2px rgba(0,0,0,0.3);
		line-height: 1;
		top: 37%;
		padding: 3px;
		margin: 0 0.9375rem;
		font-size: 24px;
		font-weight: 100;
		line-height: 1;
	}

		.fma-area .fma-control:hover {
			background-color: rgba(255,255,255,0.5);
			transition: all ease-in-out .3s;
		}


	.fma-area #fma-previous {
		left: 0;
	}

	.fma-area #fma-next {
		right: 0;
	}

	.fma-area .fma {
		display: none;
		box-shadow: 0px 10px 30px rgba(0,0,0,0.1);
	}

		.fma-area .fma a {
			transition: none;
		}


.fma .fma-link {
	display: block;
}

.fma .fma-text {
	display: block;
	padding: 0.875rem 0.9375rem;
	color: #666;
	background: #f5f5f5;
	line-height: normal;
}

.fma h2 {
	margin-bottom: 0.5rem;
	line-height: 1;
	padding: 0;
}

.fma .fma-text p {
	margin-bottom: 0.5rem;
	line-height: 1;
	padding: 0;
}

.fma .button {
	margin-bottom: 0rem;
	line-height: 1;
	padding: 0.5em .6em;
}

@media screen and (min-width: 40em) {
	.fma-area .fma-control {
		top: 40%;
		padding: 9px 6px;
		font-size: 42px;
		font-weight: 100;
		line-height: 1;
	}

	.fma .fma-text {
		position: absolute;
		left: 0;
		display: block;
		vertical-align: middle;
		color: #fff;
		background: transparent;
		text-align: center;
		width: 100%;
	}

		.fma .fma-text h1,
		.fma .fma-text h2,
		.fma .fma-text h3,
		.fma .fma-text h4,
		.fma .fma-text h5,
		.fma .fma-text h6 {
			line-height: 1;
		}

	.fma .fma-text-top {
		top: 2%;
	}

	.fma .fma-text-bottom {
		bottom: 2%;
	}

	.fma .fma-text {
		text-shadow: 0px 1px 3px rgba(0,0,0,0.6);
	}

		.fma .fma-text p {
			font-size: 1.5rem;
		}

		.fma .fma-text .button {
			text-shadow: none;
			box-shadow: 0px 1px 3px rgba(0,0,0,0.3);
			padding: 0.85em 1em;
		}
}

@media screen and (min-width: 60em) {

	.fma .fma-text .button {
		box-shadow: 0px 1px 3px rgba(0,0,0,0.3);
		line-height: normal;
		padding: 0.85em 1em;
	}
}


.fma-area .fma .fma-image {
}

.fma-area .fma img {
	width: 100%;
	height: auto;
}


/*** form messaging  ***/

.access-code-help {
	padding: 10px 32px;
	background: #ddf0be;
	display:block;
}
.access-code-help.on {
	display: block;
}

.access-code-help-icon{
	cursor:pointer;
}

.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;
	}

/*** profile ***/

.subscription-list-item {
	padding: 1rem 0;
	border-top: 1px solid #eee;
}

	.subscription-list-item .product-image {
		margin-bottom: 0;
	}

	.subscription-list-item .subscription-list-item-dates {
		font-size: .875rem;
		margin: .5rem 0;
	}

	.subscription-list-item .button {
		margin-bottom: 0;
	}

/*** checkout ***/
.checkout-cart-sidebar {
	font-size: .875rem;
}

	.checkout-cart-sidebar .cart-header {
		padding-top: .5rem;
		margin-bottom: .5rem;
		border-bottom: 1px solid #eee;
	}

	.checkout-cart-sidebar .cart-item {
		padding-bottom: .5rem;
		margin-bottom: .5rem;
	}

	.checkout-cart-sidebar .cart-item-footer {
		margin-bottom: 1.0rem;
	}

.review-detail-panel {
	background: #f5f5f5;
	padding: 1rem;
	margin-bottom: 1.8rem;
}

	.review-detail-panel p:last-of-type {
		padding-bottom: 0;
		margin-bottom: 0;
	}

/*
.checkout-accept-terms {
	font-size: .875rem;
}

.checkout-accept-terms label {
	display: inline;
	margin-right: 0;
}
*/


/*** order history ***/
.order-history-list {
}

.order-history-list-item {
	cursor: pointer;
}

	.order-history-list-item h5 {
	}

.order-history-list-item {
	padding: 1rem;
	background: #f5f5f5;
	margin: 0 0 1.8rem 0;
	font-size: .875rem;
}

.order-history-list-item-pad {
	margin-bottom: .5rem;
}

.order-history-list-item .button.order-history-list-item-link {
	margin: 0;
}

.order-history-panel {
	padding: 10px 0px;
	margin: 20px 0px;
	border-top: 1px solid #eee;
}

table.order-history-totals,
table.order-history-totals tbody,
table.order-history-totals thead,
table.order-history-totals tr,
table.order-history-totals td {
	background-color: transparent !important;
	border: 0;
}

table.order-history-totals {
	width: auto;
}

.order-history-totals td {
	text-align: left;
	vertical-align: middle;
	padding: 1px 15px 1px 0px;
}

.order-history-totals tr td:nth-child(even) {
	text-align: right;
	padding: 0px;
}

.order-history-detail-product {
	padding: 10px 0px;
	/*
	margin: 0px 0px 20px 0px;
	*/
	border-top: 1px solid #eee;
}


.menu,
.dropdown-pane {
	z-index: 110 !important;
}

/*** division page ***/

.division-item {
	background: #f5f5f5;
	padding: 10px;
	margin-bottom: 1rem;
}

.division-item-top {
}

.division-item-image {
	display: block;
	margin-bottom: 10px;
	padding: 0;
}

.division-item-text {
	display: block;
}


/***  ***/
a.link-sorting {
	margin-right: 10px;
	padding-right: 5px;
}

	a.link-sorting:hover {
		text-decoration: underline;
	}

.authorization-page label.link {
	color: #0671b8;
	/*
	color: #e75400;
	*/
}

	.authorization-page label.link:hover {
		color: #54585a;
		cursor: pointer;
	}

.admin-toolbar {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 10000;
	padding: 7px;
	border-top: 1px solid #ccc;
	background: #f5f5f5;
	text-align: center;
}

	.admin-toolbar h6 {
		display: inline-block;
		font-family: 'Roboto', Helvetica, Arial, sans-serif;
		font-size: 11px;
		text-transform: uppercase;
		font-weight: bold;
		padding: 0 7px;
	}

	.admin-toolbar a {
		display: inline-block;
		font-size: 11px;
		text-transform: uppercase;
		padding: 0 7px;
	}



.checkbox-label-inline {
	margin: 0 0 0 0;
	line-height: normal;
}

	.checkbox-label-inline::after {
		content: ' ';
		display: block;
		clear: both;
	}

	.checkbox-label-inline input[type="checkbox"],
	.checkbox-label-inline input[type="radio"] {
		float: left;
		margin-top: 2px;
	}

	.checkbox-label-inline label {
		float: left;
		max-width: 90%;
		margin: 0 0.3rem 0 0.5rem;
		padding: 0 0 0 0;
	}


.checkout-accept-terms .checkbox-label-inline {
	font-size: 0.875rem;
	line-height: normal;
}

.checkout-accept-terms .checkbox-label-inline {
	font-size: 0.875rem;
	line-height: normal;
}

.checkout-accept-terms label,
.checkout-accept-terms a {
	font-size: 0.875rem;
	line-height: normal;
}

sup {
	top: -0.7em;
	font-size: 50%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

/********************/

.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}

	.videoWrapper object,
	.videoWrapper embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

/********************/
.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
	margin: 0;
	padding: 0;
	line-height: 0;
	top: 37%;
	right: .7rem;
	border-color: transparent transparent transparent #0671b8;
}


.accordion-title {
	font-size: .875rem;
}

	.accordion-title:hover,
	.accordion-title:active,
	.accordion-title:hover {
		font-size: .875rem;
	}

.span-label {
	display: block;
	margin: 0;
	font-size: 0.875rem;
	font-weight: normal;
	line-height: 1.8;
	color: #54585a;
}

#global-livechat {
	text-align: right;
}
#global-livechat img {
}

@media screen and (min-width: 40em) {
	/*
		#global-livechat:hover,
		#global-livechat:focus {
			opacity: 1.0;
		}
	*/
	#global-livechat {
		position: fixed;
		right: 10px;
		bottom: 10px;
	}

	#global-livechat img {
	}
}


.sku-warning {
	padding: 5px 0;
}

.product-detail-page .sku-warning {
	font-size: .75em;
}

/*******************************************/
.frm-inline-elements {
}

	.frm-inline-elements label {
		display: inline-block;
		line-height: 1.5;
	}

	.frm-inline-elements input {
		display: inline-block;
		width: auto;
	}

.frm-promo-code label {
	color: #575757;
	font-size: 1rem;
}

.frm-promo-code input,
.frm-promo-code button {
	margin-bottom: 0;
}

/*******************************************/
table.tbl-simple {
	width: auto;
	border: none;
	background: transparent;
	background-color: transparent;
	margin-bottom: 0;
}

	table.tbl-simple thead, table.tbl-simple tbody, table.tbl-simple tfoot {
		border: none;
		background-color: transparent;
	}

		table.tbl-simple tbody tr {
			background: transparent;
			background-color: transparent;
			border: none;
		}

		table.tbl-simple tbody th, table.tbl-simple tbody td {
			padding: 0 1rem 0 0;
			background: transparent;
			background-color: transparent;
			border: none;
		}

			table.tbl-simple tbody th:last-of-type,
			table.tbl-simple tbody td:last-of-type {
				padding: 0 0 0 0;
			}

/***************************************************************************/

.product-detail-page .pnl-bundles {
	padding: 20px 0 10px 0;
}

.product-detail-page .pnl-bundle {
	padding: 0.9375rem;
	cursor: pointer;
	background: #f5f5f5;
	border: 2px solid #8d827a;
	text-align: right;
	transition: all .2s ease-in-out;
}

	.product-detail-page .pnl-bundle:hover {
		background: #fafafa;
	}

.pnl-bundle:hover .button {
	background-color: #2f70a3;
	color: #fefefe;
}

.product-detail-page .pnl-bundle > div {
	display: inline-block;
	vertical-align: middle;
}

.product-detail-page .pnl-bundle .bundle-name {
	text-align: right;
}

.pnl-bundle .bundle-name p:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
}

.product-detail-page .pnl-bundle .bundle-action {
	text-align: right;
}

.pnl-bundle .button {
	margin: 0;
}

.product-detail-page .pnl-bundle .button {
	margin: 10px 0 0 0;
}

@media print, screen and (min-width: 40em) {
	.product-detail-page .pnl-bundle .bundle-name {
		max-width: 85%;
		padding-right: 5px;
	}

	.product-detail-page .pnl-bundle .bundle-action .button {
		margin: 0;
	}
}

#bundleResponseModal .button {
	margin: 0 10px 0 0;
}
/***************************************************************************/

.panel-subscription-item {
	padding: 10px;
	background: #f5f5f5;
	margin-bottom: 1rem;
	display: block;
}

	.panel-subscription-item select {
		height: auto;
	}

	.panel-subscription-item .outofstock {
		font-size: .75em;
	}

	.panel-subscription-item::before, .panel-subscription-item::after {
		content: ' ';
		display: table;
		clear: both;
	}

.panel-subscription-item-image {
	float: right;
	width: 20%;
}

	.panel-subscription-item-image .product-image {
		padding: 0 0 0 0;
	}

.panel-subscription-item-text {
	float: left;
	width: 70%;
}

.panel-subscription-item-action {
	clear: both;
	padding-top: 10px;
}
.panel-subscription-item-action .button {
	margin: 0;
}

@media screen and (min-width: 60em) {
	.panel-subscription-item-image {
		float: left;
		width: 20%;
	}

		.panel-subscription-item-image .product-image {
			padding: 0 10px 0 0;
		}

	.panel-subscription-item-text {
		float: left;
		width: 50%;
	}

	.panel-subscription-item select {
		width: 40%;
		margin: 0 0 10px 0;
	}

	.panel-subscription-item-action {
		padding-top: 0;
		float: right;
		width: 25%;
		text-align: right;
		clear: none;
	}
}

.subscription-activity {
	font-size: .875rem;
}

.js-hide {
	display: none;
}

.button.nomarbot {
	margin-bottom: 0;
}
.pnl-ar-buttons {
	padding-top: 10px;
}

.pnl-ar-buttons .button {
	margin-bottom: 0;
}

.btn3dViewer {
	display: inline-block;
	vertical-align: middle;
}

	.btn3dViewer img {
		height: 1rem;
		padding-right: 5px;
		display: inline-block;
		vertical-align: middle;
	}
	.btn3dViewer:hover img {
		opacity: .7;
	}

	.btn3dViewer span {
		display: inline-block;
		vertical-align: middle;
	}

.iframe-3d-viewer {
	border: 0;
	margin: 0;
	padding: 0;
	outline: 0;
	width: 98%;
	height: 98%;
	margin: auto;
	overflow: auto;
}

.product-detail-page .pnl-buttons-booksched {
	margin-bottom: 1rem;
	text-align: center
}

	.product-detail-page .pnl-buttons-booksched a {
		margin: 0;
		/*
		font-size: .75rem;
		padding: 0 5px;
		display: inline-block;
		*/
		width: 49%;
	}
		.product-detail-page .pnl-buttons-booksched a span {
			display:inline-block;
		}
	.product-detail-page .pnl-buttons-booksched a span:first-of-type {
		padding-right: 5px;
	}

.iframe-booking {
	border: 0;
	margin: 0;
	padding: 0;
	outline: 0;
	margin: auto;
	overflow: auto;
	background: white;
	width: 98%;
	height: 582px;
}

/*** CTAs  ***************/

.cta {
	position: relative;
	display: block;
	margin-bottom: 10px;
	box-shadow: 0px 10px 30px rgb(0 0 0 / 10%);
}

.cta-slider {
	box-shadow: 0px 10px 30px rgb(0 0 0 / 10%);
}

	.cta-slider .cta {
		box-shadow: none;
	}

a.cta {
	color: #54585a;
}

	a.cta[href=""] {
		cursor: default;
	}

.cta p:last-of-type {
	margin-bottom: 0;
}

.cta-text {
	position: absolute;
	padding: 10px;
	width: 100%;
	display: block;
}

.cta-slider .cta-text {
	padding: 1rem;
}

.cta-vertical-top {
	top: 0px;
}

.cta-vertical-middle {
	top: 50%;
	/*
	transform: translateY(-50%);
	*/
}

.cta-vertical-bottom {
	bottom: 0px;
}

.cta-horizontal-left {
	left: 0px;
}

.cta-horizontal-center {
	left: 50%;
	/*
	transform: translateX(-50%);
	*/
}

.cta-horizontal-right {
	right: 0px;
}

.cta-slider .cta-vertical-top {
	top: 10px;
}

.cta-slider .cta-vertical-bottom {
	bottom: 10px;
}

.cta-slider .cta-horizontal-left {
	left: 10px;
}

.cta-slider .cta-horizontal-right {
	right: 10px;
}

.cta-image {
	display: block;
}

.cta-wrapper-link {
	cursor: pointer;
}

	.cta-wrapper-link:hover .cta-text {
		opacity: .8;
		transition: all ease-in-out .2s;
	}

.cta-slider {
	position: relative;
}

	.cta-slider .fma-control {
		position: absolute;
		z-index: 100;
		color: #fff;
		opacity: 1.0;
		cursor: pointer;
		background-color: rgba(255,255,255,0.2);
		text-shadow: 0px 1px 2px rgba(0,0,0,0.3);
		line-height: 1;
		top: 50%;
		transform: translateY(-50%);
		padding: 3px;
		font-size: 24px;
		font-weight: 100;
		line-height: 1;
		/*
			margin: 0 0.9375rem;
		*/
	}

		.cta-slider .fma-control:hover {
			background-color: rgba(255,255,255,0.5);
			transition: all ease-in-out .3s;
		}


	.cta-slider #fma-previous {
		left: 0;
	}

	.cta-slider #fma-next {
		right: 0;
	}

	.cta-slider .cta {
		
	}


@media screen and (min-width: 40em) {
	.cta-slider .fma-control {
		top: 50%;
		transform: translateY(-50%);
		padding: 9px 6px;
		font-size: 42px;
		font-weight: 100;
		line-height: 1;

		display: none;
	}

	.cta-slider:hover .fma-control {
		display: block;
	}

}

@media screen and (min-width: 60em) {

}

.cta h1,
.cta h2,
.cta h3,
.cta h4,
.cta h5,
.cta h6 {
	line-height: 1.3;
}

/******************************/
.pad-bottom {
	padding-bottom: 1rem;
}

.product-name .brand {
	float: right;
	text-align: right;
	width: 50px;
	height: auto
	margin: 0px 0px 5px 10px;
}

.product-detail-page h1.product-name .brand {
	margin: 8px 0px 5px 10px;
	width: auto;
	height: 42px;
}

.product-name::after {
	content: '';
	clear: both;
}


/***************************************/
/***************************************/
/***************************************/

.authorization-page .body-content {
	background: #fff;
}

.pad-bottom {
	padding-bottom: 1rem;
}

.pad-top {
	padding-top: 2rem;
}


.header-logo img {
	max-width: 300px;
}

.header-public {
	width: 100%;
}

	.header-public .header-logo {
		display: block;
		text-align: center;
	}

	.header-public .header-actions {
		display: block;
		text-align: center;
		margin: 0 -0.9375rem;
		background: #fafafa;
		background: linear-gradient(to bottom, #000 0%, #111 40%);
		padding: 5px 0 4px 0;
	}

	.header-public .header-selectors {
	}

	.header-public .header-selector {
		padding: 0;
	}

	.header-public .header-selector-language {
		margin: 0; 
	}

@media screen and (min-width: 40em) {
	.header-logo img {
	}

	.header-public {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		gap: 2rem;
	}

		.header-public .header-logo {
			text-align: left;
			margin-right: auto;
		}

		.header-public .header-actions {
			text-align: right;
			background: none;
			margin: 0;
			padding: 0;
		}
}

.cta-fw {
	background-color: #222;
	background-image: linear-gradient(170deg, #22222 0%,#101010 90%,#000 100%);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	justify-content: center;
	display: flex;
	flex-direction: column;
	min-height: 400px;
	padding: 1rem;
	border: none;
	border-radius: 0;
	margin: 0;
}

.cta-fw-text {
	text-align: center;
	color: #fff;
	text-shadow: 0px 2px 3px rgba(0, 0, 0, 0.6);
	max-width: 70rem;
	margin: 0 auto;
}

	.cta-fw-text .button {
		text-shadow: none;
	}


@media screen and (min-width: 60em) {
	.cta-fw {
		background-image: var(--authorize-top-bg);
	}
}

.text-small {
	font-size: .75rem;
}

.panel-shadow {
	position: relative;
	box-shadow: 0px 15px 20px rgb(0 0 0 / 15%);
}

.panel-white {
	background: #fff;
}

.panel-grey {
	background: #f5f5f5;
}

.buttons-fw .button {
	width: 100%;
}

.panel-steps .button {
	margin-top: 1rem;
}

.authorization-page .price-discount {
	font-size: 1.25rem;
}

.public-form-messaging > div {
	margin-bottom: 0;
}

	.public-form-messaging > div:last-of-type {
		margin-bottom: 0;
	}

.product-name .brand {
	float: right;
	text-align: right;
	width: 50px;
	height: auto;
	margin: 0px 0px 5px 10px;
}

.product-detail-page h1.product-name .brand {
	margin: 8px 0px 5px 10px;
	width: auto;
	height: 42px;
}

.product-name::after {
	content: '';
	clear: both;
}

.validation-inline .active {
	outline: 1px solid #f00;
}