.woocommerce-page .wp-block-group.has-global-padding,
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
	--wp--style--block-gap: var(--wp--preset--spacing--v-s);
}

.wp-block-woocommerce-product-collection .wp-block-woocommerce-product-template,
.wp-block-woocommerce-product-template,
.wc-block-product-template,
ul.products {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--wp--preset--spacing--v-m) var(--wp--preset--spacing--h-s);
	list-style: none;
	margin: 0;
	padding: 0;
}

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

.wp-block-woocommerce-product-template .wc-block-product,
.wp-block-woocommerce-product-template li.product,
.wc-block-product-template .wc-block-product,
.woocommerce ul.products[class*="columns-"] li.product,
ul.products li.product {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--v-s);
	margin: 0;
	padding: var(--wp--preset--spacing--v-s);
	background: var(--wp--preset--color--bcg-light);
	border-radius: var(--wp--custom--radius--s);
	text-align: center;
	list-style: none;
	width: auto;  
	float: none;
}

.wc-block-product .wc-block-components-product-image,
.wc-block-product .wp-block-woocommerce-product-image,
ul.products li.product a img {
	border-radius: var(--wp--custom--radius--s);
	overflow: hidden;
	margin: 0 0 var(--wp--preset--spacing--v-s) 0;
}

.wc-block-product .wp-block-post-title,
.wc-block-product .woocommerce-loop-product__title,
ul.products li.product .woocommerce-loop-product__title {
	font-weight: 700;
	margin: 0;
}

.wc-block-product .wp-block-woocommerce-product-price,
.wc-block-product .price,
ul.products li.product .price {
	font-weight: 700;
	color: var(--wp--preset--color--primary);
	margin-top: auto;
}

.wp-block-woocommerce-product-button .wp-block-button__link,
ul.products li.product .button.add_to_cart_button,
ul.products li.product a.button {
	display: block;
	width: 100%;
	box-sizing: border-box; 
}

.woocommerce ul.products li.product > .button,
ul.products li.product > .button {
	margin-top: auto;
}

.wc-block-breadcrumbs,
.woocommerce-breadcrumb {
	font-size: 0.85rem;
	text-transform: lowercase;
	color: var(--wp--preset--color--separator);
	margin-bottom: var(--wp--preset--spacing--v-s);
}
.wc-block-breadcrumbs a,
.woocommerce-breadcrumb a { color: var(--wp--preset--color--txt-dark); opacity: 0.6; }

.wp-block-woocommerce-product-image-gallery img,
.woocommerce-product-gallery img {
	border-radius: var(--wp--custom--radius--s);
}

.wp-block-woocommerce-product-price,
.single-product .summary .price {
	font-size: 1.75rem;
	font-weight: 700;
	color: var(--wp--preset--color--primary);
}
.wp-block-woocommerce-product-price del,
.single-product .summary .price del {
	color: var(--wp--preset--color--separator);
	font-weight: 400;
	opacity: 0.7;
}

.wp-block-woocommerce-product-image-gallery,
.wp-block-woocommerce-product-image-gallery .woocommerce-product-gallery {
	width: 100%;
}
.wp-block-woocommerce-product-image-gallery .woocommerce-product-gallery__image img {
	width: 100%;
	height: auto;
}

.single-product form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	align-items: stretch;
	margin-top: var(--wp--preset--spacing--v-s);
}
.single-product form.cart .single_add_to_cart_button { flex: 1 1 auto; }

.single-product form.cart table.variations,
.single-product form.cart .single_variation_wrap { flex-basis: 100%; }
.single-product form.cart .woocommerce-variation-add-to-cart {
	display: flex;
	gap: 0.75rem;
	align-items: stretch;
}
.single-product form.cart .woocommerce-variation-add-to-cart .single_add_to_cart_button { flex: 1 1 auto; }

.single_add_to_cart_button,
.wc-block-components-button.wc-block-cart__submit-button {
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 0.9em 1.5em;
	background: var(--wp--preset--color--txt-dark);
	color: var(--wp--preset--color--txt-light);
	border-color: var(--wp--preset--color--txt-dark);
}
.single_add_to_cart_button:hover {
	background: var(--wp--preset--color--txt-muted);
	border-color: var(--wp--preset--color--txt-muted);
	color: var(--wp--preset--color--txt-light);
	filter: none;
}

.quantity.wc-block-components-quantity-selector {
	display: flex;
	align-items: stretch;
	border: 1px solid var(--wp--preset--color--separator);
	border-radius: 0; 
	overflow: hidden;
	width: auto; 
}
.quantity .wc-block-components-quantity-selector__button {
	width: 2.5rem;
	border: none;
	border-radius: 0;
	background: var(--wp--preset--color--primary); 
	color: var(--wp--preset--color--txt-light);
	font-size: 1.1rem;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	transition: background 0.18s ease;
}
.quantity .wc-block-components-quantity-selector__button:hover {
	background: var(--wp--preset--color--txt-muted);
}
.quantity input.qty {
	width: 3.25rem;
	border: none;
	border-radius: 0;
	background: var(--wp--preset--color--page-bcg);
	padding: 0.5em 0.25em;
	text-align: center;
	font-weight: 600;
	-moz-appearance: textfield;
}
.quantity input.qty::-webkit-outer-spin-button,
.quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.wp-block-woocommerce-product-meta,
.single-product .product_meta {
	margin-top: var(--wp--preset--spacing--v-s);
	padding-top: var(--wp--preset--spacing--v-s);
	border-top: 1px solid var(--wp--preset--color--separator);
	font-size: 0.9rem;
	color: var(--wp--preset--color--separator);
}
.wp-block-woocommerce-product-meta a,
.single-product .product_meta a { color: var(--wp--preset--color--txt-dark); }

.woocommerce-product-gallery { max-width: 100%; }
.woocommerce-product-gallery .flex-control-thumbs { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0 0; padding: 0; list-style: none; }
.woocommerce-product-gallery .flex-control-thumbs li { float: none; width: calc(25% - 8px); margin: 0; }
.woocommerce-product-gallery .flex-control-thumbs img { width: 100%; height: auto; opacity: .55; cursor: pointer; transition: opacity .2s; }
.woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.woocommerce-product-gallery .flex-control-thumbs img:hover { opacity: 1; }

.snv-adatlap {
	margin-top: var(--wp--preset--spacing--v-m);
}
.snv-adatlap__cim {
	text-align: center;
	font-size: var(--wp--preset--font-size--large);
	margin-bottom: var(--wp--preset--spacing--v-s);
}
.snv-adatlap__tartalom ul { margin: 0 0 0 1.1em; padding: 0; }
.snv-adatlap__tartalom li { margin-bottom: 0.5em; }
.snv-adatlap__linkek { list-style: none; margin-left: 0 !important; }

.snv-price-gate {
	display: block;
	font-size: var(--wp--preset--font-size--medium);
	font-weight: 700;
	line-height: 1.6;
	color: var(--wp--preset--color--txt-dark);
}
.snv-price-gate a {
	text-decoration: underline;
	text-underline-offset: 3px;
}
.snv-price-gate .snv-price-gate__masodik {
	font-size: var(--wp--preset--font-size--small);
	font-weight: 400;
	color: var(--wp--preset--color--txt-muted);
}

.wp-block-woocommerce-cart .wc-block-cart-items,
.woocommerce-cart table.cart {
	border-collapse: collapse;
}
.wp-block-woocommerce-cart .wc-block-cart-items td,
.wp-block-woocommerce-cart .wc-block-cart-items th,
.woocommerce-cart table.cart td,
.woocommerce-cart table.cart th {
	padding: var(--wp--preset--spacing--v-s);
	border-bottom: 1px solid var(--wp--preset--color--separator);
}

.wc-block-cart__sidebar .wc-block-components-totals-wrapper,
.wc-block-cart__sidebar,
.woocommerce-cart .cart_totals {
	background: var(--wp--preset--color--bcg-light);
	border: 1px solid var(--wp--preset--color--separator);
	border-radius: var(--wp--custom--radius--s);
	padding: var(--wp--preset--spacing--v-m);
}

.wc-block-mini-cart__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	border: 1px solid var(--wp--preset--color--separator);
	border-radius: var(--wp--custom--radius--s);
	padding: 0.5rem 0.9rem;
}
.wc-block-mini-cart__amount { font-weight: 700; }

.wc-block-components-text-input input,
.wc-block-components-select .wc-block-components-select__select,
.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea {
	background: var(--wp--preset--color--bcg-light);
	border: 1px solid var(--wp--preset--color--separator);
	border-radius: var(--wp--custom--radius--s);
	padding: 0.75em 1em;
}
.wc-block-components-text-input input:focus,
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
	border-color: var(--wp--preset--color--primary);
	outline: none;
}

.wc-block-checkout__sidebar,
.woocommerce-checkout #order_review {
	background: var(--wp--preset--color--bcg-light);
	border: 1px solid var(--wp--preset--color--separator);
	border-radius: var(--wp--custom--radius--s);
	padding: var(--wp--preset--spacing--v-m);
}

.wc-block-components-checkout-place-order-button,
.woocommerce-checkout #place_order {
	width: 100%;
	text-transform: uppercase;
	padding: 0.9em 1.5em;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border: 1px solid var(--wp--preset--color--separator);
	border-radius: var(--wp--custom--radius--s);
	overflow: hidden;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 0.85em 1.25em;
	color: var(--wp--preset--color--txt-dark);
	text-decoration: none;
	border-bottom: 1px solid var(--wp--preset--color--separator);
}
.woocommerce-account .woocommerce-MyAccount-navigation li:last-child a { border-bottom: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--txt-light);
	font-weight: 700;
	border-left: 4px solid var(--wp--preset--color--txt-light);
}
.woocommerce-account .woocommerce-MyAccount-content {
	padding-left: var(--wp--preset--spacing--h-s);
}

.woocommerce .button,
.woocommerce a.button,
.woocommerce button.button,
.wc-block-components-button,
.added_to_cart,
.wp-block-woocommerce-product-button .wp-block-button__link {
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--txt-light); 
	text-transform: uppercase;
	border: 1px solid var(--wp--preset--color--primary);
	border-radius: var(--wp--custom--radius--s);
	padding: 0.7em 1.4em;
	font-weight: 400;
	text-decoration: none;
	cursor: pointer;
	transition: filter 0.2s ease;
}
.woocommerce .button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.wc-block-components-button:hover,
.added_to_cart:hover,
.wp-block-woocommerce-product-button .wp-block-button__link:hover {
	filter: brightness(0.95);
	color: var(--wp--preset--color--txt-light);
}

.wc-block-components-totals-coupon__button,
.woocommerce-cart .coupon button.button {
	background: transparent;
	color: var(--wp--preset--color--primary);
	border: 1px solid var(--wp--preset--color--primary);
}
.wc-block-components-totals-coupon__button:hover,
.woocommerce-cart .coupon button.button:hover {
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--txt-light);
	filter: none;
}

body.woocommerce-cart main .woocommerce,
body.woocommerce-checkout main .woocommerce,
body.woocommerce-account main .woocommerce,
body.woocommerce-cart .wp-block-post-title,
body.woocommerce-checkout .wp-block-post-title,
body.woocommerce-account .wp-block-post-title {
	max-width: var(--wp--style--global--wide-size, var(--wp--style--global--content-size, 1400px));
	margin-inline: auto;
}

.woocommerce, .woocommerce-page, .wc-block-components-sidebar-layout { max-width: 100%; box-sizing: border-box; }
.woocommerce img, .wc-block-components-product-image img { max-width: 100%; height: auto; }
.woocommerce table.shop_table { max-width: 100%; }
.woocommerce-account .woocommerce {
	max-width: var(--wp--style--global--content-size, 1400px);
	margin-inline: auto;
	padding-inline: var(--wp--preset--spacing--h-s);
	box-sizing: border-box;
}

@media (max-width: 998px) {
	
	.wp-block-woocommerce-product-collection .wp-block-woocommerce-product-template,
	.wp-block-woocommerce-product-template,
	.wc-block-product-template,
	ul.products {
		grid-template-columns: repeat(2, 1fr);
		gap: var(--wp--preset--spacing--v-s) var(--wp--preset--spacing--h-s);
	}

	
	.single-product .wp-block-columns {
		flex-direction: column;
	}
	.single-product .wp-block-columns .wp-block-column {
		flex-basis: 100% !important;
	}

	
	.wp-block-woocommerce-cart .wc-block-cart,
	.wp-block-woocommerce-checkout .wc-block-checkout {
		flex-direction: column;
	}
	.wc-block-cart__sidebar,
	.wc-block-checkout__sidebar {
		width: 100%;
		max-width: 100%;
	}

	
	.woocommerce-account .woocommerce-MyAccount-content {
		padding-left: 0;
		margin-top: var(--wp--preset--spacing--v-s);
	}
}

.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart table.cart {
	width: 100%;
}
.woocommerce-cart .cart-collaterals {
	width: 100%;
	display: flex;
	justify-content: flex-end;
	margin-top: var(--wp--preset--spacing--v-m);
}
.woocommerce-cart .cart-collaterals .cart_totals {
	width: 48%;
	min-width: 340px;
}

.woocommerce-cart td.product-quantity .quantity input.qty {
	width: 4rem;
	text-align: center;
	padding: 0.5em 0.25em;
	background: var(--wp--preset--color--page-bcg);
	border: 1px solid var(--wp--preset--color--separator);
}

.woocommerce-cart button[name="update_cart"],
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	background: var(--wp--preset--color--txt-dark);
	color: var(--wp--preset--color--txt-light);
	border-color: var(--wp--preset--color--txt-dark);
}
.woocommerce-cart button[name="update_cart"]:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
	background: var(--wp--preset--color--txt-muted);
	border-color: var(--wp--preset--color--txt-muted);
	color: var(--wp--preset--color--txt-light);
	filter: none;
}

.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-areas:
		"billing review-heading"
		"billing review";
	column-gap: var(--wp--preset--spacing--h-m);
	align-items: start;
}
.woocommerce-checkout #customer_details { grid-area: billing; min-width: 0; }
.woocommerce-checkout #order_review_heading { grid-area: review-heading; margin-top: 0; }
.woocommerce-checkout #order_review { grid-area: review; min-width: 0; }

.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
	float: none;
	width: 100%;
	max-width: 100%;
	margin: 0 0 var(--wp--preset--spacing--v-s);
}

.woocommerce-checkout form.checkout > input[type="hidden"] { display: none; }

@media (max-width: 998px) {
	
	.woocommerce-checkout form.checkout {
		grid-template-columns: 1fr;
		grid-template-areas:
			"billing"
			"review-heading"
			"review";
	}
	.woocommerce-cart .cart-collaterals .cart_totals {
		width: 100%;
		min-width: 0;
	}
}
