/*
Theme Name: Woven Troves
Theme URI: https://greenmindagency.com
Author: Green Mind Agency
Author URI: https://greenmindagency.com
Description: Custom WooCommerce and ACF Flexible Content theme for Woven Troves.
Version: 1.0.7
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 8.0
Text Domain: woventroves
*/

:root {
	--wt-black: #000000;
	--wt-dark: #2e1e1e;
	--wt-contact-dark: #111810;
	--wt-charcoal: #222626;
	--wt-lime: #b0a683;
	--wt-beige: #d4c39e;
	--wt-muted: #adadad;
	--wt-light: #e3dfc4;
	--wt-gray: #454545;
}

body {
	background-color: var(--wt-black);
	color: #ffffff;
}

header img.h-10 {
	display: block;
	height: 2.5rem !important;
	max-height: 2.5rem !important;
	width: auto !important;
	max-width: 11rem;
	object-fit: contain;
}

.bg-brand-black,
.hover\:bg-brand-black:hover {
	background-color: var(--wt-black);
}

.bg-brand-dark,
.hover\:bg-brand-dark:hover {
	background-color: var(--wt-dark);
}

.bg-brand-dark\/20 {
	background-color: rgb(46 30 30 / 0.2);
}

.bg-brand-dark\/30 {
	background-color: rgb(46 30 30 / 0.3);
}

.bg-brand-dark\/50 {
	background-color: rgb(46 30 30 / 0.5);
}

.bg-brand-dark\/80 {
	background-color: rgb(46 30 30 / 0.8);
}

.bg-brand-black\/60 {
	background-color: rgb(0 0 0 / 0.6);
}

.bg-brand-black\/90 {
	background-color: rgb(0 0 0 / 0.9);
}

.bg-brand-lime,
.hover\:bg-brand-lime:hover {
	background-color: var(--wt-lime);
}

.bg-brand-beige,
.hover\:bg-brand-beige:hover {
	background-color: var(--wt-beige);
}

.bg-brand-light,
.hover\:bg-brand-light:hover {
	background-color: var(--wt-light);
}

.text-brand-black,
.hover\:text-brand-black:hover {
	color: var(--wt-black);
}

.text-brand-light,
.hover\:text-brand-light:hover {
	color: var(--wt-light);
}

.text-brand-lime,
.hover\:text-brand-lime:hover {
	color: var(--wt-lime);
}

.text-brand-beige,
.hover\:text-brand-beige:hover {
	color: var(--wt-beige);
}

.text-brand-muted,
.hover\:text-brand-muted:hover {
	color: var(--wt-muted);
}

.border-brand-gray {
	border-color: var(--wt-gray);
}

.border-brand-lime\/20 {
	border-color: rgb(176 166 131 / 0.2);
}

.border-brand-lime\/30,
.hover\:border-brand-lime\/30:hover {
	border-color: rgb(176 166 131 / 0.3);
}

.border-brand-beige\/30 {
	border-color: rgb(212 195 158 / 0.3);
}

.focus\:border-brand-lime:focus {
	border-color: var(--wt-lime);
}

.focus\:border-brand-beige:focus {
	border-color: var(--wt-beige);
}

.focus\:ring-brand-lime:focus {
	--tw-ring-color: var(--wt-lime);
}

.focus\:ring-brand-beige:focus {
	--tw-ring-color: var(--wt-beige);
}

.woventroves-contact-page {
	background-color: var(--wt-black);
}

.woventroves-contact-page .woventroves-contact-card {
	background-color: rgb(46 30 30 / 0.5);
	border-radius: 1.5rem;
}

.woventroves-contact-page input,
.woventroves-contact-page select,
.woventroves-contact-page textarea {
	background-color: var(--wt-black);
	border-color: rgb(255 255 255 / 0.1);
	color: #ffffff;
}

.added_to_cart.wc-forward {
	display: none !important;
}

.add_to_cart_button {
	position: relative;
	overflow: hidden;
}

.add_to_cart_button.loading {
	opacity: 0.75;
	pointer-events: none;
}

.add_to_cart_button.added {
	background-color: var(--wt-light);
	box-shadow: 0 0 0 1px rgb(176 166 131 / 0.35), 0 0 24px rgb(176 166 131 / 0.2);
}

.add_to_cart_button.added::after {
	content: "Added";
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--wt-light);
	color: var(--wt-black);
}

.woventroves-page-content :where(.wc-block-cart, .wc-block-checkout, .woocommerce) {
	color: var(--wt-light);
}

.woventroves-page-content :where(input, select, textarea) {
	background-color: #f4f7fb;
	border-color: rgb(255 255 255 / 0.15);
	color: #111827;
}

.woventroves-page-content :where(button, .button, .wc-block-components-button) {
	background-color: var(--wt-lime);
	color: var(--wt-black);
	font-weight: 700;
}

.woventroves-single-cart form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	align-items: center;
	margin: 0;
}

.woventroves-single-cart .quantity input.qty {
	width: 5rem;
	height: 3.25rem;
	background-color: var(--wt-black);
	border: 1px solid rgb(255 255 255 / 0.12);
	border-radius: 0.75rem;
	color: #ffffff;
	text-align: center;
}

.woventroves-single-cart .single_add_to_cart_button {
	min-height: 3.25rem;
	background-color: var(--wt-lime) !important;
	border: 0;
	border-radius: 0.75rem;
	color: var(--wt-black) !important;
	font-weight: 800;
	letter-spacing: 0.12em;
	padding: 0 2rem;
	text-transform: uppercase;
}

.woventroves-single-cart .stock {
	width: 100%;
	color: var(--wt-lime);
	font-size: 0.875rem;
	margin: 0;
}

.woventroves-search-panel :where(form, .is-search-form) {
	display: flex;
	gap: 0.75rem;
	align-items: stretch;
}

.woventroves-search-panel :where(input[type="search"], input[name="s"], .is-search-input) {
	width: 100%;
	min-height: 3.5rem;
	background-color: var(--wt-black) !important;
	border: 1px solid rgb(255 255 255 / 0.12) !important;
	border-radius: 0.75rem;
	color: #ffffff !important;
	padding: 0 1rem;
	outline: none;
}

.woventroves-search-panel :where(input[type="search"]::placeholder, input[name="s"]::placeholder, .is-search-input::placeholder) {
	color: var(--wt-muted) !important;
	opacity: 1;
}

.woventroves-search-panel :where(button, input[type="submit"], .is-search-submit) {
	min-height: 3.5rem;
	background-color: var(--wt-lime) !important;
	border: 0 !important;
	border-radius: 0.75rem;
	color: var(--wt-black) !important;
	font-weight: 800;
	letter-spacing: 0.12em;
	padding: 0 1.5rem;
	text-transform: uppercase;
	white-space: nowrap;
}

.woventroves-search-close {
	width: 3.75rem;
	height: 3.75rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-color: rgb(46 30 30 / 0.82);
	border: 1px solid rgb(176 166 131 / 0.35);
	border-radius: 999px;
	box-shadow: 0 16px 35px rgb(0 0 0 / 0.35);
}

#woventroves-search-modal .woventroves-search-close {
	top: 1rem;
	right: 1rem;
}

@media (min-width: 768px) {
	#woventroves-search-modal .woventroves-search-close {
		top: 2rem;
		right: 2rem;
	}
}

.woventroves-search-close:hover,
.woventroves-search-close:focus-visible {
	background-color: var(--wt-lime);
	color: var(--wt-black);
	outline: none;
}

.woventroves-blog-masonry::after {
	clear: both;
	content: "";
	display: block;
}

.woventroves-blog-card {
	float: left;
}

body .woventroves-blog-content {
	color: var(--wt-muted);
}

body .woventroves-blog-content p,
body .woventroves-blog-content ul,
body .woventroves-blog-content ol {
	color: var(--wt-muted) !important;
	font-size: 1rem !important;
	line-height: 1.8 !important;
	margin: 0 0 1.5rem !important;
}

body .woventroves-blog-content h2,
body .woventroves-blog-content h3,
body .woventroves-blog-content h4 {
	color: var(--wt-light) !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	margin: 3rem 0 1.25rem !important;
}

body .woventroves-blog-content h2 {
	font-size: 2.75rem !important;
}

body .woventroves-blog-content h3 {
	font-size: 2rem !important;
}

body .woventroves-blog-content h4 {
	font-size: 1.5rem !important;
}

body .woventroves-blog-content blockquote {
	background-color: rgb(46 30 30 / 0.45) !important;
	border: 1px solid rgb(176 166 131 / 0.22) !important;
	border-left: 4px solid var(--wt-lime) !important;
	border-radius: 1rem !important;
	color: var(--wt-light) !important;
	font-size: 1.25rem !important;
	font-style: italic !important;
	line-height: 1.7 !important;
	margin: 2.5rem 0 !important;
	padding: 2rem 2rem 2rem 4.75rem !important;
	position: relative !important;
}

body .woventroves-blog-content blockquote::before {
	content: none !important;
}

body .woventroves-blog-content .woventroves-quote-icon {
	color: var(--wt-lime);
	font-size: 1.6rem;
	font-style: normal;
	left: 1.75rem;
	line-height: 1;
	position: absolute;
	top: 2rem;
}

body .woventroves-blog-content blockquote p {
	color: var(--wt-light) !important;
	margin-bottom: 0 !important;
}

@media (max-width: 640px) {
	body .woventroves-blog-content h2 {
		font-size: 2.15rem !important;
	}

	body .woventroves-blog-content h3 {
		font-size: 1.65rem !important;
	}

	body .woventroves-blog-content blockquote {
		padding: 1.5rem 1.5rem 1.5rem 3.75rem !important;
	}

	body .woventroves-blog-content .woventroves-quote-icon {
		left: 1.25rem;
		top: 1.6rem;
	}
}

body .woventroves-blog-content img,
body .woventroves-blog-content figure {
	border-radius: 1rem;
	max-width: 100%;
}

@media (max-width: 640px) {
	.woventroves-search-panel :where(form, .is-search-form) {
		flex-direction: column;
	}
}

.woventroves-page-content :where(.wc-block-components-text-input input, .wc-block-components-country-input input, .wc-block-components-state-input input, .wc-block-components-address-form input, .wc-block-components-address-form select, .wc-block-components-combobox input) {
	background-color: #f4f7fb !important;
	color: #111827 !important;
	caret-color: #111827;
}

.woventroves-page-content :where(.wc-block-components-text-input input::placeholder, .wc-block-components-country-input input::placeholder, .wc-block-components-state-input input::placeholder, .wc-block-components-address-form input::placeholder, .wc-block-components-combobox input::placeholder) {
	color: #4b5563 !important;
	opacity: 1;
}

.woventroves-page-content :where(.wc-block-components-text-input label, .wc-block-components-combobox label, .wc-block-components-country-input label, .wc-block-components-state-input label) {
	color: #374151 !important;
	opacity: 1;
}

.woventroves-page-content :where(.wc-block-components-validation-error, .wc-block-components-checkout-step__description, .wc-block-components-address-form__address_2-toggle) {
	color: var(--wt-light);
}

.woventroves-page-content :where(.wc-block-components-select .wc-block-components-select__select, .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input) {
	color: #111827 !important;
}
