/* -----------------------------------------------------------------------------------
	WOOCOMMERCE SPECIFIC STYLES
-------------------------------------------------------------------------------------- */


/* -------------------------------------------------------------------------------- */
/*	X. Fonts
/* -------------------------------------------------------------------------------- */


@font-face {
	font-family: 'WooCommerce';
	src: url('../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot');
	src: url('../../../../plugins/woocommerce/assets/fonts/WooCommerce.eot?#iefix') format('embedded-opentype'),
		url('../../../../plugins/woocommerce/assets/fonts/WooCommerce.woff') format('woff'),
		url('../../../../plugins/woocommerce/assets/fonts/WooCommerce.ttf') format('truetype'),
		url('../../../../plugins/woocommerce/assets/fonts/WooCommerce.svg#WooCommerce') format('svg');
	font-weight: normal;
	font-style: normal;
}


/* -------------------------------------------------------------------------------- */
/*	X. Helper Classes
/* -------------------------------------------------------------------------------- */


/* Fancy Quantity Inputs ----------------------------- */

.quantity {
    position: relative;
}

.quantity input[type=number]::-webkit-inner-spin-button,
.quantity input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.quantity input[type=number] {
	background: #fff;
    -moz-appearance: textfield;
    padding-right: 5rem;
    text-align: center;
}

.quantity input:focus {
    outline: 0;
}

.quantity-nav {
    border-left: .1rem solid #ddd;
    position: absolute;
        bottom: 0;
        right: 0;
        top: 0;
    width: 3.5rem;
}

.quantity-button {
    background: no-repeat center;
    background-size: auto .8rem;
    cursor: pointer;
    height: 50%;
    position: absolute;
        left: 0;
        right: .1rem;
    transition: background-color .1s linear, opacity .1s linear;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        -o-user-select: none;
    user-select: none;
}

.quantity-button:active {
    background-color: #F5F5F7;
}

.quantity-button.disabled {
    cursor: default;
    opacity: .25;
}

.quantity-button.quantity-up {
    background-image: url( ../images/icons/arrows/chevron-up-black.svg );
    background-position: center 45%;
    top: .1rem;
}

.quantity-button.quantity-down {
    background-image: url( ../images/icons/arrows/chevron-down-black.svg );
    background-position: center 55%;
    bottom: .1rem;
}


/* Shop Table ---------------------------------- */

.shop_table {
	font-size: 1.4rem;
    margin-bottom: 1.5rem;
	table-layout: auto;
}

.shop_table tr + tr {
	border-top: .1rem solid #ddd;
}

.shop_table th,
.shop_table td {
    padding: 2rem 0;
    vertical-align: top;
}


/* WooCommerce Validated Password -------------- */

.woocommerce-password-strength {
    font-size: 1.6rem;
    font-weight: 500;
    margin-top: 1.2rem;
    padding-left: 1.8rem;
    position: relative;
}

.woocommerce-password-strength:before {
    border-radius: 50%;
    content: "";
    display: block;
    height: 1.2rem;
    position: absolute;
        left: 0;
        top: calc( 50% - .6rem );
    width: 1.2rem;
}

.woocommerce-password-strength.short,
.woocommerce-password-strength.bad { color: #E84747; }
.woocommerce-password-strength.short:before,
.woocommerce-password-strength.bad:before { background: #E84747; }

.woocommerce-password-strength.good { color: #7C4CFF; }
.woocommerce-password-strength.good:before { background: #7C4CFF; }

.woocommerce-password-strength.strong { color: #21B755; }
.woocommerce-password-strength.strong:before { background: #21B755; }

.woocommerce-password-hint {
    display: block;
    font-size: 1.4rem;
    line-height: 1.4;
    margin-top: .8rem;
}


/* Forms Helper Classes ----------------------------- */

.form-row,
fieldset {
    margin: 0 0 1.6rem 0;
}

.form-row-wide {
	width: 100%;
}

.form-row textarea, 
.form-row input[type="email"], 
.form-row input[type="password"], 
.form-row input[type="search"], 
.form-row input[type="tel"], 
.form-row input[type="number"], 
.form-row input[type="text"], 
.form-row input[type="url"],
.form-row .select2-container,
.form-row:last-child {
    margin-bottom: 0;
}

.form-row label { display: block; }
.form-row label.inline { display: inline; }

.form-row em {
	font-size: 0.8em;
}


/* Select2 ------------------------------- */

.select2-container {
	font-family: 'benton-modern', -apple-system, Helvetica, sans-serif;
	font-size: 1.6rem;
}

.select2-container * {
	border-color: #ddd;
}

.select2-container .select2-selection--single {
	border-color: #ddd;
	border-radius: 0;
	height: 5.1rem;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 5.1rem;
	padding: 0 1.8rem;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 4.9rem;
	right: 1.2rem;
}


/* Taxonomy Filter ------------------------------- */

#taxonomy-product_cat .filter-toggle {
	border-bottom: none;
}


/* -------------------------------------------------------------------------------- */
/*	X. Cart Bar
/* -------------------------------------------------------------------------------- */


.cart-bar-inner {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.cart-bar a {
	align-items: center;
	display: inline-flex;
	padding: 1.1rem 0 1rem;
}

.cart-count {
	font-size: 1.5rem;
	font-weight: 400;
	margin: 0 1rem 0 0;
	padding-bottom: .1rem;
	position: relative;
	text-align: center;
	width: 2.8rem;
}

.cart-count .number {
	position: relative;
}

.cart-count-circle {
	background: rgba( 0, 0, 0, 0.25 );
	border-radius: 50%;
	content: "";
	display: block;
	height: 2.8rem;
	position: absolute;
		left: 50%;
		top: calc( 50% - .1rem );
	transform: translate( -50%, -50% );
	width: 2.8rem;
}


/* -------------------------------------------------------------------------------- */
/*	X. Notifications
/* -------------------------------------------------------------------------------- */


.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
    background: rgba( 0, 0, 0, 0.05 );
	font-family: 'benton-modern', Georgia, serif;
    font-size: 1.6rem;
	list-style: none;
	margin: 0;
    padding: 2rem;
    position: relative;
}

body .woocommerce-message,
body .woocommerce-error,
body .woocommerce-info {
	margin: 2rem 0;
}

.woocommerce-message li,
.woocommerce-error li,
.woocommerce-info li {
	margin: 0;
}

.woocommerce-message li + li,
.woocommerce-error li + li,
.woocommerce-info li + li {
    margin-top: 1rem;
}

.woocommerce-message a:hover,
.woocommerce-error a:hover, 
.woocommerce-info a:hover {
    color: #858789;
}

.woocommerce-message .button,
.woocommerce-error .button, 
.woocommerce-info .button {
    background: none;
	color: #000;
	float: right;
	font-family: 'benton-sans-compressed', Impact, -apple-system, Helvetica, sans-serif; 
	font-size: 1.8rem;
	line-height: 1;
	margin: 0 0 0 1rem;
	padding: 0;
	text-transform: uppercase;
	transition: color .15s linear;
}

.woocommerce-message .button:hover,
.woocommerce-error .button:hover, 
.woocommerce-info .button:hover,
.woocommerce-message .button:focus,
.woocommerce-error .button:focus, 
.woocommerce-info .button:focus {
	background: none;
    color: #858789;
}

.woocommerce-message:after,
.woocommerce-error:after, 
.woocommerce-info:after {
	clear: both;
	content: "";
	display: block;
}

/* ERROR SPECIFIC */

.entry-content .woocommerce-error {
    list-style: none;
    margin-left: 0;
}

.entry-content .woocommerce-error li {
    margin: 0;
}

.entry-content .woocommerce-error li + li {
    margin-top: 1rem;
}


/* -------------------------------------------------------------------------------- */
/*	X. Product: Archive
/* -------------------------------------------------------------------------------- */


.product-grid {
	border-left: .1rem solid #ddd;
}

.product-grid .grid-item {
	display: flex;
}

.store-flexible-section-puff_section .puff_text {
    max-width: 43.7rem;
}

@media ( max-width: 1000px ) {
    
    .store-flexible-section-puff_section .faux-image-grid-item{
        order: 0 !important; 
    }

}


/* Product archive header ----------------------------- */

.cart-bar ~ #site-content .product-archive-header {
    margin-top: 2rem;
}

.store-intro p {
    margin-bottom: 1em;
}


/* Product Preview ----------------------------- */


.product-preview {
	border-bottom: .1rem solid #ddd;
	border-right: .1rem solid #ddd;
	display: block;
	width: 100%;
}

.product-grid .grid-item:nth-child(1) .product-preview,
.product-grid .grid-item:nth-child(2) .product-preview {
	border-top: .1rem solid #ddd;
}

.onsale {
    align-items: center;
    background: #000;
    border-radius: 50%;
    color: #fff;
    display: flex;
    font-size: 1.8rem;
    height: 6rem;
    justify-content: center;
    position: absolute;
		left: 1rem;
        top: 1rem;
	text-transform: uppercase;
    width: 6rem;
}

.product-preview del {
	display: none;
}

.product-preview ins {
    text-decoration: none;
}

.product-preview .preview-price img {
	margin: 0 .5rem;
}

del + ins {
    margin-left: .4rem;
}

.preview-image-border .woocommerce-product-gallery__wrapper {
    padding: 0 2rem;
}

img.preview-image-border,
.preview-image-border img {
    background: #000;
    padding: 1.6%;
}

.preview-img-container {
    position: relative;
    width: 100%;
}

.preview-img-container:after {
    content: '';
    display: block;
    padding-bottom: 100%;
}
  
.preview-img-container img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    object-fit: cover; 
    object-position: center;
    margin: 0 auto;
}


/* Store Promo ----------------------------- */

.woocommerce-pagination-wrapper + .store-promo {
	padding-top: 0;
}

.store-promo-image,
.product-archive-image {
	max-height: 60rem;
}


/* -------------------------------------------------------------------------------- */
/*	X. Product: Single
/* -------------------------------------------------------------------------------- */


/* Product Gallery ----------------------------- */

.product-single-gallery img {
	width: 100%;
}

.product-single-gallery .onsale {
	font-size: 2.1rem;
    height: 8rem;
	left: 2rem;
	top: 2rem;
	width: 8rem;
}

.woocommerce-product-gallery {
	overflow: hidden;
}

.woocommerce-product-gallery img {
    width: 100%;
}

.woocommerce-product-gallery .flex-control-nav {
	background: #fff;
	display: flex;
	list-style: none;
    margin: 0 -.5rem;
	padding-bottom: .5rem;
    position: static;
}

.woocommerce-product-gallery .flex-control-nav li {
	margin: 0;
    padding: 1rem .5rem 0;
    width: 10rem;
}

.woocommerce-product-gallery .flex-control-nav li:hover img {
    cursor: pointer;
}


/* Product Overlay ----------------------------- */

.pswp__caption__center {
	font-family: 'benton-modern', Georgia, serif;
	text-align: center;
}


/* Product Header ------------------------------ */

.product-mobile-header { display: block; }
.product-desktop-header { display: none; }

.single-product .product_title {
    font-size: 4rem;
}


/* Product Content ----------------------------- */

.woocommerce-product-details__short-description {
	font-family: 'benton-modern', Georgia, serif;
	font-size: 2.1rem;
	margin: 0 0 3rem;
	max-width: 64.5rem;
}

.product-entry-content-wrapper .toggle.active {
	display: none;
}

.product-entry-content-wrapper .entry-content-container.active {
	display: block;
}


/* Product Meta -------------------------------- */

.product-meta .stock {
	margin: .5rem 0 0;
}

.product-meta .out-of-stock {
    background: #000;
    color: #fff;
    display: inline-block;
    font-size: 1.4rem;
    padding: .8rem 1rem .9rem;
}


/* Product Price ------------------------------- */

.single-product .product-price .stock {
	display: none;
}

.single-product .product-price .price {
	font-size: 4rem;
	text-align: center;
	text-transform: uppercase;
}

.single-product .product-price .price ins {
	text-decoration: none;
}

.single-product .product-price .price ~ .cart {
	margin-top: 3rem;
}

.single-product .product-price .price .membership-price {
	text-transform: none;
}

.single-product .cart:not(.variations_form),
.woocommerce-variation-add-to-cart {
    align-items: flex-start;
    display: flex;
}

.single-product .cart .quantity {
    margin-right: 1rem;
	width: 10rem;
}

.single-product .cart input[type="number"] {
    margin: 0;
	width: 100%;
}

.single-product .cart .button {
	flex-grow: 1;
}

/* Grouped Product Form */

.single-product .summary .cart.grouped_form {
	display: block;
}

.grouped_form .group_table {
	margin-bottom: 2rem;
}

.grouped_form td {
	padding-left: 0;
	padding-right: 0;
}

.woocommerce-grouped-product-list-item__quantity {
	width: 10.7rem;
}

.grouped_form .woocommerce-grouped-product-list-item__label {
	padding-left: 1.5rem;
}

.grouped_form .in-stock {
	margin-bottom: 0;
}

/* Variations Form */

.single-product table.variations {
    overflow: visible;
	table-layout: auto;
}

table.variations tr {
    border-bottom: .1rem solid #ddd;
    border-top: .1rem solid #ddd;
    margin-bottom: 2rem;
}

table.variations td {
    padding: 1.5rem 0;
    position: relative;
}

table.variations td.label {
    font-weight: 500;
	width: 10rem;
}

table.variations select {
	background-color: #fff;
}

table.variations .reset_variations {
    display: none !important;
}

table.variations tr + tr {
    border-top: none;
}

.variations_form .woocommerce-variation {
    margin-bottom: 3rem;
}

.woocommerce-variation-description {
	font-family: 'benton-modern', Georgia, serif;
}

.woocommerce-variation-price {
	margin-top: 2rem;
}


/* Related Exhibit ----------------------------- */

.related-exhibit-wrapper .preview-inner {
	max-height: 40rem;
}

/* Related Products ----------------------------- */

.products.related,
.products.up-sells,
.cross-sells {
	padding-bottom: 0;
    padding-top: 5rem;
    width: 100%;
}

.products.related > h2,
.products.up-sells > h2,
.cross-sells > h2 {
    font-size: 2.4rem;
    margin: 0 0 2rem 0;
}

.products.related .product-grid-wrapper,
.products.up-sells .product-grid-wrapper,
.cross-sells .product-grid-wrapper {
	border-bottom: .1rem solid #ddd;
	border-top: .1rem solid #ddd;
}

.products.related .product-grid,
.products.up-sells .product-grid,
.cross-sells .product-grid {
	margin: -.1rem 0;
}


/* -------------------------------------------------------------------------------- */
/*	X. Base Page Style
/* -------------------------------------------------------------------------------- */


.woo-page-section .woocommerce-notices-wrapper {
	margin-top: 0;
}


/* -------------------------------------------------------------------------------- */
/*	X. Cart Page
/* -------------------------------------------------------------------------------- */


/* Cart Empty ----------------------------- */

.cart-empty {
	font-family: 'benton-modern', Georgia, serif;
}


/* Cart Table ----------------------------- */

.shop_table.cart {
    margin-bottom: 4rem;
}

.shop_table.cart thead th {
	font-size: 1.6rem;
}

.shop_table.cart tbody tr {
	border-top: .1rem solid #ddd;
    position: relative;
}

.shop_table.cart .product-name a {
	text-decoration: none;
}

@media ( max-width: 699px ) {

	.shop_table.cart tbody {
		display: block;
	}

	.shop_table.cart thead th {
		display: none;
	}

	.shop_table.cart tr,
	.shop_table.cart td {
		display: block;
	}

	.shop_table.cart tbody tr.cart_item {
        display: flex;
        flex-wrap: wrap;
        font-size: 1.4rem;
        min-height: 11rem;
        padding: 1.5rem 0 1.5rem 9.5rem;
        position: relative;
    }

    .shop_table.cart .cart_item td {
        padding: 0;
    }

    .shop_table.cart .product-thumbnail {
        padding-right: 0;
        position: absolute;
            left: 0;
            top: 1.5rem;
		width: 8rem;
    }

    .shop_table.cart .cart_item .product-remove {
        display: none;
    }

    .shop_table.cart .product-name {
        font-size: 1.8rem;
        margin-bottom: .5rem;
        width: 100%;
    }

    .shop_table.cart .cart_item .product-price,
    .shop_table.cart .cart_item .product-quantity,
    .shop_table.cart .cart_item .product-subtotal {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
        width: 33.3%;
    }

    .shop_table.cart .cart_item .product-price:before,
    .shop_table.cart .cart_item .product-quantity:before,
    .shop_table.cart .cart_item .product-subtotal:before {
        content: attr( data-title );
        display: block;
        font-size: 1.2rem;
		font-style: italic;
        font-weight: 400;
        margin-bottom: .3rem;
    }

    .shop_table.cart .product-quantity input {
        padding: .2rem .8rem;
        width: 5rem;
    }

    .shop_table.cart .product-quantity .quantity-nav {
        display: none;
    }

}

/* CART ACTIONS */

.shop_table.cart td.actions {
    padding: 1.5rem 0 0;
    position: relative;
}

.shop_table.cart .actions button {
	width: 100%;
}

.shop_table.cart .coupon {
	align-items: stretch;
	display: flex;
	justify-content: stretch;
	margin-bottom: 2rem;
}

.shop_table.cart .coupon input[type="text"] {
	flex-grow: 1;
}

.shop_table.cart .coupon button {
	flex: 11rem 0 0;
	margin-left: 1rem;
}

.shop_table.cart .coupon label {
    position: absolute;
        left: -9999rem;
}


/* Woo Gray Box ----------------------------- */

.woo-gray-box {
    background: #F2F2F2;
    padding: 2rem;
}

.woo-gray-box h2 {
    font-size: 2.4rem;
}

.woo-gray-box .button.alt {
    width: 100%;
}


/* Cart Totals ----------------------------- */

.cart_totals {
    width: 100%;
}

.cart_totals th {
	width: 10rem;
}

.woocommerce-shipping-methods {
	list-style: none;
	margin: 0;
}

.woocommerce-shipping-methods li {
	margin: 0;
}

.woocommerce-shipping-methods li + li {
	margin-top: 1rem;
}

.shipping-calculator-button {
    display: block;
	font-family: 'benton-sans-compressed', Impact, -apple-system, Helvetica, sans-serif; 
    margin-top: .3rem;
    text-decoration: none;
	text-transform: uppercase;
}

.shipping-calculator-form {
	padding: 0;
}

.shipping-calculator-form .form-row,
.shipping-calculator-form p:last-of-type {
    margin-top: 1rem;
}

.shipping-calculator-form p:last-of-type {
	margin-bottom: 0;
}

.shipping-calculator-form .form-row input {
	background: #fff;
}

.order-total strong {
    font-weight: 500;
}

.woocommerce-remove-coupon {
    color: #858789;
    font-size: 1.3rem;
    font-weight: 500;
    margin-left: .3rem;
}


/* Empty Cart ----------------------------- */



/* -------------------------------------------------------------------------------- */
/*	X. Checkout Page
/* -------------------------------------------------------------------------------- */


form.woocommerce-checkout {
	margin-top: 4rem;
}

form.woocommerce-checkout > #order_review_heading {
    display: none !important;
}

form.woocommerce-checkout > .woocommerce-NoticeGroup {
    width: 100%;
}

form.woocommerce-checkout .woocommerce-billing-fields h3,
#order_review_heading {
	font-size: 2.4rem;
    margin-bottom: 2rem;
}


/* Checkout Toggleable Fields ----------------------------- */

.woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-form-coupon-toggle .woocommerce-info {
	margin: 0;
}

.woocommerce-form-login-toggle ~ .woocommerce-form-coupon-toggle {
	margin-top: 1rem;
}

.woocommerce-checkout .woocommerce-form-login,
.woocommerce-checkout .woocommerce-form-coupon {
	background: #f2f2f2;
	border-top: .1rem solid #fff;
	font-family: 'benton-modern', Georgia, serif;
	font-size: 1.6rem;
	padding: 2rem;
}

.woocommerce-checkout .woocommerce-form-login input,
.woocommerce-checkout .woocommerce-form-coupon input {
	background: #fff;
}

/* CHECKOUT COUPON */

.checkout_coupon,
.checkout_coupon .form-row {
	align-items: stretch;
    display: flex;
}

.checkout_coupon .form-row {
	margin: 0;
}

.checkout_coupon .form-row-last {
	flex-shrink: 0;
}

.checkout_coupon button {
	margin-left: 1rem;
}

.checkout_coupon p:not(.form-row) {
    display: none;
}

/* CHECKOUT LOGIN */

.woocommerce-checkout .woocommerce-form-login p {
	max-width: 45rem;
}

.woocommerce-checkout .woocommerce-form-login .lost_password {
	margin: 1rem 0 0;
}


/* Checkout Form ----------------------------- */

.woocommerce-account-fields {
	margin-top: 1rem;
}

.woocommerce-shipping-fields {
    margin-bottom: 2.4rem;
}

.woocommerce-shipping-fields #ship-to-different-address {
    font-size: 1em;
	font-weight: 400;
    margin: 1rem 0 0;
	text-transform: none;
}

.woocommerce-shipping-fields .shipping_address {
    margin-top: 2.4rem;
}

form.woocommerce-checkout #customer_details .woocommerce-additional-fields {
    margin-top: 4rem;
}

/* CHECKOUT NOTICES */

.woocommerce-NoticeGroup-checkout {
	margin-bottom: 4rem;
}

.woocommerce-NoticeGroup-checkout > *:first-child { margin-top: 0; }
.woocommerce-NoticeGroup-checkout > *:last-child { margin-bottom: 0; }


/* Order Review ----------------------------- */

/* ORDER REVIEW & ORDER DETAILS TABLE */

form.woocommerce-checkout #order_review {
	margin-top: 4rem;	
}

.woocommerce-checkout-review-order-table thead,
.woocommerce-table--order-details thead {
    display: none;
}

.woocommerce-checkout-review-order-table tbody tr,
.woocommerce-table--order-details tbody tr {
    border-bottom: .1rem solid #ddd;
}

.woocommerce-checkout-review-order-table tbody tr:first-child td,
.woocommerce-table--order-details tbody tr:first-child td {
    padding-top: 0;
}

.woocommerce-checkout-review-order-table tbody td.product-name,
.woocommerce-checkout-review-order-table tfoot th,
.woocommerce-table--order-details tfoot th {
	padding-right: 2rem;
	width: 60%;
}

.woocommerce-checkout-review-order-table tfoot th,
.woocommerce-table--order-details tfoot th {
	text-align: right;
}

.woocommerce-checkout-review-order-table .product-name .product-quantity,
.woocommerce-table--order-details .product-name .product-quantity {
    font-weight: 400;
}

/* PAYMENT METHODS */

.wc_payment_methods {
	list-style: none;
    margin: 0 -2rem 4rem -2rem;
}

.wc_payment_methods li {
	background: #E1E1E5;
	font-family: 'benton-modern', Georgia, serif;
	padding: 1.5rem 2rem;
	position: relative;
}

.wc_payment_methods li + li {
    margin-top: 1rem;
}

.wc_payment_methods input {
    position: absolute;
        left: -9999rem;
}

.wc_payment_methods label {
    cursor: pointer;
    display: block;
	font-style: italic;
    font-size: 1.6rem;
    margin-bottom: 0;
}

.wc_payment_methods input:checked ~ label {
	font-style: normal;
}

.wc_payment_methods .payment_box {
    font-size: 1.4rem;
    margin-top: .8rem;
}

.woocommerce-checkout #payment ul.payment_methods li img.stripe-icon {
	float: left;
	margin-right: 1rem;
}

/* PAYEX SPECIFICS */

li.payment_method_payex label {
	background: url( ../images/payments-processed-by-payex.png ) no-repeat center;
	background-size: cover;
	flex-shrink: 0;
	height: 4rem;
	text-indent: -9999rem;
	width: 8.2rem;
}

li.payment_method_payex label img {
	display: none;
}

li.payment_method_payex .payment_box {
	font-size: 1.7rem;
	margin-top: 1rem;
}

/* TERMS AND CONDITIONS */

.woocommerce-terms-and-conditions-wrapper {
	font-family: 'benton-modern', Georgia, serif;
	font-size: 1.6rem;
	font-style: italic;
	margin-top: 4rem;
}

.woocommerce-terms-and-conditions-wrapper p {
	margin-bottom: 2rem;
}


/* -------------------------------------------------------------------------------- */
/*	X. Order Received
/* -------------------------------------------------------------------------------- */


.woocommerce-order .woocommerce-order-overview,
.woocommerce-order .woocommerce-order-details,
.woocommerce-order .woocommerce-order-downloads {
    background: #f2f2f2;
	list-style: none;
	margin: 0;
    padding: 2rem;
    position: relative;
}

.woocommerce-order .woocommerce-order-details,
.woocommerce-order .woocommerce-order-downloads {
	margin: 2rem 0 0;
}

.woocommerce-order .woocommerce-customer-details,
.woocommerce-order .woocommerce-notice {
    width: 100%;
}

.woocommerce-thankyou-order-received {
	display: none;
}


/* Order Overview ----------------------------- */

.woocommerce-order-overview li {
	font-family: 'benton-modern', Georgia, serif;
    font-size: 1.4rem;
	margin: 0;
}

.woocommerce-order-overview li + li {
    border-top: .1rem solid #ddd;
    margin-top: 2.4rem;
    padding-top: 2.4rem;
}

.woocommerce-order-overview strong {
    display: block;
	font-family: 'benton-sans-compressed', Impact, -apple-system, Helvetica, sans-serif; 
    font-size: 2.4rem;
    margin-top: .8rem;
	text-transform: uppercase;
}

.woocommerce-order-overview + p {
	display: none;
}


/* Order Details ----------------------------- */

.woocommerce-order-details table {
    margin-bottom: 0;
}

.woocommerce-order-details__title,
.woocommerce-order-details thead {
    display: none;
}

.woocommerce-order-details .order-again {
    margin-top: 2.5rem;
}


/* Customer Details ----------------------------- */

.woocommerce-customer-details,
.woocommerce-columns--addresses {
	padding: 0;
}

.woocommerce-customer-details {
	margin-top: 6rem;
}

.woocommerce-columns--addresses .woocommerce-column {
	margin-top: 3rem;
}
.woocommerce-columns--addresses h2 {
    font-size: 2.4rem;
    margin-bottom: 2rem;
}

.woocommerce-columns--addresses address {
    margin-bottom: 0;
}


/* -------------------------------------------------------------------------------- */
/*	X. My Account
/* -------------------------------------------------------------------------------- */


/* Account Nav ----------------------------- */

body .account-nav-wrapper {
	margin: -4rem 0 4rem 0;
	position: relative;
		left: calc( 50% - 50vw );
	width: 100vw;
}

.account-nav-wrapper .toggle,
.account-nav-wrapper a {
	display: block;
	font-size: 1.8rem;
	line-height: 1;
	padding: 2rem;
	position: relative;
	text-decoration: none;
	text-transform: uppercase;
}

.account-nav-wrapper .toggle {
	align-items: center;
	border-bottom: .1rem solid #ddd;
	border-top: .1rem solid #ddd;
	display: flex;
	justify-content: space-between;
	width: 100%;
}

.account-nav-wrapper .toggle .icon {
	transition: transform .2s linear;
}

.account-nav-wrapper .toggle.active .icon {
	transform: rotate( 180deg );
}

.account-nav-wrapper nav {
	display: none;
}

.account-nav-wrapper ul {
	list-style: none;
	margin: 0;
}

.account-nav-wrapper li {
	border-bottom: .1rem solid #ddd;
	margin: 0;
}

.account-nav-wrapper a {
	opacity: .5;
}

.account-nav-wrapper a:after {
	background: url( ../images/icons/arrows/arrow-horizontal-right-black.svg ) no-repeat center;
	background-size: 3.7rem 1.5rem;
	content: "";
	display: block;
	height: 1.5rem;
	position: absolute;
		right: 2rem;
		top: calc( 50% - .75rem );
	width: 3.7rem;
}

.account-nav-wrapper li.is-active a,
.account-nav-wrapper li a:hover {
    opacity: 1;
}


/* WooCommerce Account Content ----------------------------- */

.woocommerce-MyAccount-content {
	font-family: 'benton-modern', Georgia, serif;
}

.woocommerce-MyAccount-content h1,
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3,
.woocommerce-MyAccount-content h4,
.woocommerce-MyAccount-content h5,
.woocommerce-MyAccount-content h6 {
	font-family: 'benton-sans-compressed', Impact, -apple-system, Helvetica, sans-serif; 
}

.woocommerce-MyAccount-content mark {
    background: none;
}

.woocommerce-MyAccount-content a:not(.button) {
    text-decoration: underline;
}

.woocommerce-MyAccount-content a:not(.button):hover {
    opacity: .5;
}

.woocommerce-MyAccount-content form .button {
    margin-top: 2.4rem;
}


/* WooCommerce Account Orders ----------------------------- */

.woocommerce-orders-table,
.woocommerce-table--order-downloads {
    font-size: 1.4rem;
}

.woocommerce-orders-table tr,
.woocommerce-table--order-downloads tr {
    border: none;
}

.woocommerce-orders-table tbody tr:nth-child(odd),
.woocommerce-table--order-downloads tbody tr:nth-child(odd) {
    background: #F5F5F7;
}

.woocommerce-orders-table td,
.woocommerce-orders-table th,
.woocommerce-table--order-downloads td,
.woocommerce-table--order-downloads th {
    padding: 1.8rem 2rem 1.8rem 0;
}

.woocommerce-orders-table td:first-child,
.woocommerce-orders-table th:first-child,
.woocommerce-table--order-downloads td:first-child,
.woocommerce-table--order-downloads th:first-child {
    padding-left: 2rem;
}

.woocommerce-orders-table thead th,
.woocommerce-table--order-downloads thead th {
    padding-top: 0;
}

.woocommerce-orders-table__cell-order-number a,
.woocommerce-table--order-downloads .download-product a {
    font-weight: 500;
    text-decoration: none;
}

.woocommerce-orders-table .button,
.woocommerce-table--order-downloads .button {
    background: none;
    color: #111;
    font-size: 1em;
    font-weight: 400;
    min-width: auto;
    padding: 0;
    text-decoration: underline;
}

.woocommerce-orders-table .button:hover,
.woocommerce-table--order-downloads .button:hover {
    text-decoration: underline;
}


/* WooCommerce Account Order Details ----------------------------- */

.woocommerce-view-order .account-wrapper .order-status {
    font-weight: 500;
}

.woocommerce-MyAccount-content .woocommerce-column {
    width: calc( 50% - 1rem );
}

.woocommerce-order-details {
    background: #F5F5F7;
    padding: 4rem;
}


/* WooCommerce Account Addresses ----------------------------- */

.account-wrapper .woocommerce-Addresses {
    margin-top: 4rem;
}

.woocommerce-Addresses .woocommerce-Address + .woocommerce-Address {
    margin-top: 3rem;
}

.woocommerce-Address-title {
    margin-bottom: 2rem;
}

.woocommerce-Address-title > * {
    display: inline;
}

.woocommerce-Address-title .edit {
    font-size: 1.4rem;
    font-weight: 500;
    margin-left: .8rem;
}

.woocommerce-Address address {
    margin-bottom: 0;
}

/* EDIT ADDRESS */

h3 + .woocommerce-address-fields {
    margin-top: 3rem;
}


/* Edit Account ----------------------------- */

.woocommerce-EditAccountForm label {
    display: block;
}


/* -------------------------------------------------------------------------------- */
/*	X. Login & Registration
/* -------------------------------------------------------------------------------- */


.showing-registration-form #site-content .section-inner .col2-set .col-1 { display: none; }
.showing-login-form #site-content .section-inner .col2-set .col-2 { display: none; }

.single-account-form #site-content .section-inner .section-inner.max-percentage {
    max-width: 40rem;
}

.both-account-forms #site-content .col2-set > div {
    max-width: 40rem;
    width: calc( 50% - 2rem );
}

.both-account-forms #site-content .section-inner .section-inner.max-percentage {
    max-width: 88rem;
    width: 100%;
}

.both-account-forms #site-content .section-inner .col2-set {
    display: flex;
    justify-content: space-between;
}

.account-form .woocommerce h2 {
    margin-bottom: 2.5rem;
}

.account-form .woocommerce p {
    line-height: 1.5;
}

.woocommerce .woocommerce-form-login .button {
    margin-right: 1rem;
}

.woocommerce .login-registration-form-links {
    margin-top: 2rem;
}

.woocommerce .login-registration-form-links p {
    display: inline;
    font-size: 1.4rem;
    font-weight: 500;
}

.woocommerce .login-registration-form-links .sep {
    color: #99999E;
    margin: 0 .8rem 0 .5rem;
}


/* Lost Password ----------------------------- */

.account-form.woocommerce-lost-password .woocommerce-message {
    padding-right: 2rem;
}


/* -------------------------------------------------------------------------------- */
/*	X. Media Queries
/* -------------------------------------------------------------------------------- */


@media ( min-width: 700px ) {


	/* Helper Classes ----------------------------- */

	/* FORMS HELPER CLASSES */

	.form-row {
		margin-bottom: 2.2rem;
	}

	.form-row + fieldset {
		margin-top: .5rem;
	}

	.form-row-first,
	.form-row-last {
		float: left;
		width: calc( 50% - 1rem );
	}

	.form-row-last {
		margin-left: 2rem;
	}

	/* SHOP TABLE */

	.shop_table {
		font-size: 1.8rem;
	}


	/* Product: Archive --------------------------- */

	/* PRODUCT PREVIEW */

	.product-grid .grid-item:nth-child(3) .product-preview {
		border-top: .1rem solid #ddd;
    }
    
    .preview-image-border .woocommerce-product-gallery__wrapper {
        padding: 0 4rem;
    }

    .store-flexible-section-puff_section .faux-image:after {
        padding-top: 70%;
    }


	/* Product: Single ---------------------------- */

	.single-product .product_title {
		font-size: 4.8rem;
	}

	.product-meta {
		align-items: center;
		display: flex;
		justify-content: space-between;
	}

	.product-meta .stock {
		margin: 0 0 0 1rem;
	}

	.single-product .product:not(.product-type-variable) .product-price .section-inner {
		align-items: center;
		display: flex;
		justify-content: space-between;
	}

	.single-product .product:not(.product-type-variable) .product-price .price {
		text-align: left;
	}

	.single-product .product:not(.product-type-variable) .product-price .price ~ .cart {
		margin: 0 0 0 2rem;
	}

	/* RELATED PRODUCTS */

	.products.related,
	.products.up-sells,
	.cross-sells {
		padding-top: 8rem;
	}

	.products.related > h2,
	.products.up-sells > h2,
	.cross-sells > h2 {
		font-size: 3.2rem;
		margin: 0 0 2.5rem 0;
	}


	/* Cart Page --------------------------------------- */

	.shop_table.cart tr {
		position: relative;
	}

	.shop_table.cart th,
	.shop_table.cart td {
		vertical-align: middle;
	}
	
	.shop_table.cart th {
		padding: 0 1rem 1.2rem;
	}

	.shop_table.cart td {
		padding: 1.5rem 1rem;
	}

	.shop_table.cart td.product-price,
	.shop_table.cart td.product-quantity,
	.shop_table.cart td.product-subtotal {
		width: 11rem;
	}

	.shop_table.cart .product-remove {
		width: 5.2rem;
	}

	.shop_table.cart .product-remove .remove {
		display: block;
		font-size: 3.6rem;
		font-weight: 300;
		text-align: center;
		text-decoration: none;
	}

	.shop_table.cart .product-thumbnail,
	.shop_table.cart img {
		padding-left: 0;
		width: 10rem;
	}

	.shop_table.cart td.product-name {
		font-size: 2rem;
	}

	.shop_table.cart .product-quantity .quantity {
		width: 8.2rem;
	}

	.shop_table.cart .product-quantity input {
		margin-bottom: 0;
		padding: 1.2rem 3.9rem 1.2rem 1rem;
	}

	.shop_table.cart .product-quantity .quantity-nav {
		width: 2.9rem;
	}

	.shop_table.cart td.actions {
		padding: 1.5rem 0 0;
		position: relative;
	}

	.shop_table.cart .coupon {
		margin: 0;
		width: 34rem;
	}

	.shop_table.cart td.actions > .button {
		position: absolute;
			right: 0;
			top: 1.5rem;
		width: auto;
	}


	/* Woo Gray Box ----------------------------- */

	.woo-gray-box {
		padding: 4rem;
	}

	.woo-gray-box h2 {
		font-size: 3.2rem;
		margin-bottom: 1rem;
	}


	/* Checkout Page ----------------------------------- */

	/* CHECKOUT COUPON AND LOGIN */

	.woocommerce-checkout .woocommerce-form-login .form-row-last ~ .form-row {
		float: left;
		width: 30rem;
	}

	.woocommerce-checkout .woocommerce-form-login .lost_password {
		align-items: center;
		display: flex;
		float: left;
		font-size: 1.8rem;
		height: 5.2rem;
		justify-content: flex-end;
		margin-top: 2rem;
		text-align: right;
		width: 15rem;
	}

	/* ORDER REVIEW & ORDER DETAILS TABLE */

	.woocommerce-checkout-review-order-table tbody td.product-name,
	.woocommerce-checkout-review-order-table tfoot th,
	.woocommerce-table--order-details tfoot th {
		width: 50%;
	}

	.wc_payment_methods {
		margin: 0 0 4rem 0;
	}

	.wc_payment_methods li {
		padding: 2rem;
	}

	.wc_payment_methods .payment_box {
		font-size: 1.6rem;
	}

	/* PAYEX SPECIFICS */

	li.payment_method_payex {
		align-items: center;
		display: flex;
	}

	li.payment_method_payex .payment_box {
		margin: 0 0 0 2rem;
	}


	/* Order Received ----------------------------------- */

	.woocommerce-order-received .woocommerce-order {
		margin-top: 4rem;
	}
	
	.woocommerce-order-overview li {
		font-size: 1.8rem;
	}

	.woocommerce-order-overview strong {
		font-size: 3.2rem;
	}

	.woocommerce-columns--addresses {
    	display: flex;
		justify-content: space-between;
	}

	.woocommerce-columns--addresses .woocommerce-column {
		margin: 0;
		width: calc( 50% - 2rem );
	}

	.woocommerce-columns--addresses h2 {
		font-size: 3.2rem;
	}


	/* My Account --------------------------------------- */

	body .account-nav-wrapper {
		margin-bottom: 5rem;
	}

	.account-nav-wrapper .toggle,
	.account-nav-wrapper a {
		padding: 2rem 4rem;
	}
	
	.account-nav-wrapper a:after {
		right: 4rem;
	}

	.woocommerce-Addresses {
		display: flex;
		justify-content: space-between;
	}

	.woocommerce-Addresses .woocommerce-Address {
		width: calc( 50% - 1rem );
	}

	.woocommerce-Addresses .woocommerce-Address + .woocommerce-Address {
		margin: 0;
	}


}


@media ( min-width: 1000px ) {


	/* Product: Archive --------------------------- */

	/* STORE PROMO */

	.store-promo-content-wrapper {
		margin-left: auto;
		min-width: 58rem;
		width: 50%;
	}
	
	/* Product: Single ---------------------------- */

	.product-gallery-content-wrapper {
		display: flex;
		align-items: stretch;
		justify-content: space-between;
	}

	.product-single-gallery {
		flex-grow: 0;
		max-width: 69.5rem;
		width: 47.5%;
	}

	.product-single-content {
		border-left: .1rem solid #f2f2f2;
		display: flex;
		flex-direction: column;
		flex-grow: 1;
		justify-content: space-between;
		width: 52.5%;
	}

	.product-mobile-header { display: none; }
	.product-desktop-header { display: block; }

	.single-product .product_title {
		font-size: 5.6rem;
	}

	.woocommerce-product-details__short-description {
		font-size: 2.4rem;
		margin: 0 0 4rem 0;
	}

	/* RELATED EXHIBIT */

	.related-exhibit-wrapper .preview-inner {
		max-height: 50rem;
	}


	/* Cart Page -------------------------------------- */

	.shop_table.cart td.product-price,
	.shop_table.cart td.product-quantity,
	.shop_table.cart td.product-subtotal {
		width: 15rem;
	}

	.shop_table.cart .product-remove {
		width: 10.2rem;
	}


	/* Woo Gray Box ------------------------------ */

	.woo-gray-box h2 {
		font-size: 4rem;
		margin-bottom: 2rem;
	}

	/* Cart Totals ------------------------------ */

	.cart_totals {
		margin-left: auto;
		min-width: 40rem;
		width: calc( 50% - 5rem );
	}

	.cart_totals th {
		width: 50%;
	}

	.cart_totals .wc-forward.button,
	.woocommerce-checkout-payment #place_order {
		font-size: 2rem;
		padding: 2.4rem;
	}


	/* Checkout Page ----------------------------------- */

	/* CHECKOUT COUPON AND LOGIN */

	/* CHECKOUT FORM */

	form.woocommerce-checkout {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	form.woocommerce-checkout #customer_details,
	form.woocommerce-checkout #order_review {
		width: calc( 50% - 2rem );
	}

	form.woocommerce-checkout #order_review {
		margin: 0;
	}

	form.woocommerce-checkout .woocommerce-billing-fields h3, 
	#order_review_heading {
		font-size: 3.2rem;
	}


	/* Order Received ----------------------------- */

	.woocommerce-order {
		align-items: flex-start;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.woocommerce-order .woocommerce-order-overview,
	.woocommerce-order .woocommerce-order-details,
	.woocommerce-order .woocommerce-order-downloads {
		margin: 0;
		padding: 4rem;
		width: calc( 50% - 2rem );
	}

	/* My Account --------------------------------- */

	.woocommerce-account .woo-page-content-wrapper .woocommerce {
		display: flex;
		justify-content: flex-start;
	}

	.woocommerce-account .woo-page-content-wrapper > .woocommerce > .woocommerce-message,
	.woocommerce-account .woo-page-content-wrapper > .woocommerce > .woocommerce-error,
	.woocommerce-account .woo-page-content-wrapper > .woocommerce > .woocommerce-info {
		width: 100%;
	}

	body .account-nav-wrapper {
		display: block !important;
		flex-shrink: 0;
		left: auto;
		margin: 0 5rem 0 0;
		width: 25rem;
	}

	.account-nav-wrapper .toggle {
		display: none;
	}

	.account-nav-wrapper nav {
		display: block;
	}

	.account-nav-wrapper ul {
		border-top: .1rem solid #ddd;
	}

	.account-nav-wrapper a {
		padding: 2rem 1.5rem;
	}

	.account-nav-wrapper a:after {
		right: 1.5rem;
	}

	.woocommerce-MyAccount-content {
		max-width: 73rem;
		width: 100%;
    }
    
    /* Product preview ---------------- */

    .preview-image-border .woocommerce-product-gallery__wrapper {
        padding: 0 0 0 4rem;
    }


}


@media ( min-width: 1200px ) {


	/* Cart Page --------------------------------------- */

	.shop_table.cart td.product-price,
	.shop_table.cart td.product-quantity,
	.shop_table.cart td.product-subtotal {
		width: 20rem;
	}

	/* Product: Archive --------------------------- */

	/* PRODUCT PREVIEW */

	.product-grid .grid-item:nth-child(4) .product-preview {
		border-top: .1rem solid #ddd;
    }
    
    .preview-image-border .woocommerce-product-gallery__wrapper {
        padding: 0 0 0 5rem;
    }


	/* Product: Single ---------------------------- */

	.single-product .product_title {
		font-size: 6.4rem;
	}

	/* RELATED EXHIBIT */

	.related-exhibit-wrapper .preview {
		max-width: calc( 50% - 1rem );
	}


}


@media ( min-width: 1880px ) {

	.product-content-wrapper.screen-width,
	.product-grid-wrapper.screen-width {
		left: auto;
		width: 168rem;
	}

}