/******************************************************************************/
/*                                                                            */
/* Albright Labs                                                              */
/* A Software Company                                                         */
/* hello@albrightlabs.com                                                     */
/* (610) 756-5060                                                             */
/* PO Box 1537, Albrightsville, PA 18210                                      */
/* 																			                                      */
/* (c) 2020 Albright Labs LLC. All Rights Reserved.                           */
/*                                                                            */
/******************************************************************************/



/**
 * BASE STYLES
 * Things like html, body, headings and basic text
 */
body,
html {
	min-width: 320px;
	font-family: 'Roboto', sans-serif;
	background-color: #eeeeee;
	color: #000000;
}
h1, h2, h3, h4, h5,
.h1, .h2, .h3, .h4, .h5 {
	font-family: 'PT Serif', serif;
	font-weight: 600;
}
@media(max-width:767px){
	.h1, h1 {
		font-size: 2rem;
	}
}
a,
a:visited {
	color: #056839;
}
a:hover,
a:focus,
a:active {
	color: #034324;
}
.display-2 {
	font-size: 5rem;
}
@media(max-width:991px){
	.display-2 {
		font-size: 4rem;
	}
}
@media(max-width:767px){
	.display-2 {
		font-size: 3rem;
	}
	.display-2 + .h2 {
		font-size: 1.4rem;
	}
}




/**
 * HEADINGS
 * All things that go in the site's header
 */
header {
	background-color: #eeeeee;
	padding: 0;
	color: #ffffff;
}
header #top-bar {
	background-color: #056839;
	padding: 8px 0 6px;
	font-weight: 600;
	color: #ffffff;
	margin: 0;
}
@media(max-width:767px){
	header #top-bar {
		font-size: 0.9rem;
	}
}
header .navigation-container {
	display: inline;
}
header .brand {
	margin: 12px 30px 12px 0;
	font-weight: 600;
	width: 120px;
	height: auto;
	display: inline-block;
	margin-bottom: 16px;
	max-width: 100%;
	float: left;
}
@media(max-width:1199px){
	header .brand {
		margin: 12px 24px 12px 0;
		width: 112px;
	}
}
@media(max-width:767px){
	header .brand {
		margin: 16px 0 0;
	}
}
header .navigation-container .navigation {
	margin: 44px 0 10px 0;
}
header .navigation-container .navigation .nav-link {
	margin-right: 21px;
	font-size: 1.1rem;
	padding-left: 0px;
	padding-right: 4px;
	padding-bottom: 0;
	padding-top: 6px;
	line-height: 1;
	display: inline-block;
}
header .navigation-container .navigation .nav-link.active {
	font-weight: 600;
}
@media(max-width:1199px){
	header .navigation-container .navigation {
		margin-top: 40px;
	}
}
@media(max-width:992px){
	header .navigation-container .navigation .nav-link {
		padding-top: 8px;
		padding-bottom: 8px;
		display: block;
		width: 100%;
	}
	header .navigation-container .navigation {
		width: 100%;
		margin-top: 0;
		margin-bottom: 20px;
	}
	.navigation.nav.navbar.navbar-expand-lg.float-left.p-0 {
		padding-top: 0;
		margin-bottom: 0;
	}
	#headerNavigation .navbar-nav {
		margin-top: 20px;
		margin-bottom: 4px;
	}
}
header .btn-container {
	text-align: right;
	margin-top: 44px;
}
header .btn-container a {
	margin: 0 0 0 12px;
}
@media(max-width:1199px){
	header .btn-container {
		margin-top: 40px;
	}
}
@media(max-width:992px){
	header .btn-container {
		margin-top: 16px;
	}
	header .btn-container a {
		margin-left: 0;
	}
}
header .btn-container .btn .fa-phone {
	position: relative;
	top: 1px;
}
header .dropdown-menu {
	border-radius: 0;
}
header .navbar-expand-lg .navbar-nav .dropdown-menu {
	background-color: #eeeeee;
	border: 0;
}
header .dropdown-item {
	padding: 0.35rem 1rem;
}
header .dropdown-item:focus,
header .dropdown-item:hover {
	background-color: rgba(255,255,255,0.4);
}
header .dropdown-item.active,
header .dropdown-item:active {
	background-color: transparent;
	font-weight: 600;
	color: inherit;
}
header .dropdown-item.active:focus, .dropdown-item.active:hover {
	background-color: rgba(255,255,255,0.4) !important;
}
#headerNavigationToggler {
	margin-top: 42px;
	margin-right: -15px;
	color: #056839;
}



/**
 * FOOTER
 * All things that go in the site's footer
 */
footer {
	background-color: #eeeeee;
	padding: 60px 0;
	color: #000000;
}
@media(max-width:767px){
	footer {
		padding: 50px 0;
	}
}
footer .payment-methods img {
	margin: 0 10px 0 0;
	max-width: 50px;
	max-height: 50px;
}
footer .copyright {
	margin: 20px 0 0;
	font-size: 0.85rem;
	opacity: 0.65;
}
footer .contact-info-row {
	font-size: 1.2rem;
}
footer .brand {
	margin-bottom: 32px;
}
@media(max-width:991px){
	footer .btn-container {
		margin-top: 0;
		text-align: center;
	}
	footer .brand-image,
	footer .name-nav-container {
		display: block;
		width: 100%;
	}
}
footer ul {
	list-style-type: none;
	list-style: none;
	padding-left: 0;
	margin: 0;
}
footer ul li {
	padding: 5px 0;
}
footer li a.active {
	font-weight: 600;
}



/**
 * GENERAL CONTENT SECTIONS
 * Content sections for the site's content, usually overwritten on page
 */
#content {
	background-color: #ffffff;
	padding: 60px 0;
	color: #000000;
}
@media(max-width:767px){
	#content {
		padding: 50px 0;
	}
}



/**
 * INDIVIDUAL PAGE HEADER
 * Fancy header for spacial pages, shown below site header, usually overwritten on page
 */
#page-topper .jumbotron {
	border-top: 1px solid #000000;
	background-color: #056839;
	padding: 3rem 2rem;
	position: relative;
	min-height: 500px;
	color: #000000;
	margin: 0;
}
@media(max-width:767px){
	#page-topper .jumbotron {
		min-height: 300px;
	}
}
#page-topper .jumbotron:before {
	position: absolute;
	background-color: #000;
	content: ' ';
	opacity: 0.3;
	z-index: 1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
#page-topper .jumbotron .container {
	transform: translate(-50%,-50%);
	position: absolute;
	text-align: center;
	z-index: 2;
	left: 50%;
	top: 50%;
}
#page-topper .jumbotron h1 {
	text-transform: uppercase;
	font-weight: 800;
}
#page-topper .jumbotron p.lead {
	margin-bottom: 0;
}



/**
 * BREADCRUMBS
 * Top of site breadcrumbs
 */
#breadcrumb {
	background-color: #ffffff;
	padding: 18px 0 0;
}
#breadcrumb .breadcrumb {
	background-color: transparent;
	padding: 0;
	margin: 0;
}
#breadcrumb .breadcrumb .breadcrumb-item {
	text-transform: capitalize;
}
#breadcrumb .breadcrumb .breadcrumb-item + .breadcrumb-item::before {
	color: #c8c8c8;
}
#breadcrumb .breadcrumb .breadcrumb-item.active {
	color: #000000;
}



/**
 * BUTTONS
 * Fancy buttons used across the site
 */
.btn-container {
	position: relative !important;
	height: 45px !important;
	overflow: visible !important;
	border: 1px solid transparent;
}
.btn {
 	color: #ffffff !important;
 	background-color: #056839;
 	border-bottom-width: 3px;
 	border-color: #034324;
 	padding: 10px 15px 9px;
 	position: relative;
	margin-top: 0;
}
.btn-container .btn {
	position: absolute;
	top: 0;
}
header .btn-container .btn,
footer .btn-container .btn {
	position: relative;
}
.btn:hover,
.btn.hover,
.btn:focus,
.btn.focus {
	border-bottom-width: 4px;
	color: #ffffff !important;
	padding: 10px 15px 9px;
	margin-top: -1px;
	box-shadow: none !important;
}
.btn:active {
	color: #ffffff !important;
	/* background-color: #3f6325; */
	border-bottom-width: 1px;
	border-top-width: 1px;
	padding: 10px 15px 9px;
	margin-top: 0;
}
.btn.loading {
	background-image: url('../img/Spinner-1s-200px-5.gif');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 48px 48px;
	color: transparent !important;
}
.add-to-cart .btn {
	font-weight: 700 !important;
}
.list-item .btn {
	font-weight: 600 !important;
}
.btn-yellow {
	font-size: 1.2rem;
	background-color: #fff200;
	border-bottom-width: 3px;
	border-color: #e6da00;
	color: #dc3545 !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	padding: 16px 10px 13px;
	width: 100%;
}
.btn-yellow:hover,
.btn-yellow:focus,
.btn-yellow:active {
	padding: 16px 10px 13px;
	margin-top: -1px;
	color: #dc3545 !important;
}
.btn-yellow:active {
	background-color: #e6da00;
	margin: 0;
}
.btn-yellow.loading {
	background-image: url('../img/Spinner-1s-200px-2.gif');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 90px 90px;
	color: transparent !important;
}
.btn-yellow .fa {
	position: relative;
	top: -1px;
	font-size: 28px;
}
.btn-yellow-small,
.btn-yellow-small:hover,
.btn-yellow-small:focus,
.btn-yellow-small:active {
	margin: 0;
	font-size: 100%;
	background-color: #fff200;
	border-bottom-width: 3px;
	border-color: #e6da00;
	color: #056839 !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	padding: 4px 5px 2px;
	line-height: 210%;
	width: 100%;
}
.btn-yellow-small:hover,
.btn-yellow-small:focus {
	margin-top: -1px;
	border-bottom-width: 4px;
}
.btn-yellow-small:active {
	margin-top: 0;
	border-top-width: 2px;
	border-bottom-width: 2px;
	background-color: #e6da00;
}
.btn-container-large + .disclaimer {
	display: block;
	margin-top: 10px;
}



/**
 * GENERIC FORM
 * Typical form styles, overrides Bootstrap styles
 */
.generic-form {
	display: block;
	width: 100%;
}
.generic-form .title {
	font-weight: 600;
	font-size: 110%;
}
.generic-form .form-group label {
	margin-bottom: 0;
	font-weight: 600;
}
.generic-form .form-group .form-control {
	line-height: 27px;
	border-width: 2px;
	border-color: #eee;
	color: #000000;
}
.generic-form .form-group .form-control:not(textarea) {
	height: 45px !important;
}
.generic-form .form-group .form-control:focus {
	border-color: #66afe9;
	box-shadow: none;
}
.generic-form .form-group select {
	height: 45px !important;
}



/**
 * CART DRAWER
 * Shopping cart preview drawer in site header
 */
#cart-count {
	border: 2px solid #fff;
	background-color: #056839;
	color: #fff;
	display: inline-block;
	border-radius: 100%;
	margin-right: -10px;
	text-align: center;
	font-size: 0.8rem;
	line-height: 1rem;
	font-weight: 600;
	min-width: 15px;
	padding: 0 2px;
	position: relative;
	left: -5px;
	top: -10px;
	height: 20px;
	min-width: 20px;
}
#cart-drawer {
	border-bottom: 1px solid #056839;
	border-top: 1px solid #056839;
	background-color: #ffffff;
	margin-bottom: -1px;
	position: relative;
	padding: 32px 0;
	color: #000000;
	display: none;
	z-index: 98;
}
#cart-drawer .container .row.list-row .col-12.col-lg-2.text-center a {
	background-color: #fff;
	overflow: auto;
	display: block;
}
#cart-drawer #cart .list-row {
	margin-bottom: 10px;
	padding-bottom: 10px;
}
#cart-drawer #cart .list-row:first-of-type {
	margin-top: 18px;
}
#cart-drawer #cart .list-row:last-of-type {
	padding-bottom: 0;
	margin-bottom: 0;
}
#cart-drawer .container .cart-summary {
	background-color: transparent;
}
#cart-drawer .container .cart-summary .btn-yellow {
	padding: 12px 15px 11px;
	font-size: inherit;
}
#cart-drawer .container .cart-summary .btn {
	text-transform: uppercase;
	font-weight: 600;
	width: 100%;
}



/**
 * PRODUCTS SORTER
 * Shopping cart products list sorter
 */
#productSorter {
	height: 24px;
	line-height: 24px;
	text-align: right;
}
#productSorter select {
	width: 150px;
	margin-left: 8px;
}
@media(max-width:768px){
	#productSorter {
		margin-top: 40px;
		text-align: left;
	}
	#products-list .list-column .list-item img {
	    max-height: 200px;
	    max-width: 100%;
	}
}



/**
 * PRODUCTS LIST WITH RELATED
 * Shopping cart products list sorter
 */
#products-list .list-column .list-column-inner,
#products-list-related .list-column .list-column-inner {
	position: relative;
	overflow: hidden;
}
#products-list .list-column .product-link,
#products-list-related .list-column .product-link {
	text-decoration: none;
	color: inherit;
}
#products-list .list-column .list-item,
#products-list-related .list-column .list-item {
	margin-bottom: 30px;
	position: relative;
	text-align: center;
	display: block;
	width: 100%;
	z-index: 1;
}
#products-list .list-column .list-item img,
#products-list-related .list-column .list-item img {
  max-height: 350px;
  max-width: 350px;
	border-radius: 0;
}
@media(max-width:767px){
	#products-list .list-column .list-item img,
	#products-list-related .list-column .list-item img {
		max-height: 200px;
	  max-width: 200px;
	}
}
.card-img-top {
	width: auto;
}
#products-list .list-column .list-item .details,
#products-list-related .list-column .list-item .details {
	padding: 0.8rem 0.5rem 0;
}
#products-list .list-column .list-item .brand,
#products-list-related .list-column .list-item .brand {
	font-family: 'Catamaran', sans-serif;
	font-size: 1rem;
	margin: 0 0 5px;
	color: #056839;
}
#products-list .list-column .list-item .title,
#products-list-related .list-column .list-item .title {
	font-family: 'Catamaran', sans-serif;
	font-size: 1.2rem;
	line-height: 120%;
	margin: 0 0 5px;
	font-weight: 600;
	color: #000000;
}
#products-list .list-column .list-item .price,
#products-list-related .list-column .list-item .price {
	margin: 0;
}
#products-list .list-column .list-item .btn,
#products-list-related .list-column .list-item .btn {
	background-color: #056839;
	border-color: #034324;
	position: absolute;
	top: 40%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#products-list .list-column .list-item .btn,
#products-list-related .list-column .list-item .btn {
   	z-index: 2;
	opacity: 0;
}
#products-list .list-column .list-item:hover .btn,
#products-list .list-column .list-item:focus .btn,
#products-list .list-column .list-item:hover .btn,
#products-list .list-column .list-item:focus .btn,
#products-list-related .list-column .list-item:hover .btn,
#products-list-related .list-column .list-item:focus .btn,
#products-list-related .list-column .list-item:hover .btn,
#products-list-related .list-column .list-item:focus .btn {
	opacity: 0.85;
}
#products-list .list-column .list-item:hover .btn:hover,
#products-list .list-column .list-item:hover .btn:focus,
#products-list .list-column .list-item:focus .btn:hover,
#products-list .list-column .list-item:focus .btn:focus,
#products-list-related .list-column .list-item:hover .btn:hover,
#products-list-related .list-column .list-item:hover .btn:focus,
#products-list-related .list-column .list-item:focus .btn:hover,
#products-list-related .list-column .list-item:focus .btn:focus {
	opacity: 1;
}
#products-list .pagination {
	margin-top: 0;
}
#products-list .pagination li.page-item a.page-link,
#products-list .pagination li.page-item a.page-link:hover,
.page-link {
	font-size: 1.2rem;
	border-radius: 0;
	color: #056839;
	border: 0;
}
.page-link:hover {
	background-color: transparent;
	text-decoration: underline;
}
#products-list-related hr {
	margin: 15px 0 20px;
	border-color: #c8c8c8;
}
#products-list-related .bar h3 {
	margin-bottom: 20px;
}
.sold-out-banner {
	background-color: #056839;
	padding: 4px 8px 2px;
	font-size: 1.2rem;
	font-weight: 600;
	line-height: 1;
	color: white;
}
#quick-shop .sold-out-banner.on-sale-banner {
	transform: rotate(-45deg);
	padding-right: 30px;
	padding-left: 30px;
	position: absolute;
	font-size: 1.2rem;
	border-left: 0;
	left: -34px;
	top: 24px;
	z-index: 1;
}
.list-row .sold-out-banner {
	display: inline-block;
	position: relative;
	padding: 5px 6px 4px;
	overflow: auto;
	top: 4px;
}
@media(max-width:767px){
	.list-row .sold-out-banner {
		font-size: 1rem;
		padding-bottom: 3px;
	}
}
.confirmation-overview .list-row .sold-out-banner {
	padding: 4px 6px 7px;
}
#products-list .sold-out-banner,
#products-list-related .sold-out-banner {
	transform: rotate(45deg);
	padding: 4px 40px;
	position: absolute;
	border-left: 0;
	display: block;
	z-index: 2;
	top: 32px;
	right: -44px;
}
#products-list .sold-out-banner.on-sale-banner,
#products-list-related .sold-out-banner.on-sale-banner {
	top: 28px;
	right: -40px;
}
@media(max-width:1199px){
	#products-list .column .list-item img {
	    max-height: 200px;
	    max-width: 100%;
	}
}
@media(max-width:991px){
	#products-list .column .list-item img {
	    max-height: 300px;
	    max-width: 300px;
	}
}
@media(max-width:768px){
	#products-list .column .list-item img,
	#products-list-related .column .list-item img {
	    max-height: 200px;
	    max-width: 100%;
	}
}



/**
 * QUICK SHOP POPUP
 * Shopping cart product quick shop popup
 */
#quick-shop {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
}
#quick-shop .backdrop {
	background-color: rgba(0,0,0,0.65);
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
}
#quick-shop .content {
	box-shadow: 0 0 25px rgba(0,0,0,0.65);
	transform: translate(-50%,-50%);
	background-color: #ffffff;
	position: absolute;
	top: 50%;
	left: 50%;
	padding: 30px;
	width: 80%;
	height: auto;
	max-height: 80%;
	max-height: 80vh;
	max-width: 1000px;
	overflow-y: scroll;
	z-index: 99999;
}
@media(max-width:767px){
	#quick-shop .content {
		padding: 20px;
		width: 90%;
	}
}
#quick-shop .content .close-icon {
	top: 6px;
	right: 5px;
	width: 32px;
	height: 32px;
	cursor: pointer;
	position: absolute;
	z-index: 999999;
}
#quick-shop .content .close-icon:before,
#quick-shop .content .close-icon:after {
	background-color: #056839;
	position: absolute;
	left: 15px;
	content: ' ';
	height: 33px;
	width: 2px;
}
#quick-shop .content .close-icon:before {
	transform: rotate(45deg);
}
#quick-shop .content .close-icon:after {
	transform: rotate(-45deg);
}
#quick-shop .content .images .primary img {
	max-width: 430px;
	max-height: 430px;
}
#quick-shop .content .form-inline {
	position: relative;
	display: block;
	height: 68px;
}
#quick-shop .content .all-details-link {
	margin-top: 20px;
	margin-bottom: 30px;
	font-size: 1.1rem;
}
.quick-shop-button {
	font-weight: 900 !important;
}



/**
 * PRODUCT CONTENT
 * Shopping cart product quick shop popup
 */
#product-content .images {
	overflow-x: hidden;
	display: block;
	width: 100%;
}
#product-content .images .primary img {
	max-width: 600px;
	max-height: 600px;
}
#product-content .images .others {
	margin: 20px 0 0;
	display: block;
	width: 100%;
}
#product-content .images .others .image {
	margin: 0 10px 10px 0;
	display: inline-block;
	cursor: pointer;
}
#product-content .title {
	text-transform: uppercase;
	font-size: 2rem;
	font-weight: 700;
	color: #000000;
	margin: 0 0 8px;
	display: block;
	width: 100%;
}
#product-content .brand {
	font-size: 1.4rem;
	color: #056839;
	margin: 0 0 20px;
	display: block;
	width: 100%;
}
#product-content .price {
	font-size: 1.6rem;
	margin: 0 0 20px;
	display: block;
	width: 100%;
}
#product-content .description {
	display: block;
	width: 100%;
}
#product-content .details,
#quick-shop #product-content .images {
	margin: 30px 0 0;
	display: block;
	width: 100%;
}
#product-content .details .detail .title {
	font-size: inherit;
	font-weight: 600;
	display: block;
	width: 100%;
}
#product-content .details .detail .content {
	margin: 0 0 15px;
	display: block;
	width: 100%;
}
#product-content .details .detail:last-of-type .content {
	margin: 0;
}
#product-content .add-to-cart {
	margin: 0 0 30px;
	display: block;
	width: 100%;
}
#product-content .add-to-cart .form-inline {
	position: relative;
	margin-top: 24px;
	display: block;
	height: 68px;
	width: 100%;
}
@media(max-width: 767px){
	.quick-shop-button {
		min-width: 140px !important;
	}
}
#product-content .add-to-cart .form-inline label[for="quantity"] {
	line-height: 1;
	font-size: 80%;
	margin: 0 0 0 6px;
}
#product-content .add-to-cart .form-inline input[name="quantity"] {
	border: 2px solid #eee;
	padding: 0 0.25rem;
	text-align: center;
	line-height: 47px;
	height: 47px;
	margin: 0 5px 0 0;
	width: 60px;
	float: left;
}
#product-content .add-to-cart .form-inline #add-to-cart-normal-status,
#product-content .add-to-cart .form-inline #add-to-cart-quick-status {
	line-height: 39px;
	margin-left: 15px;
	font-weight: 600;
	color: #056839;
}
#product-content hr {
	border-color: #c8c8c8;
	margin: 30px 0 20px;
}
#product-content .share {
	display: block;
	width: 100%;
}
#product-content .share a {
	color: inherit;
}
@media(max-width:991px){
	#product-content .images .primary img {
		max-width: 100%;
		max-height: 600px;
	}
}
@media(max-width:768px){
	#product-content .images {
		margin-bottom: 20px;
	}
	#product-content .images .primary img {
		max-width: 100%;
		max-height: 400px;
	}
}



/**
 * SIDEBAR
 * Shopping cart product list sidebar
 */
@media(min-width:992px){
	#sidebar {
		position: -webkit-sticky;
		position: sticky;
		top: 0;
	}
}
#sidebar h4 {
	margin-bottom: 12px;
}
#sidebar .nav-link {
	padding: 0;
	margin-bottom: 8px;
}
@media(max-width:991px){
	#sidebar {
		margin-top: 35px;
	}
}



/**
 * BRANDS LIST
 * List of brands and overview shown on brands page
 */
#brands-list p.lead {
	font-size: 2.4rem;
}
#brands-list .list-column .brand-link {
	text-decoration: none;
	color: inherit;
}
#brands-list .list-column .list-item {
	position: relative;
	display: block;
	width: 100%;
	margin-bottom: 15px;
}
#brands-list .list-column .list-item .details {
	padding: 0.25rem 0.5rem 0.75rem;
}
#brands-list .list-column .list-item .title {
	font-family: 'Catamaran', sans-serif;
	font-size: 1.2rem;
	line-height: 120%;
	margin: 0 0 5px;
	font-weight: 600;
	color: #000000;
}
#brands-list .list-column .list-item .description {
	margin: 0;
}



/**
 * USER ACCOUNT
 * Everything that has to do with the user being signed in
 */
#user-account .list-group {
	border-radius: 0;
}
#user-account .nav {
	width: 100%;
	display: table;
}
#user-account .nav .logout {
	padding: 15px 10px 15px 13px;
	text-align: center;
	cursor: pointer;
	display: inline-block;
	width: 100%;
}
#user-account .nav .logout .fa {
	text-align: center;
	width: 32px;
}
#user-account .nav li {
	padding: 0;
	border-radius: 0;
	border-width: 0;
	border-top: 3px solid transparent;
	display: table-cell;
	width: 16.5%;
}
#user-account .nav li a {
	padding: 15px 10px;
	text-align: center;
	color: #000000;
	display: block;
	width: 100%;
}
#user-account .nav li.active {
	background-color: #eeeeee;
	border-top: 3px solid #000000;
}
#user-account .nav li.active a {
	color: #000000;
	font-weight: 600;
}
#user-account .nav li a .fa {
	text-align: center;
	width: 32px;
}
#user-account .account-tab h3 {
	border: 2px solid #eee;
	border-bottom: 0;
	font-family: inherit;
	padding-top: 12px;
	padding-left: 12px;
	padding-bottom: 10px;
	margin-bottom: 0;
}
#user-account .account-tab .table-bordered {
	border: 2px solid #eee;
}
#user-account .account-tab .table-bordered * {
	border-color: #eee;
}
#user-account .account-tab .table-bordered thead th:last-of-type {
	width: 100px;
}
#user-account .account-tab hr {
	border-color: #d5d5d5;
	margin: 10px 0 25px;
}
#user-account .account-tab label {
	font-weight: 600;
}
#user-account .popup-toggle {
  cursor: pointer;
}
#user-account .table-responsive {
	white-space: nowrap;
}
#user-account #account-section-orders .table-bordered,
#user-account #account-section-billing .table-bordered,
#user-account #account-section-locations .table-bordered {
	border: 0;
}
#user-account #account-section-orders .table-bordered td,
#user-account #account-section-billing .table-bordered td,
#user-account #account-section-locations .table-bordered td,
#user-account #account-section-orders .table-bordered th,
#user-account #account-section-billing .table-bordered th,
#user-account #account-section-locations .table-bordered th {
	border-left: 0;
	border-right: 0;
}
#account-section-orders #locations-list,
#account-section-billing #locations-list,
#account-section-locations #locations-list {
	border: 2px solid #eee;
	padding-bottom: 15px;
}


/**
 * SHOPPING CART
 * Everything that has to do with the cart and checkout
 */
#cart .empty {
	padding: 60px 0;
}
#cart h3 {
	font-family: inherit;
}
#cart hr {
	margin: 0 0 15px;
	border-top-width: 2px;
	border-color: #eee;
}
#cart .header,
#cart .footer {
  border-top: 1px solid #000000;
  background-color: #eeeeee;
  font-family: inherit;
  font-size: 1.4rem;
  font-weight: 600;
  padding: 8px 15px 0;
  color: #000000;
}
#cart .header {
	margin-bottom: 15px;
}
#cart h2 {
	font-family: inherit;
	font-weight: 600;
	margin: 20px 0 40px;
}
#cart .list-row {
	overflow: auto;
	margin-bottom: 24px;
	padding-bottom: 20px;
	border-bottom: 0;
}
#cart .list-row:first-of-type {
	margin-top: 40px;
}
#cart .list-row:last-of-type {
	border-bottom: 0;
	margin-bottom: 40px;
	padding-bottom: 0;
}
#cart .list-row h5 {
	font-family: inherit;
	margin: 1px 0 0;
}
@media(max-width:767px){
	#cart .list-row h5 {
		font-size: 1rem;
		margin-bottom: 4px;
	}
}
#cart .list-row img {
	max-height: 140px;
}
#cart .place-order {
	border: 2px solid #eee;
	padding: 25px;
}
#cart .cart-summary {
	background-color: #eeeeee;
	padding: 0 15px;
	height: 100%;
	display: flex;
  justify-content: space-around;
  align-items: flex-start;
}
@media(max-width:767px){
	#cart .cart-summary {
		padding: 0;
	}
}
#cart .cart-summary .list-item {
	padding: 2px 0;
	overflow: auto;
}
#cart .cart-summary .list-item .label {
	float: left;
	font-weight: 600;
}
#cart .cart-summary .list-item .label span {
	font-weight: normal;
}
#cart .cart-summary .list-item .label-large {
	line-height: 34px;
}
#cart .cart-summary .list-item .value {
	float: right;
	font-weight: 600;
}
#cart .cart-summary .list-item .value-large {
	line-height: 31px;
}
#cart .cart-summary .list-item .value-large {
	font-size: 140%;
	font-weight: 700;
}
#cart .cart-summary p.disclaimer {
	margin-top: 12px;
	margin-bottom: 12px;
	line-height: 140%;
	font-size: 80%;
}
#cart .cart-summary .checkout-container {
	background-color: #fff200;
	margin-left: -15px;
	margin-right: -15px;
	padding: 22px 15px 19px;
	text-align: center;
	line-height: 140%;
	font-weight: 800;
	font-size: 120%;
	color: #056839;
	cursor: pointer;
	height: 66px;
}
#cart .cart-summary .checkout-container .fa {
	position: relative;
	top: -1px;
	font-size: 29px;
}



/**
 * CHECKOUT
 * Everything that has to do with the checkout process
 */
.checkout-step {
	border-bottom: 2px solid #eee;
	margin: 45px 0 0 0;
	padding: 0 0 45px;
	display: block;
	width: 100%;
}
.checkout-step .step-header {
	margin: 0 0 10px;
	display: block;
	width: 100%;
}
.checkout-step .step-header div {
	display: inline-block;
	font-weight: 600;
	font-size: 110%;
}
.checkout-step.active .step-header {
	color: #dc3545;
}
.checkout-step .step-header div:first-of-type {
	margin: 0 8px 10px 0;
	width: 12px;
}
.checkout-step .step-content {
	padding: 0 22px;
}
@media(max-width:767px){
	.checkout-step .step-content {
		padding: 0;
	}
}
.checkout-step .step-content .list {
	margin-bottom: -20px;
}
.checkout-step .step-content .list .list-item {
	border: 1px solid #eeeeee;
	border-radius: 0.25rem;
	margin-bottom: 20px;
	line-height: 120%;
	cursor: pointer;
	position: relative;
	overflow: hidden;
	padding: 15px;
	min-height: 94px;
	-webkit-transition: all 0.1s ease-in-out;
  -moz-transition: all 0.1s ease-in-out;
  -o-transition: all 0.1s ease-in-out;
  transition: all 0.1s ease-in-out;
}
.checkout-step .step-content .list .list-item:hover {
	box-shadow: 0 0 4px rgba(0,0,0,0.15);
}
.checkout-step .step-content .list .list-item.active {
	border-color: #0fbcf9;
	border-width: 2px;
}
.checkout-step .step-content .list .list-item .checkmark {
	display: none;
}
.checkout-step .step-content .list .list-item.active .checkmark {
	display: block;
	position: absolute;
	text-align: right;
	color: #0fbcf9;
	top: 5px;
	right: 5px;
	width: 30px;
	height: 30px;
}
.checkout-step .step-content .list .list-item .line-one {
	font-weight: 600;
	margin: 2px 0;
}
.checkout-step .step-content .list .list-item .line-two {
	font-size: 90%;
	opacity: 0.6;
}
.checkout-step .step-content .list .list-item .line-three {
	font-size: 90%;
	opacity: 0.6;
}
.checkout-step .step-content .list .list-item.add-new {
	padding: 0;
}
.checkout-step .step-content .list .list-item.add-new .location-add-new-toggle,
.checkout-step .step-content .list .list-item.add-new .payment-method-add-new-toggle {
	text-align: center;
	position: absolute;
	transform: translateY(-50%);
	width: 100%;
	top: 50%;
	font-weight: 600;
	color: #dc3545;
}
.checkout-step .step-content .review-products {
	border: 1px solid #eee;
	border-radius: 0.25rem;
	padding: 0 25px;
	position: relative;
}
.checkout-step .step-content .review-products .list-row {
	border: 1px solid #eee;
	border-top-style: dashed !important;
	border-bottom-width: 0 !important;
	margin-bottom: 0 !important;
	padding-top: 15px !important;
	padding-bottom: 15px !important;
}
.checkout-step .step-content .review-products .list-row:first-of-type {
	border-top: 1px solid #eaeaea !important;
	margin-top: 25px !important;
}
.checkout-step .step-content .review-products .list-row:last-of-type {
	border-bottom: 1px solid #eaeaea !important;
	margin-bottom: 25px !important;
}
.checkout-step .step-content .shipping-options {
	margin: 25px 0;
}
@media(max-width:767px){
	.checkout-step .step-content .shipping-options {
		margin: 0 0 25px 0;
	}
}
.checkout-step .step-content .shipping-options .form-check {
	margin: 10px 0;
}
.checkout-step .step-content .shipping-options .form-check label {
	line-height: 120%;
	padding-left: 1.5rem;
}
.checkout-step .step-content .shipping-options .form-check label input {
	margin-left: -1.5rem;
}
.checkout-step .step-content .place-order {
	border: 1px solid #eee;
	border-radius: 0.25rem;
	padding: 25px;
}
.checkout-step .step-content .review-products.active {
	border-color: #0fbcf9;
	border-width: 2px;
}
.checkout-step .step-content .review-products .checkmark {
	display: none;
}
.checkout-step .step-content .review-products.active .checkmark {
	display: block;
	position: absolute;
	text-align: right;
	color: #0fbcf9;
	top: 5px;
	right: 5px;
	width: 30px;
	height: 30px;
}
/* .checkout-step form { */
	/* padding: 25px 20px; */
	/* border: 1px solid #eeeeee; */
	/* border-radius: 0.25rem; */
/* } */
.checkout-step .generic-form .title {
	margin: 0 0 10px;
}
.checkout-step .generic-form .btn-container {
	margin-top: 10px;
}
#checkout-footer {
	padding: 40px 20px;
}
@media(max-width:767px){
	#checkout-footer {
		padding: 40px 0;
	}
}
#checkout-footer p {
	font-size: 80%;
}
#checkout-footer p:last-of-type {
	margin: 0;
}



/**
 * GENERIC POPUP
 * Used for the site's more complex content popups
 */
.generic-popup {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
}
.generic-popup .backdrop {
	background-color: rgba(0,0,0,0.65);
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	left: 0;
}
.generic-popup .content {
	-webkit-transform: scale3d(0.5,0.5,1);
	box-shadow: 0 0 25px rgba(0,0,0,0.65);
	transform: translate(-50%,-50%);
	background-color: #ffffff;
	position: absolute;
	top: 50%;
	left: 50%;
	padding: 25px 30px 30px 30px;
	width: 80%;
	height: auto;
	max-height: 80%;
	max-height: 80vh;
	max-width: 550px;
	overflow-y: scroll;
	z-index: 99999;
}
@media(max-width:767px){
	.generic-popup .content {
		max-height: 90vh;
		width: 90%;
	}
}
.generic-popup .content .close-icon {
	top: 6px;
	right: 5px;
	width: 32px;
	height: 32px;
	cursor: pointer;
	position: absolute;
	z-index: 999999;
}
.generic-popup .content .close-icon:before,
.generic-popup .content .close-icon:after {
	background-color: #dc3545;
	position: absolute;
	left: 15px;
	content: ' ';
	height: 33px;
	width: 2px;
}
.generic-popup .content .close-icon:before {
	transform: rotate(45deg);
}
.generic-popup .content .close-icon:after {
	transform: rotate(-45deg);
}
.generic-popup .content .btn-container {
	margin-top: 15px;
}
.generic-popup .title {
	margin: 0 0 15px 0;
	font-size: 130%;
}



/**
 * STRIPE LOADER
 * Shown across the top of site during ajax function
 */
.stripe-loading-indicator,
.stripe-loading-indicator .stripe,
.stripe-loading-indicator .stripe-loaded {
	height: 3px !important;
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
}
.stripe-loading-indicator .stripe {
	background: #fff200 !important;
}
.stripe-loading-indicator .stripe-loaded {
	background: #2ecc71 !important;
}



/**
 * UTILITIES
 * Some site element helpers not provided by BootStrap
 */
.text-decoration-none {
	text-decoration: none !important;
}
.display-inline-block {
	display: inline-block;
}
.display-inline {
	display: inline;
}
.color-inherit {
	color: inherit;
}
.text-danger {
	color: #056839 !important;
}
.hidden {
	display: none !important
}
.fw-600 {
	font-weight: 600 !important;
}
.fw-700 {
	font-weight: 700 !important;
}
.margin-auto {
	margin: 0 auto;
}
.width-auto {
	width: auto;
}
.text-orange {
	color: #dc3545;
}
.price-large {
	font-size: 1.6rem;
}
.overflow-hidden {
	overflow: hidden !important;
}
.pt0 {
	padding-top: 0px !important;
}
.pt10 {
	padding-top: 10px !important;
}
.pt20 {
	padding-top: 20px !important;
}
.pt30 {
	padding-top: 30px !important;
}
.pt40 {
	padding-top: 40px !important;
}
.pt50 {
	padding-top: 50px !important;
}
.pb0 {
	padding-bottom: 0px !important;
}
.pb10 {
	padding-bottom: 10px !important;
}
.pb20 {
	padding-bottom: 20px !important;
}
.pb30 {
	padding-bottom: 30px !important;
}
.pb40 {
	padding-bottom: 40px !important;
}
.pb50 {
	padding-bottom: 50px !important;
}
.mt0 {
	margin-top: 0px !important;
}
.mt5 {
    margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.mb0 {
	margin-bottom: 0px !important;
}
.mb5 {
    margin-bottom: 5px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.bg-light-green {
	background-color: #eeeeee !important;
}
.font-weight-normal {
	font-weight: normal !important;
}
.font-weight-semibold {
	font-weight: 600 !important;
}
.text-danger {
	color: #dc3545 !important;
}



/**
 * LIGHTBOX
 * Just a little lightbox fix
 */
.lightbox .lb-image {
	border-radius: 0 !important;
	border: 0 !important;
}



/**
 * Checkout Alert
 */
.alert {
	border-radius: 0;
}
.alert-info {
	border-color: #004085;
}
.alert-primary {
	border-color: #004085;
}
.alert-danger {
	background-color: #fceceb;
	border-color: #dc3545;
	color: #dc3545;
}



/**
 * Layout Specifics
 */
#layout-checkout header .brand {
	width: auto;
}
#layout-checkout header .btn-container {
	margin-top: 31px;
}



/**
 * Homepage Slider
 */
section#slider {
	width: 100%;
}
