

/* =========================================================
   THEME VARIABLES
   ========================================================= */

:root {
	--uf-dark-green:#0f4d2a;
	--uf-green:#3C8059;
	--uf-green-hover:#1e6d40;
	--uf-pale-green:#ECF4EE;
	--uf-off-white:#eeeeee;
	--uf-footer:#19251e;
	--uf-white:#ffffff;
	--uf-near-white:#fcfcfc;
	--uf-text:#333333;
	--uf-muted:#6b6b6b;
	--uf-border:#d7dfd9;
	--uf-error:#9f2d2d;
	--uf-error-bg:#f8eeee;
	--uf-success-bg:#eef6f0;
}


/* =========================================================
   GENERAL WOOCOMMERCE TYPOGRAPHY / LINKS
   ========================================================= */

.woocommerce,
.woocommerce-page,
.wc-block-components-root {
	font-family:"Poppins", sans-serif;
	color:var(--uf-text);
}

.woocommerce a,
.woocommerce-page a,
.wc-block-components-root a {
	color:var(--uf-green);
}

.woocommerce a:hover,
.woocommerce-page a:hover,
.wc-block-components-root a:hover {
	color:var(--uf-green-hover);
}

.woocommerce h1,
.woocommerce h2,
.woocommerce h3,
.woocommerce h4,
.woocommerce h5,
.woocommerce h6,
.wc-block-components-root h1,
.wc-block-components-root h2,
.wc-block-components-root h3,
.wc-block-components-root h4 {
	color:var(--uf-dark-green);
}

.woocommerce h2,
.woocommerce h3,
.woocommerce h4,
.wc-block-components-root h2,
.wc-block-components-root h3 {
	font-family:"Libre Bodoni", serif;
	font-weight:700;
}


/* =========================================================
   BUTTONS
   ========================================================= */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt,
.wc-block-components-button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
	background:var(--uf-green);
	color:var(--uf-white)!important;
	border:0;
	border-radius:0;
	box-shadow:none;
	font-family:"Poppins", sans-serif;
	font-size:15px;
	font-weight:600;
	line-height:1.3;
	padding:12px 20px;
	text-transform:uppercase;
	transition:background-color .2s ease, color .2s ease;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit.alt:hover,
.wc-block-components-button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
	background:var(--uf-green-hover);
	color:var(--uf-white)!important;
}

.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled] {
	background:#a8b7ad;
	color:var(--uf-white)!important;
	opacity:1;
}

.woocommerce .button.loading {
	opacity:.7;
}


/* =========================================================
   SHOP / PRODUCT ARCHIVES
   ========================================================= */

.woocommerce .woocommerce-result-count {
	color:var(--uf-muted);
	font-size:14px;
	margin:0 0 1.5em;
}

.woocommerce .woocommerce-ordering {
	margin:0 0 1.5em;
}

.woocommerce .woocommerce-ordering select {
	background:var(--uf-white);
	border:1px solid var(--uf-border);
	border-radius:0;
	color:var(--uf-text);
	font-family:"Poppins", sans-serif;
	padding:9px 34px 9px 12px;
}

.woocommerce ul.products {
	display:grid;
	grid-template-columns:repeat(4, minmax(0, 1fr));
	gap:30px;
	margin:0 0 2em;
	padding:0;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
	display:none;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	background:var(--uf-white);
	border:1px solid var(--uf-border);
	float:none;
	margin:0;
	padding:0 0 20px;
	position:relative;
	width:auto;
	transition:box-shadow .2s ease, transform .2s ease;
}

.woocommerce ul.products li.product:hover {
	box-shadow:0 6px 20px rgba(15,77,42,.10);
	transform:translateY(-2px);
}

.woocommerce ul.products li.product a img {
	background:var(--uf-pale-green);
	margin:0 0 18px;
	width:100%;
}

.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	color:var(--uf-dark-green);
	font-family:"Libre Bodoni", serif;
	font-size:21px;
	font-weight:700;
	line-height:1.25;
	margin:0;
	padding:0 18px 7px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title:hover {
	color:var(--uf-green);
}

.woocommerce ul.products li.product .price {
	color:var(--uf-green);
	font-family:"Poppins", sans-serif;
	font-size:16px;
	font-weight:600;
	margin:0;
	padding:0 18px 14px;
}

.woocommerce ul.products li.product .price del {
	color:var(--uf-muted);
	font-size:.9em;
	opacity:.7;
}

.woocommerce ul.products li.product .price ins {
	color:var(--uf-green);
	font-weight:700;
	text-decoration:none;
}

.woocommerce ul.products li.product .button {
	margin:0 18px;
}

.woocommerce ul.products li.product .added_to_cart {
	display:block;
	font-size:14px;
	font-weight:600;
	margin:10px 18px 0;
	text-transform:uppercase;
}

.woocommerce span.onsale {
	background:var(--uf-dark-green);
	border-radius:0;
	color:var(--uf-white);
	font-size:12px;
	font-weight:600;
	left:0;
	line-height:1;
	margin:0;
	min-height:auto;
	min-width:auto;
	padding:9px 12px;
	right:auto;
	text-transform:uppercase;
	top:0;
}


/* =========================================================
   PRODUCT CATEGORIES
   ========================================================= */

.woocommerce ul.products li.product-category {
	padding-bottom:0;
}

.woocommerce ul.products li.product-category .woocommerce-loop-category__title {
	background:var(--uf-dark-green);
	color:var(--uf-white);
	font-family:"Libre Bodoni", serif;
	font-size:20px;
	padding:14px 18px;
}

.woocommerce ul.products li.product-category .count {
	background:none;
	color:rgba(255,255,255,.75);
	font-family:"Poppins", sans-serif;
	font-size:13px;
}


/* =========================================================
   SINGLE PRODUCT
   ========================================================= */

.woocommerce div.product {
	margin-bottom:3em;
}

.woocommerce div.product div.images img {
	background:var(--uf-pale-green);
}

.woocommerce div.product div.images .flex-control-thumbs {
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin-top:10px;
}

.woocommerce div.product div.images .flex-control-thumbs li {
	float:none;
	width:calc(25% - 8px);
}

.woocommerce div.product div.images .flex-control-thumbs img {
	border:2px solid transparent;
	opacity:.7;
	transition:border-color .2s ease, opacity .2s ease;
}

.woocommerce div.product div.images .flex-control-thumbs img:hover,
.woocommerce div.product div.images .flex-control-thumbs img.flex-active {
	border-color:var(--uf-green);
	opacity:1;
}

.woocommerce div.product .product_title {
	color:var(--uf-dark-green);
	font-family:"Libre Bodoni", serif;
	font-size:38px;
	font-weight:700;
	line-height:1.15;
	margin-bottom:15px;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color:var(--uf-green);
	font-family:"Poppins", sans-serif;
	font-size:24px;
	font-weight:600;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
	color:var(--uf-muted);
	font-size:.8em;
	opacity:.7;
}

.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
	color:var(--uf-green);
	font-weight:700;
	text-decoration:none;
}

.woocommerce div.product .woocommerce-product-details__short-description {
	line-height:1.7;
	margin:20px 0;
}

.woocommerce div.product .stock {
	color:var(--uf-green);
	font-weight:600;
}

.woocommerce div.product .out-of-stock {
	color:var(--uf-error);
}

.woocommerce div.product form.cart {
	align-items:center;
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin:25px 0;
}

.woocommerce div.product form.cart::before,
.woocommerce div.product form.cart::after {
	display:none;
}

.woocommerce div.product form.cart .variations {
	flex:0 0 100%;
	margin-bottom:10px;
}

.woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td {
	display:block;
	padding:0 0 8px;
	text-align:left;
}

.woocommerce div.product form.cart .variations label {
	color:var(--uf-dark-green);
	font-size:14px;
	font-weight:600;
	text-transform:uppercase;
}

.woocommerce div.product form.cart .variations select {
	background:var(--uf-white);
	border:1px solid var(--uf-border);
	border-radius:0;
	font-family:"Poppins", sans-serif;
	max-width:100%;
	min-width:250px;
	padding:10px 12px;
}

.woocommerce div.product form.cart .reset_variations {
	display:inline-block;
	font-size:13px;
	margin-top:5px;
}

.woocommerce .quantity .qty {
	background:var(--uf-white);
	border:1px solid var(--uf-border);
	border-radius:0;
	height:45px;
	padding:8px;
	width:70px;
}

.woocommerce div.product .product_meta {
	border-top:1px solid var(--uf-border);
	color:var(--uf-muted);
	font-size:13px;
	line-height:1.8;
	margin-top:25px;
	padding-top:18px;
}

.woocommerce div.product .product_meta > span {
	display:block;
}

.woocommerce div.product .product_meta a {
	font-weight:600;
}


/* =========================================================
   PRODUCT TABS / DESCRIPTION / REVIEWS
   ========================================================= */

.woocommerce div.product .woocommerce-tabs {
	margin-top:45px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	border-bottom:2px solid var(--uf-dark-green);
	display:flex;
	flex-wrap:wrap;
	gap:0;
	margin:0 0 25px;
	overflow:visible;
	padding:0;
}

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

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background:var(--uf-off-white);
	border:0;
	border-radius:0;
	margin:0 3px 0 0;
	padding:0;
}

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

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	color:var(--uf-dark-green);
	display:block;
	font-family:"Poppins", sans-serif;
	font-size:13px;
	font-weight:600;
	padding:12px 18px;
	text-transform:uppercase;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	background:var(--uf-dark-green);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color:var(--uf-white);
}

.woocommerce div.product .woocommerce-tabs .panel {
	line-height:1.7;
	margin:0 0 35px;
}

.woocommerce div.product .woocommerce-tabs .panel > h2:first-child {
	font-size:30px;
	margin-bottom:18px;
}

.woocommerce #reviews #comments ol.commentlist {
	padding-left:0;
}

.woocommerce #reviews #comments ol.commentlist li {
	margin-bottom:25px;
}

.woocommerce #reviews #comments ol.commentlist li img.avatar {
	background:var(--uf-off-white);
	border:0;
	padding:3px;
}

.woocommerce #reviews #comments ol.commentlist li .comment-text {
	border:1px solid var(--uf-border);
	border-radius:0;
}

.woocommerce #reviews .star-rating,
.woocommerce .star-rating {
	color:var(--uf-green);
}

.woocommerce #review_form #respond textarea {
	min-height:150px;
}


/* =========================================================
   RELATED / UPSELL / CROSS-SELL PRODUCTS
   ========================================================= */

.woocommerce .related.products,
.woocommerce .upsells.products,
.woocommerce .cross-sells {
	margin-top:45px;
}

.woocommerce .related.products > h2,
.woocommerce .upsells.products > h2,
.woocommerce .cross-sells > h2 {
	color:var(--uf-dark-green);
	font-family:"Libre Bodoni", serif;
	font-size:32px;
	font-weight:700;
	margin-bottom:25px;
}


/* =========================================================
   FORMS
   ========================================================= */

.woocommerce form .form-row label,
.wc-block-components-text-input label,
.wc-block-components-combobox .wc-block-components-combobox-control label {
	color:var(--uf-dark-green);
	font-size:13px;
	font-weight:600;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .select2-container .select2-selection--single,
.wc-block-components-text-input input,
.wc-block-components-textarea,
.wc-block-components-combobox .wc-block-components-combobox-control input {
	background:var(--uf-white);
	border:1px solid var(--uf-border);
	border-radius:0;
	color:var(--uf-text);
	font-family:"Poppins", sans-serif;
	min-height:44px;
	padding:9px 12px;
}

.woocommerce form .form-row textarea {
	min-height:120px;
}

.woocommerce .select2-container .select2-selection--single {
	height:44px;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height:42px;
	padding-left:0;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow {
	height:42px;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus,
.wc-block-components-text-input input:focus,
.wc-block-components-textarea:focus,
.wc-block-components-combobox .wc-block-components-combobox-control input:focus {
	border-color:var(--uf-green);
	box-shadow:0 0 0 1px var(--uf-green);
	outline:none;
}


/* =========================================================
   NOTICES
   ========================================================= */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	background:var(--uf-pale-green);
	border:0;
	border-left:4px solid var(--uf-green);
	color:var(--uf-text);
	margin:0 0 25px;
	padding:18px 20px 18px 48px;
}

.woocommerce-message::before,
.woocommerce-info::before {
	color:var(--uf-green);
	top:18px;
}

.woocommerce-error {
	background:var(--uf-error-bg);
	border-left-color:var(--uf-error);
}

.woocommerce-error::before {
	color:var(--uf-error);
	top:18px;
}

.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
	margin-left:15px;
}


/* =========================================================
   CART TABLE
   ========================================================= */

.woocommerce table.shop_table {
	border:1px solid var(--uf-border);
	border-collapse:collapse;
	border-radius:0;
	margin-bottom:30px;
}

.woocommerce table.shop_table th {
	background:var(--uf-dark-green);
	border:1px solid rgba(255,255,255,.1);
	color:var(--uf-white);
	font-size:13px;
	font-weight:600;
	padding:14px;
	text-transform:uppercase;
}

.woocommerce table.shop_table td {
	border:1px solid var(--uf-border);
	padding:14px;
	vertical-align:middle;
}

.woocommerce table.shop_table td.product-name a {
	color:var(--uf-dark-green);
	font-weight:600;
}

.woocommerce table.shop_table td.product-name a:hover {
	color:var(--uf-green);
}

.woocommerce table.shop_table .product-thumbnail img {
	width:75px;
}

.woocommerce a.remove {
	color:var(--uf-error)!important;
	font-size:22px;
	line-height:1;
}

.woocommerce a.remove:hover {
	background:var(--uf-error);
	color:var(--uf-white)!important;
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
	border:1px solid var(--uf-border);
	border-radius:0;
	min-width:160px;
	padding:11px;
}

.woocommerce .cart-collaterals .cart_totals {
	background:var(--uf-pale-green);
	padding:25px;
}

.woocommerce .cart-collaterals .cart_totals h2 {
	color:var(--uf-dark-green);
	font-family:"Libre Bodoni", serif;
	font-size:30px;
}

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

.woocommerce .cart-collaterals .cart_totals table th,
.woocommerce .cart-collaterals .cart_totals table td {
	border-top:1px solid var(--uf-border);
	padding:12px 0;
}

.woocommerce .wc-proceed-to-checkout {
	padding-bottom:0;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button {
	display:block;
	font-size:16px;
	margin-bottom:0;
	text-align:center;
}


/* =========================================================
   CHECKOUT
   ========================================================= */

.woocommerce-checkout h3 {
	color:var(--uf-dark-green);
	font-family:"Libre Bodoni", serif;
	font-size:28px;
	font-weight:700;
	margin-bottom:20px;
}

.woocommerce-checkout #customer_details {
	margin-bottom:30px;
}

.woocommerce-checkout-review-order {
	background:var(--uf-pale-green);
	padding:25px;
}

.woocommerce-checkout-review-order table.shop_table {
	background:var(--uf-white);
	margin-bottom:20px;
}

.woocommerce-checkout #payment {
	background:var(--uf-off-white);
	border-radius:0;
}

.woocommerce-checkout #payment ul.payment_methods {
	border-bottom:1px solid var(--uf-border);
	padding:20px;
}

.woocommerce-checkout #payment div.payment_box {
	background:var(--uf-white);
	border:1px solid var(--uf-border);
	border-radius:0;
	color:var(--uf-text);
	font-size:14px;
}

.woocommerce-checkout #payment div.payment_box::before {
	border-bottom-color:var(--uf-border);
}

.woocommerce-checkout #payment div.form-row {
	padding:20px;
}


/* =========================================================
   MY ACCOUNT
   ========================================================= */

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	background:var(--uf-pale-green);
	list-style:none;
	margin:0;
	padding:0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	border-bottom:1px solid var(--uf-border);
}

.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
	border-bottom:0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
	color:var(--uf-dark-green);
	display:block;
	font-size:14px;
	font-weight:600;
	padding:13px 16px;
	text-transform:uppercase;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
	background:var(--uf-dark-green);
	color:var(--uf-white);
	text-decoration:none;
}

.woocommerce-account .woocommerce-MyAccount-content {
	line-height:1.7;
}


/* =========================================================
   PAGINATION
   ========================================================= */

.woocommerce nav.woocommerce-pagination ul {
	border:0;
	display:flex;
	gap:5px;
}

.woocommerce nav.woocommerce-pagination ul li {
	border:0;
	float:none;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	background:var(--uf-off-white);
	color:var(--uf-dark-green);
	min-width:40px;
	padding:10px 12px;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
	background:var(--uf-dark-green);
	color:var(--uf-white);
}


/* =========================================================
   BREADCRUMBS
   ========================================================= */

.woocommerce .woocommerce-breadcrumb {
	color:var(--uf-muted);
	font-size:13px;
	margin-bottom:25px;
}

.woocommerce .woocommerce-breadcrumb a {
	color:var(--uf-green);
}


/* =========================================================
   WIDGETS
   ========================================================= */

.woocommerce .widget_price_filter .ui-slider .ui-slider-range,
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle {
	background:var(--uf-green);
}

.woocommerce .widget_price_filter .price_slider_wrapper .ui-widget-content {
	background:var(--uf-border);
}

.woocommerce.widget_product_categories ul,
.woocommerce.widget_layered_nav ul,
.woocommerce.widget_products ul,
.woocommerce.widget_recently_viewed_products ul {
	list-style:none;
	padding-left:0;
}

.woocommerce.widget_product_categories li,
.woocommerce.widget_layered_nav li {
	border-bottom:1px solid var(--uf-border);
	padding:8px 0;
}

.woocommerce ul.product_list_widget li {
	border-bottom:1px solid var(--uf-border);
	padding:10px 0;
}

.woocommerce ul.product_list_widget li img {
	width:60px;
}

.woocommerce ul.product_list_widget li a {
	color:var(--uf-dark-green);
	font-weight:600;
}

.woocommerce ul.product_list_widget li .amount {
	color:var(--uf-green);
}


/* =========================================================
   WOOCOMMERCE CART / CHECKOUT BLOCKS
   ========================================================= */

.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
	font-family:"Poppins", sans-serif;
}

.wc-block-cart,
.wc-block-checkout {
	color:var(--uf-text);
}

.wc-block-components-title,
.wc-block-cart__totals-title,
.wc-block-components-checkout-step__title,
.wc-block-components-order-summary__button-text {
	color:var(--uf-dark-green);
}

.wc-block-components-checkout-step__title,
.wc-block-cart__totals-title {
	font-family:"Libre Bodoni", serif;
	font-weight:700;
}

.wc-block-cart-items,
.wc-block-cart-items td,
.wc-block-cart-items th,
.wc-block-components-totals-wrapper,
.wc-block-components-order-summary-item {
	border-color:var(--uf-border)!important;
}

.wc-block-cart-items__header {
	background:var(--uf-dark-green);
	color:var(--uf-white);
}

.wc-block-cart-item__product .wc-block-components-product-name {
	color:var(--uf-dark-green);
	font-family:"Libre Bodoni", serif;
	font-size:19px;
	font-weight:700;
}

.wc-block-cart-item__prices,
.wc-block-components-product-price,
.wc-block-components-totals-item__value {
	color:var(--uf-green);
	font-weight:600;
}

.wc-block-components-sidebar {
	background:var(--uf-pale-green);
	padding:20px;
}

.wc-block-components-quantity-selector {
	background:var(--uf-white);
	border:1px solid var(--uf-border);
	border-radius:0;
}

.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
	font-family:"Poppins", sans-serif;
}

.wc-block-components-quantity-selector button {
	color:var(--uf-dark-green);
}

.wc-block-components-address-card,
.wc-block-components-radio-control,
.wc-block-components-checkout-step__container {
	border-radius:0;
}

.wc-block-components-radio-control .wc-block-components-radio-control__input:checked {
	border-color:var(--uf-green);
}

.wc-block-components-radio-control .wc-block-components-radio-control__input:checked::before {
	background:var(--uf-green);
}

.wc-block-components-notice-banner {
	border-radius:0;
}


/* =========================================================
   MINI CART BLOCK
   ========================================================= */

.wc-block-mini-cart__button {
	color:var(--uf-dark-green);
}

.wc-block-mini-cart__button:hover {
	color:var(--uf-green);
}

.wc-block-mini-cart__badge {
	background:var(--uf-green);
	color:var(--uf-white);
}

.wc-block-mini-cart__footer {
	border-top:1px solid var(--uf-border);
}


/* =========================================================
   EMPTY CART / GENERAL PANELS
   ========================================================= */

.woocommerce .cart-empty,
.woocommerce .return-to-shop {
	text-align:center;
}

.woocommerce .cart-empty {
	color:var(--uf-dark-green);
	font-family:"Libre Bodoni", serif;
	font-size:24px;
	font-weight:700;
	margin-top:30px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

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

@media (max-width:991px) {
	.woocommerce ul.products {
		grid-template-columns:repeat(2, minmax(0, 1fr));
		gap:22px;
	}

	.woocommerce div.product .product_title {
		font-size:32px;
	}
}

@media (max-width:767px) {
	.woocommerce .woocommerce-result-count,
	.woocommerce .woocommerce-ordering {
		float:none;
		width:100%;
	}

	.woocommerce .woocommerce-ordering select {
		width:100%;
	}

	.woocommerce div.product .product_title {
		font-size:30px;
	}

	.woocommerce div.product form.cart {
		align-items:stretch;
	}

	.woocommerce div.product form.cart .variations select {
		min-width:0;
		width:100%;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs {
		display:block;
		border-bottom:0;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs li {
		display:block;
		margin:0 0 2px;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs li a {
		padding:12px 15px;
	}

	.woocommerce table.shop_table_responsive tr,
	.woocommerce-page table.shop_table_responsive tr {
		border-bottom:1px solid var(--uf-border);
	}

	.woocommerce table.shop_table_responsive tr:nth-child(2n) td,
	.woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
		background:var(--uf-pale-green);
	}

	.woocommerce-cart table.cart td.actions .coupon {
		display:flex;
		gap:7px;
		margin-bottom:10px;
	}

	.woocommerce-cart table.cart td.actions .coupon .input-text {
		flex:1;
		min-width:0;
		width:auto;
	}

	.woocommerce-message,
	.woocommerce-info,
	.woocommerce-error {
		padding:16px 16px 16px 42px;
	}

	.wc-block-components-sidebar {
		padding:15px;
	}
}

@media (max-width:575px) {
	.woocommerce ul.products {
		grid-template-columns:1fr;
		gap:20px;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce ul.products li.product .woocommerce-loop-category__title {
		font-size:20px;
	}

	.woocommerce div.product .product_title {
		font-size:27px;
	}

	.woocommerce div.product p.price,
	.woocommerce div.product span.price {
		font-size:21px;
	}

	.woocommerce .related.products > h2,
	.woocommerce .upsells.products > h2,
	.woocommerce .cross-sells > h2 {
		font-size:27px;
	}

	.woocommerce .cart-collaterals .cart_totals,
	.woocommerce-checkout-review-order {
		padding:18px;
	}
}
