﻿/* WooCommerce presentation layer for the existing Arhan design system. */

body.arhan-site.woocommerce-page .site-main,
body.arhan-site.woocommerce-cart .site-main,
body.arhan-site.woocommerce-checkout .site-main,
body.arhan-site.woocommerce-account .site-main {
	width: 100%;
	max-width: var(--container);
	margin: 0 auto;
	padding: calc(var(--header-h) + 48px) var(--gutter) 96px;
}

body.arhan-site.woocommerce-page .site-main {
	min-height: 60vh;
}

body.arhan-site .woocommerce-breadcrumb {
	margin: 0 0 var(--s5);
	font-family: var(--font-body);
	font-size: var(--fs-micro);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--tx-dark-2);
}

body.arhan-site .woocommerce-breadcrumb a {
	color: var(--gold);
	text-decoration: none;
}

body.arhan-site .woocommerce-products-header {
	padding-bottom: var(--s7);
	margin-bottom: var(--s8);
	border-bottom: 1px solid var(--line-dark-2);
}

body.arhan-site .woocommerce-products-header h1,
body.arhan-site.woocommerce div.product .product_title,
body.arhan-site.woocommerce-cart h1,
body.arhan-site.woocommerce-checkout h1,
body.arhan-site.woocommerce-account h1 {
	font-family: var(--font-display);
	font-weight: 500;
	line-height: 1.05;
	color: var(--tx-dark-1);
	font-size: clamp(2.45rem, 5vw, 4.5rem);
}

body.arhan-site .woocommerce-result-count {
	font-family: var(--font-body);
	font-size: var(--fs-micro);
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--tx-dark-2);
}

body.arhan-site .woocommerce-ordering select,
body.arhan-site.woocommerce select {
	min-height: 44px;
	padding: 0 38px 0 14px;
	border: 1px solid var(--line-dark-2);
	border-radius: var(--r1);
	background: var(--ink-2);
	color: var(--tx-dark-1);
	font-family: var(--font-body);
	font-size: var(--fs-micro);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

body.arhan-site.woocommerce .woocommerce-ordering {
	margin: 0 0 var(--s6);
}

body.arhan-site.woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 44px 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.arhan-site.woocommerce ul.products::before,
body.arhan-site.woocommerce ul.products::after {
	display: none;
}

body.arhan-site.woocommerce ul.products li.product {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 0 18px;
	border-bottom: 1px solid var(--line-dark-2);
	float: none !important;
	clear: none !important;
	text-align: left;
}

body.arhan-site.woocommerce ul.products li.product a img {
	display: block;
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	background: var(--paper-2);
	margin: 0 0 18px;
	transition: transform var(--t-base) var(--ease-out);
}

body.arhan-site.woocommerce ul.products li.product:hover a img {
	transform: scale(1.015);
}

body.arhan-site.woocommerce ul.products li.product .woocommerce-loop-product__title {
	padding: 0;
	font-family: var(--font-body);
	font-size: var(--fs-body);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.4;
	color: var(--tx-dark-1);
}

body.arhan-site.woocommerce ul.products li.product .price {
	color: var(--gold);
	font-family: var(--font-body);
	font-size: var(--fs-small);
}

body.arhan-site.woocommerce ul.products li.product .button,
body.arhan-site.woocommerce div.product form.cart button,
body.arhan-site.woocommerce #respond input#submit,
body.arhan-site.woocommerce a.button,
body.arhan-site.woocommerce button.button,
body.arhan-site.woocommerce input.button {
	min-height: 46px;
	padding: 0 20px;
	border: 1px solid var(--gold);
	border-radius: var(--r1);
	background: transparent;
	color: var(--gold);
	font-family: var(--font-body);
	font-size: var(--fs-micro);
	font-weight: 500;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	transition: background var(--t-fast) var(--ease-out), color var(--t-fast) var(--ease-out);
}

body.arhan-site.woocommerce a.button:hover,
body.arhan-site.woocommerce button.button:hover,
body.arhan-site.woocommerce input.button:hover,
body.arhan-site.woocommerce ul.products li.product .button:hover,
body.arhan-site.woocommerce div.product form.cart button:hover {
	background: var(--gold);
	color: var(--ink);
}

body.arhan-site.woocommerce div.product {
	display: grid;
	grid-template-columns: minmax(0, 1.12fr) minmax(300px, 0.88fr);
	column-gap: clamp(36px, 6vw, 88px);
	row-gap: 36px;
	align-items: start;
}

body.arhan-site.woocommerce div.product div.images,
body.arhan-site.woocommerce div.product div.summary {
	float: none;
	width: 100% !important;
	margin: 0;
}

body.arhan-site.woocommerce div.product div.images .woocommerce-product-gallery__image img {
	display: block;
	width: 100%;
	object-fit: cover;
	background: var(--paper-2);
}

body.arhan-site.woocommerce div.product .summary {
	padding-top: 4px;
}

body.arhan-site.woocommerce div.product .product_title {
	margin: 0 0 12px;
}

body.arhan-site.woocommerce div.product p.price,
body.arhan-site.woocommerce div.product span.price {
	margin: 0 0 26px;
	color: var(--gold);
	font-family: var(--font-body);
	font-size: var(--fs-h4);
	font-weight: 400;
}

body.arhan-site.woocommerce div.product form.cart {
	margin: 0 0 26px;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: stretch;
}

body.arhan-site.woocommerce div.product form.cart .variations {
	margin: 0 0 14px;
	width: 100%;
	border: 0;
}

body.arhan-site.woocommerce div.product form.cart .variations td,
body.arhan-site.woocommerce div.product form.cart .variations th {
	padding: 0 0 8px;
	border: 0;
	text-align: left;
	color: var(--tx-dark-1);
	font-family: var(--font-body);
}

body.arhan-site.woocommerce div.product form.cart .variations select {
	max-width: 100%;
	min-width: 220px;
}

body.arhan-site.woocommerce div.product form.cart .quantity {
	display: inline-flex;
}

body.arhan-site.woocommerce div.product form.cart .quantity .qty {
	width: 64px;
	height: 46px;
	border: 1px solid var(--line-dark-2);
	background: var(--ink-2);
	color: var(--tx-dark-1);
	text-align: center;
}

body.arhan-site.woocommerce div.product .woocommerce-tabs {
	grid-column: 1 / -1;
	margin-top: var(--s7);
	border-top: 1px solid var(--line-dark-2);
	padding-top: var(--s6);
}

body.arhan-site.woocommerce div.product .woocommerce-tabs ul.tabs {
	padding: 0;
	margin: 0 0 var(--s5);
	border: 0;
}

body.arhan-site.woocommerce div.product .woocommerce-tabs ul.tabs::before,
body.arhan-site.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
body.arhan-site.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
	display: none;
}

body.arhan-site.woocommerce div.product .woocommerce-tabs ul.tabs li {
	margin: 0 20px 0 0;
	padding: 0;
	border: 0;
	background: transparent;
}

body.arhan-site.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	padding: 8px 0;
	color: var(--tx-dark-2);
	font-family: var(--font-body);
	font-size: var(--fs-micro);
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

body.arhan-site.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: var(--gold);
}

body.arhan-site.woocommerce div.product .woocommerce-tabs .panel {
	margin: 0;
	padding: 0;
	color: var(--tx-dark-2);
}

body.arhan-site.woocommerce div.product .related.products {
	grid-column: 1 / -1;
	margin-top: var(--s8);
	padding-top: var(--s7);
	border-top: 1px solid var(--line-dark-2);
}

body.arhan-site.woocommerce div.product .related.products > h2 {
	font-family: var(--font-display);
	font-size: clamp(1.8rem, 3vw, 2.6rem);
	font-weight: 500;
	color: var(--tx-dark-1);
}

body.arhan-site.woocommerce .cart-empty,
body.arhan-site.woocommerce .return-to-shop {
	color: var(--tx-dark-1);
}

body.arhan-site.woocommerce table.shop_table,
body.arhan-site.woocommerce table.woocommerce-checkout-review-order-table {
	border: 1px solid var(--line-dark-2);
	border-radius: 0;
	background: transparent;
	color: var(--tx-dark-1);
}

body.arhan-site.woocommerce table.shop_table th,
body.arhan-site.woocommerce table.shop_table td {
	border-color: var(--line-dark-2);
	color: var(--tx-dark-1);
	font-family: var(--font-body);
}

body.arhan-site.woocommerce .cart_totals h2,
body.arhan-site.woocommerce .cross-sells > h2 {
	font-family: var(--font-display);
	font-weight: 500;
	color: var(--tx-dark-1);
}

body.arhan-site.woocommerce form .form-row input.input-text,
body.arhan-site.woocommerce form .form-row textarea,
body.arhan-site.woocommerce form .form-row select {
	min-height: 46px;
	border: 1px solid var(--line-dark-2);
	border-radius: 0;
	background: var(--ink-2);
	color: var(--tx-dark-1);
}

body.arhan-site.woocommerce form .form-row label {
	color: var(--tx-dark-2);
	font-family: var(--font-body);
	font-size: var(--fs-micro);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

body.arhan-site .woocommerce-info,
body.arhan-site .woocommerce-message,
body.arhan-site .woocommerce-error {
	border: 1px solid var(--line-dark-2);
	border-top: 2px solid var(--gold);
	background: var(--ink-2);
	color: var(--tx-dark-1);
	font-family: var(--font-body);
}

body.arhan-site .woocommerce-info::before,
body.arhan-site .woocommerce-message::before,
body.arhan-site .woocommerce-error::before {
	color: var(--gold);
}

body.arhan-site.woocommerce .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border-top: 1px solid var(--line-dark-2);
}

body.arhan-site.woocommerce .woocommerce-MyAccount-navigation li {
	border-bottom: 1px solid var(--line-dark-2);
}

body.arhan-site.woocommerce .woocommerce-MyAccount-navigation a {
	display: block;
	padding: 14px 0;
	color: var(--tx-dark-2);
	font-family: var(--font-body);
	font-size: var(--fs-micro);
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

body.arhan-site.woocommerce .woocommerce-MyAccount-navigation li.is-active a,
body.arhan-site.woocommerce .woocommerce-MyAccount-navigation a:hover {
	color: var(--gold);
}

@media (max-width: 1100px) {
	body.arhan-site.woocommerce ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	body.arhan-site.woocommerce div.product {
		grid-template-columns: 1fr;
	}

	body.arhan-site.woocommerce div.product .woocommerce-tabs,
	body.arhan-site.woocommerce div.product .related.products {
		grid-column: 1;
	}
}

@media (max-width: 780px) {
	body.arhan-site.woocommerce-page .site-main,
	body.arhan-site.woocommerce-cart .site-main,
	body.arhan-site.woocommerce-checkout .site-main,
	body.arhan-site.woocommerce-account .site-main {
		padding: calc(var(--header-h-mobile) + 28px) var(--gutter) 72px;
	}

	body.arhan-site.woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 30px 14px;
	}

	body.arhan-site.woocommerce div.product .product_title,
	body.arhan-site .woocommerce-products-header h1,
	body.arhan-site.woocommerce-cart h1,
	body.arhan-site.woocommerce-checkout h1,
	body.arhan-site.woocommerce-account h1 {
		font-size: clamp(2.2rem, 10vw, 3.2rem);
	}

	body.arhan-site.woocommerce div.product form.cart {
		flex-direction: column;
		align-items: stretch;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.arhan-site.woocommerce ul.products li.product a img {
		transition: none;
	}
}
