/* Redwork - design es UX javitasok (audit 2026-09-15). Csak body.rw-design alatt el. */

.rw-design {
	--rw-red: #db041c;
	--rw-red-dark: #a00214;
	--rw-ink: #111827;
	--rw-text: #3a3a3a;
	--rw-muted: #4b5563;
	--rw-line: #e5e7eb;
	--rw-soft: #f6f6f7;
	--rw-radius: 8px;
}

/* ---------- Fejlec: telefonszam (#13b) ---------- */
.rw-design .elementor-element-9bb91df {
	width: auto;
	max-width: none;
	flex: 0 0 auto;
	align-self: center;
}
.rw-design .rw-phone {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 16px;
	border: 1.5px solid rgba(255, 255, 255, .85);
	border-radius: 999px;
	color: #fff;
	font-weight: 700;
	font-size: 15px;
	line-height: 1;
	letter-spacing: .01em;
	white-space: nowrap;
	text-decoration: none;
	transition: background-color .15s, color .15s;
}
.rw-design .rw-phone:hover,
.rw-design .rw-phone:focus-visible {
	background: #fff;
	color: var(--rw-red);
}
.rw-design .rw-phone:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}
.rw-design .rw-phone__icon {
	flex: 0 0 auto;
}

@media (max-width: 767px) {
	.rw-design .rw-phone {
		width: 44px;
		padding: 0;
		justify-content: center;
		background: rgba(0, 0, 0, .18);
		border-color: rgba(255, 255, 255, .7);
	}
	.rw-design .rw-phone__nr {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}
	/* a keresonek igy tobb hely jut: kisebb jobb padding, kitolti a sort */
	.rw-design .elementor-element-3d0625e5 {
		padding-right: 10px !important;
		flex: 1 1 auto;
		min-width: 0;
	}
	.rw-design .elementor-element-9bb91df {
		margin-right: 12px;
	}
}

/* ---------- Fejlec kosar: kontraszt (#11) ---------- */
.rw-design .elementor-element-02241a2 .xoo-wsc-sc-subt,
.rw-design .elementor-element-02241a2 .xoo-wsc-sc-subt .woocommerce-Price-amount,
.rw-design .elementor-element-02241a2 .xoo-wsc-sc-subt bdi {
	color: #fff !important;
	font-weight: 700;
}
.rw-design .elementor-element-02241a2 .xoo-wsc-sc-bki {
	color: #fff;
}
.rw-design .elementor-element-02241a2 .xoo-wsc-sc-count {
	background: #fff !important;
	color: var(--rw-ink) !important;
	font-weight: 700;
}

/* ---------- Galeria teljes kepernyo gomb (#5) ---------- */
/* sajat retegrendet kap a galeria, igy a gomb nem tud a mega menu fole kerulni */
.rw-design .elementor-widget-shopengine-single-product-images {
	isolation: isolate;
}
.rw-design .shopengine-product-image-toggle {
	z-index: 2 !important;
	width: 44px !important;
	height: 44px !important;
	min-width: 0 !important;
	padding: 0 !important;
	top: 12px !important;
	right: 12px !important;
	left: auto !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	border-radius: 8px !important;
	background: rgba(17, 24, 39, .72) !important;
}
.rw-design .shopengine-product-image-toggle svg {
	width: 18px !important;
	height: 18px !important;
}

/* ---------- Termeklap: hierarchia es sorrend (#6) ---------- */
.rw-design .elementor-widget-shopengine-product-title { order: 1; }
.rw-design .elementor-widget-shopengine-product-rating { order: 2; }
.rw-design .elementor-widget-shopengine-product-price { order: 3; }
.rw-design .elementor-widget-shopengine-product-stock { order: 4; }
.rw-design .elementor-widget-shopengine-product-excerpt { order: 5; }
.rw-design .elementor-widget-shopengine-add-to-cart { order: 6; }
.rw-design .elementor-widget-shopengine-product-meta { order: 7; }

.rw-design .shopengine-product-title .product-title {
	font-size: 32px !important;
	line-height: 1.15 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	margin-bottom: 4px !important;
	overflow-wrap: anywhere;
}
.rw-design .elementor-widget-shopengine-product-price .price,
.rw-design .elementor-widget-shopengine-product-price .price .woocommerce-Price-amount {
	font-size: 28px !important;
	font-weight: 700 !important;
	color: var(--rw-ink) !important;
	margin: 0 !important;
}
.rw-design .elementor-widget-shopengine-product-price .price del .woocommerce-Price-amount {
	font-size: 18px !important;
	color: var(--rw-muted) !important;
	font-weight: 500 !important;
}
.rw-design .elementor-widget-shopengine-product-stock .stock {
	margin: 0 !important;
	font-size: 14px !important;
}
.rw-design .woocommerce-product-details__short-description ul {
	margin: 0 0 0 1.1em !important;
	padding: 0 !important;
}
.rw-design .woocommerce-product-details__short-description li,
.rw-design .woocommerce-product-details__short-description p {
	font-size: 17px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	color: var(--rw-text) !important;
	margin: 0 0 .35em !important;
}

@media (max-width: 767px) {
	.rw-design .shopengine-product-title .product-title {
		font-size: 26px !important;
		line-height: 1.18 !important;
	}
	.rw-design .elementor-widget-shopengine-product-price .price,
	.rw-design .elementor-widget-shopengine-product-price .price .woocommerce-Price-amount {
		font-size: 24px !important;
	}
	.rw-design .woocommerce-product-details__short-description li,
	.rw-design .woocommerce-product-details__short-description p {
		font-size: 16px !important;
		line-height: 1.5 !important;
	}
}

/* ---------- Modellvalaszto kartyak (#7) ---------- */
.rw-design .rw-variants {
	margin: 0 0 1.25em;
}
.rw-design .rw-variants .redwork-variante__cim {
	display: block;
	font-weight: 700;
	color: var(--rw-ink);
	margin-bottom: .6em;
}
.rw-design .rw-variants__list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 10px;
}
.rw-design .rw-variant {
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border: 1px solid var(--rw-line);
	border-radius: var(--rw-radius);
	background: #fff;
	color: var(--rw-ink);
	text-decoration: none;
	line-height: 1.25;
	transition: border-color .15s, box-shadow .15s;
}
.rw-design a.rw-variant:hover,
.rw-design a.rw-variant:focus-visible {
	border-color: var(--rw-ink);
	color: var(--rw-ink);
}
.rw-design a.rw-variant:focus-visible {
	outline: 2px solid var(--rw-ink);
	outline-offset: 2px;
}
.rw-design .rw-variant.is-active {
	border: 2px solid var(--rw-red);
	padding: 9px 11px;
	box-shadow: 0 0 0 3px rgba(219, 4, 28, .12);
}
.rw-design .rw-variant.is-oos {
	opacity: .6;
}
.rw-design .rw-variant__img {
	flex: 0 0 56px;
	width: 56px;
	height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--rw-soft);
	border-radius: 6px;
	overflow: hidden;
}
.rw-design .rw-variant__img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	margin: 0 !important;
}
.rw-design .rw-variant__body {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.rw-design .rw-variant__code {
	font-weight: 700;
	font-size: 14px;
}
.rw-design .rw-variant__kit {
	font-size: 13px;
	color: var(--rw-muted);
}
.rw-design .rw-variant__price,
.rw-design .rw-variant__price .woocommerce-Price-amount {
	font-size: 14px !important;
	font-weight: 700;
	color: var(--rw-ink) !important;
}
.rw-design .rw-variant__price del .woocommerce-Price-amount {
	color: var(--rw-muted) !important;
	font-weight: 400;
}
.rw-design .rw-variant__stock {
	font-size: 12px;
	color: var(--rw-red);
	font-weight: 600;
}
.rw-design .rw-variant__check {
	position: absolute;
	top: -8px;
	right: -8px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--rw-red);
	box-shadow: 0 0 0 2px #fff;
}
.rw-design .rw-variant__check::after {
	content: "";
	position: absolute;
	left: 7px;
	top: 4px;
	width: 6px;
	height: 11px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

/* ---------- Leiras: cimsorok, tablazat, tulcsordulas (#13) ---------- */
.rw-design .woocommerce-Tabs-panel--description h2 {
	font-size: 26px !important;
	line-height: 1.2 !important;
	margin: 1.6em 0 .6em !important;
}
.rw-design .woocommerce-Tabs-panel table {
	width: 100% !important;
	max-width: 100%;
	table-layout: fixed;
}
.rw-design .woocommerce-Tabs-panel th,
.rw-design .woocommerce-Tabs-panel td {
	overflow-wrap: anywhere;
	word-break: normal;
}
.rw-design .woocommerce-product-gallery,
.rw-design .elementor-widget-shopengine-single-product-images .elementor-widget-container {
	max-width: 100%;
	overflow: hidden;
}

@media (max-width: 767px) {
	.rw-design .woocommerce-Tabs-panel--description h2 {
		font-size: 22px !important;
	}
	.rw-design .woocommerce-Tabs-panel,
	.rw-design .shopengine-product-tabs .woocommerce-Tabs-panel,
	.rw-design .shopengine-product-tabs .wc-tabs-wrapper .panel,
	.rw-design .elementor-1717 .elementor-element.elementor-element-6b6af7af .shopengine-product-tabs .woocommerce-Tabs-panel {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.rw-design .woocommerce-Tabs-panel th,
	.rw-design .woocommerce-Tabs-panel td {
		padding: 8px 10px !important;
		font-size: 14px;
	}
}

/* ---------- "Ce include" kartyak (#8) ---------- */
.rw-design .rw-kit {
	list-style: none !important;
	margin: 0 0 1.5em !important;
	padding: 0 !important;
	border: 1px solid var(--rw-line);
	border-radius: var(--rw-radius);
	overflow: hidden;
}
.rw-design .rw-kit__item {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr) auto;
	align-items: center;
	gap: 14px;
	padding: 10px 14px;
	margin: 0 !important;
	border-top: 1px solid var(--rw-line);
	background: #fff;
}
.rw-design .rw-kit__item:first-child {
	border-top: 0;
}
.rw-design .rw-kit__img {
	width: 56px;
	height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	background: var(--rw-soft);
	overflow: hidden;
	color: var(--rw-muted);
}
.rw-design .rw-kit__img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	margin: 0 !important;
}
.rw-design .rw-kit__body {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.rw-design .rw-kit__name {
	font-weight: 600;
	color: var(--rw-ink);
	line-height: 1.3;
}
.rw-design .rw-kit__name a {
	color: inherit;
	text-decoration: underline;
	text-decoration-color: rgba(17, 24, 39, .3);
	text-underline-offset: 3px;
}
.rw-design .rw-kit__code {
	font-size: 13px;
	color: var(--rw-muted);
}
.rw-design .rw-kit__qty {
	font-weight: 700;
	color: var(--rw-ink);
	white-space: nowrap;
	min-width: 2.5em;
	text-align: right;
}
@media (min-width: 768px) {
	.rw-design .rw-kit__item {
		grid-template-columns: 56px minmax(0, 1fr) 80px;
		padding: 10px 18px;
	}
}

/* ---------- Video: a leiras kontenereben, 16:9 (#9) ---------- */
.rw-design .woocommerce-Tabs-panel .redwork-video {
	margin: 2em 0 0;
}
.rw-design .woocommerce-Tabs-panel .redwork-video h2 {
	margin-top: 0 !important;
}
.rw-design .redwork-video__lista {
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)) !important;
	max-width: 100% !important;
}

/* ---------- Kategorialap: kozos vezerlosav (#3) ---------- */
.rw-design .rw-shop-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px 16px;
	margin: 0 0 24px;
	padding: 0 0 16px;
	border-bottom: 1px solid var(--rw-line);
}
.rw-design .rw-shop-bar .woocommerce-result-count {
	margin: 0 !important;
	float: none !important;
	color: var(--rw-muted);
	font-size: 15px;
}
.rw-design .rw-shop-bar__controls {
	display: flex;
	align-items: center;
	gap: 10px;
}
.rw-design .rw-shop-bar .woocommerce-ordering {
	margin: 0 !important;
	float: none !important;
}
.rw-design .rw-shop-bar .woocommerce-ordering select {
	min-height: 44px;
	padding: 0 36px 0 12px;
	border: 1px solid #d1d5db;
	border-radius: var(--rw-radius);
	background-color: #fff;
	color: var(--rw-ink);
	font-size: 15px;
}
.rw-design .rw-shop-bar__filter {
	display: none;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 16px;
	border: 1px solid var(--rw-ink);
	border-radius: var(--rw-radius);
	background: var(--rw-ink);
	color: #fff;
	font-weight: 700;
	font-size: 15px;
	cursor: pointer;
}
.rw-design .rw-shop-bar__filter:focus-visible,
.rw-design .rw-shop-bar .woocommerce-ordering select:focus-visible {
	outline: 2px solid var(--rw-red);
	outline-offset: 2px;
}
@media (max-width: 921px) {
	.rw-design .rw-shop-bar__count {
		width: 100%;
	}
	.rw-design .rw-shop-bar__controls {
		width: 100%;
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
	.rw-design .rw-shop-bar__filter {
		display: inline-flex;
	}
	.rw-design .rw-shop-bar .woocommerce-ordering,
	.rw-design .rw-shop-bar .woocommerce-ordering select {
		width: 100%;
	}
	/* a sidebar alji "Filtrează" gomb redundans lett, a panel maga marad */
	.rw-design #secondary .wc-block-product-filters__open-overlay {
		display: none !important;
	}
}

/* ---------- Kategoriakartyak: termekszam olvashatobban ---------- */
.rw-design .product-category mark.count,
.rw-design .product-category .count {
	text-transform: none;
}

/* ---------- 404 (#4) ---------- */
.rw-design .rw-404 {
	max-width: 720px;
	margin: 0 auto;
	padding: 48px 0 64px;
	text-align: center;
}
.rw-design .rw-404__code {
	margin: 0 0 8px;
	color: var(--rw-red-dark);
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	font-size: 14px;
}
.rw-design .rw-404__title {
	font-size: 40px !important;
	line-height: 1.15 !important;
	margin: 0 0 16px !important;
	color: var(--rw-ink);
}
.rw-design .rw-404__text {
	font-size: 17px;
	color: var(--rw-text);
	margin: 0 auto 28px;
	max-width: 520px;
}
.rw-design .rw-404__actions {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 40px;
}
.rw-design .rw-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 22px;
	border-radius: var(--rw-radius);
	font-weight: 700;
	text-decoration: none;
	border: 2px solid var(--rw-red);
}
.rw-design .rw-btn--primary {
	background: var(--rw-red);
	color: #fff;
}
.rw-design .rw-btn--primary:hover,
.rw-design .rw-btn--primary:focus-visible {
	background: var(--rw-red-dark);
	border-color: var(--rw-red-dark);
	color: #fff;
}
.rw-design .rw-btn--ghost {
	background: #fff;
	color: var(--rw-red);
}
.rw-design .rw-btn--ghost:hover,
.rw-design .rw-btn--ghost:focus-visible {
	background: var(--rw-red);
	color: #fff;
}
.rw-design .rw-404__search {
	max-width: 480px;
	margin: 0 auto 24px;
}
.rw-design .rw-404__hint,
.rw-design .rw-404__help {
	color: var(--rw-muted);
	font-size: 15px;
	margin: 0 0 10px;
}
.rw-design .rw-404__help a {
	color: var(--rw-ink);
	font-weight: 700;
}
@media (max-width: 767px) {
	.rw-design .rw-404 {
		padding: 24px 0 40px;
	}
	.rw-design .rw-404__title {
		font-size: 28px !important;
	}
	.rw-design .rw-404__actions {
		flex-direction: column;
	}
	.rw-design .rw-btn {
		width: 100%;
	}
}

/* ---------- Lebego gombok: biztonsagos tavolsag (#12) ---------- */
.rw-design .xoo-wsc-basket {
	right: 16px !important;
	bottom: max(16px, env(safe-area-inset-bottom)) !important;
}
@media (max-width: 767px) {
	.rw-design .joinchat {
		--bottom: max(16px, env(safe-area-inset-bottom)) !important;
		--sep: 16px !important;
	}
	/* a lap alja ne keruljon a lebego gombok ala */
	.rw-design .site-footer {
		padding-bottom: 88px;
	}
}

/* ---------- Kiegeszitesek a tesztelesbol ---------- */
.rw-design .woocommerce-Tabs-panel--description table th {
	width: 45%;
	text-align: left !important;
}
/* a cross-sell/"Produse sugerate" blokk is a kozos kontenerbe kerul */
.rw-design .redwork-cross-sells {
	max-width: 1200px;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 20px;
	padding-right: 20px;
	box-sizing: border-box;
}
.rw-design .redwork-cross-sells > h2 {
	font-size: 26px !important;
}
.rw-design .single_add_to_cart_button {
	white-space: nowrap;
	padding-left: 28px !important;
	padding-right: 28px !important;
}
@media (max-width: 767px) {
	.rw-design .redwork-cross-sells > h2 {
		font-size: 22px !important;
	}
}

/* fooldal: ket 3 oszlopos sorban 3 x 33.458% = 100.4% -> 5 px vizszintes gorgetes desktopon */
.rw-design .elementor-element-14256cb > .e-con,
.rw-design .elementor-element-70648f1 > .e-con {
	--width: 33.3333%;
}

/* sok valtozat: kep nelkuli, tomor kartyak */
.rw-design .rw-variants--compact .rw-variants__list {
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 8px;
}
.rw-design .rw-variants--compact .rw-variant__img {
	display: none;
}
.rw-design .rw-variants--compact .rw-variant {
	padding: 8px 10px;
}
.rw-design .rw-variants--compact .rw-variant.is-active {
	padding: 7px 9px;
}
.rw-design .rw-variants--compact .rw-variant__code {
	font-size: 13px;
	white-space: normal;
}
