/* Evermore — cart, checkout and account (WooCommerce markup inside Elementor pages). */

.emc-commerce {
	--theme-palette-color-1: #1E3329; --theme-palette-color-2: #2A4437;
	--theme-button-background-initial-color: #1E3329; --theme-button-background-hover-color: #2A4437;
	--theme-button-text-initial-color: #fff; --theme-button-text-hover-color: #fff;
	--theme-button-border-radius: 0px; --theme-button-min-height: 58px;
	--theme-form-field-border-radius: 0px; --theme-form-field-height: 52px;
	--theme-form-field-border-initial-color: rgba(28,36,32,.35); --theme-form-field-border-focus-color: #1E3329;
	--theme-form-field-background-initial-color: #F7F5F1; --theme-form-field-background-focus-color: #fff;
	--theme-link-initial-color: #1E3329; --theme-link-hover-color: #85602F;
	--theme-text-color: #1C2420; --theme-headings-color: #1E3329; --theme-border-color: rgba(28,36,32,.12);
	color: #1C2420; font-family: "DM Sans", sans-serif;
}

/* Headings + labels */
.emc-commerce h2, .emc-commerce h3, .emc-commerce .cart_totals h2, .emc-commerce #order_review_heading, .emc-commerce .woocommerce-billing-fields h3,
.emc-commerce .woocommerce-additional-fields h3, .emc-commerce .woocommerce-column__title, .emc-commerce .woocommerce-order-details__title {
	font: 700 22px/1.2 "Outfit", sans-serif; text-transform: uppercase; letter-spacing: .02em; color: #1E3329; margin: 0 0 20px;
}
.emc-commerce label, .emc-commerce th, .emc-commerce .product-name dl dt {
	font-family: "Outfit", sans-serif; font-weight: 600; font-size: 12px; letter-spacing: .14em; text-transform: uppercase;
}

/* Buttons */
.emc-commerce .button, .emc-commerce button.button, .emc-commerce #place_order, .emc-commerce .checkout-button, .emc-commerce .woocommerce-Button {
	min-height: 58px; padding: 0 32px; border: 0; border-radius: 0; background: #1E3329; color: #fff;
	font: 600 14px/1 "Outfit", sans-serif; letter-spacing: .14em; text-transform: uppercase; display: inline-flex; align-items: center; justify-content: center;
}
.emc-commerce .button:hover, .emc-commerce #place_order:hover, .emc-commerce .checkout-button:hover { background: #2A4437; color: #fff; }
.emc-commerce .button:disabled, .emc-commerce .button.disabled { background: #E8E4DC; color: #69645B; }
.emc-commerce .checkout-button, .emc-commerce #place_order { width: 100%; }

/* Fields */
.emc-commerce input.input-text, .emc-commerce select, .emc-commerce textarea, .emc-commerce .select2-selection {
	border-radius: 0; background: #F7F5F1; border: 1px solid rgba(28,36,32,.35); min-height: 52px; font-size: 16px;
}
.emc-commerce input.input-text:focus, .emc-commerce textarea:focus { background: #fff; border-color: #1E3329; outline: 2px solid transparent; box-shadow: 0 0 0 1px #1E3329; }

/* Cart table */
.emc-commerce table.shop_table { border: 0; border-collapse: collapse; }
.emc-commerce table.shop_table th, .emc-commerce table.shop_table td { border: 0; border-bottom: 1px solid rgba(28,36,32,.10); padding: 20px 12px; background: transparent; }
.emc-commerce table.shop_table thead th { color: #69645B; padding-top: 0; }
.emc-commerce .product-thumbnail img { width: 96px; height: 120px; object-fit: cover; object-position: center 25%; background: #E8E4DC; }
.emc-commerce td.product-name > a, .emc-commerce .product-name > a { font: 700 18px/1.25 "Outfit", sans-serif; text-transform: uppercase; color: #1C2420; text-decoration: none; }
.emc-commerce dl.variation { display: grid; grid-template-columns: max-content 1fr; gap: 4px 12px; margin: 10px 0 0; font-size: 14px; }
.emc-commerce dl.variation dt { margin: 0; color: #69645B; font-size: 11px; }
.emc-commerce dl.variation dd { margin: 0; }
.emc-commerce dl.variation dd p { margin: 0; }
.emc-commerce .product-remove a.remove { width: 44px; height: 44px; display: grid; place-items: center; color: #1C2420 !important; font-size: 22px; border-radius: 0; }
.emc-commerce .product-remove a.remove:hover { background: #E8E4DC; }
.emc-commerce .quantity .qty { min-height: 48px; width: 72px; border-radius: 0; background: #F7F5F1; }

/* Totals + order review panels */
.emc-commerce .cart_totals, .emc-commerce #order_review, .emc-commerce .woocommerce-order-overview {
	background: #F7F5F1; border: 1px solid rgba(28,36,32,.12); border-radius: 6px; padding: 28px;
}
.emc-commerce .order-total th, .emc-commerce .order-total td { font: 700 20px/1.2 "Outfit", sans-serif; color: #1E3329; }
.emc-commerce #payment { background: transparent; border-radius: 0; }
.emc-commerce #payment .payment_box { background: #E8E4DC; }

/* Notices */
.emc-commerce .woocommerce-message, .emc-commerce .woocommerce-info, .emc-commerce .woocommerce-error, .emc-commerce .wc-block-components-notice-banner {
	position: relative; border: 0; border-left: 3px solid #1E3329; border-radius: 0; background: #F7F5F1; color: #1C2420; padding: 18px 20px 18px 52px; font-size: 15px;
}
.emc-commerce .woocommerce-message::before, .emc-commerce .woocommerce-info::before, .emc-commerce .woocommerce-error::before { left: 20px; top: 21px; }
.emc-commerce .woocommerce-error { border-left-color: #9B2C2C; }
.emc-commerce .woocommerce-message .button { min-height: 44px; padding: 0 18px; font-size: 12px; }

/* Account */
.emc-commerce .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid rgba(28,36,32,.12); }
.emc-commerce .woocommerce-MyAccount-navigation li a { display: flex; align-items: center; min-height: 52px; border-bottom: 1px solid rgba(28,36,32,.12); font: 600 12px/1 "Outfit", sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #1C2420; text-decoration: none; }
.emc-commerce .woocommerce-MyAccount-navigation li.is-active a { color: #1E3329; box-shadow: inset 3px 0 0 #A57C45; padding-left: 14px; }
.emc-commerce .woocommerce-orders-table .button { min-height: 40px; padding: 0 16px; font-size: 12px; }
.emc-commerce mark { background: transparent; color: #1E3329; font-weight: 600; }

/* Account — Elementor My Account widget (logged-out login / register / lost password) */
.emc-commerce {
	--forms-fields-normal-color: #1C2420; --forms-fields-focus-color: #1C2420; --forms-fields-normal-background-color: #fff; --forms-fields-focus-background-color: #fff;
	--forms-fields-border-radius: 0; --forms-fields-padding: 14px 16px; --forms-buttons-border-radius: 0; --forms-buttons-padding: 0 32px; --forms-rows-gap: 20px;
	--forms-labels-color: #1C2420; --forms-label-spacing: 8px; --links-normal-color: #1E3329; --links-hover-color: #85602F; --general-text-color: #1C2420;
	--login-messages-color: #1C2420; --checkboxes-color: #1C2420; --typography-section-titles-color: #1E3329; --section-title-spacing: 20px;
	--sections-background-color: #F7F5F1; --sections-border-color: rgba(28,36,32,.12); --sections-border-radius: 6px; --sections-padding: 32px;
	--tables-buttons-border-color: #1E3329; --tables-button-normal-text-color: #1E3329; --tables-button-hover-text-color: #85602F; --tables-button-border-radius: 0;
}
.emc-commerce .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce h2 { font: 700 22px/1.2 "Outfit", sans-serif; letter-spacing: .02em; text-transform: uppercase; color: #1E3329; margin-bottom: 20px; }
.emc-commerce .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce :is(.login, .register, .lost_reset_password) { padding: 32px; }
.emc-commerce .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce :is(.login, .register, .lost_reset_password) p:not([class]), .emc-commerce .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce :is(.login, .register) a { font-size: 15px; line-height: 1.6; color: #1C2420; }
.emc-commerce .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce form .button { background: #1E3329; color: #fff; min-height: 58px; padding: 0 32px; font: 600 14px/1 "Outfit", sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.emc-commerce .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce form .button:hover { background: #2A4437; color: #fff; }
.emc-commerce .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce input.input-text { border: 1px solid rgba(28,36,32,.35); min-height: 52px; background: #fff; }
.emc-commerce .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .login .form-row:has(.woocommerce-form-login__rememberme) { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.emc-commerce .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: 10px; margin: 0; text-transform: none; letter-spacing: 0; font-family: "DM Sans", sans-serif; font-size: 15px; font-weight: 400; }
.emc-commerce .woocommerce-form-login__rememberme input { width: 18px; height: 18px; margin: 0; accent-color: #1E3329; }
@media (min-width: 1024px) {
	.emc-commerce .u-columns.col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start; }
	.emc-commerce .u-columns.col2-set::before, .emc-commerce .u-columns.col2-set::after { content: none; }
	.emc-commerce .u-columns.col2-set > .u-column1, .emc-commerce .u-columns.col2-set > .u-column2 { width: auto; float: none; max-width: none; }
}

@media (max-width: 767px) {
	.emc-commerce .cart_totals, .emc-commerce #order_review { padding: 20px; }
	.emc-commerce .product-thumbnail img { width: 72px; height: 90px; }
}
