html, body {
  height: 100%;
  margin: 0;
}

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.main-content {
  flex: 1 0 auto; 
}

/*
|--------------------------------------------------------------------------
| Store
|--------------------------------------------------------------------------
*/

#sidebar {
	min-width:210px;
}
#sidebar nav.navbar {
	height:auto;
	background-color:transparent;
}
#sidebar .nav-link {
	padding: 0.5em .5em;
}

.store-header h2 {
    float: left;
    margin-top: 0px;
    padding-top: 12px;
}

.store-menu a {
    float: right;
    margin-left: 16px;
    line-height: 56px;
    font-size: 18px;
    text-decoration: none;
}

.store-menu a:hover {
    text-decoration: none;
}

.store-form {
    border: 1px solid #BBB;
    width: 45px;
    height: 28px;
}

.store-input-group {
    width: 90px;
}

.icon-stack {
    position: relative;
    display: inline-block;
    width: 2em;
}
.icon-stack-1x,
.icon-stack-2x,
.icon-stack-3x {
    position: absolute;
    left: 0;
    width: 100%;
    text-align: center;
}
.icon-stack-1x {
    line-height: inherit;
}
.icon-stack-2x {
    font-size: 1.5em;
}
.icon-stack-3x {
    font-size: 2em;
}
.plan-details-wrap.plan-details,
.slider-wrap.plan-details
 {
    height: 200px;
}

.hero-thumbnail {
    width: 100%;
    min-height: 300px;
}
.cart-count {
	position:absolute;
	top:8px;
	margin-left:-5px;
}

#store-nav {        
	background-color: #234d7b;
	margin-bottom:10px;
	border-radius:4px;
}       
#store-nav .nav-link:not(.dropdown a.nav-link),
#store-nav a.btn-link:hover,
button.btn-link,
button.btn-link:hover
{
	color:white;        
}
button.btn-link {        
	font-size:103%;
}
#store-nav a.nav-link {        
	margin-top:0.1rem;
}     
#store-nav a.nav-link:hover,
button.btn-link:hover {   
	background-color: #0277bd;
	text-decoration:none;
}
#store-nav a.nav-link:first-child:hover {
	background-color: #0277bd;
	border-radius:4px 0 0 4px;
}   
#store-nav .dropdown:last-child .dropdown-toggle:hover {        
	border-radius:0 4px 4px 0;        
}      
#store-nav button.btn-link:hover {
	margin-top:0;
}
#store-nav .dropdown-menu a.nav-link:hover {
	background-color: #bbdefb;
} 

/*
.product-image{
    position:relative;
    overflow:hidden;
    padding-bottom:100%;
}
.product-image img{
    position:absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
*/

/* Product Card */
.productImageWrap .plan-details {
	text-align:left;
}
.productTextWrap {
	text-align:center;
}
.card-header,
.card-body {       
	text-align:center;
}
.product-details {
	color:grey;
}
.product-category {
	font-style:italic;  
}
.product-price {        
	font-weight:bold;
	font-size:130%;
	margin:0;
	padding:15px 0 8px;
	color:grey;        
} 
.productTextWrap .product-price {
	padding:5px;
}   
.product-compare_price {
	margin:0 0 2em;
	text-decoration:line-through;
	color:crimson;
}
.product-name {
	letter-spacing: .06em;
}
.product-variants {
	margin-top:20px;
}
.productImageWrap .variant-select {
	margin:20px 0;
	width:200px;
	float:left;
}
.product-hero-image {
   object-fit: cover;
   overflow: hidden;
   min-width: 90px;
   min-height:90px;        
}
.product-purchase {
	margin:10px;
}

/* Subscription Card */
.plan-text-wrap,
.plan-image-wrap {
	background-color:#ffffff;
}
.plan-card {
    margin:20px;
    height:100%;
    text-align: center;
}
.card-body {
    color:black;
}

.plan-title {
    font-weight: bold;
}
.plan-image {

}
.plan-price {
    font-size: 2.2rem;
    color:crimson;
    margin:1rem;
}
.plan-frequency {
    display:block;
    line-height: .7; 
    font-size:50%; 
    color:#999999;
}
.plan-description {
    margin:1rem 0;  
    color:#333333; 
    font-size:1rem;
}
.plan-nickname {
    font-weight: bold;
}
.plan-slogan {
    font-style: italic;
    font-size: 1.2rem;
    color:#666666;
    margin:1rem 0;
}
.subscribe-link {

}
 
/*
 * --------------------------------------------------------------------------
 * Customer
 * --------------------------------------------------------------------------
*/

.customer-tabs {
    margin: 24px 0;
}



/*
 * --------------------------------------------------------------------------
 * Homepage
 * --------------------------------------------------------------------------
*/

.homepage-banner-img {
    width: 100%;
}

/*
 * --------------------------------------------------------------------------
 * Admin
 * --------------------------------------------------------------------------
*/
.search {
	
}
.sidebar-header {

}
.form-check input[type=checkbox] {
	transform:scale(1.4);
	top:-2px;
}
.form-check label {
	margin-left:5px;
}


/* sm=576, md=768, lg=992, xl=1200 */
@media (max-width: 992px) {

	div.theme-showcase {
		padding:5px;
	}

	div.container-fluid {
		margin-left:5px;
		margin-right:10px;
		padding-left:5px;
		padding-right:10px;
	}
	div.container-fluid .container {
		padding-left:0;
		padding-right:0;
		margin-left:0;
		margin-right:0;	
	}
	#sidebar {
		min-width:180px;
	}
	#sidebar nav.navbar {
		height:auto;
	}
	.store-admin-nav-button {
		background-color:white;
	}
	nav#store-nav {
		float:left !important;
	}
	#sidebar .nav-link {
		padding-left: 0.3em;
	}	
    #sidebar .navbar-nav,
    #sidebar .dropdown-menu {        
        background-color:cadetblue;        
    }
    #sidebar .nav-item  { 
        padding:0;
        background-color:cadetblue; 
    }  
    #sidebar .nav-item span {
        display:none;
    }	

}

@media (min-width:993px) {
	#sidebar {
		min-width:210px;
	}
}
