/**
 * WooCommerce Styles
 * Coach Dave Academy Theme
 *
 * Styles for WooCommerce shop pages, products, cart, and checkout.
 * Requires variables.css to be loaded first.
 * Only loaded on WooCommerce pages for performance.
 *
 * @package CoachDaveAcademy
 * @version 1.1.0
 */

/* ==========================================================================
   Header Cart
   ========================================================================== */

.header-cart {
	display: inline-block;
	padding: 0 var(--space-1);
	background: var(--overlay-medium);
	position: relative;
	font-size: var(--text-sm);
	border-radius: var(--radius-sm);
	line-height: 40px;
}

.header-cart span {
	padding: 0 var(--space-1);
}

.header-cart > .cart {
	margin: 0;
	color: var(--color-white);
}

.header-cart > .amount {
	transition: var(--transition-colors);
	color: var(--color-white);
}

.header-fixed .header-cart {
	background: var(--overlay-medium);
}

.header-cart > .cart:hover,
.header-fixed > .header-cart:hover .amount {
	color: var(--color-white);
}

.header-inline .inline-right-nav .header-cart {
	float: none;
}

/* ==========================================================================
   Price & Amount
   ========================================================================== */

.price {
	display: inline-block;
	color: var(--color-success-dark);
}

.amount {
	font-weight: var(--font-semibold);
}

.price del {
	color: var(--color-text-muted);
	margin-right: var(--space-1);
}

del .amount {
	color: var(--color-text-muted);
	font-weight: var(--font-normal);
}

.section-title .price {
	margin-top: var(--space-2-5);
	display: block;
}

/* ==========================================================================
   On Sale Badge
   ========================================================================== */

.onsale {
	padding: var(--space-0-5) var(--space-2);
	background: var(--overlay-light);
	color: var(--color-white);
	font-size: var(--text-xs);
	font-weight: var(--font-semibold);
	border-radius: var(--radius-full);
}

.product-images .onsale,
.img-wrap .onsale,
.image-container .onsale,
.thumbnail-media .onsale {
	position: absolute;
	top: var(--space-2-5);
	left: var(--space-2-5);
}

/* ==========================================================================
   Remove Button
   ========================================================================== */

.remove {
	display: block;
	width: 16px;
	height: 16px;
	background: var(--color-error) url(../images/woocommerce/remove.png) center no-repeat;
	background-size: 8px;
	border-radius: var(--radius-full);
	text-indent: -999px;
	overflow: hidden;
}

.remove:hover {
	background-color: var(--color-error-dark);
}

/* ==========================================================================
   Star Ratings
   ========================================================================== */

.star-rating {
	width: 90px;
	height: 16px;
	background: url(../images/woocommerce/star.png) repeat-x left 0;
	background-size: 18px 48px;
	overflow: hidden;
}

.product-images .star-rating,
.img-wrap .star-rating,
.image-container .star-rating,
.thumbnail-media .star-rating {
	position: absolute;
	top: var(--space-2-5);
	right: var(--space-2-5);
}

.star-rating span {
	background: url(../images/woocommerce/star.png) repeat-x left -32px;
	height: 0;
	padding-top: 16px;
	overflow: hidden;
	float: left;
	background-size: 18px 48px;
}

.stars {
	overflow: hidden;
	margin-bottom: 0;
}

.stars span {
	width: 90px;
	height: 16px;
	position: relative;
	float: left;
	background: url(../images/woocommerce/star.png) repeat-x left 0;
	background-size: 18px 48px;
}

.stars span a {
	float: left;
	position: absolute;
	left: 0;
	top: 0;
	width: 16px;
	height: 0;
	padding-top: 16px;
	overflow: hidden;
}

.stars span a:hover,
p.stars span a:focus {
	background: url(../images/woocommerce/star.png) repeat-x left -16px;
	background-size: 18px 48px;
}

.stars a.active {
	background: url(../images/woocommerce/star.png) repeat-x left -32px;
	background-size: 18px 48px;
}

.stars span a.star-1 { width: 18px; z-index: 10; }
.stars span a.star-2 { width: 36px; z-index: 9; }
.stars span a.star-3 { width: 54px; z-index: 8; }
.stars span a.star-4 { width: 72px; z-index: 7; }
.stars span a.star-5 { width: 90px; z-index: 6; }

/* ==========================================================================
   Shop Page
   ========================================================================== */

.woocommerce-result-count-container {
	padding: var(--space-2-5);
	background: var(--color-bg-light);
}

.woocommerce-result-count {
	float: left;
	color: var(--color-text);
	font-size: var(--text-md);
	line-height: 30px;
}

.woocommerce-ordering {
	float: right;
	margin-left: var(--space-2-5);
	font-size: var(--text-xs);
}

.woocommerce-ordering select {
	height: 30px;
	font-size: var(--text-xs);
}

/* ==========================================================================
   Products Grid
   ========================================================================== */

.products {
	margin-left: calc(var(--space-2-5) * -1);
	margin-right: calc(var(--space-2-5) * -1);
	overflow: hidden;
	width: 100%;
}

.products.columns-1,
.products.columns-2,
.products.columns-3,
.products.columns-4,
.products.columns-5,
.products.columns-6,
.products.columns-7,
.products.columns-8,
.products.columns-9,
.products.columns-10,
.products.columns-11,
.products.columns-12 {
	max-width: 100%;
}

.products .product {
	float: left;
	position: relative;
	padding: var(--space-5);
	margin-bottom: var(--space-5);
	background: var(--color-bg-light);
	overflow: hidden;
}

.products .product-category {
	margin-left: var(--space-2-5);
	max-width: 100%;
}

.products .stock {
	margin: var(--space-2-5) 0 0;
}

.products .meta-info {
	margin: var(--space-2-5) 0 0;
}

.products .product a:first-child {
	display: block;
}

.products .img-wrap {
	margin: calc(var(--space-5) * -1) calc(var(--space-5) * -1) 0;
}

.products .img-wrap img {
	display: block;
}

.products h3,
.woocommerce-loop-product__title {
	margin: var(--space-5) 0 0;
	font-size: var(--text-lg);
	font-weight: var(--font-normal);
}

.products .product .star-rating {
	position: absolute;
	top: var(--space-2);
	right: var(--space-2-5);
}

.products .price {
	display: inline-block;
	margin: 0 var(--space-1) 0 0;
}

.products .button {
	margin-top: var(--space-2-5);
}

.products .added_to_cart {
	padding: var(--space-1) var(--space-2-5);
	text-transform: uppercase;
	font-size: var(--text-2xs);
	font-weight: var(--font-semibold);
}

/* Accurate Spacing */
.products h3 + .price,
.products h2 + .price,
.products .star-rating + .price {
	margin-top: var(--space-2-5);
}

/* ==========================================================================
   Product Gallery
   ========================================================================== */

.woocommerce-product-gallery {
	margin-bottom: var(--space-8);
	position: relative;
}

.woocommerce-product-gallery img {
	display: block;
	width: 100%;
	height: auto;
	box-shadow: none;
}

.woocommerce-product-gallery .thumbnails {
	padding-top: var(--space-4);
}

.woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
	transition: all cubic-bezier(.795, -.035, 0, 1) .5s;
}

.woocommerce-product-gallery .woocommerce-product-gallery__image:nth-child(n+2) {
	width: 25%;
	display: inline-block;
}

.woocommerce-product-gallery .woocommerce-product-gallery__trigger {
	position: absolute;
	top: var(--space-2);
	right: var(--space-2);
	font-size: var(--text-xl);
	z-index: var(--z-dropdown);
	width: 36px;
	height: 36px;
	background: var(--color-white);
	text-indent: -9999px;
	border-radius: var(--radius-full);
	box-sizing: content-box;
}

.woocommerce-product-gallery .woocommerce-product-gallery__trigger::before {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	border: 2px solid var(--color-black);
	border-radius: var(--radius-full);
	position: absolute;
	top: 9px;
	left: 9px;
	box-sizing: content-box;
}

.woocommerce-product-gallery .woocommerce-product-gallery__trigger::after {
	content: "";
	display: block;
	width: 2px;
	height: 8px;
	background: var(--color-black);
	border-radius: var(--radius-lg);
	position: absolute;
	top: 19px;
	left: 22px;
	transform: rotate(-45deg);
	box-sizing: content-box;
}

.woocommerce-product-gallery .flex-control-thumbs {
	display: flex;
	flex-wrap: wrap;
	overflow: hidden;
	zoom: 1;
	margin: 0;
	padding: var(--space-1);
}

.woocommerce-product-gallery .flex-control-thumbs li {
	width: calc((100% / 5) - var(--space-2-5));
	margin: var(--space-1);
	list-style: none;
}

.woocommerce-product-gallery .flex-control-thumbs li img {
	cursor: pointer;
	opacity: 0.75;
	margin: 0;
}

.woocommerce-product-gallery .flex-control-thumbs li img:hover {
	opacity: 1;
}

/* ==========================================================================
   Related & Upsell Products
   ========================================================================== */

.related h2,
.upsells h2 {
	margin-bottom: var(--space-4);
	font-size: var(--text-xl);
}

.related.products .product,
.upsells.products .product {
	float: left;
	width: 32%;
	margin-right: 2%;
	position: relative;
}

.related.products .product:nth-child(3n+3),
.upsells.products .product:nth-child(3n+3) {
	margin-right: 0;
}

/* ==========================================================================
   Product Single Page
   ========================================================================== */

/* Product Images */
.product-images {
	position: relative;
}

.product-images img {
	display: block;
}

/* Product Thumbnails */
.thumbnails.columns-3 {
	margin-left: 0;
	margin-right: 0;
	max-width: 100%;
}

.thumbnails a {
	display: inline-block;
	width: calc(((100% / 12) * 3) - var(--space-2-5));
	margin: var(--space-2-5) var(--space-2-5) 0 0;
}

.thumbnails a img {
	display: block;
}

/* Product Description */
.entry-title {
	font-size: var(--text-3xl);
}

.woocommerce-product-rating {
	margin-bottom: var(--space-2-5);
}

.woocommerce-product-rating .star-rating {
	display: inline-block;
	vertical-align: middle;
}

.woocommerce-review-link {
	display: inline-block;
	vertical-align: bottom;
	text-transform: uppercase;
	font-size: var(--text-2xs);
	font-weight: var(--font-bold);
}

.purchase-options-container [itemprop="offers"] .price,
.purchase-options-container .price {
	margin: 0 0 var(--space-2-5);
	font-size: var(--text-xl);
}

div[itemprop="description"],
.woocommerce-product-details__short-description {
	margin-bottom: var(--space-5);
	font-size: 1.8rem;
	color: var(--color-text-light);
}

div[itemprop="description"] p,
.woocommerce-product-details__short-description p {
	margin-bottom: 1.8rem;
}

/* Variable Product Sale Price */
.product-type-variable .purchase-options-container [itemprop="offers"] .price del {
	display: block;
	font-size: var(--text-sm);
}

/* Stock Status */
.stock {
	font-size: var(--text-sm);
	text-transform: uppercase;
	margin-bottom: var(--space-5);
	font-weight: var(--font-bold);
}

.stock.in-stock {
	color: var(--color-success-dark);
}

/* Product Cart */
.cart {
	margin-bottom: var(--space-5);
	float: none;
	clear: both;
}

.cart::after {
	content: '';
	clear: both;
	display: block;
}

.cart .label {
	color: inherit;
}

.quantity .qty {
	text-align: center;
}

/* Elementor Specific Styling */
div:not(.elementor) .single_variation .price {
	margin: 0 0 var(--space-4);
}

div:not(.elementor-add-to-cart) > .quantity {
	float: left;
	margin-right: var(--space-2-5);
}

div:not(.elementor-add-to-cart) > .quantity input {
	float: left;
}

div:not(.elementor-add-to-cart) > .single_add_to_cart_button {
	float: left;
	height: 32px;
}

.elementor-add-to-cart .quantity input.qty {
	height: auto;
}

/* Product Meta */
.product_meta {
	padding: var(--space-2-5);
	margin-bottom: var(--space-5);
	background: var(--color-bg-lighter);
	clear: both;
}

.product_meta span {
	display: block;
	font-size: var(--text-xs);
	font-weight: var(--font-semibold);
}

.product_meta span span {
	display: inline;
	font-weight: var(--font-normal);
	text-transform: none;
}

.product_meta span a {
	font-weight: var(--font-normal);
	text-transform: none;
}

/* Variations */
.variations_form table {
	border: 0;
	overflow: visible;
	position: relative;
}

.variations_form table td {
	border: none;
	padding: var(--space-2-5) 0;
}

.variations_form .reset_variations {
	position: absolute;
	bottom: calc(var(--space-2-5) * -1);
	right: 0;
	background: var(--color-gray-200);
	border-radius: 0 0 var(--radius-default) var(--radius-default);
	padding: var(--space-1) var(--space-2);
	font-size: var(--text-xs);
	line-height: 1em;
}

.variations_button::after {
	content: "";
	display: block;
	clear: both;
	float: none;
}

.variation dt,
.variation dd {
	float: left;
	margin-right: var(--space-1);
	font-size: var(--text-xs);
}

.variation dd + dt {
	clear: left;
}

/* ==========================================================================
   WooCommerce Tabs
   ========================================================================== */

.woocommerce-tabs {
	margin-bottom: var(--space-5);
	overflow: hidden;
}

.woocommerce-tabs .panel {
	padding: var(--space-5);
	background: var(--color-gray-100);
}

.woocommerce-tabs .tabs {
	padding: var(--space-5) 0 0;
	text-align: center;
	overflow: hidden;
}

.woocommerce-tabs .tabs li {
	float: left;
	margin-right: var(--space-2-5);
}

.woocommerce-tabs .tabs a {
	display: block;
	padding: var(--space-1-5) var(--space-4);
	background: var(--color-border-light);
	font-weight: var(--font-semibold);
	color: var(--color-text-light);
}

.woocommerce-tabs .tabs a:hover {
	color: var(--color-bg-dark);
	background: var(--color-gray-100);
}

.woocommerce-tabs .tabs .active a {
	background: var(--color-gray-100);
	color: var(--color-bg-dark);
}

/* ==========================================================================
   Entry Content
   ========================================================================== */

.entry-content {
	font-size: var(--text-md);
}

.entry-content p {
	margin-bottom: var(--space-4);
}

.entry-content ul {
	list-style: disc;
	margin: 0 0 var(--space-4);
	border: none !important;
}

.entry-content ul li {
	list-style: disc;
	padding: 0;
	margin: 0 0 var(--space-1-5) var(--space-6);
	background: none;
	border: none !important;
}

.entry-content ol {
	list-style: decimal;
	margin: 0 0 var(--space-4);
}

.entry-content ol li {
	list-style: decimal;
	padding: 0;
	margin: 0 0 var(--space-1-5) var(--space-6);
	background: none;
	border: none;
}

.entry-content ul ul,
.entry-content ul ol,
.entry-content ol ol,
.entry-content ol ul {
	margin-bottom: 0;
}

.entry-content a {
	border-bottom: 1px solid var(--color-border);
}

.entry-content a:hover {
	border-color: var(--color-text-muted);
}

.entry-content dl {
	margin: 0 0 var(--space-6);
}

.entry-content dd {
	margin-left: var(--space-9);
}

.entry-content img {
	display: block;
	height: auto;
}

.entry-content h1 {
	font-size: var(--text-2xl);
	margin-bottom: var(--space-4);
	color: var(--color-text);
}

.entry-content h2 {
	font-size: var(--text-xl);
	margin-bottom: var(--space-4);
	color: var(--color-text);
}

.entry-content h3 {
	font-size: 1.8rem;
	margin-bottom: var(--space-4);
	color: var(--color-text);
}

.entry-content h4 {
	font-size: var(--text-md);
	margin-bottom: var(--space-4);
	color: var(--color-text);
}

.entry-content h5 {
	font-size: var(--text-sm);
	margin-bottom: var(--space-4);
	color: var(--color-text);
}

.entry-content blockquote {
	padding-left: var(--space-6);
	margin-bottom: var(--space-5);
	font-weight: var(--font-semibold);
	font-size: var(--text-lg);
}

/* ==========================================================================
   Shop Attributes
   ========================================================================== */

.shop_attributes th {
	vertical-align: top;
}

/* ==========================================================================
   Reviews & Comments
   ========================================================================== */

#reviews .commentlist {
	list-style: none;
}

#reviews .comment {
	margin: 0;
	padding: var(--space-5);
	list-style: none;
	background: var(--color-white);
	border-bottom: 1px solid var(--color-border-light);
}

#reviews .comment:last-child {
	border-bottom: none;
}

#reviews .avatar {
	display: none;
}

#reviews .comment-text {
	overflow: hidden;
}

#reviews .star-rating {
	margin-bottom: var(--space-2-5);
}

#reviews .meta {
	margin-bottom: var(--space-2-5);
	font-size: var(--text-base);
	text-transform: none;
}

#reviews strong[itemprop="author"] {
	color: var(--color-gray-800);
}

#reviews time[itemprop="datePublished"] {
	color: var(--color-gray-600);
	text-transform: uppercase;
	font-size: var(--text-2xs);
	font-weight: var(--font-bold);
}

#reviews div[itemprop="description"] {
	max-width: 660px;
	margin-bottom: 0;
	font-size: var(--text-base);
}

#reviews div[itemprop="description"] p:last-child {
	margin-bottom: 0;
}

#reviews .form-submit {
	margin-bottom: 0;
}

/* ==========================================================================
   Sidebar & Widgets
   ========================================================================== */

.sidebar .amount {
	font-size: var(--text-xs);
}

/* Product Search Widget */
.widget_product_search {
	overflow: hidden;
}

.widget_product_search input[type="search"] {
	border: none;
	width: 65%;
	float: left;
}

.widget_product_search input[type="submit"] {
	height: 36px;
	width: 35%;
	float: left;
	background: var(--overlay-medium);
}

/* Ratings */
.widget .star-rating {
	margin-top: var(--space-1-5);
}

.widget .reviewer {
	font-size: var(--text-xs);
	margin-top: var(--space-1-5);
}

/* ==========================================================================
   Shopping Cart
   ========================================================================== */

table.shop_table {
	margin-bottom: var(--space-5);
}

table .product-remove {
	width: 16px;
}

table .product-thumbnail {
	width: 65px;
}

table .product-thumbnail img {
	max-width: 65px;
}

table .product-price {
	text-align: right;
}

table .product-quantity {
	text-align: center;
}

table .product-subtotal {
	text-align: right;
}

table .actions {
	text-align: right;
}

table .product-quantity .quantity {
	display: inline-block;
	float: none;
	margin: 0;
}

table td.label {
	background: none;
	vertical-align: middle;
}

table td.label label {
	margin: 0;
}

table td.price {
	display: table-cell;
	vertical-align: middle;
}

/* Coupon */
.coupon {
	float: left;
	width: 50%;
	font-size: 0;
	text-align: left;
}

.coupon label {
	display: none;
}

.coupon input[type=text] {
	max-width: 150px;
	border-right-width: 0;
}

/* Cart Collaterals */
.cart-collaterals {
	float: none;
	width: auto;
}

.cart_totals th,
.cart_totals td {
	display: block;
	width: 100%;
}

.cart_totals h2 {
	margin-bottom: var(--space-4);
	font-size: var(--text-xl);
}

.shipping_calculator {
	float: left;
	width: 49%;
	padding: var(--space-2-5);
	background: var(--color-gray-100);
}

.shipping_calculator h2 {
	font-size: var(--text-md);
	font-weight: var(--font-semibold);
}

.shipping-calculator-form {
	margin-top: var(--space-2-5);
}

.shipping-calculator-button {
	display: block;
}

.woocommerce-shipping-calculator p {
	margin-bottom: 0;
}

.shipping-calculator-form .form-row {
	margin-top: var(--space-1);
}

.shipping-calculator-form button[name="calc_shipping"] {
	margin-top: var(--space-1);
}

/* ==========================================================================
   Checkout Page
   ========================================================================== */

/* Login Form */
.woocommerce .login {
	max-width: 490px;
	padding: var(--space-5);
	margin-bottom: var(--space-5);
	background: var(--color-bg-light);
}

.woocommerce .login p:first-child {
	margin-bottom: var(--space-6);
	max-width: 740px;
	font-size: var(--text-md);
}

.woocommerce .login .inline {
	display: inline;
	font-weight: var(--font-normal);
}

.woocommerce .login .lost_password a {
	font-size: var(--text-xs);
	border-bottom: 1px solid var(--color-border);
}

/* Coupon Form */
.checkout_coupon {
	padding: var(--space-2-5);
	margin-bottom: var(--space-5);
	background: var(--color-bg-light);
	margin-top: -1px;
}

.checkout_coupon p {
	display: inline-block;
	margin: 0 var(--space-2-5) 0 0;
}

/* Select2 Dropdown */
.select2-container {
	max-width: 500px;
}

.select2-container .select2-choice {
	border-radius: 0;
	height: 36px;
	border: 2px solid var(--color-border-light);
	background: none;
}

.select2-dropdown-open.select2-drop-above .select2-choice,
.select2-dropdown-open.select2-drop-above .select2-choices,
.select2-drop.select2-drop-active,
.select2-drop.select2-drop-above.select2-drop-active {
	background: var(--color-white);
	border-radius: 0;
	border-width: 2px;
	border-color: var(--color-border-light);
	box-shadow: none;
	color: var(--color-gray-600);
}

.select2-drop {
	margin-top: -2px;
	box-shadow: none;
}

.select2-drop.select2-drop-above {
	border-radius: 0;
}

.select2-search {
	padding: var(--space-1);
}

.select2-search input {
	background: none;
	border-radius: 0;
	border-width: 2px;
	border-color: var(--color-border-light);
}

.select2-container .select2-choice .select2-arrow {
	border-left: none;
	background: none;
}

.select2-container .select2-choice .select2-arrow b {
	background: none;
}

.select2-container .select2-choice > .select2-chosen {
	line-height: 34px;
	color: var(--color-gray-600);
}

/* Create Account */
.create-account {
	max-width: 490px;
	padding: var(--space-2-5);
	margin-bottom: var(--space-5);
	background: var(--color-bg-light);
}

div.create-account {
	padding: var(--space-5);
}

.create-account input[type="checkbox"] {
	display: inline;
	margin: 0 var(--space-1) 0 0;
	vertical-align: middle;
}

.create-account label {
	display: inline;
}

.create-account p:first-child {
	margin-bottom: var(--space-6);
	max-width: 740px;
	font-size: var(--text-md);
}

.create-account .form-row {
	margin-bottom: 0;
}

/* Billing & Shipping Fields */
.woocommerce-billing-fields h3 {
	margin-bottom: var(--space-4);
	font-size: var(--text-xl);
}

.woocommerce-shipping-fields h3 {
	margin-bottom: var(--space-4);
}

.woocommerce-shipping-fields h3 label {
	display: inline-block;
	vertical-align: middle;
	font-size: var(--text-xl);
	font-weight: var(--font-normal);
}

.woocommerce-shipping-fields h3 input {
	display: inline;
}

.woocommerce .required {
	color: var(--color-error);
	border: none;
}

/* ==========================================================================
   WooCommerce Columns
   ========================================================================== */

.col2-set {
	overflow: hidden;
	margin-bottom: var(--space-10);
}

.woocommerce[class*=' columns-'] .product {
	float: left;
	margin-right: 2%;
	padding: var(--space-5);
	max-width: 100%;
}

@media only screen and (min-width: 481px) and (max-width: 768px) {
	.woocommerce.columns-2 .product,
	.woocommerce.columns-3 .product,
	.woocommerce.columns-4 .product { width: 49%; }

	.woocommerce.columns-5 .product,
	.woocommerce.columns-6 .product { width: 32%; }

	.woocommerce.columns-2 .product:nth-child(2n+2),
	.woocommerce.columns-3 .product:nth-child(2n+2),
	.woocommerce.columns-4 .product:nth-child(2n+2),
	.woocommerce.columns-5 .product:nth-child(3n+3),
	.woocommerce.columns-6 .product:nth-child(3n+3) {
		margin-right: 0;
	}
}

@media only screen and (min-width: 769px) {
	.woocommerce.columns-2 .product { width: 49%; }
	.woocommerce.columns-3 .product { width: 32%; }
	.woocommerce.columns-4 .product { width: 23.5%; }
	.woocommerce.columns-5 .product { width: 18.4%; }
	.woocommerce.columns-6 .product { width: 15%; }

	.woocommerce.columns-2 .product:nth-child(2n+2),
	.woocommerce.columns-3 .product:nth-child(3n+3),
	.woocommerce.columns-4 .product:nth-child(4n+4),
	.woocommerce.columns-5 .product:nth-child(5n+5),
	.woocommerce.columns-6 .product:nth-child(6n+6) {
		margin-right: 0;
	}
}

/* ==========================================================================
   Order Review
   ========================================================================== */

#order_review_heading {
	display: none;
}

#order_review {
	overflow: hidden;
}

#order_review_heading {
	margin-bottom: var(--space-4);
	font-size: var(--text-xl);
}

#order_review .shop_table {
	margin-bottom: var(--space-5);
}

#order_review #payment {
	background: var(--color-bg-light);
}

#order_review .payment_methods {
	list-style: none;
	margin: 0;
}

#order_review .payment_methods li {
	list-style: none;
	padding: var(--space-2-5);
	border-bottom: 1px solid var(--color-border-light);
}

#order_review .payment_methods input[type="radio"] {
	display: inline;
	margin: 0 var(--space-1) 0 0;
	vertical-align: middle;
}

#order_review .payment_methods label {
	display: inline;
}

#order_review .payment_methods label img {
	display: none;
}

#order_review .payment_box {
	display: block;
	clear: both;
	margin: var(--space-2-5) 0 0;
	padding: var(--space-2-5);
	background: var(--color-white);
}

#order_review .form-row {
	margin: 0;
	padding: var(--space-2-5);
}

#order_review .button {
	width: 100%;
}

/* Order Terms Form */
#order_review .form-row.terms {
	margin: var(--space-1) 0 0;
	padding: 0;
	text-align: center;
}

#order_review .form-row.terms input[type="checkbox"] {
	display: inline;
	margin: 0 var(--space-1) 0 0;
	vertical-align: middle;
}

#order_review .form-row.terms label {
	display: inline;
	vertical-align: middle;
	font-size: var(--text-xs);
	font-weight: var(--font-normal);
}

/* ==========================================================================
   My Account
   ========================================================================== */

.woocommerce-MyAccount-navigation {
	margin-bottom: var(--space-5);
}

.story .woocommerce-MyAccount-navigation ul,
.story .woocommerce-MyAccount-navigation li {
	list-style: none !important;
	padding: 0;
	margin: 0;
}

.woocommerce-MyAccount-navigation ul {
	border: 2px solid var(--color-border-light);
}

.woocommerce-MyAccount-navigation li:not(:last-child) {
	border-bottom: 1px solid var(--color-border-light);
}

.woocommerce-MyAccount-navigation a {
	display: block;
	padding: var(--space-2);
}

.woocommerce-MyAccount-content {
	overflow: hidden;
}

.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
	margin-bottom: var(--space-4);
}

.woocommerce-MyAccount-content p {
	margin-bottom: var(--space-4);
}

.woocommerce-account .button {
	padding: var(--space-2) var(--space-4);
}

/* ==========================================================================
   Information Pages
   ========================================================================== */

.col2-set .title {
	padding: 0;
	margin-bottom: var(--space-6);
}

.col2-set .title h3 {
	display: inline;
	margin-bottom: var(--space-2-5);
}

.col2-set .title .edit {
	display: inline;
	margin-left: var(--space-4);
	font-size: var(--text-xs);
}

.woocommerce .order_details {
	border: 2px solid var(--color-border-light);
	margin: 0 0 var(--space-6) 0;
	padding: 0;
	list-style: none;
}

.woocommerce .order_details li {
	padding: var(--space-2-5);
	border-bottom: 1px solid var(--color-border-light);
	list-style: none;
}

.woocommerce .order_details li:last-child {
	border-bottom: none;
}

.woocommerce .order_details:empty {
	display: none;
}

/* ==========================================================================
   WooCommerce Messages
   ========================================================================== */

.woocommerce-message {
	padding: var(--space-2-5);
	background: var(--color-bg-light);
	overflow: hidden;
	margin-bottom: var(--space-5);
}

.woocommerce-message a {
	margin-right: var(--space-2-5);
	vertical-align: baseline;
}

.woocommerce-info {
	padding: var(--space-2-5);
	background: var(--color-bg-light);
	overflow: hidden;
	margin-bottom: var(--space-5);
}

/* ==========================================================================
   Product List Widget
   ========================================================================== */

.product_list_widget li {
	overflow: hidden;
	position: relative;
}

.product_list_widget img {
	float: right;
	max-width: 40px;
}

.product_list_widget a {
	display: block;
	font-weight: var(--font-bold);
}

/* ==========================================================================
   Cart Widget
   ========================================================================== */

.widget .cart_list li,
.cart_list li {
	border-bottom: 1px solid var(--color-border-light);
	padding-bottom: var(--space-2-5);
	margin-bottom: var(--space-2-5);
}

.cart_list .remove {
	float: right;
	margin: 0 0 0 var(--space-2-5);
}

.cart_list .remove + a {
	margin-bottom: var(--space-1);
}

.cart_list .quantity {
	color: var(--color-text-muted);
	font-size: var(--text-xs);
}

.invert .cart_list .quantity {
	color: rgba(255, 255, 255, 0.65);
}

.widget_shopping_cart .total {
	margin: var(--space-2-5) 0;
}

.widget_shopping_cart .total .amount {
	float: right;
}

.widget_shopping_cart .buttons {
	font-size: 0;
}

.widget_shopping_cart .button {
	font-size: var(--text-xs);
	width: 49%;
}

.widget_shopping_cart .button:first-child {
	margin-right: 2%;
}

/* Off-Canvas Cart */
div[class*=' off-canvas-'] .widget_shopping_cart {
	padding: 0;
	margin-left: var(--space-5);
	margin-right: var(--space-5);
	background: var(--overlay-medium);
}

div[class*=' off-canvas-'] .widget_shopping_cart .section-nav-title {
	padding: var(--space-2-5);
	margin-bottom: 0;
}

div[class*=' off-canvas-'] .cart_list li {
	padding: var(--space-2-5);
	border-bottom-color: rgba(255, 255, 255, 0.1);
}

div[class*=' off-canvas-'] .widget_shopping_cart .total {
	margin: var(--space-2-5);
}

div[class*=' off-canvas-'] .widget_shopping_cart .buttons {
	padding: var(--space-2-5) var(--space-2-5) var(--space-1);
}

div[class*=' off-canvas-'] .widget_shopping_cart .button {
	display: block;
	width: 100%;
	margin-right: 0;
	margin-bottom: var(--space-1);
	background: rgba(0, 0, 0, 0.65);
}

div[class*=' off-canvas-'] .widget_shopping_cart .button:hover {
	background: var(--overlay-dark);
}

/* ==========================================================================
   Price Filter Widget
   ========================================================================== */

.widget_price_filter {
	overflow: hidden;
}

.widget_price_filter .widgettitle {
	display: none;
}

.price_slider_wrapper .price_slider {
	margin-bottom: var(--space-2-5);
}

.price_slider_wrapper .ui-widget-content {
	border-radius: 1em;
	background: var(--color-border-dark);
}

.ui-slider-horizontal {
	height: 8px;
}

.ui-slider {
	position: relative;
	text-align: left;
}

.ui-slider .ui-slider-range {
	position: absolute;
	z-index: 1;
	font-size: 0.7em;
	display: block;
	border: 0;
	background: var(--color-bg-lighter);
	border-radius: 1em;
}

.ui-slider-horizontal .ui-slider-range {
	top: 0;
	height: 100%;
}

.ui-slider .ui-slider-handle {
	position: absolute;
	z-index: 2;
	width: 12px;
	height: 12px;
	margin-top: -2px;
	border-radius: 1em;
	cursor: pointer;
	background: var(--color-gray-800);
}

.ui-slider .ui-slider-handle:last-child {
	margin-left: -12px;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
	background: var(--color-gray-800);
}

.price_slider_amount .button {
	float: left;
	height: 24px;
	padding: 0 var(--space-2);
	font-size: var(--text-xs);
	letter-spacing: 0;
}

.price_slider_amount .price_label {
	float: right;
	font-size: var(--text-xs);
	line-height: 24px;
	font-weight: var(--font-bold);
}

.woocommerce-checkout .form-row .chosen-container {
	max-width: 500px;
}

/* ==========================================================================
   Widgets in Footer
   ========================================================================== */

.footer-site .widget_product_search {
	margin-bottom: var(--space-5);
}

.footer-site .product_list_widget {
	font-size: var(--text-xs);
}

.footer-site .product_list_widget li {
	padding-bottom: var(--space-2);
	margin-bottom: var(--space-2);
	overflow: hidden;
	border-bottom: 1px solid var(--color-border-light);
}

.footer-site .product_list_widget img {
	float: right;
	margin-left: var(--space-2-5);
}

.footer-site .reviewer {
	display: inline-block;
	margin-top: var(--space-1-5);
}

.footer-site del,
.footer-site ins,
.footer-site .amount {
	font-size: var(--text-xs);
}

.widget_shopping_cart {
	font-size: var(--text-xs);
}

.footer-site .empty {
	background: var(--overlay-medium);
	padding: var(--space-2);
	margin: 0;
}

.footer-site .widget_shopping_cart .total {
	padding-top: var(--space-2);
	border-top: 1px solid var(--color-border-light);
}

.footer-site .widget_shopping_cart .button {
	background: var(--overlay-medium);
}

/* ==========================================================================
   Responsive Styles
   ========================================================================== */

@media only screen and (max-width: 480px) {
	/* Header Cart */
	.header-cart {
		display: none;
	}

	/* Product Lists */
	.related.products li.product,
	.upsells.products li.product {
		clear: both;
		width: auto;
		max-width: 100%;
		margin: 0 0 var(--space-5);
	}

	/* Shopping Cart */
	table .product-remove {
		width: 16px;
	}

	table .product-price,
	table .product-subtotal {
		text-align: center;
	}

	table .product-thumbnail {
		display: none;
	}

	table .actions {
		text-align: left;
	}

	table .actions .button {
		width: 100%;
		height: 30px;
		padding: 0 var(--space-2);
		margin-top: var(--space-1);
	}

	/* Coupon */
	.coupon {
		float: none;
		width: auto;
		margin-bottom: var(--space-4);
	}

	.actions .coupon input[type="text"] {
		width: 100%;
		max-width: none;
		border-bottom-width: 0;
		border-right-width: 2px;
	}

	.actions .coupon .button {
		margin-top: 0;
	}

	/* WooCommerce Columns */
	.col2-set {
		margin-bottom: var(--space-5);
	}

	/* WooCommerce Messages */
	.woocommerce-message a {
		display: block;
		margin: 0 0 var(--space-2-5);
	}

	/* WooCommerce Tabs */
	.woocommerce-tabs .tabs li {
		float: none;
		margin-bottom: var(--space-1);
		margin-right: 0;
	}

	.thumbnail-body .button {
		margin-top: var(--space-2-5);
	}
}

@media only screen and (min-width: 481px) {
	/* WooCommerce Columns */
	.col2-set {
		overflow: hidden;
		float: left;
		width: calc(((100% / 12) * 7) - var(--space-5));
		margin-right: var(--space-5);
		margin-bottom: var(--space-10);
	}

	/* Order Review */
	#order_review {
		float: left;
		width: calc(((100% / 12) * 5) - var(--space-5));
	}

	/* My Account Navigation */
	.woocommerce-MyAccount-navigation {
		float: left;
		width: calc(((100% / 12) * 2) - var(--space-5));
	}

	/* My Account Content */
	.woocommerce-MyAccount-content {
		float: right;
		width: calc(((100% / 12) * 10) - var(--space-5));
		overflow: hidden;
	}
}

@media only screen and (min-width: 769px) {
	#reviews .avatar {
		display: block;
		float: left;
		margin-right: var(--space-4);
	}

	#reviews .star-rating {
		float: right;
		margin: 0;
	}

	.cart_totals {
		float: right;
		width: 49%;
	}

	/* Demo Store Notice */
	.demo_store {
		display: block;
		width: 100%;
		max-width: 1000px;
		margin-left: -500px;
		padding: var(--space-1);
		background: var(--overlay-medium);
		border-radius: var(--radius-sm);
		position: fixed;
		left: 50%;
		bottom: var(--space-2-5);
		z-index: var(--z-tooltip);
		color: var(--color-white);
		text-align: center;
		font-weight: var(--font-bold);
	}

	.woocommerce-demo-store .footer-site {
		padding-bottom: var(--space-16);
	}

	/* Layers Widgets */
	.with-overlay .price {
		opacity: 0;
		transform: translate3d(0, 25px, 0);
		transition: 0.2s all ease-in-out 0.1s;
	}

	.with-overlay:hover .price {
		transform: translate3d(0, 0, 0);
		opacity: 1;
	}
}

/* ==========================================================================
   Invert Components
   ========================================================================== */

.invert .amount {
	color: rgba(255, 255, 255, 0.95);
}

.invert .price del {
	color: rgba(255, 255, 255, 0.80);
}

.invert del .amount {
	color: rgba(255, 255, 255, 0.80);
}
