/*
Theme Name: STEELYJAM
Author: AD
Version: 2.0
Text Domain: steelyjam

STEELYJAM WordPress Theme, (C) 2025 STEELYJAM
*/

/**
 * GENERIC
 * Global
 * 
 * COMPONENTS
 * Forms
 * Tables
 * Notices
 * Columns
 * Mini-Cart
 * Cart Items
 * Product Badge
 * Payment Methods
 * 
 * PAGES
 * Products (Archives/Loops)
 * Categories (Archives/Loops)
 * Shop & Category Pages
 * Product Page
 * Cart Page
 * Checkout Page
 * Order Received Page
 * My Account Page
 */

/* Global
   -------------------------------------------------------------------------- */
.woocommerce :focus {
	outline: 0 !important;
	box-shadow: none !important;
}

.woocommerce .woocommerce-breadcrumb {
	display: none;
}

/**
 * Animations
 */
@keyframes spin {

	to {
		transform: rotate(360deg);
	}
}

/* Forms
   -------------------------------------------------------------------------- */
.woocommerce form.login,
.woocommerce form.register {
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 0;
}

.woocommerce form .form-row {
	position: relative;
	max-width: none;
	padding: 0;
	margin: 0 0 var(--spacing-md);
}

.woocommerce form .form-row:last-of-type {
	margin: 0;
}

.woocommerce form .form-row label {
	display: none;
	line-height: inherit;
}

.woocommerce form .form-row-first,
.woocommerce form .form-row-last {
	width: calc(50% - var(--spacing-xxxs));
}
@media (max-width: 959px) {

	.woocommerce form .form-row-first,
	.woocommerce form .form-row-last {
		width: 100%;
	}
}

/**
 * Input
 */
.woocommerce form .form-row .input-text,
.woocommerce form .form-row select {
	background-color: transparent;
	color: inherit;
	font-weight: normal;
	letter-spacing: inherit;
	outline: 0;
}

.woocommerce form .form-row .input-text {
	line-height: 1.15;
	padding: 0 0 var(--spacing-xxxs);
	border: solid var(--color-primary);
	border-width: 0 0 1px;
	border-radius: 0;
}

.woocommerce form .form-row .input-text::placeholder,
.woocommerce form .form-row .input-text:focus::placeholder {
	color: var(--color-primary);
	opacity: .5;
}

.woocommerce form .form-row.woocommerce-validated input.input-text,
.woocommerce form .form-row.woocommerce-validated select,
.woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce form .form-row.woocommerce-invalid select {
	border-color: inherit;
}

.woocommerce-checkout .checkout .checkout-inline-error-message {
	color: var(--color-error);
	font-size: var(--font-size-xs);
	letter-spacing: var(--letter-spacing);
	margin-top: var(--spacing-xxxs);
}

.woocommerce-checkout .checkout:has(.checkout-inline-error-message) .woocommerce-error {
	display: none;
}

/**
 * Textarea
 */
.woocommerce form .form-row textarea.input-text {
	padding: var(--spacing-xs);
	border: 1px solid var(--color-primary);
	border-radius: var(--spacing-xs);
	resize: none;
}

/**
 * Select
 */
.woocommerce form .form-row select {
	background: none;
	line-height: inherit;
	padding: var(--spacing-xs) var(--spacing-xl) var(--spacing-xs) var(--spacing-sm);
	border: 1px solid var(--color-primary);
	border-radius: 9999px;
}

.woocommerce form .form-row .woocommerce-input-wrapper:has(select):after {
	content: '\e909';
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
	position: absolute;
	top: calc(50% - (var(--icons-size) / 2));
	right: var(--spacing-xs);
	pointer-events: none;
}

/**
 * Checkbox
 */
.woocommerce input[type=checkbox] {
	appearance: none;
	background-color: transparent;
	width: var(--icons-size);
	height: var(--icons-size);
	margin: 0 !important;
	border: 0;
	outline: 0;
	cursor: pointer;
}

.woocommerce input[type=checkbox]:before {
	content: '\e935';
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
}

.woocommerce input[type=checkbox]:checked:before {
	content: '\e936';
}

.woocommerce label:has(> input[type=checkbox]) {
	display: flex !important;
	align-items: center;
	gap: var(--spacing-xxxs);
	cursor: pointer;
}

.woocommerce-privacy-policy-text {
	font-size: var(--font-size-xs);
	letter-spacing: var(--letter-spacing);
	margin-bottom: var(--spacing-xs);
}

/**
 * Radio
 */
.woocommerce ul li input[type=radio] {
	appearance: none;
	background-color: transparent;
	width: var(--icons-size);
	height: var(--icons-size);
	margin: 0 !important;
	border: 0;
	outline: 0;
	cursor: pointer;
}

.woocommerce ul li input[type=radio]:before {
	content: '\e93b';
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
}

.woocommerce ul li input[type=radio]:checked:before {
	content: '\e93c';
}

/**
 * Password
 */
.woocommerce form .password-input input[type=password] {
	padding-right: calc((var(--icons-size) + var(--spacing-xs)) * 2);
}

.woocommerce form .show-password-input {
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
	color: inherit;
	top: 0;
	right: 0;
	transform: none;
}

.woocommerce form .show-password-input:before {
	content: '\e934';
	background: none;
	width: var(--icons-size);
	height: var(--icons-size);
}

.woocommerce form .show-password-input.display-password:before {
	content: '\e933';
	background: none;
}

.woocommerce form .lost_password {
	font-size: var(--font-size-xs);
	letter-spacing: var(--letter-spacing);
}

.woocommerce-password-strength {
	position: absolute;
	top: 0;
	right: calc(var(--icons-size) + var(--spacing-xs));
	font-family: 'steelyjam-icons';
	font-weight: normal;
	font-size: 0;
	line-height: 1;
	letter-spacing: normal;
	padding: 0;
}

.woocommerce-password-strength.short,
.woocommerce-password-strength.bad,
.woocommerce-password-strength.good,
.woocommerce-password-strength.strong {
	background-color: transparent;
	border: 0;
}

.woocommerce-password-strength.short:before,
.woocommerce-password-strength.bad:before {
	content: '\e937';
	color: var(--color-error);
	font-size: var(--icons-size);
}

.woocommerce-password-strength.good:before {
	content: '\e938';
	font-size: var(--icons-size);
}

.woocommerce-password-strength.strong:before {
	content: '\e939';
	font-size: var(--icons-size);
}

.woocommerce-password-hint {
	display: none;
}

/**
 * Button
 */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	background-color: var(--color-primary);
	color: var(--color-secondary);
	font-weight: normal;
	font-size: inherit;
	letter-spacing: inherit;
	text-align: center;
	padding: var(--spacing-xs) var(--spacing-md);
	border: 1px solid var(--color-primary);
	border-radius: 9999px;
	transition: background-color .3s, color .3s, border-color .3s;
}
@media (max-width: 959px) {

	.woocommerce a.button,
	.woocommerce button.button,
	.woocommerce input.button {
		width: 100%;
		text-align: center;
	}
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
	background-color: transparent;
	color: var(--color-primary);
}

/* Primary */
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	background-color: var(--color-primary);
	color: var(--color-secondary);
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	background-color: transparent;
	color: var(--color-primary);
}

/* Disabled */
.woocommerce a.button.disabled,
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled] {
	background-color: var(--color-background);
	color: var(--color-primary);
	padding: var(--spacing-xs) var(--spacing-md);
	border-color: var(--color-background);
	opacity: 1;
	cursor: default;
	pointer-events: none;
}

.woocommerce a.button.disabled:hover,
.woocommerce button.button.disabled:hover,
.woocommerce button.button:disabled:hover,
.woocommerce button.button:disabled[disabled]:hover,
.woocommerce input.button.disabled:hover,
.woocommerce input.button:disabled:hover,
.woocommerce input.button:disabled[disabled]:hover {
	background-color: inherit;
	color: inherit;
}

.woocommerce a.button.alt.disabled,
.woocommerce a.button.alt.disabled:hover,
.woocommerce button.button.alt.disabled,
.woocommerce button.button.alt.disabled:hover,
.woocommerce button.button.alt:disabled,
.woocommerce button.button.alt:disabled:hover,
.woocommerce button.button.alt:disabled[disabled],
.woocommerce button.button.alt:disabled[disabled]:hover,
.woocommerce input.button.alt.disabled,
.woocommerce input.button.alt.disabled:hover,
.woocommerce input.button.alt:disabled,
.woocommerce input.button.alt:disabled:hover,
.woocommerce input.button.alt:disabled[disabled],
.woocommerce input.button.alt:disabled[disabled]:hover {
	background-color: var(--color-background);
	color: var(--color-primary);
}

/* Loading */
.woocommerce a.button.loading,
.woocommerce button.button.loading,
.woocommerce input.button.loading {
	background-color: transparent;
	color: var(--color-primary);
	padding: var(--spacing-xs) var(--spacing-md);
	opacity: 1;
}

.woocommerce a.button.loading:after,
.woocommerce button.button.loading:after,
.woocommerce input.button.loading:after {
	content: '\e917';
	font-family: 'steelyjam-icons';
	font-weight: normal;
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
	top: calc(50% - (var(--icons-size) / 2));
	right: var(--spacing-xs);
	animation: spin 2s linear infinite;
}

/* Added */
.woocommerce a.button.added:after,
.woocommerce button.button.added:after,
.woocommerce input.button.added:after {
	content: none;
}

/* Tables
   -------------------------------------------------------------------------- */
.woocommerce table.shop_table {
	table-layout: fixed;
	margin: 0;
	border: 0;
	border-radius: 0;
	border-collapse: collapse;
}

.woocommerce table.shop_table thead th {
	text-transform: uppercase;
}

.woocommerce table.shop_table th {
	font-weight: normal;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	line-height: inherit;
	padding: var(--spacing-xxs) 0;
	border-top: 1px solid var(--color-primary);
	border-bottom: 1px solid var(--color-primary);
	vertical-align: top;
	overflow-wrap: break-word;
}

.woocommerce table.shop_table td small,
.woocommerce table.shop_table td strong {
	font-weight: normal;
}

.woocommerce table.shop_table tbody:first-child tr:first-child th,
.woocommerce table.shop_table tbody:first-child tr:first-child td {
	border-top: inherit;
}

.woocommerce table.shop_table tbody th,
.woocommerce table.shop_table tfoot th,
.woocommerce table.shop_table tfoot td {
	font-weight: normal;
	border-top: inherit;
}

/**
 * Responsive
 */
.woocommerce table.shop_table_responsive thead {
	display: table-header-group;
}

.woocommerce table.shop_table_responsive tbody th {
	display: table-cell;
}

.woocommerce table.shop_table_responsive tbody tr:first-child td:first-child {
	border-top: inherit;
}

.woocommerce table.shop_table_responsive tr {
	display: table-row;
}

.woocommerce table.shop_table_responsive tr td {
	display: table-cell;
	text-align: left !important;
}

.woocommerce table.shop_table_responsive tr:nth-child(2n) td {
	background-color: transparent;
}

.woocommerce table.shop_table_responsive tr td:before {
	content: none;
}

/**
 * Order Summary
 */
.woocommerce-cart .cart-collaterals .cart_totals table,
.woocommerce-checkout .checkout-collaterals table {
	table-layout: auto;
}

.woocommerce-cart .cart-collaterals .cart_totals table {
	border-collapse: collapse;
	margin: 0;
}

.woocommerce-checkout .checkout-collaterals thead {
	display: none;
}

.woocommerce-cart .cart-collaterals .cart_totals table tr,
.woocommerce-checkout .checkout-collaterals table tr {
	display: grid;
	grid-template-columns: auto auto;
}

.woocommerce-cart .cart-collaterals .cart_totals table th,
.woocommerce-cart .cart-collaterals .cart_totals table td,
.woocommerce-checkout .checkout-collaterals table th,
.woocommerce-checkout .checkout-collaterals table td {
	padding: .25rem 0;
	border: 0;
}

.woocommerce-checkout .checkout-collaterals table tbody th,
.woocommerce-checkout .checkout-collaterals table tbody td {
	padding: var(--spacing-xxxs) 0;
}

.woocommerce-cart .cart-collaterals .cart_totals table th,
.woocommerce-cart .cart-collaterals .cart_totals table td {
	line-height: inherit;
}

.woocommerce-cart .cart-collaterals .cart_totals table th {
	width: auto;
}

.woocommerce-cart .cart-collaterals .cart_totals table tbody tr:first-child th,
.woocommerce-cart .cart-collaterals .cart_totals table tbody tr:first-child td,
.woocommerce-checkout .checkout-collaterals table tr:first-child th,
.woocommerce-checkout .checkout-collaterals table tr:first-child td {
	padding-top: var(--spacing-xs);
	border-top: 1px solid var(--color-primary);
}

.woocommerce-cart .cart-collaterals .cart_totals table tr:last-child th,
.woocommerce-cart .cart-collaterals .cart_totals table tr:last-child td,
.woocommerce-checkout .checkout-collaterals table tfoot tr:last-child th,
.woocommerce-checkout .checkout-collaterals table tfoot tr:last-child td {
	padding-top: var(--spacing-xs);
	padding-bottom: 0;
	border-top: 1px solid var(--color-primary);
}

.woocommerce-cart .cart-collaterals .cart_totals table tr:nth-last-child(2) th,
.woocommerce-cart .cart-collaterals .cart_totals table tr:nth-last-child(2) td,
.woocommerce-checkout .checkout-collaterals table tbody tr:last-child th,
.woocommerce-checkout .checkout-collaterals table tbody tr:last-child td,
.woocommerce-checkout .checkout-collaterals table tfoot tr:nth-last-child(2) th,
.woocommerce-checkout .checkout-collaterals table tfoot tr:nth-last-child(2) td {
	padding-bottom: var(--spacing-xs);
}

.woocommerce-cart .cart-collaterals .cart_totals table tr > :first-child,
.woocommerce-checkout .checkout-collaterals table tr > :first-child {
	padding-right: var(--spacing-md);
}

.woocommerce-cart .cart-collaterals .cart_totals table tr > :last-child,
.woocommerce-checkout .checkout-collaterals table tr > :last-child {
	text-align: right !important;
}

/* Variation */
.woocommerce-checkout .checkout-collaterals table td.product-name dl.variation {
	font-size: var(--font-size-xs);
	letter-spacing: var(--letter-spacing);
	margin-top: var(--spacing-xxxs);
}

.woocommerce-checkout .checkout-collaterals table td.product-name dl.variation dt {
	display: none;
}

.woocommerce-checkout .checkout-collaterals table tr.custom td.product-name dl.variation dt {
	display: inline-block;
	margin-right: .25em;
}

.woocommerce-checkout .checkout-collaterals table td.product-name dl.variation dd {}

/* Coupon */
.woocommerce-cart .cart-collaterals .cart_totals table .woocommerce-remove-coupon,
.woocommerce-checkout .checkout-collaterals table .woocommerce-remove-coupon {
	display: flex;
	align-items: center;
	gap: var(--spacing-xxxs);
	font-size: var(--font-size-xs);
	letter-spacing: var(--letter-spacing);
	width: fit-content;
	padding: var(--spacing-xxxs) var(--spacing-xxs) var(--spacing-xxxs) var(--spacing-xs);
	margin-top: var(--spacing-xxxs);
	border: 1px solid var(--color-primary);
	border-radius: 9999px;
}

.woocommerce-cart .cart-collaterals .cart_totals table .woocommerce-remove-coupon:after,
.woocommerce-checkout .checkout-collaterals table .woocommerce-remove-coupon:after {
	content: '\e90d';
	font-family: 'steelyjam-icons';
	font-size: var(--font-size-sm);
	line-height: 1;
	letter-spacing: normal;
}

/* Shipping */
.woocommerce-cart .cart-collaterals .cart_totals table .woocommerce-shipping-methods label:has(.amount),
.woocommerce-checkout .checkout-collaterals table .woocommerce-shipping-methods label:has(.amount) {
	font-size: 0;
}

.woocommerce-cart .cart-collaterals .cart_totals table .woocommerce-shipping-methods label .amount,
.woocommerce-checkout .checkout-collaterals table .woocommerce-shipping-methods label .amount {
	font-size: var(--font-size-sm);
}

.woocommerce-cart .cart-collaterals .cart_totals table .woocommerce-shipping-methods li,
.woocommerce-checkout .checkout-collaterals table .woocommerce-shipping-methods li {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	gap: var(--spacing-xxxs);
	line-height: inherit !important;
	margin: 0 0 var(--spacing-xxxs) !important;
}

.woocommerce-cart .cart-collaterals .cart_totals table .woocommerce-shipping-methods li:last-of-type,
.woocommerce-checkout .checkout-collaterals table .woocommerce-shipping-methods li:last-of-type {
	margin-bottom: 0 !important;
}

.woocommerce-cart .cart-collaterals .cart_totals table .woocommerce-shipping-methods li label,
.woocommerce-checkout .checkout-collaterals table .woocommerce-shipping-methods li label {
	cursor: pointer;
}

.woocommerce-cart .cart-collaterals .cart_totals table .woocommerce-shipping-methods .amount,
.woocommerce-checkout .checkout-collaterals table .woocommerce-shipping-methods .amount {
	font-weight: normal !important;
}

.woocommerce-cart .cart-collaterals .cart_totals table .woocommerce-shipping-destination {
	display: none;
}

/* Total */
.woocommerce-cart .cart-collaterals .cart_totals table .order-total,
.woocommerce-checkout .checkout-collaterals table .order-total {
	font-size: var(--font-size-md);
	line-height: var(--line-height-heading);
	letter-spacing: var(--letter-spacing);
	text-transform: uppercase;
}

.woocommerce-cart .cart-collaterals .cart_totals table .order-total td small,
.woocommerce-checkout .checkout-collaterals table .order-total td small {
	display: none;
}

/**
 * Order Details
 */
.woocommerce table.order_details {
	table-layout: auto;
}

.woocommerce table.order_details thead {
	display: none;
}

.woocommerce table.order_details td small {
	display: none;
}

.woocommerce table.order_details tr {
	display: grid;
	grid-template-columns: auto auto;
}

.woocommerce table.order_details th,
.woocommerce table.order_details td {
	padding: .25rem 0;
	border: 0;
}

.woocommerce table.order_details tbody th,
.woocommerce table.order_details tbody td {
	padding: var(--spacing-xxxs) 0;
}

.woocommerce table.order_details tr:first-child th,
.woocommerce table.order_details tr:first-child td {
	padding-top: var(--spacing-xs);
	border-top: 1px solid var(--color-primary);
}

.woocommerce table.order_details tfoot tr:last-child th,
.woocommerce table.order_details tfoot tr:last-child td {
	font-size: var(--font-size-xs);
	letter-spacing: var(--letter-spacing);
	padding-top: var(--spacing-xs);
	padding-bottom: 0;
}

.woocommerce table.order_details tbody tr:last-child th,
.woocommerce table.order_details tbody tr:last-child td,
.woocommerce table.order_details tfoot tr:nth-last-child(2) th,
.woocommerce table.order_details tfoot tr:nth-last-child(2) td,
.woocommerce table.order_details tfoot tr:nth-last-child(3) th,
.woocommerce table.order_details tfoot tr:nth-last-child(3) td {
	padding-bottom: var(--spacing-xs);
}

.woocommerce table.order_details tfoot tr:nth-last-child(2) th,
.woocommerce table.order_details tfoot tr:nth-last-child(2) td {
	font-size: var(--font-size-md);
	line-height: var(--line-height-heading);
	letter-spacing: var(--letter-spacing);
	text-transform: uppercase;
	padding-top: var(--spacing-xs);
	border-top: 1px solid var(--color-primary);
}

.woocommerce table.order_details tr > :first-child {
	padding-right: var(--spacing-md);
}

.woocommerce table.order_details tr > :last-child {
	text-align: right !important;
}

.woocommerce table.order_details .product-name .wc-item-meta {
	font-size: var(--font-size-xs);
	letter-spacing: var(--letter-spacing);
	margin-top: var(--spacing-xxxs);
}

/**
 * Orders & Payment Methods
 */
.woocommerce table.account-orders-table thead,
.woocommerce table.account-payment-methods-table thead {
	display: none;
}

.woocommerce table.account-orders-table tr,
.woocommerce table.account-payment-methods-table tr {
	display: block;
	background-color: #fff;
	padding: var(--spacing-md);
	margin-bottom: var(--spacing-xs);
	border-radius: var(--spacing-xs);
}

.woocommerce table.account-orders-table tr:last-of-type,
.woocommerce table.account-payment-methods-table tr:last-of-type {
	margin-bottom: 0;
}

.woocommerce table.account-orders-table tbody th {
	display: block;
	font-size: var(--font-size-lg);
	line-height: var(--line-height-heading);
	letter-spacing: var(--letter-spacing);
	text-transform: uppercase;
	padding: 0 0 var(--spacing-md);
	border: 0;
}

.woocommerce table.account-orders-table tbody th:before {
	content: attr(data-title) ' ';
}

.woocommerce table.account-orders-table tr td,
.woocommerce table.account-payment-methods-table tr td {
	display: block;
	padding: 0;
	border: 0;
}

.woocommerce table.account-orders-table tr td.woocommerce-orders-table__cell-order-total {
	font-size: 0;
}

.woocommerce table.account-orders-table tr td.woocommerce-orders-table__cell-order-total .amount {
	font-size: var(--font-size-sm);
}

.woocommerce table.account-orders-table tr td.woocommerce-orders-table__cell-order-actions {
	padding-top: var(--spacing-md);
}

.woocommerce table.account-orders-table .button,
.woocommerce table.account-payment-methods-table .button {
	background-color: transparent;
	color: var(--color-primary);
}

.woocommerce table.account-orders-table .button:hover,
.woocommerce table.account-payment-methods-table .button:hover {
	background-color: var(--color-primary);
	color: var(--color-secondary);
}

.woocommerce table.account-payment-methods-table tr td.payment-method-method {
	font-size: var(--font-size-md);
	line-height: var(--line-height-heading);
	letter-spacing: var(--letter-spacing);
	text-transform: uppercase;
	margin-bottom: var(--spacing-xs);
}

.woocommerce table.account-payment-methods-table tr td.payment-method-expires:before {
	content: attr(data-title) ': ';
	font-weight: normal;
	float: none;
}

.woocommerce table.account-payment-methods-table tr td.payment-method-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--spacing-xxxs) .25rem;
	font-size: 0;
	padding-top: var(--spacing-md);
}

.woocommerce table.account-payment-methods-table tr td.payment-method-actions .button {
	font-size: var(--font-size-sm);
}

/* Notices
   -------------------------------------------------------------------------- */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	display: grid;
	grid-template-columns: auto 1fr;
	background-color: transparent;
	color: inherit;
	padding: var(--spacing-xs);
	margin: 0 0 var(--spacing-md);
	border: 1px solid var(--color-primary);
	border-top-color: inherit;
	border-radius: var(--spacing-xs);
}
@media (min-width: 600px) {

	.woocommerce-error,
	.woocommerce-info,
	.woocommerce-message {
		padding: var(--spacing-md);
	}
}

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

.woocommerce-info,
.woocommerce-message {
	display: none;
}

.woocommerce-error:before,
.woocommerce-info:before,
.woocommerce-message:before {
	grid-column: 1;
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
	color: inherit;
	position: static;
	margin-right: var(--spacing-xs);
}

.woocommerce-error:before {
	content: '\e931';
}

.woocommerce-info:before {
	content: '\e92f';
}

.woocommerce-message:before {
	content: '\e930';
}

.woocommerce-error li,
.woocommerce-info li,
.woocommerce-message li {
	grid-column: 2;
	align-self: center;
}

.woocommerce-error li strong,
.woocommerce-info li strong,
.woocommerce-message li strong {
	font-weight: normal;
}

.woocommerce-error .button,
.woocommerce-info .button,
.woocommerce-message .button {
	display: none;
}

/* Columns
   -------------------------------------------------------------------------- */
.woocommerce .col2-set {
	display: flex;
	flex-wrap: wrap;
	gap: var(--spacing-xs);
}

.woocommerce .col2-set:before,
.woocommerce .col2-set:after {
	content: none;
}

.woocommerce .col2-set .col-1,
.woocommerce .col2-set .col-2 {
	float: none;
	flex-basis: calc(50% - var(--spacing-xxxs));
	background-color: #fff;
	padding: var(--spacing-md);
	border-radius: var(--spacing-xs);
}
@media (max-width: 959px) {

	.woocommerce .col2-set .col-1,
	.woocommerce .col2-set .col-2 {
		flex-basis: 100%;
	}
}

.woocommerce .col2-set h2 {
	font-size: var(--font-size-xl);
	margin-bottom: var(--spacing-md);
}

/* Mini-Cart
   -------------------------------------------------------------------------- */
.mini-cart-toggle {
	display: flex;
	position: relative;
}

.mini-cart-toggle:before {
	content: '\e905';
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
}

.mini-cart-toggle span:not(.cart-count) {
	display: none;
}

.mini-cart-toggle span.cart-count {
	position: absolute;
	top: 0;
	right: 0;
	transform: translate(50%, -50%);
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--color-primary);
	color: #fff;
	font-weight: bold;
	font-size: .625rem;
	letter-spacing: var(--letter-spacing);
	line-height: 1;
	height: 1.125rem;
	min-width: 1.125rem;
	padding: .25rem;
	border-radius: 9999px;
}

.mini-cart-toggle span.cart-count:empty {
	display: none;
}

/**
 * Drawer
 */
.mini-cart-drawer {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	max-width: 600px;
	z-index: 50;
	pointer-events: none;
}

.mini-cart-drawer.is-open {
	pointer-events: auto;
}

.mini-cart-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, .2);
	opacity: 0;
	visibility: hidden;
	transition: opacity .5s, visibility 0s .5s;
}

.mini-cart-drawer.is-open .mini-cart-overlay {
	opacity: 1;
	visibility: visible;
	transition: opacity .5s, visibility 0s 0s;
}

.mini-cart-content {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	background-color: #fff;
	transform: translateX(100%);
	transition: transform .6s var(--ease-in-out-expo);
	overflow-y: auto;
}

.mini-cart-drawer.is-open .mini-cart-content {
	transform: translateX(0);
	transition: transform .6s var(--ease-out-expo) .2s;
}

/**
 * Header
 */
.mini-cart-header {
	flex-shrink: 0;
	padding: var(--spacing-xs);
	position: relative;
}
@media (min-width: 600px) {

	.mini-cart-header {
		padding: var(--spacing-md);
	}
}

.mini-cart-content:has(.woocommerce-mini-cart__empty-message) .mini-cart-header {
	padding-bottom: 0;
}

.mini-cart-content:not(:has(.woocommerce-mini-cart__empty-message)) .mini-cart-header h2 {
	margin-bottom: 0;
}
@media (max-width: 599px) {

	.mini-cart-header h2 {
		font-size: var(--font-size-xl); /* 3rem */
	}
}

.mini-cart-close {
	position: absolute;
	top: var(--spacing-xs);
	right: var(--spacing-xs);
	background: none;
	color: inherit;
	padding: 0;
	border: 0;
	border-radius: 0;
}
@media (min-width: 600px) {

	.mini-cart-close {
		top: var(--spacing-md);
		right: var(--spacing-md);
	}
}

/**
 * Inner
 */
.mini-cart-inner {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex: 1;
	overflow: hidden;
}

.mini-cart-inner .woocommerce-mini-cart {
	padding: var(--spacing-xs) !important;
	flex: 1;
	overflow-y: auto;
	scrollbar-width: none;
}
@media (min-width: 600px) {

	.mini-cart-inner .woocommerce-mini-cart {
		padding: 0 var(--spacing-md) var(--spacing-md) !important;
	}
}

.woocommerce ul.cart_list li {
	display: grid;
	grid-template-columns: var(--spacing-xxl) 1fr auto;
	grid-template-rows: auto 1fr;
	gap: var(--spacing-xxxs) var(--spacing-xs);
	padding: var(--spacing-xxxs);
	border: 1px solid var(--color-primary);
	border-radius: var(--spacing-xs);
}
@media (min-width: 600px) {

	.woocommerce ul.cart_list li {
		grid-template-columns: var(--spacing-xxxl) 1fr auto;
		gap: var(--spacing-xxxs) var(--spacing-md);
	}
}

.woocommerce ul.cart_list li:not(:last-child) {
	margin-bottom: var(--spacing-xs);
}

.woocommerce ul.cart_list li:before,
.woocommerce ul.cart_list li:after {
	content: none;
}

.woocommerce ul.cart_list li a.remove {
	grid-column: 3;
	grid-row: 2;
	margin: auto calc(var(--spacing-xs) - var(--spacing-xxxs)) calc(var(--spacing-xs) - var(--spacing-xxxs)) auto;
}
@media (min-width: 600px) {

	.woocommerce ul.cart_list li a.remove {
		margin: auto calc(var(--spacing-md) - var(--spacing-xxxs)) calc(var(--spacing-md) - var(--spacing-xxxs)) auto;
	}
}

.mini-cart-inner .woocommerce-mini-cart .mini-cart-item-image {
	grid-column: 1;
	grid-row: 1 / span 2;
}

.mini-cart-inner .woocommerce-mini-cart .mini-cart-item-image a {
	display: flex;
	align-items: center;
	height: 100%;
	background-color: var(--color-placeholder);
	border-radius: var(--spacing-xxxs);
}

.woocommerce ul.cart_list li img {
	width: 100%;
	margin-left: 0;
	float: none;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	image-rendering: auto;
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
}

.woocommerce ul.cart_list li a {
	font-weight: normal;
}

.mini-cart-inner .woocommerce-mini-cart .mini-cart-item-details {
	grid-column: 2;
	grid-row: 1;
	text-transform: uppercase;
	margin-top: calc(var(--spacing-xs) - var(--spacing-xxxs));
}
@media (min-width: 600px) {

	.mini-cart-inner .woocommerce-mini-cart .mini-cart-item-details {
		font-size: var(--font-size-md);
		line-height: var(--line-height-heading);
		letter-spacing: var(--letter-spacing);
		margin-top: calc(var(--spacing-md) - var(--spacing-xxxs));
	}
}

.woocommerce ul.cart_list li .variation {
	grid-column: 2;
	grid-row: 2;
	padding-left: 0;
	border-left: 0;
	margin-top: auto;
	margin-bottom: calc(var(--spacing-md) - var(--spacing-xxxs));
}
@media (max-width: 599px) {

	.woocommerce ul.cart_list li .variation {
		font-size: var(--font-size-xs);
		letter-spacing: var(--letter-spacing);
		margin-bottom: calc(var(--spacing-xs) - var(--spacing-xxxs));
	}
}

.woocommerce ul.cart_list li .variation dt {
	display: none;
}

.woocommerce ul.cart_list li .variation dd {
	display: block;
	padding: 0;
	margin-bottom: 0;
	float: none;
}

.woocommerce ul.cart_list li .quantity {
	grid-column: 3;
	grid-row: 1;
	text-transform: uppercase;
	margin: calc(var(--spacing-xs) - var(--spacing-xxxs)) calc(var(--spacing-xs) - var(--spacing-xxxs)) 0 auto;
}
@media (min-width: 600px) {

	.woocommerce ul.cart_list li .quantity {
		font-size: var(--font-size-md);
		line-height: var(--line-height-heading);
		letter-spacing: var(--letter-spacing);
		margin: calc(var(--spacing-md) - var(--spacing-xxxs)) calc(var(--spacing-md) - var(--spacing-xxxs)) 0 auto;
	}
}

/* Custom */
.woocommerce ul.cart_list li.custom .variation {
	grid-column: 1 / span 3;
	grid-row: 1 / span 2;
	background-color: #fff;
	padding: calc(var(--spacing-xs) - var(--spacing-xxxs));
	padding-right: calc(var(--spacing-xs) - var(--spacing-xxxs) + var(--icons-size));
	margin-bottom: 0;
	z-index: 1;
}
@media (min-width: 600px) {

	.woocommerce ul.cart_list li.custom .variation {
		padding: calc(var(--spacing-md) - var(--spacing-xxxs));
		padding-right: calc(var(--spacing-md) - var(--spacing-xxxs) + var(--icons-size));
	}
}

.woocommerce ul.cart_list li.custom .variation dt {
	display: block;
	font-weight: bold;
	padding: 0;
	margin: 0;
	float: none;
	clear: none;
}

.woocommerce ul.cart_list li.custom .variation dd {
	margin-bottom: var(--spacing-xxs);
}

.woocommerce ul.cart_list li.custom .variation dd:last-child {
	margin-bottom: var(--spacing-xxxs);
}
@media (min-width: 600px) {

	.woocommerce ul.cart_list li.custom .variation dd {
		margin-bottom: var(--spacing-xs);
	}

	.woocommerce ul.cart_list li.custom .variation dd:last-child {
		margin-bottom: 0;
	}
}

.woocommerce ul.cart_list li.custom .details-toggle {
	grid-column: 2;
	grid-row: 2;
	margin-top: auto;
	margin-bottom: calc(var(--spacing-xs) - var(--spacing-xxxs));
	z-index: 2;
}
@media (min-width: 600px) {

	.woocommerce ul.cart_list li.custom .details-toggle {
		margin-bottom: calc(var(--spacing-md) - var(--spacing-xxxs));
	}
}

.woocommerce ul.cart_list li.custom .details-toggle:not(.close) span {
	text-decoration: underline;
	text-decoration-thickness: .05em;
	text-underline-offset: .15em;
	transition: text-decoration-color .3s;
	cursor: pointer;
}
@media (max-width: 599px) {

	.woocommerce ul.cart_list li.custom .details-toggle:not(.close) span {
		font-size: var(--font-size-xs);
		letter-spacing: var(--letter-spacing);
	}
}

.woocommerce ul.cart_list li.custom .details-toggle:not(.close) span:hover {
	text-decoration-thickness: .05em;
	text-decoration-color: transparent;
}

.woocommerce ul.cart_list li.custom .details-toggle.close {
	grid-column: 3;
	grid-row: 1;
	margin: calc(var(--spacing-xs) - var(--spacing-xxxs)) calc(var(--spacing-xs) - var(--spacing-xxxs)) 0 auto;
}
@media (min-width: 600px) {

	.woocommerce ul.cart_list li.custom .details-toggle.close {
		margin: calc(var(--spacing-md) - var(--spacing-xxxs)) calc(var(--spacing-md) - var(--spacing-xxxs)) 0 auto;
	}
}

.woocommerce ul.cart_list li.custom .details-toggle.close span {
	font-size: 0;
	display: block;
	width: var(--icons-size);
	height: var(--icons-size);
	cursor: pointer;
}

.woocommerce ul.cart_list li.custom .details-toggle.close span:before {
	content: '\e90d';
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
}

/**
 * Footer
 */
.mini-cart-footer {
	flex-shrink: 0;
	padding: var(--spacing-xs);
	border-top: 1px solid rgba(var(--color-primary-rgb), .5);
}
@media (min-width: 600px) {

	.mini-cart-footer {
		padding: var(--spacing-md);
	}
}

.mini-cart-footer .total {
	display: flex;
	justify-content: space-between;
	font-size: var(--font-size-md);
	line-height: var(--line-height-heading);
	letter-spacing: var(--letter-spacing);
	text-transform: uppercase;
	margin-bottom: var(--spacing-xs);
}

.mini-cart-footer .total strong {
	font-weight: normal;
}

.mini-cart-footer .buttons .button {
	width: 100%;
}

.mini-cart-footer .buttons .checkout {
	display: none;
}

.mini-cart-footer .mini-cart-notice {
	font-size: var(--font-size-xs);
	letter-spacing: var(--letter-spacing);
	margin-top: var(--spacing-xs);
}

/**
 * Empty
 */
.mini-cart-footer.empty {
	border-top: 0;
}

.mini-cart-inner .woocommerce-mini-cart__empty-message {
	font-size: 1.5rem;
	line-height: var(--line-height-heading);
	letter-spacing: var(--letter-spacing);
	padding: 0 var(--spacing-xs) var(--spacing-xs);
}
@media (min-width: 600px) {

	.mini-cart-inner .woocommerce-mini-cart__empty-message {
		padding: 0 var(--spacing-md) var(--spacing-md);
	}
}
@media (min-width: 960px) {

	.mini-cart-inner .woocommerce-mini-cart__empty-message {
		font-size: var(--font-size-lg);
	}
}

.woocommerce-mini-cart__empty-message {
	visibility: hidden;
}

.woocommerce-mini-cart__empty-message.text {
	visibility: visible;
}

/* Cart Items
   -------------------------------------------------------------------------- */
.woocommerce a.remove {
	color: inherit !important;
	font-size: 0;
	width: var(--icons-size);
	height: var(--icons-size);
	border-radius: 0;
}

.woocommerce a.remove:before {
	content: '\e927';
	font-family: 'steelyjam-icons';
	font-weight: normal;
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
}

.woocommerce a.remove:hover {
	background-color: transparent;
	color: inherit !important;
}

/**
 * Loading
 */
.woocommerce .blockUI.blockOverlay {
	background-color: rgba(255, 255, 255, .75) !important;
	opacity: 1 !important;
	z-index: 9 !important;
}

.woocommerce .woocommerce-mini-cart .blockUI.blockOverlay {
	border-radius: var(--spacing-xs);
}

.woocommerce .woocommerce-cart-form .blockUI.blockOverlay,
.woocommerce .woocommerce-form-coupon .blockUI.blockOverlay,
.woocommerce form.checkout > .blockUI.blockOverlay {
	background-color: rgba(239, 241, 247, .75) !important;
}

.woocommerce .blockUI.blockOverlay:before {
	content: none;
}

.woocommerce .blockUI.blockOverlay:after {
	content: '\e917';
	font-family: 'steelyjam-icons';
	font-weight: normal;
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
	position: absolute;
	top: calc(50% - (var(--icons-size) / 2));
	left: calc(50% - (var(--icons-size) / 2));
	animation: spin 2s linear infinite;
}

/* Product Badge
   -------------------------------------------------------------------------- */
.woocommerce span.onsale {
	display: none;
}

.woocommerce span.custom-badge {
	position: absolute;
	top: var(--spacing-xs);
	left: var(--spacing-xs);
	background-color: #fff;
	font-size: var(--font-size-xs);
	line-height: 1;
	letter-spacing: var(--letter-spacing);
	padding: var(--spacing-xxxs) var(--spacing-xs);
	border-radius: 9999px;
}

.woocommerce div.product div.summary span.custom-badge {
	position: static;
	display: inline-block;
	background-color: var(--color-background);
	margin-bottom: var(--spacing-xs);
}

/* Payment Methods
   -------------------------------------------------------------------------- */
#add_payment_method #payment {
	background-color: #fff;
	padding: var(--spacing-md);
	border-radius: var(--spacing-xs);
}

.woocommerce-checkout #payment {
	background-color: transparent;
	margin-top: var(--spacing-lg);
	border-radius: 0;
}
@media (min-width: 960px) {

	.woocommerce-checkout #payment {
		margin-top: var(--spacing-xl);
	}
}

#add_payment_method #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods {
	padding: 0;
	border-bottom: 0;
}

#add_payment_method #payment ul.payment_methods li,
.woocommerce-checkout #payment ul.payment_methods li {
	font-weight: normal;
	line-height: inherit;
}

#add_payment_method #payment ul.payment_methods li:not(.wc-saved-payment-methods li),
.woocommerce-checkout #payment ul.payment_methods li:not(.wc-saved-payment-methods li) {
	padding: var(--spacing-xs);
	margin-bottom: var(--spacing-xs);
	border: 1px solid rgba(var(--color-primary-rgb), .25);
	border-radius: var(--spacing-xs);
}
@media (min-width: 600px) {

	#add_payment_method #payment ul.payment_methods li:not(.wc-saved-payment-methods li),
	.woocommerce-checkout #payment ul.payment_methods li:not(.wc-saved-payment-methods li) {
		padding: var(--spacing-md);
	}
}

#add_payment_method #payment ul.payment_methods li:not(.wc-saved-payment-methods li):has(> input[name="payment_method"]:checked),
.woocommerce-checkout #payment ul.payment_methods li:not(.wc-saved-payment-methods li):has(> input[name="payment_method"]:checked) {
	border-color: var(--color-primary);
}

#add_payment_method #payment ul.payment_methods li:not(.wc-saved-payment-methods li):last-of-type,
.woocommerce-checkout #payment ul.payment_methods li:not(.wc-saved-payment-methods li):last-of-type {
	margin-bottom: 0;
}

#add_payment_method #payment ul.payment_methods li:not(.wc-saved-payment-methods li) > input,
.woocommerce-checkout #payment ul.payment_methods li:not(.wc-saved-payment-methods li) > input {
	display: none;
}

#add_payment_method #payment ul.payment_methods li:not(.wc-saved-payment-methods li) > label,
.woocommerce-checkout #payment ul.payment_methods li:not(.wc-saved-payment-methods li) > label {
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-transform: uppercase;
	cursor: pointer;
}

#add_payment_method #payment ul.payment_methods li:not(.wc-saved-payment-methods li) img,
.woocommerce-checkout #payment ul.payment_methods li:not(.wc-saved-payment-methods li) img {
	margin: 0;
}

#add_payment_method #payment ul.payment_methods li.payment_method_stripe img,
.woocommerce-checkout #payment ul.payment_methods li.payment_method_stripe img {
	display: none;
}

#add_payment_method #payment ul.payment_methods li.payment_method_stripe > label:after,
.woocommerce-checkout #payment ul.payment_methods li.payment_method_stripe > label:after {
	content: '\e924';
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
}

/**
 * Payment Box
 */
#add_payment_method #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box {
	background-color: transparent;
	color: inherit;
	font-size: inherit;
	line-height: inherit;
	padding: 0;
	margin: var(--spacing-md) 0 0 !important;
	border-radius: 0;
}

#add_payment_method #payment div.payment_box:before,
.woocommerce-checkout #payment div.payment_box:before {
	content: none;
}

#add_payment_method #payment div.payment_box .testmode-info,
.woocommerce-checkout #payment div.payment_box .testmode-info {
	display: none;
}

#add_payment_method #payment div.payment_box fieldset,
.woocommerce-checkout #payment div.payment_box fieldset {
	border: 0;
}

.woocommerce-checkout #payment div.payment_box p.form-row {
	display: flex;
	align-items: center;
	gap: var(--spacing-xxxs);
	margin: var(--spacing-md) 0 0;
}

.woocommerce-checkout #payment div.payment_box p.form-row:before,
.woocommerce-checkout #payment div.payment_box p.form-row:after {
	content: none;
}

.woocommerce-checkout #payment div.payment_box p.form-row label {
	cursor: pointer;
}

/**
 * Saved Payment Methods
 */
.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods li.woocommerce-SavedPaymentMethods-new,
.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods li.woocommerce-SavedPaymentMethods-token {
	display: flex;
	align-items: center;
	gap: var(--spacing-xxxs);
	margin: 0 0 var(--spacing-xxxs);
	cursor: pointer;
}

.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods li.woocommerce-SavedPaymentMethods-new:has(input:checked) {
	margin: 0 0 var(--spacing-md);
}

.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods li.woocommerce-SavedPaymentMethods-new:last-of-type,
.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods li.woocommerce-SavedPaymentMethods-token:last-of-type {
	margin: 0;
}

.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods li.woocommerce-SavedPaymentMethods-new:before,
.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods li.woocommerce-SavedPaymentMethods-new:after,
.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods li.woocommerce-SavedPaymentMethods-token:before,
.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods li.woocommerce-SavedPaymentMethods-token:after {
	content: none;
}

.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods li.woocommerce-SavedPaymentMethods-new > input,
.woocommerce-checkout #payment div.payment_box .woocommerce-SavedPaymentMethods li.woocommerce-SavedPaymentMethods-token > input {
	width: var(--icons-size) !important;
}

/**
 * Place Order
 */
.woocommerce-checkout #payment div.place-order {
	display: grid;
	padding: 0;
	margin-top: var(--spacing-lg);
}
@media (min-width: 960px) {

	.woocommerce-checkout #payment div.place-order {
		margin-top: var(--spacing-xl);
	}
}

.woocommerce-checkout #payment div.place-order .woocommerce-terms-and-conditions-wrapper {
	order: 10;
}

.woocommerce-checkout #payment div.place-order .woocommerce-privacy-policy-text {
	margin-top: var(--spacing-xs);
	margin-bottom: 0;
}

.woocommerce-checkout #payment #place_order {
	width: 100%;
	float: none;
}

/**
 * reCAPTCHA
 */
#ppcp-recaptcha-v2-container {
	margin: 0 !important;
}

/* Products (Archives/Loops)
   -------------------------------------------------------------------------- */
.woocommerce .products ul,
.woocommerce ul.products {
	margin: 0;
}

/**
 * Columns
 */
.woocommerce ul.products[class*=columns-] li.product {
	width: 100%;
	margin: 0 0 var(--spacing-xs);
}

.woocommerce ul.products[class*=columns-] li.product:last-child {
	margin-bottom: 0;
}

/* 2 Columns */
/*@media (min-width: 600px) {

	.woocommerce ul.products.columns-2 li.product {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: var(--spacing-xs);
	}

	.woocommerce ul.products.columns-2 li.product .product-image-wrapper {
		margin-right: var(--spacing-xs);
	}

	.woocommerce ul.products.columns-2 li.product .product-info-wrapper {
		display: flex;
		flex-direction: column;
		gap: var(--spacing-md);
		padding: calc(var(--spacing-md) - var(--spacing-xs));
		padding-left: 0;
	}

	.woocommerce ul.products.columns-2 li.product .product-info-wrapper > .product-link-wrapper {
		display: flex;
		flex-direction: column;
		gap: var(--spacing-xs);
		height: 100%;
	}

	.woocommerce ul.products.columns-2 li.product .woocommerce-loop-product__title {
		margin-bottom: 0;
	}

	.woocommerce ul.products.columns-2 li.product .product-colour-variations {
		margin-top: auto;
	}

	.woocommerce ul.products.columns-2 li.product .button {
		width: fit-content;
		margin-top: auto;
	}
}
@media (min-width: 960px) and (max-width: 1279px), (min-width: 1440px) {

	.woocommerce ul.products.columns-2 li.product .woocommerce-loop-product__title {
		font-size: var(--font-size-xl);
		line-height: var(--line-height-title);
	}

	.woocommerce ul.products.columns-2 li.product .price {
		font-size: var(--font-size-md);
		letter-spacing: var(--letter-spacing);
	}

	.woocommerce ul.products.columns-2 li.product .product-colour-variations {
		font-size: inherit;
	}
}
@media (min-width: 1280px) {

	.woocommerce ul.products.columns-2 li.product {
		width: calc((100% - var(--spacing-xs)) / 2);
	}

	.woocommerce ul.products.columns-2 li.product:nth-child(2n) {
		float: right;
	}

	.woocommerce ul.products.columns-2 li.product:nth-last-child(-n+2) {
		margin-bottom: 0;
	}
}*/

/* 4 Columns */
@media (min-width: 960px) {

	.woocommerce ul.products.columns-4 li.product {
		width: calc((100% - (var(--spacing-xs) * 3)) / 4);
		margin: 0 var(--spacing-xs) var(--spacing-xs) 0;
	}

	.woocommerce ul.products.columns-4 li.last {
		margin-right: 0;
	}

	.woocommerce ul.products.columns-4 li.product:nth-last-child(-n+4) {
		margin-bottom: 0;
	}
}
@media (min-width: 600px) and (max-width: 959px) {

	.woocommerce ul.products.columns-4 li.product {
		width: calc((100% - var(--spacing-xs)) / 2);
	}

	.woocommerce ul.products.columns-4 li.product:nth-child(2n) {
		float: right;
	}

	.woocommerce ul.products.columns-4 li.product:nth-last-child(-n+2) {
		margin-bottom: 0;
	}
}

/**
 * Image
 */
.woocommerce ul.products li.product .product-image-wrapper {
	background-color: var(--color-placeholder);
	border-radius: var(--spacing-xs);
	overflow: hidden;
	position: relative;
}

.woocommerce ul.products li.product:not(.product-category) a img {
	aspect-ratio: 3 / 4;
	object-fit: cover;
	image-rendering: auto;
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	margin: 0;
	transition: opacity .3s;

	filter: drop-shadow(rgba(0, 0, 0, .25) -2px 16px 2px);
}

.woocommerce ul.products li.product:not(.product-category) a img.hover-image {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	pointer-events: none;
}

.woocommerce ul.products li.product:not(.product-category):has(.hover-image):hover a img {
	opacity: 0;
}

.woocommerce ul.products li.product:not(.product-category):has(.hover-image):hover a img.hover-image {
	opacity: 1;
}

/**
 * Info
 */
.woocommerce ul.products li.product .product-info-wrapper {
	margin-top: var(--spacing-xs);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: var(--font-size-md);
	padding: 0;
	margin-bottom: .25rem;
}

/* Price */
.woocommerce ul.products li.product .price {
	color: inherit;
	font-weight: normal;
	font-size: inherit;
	margin-bottom: 0;
}

.woocommerce ul.products li.product .price del {
	margin-right: .25rem;
	opacity: 1;
}

.woocommerce ul.products li.product .price ins {
	font-weight: normal;
	text-decoration: none;
}

/* Colour Variations */
.woocommerce ul.products li.product .product-colour-variations {
	display: grid;
	font-size: var(--font-size-xs);
	letter-spacing: var(--letter-spacing);
	margin-top: var(--spacing-xxs);
}

.woocommerce ul.products li.product .product-colour-variations .colour-count,
.woocommerce ul.products li.product .product-colour-variations .colour-swatches-wrapper {
	grid-column: 1;
	grid-row: 1;
}

.woocommerce ul.products li.product .product-colour-variations .colour-count {
	opacity: 1;
	transition: opacity .4s .2s;
}

.woocommerce ul.products li.product .product-colour-variations .colour-swatches-wrapper {
	display: flex;
	align-items: center;
	gap: var(--spacing-xxxs);
	opacity: 0;
	transition: opacity .2s;
}

.woocommerce ul.products li.product:has(.colour-swatches):hover .product-colour-variations .colour-count {
	opacity: 0;
	transition: opacity .2s;
}

.woocommerce ul.products li.product:hover .product-colour-variations .colour-swatches-wrapper {
	opacity: 1;
	transition: opacity .4s .2s;
}

.woocommerce ul.products li.product .product-colour-variations .colour-swatches {
	display: flex;
	gap: .25rem;
}

.woocommerce ul.products li.product .product-colour-variations .colour-swatches:before,
.woocommerce ul.products li.product .product-colour-variations .colour-swatches:after {
	content: none;
}

.woocommerce ul.products li.product .product-colour-variations .colour-swatch {
	width: var(--spacing-xs);
	height: var(--spacing-xs);
	border-radius: 50%;
}

.woocommerce ul.products li.product .button {
	display: none;
}

/* Categories (Archives/Loops)
   -------------------------------------------------------------------------- */
@media (max-width: 959px) {

	.woocommerce ul.products.columns-4 li.product-category {
		margin: 0 0 var(--spacing-md);
	}
}

.woocommerce ul.products li.product-category a img {
	margin: 0 0 var(--spacing-xs);
	border-radius: var(--spacing-xs);
}

.woocommerce ul.products li.product-category .woocommerce-loop-category__title {
	font-size: 1.5rem;
	text-transform: none;
	padding: 0;
}
@media (min-width: 960px) {

	.woocommerce ul.products li.product-category .woocommerce-loop-category__title {
		font-size: var(--font-size-lg);
	}
}

.woocommerce ul.products li.product-category .woocommerce-loop-category__title sup {
	font-size: .5em;
	top: -1em;
}

/* Shop & Category Pages
   -------------------------------------------------------------------------- */
.woocommerce .woocommerce-products-header__title {
	display: none;
}

.woocommerce .woocommerce-ordering-wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--spacing-md);
	margin-bottom: var(--spacing-md);
}
@media (min-width: 960px) {

	.woocommerce .woocommerce-ordering-wrapper {
		justify-content: flex-end;
	}
}

.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
	float: none;
	margin: 0;
}

.woocommerce .woocommerce-ordering {
	position: relative;
}

.woocommerce .woocommerce-ordering select {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	cursor: pointer;
}

.woocommerce .woocommerce-ordering span {
	display: flex;
	align-items: center;
	padding: var(--spacing-xxs) var(--spacing-xs) var(--spacing-xxs) var(--spacing-sm);
	border: 1px solid var(--color-primary);
	border-radius: 9999px;
}

.woocommerce .woocommerce-ordering span:after {
	content: '\e909';
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
	margin-left: var(--spacing-sm);
}

/* Product Page
   -------------------------------------------------------------------------- */
.woocommerce div.product p.price,
.woocommerce div.product .woocommerce-variation-description,
.woocommerce div.product .woocommerce-variation-price,
.woocommerce div.product form.cart div.quantity,
.woocommerce div.product a.added_to_cart,
.woocommerce div.product .product_meta,
.woocommerce div.product .woocommerce-tabs {
	display: none !important;
}

.woocommerce div.product div.summary {
	background-color: #fff;
	border-radius: var(--spacing-xs);
	overflow: hidden;
	padding: var(--spacing-md);
	margin-bottom: 0;
	float: none !important;
	width: 100% !important;
}
@media (min-width: 960px) {

	.woocommerce div.product div.summary {
		float: right !important;
		width: calc((100% - var(--spacing-xs)) / 2) !important;
	}
}

.woocommerce div.product .product_title {
	margin-bottom: var(--spacing-xs);
}

.woocommerce div.product .variation-price {
	margin-bottom: var(--spacing-lg);
}
@media (min-width: 960px) {

	.woocommerce div.product .variation-price {
		margin-bottom: var(--spacing-xl);
	}
}

.woocommerce div.product span.price {
	color: inherit;
	font-size: var(--font-size-md);
	letter-spacing: var(--letter-spacing);
}

.woocommerce div.product span.price del {
	margin-right: var(--spacing-xxxs);
	opacity: 1;
}

.woocommerce div.product span.price ins {
	font-weight: normal;
	text-decoration: none;
}

.woocommerce div.product .woocommerce-product-details__short-description {
	margin-bottom: var(--spacing-md);
}

.woocommerce div.product form.cart {
	margin-bottom: 0;
}

/**
 * Variation Swatches
 */
.woocommerce div.product form.cart .variations {
	margin-bottom: var(--spacing-lg);
}
@media (min-width: 960px) {

	.woocommerce div.product form.cart .variations {
		margin-bottom: var(--spacing-xl);
	}
}

.woocommerce div.product form.cart .variations tr {
	display: flex;
	flex-direction: column;
}

.woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td {
	line-height: inherit;
}

.woocommerce div.product form.cart .variations th {
	order: 2;
	font-weight: normal;
	text-align: left;
	margin-top: var(--spacing-xs);
}

.woocommerce div.product form.cart .variations label {
	display: none;
}

.woocommerce div.product form.cart .variations td {
	order: 1;
}

.woo-variation-swatches .variable-items-wrapper {
	display: flex;
	gap: var(--spacing-xxxs);
}

.woo-variation-swatches .variable-items-wrapper .variable-item {
	width: var(--spacing-md);
	height: var(--spacing-md);
	padding: .25rem;
	border: 1px solid transparent;
	border-radius: 50%;
	cursor: pointer;
	transition: border-color .3s;
}

.woo-variation-swatches .variable-items-wrapper .variable-item.selected,
.woo-variation-swatches .variable-items-wrapper .variable-item:hover,
.woo-variation-swatches .variable-items-wrapper .variable-item:focus {
	border-color: var(--color-primary) !important;
}

.woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-contents {
	display: flex;
	width: 100%;
	height: 100%;
}

.woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-span-color {
	width: 100%;
	height: 100%;
	border-radius: 50%;
}

.woocommerce div.product form.cart .reset_variations {
	display: none !important;
}

/**
 * Stock
 */
.woocommerce div.product p.stock {
	font-weight: bold;
	font-size: var(--font-size-xs);
	letter-spacing: var(--letter-spacing);
	margin-bottom: var(--spacing-xs);
}

.woocommerce div.product .stock,
.woocommerce div.product .out-of-stock {
	color: inherit;
}

/**
 * Buttons
 */
.woocommerce div.product form.cart .button {
	width: 100%;
}

.wp-block-button.actions {
	width: 100%;
	margin-top: var(--spacing-xs);
}

/**
 * Accordion
 */
.wp-block-woocommerce-accordion-item {
	border-top: 1px solid var(--color-primary);
	transition: grid-template-rows .6s var(--ease-out-expo) !important;
}

.wp-block-woocommerce-accordion-item:last-child {
	border-bottom: 1px solid var(--color-primary);
}

.wp-block-woocommerce-accordion-item .accordion-item__heading {
	font-weight: normal;
	text-transform: uppercase;
}

.wp-block-woocommerce-accordion-item .accordion-item__toggle {
	padding: var(--spacing-xs) 0 !important;
}

.wp-block-woocommerce-accordion-item .accordion-item__toggle-icon {
	width: var(--icons-size) !important;
	height: var(--icons-size) !important;
	transition: none !important;
}

.wp-block-woocommerce-accordion-item .accordion-item__toggle-icon:after {
	content: '\e925';
	font-family: 'steelyjam-icons';
	font-weight: normal;
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
	text-transform: none;
}

.wp-block-woocommerce-accordion-item.is-open .accordion-item__toggle-icon {
	transform: none !important;
}

.wp-block-woocommerce-accordion-item.is-open .accordion-item__toggle-icon:after {
	content: '\e919';
}

.wp-block-woocommerce-accordion-item .accordion-item__toggle-icon svg {
	display: none;
}

.wp-block-woocommerce-accordion-item .accordion-content__wrapper {
	padding: 0 0 var(--spacing-xs);
}

/**
 * Gallery
 */
.woo-variation-product-gallery {
	width: 100%;
	max-width: 100% !important;
	margin-bottom: var(--spacing-md);
}
@media (min-width: 960px) {

	.woo-variation-product-gallery {
		max-width: calc((100% - var(--spacing-xs)) / 2) !important;
		margin-bottom: 0;
	}
}

.woo-variation-gallery-wrapper .woo-variation-gallery-container {
	transition: opacity .3s;
}

.woo-variation-gallery-slider-wrapper {
	overflow: visible;
}

/* Arrows */
.woo-variation-gallery-slider-wrapper .wvg-slider-prev-arrow,
.woo-variation-gallery-slider-wrapper .wvg-slider-next-arrow {
	background-color: transparent;
	font-size: var(--icons-size);
	line-height: 1;
	top: auto;
	bottom: calc((var(--icons-size) + var(--spacing-xs) + 25px) * -1);
	width: var(--icons-size);
	height: var(--icons-size);
	margin-top: 0;
	opacity: 1;
	transition: none;
}

.woo-variation-gallery-slider-wrapper .wvg-slider-prev-arrow {
	left: 0;
}

.woo-variation-gallery-slider-wrapper .wvg-slider-next-arrow {
	right: 0;
}
@media (max-width: 959px) {

	.woo-variation-gallery-slider-wrapper .wvg-slider-prev-arrow,
	.woo-variation-gallery-slider-wrapper .wvg-slider-next-arrow {
		display: none !important;
	}
}

.woo-variation-gallery-slider-wrapper .wvg-slider-prev-arrow:hover,
.woo-variation-gallery-slider-wrapper .wvg-slider-next-arrow:hover {
	background-color: transparent;
}

.woo-variation-gallery-slider-wrapper .wvg-slider-prev-arrow:before,
.woo-variation-gallery-slider-wrapper .wvg-slider-next-arrow:before {
	color: var(--color-primary);
}

.dashicons {
	font-family: 'steelyjam-icons';
	font-weight: normal;
	letter-spacing: normal;
}

.dashicons-arrow-left-alt2:before {
	content: '\e903';
}

.dashicons-arrow-right-alt2:before {
	content: '\e902';
}

/* Thumbnails */
.slick-list {
	border-radius: var(--spacing-xs);
}

.slick-slide img {
	aspect-ratio: 1;
	object-fit: cover;
	image-rendering: auto;
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
}

@media (min-width: 960px) {

	.woo-variation-gallery-wrapper .woo-variation-gallery-thumbnail-slider:before,
	.woo-variation-gallery-wrapper .woo-variation-gallery-thumbnail-slider:after {
		margin: auto;
	}
}

@media (max-width: 959px) {

	.woo-variation-gallery-thumbnail-position-bottom-bottom .woo-variation-gallery-container .woo-variation-gallery-thumbnail-wrapper {
		width: calc(100% + (var(--spacing-xs) * 2));
		margin-left: calc(var(--spacing-xs) * -1);
	}
}

.woo-variation-gallery-thumbnail-position-bottom-bottom .woo-variation-gallery-container .woo-variation-gallery-thumbnail-slider:not(.slick-initialized) {
	width: 100%;
	margin: var(--spacing-xs) auto 0;
	display: flex;
	overflow-x: auto;
	touch-action: pan-x;
	scrollbar-width: none;
}
@media (max-width: 959px) {

	.woo-variation-gallery-thumbnail-position-bottom-bottom .woo-variation-gallery-container .woo-variation-gallery-thumbnail-slider:not(.slick-initialized) {
		padding: 0 var(--spacing-xs);
	}
}
@media (min-width: 960px) {

	.woo-variation-gallery-thumbnail-position-bottom-bottom .woo-variation-gallery-container .woo-variation-gallery-thumbnail-slider:not(.slick-initialized) {
		width: calc(100% - ((var(--icons-size) + var(--spacing-xs)) * 2));
	}
}

.woo-variation-gallery-thumbnail-position-bottom-bottom .woo-variation-gallery-container .woo-variation-gallery-thumbnail-slider:not(.slick-initialized) > div:not(:last-child) {
	margin-right: var(--spacing-xs);
}

.woo-variation-gallery-thumbnail-position-bottom-bottom .woo-variation-gallery-container [class*="woo-variation-gallery-thumbnail-columns-"]:not(.slick-initialized) > div {
	float: none;
	width: calc(var(--spacing-xl) + (.25rem * 2) + (1px * 2));
	flex: 0 0 auto;
}

.woo-variation-gallery-wrapper .wvg-gallery-thumbnail-image {
	padding: .25rem;
	border: 1px solid transparent;
	border-radius: var(--spacing-xxxs);
	opacity: 1;
	transition: border-color .3s;
}

.woo-variation-gallery-wrapper .wvg-gallery-thumbnail-image.current-thumbnail,
.woo-variation-gallery-wrapper .wvg-gallery-thumbnail-image:hover {
	border-color: var(--color-primary);
}

.woo-variation-gallery-wrapper .wvg-gallery-thumbnail-image img {
	border-radius: .25rem;
}

/* Loading */
.woo-variation-gallery-wrapper.loading-gallery:after {
	content: '\e917';
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
	background: none;
	top: calc(50% - (var(--icons-size) / 2));
	left: calc(50% - (var(--icons-size) / 2));
	width: var(--icons-size);
	height: var(--icons-size);
	animation: spin 2s linear infinite;
}

/**
 * Group
 */
.group-after-description {
	clear: both;
}

/* Cart Page
   -------------------------------------------------------------------------- */
.woocommerce .cart-collaterals {
	background-color: #fff;
	padding: var(--spacing-md);
	border-radius: var(--spacing-xs);
}
@media (max-width: 959px) {

	.woocommerce .cart-collaterals {
		margin-top: var(--spacing-md);
	}
}
@media (min-width: 960px) {

	.woocommerce .cart-collaterals {
		width: calc((100% - var(--spacing-md)) / 3);
		float: right;
	}

	.woocommerce-cart-form {
		width: calc((100% - var(--spacing-xxxs)) / 3 * 2);
		float: left;
	}
}

.woocommerce .cart-collaterals .cart_totals {
	width: 100%;
	float: none;
}

/**
 * Cart Items
 */
.woocommerce table.cart thead {
	display: none;
}

.woocommerce table.cart tr {
	display: grid;
}

.woocommerce table.cart tr.cart_item {
	grid-template-columns: var(--spacing-xxl) 1fr auto;
	grid-template-rows: auto 1fr;
	gap: var(--spacing-xs) var(--spacing-xs);
	background-color: #fff;
	padding: var(--spacing-xxxs);
	border-radius: var(--spacing-xs);
}
@media (min-width: 600px) {

	.woocommerce table.cart tr.cart_item {
		grid-template-columns: var(--spacing-xxxl) 1fr auto;
		gap: var(--spacing-xs) var(--spacing-md);
	}
}

.woocommerce table.cart tr.cart_item + tr.cart_item {
	margin-top: var(--spacing-xs);
}

.woocommerce table.cart td {
	padding: 0;
	border: 0;
}

.woocommerce table.cart td.product-price {
	display: none;
}

/* Thumbnail */
.woocommerce table.cart td.product-thumbnail {
	grid-column: 1;
	grid-row: 1 / span 2;
	display: block !important;
}

.woocommerce table.cart td.product-thumbnail a {
	display: flex;
	align-items: center;
	height: 100%;
	background-color: var(--color-placeholder);
	border-radius: var(--spacing-xxxs);
}

.woocommerce table.cart td.product-thumbnail img {
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	image-rendering: auto;
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
}

/* Name */
.woocommerce table.cart td.product-name {
	grid-column: 2;
	grid-row: 1;
	margin-top: calc(var(--spacing-xs) - var(--spacing-xxxs));
}

.woocommerce table.cart td.product-name a {
	text-transform: uppercase;
}
@media (min-width: 600px) {

	.woocommerce table.cart td.product-name {
		margin-top: calc(var(--spacing-md) - var(--spacing-xxxs));
	}

	.woocommerce table.cart td.product-name a {
		font-size: var(--font-size-md);
		line-height: var(--line-height-heading);
		letter-spacing: var(--letter-spacing);
	}
}

/* Custom */
.woocommerce table.cart tr.custom td.product-name:has(.close) {
	grid-column: 1 / span 3;
	grid-row: 1 / span 2;
	background-color: #fff;
	padding: calc(var(--spacing-xs) - var(--spacing-xxxs));
	padding-right: calc(var(--spacing-xs) - var(--spacing-xxxs) + var(--icons-size));
	margin-top: 0;
	z-index: 1;
	position: relative;
}
@media (min-width: 600px) {

	.woocommerce table.cart tr.custom td.product-name:has(.close) {
		padding: calc(var(--spacing-md) - var(--spacing-xxxs));
		padding-right: calc(var(--spacing-md) - var(--spacing-xxxs) + var(--icons-size));
	}
}

.woocommerce table.cart tr.custom td.product-name:has(.close) > a {
	display: none;
}

.woocommerce table.cart tr.custom .details-toggle:not(.close) {
	margin-top: var(--spacing-xxxs);
}

.woocommerce table.cart tr.custom .details-toggle:not(.close) span {
	text-decoration: underline;
	text-decoration-thickness: .05em;
	text-underline-offset: .15em;
	transition: text-decoration-color .3s;
	cursor: pointer;
}
@media (max-width: 599px) {

	.woocommerce table.cart tr.custom .details-toggle:not(.close) span {
		font-size: var(--font-size-xs);
		letter-spacing: var(--letter-spacing);
	}
}

.woocommerce table.cart tr.custom .details-toggle:not(.close) span:hover {
	text-decoration-thickness: .05em;
	text-decoration-color: transparent;
}

.woocommerce table.cart tr.custom .details-toggle.close {
	position: absolute;
	top: calc(var(--spacing-xs) - var(--spacing-xxxs));
	right: calc(var(--spacing-xs) - var(--spacing-xxxs));
}
@media (min-width: 600px) {

	.woocommerce table.cart tr.custom .details-toggle.close {
		top: calc(var(--spacing-md) - var(--spacing-xxxs));
		right: calc(var(--spacing-md) - var(--spacing-xxxs));
	}
}

.woocommerce table.cart tr.custom .details-toggle.close span {
	font-size: 0;
	display: block;
	width: var(--icons-size);
	height: var(--icons-size);
	cursor: pointer;
}

.woocommerce table.cart tr.custom .details-toggle.close span:before {
	content: '\e90d';
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
}

.woocommerce table.cart tr.custom td.product-name:has(.close) .variation {
	margin-top: 0;
}

.woocommerce table.cart tr.custom td.product-name:has(.close) .variation dt {
	display: block;
	font-weight: bold;
	margin-right: 0;
	float: none;
	clear: none;
}

.woocommerce table.cart tr.custom td.product-name:has(.close) .variation dd {
	margin-bottom: var(--spacing-xxs);
}

.woocommerce table.cart tr.custom td.product-name:has(.close) .variation dd:last-child {
	margin-bottom: var(--spacing-xxxs);
}
@media (min-width: 600px) {

	.woocommerce table.cart tr.custom td.product-name:has(.close) .variation dd {
		margin-bottom: var(--spacing-xs);
	}

	.woocommerce table.cart tr.custom td.product-name:has(.close) .variation dd:last-child {
		margin-bottom: 0;
	}
}

/* Variation */
.woocommerce table.cart td.product-name .variation {
	margin-top: var(--spacing-xxxs);
}
@media (max-width: 599px) {

	.woocommerce table.cart td.product-name .variation {
		font-size: var(--font-size-xs);
		letter-spacing: var(--letter-spacing);
	}
}

.woocommerce table.cart td.product-name .variation dt {
	display: none;
}

/* Quantity */
.woocommerce table.cart td.product-quantity {
	grid-column: 2;
	grid-row: 2;
	margin: auto 0 calc(var(--spacing-xs) - var(--spacing-xxxs));
}
@media (min-width: 600px) {

	.woocommerce table.cart td.product-quantity {
		margin: auto 0 calc(var(--spacing-md) - var(--spacing-xxxs));
	}
}

.woocommerce table.cart td.product-quantity .quantity {
	display: flex;
	align-items: center;
}

.woocommerce table.cart td.product-quantity .quantity .qty {
	background: none;
	width: var(--spacing-md);
	padding: 0;
	border: 0;
	outline: 0;
}

.woocommerce table.cart td.product-quantity .quantity input[type=number] {
	-moz-appearance: textfield;
}

.woocommerce table.cart td.product-quantity .quantity input[type=number]::-webkit-inner-spin-button,
.woocommerce table.cart td.product-quantity .quantity input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
}

.woocommerce table.cart td.product-quantity .quantity input[type=number][readonly] {
	cursor: default;
}

.woocommerce table.cart td.product-quantity .quantity .qty-btn {
	background: none;
	font-family: 'steelyjam-icons';
	font-size: 0;
	line-height: 1;
	letter-spacing: normal;
	padding: 0;
	border: 0;
	border-radius: 0;
	outline: 0;
}

.woocommerce table.cart td.product-quantity .quantity .qty-btn:disabled {
	opacity: .25;
	pointer-events: none;
}

.woocommerce table.cart td.product-quantity .quantity .qty-btn.qty-minus:before {
	content: '\e919';
	font-size: var(--icons-size);
}

.woocommerce table.cart td.product-quantity .quantity .qty-btn.qty-plus:before {
	content: '\e925';
	font-size: var(--icons-size);
}

/* Subtotal */
.woocommerce table.cart td.product-subtotal {
	grid-column: 3;
	grid-row: 1;
	text-transform: uppercase;
	margin: calc(var(--spacing-xs) - var(--spacing-xxxs)) calc(var(--spacing-xs) - var(--spacing-xxxs)) 0 0;
}
@media (min-width: 600px) {

	.woocommerce table.cart td.product-subtotal {
		font-size: var(--font-size-md);
		line-height: var(--line-height-heading);
		letter-spacing: var(--letter-spacing);
		margin: calc(var(--spacing-md) - var(--spacing-xxxs)) calc(var(--spacing-md) - var(--spacing-xxxs)) 0 0;
	}
}

/* Remove */
.woocommerce table.cart td.product-remove {
	grid-column: 3;
	grid-row: 2;
	margin: auto calc(var(--spacing-xs) - var(--spacing-xxxs)) calc(var(--spacing-xs) - var(--spacing-xxxs)) auto;
}
@media (min-width: 600px) {

	.woocommerce table.cart td.product-remove {
		margin: auto calc(var(--spacing-md) - var(--spacing-xxxs)) calc(var(--spacing-md) - var(--spacing-xxxs)) auto;
	}
}

/**
 * Update Cart
 */
.woocommerce table.cart td.actions {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: var(--spacing-md) 0 0;
}
@media (max-width: 959px) {

	.woocommerce table.cart td.actions {
		flex-direction: column-reverse;
		gap: var(--spacing-md);
	}
}

.woocommerce table.cart td.actions .button:disabled {
	display: none !important;
}
@media (max-width: 959px) {

	.woocommerce table.cart td.actions .button[name="update_cart"] {
		margin-top: calc((var(--spacing-md) * -1) + var(--spacing-xs));
	}
}

/**
 * Coupons
 */
.woocommerce table.cart td.actions .coupon {
	display: grid;
	grid-template-columns: 1fr auto;
	width: 100%;
	padding-bottom: 0 !important;
	float: none !important;
}
@media (min-width: 960px) {

	.woocommerce table.cart td.actions .coupon {
		width: 20rem;
	}
}

.woocommerce table.cart td.actions .coupon:before,
.woocommerce table.cart td.actions .coupon:after {
	content: none !important;
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
	background-color: #fff;
	line-height: var(--spacing-lg);
	letter-spacing: inherit;
	width: 100% !important;
	padding: 0 0 0 var(--spacing-sm);
	margin: 0;
	border: 1px solid transparent;
	border-right: 0;
	border-radius: 9999px 0 0 9999px;
	float: none;
}

.woocommerce-cart table.cart td.actions .coupon .input-text::placeholder,
.woocommerce-cart table.cart td.actions .coupon .input-text:focus::placeholder {
	color: var(--color-primary);
	opacity: .5;
}

.woocommerce-cart table.cart td.actions .coupon .input-text.has-error:focus {
	border-color: transparent;
}

.woocommerce table.cart td.actions .coupon .button {
	background-color: #fff;
	color: var(--color-primary);
	line-height: var(--spacing-lg);
	width: auto !important;
	padding: 0 var(--spacing-sm);
	border-color: transparent;
	border-left: 0;
	border-radius: 0 9999px 9999px 0;
	float: none !important;
}

.woocommerce-cart table.cart td.actions .coupon .coupon-error-notice {
	grid-column: 1 / span 2;
	color: var(--color-error) !important;
	font-size: var(--font-size-xs) !important;
	letter-spacing: var(--letter-spacing);
	width: 100% !important;
	margin-top: var(--spacing-xxxs);
	float: left;
}

/**
 * Order Summary
 */
.woocommerce-cart .cart-collaterals .cart_totals h2 {
	font-size: var(--font-size-lg);
	line-height: var(--line-height-heading);
	margin-bottom: var(--spacing-md);
}

.woocommerce-cart .wc-proceed-to-checkout {
	padding: 0;
	margin-top: var(--spacing-lg);
}
@media (min-width: 960px) {

	.woocommerce-cart .wc-proceed-to-checkout {
		margin-top: var(--spacing-xl);
	}
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	font-size: inherit;
	padding: var(--spacing-xs) var(--spacing-md);
	margin-bottom: 0;
}

.woocommerce-cart .wc-proceed-to-checkout .cart-checkout-notice {
	font-size: var(--font-size-xs);
	letter-spacing: var(--letter-spacing);
	margin-top: var(--spacing-xs);
}

/**
 * Express Checkout
 */
#wc-stripe-express-checkout-element {
	gap: var(--spacing-xs) !important;
	margin-top: var(--spacing-md) !important;
	margin-bottom: 0 !important;
}

/**
 * Empty
 */
.woocommerce-cart .wp-block-group.empty {
	display: none;
}

.woocommerce-cart:has(.wc-empty-cart-message) .wp-block-group.empty {
	display: block;
}

.woocommerce-cart:has(.wc-empty-cart-message) .cart-count {
	display: none;
}

.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce {
	margin-top: var(--spacing-lg);
}

@media (min-width: 960px) {
	.woocommerce-cart:not(:has(.wc-empty-cart-message)) .woocommerce {
		margin-top: var(--spacing-xl);
	}
}

.woocommerce-cart .wc-empty-cart-message,
.woocommerce-cart .return-to-shop {
	display: none;
}

/* Checkout Page
   -------------------------------------------------------------------------- */
.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce {
	margin-top: var(--spacing-lg);
}
@media (min-width: 960px) {

	.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce {
		margin-top: var(--spacing-xl);
	}
}

.woocommerce form.checkout:after {
	content: '';
	display: table;
	clear: both;
}

.woocommerce .checkout-collaterals {
	background-color: #fff;
	padding: var(--spacing-md);
	border-radius: var(--spacing-xs);
	margin-top: var(--spacing-md);
}
@media (min-width: 960px) {

	.woocommerce .checkout-form {
		width: calc((100% - var(--spacing-xxxs)) / 3 * 2);
		float: left;
	}

	.woocommerce .checkout-collaterals {
		width: calc((100% - var(--spacing-md)) / 3);
		float: right;
		margin-top: 0;
	}
}

.woocommerce-checkout .woocommerce h3 {
	font-size: var(--font-size-lg);
	line-height: var(--line-height-heading);
	margin-bottom: var(--spacing-md);
}

/**
 * Login
 */
.woocommerce-form-login-wrapper {
	background-color: #fff;
	padding: var(--spacing-md);
	border-radius: var(--spacing-xs);
	margin-bottom: var(--spacing-xs);
}

.woocommerce-form-login-toggle .woocommerce-info {
	display: block;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 0;
}

.woocommerce-form-login-toggle .woocommerce-info:before {
	content: none;
}

.woocommerce-form-login-toggle .woocommerce-info a {
	white-space: nowrap;
	text-decoration: underline;
	text-decoration-thickness: .05em;
	text-underline-offset: .15em;
	transition: text-decoration-color .3s;
}

.woocommerce-form-login-toggle .woocommerce-info a:hover {
	text-decoration-thickness: .05em;
	text-decoration-color: transparent;
}

.woocommerce-checkout .woocommerce form.login {
	margin-top: var(--spacing-md) !important;
}

.woocommerce-checkout .woocommerce form.login p:not(.form-row):first-of-type {
	display: none;
}

/**
 * Customer Details
 */
.woocommerce .checkout-form .col2-set .col-1,
.woocommerce .checkout-form .col2-set .col-2 {
	flex-basis: 100%;
}

.woocommerce-checkout .woocommerce .woocommerce-account-fields,
.woocommerce-checkout .woocommerce .woocommerce-account-fields .create-account {
	margin-top: var(--spacing-md) !important;
}

.woocommerce-checkout .woocommerce .woocommerce-shipping-fields h3 {
	font: inherit;
	text-transform: none;
	overflow-wrap: normal;
	margin-bottom: 0;
	float: none !important;
}

.woocommerce-checkout .checkout .shipping_address {
	margin-top: var(--spacing-md) !important;
}

.woocommerce-checkout .woocommerce .woocommerce-additional-fields {
	display: none;
}

/**
 * Coupons
 */
.woocommerce-checkout .woocommerce .woocommerce-form-coupon-toggle,
.woocommerce-checkout .woocommerce .woocommerce-form-coupon {
	display: none;
}

/* Order Received Page
   -------------------------------------------------------------------------- */
.woocommerce-thankyou-order-received {
	font-size: 1.5rem;
	line-height: var(--line-height-heading);
	letter-spacing: var(--letter-spacing);
}
@media (min-width: 960px) {

	.woocommerce-thankyou-order-received {
		font-size: var(--font-size-lg);
	}
}

/**
 * Login
 */
.woocommerce-order-received .woocommerce form.login {
	background-color: #fff;
	padding: var(--spacing-md);
	border-radius: var(--spacing-xs);
}

/**
 * Overview
 */
.woocommerce ul.order_details {
	display: grid;
	gap: var(--spacing-xs);
	margin: var(--spacing-lg) 0;
}
@media (min-width: 960px) {

	.woocommerce ul.order_details {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		margin: var(--spacing-xl) 0;
	}
}

.woocommerce ul.order_details:before,
.woocommerce ul.order_details:after {
	content: none;
}

.woocommerce ul.order_details li {
	font-size: var(--font-size-md);
	line-height: var(--line-height-heading);
	letter-spacing: var(--letter-spacing);
	text-transform: uppercase;
	overflow-wrap: break-word;
	padding: var(--spacing-md);
	margin: 0;
	border: 1px solid var(--color-primary);
	border-radius: var(--spacing-xs);
	float: none;
}

.woocommerce ul.order_details li.email {
	display: none;
}

.woocommerce ul.order_details li:last-of-type {
	border: 1px solid var(--color-primary);
}

.woocommerce ul.order_details li strong {
	font-weight: normal;
	font-size: var(--font-size-sm);
	line-height: var(--line-height-body);
	text-transform: none;
	margin-top: var(--spacing-xs);
}

.woocommerce-order > p:nth-of-type(2) {
	display: none;
}

/**
 * Details
 */
.woocommerce .woocommerce-order-details {
	background-color: #fff;
	padding: var(--spacing-md);
	margin-bottom: var(--spacing-xs);
	border-radius: var(--spacing-xs);
}

.woocommerce .woocommerce-customer-details {
	margin-bottom: 0;
}

.woocommerce .woocommerce-customer-details:not(:has(.col2-set)) {
	background-color: #fff;
	padding: var(--spacing-md);
	border-radius: var(--spacing-xs);
}

.woocommerce .woocommerce-order-details h2,
.woocommerce .woocommerce-customer-details h2 {
	font-size: var(--font-size-lg);
	line-height: var(--line-height-heading);
	margin-bottom: var(--spacing-md);
}

/**
 * Address
 */
.woocommerce .woocommerce-customer-details address {
	padding: 0;
	border: 0;
	border-radius: 0;
}

.woocommerce .woocommerce-customer-details .woocommerce-customer-details--phone {
	padding-left: 0;
	margin-bottom: 0;
}

.woocommerce .woocommerce-customer-details .woocommerce-customer-details--phone:before {
	content: none;
}

.woocommerce .woocommerce-customer-details .woocommerce-customer-details--email {
	display: none;
}

/* My Account Page
   -------------------------------------------------------------------------- */
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme {
	margin-bottom: var(--spacing-xs);
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__submit {
	float: none;
	margin-right: 0;
}

/**
 * Lost Password
 */
.woocommerce-lost-password .woocommerce p:first-of-type {
	font-size: 1.5rem;
	line-height: var(--line-height-heading);
	letter-spacing: var(--letter-spacing);
}

.woocommerce-lost-password .woocommerce p:first-of-type:not(:last-child) {
	margin-bottom: var(--spacing-md);
}
@media (min-width: 960px) {

	.woocommerce-lost-password .woocommerce p:first-of-type {
		font-size: var(--font-size-lg);
	}
}

.woocommerce .lost_reset_password .form-row-last {
	float: left;
	clear: both;
}

/**
 * Navigation
 */
.woocommerce-account .woocommerce-MyAccount-navigation {
	width: calc(25% - (.25rem * 3));
}

.woocommerce-account .woocommerce-MyAccount-content {
	width: calc(75% - .25rem);
}
@media (max-width: 959px) {

	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		float: none;
		width: 100%;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		margin-bottom: var(--spacing-xl);
	}
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
	font-size: 1.5rem;
	line-height: var(--line-height-heading);
	letter-spacing: var(--letter-spacing);
	opacity: .5;
}
@media (min-width: 960px) {

	.woocommerce-account .woocommerce-MyAccount-navigation li a {
		font-size: var(--font-size-lg);
	}
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	opacity: 1;
}

/**
 * No Orders/Payment Methods
 */
.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	background-color: #fff;
	padding: var(--spacing-md);
	margin: 0;
	border: 0;
}

.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info:before {
	content: none;
}

.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info .button {
	background-color: transparent;
	color: var(--color-primary);
	margin-top: var(--spacing-md);
	float: none;
}

.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info .button:hover {
	background-color: var(--color-primary);
	color: var(--color-secondary);
}
@media (min-width: 960px) {

	.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info {
		font-size: var(--font-size-md);
		letter-spacing: var(--letter-spacing);
	}

	.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info .button {
		font-size: var(--font-size-sm);
	}
}

.woocommerce-account .woocommerce-MyAccount-content > .button {
	margin-top: var(--spacing-md);
}

/**
 * Dashboard
 */
.woocommerce-dashboard .woocommerce-MyAccount-content {
	background-color: #fff;
	padding: var(--spacing-md);
	border-radius: var(--spacing-xs);
}

.woocommerce-dashboard .woocommerce-MyAccount-content > p:first-of-type {
	text-transform: capitalize;
}
@media (min-width: 960px) {

	.woocommerce-dashboard .woocommerce-MyAccount-content > p {
		font-size: var(--font-size-md);
		letter-spacing: var(--letter-spacing);
	}
}

/**
 * Orders
 */
.woocommerce table.account-orders-table {
	font-size: inherit;
}

.woocommerce-view-order .woocommerce-MyAccount-content > p:first-of-type {
	background-color: #fff;
	max-width: none;
	padding: var(--spacing-md);
	margin-bottom: var(--spacing-xs);
	border-radius: var(--spacing-xs);
}
@media (min-width: 960px) {

	.woocommerce-view-order .woocommerce-MyAccount-content > p:first-of-type {
		font-size: var(--font-size-md);
		letter-spacing: var(--letter-spacing);
	}
}

.woocommerce-account .woocommerce-MyAccount-content mark {
	font-weight: normal;
}

.woocommerce-account .woocommerce-MyAccount-content mark.order-status {
	text-transform: lowercase;
}

.woocommerce-edit-address .woocommerce-MyAccount-content > p:first-of-type {
	display: none;
}

/**
 * Addresses
 */
.woocommerce-account .addresses .title {
	display: flex;
}

.woocommerce-account .addresses .title h2 {
	font-size: var(--font-size-lg);
	line-height: var(--line-height-heading);
}

.woocommerce-account .addresses .title .edit {
	margin-left: auto;
	float: none;
	font-size: 0;
}

.woocommerce-account .addresses .title .edit:before {
	content: '\e932';
	font-family: 'steelyjam-icons';
	font-size: var(--icons-size);
	line-height: 1;
	letter-spacing: normal;
}

.woocommerce-account .addresses address {
	font-style: normal;
}

/**
 * Edit
 */
.woocommerce-edit-address .woocommerce form,
.woocommerce-edit-account .woocommerce form {
	background-color: #fff;
	padding: var(--spacing-md);
	border-radius: var(--spacing-xs);
}

.woocommerce-edit-address .woocommerce form h2 {
	font-size: var(--font-size-lg);
	line-height: var(--line-height-heading);
	margin-bottom: var(--spacing-md);
}

.woocommerce-edit-address .woocommerce form button.button,
.woocommerce-edit-account .woocommerce form button.button {
	margin-top: var(--spacing-lg);
}
@media (min-width: 960px) {

	.woocommerce-edit-address .woocommerce form button.button,
	.woocommerce-edit-account .woocommerce form button.button {
		margin-top: var(--spacing-xl);
	}
}

.woocommerce-edit-account .woocommerce form #account_display_name_description {
	display: none;
}

.woocommerce-edit-account .woocommerce form fieldset {
	min-inline-size: auto;
	padding: 0;
	margin: var(--spacing-lg) 0 0;
	border: 0;
}
@media (min-width: 960px) {

	.woocommerce-edit-account .woocommerce form fieldset {
		margin: var(--spacing-xl) 0 0;
	}
}

.woocommerce-edit-account .woocommerce form fieldset legend {
	font-size: var(--font-size-lg);
	line-height: var(--line-height-heading);
	letter-spacing: var(--letter-spacing);
	text-transform: uppercase;
	margin-bottom: var(--spacing-md);
}

/**
 * Payment Methods
 */
#add_payment_method #payment div.form-row {
	padding: 0;
	margin-top: var(--spacing-lg);
}
@media (min-width: 960px) {

	#add_payment_method #payment div.form-row {
		margin-top: var(--spacing-xl);
	}
}

#add_payment_method #payment #place_order {
	margin-bottom: 0;
	float: none;
}
