/*
 * The trade store, restyled. Only presentation: prices, labels and rules come from WooCommerce,
 * Wholesale For WooCommerce and MSRP Pricing exactly as before.
 */

body.twohr.woocommerce-page .fl-page-content,
body.twohr.woocommerce .fl-page-content { background: var(--background-color-primary); }
body.twohr .woocommerce-breadcrumb { margin: 0 0 1rem; color: var(--text-color-secondary); font-size: var(--text-size-small); }
body.twohr .woocommerce-breadcrumb a { text-decoration: none; }
body.twohr .woocommerce-products-header__title.page-title { font-size: var(--heading-h1); margin: 0 0 1rem; }
body.twohr .term-description { max-width: 46rem; color: var(--text-color-secondary); }

/* Store and brand introductions */
body.twohr .twohr-store-intro { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.9fr); gap: 1.5rem 3rem; align-items: start; margin: 0 0 2.25rem; padding-bottom: 2rem; border-bottom: 1px solid var(--border-color); }
body.twohr .twohr-store-intro p { margin: 0 0 1rem; max-width: 40rem; }
body.twohr.twohr-visitor .twohr-store-intro { grid-template-columns: 1fr; }
body.twohr .twohr-brand-intro { display: grid; grid-template-columns: 5rem 1fr; gap: 1.25rem; align-items: center; margin: 0 0 2rem; padding-bottom: 1.75rem; border-bottom: 1px solid var(--border-color); }
body.twohr .twohr-brand-intro__logo { width: 5rem; height: 5rem; object-fit: contain; background: var(--color-white); border-radius: var(--radius); }
body.twohr .twohr-brand-intro p { margin: 0; max-width: 48rem; }
@media (max-width: 760px) { body.twohr .twohr-store-intro { grid-template-columns: 1fr; } }

/* Shop by brand */
body.twohr .twohr-brand-tiles { margin: 0 0 2.5rem; }
body.twohr .twohr-brand-tiles h2 { margin: 0 0 0.875rem; }
body.twohr .twohr-brand-tiles ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr)); gap: 0.875rem; }
body.twohr .twohr-brand-tiles a { display: grid; gap: 0.5rem; padding: 0.75rem; height: 100%; background: var(--color-paper); border: 1px solid var(--border-color); border-radius: var(--radius); text-decoration: none; font-weight: 700; line-height: 1.2; transition: border-color 0.2s ease; }
body.twohr .twohr-brand-tiles a:hover { border-color: var(--color-ink); }
body.twohr .twohr-brand-tiles img { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; background: var(--color-white); border-radius: var(--radius); }

/* Product and brand grids */
body.twohr .woocommerce ul.products { display: grid; grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); gap: 1.5rem 1.25rem; margin: 0 0 2rem; }
body.twohr .woocommerce ul.products::before, body.twohr .woocommerce ul.products::after { display: none; }
body.twohr .woocommerce ul.products li.product { float: none; width: auto; margin: 0; padding: 0 0 1rem; display: flex; flex-direction: column; background: var(--color-paper); border-radius: var(--radius); border: 1px solid var(--border-color); text-align: left; }
body.twohr .woocommerce ul.products li.product a img { margin: 0 0 0.75rem; aspect-ratio: 1; object-fit: contain; background: var(--color-white); border-radius: var(--radius) var(--radius) 0 0; }
body.twohr .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.twohr .woocommerce ul.products li.product .woocommerce-loop-category__title { padding: 0 1rem; font-size: var(--text-size-regular); font-weight: 700; letter-spacing: 0; line-height: 1.25; color: var(--text-color-primary); }
body.twohr .woocommerce ul.products li.product .woocommerce-loop-category__title mark { display: none; }
body.twohr .woocommerce ul.products li.product .price { display: block; padding: 0 1rem; margin: 0.375rem 0 0.75rem; color: var(--text-color-primary); font-weight: 700; font-size: var(--text-size-regular); }
body.twohr .woocommerce ul.products li.product .price del { color: var(--text-color-secondary); font-weight: 400; }
body.twohr .woocommerce ul.products li.product .price ins { text-decoration: none; }
body.twohr .woocommerce ul.products li.product .button { margin: auto 1rem 0; align-self: flex-start; }
body.twohr .woocommerce ul.products li.product-category { padding-bottom: 0.5rem; }
body.twohr .woocommerce ul.products li.product-category a { text-decoration: none; }
body.twohr .woocommerce ul.products li.product-category a:hover .woocommerce-loop-category__title { color: var(--text-color-accent); }
body.twohr .woocommerce-result-count { color: var(--text-color-secondary); font-size: var(--text-size-small); }
body.twohr .woocommerce-ordering select { min-height: 2.5rem; padding: 0 0.75rem; border: 1px solid var(--border-color); border-radius: var(--radius); background: var(--color-paper); font-family: var(--font-sans); }

/* Single product */
body.twohr.single-product div.product .product_title { font-size: var(--heading-h3); line-height: 1; margin: 0 0 1rem; }
body.twohr.single-product div.product .woocommerce_msrp { margin: 0 0 0.25rem; color: var(--text-color-secondary); font-size: var(--text-size-small); }
body.twohr.single-product div.product p.price,
body.twohr.single-product div.product span.price { color: var(--text-color-primary); font-size: 1.6rem; font-weight: 800; letter-spacing: -0.01em; margin: 0 0 1.25rem; }
body.twohr.single-product div.product p.price del { color: var(--text-color-secondary); font-weight: 400; font-size: 0.7em; }
body.twohr.single-product div.product p.price ins { text-decoration: none; }
body.twohr.single-product div.product .woocommerce-product-details__short-description { color: var(--text-color-primary); margin-bottom: 1.5rem; }
body.twohr.single-product div.product .woocommerce-product-gallery { background: var(--color-white); border-radius: var(--radius); }
body.twohr.single-product div.product form.cart { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 0.75rem; padding: 1.25rem; margin: 0 0 1.5rem; background: var(--color-paper); border: 1px solid var(--border-color); border-radius: var(--radius); }
body.twohr.single-product div.product form.cart.variations_form { display: block; }
body.twohr.single-product div.product form.cart .variations { margin: 0 0 1rem; border: 0; }
body.twohr.single-product div.product form.cart .variations th,
body.twohr.single-product div.product form.cart .variations td { display: block; padding: 0 0 0.375rem; border: 0; background: none; text-align: left; }
body.twohr.single-product div.product form.cart .variations label { font-weight: 700; }
body.twohr.single-product div.product form.cart .variations select { width: 100%; max-width: 22rem; min-height: 2.75rem; padding: 0 0.75rem; border: 2px solid var(--color-ink); border-radius: var(--radius); background: var(--color-white); font-family: var(--font-sans); font-size: var(--text-size-regular); }
body.twohr.single-product div.product form.cart .reset_variations { font-size: var(--text-size-small); }
body.twohr.single-product div.product form.cart .woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 0.75rem; }
body.twohr.single-product div.product .woocommerce-variation-price .price { font-size: 1.35rem; margin: 0 0 0.75rem; }
body.twohr .woocommerce .quantity .qty { width: 5rem; min-height: 2.75rem; padding: 0 0.5rem; border: 2px solid var(--color-ink); border-radius: var(--radius); background: var(--color-white); font-family: var(--font-sans); font-size: var(--text-size-regular); font-weight: 700; text-align: center; }
body.twohr.single-product div.product .product_meta { color: var(--text-color-secondary); font-size: var(--text-size-small); display: grid; gap: 0.25rem; }
body.twohr .woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; margin: 2rem 0 1.25rem; border-bottom: 2px solid var(--color-ink); }
body.twohr .woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
body.twohr .woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; padding: 0; border: 0; background: none; border-radius: 0; }
body.twohr .woocommerce div.product .woocommerce-tabs ul.tabs li::before, body.twohr .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
body.twohr .woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 0.625rem 1rem; font-weight: 700; color: var(--text-color-secondary); }
body.twohr .woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--text-color-primary); box-shadow: inset 0 -4px 0 var(--color-red); }
body.twohr .woocommerce div.product .woocommerce-tabs .panel { max-width: 48rem; }
body.twohr .woocommerce div.product .woocommerce-tabs .panel h2 { font-size: var(--heading-h4); margin: 0 0 1rem; }
body.twohr .related.products > h2, body.twohr .upsells.products > h2 { font-size: var(--heading-h3); margin: 2.5rem 0 1.25rem; }

/* Tables: cart, checkout review, orders */
body.twohr .woocommerce table.shop_table { border: 0; border-radius: 0; border-collapse: collapse; background: var(--color-paper); }
body.twohr .woocommerce table.shop_table th { font-weight: 700; color: var(--text-color-secondary); font-size: var(--text-size-small); text-transform: none; border-bottom: 2px solid var(--color-ink); }
body.twohr .woocommerce table.shop_table td { border-top: 1px solid var(--border-color); padding: 0.875rem 0.75rem; }
body.twohr .woocommerce table.shop_table td.product-name a { font-weight: 700; text-decoration: none; }
body.twohr .woocommerce table.cart img { width: 4rem; background: var(--color-white); border-radius: var(--radius); }
body.twohr .woocommerce a.remove { color: var(--color-red) !important; }
body.twohr .woocommerce a.remove:hover { background: var(--color-red); color: var(--color-white) !important; }
body.twohr .woocommerce .cart-collaterals .cart_totals h2, body.twohr .woocommerce-checkout h3 { font-size: var(--heading-h4); margin: 0 0 1rem; }
body.twohr .woocommerce .order-total .amount { font-size: 1.25rem; }

/* Forms: checkout, login, register, account details */
body.twohr .woocommerce form .form-row label { font-weight: 600; margin-bottom: 0.25rem; }
body.twohr .woocommerce form .form-row input.input-text,
body.twohr .woocommerce form .form-row textarea,
body.twohr .woocommerce form .form-row select,
body.twohr .woocommerce-page form .form-row input.input-text,
body.twohr .select2-container--default .select2-selection--single {
	min-height: 2.75rem;
	padding: 0.5rem 0.75rem;
	border: 1px solid rgba(35, 31, 28, 0.35);
	border-radius: var(--radius);
	background: var(--color-white);
	font-family: var(--font-sans);
	font-size: var(--text-size-regular);
	box-shadow: none;
}
body.twohr .woocommerce form .form-row input.input-text:focus,
body.twohr .woocommerce form .form-row textarea:focus { border-color: var(--color-ink); outline: 3px solid rgba(199, 41, 19, 0.25); outline-offset: 0; }
body.twohr .woocommerce form.login, body.twohr .woocommerce form.register, body.twohr .woocommerce form.checkout_coupon {
	padding: 1.5rem; margin: 0 0 1.5rem; border: 1px solid var(--border-color); border-radius: var(--radius); background: var(--color-paper);
}
body.twohr .woocommerce-account .u-columns h2 { font-size: var(--heading-h3); margin: 0 0 1rem; }
body.twohr #payment { background: var(--color-paper) !important; border-radius: var(--radius); }

/* My Account */
body.twohr .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0 0 2rem; padding: 0; border-top: 2px solid var(--color-ink); }
body.twohr .woocommerce-MyAccount-navigation li a { display: block; padding: 0.625rem 0; border-bottom: 1px solid var(--border-color); text-decoration: none; font-weight: 600; }
body.twohr .woocommerce-MyAccount-navigation li.is-active a { color: var(--text-color-accent); }

/* Notices */
body.twohr .woocommerce-message, body.twohr .woocommerce-info, body.twohr .woocommerce-error {
	border: 0; border-left: 4px solid var(--color-ink); border-radius: var(--radius); background: var(--color-paper); color: var(--text-color-primary); padding: 1rem 1.25rem 1rem 3rem;
}
body.twohr .woocommerce-message { border-left-color: #3b7a3a; }
body.twohr .woocommerce-error { border-left-color: var(--color-red); }
body.twohr .woocommerce-message::before, body.twohr .woocommerce-info::before { color: var(--color-ink); }
body.twohr .woocommerce-message .button { float: right; margin-left: 1rem; }
body.twohr .woocommerce span.onsale { min-height: 0; min-width: 0; padding: 0.25rem 0.625rem; border-radius: 999px; background: var(--color-red); line-height: 1.4; font-weight: 700; }
