/* Synex catalogue, product, cart, and checkout system. */

:root {
	--synex-catalog-ink: #202124;
	--synex-catalog-muted: #666a73;
	--synex-catalog-line: #e3e4e7;
	--synex-catalog-soft: #f7f7f8;
	--synex-catalog-gold: #ffbf00;
	--synex-catalog-gold-dark: #a96f00;
	--synex-catalog-success: #18794e;
	--synex-catalog-danger: #b42318;
	--synex-catalog-radius: 18px;
	--synex-catalog-shadow: 0 16px 42px rgba(24, 25, 28, 0.07);
}

/* Single product shell */
body.single-product {
	background: #fff;
}

body.single-product .wd-content-area.site-content {
	padding-top: 22px;
	padding-bottom: 72px;
}

body.single-product .elementor-33984 > .elementor-element-5be0485e {
	margin-bottom: 24px !important;
}

body.single-product .elementor-element-3c8f9867 {
	min-height: 52px;
	border: 1px solid var(--synex-catalog-line);
	background: #fff !important;
	box-shadow: 0 8px 24px rgba(24, 25, 28, 0.04);
}

body.single-product .elementor-element-3939f5b9 {
	align-items: stretch;
	padding-bottom: 46px !important;
	border-bottom: 0 !important;
}

body.single-product .elementor-element-1a31ec87,
body.single-product .elementor-element-3ca196dc {
	min-width: 0;
}

body.single-product .elementor-element-1a31ec87 {
	padding-right: 24px;
}

body.single-product .elementor-element-2d090320 {
	height: 100%;
	padding: 24px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 22px;
	background:
		radial-gradient(circle at 85% 10%, rgba(255, 191, 0, 0.11), transparent 28%),
		linear-gradient(145deg, #fff, #fafafa);
	box-shadow: var(--synex-catalog-shadow);
}

body.single-product .woocommerce-product-gallery {
	margin-bottom: 0 !important;
}

body.single-product .woocommerce-product-gallery__image img {
	border-radius: 14px;
}

body.single-product .wd-carousel-item img,
body.single-product .woocommerce-product-gallery .thumbnail img {
	border: 1px solid transparent;
	border-radius: 10px;
	background: #fff;
}

body.single-product .elementor-element-3ca196dc {
	align-self: flex-start;
	padding: 30px !important;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 22px !important;
	background: #fff !important;
	box-shadow: var(--synex-catalog-shadow);
}

body.single-product .product_title {
	margin: 0 0 12px !important;
	color: var(--synex-catalog-ink);
	font-size: clamp(28px, 3vw, 42px) !important;
	font-weight: 800 !important;
	line-height: 1.08 !important;
	letter-spacing: -0.035em;
}

body.single-product .elementor-element-6ca05e75 {
	margin-bottom: 8px;
}

body.single-product .elementor-element-447726e {
	display: none !important;
}

body.single-product .price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 8px;
	margin: 20px 0 16px !important;
	color: var(--synex-catalog-ink) !important;
	font-size: 32px !important;
	font-weight: 850;
	line-height: 1.1;
}

body.single-product .price del {
	color: #8a8d94 !important;
	font-size: 17px;
	font-weight: 600;
	opacity: 1;
}

body.single-product .price ins {
	color: var(--synex-catalog-ink);
	text-decoration: none;
}

body.single-product .elementor-element-1283eb4 .price,
body.single-product .elementor-element-1283eb4 .amount,
body.single-product .elementor-element-1283eb4 .price-suffix {
	font-size: inherit !important;
	line-height: inherit !important;
}

body.single-product .woocommerce-product-rating {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 18px !important;
	padding: 8px 12px;
	border: 1px solid #efdfaa;
	border-radius: 999px;
	background: #fffaf0;
}

body.single-product .star-rating {
	color: var(--synex-catalog-gold-dark);
}

body.single-product form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 20px 0 0 !important;
}

body.single-product form.cart .quantity {
	flex: 0 0 auto;
	height: 52px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 12px;
	background: #fff;
}

body.single-product form.cart .quantity input,
body.single-product form.cart .quantity button {
	height: 50px;
}

body.single-product form.cart .single_add_to_cart_button {
	flex: 1 1 240px;
	min-height: 52px;
	padding: 14px 24px;
	border: 0;
	border-radius: 12px;
	background: var(--synex-catalog-gold) !important;
	box-shadow: 0 10px 24px rgba(255, 191, 0, 0.24);
	color: #171819 !important;
	font-size: 15px;
	font-weight: 850;
	letter-spacing: 0.01em;
}

body.single-product form.cart .single_add_to_cart_button:hover {
	transform: translateY(-1px);
	background: #f2b600 !important;
	box-shadow: 0 14px 28px rgba(255, 191, 0, 0.3);
}

body.single-product table.variations {
	width: 100%;
	margin: 4px 0 12px;
}

body.single-product table.variations tr {
	display: grid;
	grid-template-columns: minmax(110px, 0.32fr) 1fr;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}

body.single-product table.variations th,
body.single-product table.variations td {
	display: block;
	padding: 0;
	text-align: left;
}

body.single-product table.variations label {
	color: var(--synex-catalog-ink);
	font-size: 13px;
	font-weight: 800;
}

body.single-product table.variations select {
	width: 100%;
	min-height: 48px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 11px;
	background-color: #fff;
}

body.single-product .product_meta {
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid var(--synex-catalog-line);
	color: var(--synex-catalog-muted);
	font-size: 12px;
	line-height: 1.7;
}

/* Uniform short description */
.synex-product-summary {
	margin: 18px 0 0;
	padding: 18px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 16px;
	background: linear-gradient(145deg, #fff, #fafafa);
}

.synex-product-summary__heading {
	display: flex;
	align-items: center;
	gap: 11px;
	margin-bottom: 14px;
	padding-bottom: 13px;
	border-bottom: 1px solid var(--synex-catalog-line);
}

.synex-product-summary__icon {
	display: grid;
	flex: 0 0 38px;
	width: 38px;
	height: 38px;
	place-items: center;
	border-radius: 11px;
	background: #fff3ca;
	color: var(--synex-catalog-gold-dark);
}

.synex-product-summary__icon svg {
	width: 21px;
	height: 21px;
}

.synex-product-summary__heading small {
	display: block;
	margin-bottom: 2px;
	color: var(--synex-catalog-gold-dark);
	font-size: 10px;
	font-weight: 850;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.synex-product-summary__heading strong {
	display: block;
	color: var(--synex-catalog-ink);
	font-size: 17px;
	line-height: 1.2;
}

.synex-product-summary__content {
	color: #34363a;
	font-size: 14px;
	line-height: 1.62;
}

.synex-product-summary__content > :first-child {
	margin-top: 0;
}

.synex-product-summary__content > :last-child {
	margin-bottom: 0;
}

.synex-product-summary__content h3 {
	margin: 12px 0 8px;
	color: var(--synex-catalog-ink);
	font-size: 15px;
	line-height: 1.35;
}

.synex-product-summary__content ul {
	display: grid;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.synex-product-summary__content li {
	position: relative;
	margin: 0;
	padding-left: 24px;
}

.synex-product-summary__content li::before {
	position: absolute;
	top: 0.46em;
	left: 2px;
	width: 8px;
	height: 8px;
	border: 2px solid var(--synex-catalog-gold-dark);
	border-radius: 50%;
	content: "";
}

.synex-product-summary__content a {
	color: #805500;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.synex-product-summary__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 14px;
	padding-top: 13px;
	border-top: 1px solid var(--synex-catalog-line);
}

.synex-product-summary__chips span {
	padding: 6px 9px;
	border-radius: 999px;
	background: #f1f2f3;
	color: #50535a;
	font-size: 10px;
	font-weight: 750;
	line-height: 1;
}

/* Coupon, assurance and purchase details */
body.single-product .synex-product-coupon {
	margin-top: 14px;
}

.synex-purchase-assurance {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin-top: 14px;
}

.synex-purchase-assurance > div {
	display: flex;
	align-items: center;
	gap: 9px;
	min-width: 0;
	padding: 11px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 12px;
	background: var(--synex-catalog-soft);
}

.synex-purchase-assurance > div > span {
	display: grid;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	place-items: center;
	border-radius: 9px;
	background: #fff;
	color: var(--synex-catalog-gold-dark);
	font-size: 10px;
	font-weight: 900;
}

.synex-purchase-assurance p {
	min-width: 0;
	margin: 0;
	line-height: 1.15;
}

.synex-purchase-assurance strong,
.synex-purchase-assurance small {
	display: block;
}

.synex-purchase-assurance strong {
	color: var(--synex-catalog-ink);
	font-size: 11px;
}

.synex-purchase-assurance small {
	margin-top: 3px;
	color: var(--synex-catalog-muted);
	font-size: 9px;
	line-height: 1.25;
}

/* Uniform long description */
body.single-product .elementor-element-66c96151 {
	margin-top: 54px !important;
	margin-bottom: 52px !important;
}

body.single-product .elementor-element-273707fe {
	padding: 0 !important;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 22px !important;
	background: #fff !important;
	box-shadow: var(--synex-catalog-shadow);
}

body.single-product .wd-tabs-header {
	padding: 18px 26px 0;
	border-bottom: 1px solid var(--synex-catalog-line);
}

body.single-product .wd-tab-content {
	padding: 0 30px 30px;
}

.synex-product-description {
	color: #3b3d42;
	font-size: 16px;
	line-height: 1.75;
}

.synex-product-description__header {
	margin: 0 -30px 30px;
	padding: 34px 34px 30px;
	border-bottom: 1px solid var(--synex-catalog-line);
	background:
		radial-gradient(circle at 88% 0%, rgba(255, 191, 0, 0.16), transparent 32%),
		linear-gradient(145deg, #fff, #fafafa);
}

.synex-product-description__header > span,
.synex-recommendations__header > div > span {
	display: block;
	margin-bottom: 7px;
	color: var(--synex-catalog-gold-dark);
	font-size: 11px;
	font-weight: 850;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.synex-product-description__header h2 {
	margin: 0 0 8px;
	color: var(--synex-catalog-ink);
	font-size: clamp(28px, 3vw, 40px);
	font-weight: 850;
	line-height: 1.1;
	letter-spacing: -0.035em;
}

.synex-product-description__header p {
	max-width: 720px;
	margin: 0;
	color: var(--synex-catalog-muted);
	font-size: 15px;
	line-height: 1.55;
}

.synex-product-description__content {
	max-width: 980px;
	margin: 0 auto;
}

.synex-product-description__content h2 {
	margin: 38px 0 14px;
	padding-top: 4px;
	color: var(--synex-catalog-ink);
	font-size: clamp(23px, 2.4vw, 31px);
	font-weight: 820;
	line-height: 1.18;
	letter-spacing: -0.025em;
}

.synex-product-description__content h3 {
	margin: 28px 0 10px;
	color: var(--synex-catalog-ink);
	font-size: 20px;
	font-weight: 800;
	line-height: 1.3;
}

.synex-product-description__content h4 {
	margin: 22px 0 8px;
	color: var(--synex-catalog-ink);
	font-size: 17px;
	font-weight: 800;
}

.synex-product-description__content p {
	margin: 0 0 18px;
}

.synex-product-description__content ul,
.synex-product-description__content ol {
	display: grid;
	gap: 9px;
	margin: 0 0 22px;
	padding-left: 24px;
}

.synex-product-description__content li {
	padding-left: 4px;
}

.synex-product-description__content img {
	height: auto;
	margin: 20px auto;
	border-radius: 14px;
}

.synex-product-description__content table {
	width: 100%;
	margin: 22px 0;
	overflow: hidden;
	border: 1px solid var(--synex-catalog-line);
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 14px;
	font-size: 14px;
}

.synex-product-description__content th,
.synex-product-description__content td {
	padding: 12px 14px;
	border-right: 1px solid var(--synex-catalog-line);
	border-bottom: 1px solid var(--synex-catalog-line);
	text-align: left;
	vertical-align: top;
}

.synex-product-description__content th {
	background: var(--synex-catalog-soft);
	color: var(--synex-catalog-ink);
	font-weight: 800;
}

.synex-product-description__content tr:last-child > * {
	border-bottom: 0;
}

.synex-product-description__content tr > *:last-child {
	border-right: 0;
}

.synex-description-table-wrap {
	width: 100%;
	margin: 22px 0;
	overflow-x: auto;
	border-radius: 14px;
	-webkit-overflow-scrolling: touch;
}

.synex-description-table-wrap table {
	min-width: 620px;
	margin: 0;
}

.synex-before-buying {
	display: flex;
	gap: 14px;
	max-width: 980px;
	margin: 36px auto 0;
	padding: 20px;
	border: 1px solid #e9d694;
	border-radius: 16px;
	background: #fffaf0;
}

.synex-before-buying__icon {
	display: grid;
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 12px;
	background: #fff;
	color: var(--synex-catalog-gold-dark);
}

.synex-before-buying__icon svg {
	width: 22px;
	height: 22px;
}

.synex-before-buying strong {
	display: block;
	margin-bottom: 4px;
	color: var(--synex-catalog-ink);
	font-size: 15px;
}

.synex-before-buying p {
	margin: 0;
	color: #5d5140;
	font-size: 13px;
	line-height: 1.55;
}

.synex-before-buying a {
	color: #744e00;
	font-weight: 800;
	text-decoration: underline;
}

/* Relevant products */
.synex-recommendations {
	width: min(1320px, calc(100% - 30px));
	margin: 64px auto 28px;
	padding: 32px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 22px;
	background: #fff;
	box-shadow: var(--synex-catalog-shadow);
}

.synex-recommendations__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 24px;
}

.synex-recommendations__header h2 {
	margin: 0 0 7px;
	color: var(--synex-catalog-ink);
	font-size: clamp(26px, 3vw, 38px);
	font-weight: 850;
	line-height: 1.1;
	letter-spacing: -0.035em;
}

.synex-recommendations__header p {
	margin: 0;
	color: var(--synex-catalog-muted);
	font-size: 14px;
}

.synex-recommendations__header > a {
	flex: 0 0 auto;
	padding: 10px 14px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 10px;
	color: var(--synex-catalog-ink);
	font-size: 12px;
	font-weight: 800;
}

.synex-recommendations__header > a:hover {
	border-color: var(--synex-catalog-gold);
	background: #fffaf0;
}

.synex-recommendations ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 16px !important;
	margin: 0 !important;
}

.synex-recommendations ul.products::before,
.synex-recommendations ul.products::after {
	display: none !important;
}

.synex-recommendations ul.products > li.product {
	width: auto !important;
	margin: 0 !important;
}

/* Shared purchase flow */
.woocommerce-cart .wd-page-title,
.woocommerce-checkout .wd-page-title,
.woocommerce-cart .elementor-element-27fdfdf6,
.woocommerce-checkout .elementor-element-2a8dc90 {
	display: none !important;
}

.synex-purchase-flow {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 36px;
	margin: 0 0 26px;
	padding: 26px 28px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 20px;
	background:
		radial-gradient(circle at 92% 5%, rgba(255, 191, 0, 0.18), transparent 30%),
		linear-gradient(145deg, #fff, #fafafa);
	box-shadow: 0 12px 34px rgba(24, 25, 28, 0.05);
}

.synex-purchase-flow__intro {
	max-width: 590px;
}

.synex-purchase-flow__intro > span {
	display: block;
	margin-bottom: 6px;
	color: var(--synex-catalog-gold-dark);
	font-size: 10px;
	font-weight: 850;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.synex-purchase-flow h1 {
	margin: 0 0 7px;
	color: var(--synex-catalog-ink);
	font-size: clamp(30px, 3.4vw, 45px);
	font-weight: 850;
	line-height: 1.06;
	letter-spacing: -0.04em;
}

.synex-purchase-flow p {
	margin: 0;
	color: var(--synex-catalog-muted);
	font-size: 14px;
	line-height: 1.5;
}

.synex-purchase-flow ol {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.synex-purchase-flow li {
	display: flex;
	align-items: center;
	gap: 7px;
	padding: 8px 10px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 10px;
	background: #fff;
	color: #777a81;
}

.synex-purchase-flow li > span {
	display: grid;
	width: 24px;
	height: 24px;
	place-items: center;
	border-radius: 7px;
	background: var(--synex-catalog-soft);
	font-size: 9px;
	font-weight: 900;
}

.synex-purchase-flow li strong {
	font-size: 11px;
}

.synex-purchase-flow li.is-current {
	border-color: var(--synex-catalog-gold);
	background: #fffaf0;
	color: var(--synex-catalog-ink);
}

.synex-purchase-flow li.is-current > span {
	background: var(--synex-catalog-gold);
	color: #171819;
}

.synex-purchase-flow li.is-complete {
	color: var(--synex-catalog-success);
}

/* Cart */
.woocommerce-cart .wd-content-area.site-content {
	padding-top: 32px;
	padding-bottom: 70px;
}

.woocommerce-cart .elementor-element-2b09209c {
	margin-top: 0 !important;
	margin-bottom: 44px !important;
}

.woocommerce-cart .woocommerce-cart-form {
	padding: 8px 24px 20px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 18px;
	background: #fff;
	box-shadow: var(--synex-catalog-shadow);
}

.woocommerce-cart table.shop_table {
	margin: 0;
	border: 0;
	background: transparent;
}

.woocommerce-cart table.shop_table thead th {
	padding: 18px 12px 14px;
	border-bottom: 1px solid var(--synex-catalog-line);
	color: #777a81;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.woocommerce-cart table.shop_table td {
	padding: 18px 12px;
	border-bottom: 1px solid var(--synex-catalog-line);
	vertical-align: middle;
}

.woocommerce-cart table.shop_table tr:last-child td {
	border-bottom: 0;
}

.woocommerce-cart td.product-thumbnail img {
	width: 76px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 12px;
	background: #fff;
}

.woocommerce-cart td.product-name a {
	color: var(--synex-catalog-ink);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
}

.woocommerce-cart td.product-price,
.woocommerce-cart td.product-subtotal {
	color: var(--synex-catalog-ink);
	font-weight: 800;
	white-space: nowrap;
}

.woocommerce-cart td.product-remove a {
	display: grid;
	width: 32px;
	height: 32px;
	place-items: center;
	border: 1px solid #f0d2cf;
	border-radius: 9px;
	background: #fff8f7;
	color: var(--synex-catalog-danger) !important;
}

.woocommerce-cart .quantity {
	border: 1px solid var(--synex-catalog-line);
	border-radius: 10px;
}

.woocommerce-cart .actions {
	padding-top: 18px !important;
}

.woocommerce-cart .coupon {
	display: flex;
	gap: 8px;
}

.woocommerce-cart .coupon label {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

.woocommerce-cart .coupon input.input-text {
	min-width: 170px;
	height: 44px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 10px;
	background: #fff;
}

.woocommerce-cart .coupon button,
.woocommerce-cart button[name="update_cart"] {
	min-height: 44px;
	border-radius: 10px;
	font-size: 12px;
	font-weight: 800;
}

.woocommerce-cart .cart_totals {
	padding: 24px !important;
	border: 1px solid var(--synex-catalog-line) !important;
	border-radius: 18px !important;
	background: #fff !important;
	box-shadow: var(--synex-catalog-shadow);
}

.woocommerce-cart .elementor-element-349dda43 {
	position: sticky;
	top: 126px;
	align-self: flex-start;
}

.woocommerce-cart .cart_totals h2 {
	margin: 0 0 18px;
	color: var(--synex-catalog-ink);
	font-size: 23px;
	font-weight: 850;
}

.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
	padding: 13px 0;
	border-bottom: 1px solid var(--synex-catalog-line);
}

.woocommerce-cart .cart_totals table td {
	text-align: right;
}

.woocommerce-cart .order-total th,
.woocommerce-cart .order-total td {
	padding-top: 18px !important;
	color: var(--synex-catalog-ink);
	font-size: 17px;
}

.woocommerce-cart .wc-proceed-to-checkout {
	margin: 18px 0 0;
	padding: 0;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	min-height: 52px;
	margin: 0;
	padding: 15px 18px;
	border-radius: 12px;
	background: var(--synex-catalog-gold) !important;
	box-shadow: 0 10px 24px rgba(255, 191, 0, 0.22);
	color: #171819 !important;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.45;
}

.synex-cart-digital-note {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 12px 0;
	padding: 12px;
	border: 1px solid #cae5d8;
	border-radius: 11px;
	background: #f2fbf6;
	color: #315845;
}

.synex-cart-digital-note strong {
	font-size: 12px;
}

.synex-cart-digital-note span {
	font-size: 10px;
	line-height: 1.4;
}

.synex-cart-help {
	display: flex;
	flex-wrap: wrap;
	gap: 5px 10px;
	margin-top: 14px;
	padding: 14px 16px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 12px;
	background: var(--synex-catalog-soft);
	font-size: 12px;
}

.synex-cart-help strong {
	color: var(--synex-catalog-ink);
}

.synex-cart-help span {
	color: var(--synex-catalog-muted);
}

.synex-cart-help a {
	color: #765000;
	font-weight: 800;
}

/* Checkout */
.woocommerce-checkout .wd-content-area.site-content {
	padding-top: 32px;
	padding-bottom: 72px;
}

.woocommerce-checkout .elementor-element-204aec {
	align-items: flex-start;
	margin-top: 0 !important;
	margin-bottom: 54px !important;
}

.woocommerce-checkout .elementor-element-93b3305 {
	padding: 26px !important;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 18px;
	background: #fff;
	box-shadow: var(--synex-catalog-shadow);
}

.woocommerce-checkout .elementor-element-2c16455c {
	position: sticky;
	top: 126px;
	align-self: flex-start;
}

.woocommerce-checkout .elementor-element-5101945b {
	padding: 26px !important;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 18px !important;
	background: #fff !important;
	box-shadow: var(--synex-catalog-shadow);
}

.woocommerce-checkout .elementor-element-12c9453c .title,
.woocommerce-checkout .elementor-element-12c9453c h4 {
	margin-bottom: 18px !important;
	color: var(--synex-catalog-ink);
	font-size: 22px !important;
	font-weight: 850 !important;
	letter-spacing: -0.02em;
}

.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .woocommerce-additional-fields > h3 {
	margin: 0 0 20px;
	color: var(--synex-catalog-ink);
	font-size: 23px;
	font-weight: 850;
	letter-spacing: -0.025em;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.woocommerce-checkout .form-row {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.woocommerce-checkout .form-row-wide,
.woocommerce-checkout #billing_company_field,
.woocommerce-checkout #billing_country_field,
.woocommerce-checkout #billing_address_1_field,
.woocommerce-checkout #billing_address_2_field,
.woocommerce-checkout #billing_email_field,
.woocommerce-checkout #billing_phone_field {
	grid-column: 1 / -1;
}

.woocommerce-checkout .form-row label {
	display: block;
	margin-bottom: 6px;
	color: #4e5157;
	font-size: 11px;
	font-weight: 800;
}

.woocommerce-checkout .form-row label .required {
	color: var(--synex-catalog-danger);
}

.woocommerce-checkout .input-text,
.woocommerce-checkout select,
.woocommerce-checkout .select2-selection {
	min-height: 48px !important;
	border: 1px solid var(--synex-catalog-line) !important;
	border-radius: 10px !important;
	background: #fff !important;
	color: var(--synex-catalog-ink);
	box-shadow: none !important;
}

.woocommerce-checkout .input-text {
	padding: 11px 13px !important;
}

.woocommerce-checkout .input-text:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout .select2-container--open .select2-selection {
	border-color: #c99000 !important;
	box-shadow: 0 0 0 3px rgba(255, 191, 0, 0.15) !important;
	outline: 0;
}

.woocommerce-checkout .select2-selection__rendered {
	padding: 9px 34px 9px 13px !important;
	line-height: 28px !important;
}

.woocommerce-checkout .select2-selection__arrow {
	top: 10px !important;
	right: 8px !important;
}

.woocommerce-checkout .woocommerce-additional-fields {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid var(--synex-catalog-line);
}

.woocommerce-checkout #order_comments {
	min-height: 92px;
	resize: vertical;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle {
	margin-bottom: 16px;
}

.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	padding: 13px 16px;
	border: 1px solid #ead99f;
	border-radius: 12px;
	background: #fffaf0;
	color: #5b4b28;
	font-size: 12px;
}

.woocommerce-checkout form.checkout_coupon {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 8px;
	margin: 0 0 18px;
	padding: 16px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 12px;
	background: var(--synex-catalog-soft);
}

.woocommerce-checkout form.checkout_coupon > p {
	float: none;
	width: auto;
	margin: 0;
}

.woocommerce-checkout form.checkout_coupon > p:first-child {
	grid-column: 1 / -1;
	color: var(--synex-catalog-muted);
	font-size: 12px;
}

.woocommerce-checkout form.checkout_coupon button {
	min-height: 48px;
	border-radius: 10px;
}

.woocommerce-checkout .elementor-element-f8d3f3e {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table {
	margin: 0 0 18px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 12px;
	background: #fff;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table td {
	padding: 12px;
	border-bottom: 1px solid var(--synex-catalog-line);
	font-size: 12px;
	vertical-align: top;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table thead th {
	background: var(--synex-catalog-soft);
	color: #70737a;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table .product-name {
	color: var(--synex-catalog-ink);
	font-weight: 750;
	line-height: 1.35;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table td:last-child,
.woocommerce-checkout table.woocommerce-checkout-review-order-table th:last-child {
	text-align: right;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tr:last-child > * {
	border-bottom: 0;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table .order-total > * {
	padding-top: 16px;
	padding-bottom: 16px;
	background: #fffaf0;
	color: var(--synex-catalog-ink);
	font-size: 15px;
}

.woocommerce-checkout #payment {
	border: 1px solid var(--synex-catalog-line);
	border-radius: 12px;
	background: #fff;
}

.woocommerce-checkout #payment ul.payment_methods {
	padding: 8px 16px;
	border-bottom: 1px solid var(--synex-catalog-line);
}

.woocommerce-checkout #payment ul.payment_methods li {
	padding: 10px 0;
}

.woocommerce-checkout #payment ul.payment_methods li + li {
	border-top: 1px solid var(--synex-catalog-line);
}

.woocommerce-checkout #payment ul.payment_methods label {
	color: var(--synex-catalog-ink);
	font-size: 13px;
	font-weight: 800;
}

.woocommerce-checkout #payment .payment_box {
	margin: 8px 0 2px;
	padding: 12px !important;
	border-radius: 10px;
	background: var(--synex-catalog-soft) !important;
	color: var(--synex-catalog-muted);
	font-size: 11px;
	line-height: 1.5;
}

.woocommerce-checkout #payment .place-order {
	padding: 16px !important;
}

.woocommerce-checkout .synex-checkout-disclosure {
	margin-bottom: 12px;
}

.woocommerce-checkout .synex-digital-consent,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	margin: 10px 0;
	padding: 12px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 10px;
	background: var(--synex-catalog-soft);
	font-size: 11px;
	line-height: 1.5;
}

.woocommerce-checkout .synex-digital-consent label,
.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text {
	cursor: pointer;
}

.woocommerce-checkout #place_order {
	width: 100%;
	min-height: 54px;
	margin-top: 12px;
	padding: 15px 18px;
	border: 0;
	border-radius: 12px;
	background: var(--synex-catalog-gold) !important;
	box-shadow: 0 10px 24px rgba(255, 191, 0, 0.24);
	color: #171819 !important;
	font-size: 14px;
	font-weight: 900;
	white-space: normal;
}

.woocommerce-checkout #place_order:hover {
	transform: translateY(-1px);
	background: #f2b600 !important;
}

.woocommerce-checkout .woocommerce-privacy-policy-text {
	color: var(--synex-catalog-muted);
	font-size: 10px;
	line-height: 1.5;
}

/* Notices and validation */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	border-radius: 12px !important;
}

.woocommerce-checkout .woocommerce-invalid input.input-text,
.woocommerce-checkout .woocommerce-invalid .select2-selection {
	border-color: #d92d20 !important;
	background: #fff8f7 !important;
}

.woocommerce-checkout .woocommerce-validated input.input-text,
.woocommerce-checkout .woocommerce-validated .select2-selection {
	border-color: #77b596 !important;
}

/* Empty cart */
.woocommerce-cart .cart-empty {
	margin: 30px auto 18px;
	padding: 28px;
	border: 1px solid var(--synex-catalog-line);
	border-radius: 16px;
	background: var(--synex-catalog-soft);
	color: var(--synex-catalog-ink);
	text-align: center;
}

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

.woocommerce-cart .return-to-shop .button {
	border-radius: 11px;
	background: var(--synex-catalog-gold);
	color: #171819;
	font-weight: 850;
}

/* Tablet */
@media (max-width: 1024px) {
	body.single-product .elementor-element-1a31ec87 {
		padding-right: 10px;
	}

	body.single-product .elementor-element-3ca196dc {
		padding: 22px !important;
	}

	.synex-purchase-assurance {
		grid-template-columns: 1fr;
	}

	.synex-recommendations ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.synex-purchase-flow {
		align-items: flex-start;
		flex-direction: column;
		gap: 20px;
	}

	.woocommerce-cart .elementor-element-349dda43,
	.woocommerce-checkout .elementor-element-2c16455c {
		position: static;
		top: auto;
	}

	.woocommerce-checkout .elementor-element-204aec {
		gap: 22px !important;
	}

	.woocommerce-checkout .elementor-element-93b3305,
	.woocommerce-checkout .elementor-element-2c16455c {
		width: 100% !important;
	}
}

/* Phone */
@media (max-width: 767px) {
	body.single-product .wd-content-area.site-content,
	.woocommerce-cart .wd-content-area.site-content,
	.woocommerce-checkout .wd-content-area.site-content {
		padding-top: 14px;
		padding-bottom: 44px;
	}

	body.single-product .elementor-33984 > .elementor-element-5be0485e {
		margin-bottom: 14px !important;
	}

	body.single-product .elementor-element-3c8f9867 {
		min-height: 44px;
		padding: 8px 12px !important;
		border-radius: 12px !important;
	}

	body.single-product .elementor-element-3939f5b9 {
		padding: 0 0 24px !important;
	}

	body.single-product .elementor-element-1a31ec87 {
		padding: 0;
	}

	body.single-product .elementor-element-2d090320 {
		padding: 12px;
		border-radius: 16px;
	}

	body.single-product .elementor-element-3ca196dc {
		margin: 14px 0 0 !important;
		padding: 18px !important;
		border-radius: 16px !important;
	}

	body.single-product .product_title {
		font-size: 28px !important;
	}

	body.single-product .price {
		margin-top: 16px !important;
		font-size: 27px !important;
	}

	body.single-product form.cart {
		display: grid;
		grid-template-columns: 104px 1fr;
	}

	body.single-product form.cart .single_add_to_cart_button {
		min-width: 0;
		padding-right: 12px;
		padding-left: 12px;
		font-size: 13px;
	}

	body.single-product table.variations,
	body.single-product table.variations tbody {
		display: block;
		width: 100%;
	}

	body.single-product table.variations tr {
		display: block;
		margin-bottom: 14px;
	}

	body.single-product table.variations th {
		margin-bottom: 6px;
	}

	.synex-product-summary {
		padding: 15px;
		border-radius: 14px;
	}

	.synex-product-summary__content {
		font-size: 13px;
	}

	.synex-product-summary__chips {
		gap: 5px;
	}

	.synex-product-summary__chips span {
		font-size: 9px;
	}

	.synex-purchase-assurance {
		grid-template-columns: 1fr;
	}

	body.single-product .elementor-element-66c96151 {
		margin-top: 28px !important;
		margin-bottom: 34px !important;
	}

	body.single-product .elementor-element-273707fe {
		border-radius: 16px !important;
	}

	body.single-product .wd-tabs-header {
		padding: 12px 16px 0;
		overflow-x: auto;
		white-space: nowrap;
	}

	body.single-product .wd-tab-content {
		padding: 0 16px 20px;
	}

	.synex-product-description {
		font-size: 14px;
		line-height: 1.68;
	}

	.synex-product-description__header {
		margin: 0 -16px 22px;
		padding: 24px 18px 21px;
	}

	.synex-product-description__header h2 {
		font-size: 28px;
	}

	.synex-product-description__content h2 {
		margin-top: 30px;
		font-size: 23px;
	}

	.synex-product-description__content h3 {
		margin-top: 24px;
		font-size: 18px;
	}

	.synex-product-description__content table {
		font-size: 12px;
	}

	.synex-before-buying {
		gap: 11px;
		margin-top: 26px;
		padding: 15px;
	}

	.synex-before-buying__icon {
		flex-basis: 34px;
		width: 34px;
		height: 34px;
	}

	.synex-recommendations {
		margin-top: 38px;
		padding: 20px 16px;
		border-radius: 16px;
	}

	.synex-recommendations__header {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.synex-recommendations__header h2 {
		font-size: 28px;
	}

	.synex-recommendations ul.products {
		display: flex !important;
		gap: 12px !important;
		margin-right: -16px !important;
		padding-right: 16px !important;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}

	.synex-recommendations ul.products > li.product {
		flex: 0 0 min(78vw, 290px);
		scroll-snap-align: start;
	}

	.synex-purchase-flow {
		gap: 17px;
		margin-bottom: 18px;
		padding: 20px 17px;
		border-radius: 15px;
	}

	.synex-purchase-flow h1 {
		font-size: 32px;
	}

	.synex-purchase-flow p {
		font-size: 12px;
	}

	.synex-purchase-flow ol {
		width: 100%;
		gap: 4px;
	}

	.synex-purchase-flow li {
		flex: 1 1 0;
		justify-content: center;
		min-width: 0;
		padding: 7px 5px;
	}

	.synex-purchase-flow li > span {
		display: none;
	}

	.synex-purchase-flow li strong {
		font-size: 10px;
	}

	.woocommerce-cart .elementor-element-2b09209c {
		margin-bottom: 30px !important;
	}

	.woocommerce-cart .woocommerce-cart-form {
		padding: 4px 14px 14px;
		border-radius: 15px;
	}

	.woocommerce-cart table.shop_table thead {
		display: none;
	}

	.woocommerce-cart table.shop_table,
	.woocommerce-cart table.shop_table tbody,
	.woocommerce-cart table.shop_table tr,
	.woocommerce-cart table.shop_table td {
		display: block;
		width: 100%;
	}

	.woocommerce-cart table.shop_table tr.cart_item {
		position: relative;
		display: grid;
		grid-template-columns: 68px 1fr;
		gap: 4px 12px;
		padding: 16px 0;
		border-bottom: 1px solid var(--synex-catalog-line);
	}

	.woocommerce-cart table.shop_table tr.cart_item td {
		padding: 0;
		border: 0;
		text-align: left !important;
	}

	.woocommerce-cart td.product-remove {
		position: absolute;
		top: 12px;
		right: 0;
		z-index: 2;
		width: auto !important;
	}

	.woocommerce-cart td.product-thumbnail {
		grid-row: 1 / span 4;
		grid-column: 1;
	}

	.woocommerce-cart td.product-thumbnail::before {
		display: none;
	}

	.woocommerce-cart td.product-thumbnail img {
		width: 68px;
	}

	.woocommerce-cart td.product-name,
	.woocommerce-cart td.product-price,
	.woocommerce-cart td.product-quantity,
	.woocommerce-cart td.product-subtotal {
		grid-column: 2;
		padding-right: 34px !important;
	}

	.woocommerce-cart td.product-name {
		margin-bottom: 5px;
	}

	.woocommerce-cart td.product-name::before,
	.woocommerce-cart td.product-price::before,
	.woocommerce-cart td.product-quantity::before,
	.woocommerce-cart td.product-subtotal::before {
		display: inline;
		float: none;
		margin-right: 5px;
		color: #777a81;
		font-size: 9px;
		font-weight: 800;
		text-transform: uppercase;
	}

	.woocommerce-cart td.product-name::before {
		display: none;
	}

	.woocommerce-cart .actions {
		display: grid !important;
		gap: 8px;
	}

	.woocommerce-cart .coupon {
		display: grid;
		grid-template-columns: 1fr auto;
		width: 100%;
	}

	.woocommerce-cart .coupon input.input-text {
		min-width: 0;
		width: 100% !important;
	}

	.woocommerce-cart button[name="update_cart"] {
		width: 100%;
	}

	.woocommerce-cart .cart_totals {
		margin-top: 18px;
		padding: 19px !important;
		border-radius: 15px !important;
	}

	.synex-cart-help {
		display: block;
	}

	.synex-cart-help strong {
		display: block;
		margin-bottom: 4px;
	}

	.woocommerce-checkout .elementor-element-204aec {
		flex-direction: column !important;
		gap: 16px !important;
		margin-bottom: 34px !important;
	}

	.woocommerce-checkout .elementor-element-93b3305,
	.woocommerce-checkout .elementor-element-5101945b {
		padding: 18px !important;
		border-radius: 15px !important;
	}

	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.woocommerce-checkout .form-row,
	.woocommerce-checkout .form-row-wide,
	.woocommerce-checkout #billing_company_field,
	.woocommerce-checkout #billing_country_field,
	.woocommerce-checkout #billing_address_1_field,
	.woocommerce-checkout #billing_address_2_field,
	.woocommerce-checkout #billing_email_field,
	.woocommerce-checkout #billing_phone_field {
		grid-column: 1;
	}

	.woocommerce-checkout .elementor-element-12c9453c .title,
	.woocommerce-checkout .elementor-element-12c9453c h4,
	.woocommerce-checkout .woocommerce-billing-fields > h3 {
		font-size: 20px !important;
	}

	.woocommerce-checkout form.checkout_coupon {
		grid-template-columns: 1fr;
	}

	.woocommerce-checkout form.checkout_coupon > p:first-child {
		grid-column: 1;
	}

	.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
	.woocommerce-checkout table.woocommerce-checkout-review-order-table td {
		padding: 10px 9px;
		font-size: 11px;
	}

	.woocommerce-checkout #payment .place-order {
		padding: 12px !important;
	}

	.woocommerce-checkout #place_order {
		font-size: 13px;
	}

	.synex-product-description__content table {
		display: block;
		width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

/* Woodmart emits a div-based loop on single-product recommendations. */
.synex-recommendations .products.wd-products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 16px !important;
	margin: 0 !important;
}

.synex-recommendations .products.wd-products::before,
.synex-recommendations .products.wd-products::after {
	display: none !important;
}

.synex-recommendations .products.wd-products > .product {
	width: auto !important;
	margin: 0 !important;
}

@media (max-width: 1024px) {
	.synex-recommendations .products.wd-products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 767px) {
	.synex-recommendations .products.wd-products {
		display: flex !important;
		gap: 12px !important;
		margin-right: -16px !important;
		padding-right: 16px !important;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}

	.synex-recommendations .products.wd-products > .product {
		flex: 0 0 min(78vw, 290px);
		scroll-snap-align: start;
	}
}

/* Cart, checkout and side-cart alignment patch — 2026-08-30. */
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .woocommerce-cart-form__contents,
.woocommerce-cart .woocommerce-cart-form__cart-item,
.woocommerce-checkout form.checkout,
.woocommerce-checkout .elementor-element-204aec,
.cart-widget-side,
.cart-widget-side * {
	box-sizing: border-box;
}

.woocommerce-cart .woocommerce-cart-form,
.woocommerce-checkout form.checkout {
	min-width: 0;
	max-width: 100%;
	overflow: visible;
}

/* Quantity controls: fixed readable dimensions across Woodmart breakpoints. */
.woocommerce-cart .quantity,
.single-product .quantity {
	display: inline-grid !important;
	grid-template-columns: 42px 54px 42px !important;
	align-items: stretch !important;
	width: 138px !important;
	min-width: 138px !important;
	height: 48px !important;
	overflow: hidden !important;
	border: 1px solid #d9dbe0 !important;
	border-radius: 12px !important;
	background: #fff !important;
	box-shadow: none !important;
}

.woocommerce-cart .quantity input.qty,
.single-product .quantity input.qty {
	display: block !important;
	grid-column: 2 !important;
	width: 54px !important;
	min-width: 54px !important;
	max-width: 54px !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 3px !important;
	border: 0 !important;
	border-right: 1px solid #e2e3e6 !important;
	border-left: 1px solid #e2e3e6 !important;
	border-radius: 0 !important;
	background: #fff !important;
	color: #202124 !important;
	-webkit-text-fill-color: #202124 !important;
	font-family: inherit !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	line-height: 46px !important;
	text-align: center !important;
	opacity: 1 !important;
	appearance: textfield !important;
	-moz-appearance: textfield !important;
}

.woocommerce-cart .quantity input.qty::-webkit-inner-spin-button,
.woocommerce-cart .quantity input.qty::-webkit-outer-spin-button,
.single-product .quantity input.qty::-webkit-inner-spin-button,
.single-product .quantity input.qty::-webkit-outer-spin-button {
	margin: 0 !important;
	-webkit-appearance: none !important;
}

.woocommerce-cart .quantity .minus,
.woocommerce-cart .quantity .plus,
.single-product .quantity .minus,
.single-product .quantity .plus {
	display: grid !important;
	width: 42px !important;
	min-width: 42px !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 !important;
	place-items: center !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #f7f7f8 !important;
	color: #303238 !important;
	-webkit-text-fill-color: #303238 !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	line-height: 46px !important;
	opacity: 1 !important;
}

.woocommerce-cart .quantity .plus,
.single-product .quantity .plus {
	background: #ffbf00 !important;
	color: #171819 !important;
	-webkit-text-fill-color: #171819 !important;
}

.woocommerce-cart .quantity .minus:hover,
.woocommerce-cart .quantity .plus:hover,
.single-product .quantity .minus:hover,
.single-product .quantity .plus:hover {
	filter: brightness(0.96);
}

/* Desktop cart table. */
.woocommerce-cart table.shop_table {
	width: 100% !important;
	table-layout: auto !important;
}

.woocommerce-cart table.shop_table td.product-remove {
	width: 48px;
}

.woocommerce-cart table.shop_table td.product-thumbnail {
	width: 98px;
}

.woocommerce-cart table.shop_table td.product-thumbnail a {
	display: block;
	width: 78px;
	height: 78px;
	overflow: hidden;
	border: 1px solid #e2e3e6;
	border-radius: 12px;
	background: #fff;
}

.woocommerce-cart table.shop_table td.product-thumbnail img {
	display: block !important;
	width: 78px !important;
	min-width: 0 !important;
	max-width: 78px !important;
	height: 78px !important;
	margin: 0 !important;
	object-fit: contain !important;
	object-position: center;
}

.woocommerce-cart table.shop_table td.product-name {
	min-width: 230px;
	max-width: 520px;
	padding-right: 18px;
}

.woocommerce-cart table.shop_table td.product-quantity {
	width: 170px;
	min-width: 170px;
	text-align: center;
}

.woocommerce-cart table.shop_table td.product-price,
.woocommerce-cart table.shop_table td.product-subtotal {
	min-width: 130px;
	text-align: right;
}

/* Checkout alignment and concise final acceptance. */
.woocommerce-checkout .elementor-element-204aec,
.woocommerce-checkout .elementor-element-93b3305,
.woocommerce-checkout .elementor-element-2c16455c,
.woocommerce-checkout .elementor-element-5101945b {
	min-width: 0 !important;
	max-width: 100% !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table {
	width: 100% !important;
	table-layout: fixed;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name {
	width: 68%;
	overflow-wrap: anywhere;
	word-break: normal;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total {
	width: 32%;
	white-space: nowrap;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table img {
	width: 46px !important;
	max-width: 46px !important;
	height: 46px !important;
	object-fit: contain;
	border-radius: 8px;
}

.woocommerce-checkout .synex-digital-consent,
.woocommerce-checkout #synex_digital_content_consent_field {
	display: none !important;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	margin: 10px 0 !important;
	padding: 12px !important;
	border: 1px solid #dedfe3 !important;
	border-radius: 10px !important;
	background: #f8f8f9 !important;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label {
	display: grid !important;
	grid-template-columns: 18px minmax(0, 1fr);
	align-items: start;
	gap: 9px;
	margin: 0 !important;
	color: #4d5056;
	font-size: 11px;
	line-height: 1.5;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
	width: 18px !important;
	height: 18px !important;
	margin: 1px 0 0 !important;
	accent-color: #ffbf00;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text {
	min-width: 0;
	overflow-wrap: anywhere;
}

/* Professional Woodmart side-cart. */
.wd-close-side,
.wd-close-side-opened {
	z-index: 10010 !important;
}

.cart-widget-side,
.cart-widget-side.wd-opened {
	z-index: 10020 !important;
	width: min(420px, 100vw) !important;
	background: #fff !important;
	box-shadow: -18px 0 54px rgba(20, 22, 26, 0.16) !important;
}

.cart-widget-side .wd-heading {
	min-height: 70px;
	padding: 18px 20px !important;
	border-bottom: 1px solid #e4e5e8 !important;
	background: #fff !important;
}

.cart-widget-side .wd-heading .title,
.cart-widget-side .wd-heading .widget-heading {
	color: #202124 !important;
	font-size: 20px !important;
	font-weight: 850 !important;
	letter-spacing: -0.02em;
}

.cart-widget-side .close-side-widget {
	display: grid !important;
	width: 38px !important;
	height: 38px !important;
	place-items: center !important;
	border: 1px solid #e2e3e6 !important;
	border-radius: 10px !important;
	background: #f7f7f8 !important;
	color: #202124 !important;
}

.cart-widget-side .widget_shopping_cart,
.cart-widget-side .widget_shopping_cart_content,
.cart-widget-side .shopping-cart-widget-body {
	min-width: 0;
	max-width: 100%;
}

.cart-widget-side .wd-scroll-content {
	padding: 10px 18px !important;
}

.cart-widget-side ul.cart_list,
.cart-widget-side ul.product_list_widget {
	margin: 0 !important;
	padding: 0 !important;
}

.cart-widget-side li.mini_cart_item {
	position: relative;
	display: grid !important;
	grid-template-columns: 72px minmax(0, 1fr) 30px;
	gap: 7px 12px;
	min-width: 0;
	margin: 0 !important;
	padding: 16px 0 !important;
	border-bottom: 1px solid #e8e9eb !important;
}

.cart-widget-side li.mini_cart_item > a:not(.remove) {
	display: contents !important;
	color: #202124 !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
}

.cart-widget-side li.mini_cart_item img {
	display: block !important;
	grid-row: 1 / span 3;
	grid-column: 1;
	width: 72px !important;
	min-width: 0 !important;
	max-width: 72px !important;
	height: 72px !important;
	margin: 0 !important;
	object-fit: contain !important;
	border: 1px solid #e3e4e7 !important;
	border-radius: 11px !important;
	background: #fff !important;
}

.cart-widget-side li.mini_cart_item > a:not(.remove) {
	grid-column: 2;
	min-width: 0;
	overflow-wrap: anywhere;
}

.cart-widget-side li.mini_cart_item .quantity {
	display: block !important;
	grid-column: 2;
	width: auto !important;
	min-width: 0 !important;
	height: auto !important;
	margin: 2px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #666a73 !important;
	font-size: 12px !important;
	font-weight: 700;
	line-height: 1.4 !important;
}

.cart-widget-side li.mini_cart_item .remove {
	position: static !important;
	display: grid !important;
	grid-row: 1;
	grid-column: 3;
	width: 30px !important;
	height: 30px !important;
	margin: 0 !important;
	place-items: center;
	border: 1px solid #efd5d2 !important;
	border-radius: 9px !important;
	background: #fff8f7 !important;
	color: #b42318 !important;
	font-size: 17px !important;
	line-height: 1 !important;
}

.cart-widget-side .shopping-cart-widget-footer {
	padding: 16px 18px 20px !important;
	border-top: 1px solid #e4e5e8 !important;
	background: #fff !important;
	box-shadow: 0 -10px 28px rgba(24, 25, 28, 0.05);
}

.cart-widget-side .shopping-cart-widget-footer::before {
	display: block;
	margin-bottom: 12px;
	padding: 10px 12px;
	border: 1px solid #cde4d8;
	border-radius: 10px;
	background: #f2faf6;
	color: #315845;
	content: "Digitális kézbesítés · nincs szállítási díj";
	font-size: 11px;
	font-weight: 800;
	text-align: center;
}

.cart-widget-side .woocommerce-mini-cart__total {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin: 0 0 14px !important;
	padding: 0 0 14px !important;
	border-bottom: 1px solid #e4e5e8 !important;
	color: #202124;
	font-size: 14px;
}

.cart-widget-side .woocommerce-mini-cart__total .amount {
	color: #202124 !important;
	font-size: 18px !important;
	font-weight: 900 !important;
}

.cart-widget-side .woocommerce-mini-cart__buttons {
	display: grid !important;
	grid-template-columns: 1fr 1.2fr;
	gap: 9px;
	margin: 0 !important;
}

.cart-widget-side .woocommerce-mini-cart__buttons .button {
	display: grid !important;
	min-height: 48px;
	margin: 0 !important;
	padding: 11px 12px !important;
	place-items: center;
	border: 1px solid #d9dbe0 !important;
	border-radius: 11px !important;
	background: #fff !important;
	color: #202124 !important;
	font-size: 12px !important;
	font-weight: 850 !important;
	line-height: 1.3;
	text-align: center;
}

.cart-widget-side .woocommerce-mini-cart__buttons .checkout {
	border-color: #ffbf00 !important;
	background: #ffbf00 !important;
	color: #171819 !important;
	box-shadow: 0 8px 20px rgba(255, 191, 0, 0.22);
}

/* Tablet cart and checkout. */
@media (max-width: 1024px) {
	.woocommerce-cart .elementor-element-2b09209c,
	.woocommerce-checkout .elementor-element-204aec {
		gap: 18px !important;
	}

	.woocommerce-cart table.shop_table td.product-name {
		min-width: 180px;
	}

	.woocommerce-cart table.shop_table td.product-quantity {
		width: 150px;
		min-width: 150px;
	}
}

/* Phone-specific cart, checkout and side-cart. */
@media (max-width: 767px) {
	.synex-purchase-flow {
		width: calc(100% - 24px) !important;
		margin: 0 12px 14px !important;
		padding: 15px !important;
		border-radius: 14px !important;
	}

	.synex-purchase-flow__intro > span {
		margin-bottom: 4px;
		font-size: 9px;
	}

	.synex-purchase-flow h1 {
		margin-bottom: 0;
		font-size: 26px !important;
	}

	.synex-purchase-flow__intro p {
		display: none;
	}

	.synex-purchase-flow ol {
		gap: 4px !important;
	}

	.synex-purchase-flow li {
		min-height: 38px;
		padding: 6px 4px !important;
		border-radius: 9px !important;
	}

	.synex-purchase-flow li strong {
		font-size: 9px !important;
		white-space: nowrap;
	}

	.woocommerce-cart .woocommerce-cart-form {
		width: 100%;
		padding: 0 13px 13px !important;
		overflow: hidden !important;
	}

	.woocommerce-cart table.shop_table,
	.woocommerce-cart table.shop_table tbody,
	.woocommerce-cart table.shop_table tr,
	.woocommerce-cart table.shop_table td {
		width: 100% !important;
		max-width: 100% !important;
	}

	.woocommerce-cart table.shop_table tr.cart_item {
		display: grid !important;
		grid-template-columns: 72px minmax(0, 1fr) !important;
		gap: 6px 12px !important;
		min-width: 0 !important;
		padding: 16px 0 !important;
		overflow: hidden !important;
	}

	.woocommerce-cart table.shop_table td.product-thumbnail {
		display: block !important;
		grid-row: 1 / span 4 !important;
		grid-column: 1 !important;
		width: 72px !important;
		min-width: 0 !important;
		max-width: 72px !important;
		padding: 0 !important;
	}

	.woocommerce-cart table.shop_table td.product-thumbnail a,
	.woocommerce-cart table.shop_table td.product-thumbnail img {
		width: 72px !important;
		min-width: 0 !important;
		max-width: 72px !important;
		height: 72px !important;
	}

	.woocommerce-cart table.shop_table td.product-name,
	.woocommerce-cart table.shop_table td.product-quantity,
	.woocommerce-cart table.shop_table td.product-subtotal {
		display: block !important;
		grid-column: 2 !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: 100% !important;
		padding: 0 34px 0 0 !important;
		text-align: left !important;
		overflow-wrap: anywhere;
	}

	.woocommerce-cart table.shop_table td.product-name {
		margin-bottom: 5px;
	}

	.woocommerce-cart table.shop_table td.product-name a {
		display: block;
		font-size: 13px !important;
		line-height: 1.35;
	}

	.woocommerce-cart table.shop_table td.product-price {
		display: none !important;
	}

	.woocommerce-cart table.shop_table td.product-quantity::before,
	.woocommerce-cart table.shop_table td.product-subtotal::before {
		display: block !important;
		float: none !important;
		margin: 0 0 5px !important;
		color: #85888f;
		font-size: 9px !important;
		font-weight: 850;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

	.woocommerce-cart table.shop_table td.product-quantity {
		margin-top: 4px;
	}

	.woocommerce-cart table.shop_table td.product-subtotal {
		margin-top: 5px;
		color: #202124;
		font-size: 14px;
		font-weight: 850;
	}

	.woocommerce-cart table.shop_table td.product-remove {
		position: absolute !important;
		top: 13px !important;
		right: 0 !important;
		z-index: 3;
		display: block !important;
		width: 30px !important;
		padding: 0 !important;
	}

	.woocommerce-cart .quantity {
		grid-template-columns: 38px 48px 38px !important;
		width: 124px !important;
		min-width: 124px !important;
		height: 44px !important;
	}

	.woocommerce-cart .quantity input.qty {
		width: 48px !important;
		min-width: 48px !important;
		max-width: 48px !important;
		height: 42px !important;
		font-size: 15px !important;
		line-height: 42px !important;
	}

	.woocommerce-cart .quantity .minus,
	.woocommerce-cart .quantity .plus {
		width: 38px !important;
		min-width: 38px !important;
		height: 42px !important;
		line-height: 42px !important;
	}

	.woocommerce-cart .actions {
		padding-top: 14px !important;
	}

	.woocommerce-cart .coupon {
		grid-template-columns: minmax(0, 1fr) auto !important;
	}

	.woocommerce-cart .coupon button {
		padding-right: 12px !important;
		padding-left: 12px !important;
		white-space: nowrap;
	}

	.woocommerce-cart .cart_totals {
		width: 100% !important;
		overflow: hidden;
	}

	.woocommerce-checkout .elementor-element-93b3305,
	.woocommerce-checkout .elementor-element-5101945b {
		width: 100% !important;
		padding: 16px !important;
		overflow: hidden;
	}

	.woocommerce-checkout .woocommerce-checkout-review-order-table {
		table-layout: auto;
	}

	.woocommerce-checkout .woocommerce-checkout-review-order-table th,
	.woocommerce-checkout .woocommerce-checkout-review-order-table td {
		max-width: 100%;
		padding: 10px 8px !important;
		white-space: normal !important;
		overflow-wrap: anywhere;
	}

	.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total {
		width: 34%;
		text-align: right;
		white-space: nowrap !important;
	}

	.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
		padding: 10px !important;
	}

	.woocommerce-checkout #place_order {
		min-height: 52px;
		padding: 13px 10px !important;
		font-size: 12px !important;
	}

	.cart-widget-side {
		width: 100vw !important;
		max-width: 390px !important;
	}

	.cart-widget-side .wd-heading {
		min-height: 62px;
		padding: 14px 15px !important;
	}

	.cart-widget-side .wd-scroll-content {
		padding: 6px 14px !important;
	}

	.cart-widget-side li.mini_cart_item {
		grid-template-columns: 64px minmax(0, 1fr) 28px;
		gap: 6px 10px;
		padding: 14px 0 !important;
	}

	.cart-widget-side li.mini_cart_item img {
		width: 64px !important;
		max-width: 64px !important;
		height: 64px !important;
	}

	.cart-widget-side li.mini_cart_item .remove {
		width: 28px !important;
		height: 28px !important;
	}

	.cart-widget-side .shopping-cart-widget-footer {
		padding: 13px 14px 16px !important;
	}

	.cart-widget-side .woocommerce-mini-cart__buttons {
		grid-template-columns: 1fr !important;
	}

	.cart-widget-side .woocommerce-mini-cart__buttons .button {
		min-height: 45px;
	}
}

@media (max-width: 380px) {
	.synex-purchase-flow li strong {
		font-size: 8px !important;
	}

	.woocommerce-cart table.shop_table tr.cart_item {
		grid-template-columns: 62px minmax(0, 1fr) !important;
		gap: 6px 9px !important;
	}

	.woocommerce-cart table.shop_table td.product-thumbnail,
	.woocommerce-cart table.shop_table td.product-thumbnail a,
	.woocommerce-cart table.shop_table td.product-thumbnail img {
		width: 62px !important;
		max-width: 62px !important;
		height: 62px !important;
	}
}

/* Definitive checkout quantity and progress alignment fix — 2026-08-30. */
.woocommerce-checkout .synex-purchase-flow,
.woocommerce-cart .synex-purchase-flow,
.elementor-shortcode > .synex-purchase-flow {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 auto 18px !important;
	padding: 20px !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
}

.synex-purchase-flow__intro {
	width: 100% !important;
	max-width: none !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
}

.synex-purchase-flow ol {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	align-items: stretch !important;
	justify-content: stretch !important;
	gap: 10px !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.synex-purchase-flow ol > li {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 9px !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	min-height: 58px !important;
	margin: 0 !important;
	padding: 10px 8px !important;
	box-sizing: border-box !important;
	text-align: center !important;
	transform: none !important;
}

.synex-purchase-flow ol > li > span,
.synex-purchase-flow ol > li > strong {
	flex: 0 0 auto !important;
	margin: 0 !important;
	transform: none !important;
}

.woocommerce-page .cart_item div.quantity,
.woocommerce-checkout div.quantity,
.woocommerce-cart div.quantity {
	display: grid !important;
	grid-template-columns: 40px 52px 40px !important;
	align-items: center !important;
	justify-content: center !important;
	width: 132px !important;
	min-width: 132px !important;
	max-width: 132px !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 1px solid #d7d9de !important;
	border-radius: 11px !important;
	background: #fff !important;
	color-scheme: light !important;
}

.woocommerce-page .cart_item div.quantity input.qty,
.woocommerce-page .cart_item div.quantity input[type="number"],
.woocommerce-checkout div.quantity input.qty,
.woocommerce-checkout div.quantity input[type="number"],
.woocommerce-cart div.quantity input.qty,
.woocommerce-cart div.quantity input[type="number"] {
	display: block !important;
	position: relative !important;
	z-index: 4 !important;
	grid-column: 2 !important;
	width: 52px !important;
	min-width: 52px !important;
	max-width: 52px !important;
	height: 44px !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-right: 1px solid #e0e2e6 !important;
	border-left: 1px solid #e0e2e6 !important;
	border-radius: 0 !important;
	background: #fff !important;
	background-image: none !important;
	color: #111318 !important;
	-webkit-text-fill-color: #111318 !important;
	caret-color: #111318 !important;
	font-family: Arial, sans-serif !important;
	font-size: 18px !important;
	font-style: normal !important;
	font-weight: 800 !important;
	font-variant-numeric: tabular-nums !important;
	letter-spacing: 0 !important;
	line-height: normal !important;
	text-align: center !important;
	text-indent: 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
	-webkit-appearance: none !important;
	-moz-appearance: textfield !important;
	appearance: textfield !important;
	transform: none !important;
}

.woocommerce-page .cart_item div.quantity .minus,
.woocommerce-page .cart_item div.quantity .plus,
.woocommerce-checkout div.quantity .minus,
.woocommerce-checkout div.quantity .plus,
.woocommerce-cart div.quantity .minus,
.woocommerce-cart div.quantity .plus {
	display: grid !important;
	width: 40px !important;
	min-width: 40px !important;
	max-width: 40px !important;
	height: 44px !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	place-items: center !important;
	border: 0 !important;
	border-radius: 0 !important;
	font-size: 19px !important;
	line-height: 1 !important;
	opacity: 1 !important;
	transform: none !important;
}

.woocommerce-checkout-review-order-table .product-name .product-quantity,
.woocommerce-checkout-review-order-table strong.product-quantity,
.woocommerce-checkout .cart_item .product-quantity {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 28px !important;
	margin: 3px 0 3px 6px !important;
	padding: 3px 7px !important;
	border: 1px solid #dfe1e5 !important;
	border-radius: 7px !important;
	background: #f3f4f6 !important;
	color: #202124 !important;
	-webkit-text-fill-color: #202124 !important;
	font-size: 12px !important;
	font-weight: 850 !important;
	line-height: 1.2 !important;
	white-space: nowrap !important;
	opacity: 1 !important;
	visibility: visible !important;
}

@media (max-width: 767px) {
	.woocommerce-checkout .synex-purchase-flow,
	.woocommerce-cart .synex-purchase-flow,
	.elementor-shortcode > .synex-purchase-flow {
		width: 100% !important;
		margin: 0 auto 14px !important;
		padding: 12px !important;
		border-radius: 12px !important;
	}

	.synex-purchase-flow__intro {
		display: none !important;
	}

	.synex-purchase-flow ol {
		gap: 6px !important;
	}

	.synex-purchase-flow ol > li {
		flex-direction: column !important;
		gap: 4px !important;
		min-height: 58px !important;
		padding: 7px 2px !important;
	}

	.synex-purchase-flow ol > li > span {
		width: 28px !important;
		height: 28px !important;
		min-width: 28px !important;
		font-size: 11px !important;
		line-height: 28px !important;
	}

	.synex-purchase-flow ol > li > strong {
		max-width: 100% !important;
		font-size: 9px !important;
		line-height: 1.1 !important;
		white-space: nowrap !important;
	}

	.woocommerce-page .cart_item div.quantity,
	.woocommerce-checkout div.quantity,
	.woocommerce-cart div.quantity {
		grid-template-columns: 38px 50px 38px !important;
		width: 126px !important;
		min-width: 126px !important;
		max-width: 126px !important;
		height: 44px !important;
	}

	.woocommerce-page .cart_item div.quantity input.qty,
	.woocommerce-page .cart_item div.quantity input[type="number"],
	.woocommerce-checkout div.quantity input.qty,
	.woocommerce-checkout div.quantity input[type="number"],
	.woocommerce-cart div.quantity input.qty,
	.woocommerce-cart div.quantity input[type="number"] {
		width: 50px !important;
		min-width: 50px !important;
		max-width: 50px !important;
		height: 42px !important;
		min-height: 42px !important;
		font-size: 17px !important;
	}

	.woocommerce-page .cart_item div.quantity .minus,
	.woocommerce-page .cart_item div.quantity .plus,
	.woocommerce-checkout div.quantity .minus,
	.woocommerce-checkout div.quantity .plus,
	.woocommerce-cart div.quantity .minus,
	.woocommerce-cart div.quantity .plus {
		width: 38px !important;
		min-width: 38px !important;
		max-width: 38px !important;
		height: 42px !important;
		min-height: 42px !important;
	}
}
