/* EVA Master - sklep. Kierunek: EVA Master Warsztat. */

:root {
	--bg: #0B0B0C;
	--surface: #141415;
	--surface-alt: #1C1C1D;
	--ink: #F4F3F1;
	--ink-soft: #D7D5D1;
	--muted: #9B9995;
	--line: #2A2A2B;
	--accent: #FF6B00;
	--accent-hover: #FF7D1F;
	--accent-deep: #C24E00;
	--error: #FF8A5C;
	--font-display: 'Barlow Condensed', 'Arial Narrow', sans-serif;
	--font-body: 'Barlow', system-ui, sans-serif;
	--s-sm: 12px; --s-md: 20px; --s-lg: 36px; --s-xl: 64px; --s-xxl: 104px;
	--r-sm: 6px; --r-md: 14px; --r-lg: 24px; --r-pill: 999px;
	--wrap: 1200px; --gutter: 20px;
}

:where(body) *, :where(body) *::before, :where(body) *::after { box-sizing: border-box; }

body {
	background: var(--bg);
	color: var(--ink);
	font-family: var(--font-body);
	font-size: 17px;
	line-height: 1.6;
	margin: 0;
	-webkit-font-smoothing: antialiased;
}

body ::selection { background: var(--accent); color: #0B0B0C; }
body :focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: var(--r-sm); }
body img, body video { max-width: 100%; height: auto; display: block; }
body a { color: inherit; text-decoration: none; }

h1, h2, h3, h4 {
	font-family: var(--font-display);
	font-weight: 800;
	text-transform: uppercase;
	line-height: 1;
	letter-spacing: -0.005em;
	margin: 0 0 var(--s-md);
}

.wrap { width: 100%; max-width: var(--wrap); margin-inline: auto; padding-inline: var(--gutter); }


/* Przyciski */
.btn, body .button, body button.button, body a.button,
body .woocommerce-button, body input[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 17px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	padding: 14px 28px;
	min-height: 48px;
	border-radius: var(--r-pill);
	border: 1px solid transparent;
	background: var(--accent);
	color: #0B0B0C;
	cursor: pointer;
	transition: background-color .18s ease, transform .18s ease, border-color .18s ease;
}
.btn:hover, body .button:hover, body a.button:hover, body input[type="submit"]:hover { background: var(--accent-hover); color: #0B0B0C; }
.btn:active, body .button:active { transform: translateY(1px); background: var(--accent-deep); }
.btn[disabled], body .button[disabled] { opacity: .4; cursor: not-allowed; }

.btn--ghost, body .button.wc-backward {
	background: transparent;
	color: var(--ink);
	border-color: var(--line);
}
.btn--ghost:hover, body .button.wc-backward:hover { background: rgba(244,243,241,.05); color: var(--ink); border-color: var(--muted); }

/* Kontener tresci */
.swrap { padding-block: var(--s-xl) var(--s-xxl); min-height: 50vh; }

body .woocommerce-breadcrumb { font-size: 14px; color: var(--muted); margin-bottom: var(--s-lg); }
body .woocommerce-breadcrumb a:hover { color: var(--accent); }

/* Komunikaty */
body .woocommerce-message, body .woocommerce-info, body .woocommerce-error {
	background: var(--surface);
	border: 1px solid var(--line);
	border-left: 3px solid var(--accent);
	border-radius: var(--r-md);
	color: var(--ink);
	padding: var(--s-md);
	margin-bottom: var(--s-lg);
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--s-sm);
}
body .woocommerce-error { border-left-color: var(--error); }
body .woocommerce-message::before, body .woocommerce-info::before, body .woocommerce-error::before { display: none; }
body .woocommerce-message .button { margin-inline-start: auto; }

@media (max-width: 900px) {
	.swrap { padding-block: var(--s-lg) var(--s-xl); }
}

@media (prefers-reduced-motion: reduce) {
	* { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* ---------- Strona produktu (wlasny szablon) ----------
   Sticky dziala w obrebie .pdp__top i tam sie zatrzymuje.
   Wczesniej zdjecie "jezdzilo" az pod sekcje z filmami,
   bo jego obszar w siatce obejmowal cala strone produktu. */
.pdp { padding-block: var(--s-lg) var(--s-xxl); }

.pdp__crumbs { display: flex; flex-wrap: wrap; gap: 8px; font-size: 14px; color: var(--muted); margin-bottom: var(--s-md); }
.pdp__crumbs a { color: var(--muted); }
.pdp__crumbs a:hover { color: var(--accent); }
.pdp__notices:empty { display: none; }

.pdp__top {
	display: grid;
	grid-template-columns: minmax(0, 400px) minmax(0, 1fr);
	gap: var(--s-xl);
	align-items: start;
}

.pdp__media {
	position: sticky;
	top: calc(var(--head-h) + 16px);
	align-self: start;
}

.pdp__intro { margin-top: var(--s-md); }
.pdp__title { font-size: 27px; margin-bottom: 8px; }
.pdp__lead { color: var(--ink-soft); font-size: 15px; margin: 0 0 var(--s-md); }
.pdp__usp { list-style: none; margin: 0; padding: 0; display: grid; gap: 7px; }
.pdp__usp li {
	position: relative;
	padding-left: 22px;
	font-size: 14px;
	color: var(--muted);
	line-height: 1.4;
}
.pdp__usp li::before {
	content: '';
	position: absolute;
	left: 0; top: 6px;
	width: 6px; height: 10px;
	border-right: 2px solid var(--accent);
	border-bottom: 2px solid var(--accent);
	transform: rotate(45deg);
}

@media (max-width: 1100px) {
	.pdp__top { grid-template-columns: 1fr; gap: var(--s-lg); }
	.pdp__media { position: static; max-width: 420px; }
}
/* ---------- Koszyk ---------- */
body .woocommerce table.shop_table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid var(--line);
	border-radius: var(--r-md);
	overflow: hidden;
	background: var(--surface);
	margin-bottom: var(--s-lg);
}
body .woocommerce table.shop_table th {
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .12em;
	color: var(--muted);
	text-align: left;
	padding: 14px var(--s-md);
	border-bottom: 1px solid var(--line);
}
body .woocommerce table.shop_table td {
	padding: var(--s-md);
	border-top: 1px solid var(--line);
	vertical-align: top;
}
body .woocommerce table.shop_table img { width: 72px; border-radius: var(--r-sm); }
body .woocommerce table.shop_table .product-name a { font-family: var(--font-display); font-weight: 700; font-size: 20px; text-transform: uppercase; }
body .woocommerce table.shop_table .product-name a:hover { color: var(--accent); }
body .woocommerce .variation, body .wc-item-meta {
	margin: 8px 0 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 3px;
	font-size: 14px;
	color: var(--muted);
}
body .woocommerce .variation dt, body .wc-item-meta strong {
	font-weight: 600;
	color: var(--ink-soft);
	float: none;
	margin: 0;
}
body .woocommerce .variation dd, body .wc-item-meta li > p { margin: 0 0 4px; }
body .woocommerce .variation dt, body .woocommerce .variation dd { display: inline; }
body .woocommerce .variation dd::after { content: ''; display: block; }
body .woocommerce .quantity input.qty {
	width: 74px;
	background: var(--surface-alt);
	border: 1px solid var(--line);
	border-radius: var(--r-sm);
	color: var(--ink);
	padding: 10px;
	font: inherit;
	text-align: center;
}
body .woocommerce a.remove {
	display: inline-grid;
	place-items: center;
	width: 26px; height: 26px;
	border-radius: 50%;
	background: var(--line);
	color: var(--ink) !important;
	font-size: 16px;
	line-height: 1;
	text-decoration: none;
}
body .woocommerce a.remove:hover { background: var(--error); color: #0B0B0C !important; }
body .woocommerce .cart-collaterals, body .cart_totals { margin-top: var(--s-lg); }
body .cart_totals h2, body .woocommerce-checkout h3, body #order_review_heading { font-size: 26px; }
body .woocommerce .actions .coupon { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: var(--s-sm); }
body .woocommerce .actions .coupon input {
	background: var(--surface-alt);
	border: 1px solid var(--line);
	border-radius: var(--r-sm);
	color: var(--ink);
	padding: 12px 14px;
	font: inherit;
	min-height: 48px;
}
body .woocommerce-cart-form__contents { display: block; }

/* ---------- Zamowienie ---------- */
body .woocommerce form .form-row { display: grid; gap: 6px; margin-bottom: var(--s-sm); padding: 0; }
body .woocommerce form .form-row label {
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .1em;
	color: var(--muted);
}
body .woocommerce form .form-row .required { color: var(--accent); border: 0; }
body .woocommerce form .form-row input.input-text,
body .woocommerce form .form-row textarea,
body .woocommerce form .form-row select,
body .select2-container--default .select2-selection--single {
	width: 100%;
	background: var(--surface-alt) !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--r-sm) !important;
	color: var(--ink) !important;
	font: inherit;
	padding: 12px 14px;
	min-height: 48px;
}
body .select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--ink); line-height: 24px; padding: 0; }
body .select2-dropdown { background: var(--surface); border-color: var(--line); color: var(--ink); }
body .select2-container--default .select2-results__option--highlighted { background: var(--accent); color: #0B0B0C; }
body .woocommerce form .form-row input:focus,
body .woocommerce form .form-row textarea:focus,
body .woocommerce form .form-row select:focus {
	border-color: var(--accent) !important;
	box-shadow: 0 0 0 3px rgba(255,107,0,.2);
	outline: none;
}
body .woocommerce-checkout .col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-lg); }
body .woocommerce-checkout .col2-set .col-1,
body .woocommerce-checkout .col2-set .col-2 { width: auto; float: none; }
body #customer_details { margin-bottom: var(--s-lg); }
body .woocommerce-checkout-review-order,
body .woocommerce-order-details,
body .woocommerce-customer-details {
	background: var(--surface);
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	padding: var(--s-md);
}
body .woocommerce-checkout-review-order table.shop_table { border: 0; background: none; margin: 0; }
body #payment { background: none; border-radius: 0; }
body #payment ul.payment_methods { list-style: none; padding: 0; margin: 0 0 var(--s-md); border: 0; display: grid; gap: 8px; }
body #payment ul.payment_methods li {
	background: var(--surface-alt);
	border: 1px solid var(--line);
	border-radius: var(--r-sm);
	padding: 14px var(--s-md);
}
body #payment div.payment_box { background: transparent; color: var(--muted); font-size: 14px; padding: 10px 0 0; margin: 0; }
body #payment div.payment_box::before { display: none; }
body .woocommerce-terms-and-conditions-wrapper { margin-bottom: var(--s-sm); font-size: 14px; color: var(--muted); }
body #place_order { width: 100%; }
body .woocommerce-thankyou-order-received { font-family: var(--font-display); font-weight: 800; font-size: 30px; text-transform: uppercase; color: var(--accent); }
body ul.order_details { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: var(--s-lg); margin: var(--s-lg) 0; }
body ul.order_details li { font-size: 13px; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); }
body ul.order_details li strong { display: block; font-family: var(--font-display); font-size: 20px; letter-spacing: 0; color: var(--ink); margin-top: 4px; }

/* ---------- Moje konto ---------- */
body .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0 0 var(--s-lg); display: flex; flex-wrap: wrap; gap: 6px; }
body .woocommerce-MyAccount-navigation a {
	display: block;
	padding: 10px 18px;
	border: 1px solid var(--line);
	border-radius: var(--r-pill);
	font-family: var(--font-display);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	font-size: 15px;
	color: var(--muted);
}
body .woocommerce-MyAccount-navigation li.is-active a { background: var(--accent); border-color: var(--accent); color: #0B0B0C; }
body .woocommerce-MyAccount-navigation, body .woocommerce-MyAccount-content { width: auto; float: none; }

/* ---------- Sklep / katalog ---------- */
body ul.products { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--s-md); }
body ul.products li.product { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md); padding: var(--s-md); margin: 0; width: auto; float: none; }
body ul.products li.product img { border-radius: var(--r-sm); margin-bottom: var(--s-sm); }
body ul.products li.product .woocommerce-loop-product__title { font-family: var(--font-display); font-weight: 800; font-size: 22px; text-transform: uppercase; margin-bottom: 6px; }
body ul.products li.product .price { color: var(--accent); font-family: var(--font-display); font-weight: 700; font-size: 20px; display: block; margin-bottom: var(--s-sm); }
body .woocommerce-result-count, body .woocommerce-ordering { color: var(--muted); font-size: 14px; }

@media (max-width: 860px) {
	body .woocommerce-checkout .col2-set { grid-template-columns: 1fr; }
	body .woocommerce table.shop_table thead { display: none; }
	body .woocommerce table.shop_table tr { display: grid; gap: 6px; padding: var(--s-md); border-top: 1px solid var(--line); }
	body .woocommerce table.shop_table td { display: flex; justify-content: space-between; gap: var(--s-sm); border: 0; padding: 4px 0; }
	body .woocommerce table.shop_table td::before { content: attr(data-title); font-family: var(--font-display); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; font-size: 13px; color: var(--muted); }
	body .woocommerce table.shop_table td.product-remove::before { display: none; }
}
/* Motyw dokłada własny pusty nagłówek i stopkę - na sklepie są zbędne. */
body.woocommerce-page #masthead,
body.woocommerce-page #colophon,
body.woocommerce-page .skip-link { display: none !important; }
body.woocommerce-page #wrapper > #inner-wrap { padding: 0; }

/* ---------- Konfigurator ----------
   Gestszy niz reszta serwisu: to narzedzie do klikania, nie tresc do czytania. */
.cfgx-wrap { scroll-margin-top: var(--head-h); }
.cfgx-wrap__title { font-size: 30px; margin-bottom: 4px; }
.cfgx-wrap__title em { font-style: normal; color: var(--accent); }
.cfgx-wrap__lead { color: var(--muted); font-size: 15px; margin: 0 0 var(--s-md); }

.cfgx { display: block; font-size: 15px; }

/* Kroki */
.cfgx__steps { display: flex; flex-wrap: wrap; gap: 4px; list-style: none; margin: 0 0 10px; padding: 0; counter-reset: cfg; }
.cfgx__steps li {
	counter-increment: cfg;
	display: flex; align-items: center; gap: 6px;
	padding: 6px 12px;
	border: 1px solid var(--line);
	border-radius: var(--r-pill);
	font-family: var(--font-display);
	font-weight: 700; font-size: 13px;
	text-transform: uppercase; letter-spacing: .06em;
	color: var(--muted); cursor: pointer;
	transition: color .15s ease, border-color .15s ease;
}
.cfgx__steps li::before { content: counter(cfg); display: grid; place-items: center; width: 17px; height: 17px; border-radius: 50%; background: var(--line); color: var(--bg); font-size: 11px; }
.cfgx__steps li:hover { color: var(--ink); }
.cfgx__steps li.is-active { color: var(--ink); border-color: var(--accent); }
.cfgx__steps li.is-active::before { background: var(--accent); }
.cfgx__steps li.is-done::before { background: var(--accent-deep); color: var(--ink); }

/* Panele */
.cfgx__panel { display: none; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md); padding: var(--s-md); margin-bottom: 10px; }
.cfgx__panel.is-active { display: block; }
.cfgx__h { font-size: 20px; margin-bottom: 2px; }
.cfgx__free { color: var(--accent); font-size: .6em; letter-spacing: .1em; }
.cfgx__lead { color: var(--muted); font-size: 14px; margin: 0 0 var(--s-sm); max-width: 70ch; }
.cfgx__label { display: block; font-family: var(--font-display); font-weight: 700; font-size: 12px; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); margin: var(--s-sm) 0 5px; }
.cfgx__input { width: 100%; background: var(--surface-alt); border: 1px solid var(--line); border-radius: var(--r-sm); color: var(--ink); font: inherit; padding: 9px 12px; min-height: 40px; }
.cfgx__input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(255,107,0,.2); outline: none; }
.cfgx__hint { color: var(--muted); font-size: 13px; margin: 6px 0 0; }

/* Krok 1 */


.cfgx__picked[hidden] { display: none; }
.cfgx__picked { display: flex; align-items: center; gap: var(--s-sm); margin-top: 10px; padding: 10px 14px; background: var(--surface-alt); border: 1px solid var(--accent); border-radius: var(--r-sm); }
.cfgx__picked-name { flex: 1; font-weight: 600; }
.cfgx__change { background: none; border: 0; color: var(--accent); cursor: pointer; font-family: var(--font-display); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; font-size: 14px; }

.cfgx__nocar { margin-top: var(--s-md); padding-top: var(--s-sm); border-top: 1px solid var(--line); }
.cfgx__nocar-q { font-family: var(--font-display); font-weight: 800; font-size: 17px; text-transform: uppercase; color: var(--ink); margin: 0 0 2px; }
.cfgx__nocar-a { color: var(--muted); font-size: 14px; margin: 0 0 10px; max-width: 62ch; }
.cfgx__nocar-cta { display: flex; flex-wrap: wrap; gap: 8px; }
.cfgx__nocar-cta .btn { font-size: 14px; padding: 9px 16px; min-height: 38px; }

/* Krok 2 */
.cfgx__sets { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
.setc { position: relative; display: block; cursor: pointer; }
.setc input { position: absolute; opacity: 0; pointer-events: none; }
.setc__body { display: grid; gap: 2px; align-content: start; height: 100%; padding: 12px 14px; background: var(--surface-alt); border: 1px solid var(--line); border-radius: var(--r-sm); transition: border-color .15s ease; }
.setc:hover .setc__body { border-color: var(--muted); }
.setc input:checked + .setc__body { border-color: var(--accent); box-shadow: inset 0 0 0 1px var(--accent); }
.setc__tag { justify-self: start; font-family: var(--font-display); font-weight: 700; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; color: var(--accent); }
.setc__name { font-family: var(--font-display); font-weight: 800; font-size: 17px; text-transform: uppercase; line-height: 1.1; }
.setc__desc { color: var(--muted); font-size: 13px; line-height: 1.35; }
.setc__price { font-family: var(--font-display); font-weight: 800; font-size: 20px; color: var(--accent); margin-top: auto; padding-top: 4px; }
.setc__off { display: none; font-size: 12px; color: var(--muted); margin-top: auto; padding-top: 4px; }
.setc.is-off { opacity: .4; cursor: not-allowed; }
.setc.is-off .setc__price { display: none; }
.setc.is-off .setc__off { display: block; }

/* Krok 3 */
.cfgx__look { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--s-md); align-items: start; }
.cfgx__chips { display: flex; flex-wrap: wrap; gap: 6px; }
.chip { cursor: pointer; }
.chip input { position: absolute; opacity: 0; pointer-events: none; }
.chip span { display: block; padding: 8px 16px; border: 1px solid var(--line); border-radius: var(--r-pill); font-family: var(--font-display); font-weight: 700; font-size: 14px; text-transform: uppercase; letter-spacing: .05em; color: var(--muted); white-space: nowrap; }
.chip input:checked + span { background: var(--accent); border-color: var(--accent); color: #0B0B0C; }

.cfgx__swatches { display: grid; grid-template-columns: repeat(auto-fill, minmax(56px, 1fr)); gap: 8px; }
.sw { cursor: pointer; text-align: center; }
.sw input { position: absolute; opacity: 0; pointer-events: none; }
.sw__dot { display: block; aspect-ratio: 1; border-radius: var(--r-sm); border: 2px solid var(--line); transition: border-color .15s ease, transform .15s ease; }
.sw:hover .sw__dot { transform: translateY(-2px); }
.sw input:checked + .sw__dot { border-color: var(--accent); box-shadow: 0 0 0 2px rgba(255,107,0,.25); }
.sw__name { display: block; margin-top: 4px; font-size: 11px; line-height: 1.25; color: var(--muted); }
.sw input:checked ~ .sw__name { color: var(--ink); }

/* Krok 4 */
.cfgx__addons { display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px; }
.addon { display: flex; align-items: center; gap: 10px; padding: 9px 12px; background: var(--surface-alt); border: 1px solid var(--line); border-radius: var(--r-sm); cursor: pointer; font-size: 14px; }
.addon:has(input:checked) { border-color: var(--accent); }
.addon input[type="checkbox"] { width: 17px; height: 17px; accent-color: var(--accent); flex: 0 0 auto; }
.addon__name { flex: 1; line-height: 1.3; }
.addon__price { font-family: var(--font-display); font-weight: 700; font-size: 15px; color: var(--accent); white-space: nowrap; }
.addon__qty { width: 56px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-sm); color: var(--ink); padding: 5px; font: inherit; font-size: 14px; }
.cfgx__panel textarea.cfgx__input { max-width: 100%; }

/* Pasek ceny */
.cfgx__sum {
	position: sticky; bottom: 0; z-index: 20;
	background: rgba(20,20,21,.96);
	-webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
	border: 1px solid var(--line); border-radius: var(--r-md);
	padding: 10px var(--s-md);
}
.cfgx__sum-main { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-md); }
.cfgx__sum-rows { flex: 1; display: flex; flex-wrap: wrap; gap: 4px 8px; min-width: 200px; }
.cfgx__empty { color: var(--muted); font-size: 13px; margin: 0; }
.cfgx__row { display: inline-flex; gap: 6px; color: var(--ink-soft); font-size: 13px; padding: 3px 10px; background: var(--surface-alt); border-radius: var(--r-pill); }
.cfgx__row span:last-child { color: var(--accent); font-weight: 600; white-space: nowrap; }
.cfgx__sum-buy { display: flex; align-items: center; gap: var(--s-sm); flex: 0 0 auto; }
.cfgx__total { display: flex; align-items: baseline; gap: 8px; }
.cfgx__total span { font-family: var(--font-display); font-weight: 700; font-size: 12px; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); }
.cfgx__total strong { font-family: var(--font-display); font-weight: 800; font-size: 28px; color: var(--accent); line-height: 1; }
.cfgx__submit { white-space: nowrap; font-size: 15px; padding: 11px 22px; min-height: 42px; }
.cfgx__sum-foot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--line); }
.cfgx__ship, .cfgx__note { font-size: 12px; color: var(--muted); margin: 0; }
.cfgx__ship.is-free { color: var(--accent); font-weight: 600; }
.cfgx__err { color: var(--error); font-size: 14px; margin: 0; }

@media (max-width: 1100px) {
	.cfgx__sets { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 860px) {
	.cfgx__sets, .cfgx__addons { grid-template-columns: 1fr; }
	.cfgx__sum { margin-inline: calc(var(--gutter) * -1); border-radius: var(--r-md) var(--r-md) 0 0; border-inline: 0; border-bottom: 0; padding-bottom: calc(10px + env(safe-area-inset-bottom)); }
	.cfgx__sum-buy { width: 100%; justify-content: space-between; }
	.cfgx__submit { flex: 1; }
	.cfgx__sum-rows { display: none; }
}
.cfgx__look > div > .cfgx__label:first-child { margin-top: 0; }
.cfgx__panel > .cfgx__label:first-of-type { margin-top: var(--s-sm); }

/* Nawigacja miedzy krokami */
.cfgx__nav {
	display: flex;
	align-items: center;
	gap: var(--s-sm);
	margin-top: var(--s-md);
	padding-top: var(--s-sm);
	border-top: 1px solid var(--line);
}
.cfgx__nav > span:first-child { flex: 0 0 auto; }
.cfgx__navhint {
	flex: 1;
	text-align: right;
	font-size: 13px;
	color: var(--muted);
	opacity: 0;
	transition: opacity .15s ease;
}
.cfgx__navhint.is-on { opacity: 1; }
.cfgx__back, .cfgx__next {
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: .08em;
	padding: 9px 20px;
	min-height: 38px;
	border-radius: var(--r-pill);
	cursor: pointer;
	transition: background-color .15s ease, border-color .15s ease, opacity .15s ease;
}
.cfgx__back { background: transparent; border: 1px solid var(--line); color: var(--ink); }
.cfgx__back:hover { border-color: var(--muted); background: rgba(244,243,241,.05); }
.cfgx__next { background: var(--accent); border: 1px solid transparent; color: #0B0B0C; margin-inline-start: auto; }
.cfgx__next:hover:not(:disabled) { background: var(--accent-hover); }
.cfgx__next:disabled { opacity: .35; cursor: not-allowed; }
.cfgx__nav:has(.cfgx__navhint) .cfgx__next { margin-inline-start: 0; }

/* Krok niedostepny, dopoki poprzedni nie jest uzupelniony */
.cfgx__steps li.is-locked { opacity: .4; cursor: not-allowed; }
.cfgx__steps li.is-locked:hover { color: var(--muted); }

@media (max-width: 520px) {
	.cfgx__navhint { display: none; }
	.cfgx__nav .cfgx__next { margin-inline-start: auto; }
	.cfgx__back, .cfgx__next { flex: 1; justify-content: center; }
}
/* Galeria produktu */
/* Zanim suwak sie uruchomi, pokazujemy tylko pierwsze zdjecie -
   inaczej przez moment widac wszystkie szesc jedno pod drugim. */
/* Rozwijany wybor auta: marka -> model, z wyszukiwarka w srodku */
.cbx { position: relative; }
.cbx[hidden] { display: none; }

.cbx__toggle {
	display: flex;
	align-items: center;
	gap: var(--s-sm);
	width: 100%;
	padding: 11px 14px;
	min-height: 46px;
	background: var(--surface-alt);
	border: 1px solid var(--line);
	border-radius: var(--r-sm);
	color: var(--ink);
	font: inherit;
	text-align: left;
	cursor: pointer;
	transition: border-color .15s ease;
}
.cbx__toggle:hover { border-color: var(--muted); }
.cbx__toggle[aria-expanded="true"] { border-color: var(--accent); }
.cbx__toggle-text { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cbx__caret {
	flex: 0 0 auto;
	width: 8px; height: 8px;
	border-right: 2px solid var(--muted);
	border-bottom: 2px solid var(--muted);
	transform: rotate(45deg) translate(-2px, -2px);
	transition: transform .18s ease;
}
.cbx__toggle[aria-expanded="true"] .cbx__caret { transform: rotate(-135deg) translate(-3px, -3px); border-color: var(--accent); }

.cbx__panel {
	position: absolute;
	z-index: 60;
	top: calc(100% + 6px);
	left: 0; right: 0;
	background: var(--surface);
	border: 1px solid var(--accent);
	border-radius: var(--r-md);
	box-shadow: 0 18px 40px rgba(11,11,12,.6);
	overflow: hidden;
	animation: cbxIn .16s ease;
}
.cbx__panel[hidden] { display: none; }
@keyframes cbxIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }

.cbx__head { display: flex; flex-direction: column; gap: 6px; padding: 10px; border-bottom: 1px solid var(--line); }
.cbx__back {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: none;
	border: 0;
	padding: 2px 0;
	color: var(--accent);
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .08em;
	cursor: pointer;
}
.cbx__back[hidden] { display: none; }
.cbx__back::before { content: ''; width: 7px; height: 7px; border-left: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); }
.cbx__search {
	width: 100%;
	background: var(--surface-alt);
	border: 1px solid var(--line);
	border-radius: var(--r-sm);
	color: var(--ink);
	font: inherit;
	font-size: 15px;
	padding: 9px 12px;
	min-height: 40px;
}
.cbx__search:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(255,107,0,.2); outline: none; }

.cbx__list { max-height: 300px; overflow-y: auto; overscroll-behavior: contain; }
.cbx__list:empty { display: none; }
.cbx__row {
	display: flex;
	align-items: baseline;
	gap: var(--s-sm);
	width: 100%;
	padding: 9px 14px;
	background: none;
	border: 0;
	border-bottom: 1px solid var(--line);
	color: var(--ink);
	font: inherit;
	text-align: left;
	cursor: pointer;
	transition: background-color .12s ease;
}
.cbx__row:last-child { border-bottom: 0; }
.cbx__row:hover, .cbx__row:focus-visible { background: var(--surface-alt); }
.cbx__row.is-off { opacity: .4; cursor: not-allowed; }
.cbx__name { flex: 1; font-size: 14px; line-height: 1.35; }
.cbx__meta { flex: 0 0 auto; font-size: 12px; color: var(--muted); white-space: nowrap; }
.cbx__row--brand .cbx__name { font-family: var(--font-display); font-weight: 700; font-size: 17px; text-transform: uppercase; letter-spacing: .03em; }
.cbx__row--brand::after { content: ''; width: 6px; height: 6px; border-right: 2px solid var(--muted); border-top: 2px solid var(--muted); transform: rotate(45deg); align-self: center; }

.cbx__msg { margin: 0; padding: 14px; font-size: 14px; color: var(--muted); }
.cbx__msg[hidden] { display: none; }
/* Dopoki nie ma ceny, nie pokazujemy pustego "Razem". */
.cfgx__total.is-empty { display: none; }
/* Gdy lista aut jest otwarta, pasek ceny schodzi z drogi. */
.cfgx.is-picking .cfgx__sum { opacity: .25; pointer-events: none; }
.cbx__brandhead { display: flex; align-items: baseline; gap: 8px; padding: 8px 14px; background: var(--surface-alt); border-bottom: 1px solid var(--line); }
.cbx__brandhead[hidden] { display: none; }
.cbx__brandhead b { font-family: var(--font-display); font-weight: 800; font-size: 17px; text-transform: uppercase; letter-spacing: .04em; color: var(--accent); }
.cbx__brandhead span { font-size: 13px; color: var(--muted); }

.cbx__headtop { display: none; align-items: center; gap: var(--s-sm); }
.cbx__title { flex: 1; font-family: var(--font-display); font-weight: 800; font-size: 18px; text-transform: uppercase; letter-spacing: .05em; }
.cbx__close { display: none; }
/* ==========================================================
   TELEFON. Zalozenia:
   1. Konfigurator ma byc od razu pod zdjeciem, a nie pod opisem.
   2. Wybor auta to pelnoekranowy arkusz - lista 2000 pozycji
      nie miesci sie w rozwijanym okienku nad klawiatura.
   3. Kazdy element dotykowy ma min. 44px.
   4. Nic nie moze zaslaniac paska z cena i przyciskiem zakupu.
   ========================================================== */

@media (max-width: 860px) {

	/* Blokada przewijania tla przy otwartym arkuszu */
	body.eva-lock { overflow: hidden; }

	/* Kolejnosc: zdjecie, konfigurator, dopiero potem opis */

	/* Zdjecie nie moze zjadac calego ekranu */

	/* Naglowek: nizszy, pasek korzysci przewijany w poziomie */
	.shead__inner { min-height: 58px; }
	.shead__strip {
		flex-wrap: nowrap;
		justify-content: flex-start;
		overflow-x: auto;
		scrollbar-width: none;
		gap: var(--s-md);
		padding-block: 6px;
	}
	.shead__strip::-webkit-scrollbar { display: none; }
	.shead__strip span { white-space: nowrap; }
	.shead__burger, .shead__cart, .shead__cta { min-height: 44px; }
	.shead__nav a { min-height: 48px; display: flex; align-items: center; }

	/* Kroki: jeden rzad z przewijaniem zamiast lamania na dwa */
	.cfgx__steps {
		flex-wrap: nowrap;
		overflow-x: auto;
		scrollbar-width: none;
		margin-inline: calc(var(--s-md) * -1);
		padding-inline: var(--s-md);
	}
	.cfgx__steps::-webkit-scrollbar { display: none; }
	.cfgx__steps li { flex: 0 0 auto; min-height: 40px; }

	.cfgx-wrap__title { font-size: 26px; }
	.cfgx__panel { padding: var(--s-md) 14px; }

	/* Cele dotykowe */
	.cbx__toggle { min-height: 52px; font-size: 16px; }
	.cbx__row { padding: 13px 16px; min-height: 48px; }
	.cbx__name { font-size: 15px; }
	.chip span { padding: 12px 18px; min-height: 44px; display: flex; align-items: center; }
	.addon { padding: 12px 14px; min-height: 52px; }
	.addon input[type="checkbox"] { width: 22px; height: 22px; }
	.setc__body { padding: 14px; }
	.cfgx__back, .cfgx__next { min-height: 46px; }
	.cfgx__change { min-height: 44px; padding-inline: 4px; }

	/* Pola formularza: 16px, inaczej iOS przybliza strone przy focusie */
	.cfgx__input, .cbx__search, .addon__qty { font-size: 16px; }

	/* --- Pelnoekranowy wybor auta --- */
	.cbx__panel {
		position: fixed;
		inset: 0;
		top: 0; left: 0; right: 0; bottom: 0;
		z-index: 200;
		display: flex;
		flex-direction: column;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		background: var(--bg);
		animation: cbxSheet .2s ease;
	}
	@keyframes cbxSheet { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }

	.cbx__head {
		flex: 0 0 auto;
		gap: 10px;
		padding: calc(10px + env(safe-area-inset-top)) var(--gutter) 10px;
		background: var(--surface);
	}
	.cbx__headtop { display: flex; }
	.cbx__close {
		display: grid;
		place-items: center;
		width: 44px; height: 44px;
		flex: 0 0 auto;
		border: 1px solid var(--line);
		border-radius: 50%;
		background: transparent;
		color: var(--ink);
		font-size: 26px;
		line-height: 1;
		cursor: pointer;
	}
	.cbx__back { min-height: 44px; }
	.cbx__back:not([hidden]) ~ .cbx__title { display: none; }
	.cbx__search { min-height: 48px; }

	.cbx__list {
		flex: 1;
		max-height: none;
		-webkit-overflow-scrolling: touch;
		padding-bottom: calc(var(--s-lg) + env(safe-area-inset-bottom));
	}
	.cbx__brandhead { flex: 0 0 auto; padding: 10px var(--gutter); }
	.cbx__msg { flex: 0 0 auto; }

	/* Pasek ceny nie przygasa, bo arkusz i tak zakrywa caly ekran */
	.cfgx.is-picking .cfgx__sum { opacity: 1; pointer-events: auto; }

	/* Pasek ceny: cena i przycisk w jednym rzedzie, przycisk szeroki */
	.cfgx__sum { padding: 10px var(--gutter); }
	.cfgx__sum-main { flex-wrap: nowrap; align-items: center; gap: var(--s-sm); }
	.cfgx__sum-buy { width: 100%; gap: var(--s-sm); }
	.cfgx__total { flex: 0 0 auto; flex-direction: column; align-items: flex-start; gap: 0; }
	.cfgx__total span { font-size: 10px; }
	.cfgx__total strong { font-size: 26px; }
	.cfgx__submit { flex: 1; min-height: 50px; font-size: 16px; }
	.cfgx__sum-foot { gap: 2px; }
	.cfgx__sum-foot .cfgx__note { display: none; }

	/* Kotwice pod przyklejonym naglowkiem */
	.cfgx-wrap, .cfgx__panel { scroll-margin-top: 120px; }
	.pdp { padding-block: var(--s-md) var(--s-xl); }
	.pdp__title { font-size: 23px; }
}

@media (max-width: 420px) {
	.shead__cta { display: none; }
	.cbx__title { font-size: 16px; }
	.cfgx__total strong { font-size: 23px; }
	.cfgx__submit { font-size: 15px; padding-inline: 14px; }
}

/* Podswietlenie dotkniecia zamiast szarego prostokata systemowego */
@media (hover: none) {
	body { -webkit-tap-highlight-color: rgba(255,107,0,.18); }
	.cbx__row:active, .setc:active .setc__body, .addon:active { background: var(--surface); }
}
/* ---------- Konfiguracja przy pozycji koszyka ---------- */
.evaspec {
	list-style: none;
	margin: 10px 0 0;
	padding: 10px 14px;
	display: grid;
	gap: 5px;
	background: var(--surface-alt);
	border: 1px solid var(--line);
	border-radius: var(--r-sm);
}
.evaspec__row { display: flex; gap: var(--s-sm); align-items: baseline; font-size: 14px; }
.evaspec__k {
	flex: 0 0 118px;
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .1em;
	color: var(--muted);
}
.evaspec__v { flex: 1; display: flex; align-items: center; gap: 8px; color: var(--ink); line-height: 1.4; }
.evaspec__dot {
	flex: 0 0 auto;
	width: 15px; height: 15px;
	border-radius: 4px;
	border: 1px solid var(--line);
}
.evaspec__note { font-style: normal; font-size: 12px; color: var(--muted); }
.evaspec__edit {
	display: inline-block;
	margin-top: 8px;
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--accent);
	border-bottom: 1px solid transparent;
}
.evaspec__edit:hover { border-bottom-color: var(--accent); }

/* ---------- Pasek do darmowej dostawy ---------- */
.shipbar {
	background: var(--surface);
	border: 1px solid var(--line);
	border-radius: var(--r-md);
	padding: 14px var(--s-md);
	margin-bottom: var(--s-md);
}
.shipbar.is-done { border-color: var(--accent); }
.shipbar__txt { margin: 0 0 8px; font-size: 15px; color: var(--muted); }
.shipbar__txt strong { color: var(--accent); font-family: var(--font-display); font-size: 19px; }
.shipbar.is-done .shipbar__txt { color: var(--ink); }
.shipbar__track { height: 6px; background: var(--surface-alt); border-radius: var(--r-pill); overflow: hidden; }
.shipbar__track span { display: block; height: 100%; background: var(--accent); border-radius: var(--r-pill); transition: width .3s ease; }

/* ---------- Pusty koszyk ---------- */
.emptycart { text-align: center; padding: var(--s-xl) var(--s-md); border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--surface); }
.emptycart h2 { font-size: 30px; margin-bottom: 8px; }
.emptycart p { color: var(--muted); margin: 0 0 var(--s-md); }

/* ---------- Kroki zamowienia ---------- */

/* ---------- Podziekowanie ---------- */
.thanksbox {
	background: var(--surface);
	border: 1px solid var(--line);
	border-left: 3px solid var(--accent);
	border-radius: var(--r-md);
	padding: var(--s-md);
	margin: var(--s-lg) 0;
}
.thanksbox h2 { font-size: 22px; margin-bottom: 10px; }
.thanksbox__list { margin: 0 0 var(--s-sm); padding-left: 20px; color: var(--ink-soft); display: grid; gap: 6px; }
.thanksbox__contact { margin: 0; color: var(--muted); font-size: 15px; }
.thanksbox__contact a { color: var(--accent); font-family: var(--font-display); font-weight: 700; font-size: 18px; }

/* Metody platnosci: wybrana ma byc widoczna */
body #payment ul.payment_methods li:has(input:checked) { border-color: var(--accent); }
body #payment ul.payment_methods label { cursor: pointer; font-weight: 600; }
body #payment ul.payment_methods input[type="radio"] { accent-color: var(--accent); width: 18px; height: 18px; margin-right: 8px; }

/* Metody wysylki w podsumowaniu */
body #shipping_method { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
body #shipping_method li { margin: 0; padding: 10px 12px; background: var(--surface-alt); border: 1px solid var(--line); border-radius: var(--r-sm); }
body #shipping_method li:has(input:checked) { border-color: var(--accent); }
body #shipping_method input[type="radio"] { accent-color: var(--accent); width: 17px; height: 17px; margin-right: 6px; }
body #shipping_method label { cursor: pointer; }
body .woocommerce-shipping-destination { font-size: 13px; color: var(--muted); }

@media (max-width: 860px) {
	.evaspec { padding: 10px 12px; }
	.evaspec__row { flex-direction: column; gap: 2px; }
	.evaspec__k { flex: none; }
	.emptycart h2 { font-size: 24px; }
}
/* ---------- Galeria produktu ---------- */
.evagal { display: grid; gap: 8px; }
.evagal__stage {
	position: relative;
	aspect-ratio: 1;
	border-radius: var(--r-md);
	overflow: hidden;
	background: var(--surface);
	border: 1px solid var(--line);
}
.evagal__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: opacity .2s ease;
}
.evagal.is-swapping .evagal__img { opacity: .35; }

.evagal__thumbs {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 6px;
}
.evagal__thumbs li { margin: 0; }
.evagal__thumb {
	display: block;
	width: 100%;
	padding: 0;
	border: 2px solid var(--line);
	border-radius: var(--r-sm);
	overflow: hidden;
	background: var(--surface);
	cursor: pointer;
	line-height: 0;
	transition: border-color .15s ease, opacity .15s ease;
	opacity: .6;
}
.evagal__thumb img { width: 100%; aspect-ratio: 1; object-fit: cover; display: block; }
.evagal__thumb:hover { opacity: .9; }
.evagal__thumb.is-active { border-color: var(--accent); opacity: 1; }

/* ---------- Sekcja z filmami ---------- */
.evawhy { margin-top: var(--s-xl); padding-top: var(--s-xl); border-top: 1px solid var(--line); }
.evawhy__title { font-size: clamp(28px, 3.4vw, 42px); margin-bottom: 4px; }
.evawhy__title em { font-style: normal; color: var(--accent); }
.evawhy__lead { color: var(--muted); margin: 0 0 var(--s-lg); }

.evawhy__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--s-lg); }
.evafilm__media {
	position: relative;
	aspect-ratio: 9 / 16;
	border-radius: var(--r-md);
	overflow: hidden;
	background: var(--surface-alt);
	margin-bottom: var(--s-sm);
}
.evafilm__video { width: 100%; height: 100%; object-fit: cover; display: block; }
.evafilm__title { font-size: 22px; margin-bottom: 4px; }
.evafilm__text { color: var(--muted); font-size: 15px; margin: 0; }

/* Panel temperatury: kontrast skali zamiast kolejnej karty */
.evatemp {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: var(--s-xl);
	align-items: center;
	margin-top: var(--s-xl);
	padding-top: var(--s-lg);
	border-top: 1px solid var(--line);
}
.evatemp__value {
	font-family: var(--font-display);
	font-weight: 800;
	font-size: clamp(48px, 7vw, 92px);
	line-height: .9;
	color: var(--accent);
	letter-spacing: -0.02em;
	margin: 0;
	white-space: nowrap;
}
.evatemp__value span { font-size: .42em; color: var(--ink); }
.evatemp__title { font-size: 24px; margin-bottom: 6px; max-width: 24ch; }
.evatemp p { color: var(--muted); margin: 0; max-width: 62ch; }

.evafacts {
	list-style: none;
	margin: var(--s-lg) 0 0;
	padding: var(--s-lg) 0 0;
	border-top: 1px solid var(--line);
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--s-md);
}
.evafacts li { display: flex; flex-direction: column; gap: 3px; }
.evafacts b { font-family: var(--font-display); font-weight: 800; font-size: 30px; line-height: 1; color: var(--accent); }
.evafacts span { font-size: 12px; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); }

@media (max-width: 1100px) {
	.evawhy { margin-top: var(--s-lg); padding-top: var(--s-lg); }
}

@media (max-width: 860px) {
	.evagal__thumbs { grid-template-columns: repeat(6, 1fr); gap: 5px; }
	.evawhy__grid { grid-template-columns: 1fr; gap: var(--s-lg); }
	.evafilm { display: grid; grid-template-columns: 130px 1fr; gap: var(--s-md); align-items: center; }
	.evafilm__media { margin-bottom: 0; }
	.evafilm__title { font-size: 19px; }
	.evafilm__text { font-size: 14px; }
	.evatemp { grid-template-columns: 1fr; gap: var(--s-sm); margin-top: var(--s-lg); }
	.evafacts { grid-template-columns: repeat(2, 1fr); }
	.evafacts b { font-size: 25px; }
}
/* ---------- Koszyk / zamówienie / konto: wspólny dokument ---------- */
.sdoc { padding-block: var(--s-lg) var(--s-xxl); }
.sdoc__head { margin-bottom: var(--s-lg); }
.sdoc__title { font-size: clamp(30px, 4vw, 46px); margin-bottom: 4px; }
.sdoc__sub { color: var(--muted); margin: 0; }

/* Pozycja koszyka: zdjęcie, nazwa, konfiguracja, cena */
body .woocommerce table.shop_table td.product-price,
body .woocommerce table.shop_table td.product-subtotal {
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 19px;
	color: var(--accent);
	white-space: nowrap;
}
body .woocommerce table.shop_table td.product-subtotal { font-size: 22px; }

/* Podsumowanie koszyka obok listy pozycji */
body .cart_totals {
	background: var(--surface);
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	padding: var(--s-md);
	width: 100%;
	float: none;
}
body .cart_totals h2 { font-size: 22px; margin-bottom: var(--s-sm); }
body .cart_totals table { width: 100%; border: 0; background: none; margin: 0; }
body .cart_totals th, body .cart_totals td { padding: 10px 0; border-top: 1px solid var(--line); border-bottom: 0; }
body .cart_totals tr:first-child th, body .cart_totals tr:first-child td { border-top: 0; }
body .cart_totals .order-total th, body .cart_totals .order-total td { font-size: 20px; }
body .cart_totals .order-total .woocommerce-Price-amount { font-family: var(--font-display); font-weight: 800; font-size: 28px; color: var(--accent); }
body .wc-proceed-to-checkout { padding: var(--s-sm) 0 0; }
body .wc-proceed-to-checkout a.checkout-button { width: 100%; font-size: 18px; min-height: 54px; }

/* Akcje pod tabelą */

/* Zamówienie: formularz obok podsumowania */
body form.checkout .woocommerce-checkout-review-order,
body .woocommerce-checkout .col2-set { grid-template-columns: 1fr; gap: 0; }

@media (max-width: 1000px) {
	body form.checkout #customer_details,
	body form.checkout .woocommerce-checkout-review-order,
}

@media (max-width: 860px) {
	.sdoc { padding-block: var(--s-md) var(--s-xl); }
	.sdoc__title { font-size: 26px; }
	body .woocommerce table.shop_table.cart img { width: 64px; }
	body .woocommerce .cart .actions { flex-direction: column; }
	body .woocommerce .cart .actions .coupon input { flex: 1; }
	body .wc-proceed-to-checkout a.checkout-button { min-height: 52px; }
}
/* Motyw dostarczal styl dla tekstu ukrytego dla czytnikow ekranu.
   Bez niego naglowki typu "Podsumowanie koszyka" staly sie widoczne. */
.screen-reader-text, .sr-only {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

/* Koszyk: tabela po lewej, podsumowanie po prawej. Bez floatow. */

/* Konfiguracja pozycji nie moze sie lamac po dwa slowa */
.evaspec { max-width: none; }
.evaspec__k { flex: 0 0 128px; }
.evaspec__v { min-width: 0; }

@media (max-width: 1100px) {
	body .woocommerce table.shop_table.cart td.product-name { width: auto; }
}
/* ---------- Koszyk: lista kart zamiast tabeli ---------- */
.ecart {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 350px);
	gap: var(--s-lg);
	align-items: start;
}
.ecart__form { margin: 0; }
.ecart__items { display: grid; gap: 10px; }

.ecitem {
	display: grid;
	grid-template-columns: 104px minmax(0, 1fr) auto;
	gap: var(--s-md);
	align-items: start;
	padding: var(--s-md);
	background: var(--surface);
	border: 1px solid var(--line);
	border-radius: var(--r-md);
}
.ecitem__thumb img { width: 104px; height: 104px; object-fit: cover; border-radius: var(--r-sm); display: block; }
.ecitem__name { font-size: 20px; margin: 0 0 10px; }
.ecitem__body { min-width: 0; }

.ecitem__side { display: grid; gap: 10px; justify-items: end; text-align: right; }
.ecitem__price {
	margin: 0;
	font-family: var(--font-display);
	font-weight: 800;
	font-size: 26px;
	color: var(--accent);
	white-space: nowrap;
	line-height: 1;
}
.ecitem__qty { display: flex; align-items: center; gap: 8px; }
.ecitem__qty span { font-size: 12px; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); }
.ecitem__qty .quantity { display: flex; }
.ecitem__qty .quantity input[type="number"] {
	width: 68px;
	background: var(--surface-alt);
	border: 1px solid var(--line);
	border-radius: var(--r-sm);
	color: var(--ink);
	padding: 8px;
	font: inherit;
	text-align: center;
}
.ecitem__remove {
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--muted);
	border-bottom: 1px solid transparent;
}
.ecitem__remove:hover { color: var(--error); border-bottom-color: var(--error); }

/* Konfiguracja w karcie: dwie kolumny, bez lamania po jednym slowie */
.ecitem .evaspec { margin: 0; }
.ecitem .evaspec__row { align-items: baseline; }
.ecitem .evaspec__k { flex: 0 0 132px; }
.ecitem .evaspec__v { flex: 1; min-width: 0; }

.ecart__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--s-sm);
	margin-top: var(--s-md);
}
.ecart__more {
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--accent);
	border-bottom: 1px solid transparent;
}
.ecart__more:hover { border-bottom-color: var(--accent); }
.ecart__tools { display: flex; flex-wrap: wrap; gap: 8px; }
.ecart__coupon { display: flex; gap: 8px; }
.ecart__coupon input {
	width: 150px;
	background: var(--surface-alt);
	border: 1px solid var(--line);
	border-radius: var(--r-pill);
	color: var(--ink);
	padding: 10px 16px;
	font: inherit;
	font-size: 15px;
	min-height: 42px;
}
.ecart__tools .btn { font-size: 14px; padding: 10px 18px; min-height: 42px; }

/* Podsumowanie */
.ecart__side { position: sticky; top: calc(var(--head-h) + 16px); }
.ecart__side .cart_totals {
	background: var(--surface);
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	padding: var(--s-md);
	width: auto;
	float: none;
}
.ecart__side .cart_totals h2 { font-size: 20px; margin-bottom: var(--s-sm); }
.ecart__side .cart_totals table { width: 100%; border: 0; background: none; margin: 0; border-collapse: collapse; }
.ecart__side .cart_totals th,
.ecart__side .cart_totals td {
	padding: 11px 0;
	border: 0;
	border-top: 1px solid var(--line);
	text-align: left;
	vertical-align: top;
	font-size: 15px;
}
.ecart__side .cart_totals tr:first-child th,
.ecart__side .cart_totals tr:first-child td { border-top: 0; }
.ecart__side .cart_totals th {
	width: 40%;
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .1em;
	color: var(--muted);
}
.ecart__side .cart_totals td { text-align: right; }
.ecart__side .order-total td .woocommerce-Price-amount {
	font-family: var(--font-display);
	font-weight: 800;
	font-size: 30px;
	color: var(--accent);
}
.ecart__side ul#shipping_method { text-align: left; }
.ecart__side .woocommerce-shipping-destination,
.ecart__side .shipping-calculator-button { font-size: 13px; color: var(--muted); }
.ecart__side .wc-proceed-to-checkout { padding: var(--s-sm) 0 0; }
.ecart__side .wc-proceed-to-checkout a.checkout-button { width: 100%; font-size: 17px; min-height: 54px; }

@media (max-width: 1100px) {
	.ecart { grid-template-columns: 1fr; }
	.ecart__side { position: static; }
}

@media (max-width: 860px) {
	.ecitem { grid-template-columns: 72px minmax(0, 1fr); gap: var(--s-sm); }
	.ecitem__thumb img { width: 72px; height: 72px; }
	.ecitem__name { font-size: 17px; }
	.ecitem__side {
		grid-column: 1 / -1;
		grid-template-columns: auto 1fr auto;
		display: grid;
		align-items: center;
		justify-items: start;
		text-align: left;
		padding-top: var(--s-sm);
		border-top: 1px solid var(--line);
	}
	.ecitem__price { font-size: 22px; }
	.ecitem__remove { justify-self: end; }
	.ecart__actions { flex-direction: column; align-items: stretch; }
	.ecart__tools { flex-direction: column; }
	.ecart__coupon input { width: auto; flex: 1; }
}
/* Strzalki liczbowe w polu ilosci tylko rozpraszaja przy jednej sztuce. */
.ecitem__qty input[type="number"] { -moz-appearance: textfield; }
.ecitem__qty input[type="number"]::-webkit-outer-spin-button,
.ecitem__qty input[type="number"]::-webkit-inner-spin-button { opacity: 1; height: 26px; }
.ecitem__qty input[type="number"]:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(255,107,0,.2); outline: none; }

/* ---------- Zamówienie ----------
   WooCommerce wstawia <wc-order-attribution-inputs> z ukrytymi polami.
   Jako dziecko grida zajmowal komorke i spychal podsumowanie o wiersz nizej,
   przez co zaczynalo sie dopiero pod calym formularzem.
   Ukryte pola dzialaja tak samo przy display:none. */


body .woocommerce-checkout .col2-set { display: grid; grid-template-columns: 1fr; gap: 0; }
body .woocommerce-checkout .col2-set .col-1,
body .woocommerce-checkout .col2-set .col-2 { width: auto; float: none; }
body .woocommerce-billing-fields h3,
body .woocommerce-additional-fields h3 { font-size: 20px; margin: var(--s-lg) 0 var(--s-sm); }
body .woocommerce-billing-fields:first-child h3 { margin-top: 0; }

/* Pola w dwoch kolumnach tam, gdzie to ma sens */
body .woocommerce-billing-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 0 var(--s-md); }
body .woocommerce-billing-fields__field-wrapper > .form-row-wide,
body .woocommerce-billing-fields__field-wrapper > #billing_address_1_field,
body .woocommerce-billing-fields__field-wrapper > #billing_address_2_field,
body .woocommerce-billing-fields__field-wrapper > #billing_company_field,
body .woocommerce-billing-fields__field-wrapper > #billing_country_field { grid-column: 1 / -1; }

/* Podsumowanie zamówienia: zwarte, czytelne */
body #order_review table.shop_table th,

body #place_order { width: 100%; font-size: 18px; min-height: 56px; margin-top: var(--s-sm); }

/* Kupon i logowanie u gory */
body .woocommerce-form-coupon-toggle .woocommerce-info,
body .woocommerce-form-login-toggle .woocommerce-info { margin-bottom: var(--s-md); }

@media (max-width: 1000px) {
	body form.checkout #customer_details,
	body form.checkout h3#order_review_heading,
}

@media (max-width: 620px) {
	body .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr; }
}
/* ---------- Nawigacja etapów zakupu ---------- */
.costeps {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 0 0 var(--s-lg);
	padding: 0;
}
.costeps li,
.costeps li > a {
	display: flex;
	align-items: center;
	gap: 9px;
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: .07em;
	color: var(--muted);
}
.costeps li {
	padding: 10px 18px;
	border: 1px solid var(--line);
	border-radius: var(--r-pill);
	transition: border-color .15s ease, color .15s ease;
}
.costeps li > a { padding: 0; margin: -10px -18px; padding: 10px 18px; }
.costeps li b {
	display: grid;
	place-items: center;
	width: 21px; height: 21px;
	flex: 0 0 auto;
	border-radius: 50%;
	background: var(--line);
	color: var(--bg);
	font-size: 12px;
}
.costeps li.is-active { color: var(--ink); border-color: var(--accent); }
.costeps li.is-active b { background: var(--accent); }
.costeps li.is-done { color: var(--ink-soft); }
.costeps li.is-done b { background: var(--accent-deep); color: var(--ink); }
.costeps li:has(a):hover { border-color: var(--accent); }
.costeps li:has(a):hover > a { color: var(--ink); }

/* ---------- Zamówienie: jedna kolumna, podsumowanie pod formularzem ---------- */
body form.checkout wc-order-attribution-inputs { display: none; }
body form.checkout h3#order_review_heading { display: none; }

/* Kompaktowe podsumowanie kwot */
.cosum { margin-bottom: var(--s-md); }
.cosum__head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--s-sm); margin-bottom: var(--s-sm); }
.cosum__head h3 { font-size: 20px; margin: 0; }
.cosum__edit {
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: var(--accent);
	border-bottom: 1px solid transparent;
}
.cosum__edit:hover { border-bottom-color: var(--accent); }
.cosum__rows { list-style: none; margin: 0; padding: 0; display: grid; }
.cosum__rows li {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--s-md);
	padding: 11px 0;
	border-top: 1px solid var(--line);
	font-size: 15px;
	color: var(--ink-soft);
}
.cosum__rows li:first-child { border-top: 0; }
.cosum__rows li > span:first-child { color: var(--muted); }
.cosum__shipping { align-items: flex-start; }
.cosum__shipping #shipping_method { margin: 0; text-align: right; }
.cosum__total {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--s-md);
	padding-top: var(--s-sm);
	margin-top: 4px;
	border-top: 1px solid var(--line);
}
.cosum__total > span {
	font-family: var(--font-display);
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .1em;
	color: var(--muted);
}
.cosum__total strong .woocommerce-Price-amount {
	font-family: var(--font-display);
	font-weight: 800;
	font-size: 32px;
	color: var(--accent);
}

body #place_order { width: 100%; font-size: 18px; min-height: 56px; margin-top: var(--s-sm); }

@media (max-width: 860px) {
	.costeps { gap: 6px; }
	.costeps li { flex: 1; justify-content: center; min-height: 46px; padding-inline: 8px; font-size: 12px; }
	.costeps li > a { margin: -10px -8px; padding: 10px 8px; justify-content: center; }
	.cosum__total strong .woocommerce-Price-amount { font-size: 26px; }
}
/* Uklad zamowienia: kontrolowana siatka zamiast pywajacych kolumn WooCommerce.
   Floaty dawaly waskie, sciesnione kolumny bez odstepu. */
body form.checkout.woocommerce-checkout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 400px);
	column-gap: var(--s-xl);
	row-gap: var(--s-lg);
	align-items: start;
}
body form.checkout #customer_details {
	grid-column: 1;
	float: none;
	width: auto;
	margin: 0;
}
body form.checkout #order_review {
	grid-column: 2;
	float: none;
	width: auto;
	position: sticky;
	top: calc(var(--head-h) + 20px);
	background: var(--surface);
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	padding: var(--s-lg) var(--s-md) var(--s-md);
}

/* Wiecej powietrza w formularzu */
body .woocommerce-billing-fields__field-wrapper { gap: var(--s-sm) var(--s-md); }
body .woocommerce form .form-row { margin-bottom: var(--s-md); }
body .woocommerce-billing-fields h3,
body .woocommerce-additional-fields h3 {
	font-size: 19px;
	margin: var(--s-xl) 0 var(--s-md);
	padding-bottom: var(--s-sm);
	border-bottom: 1px solid var(--line);
}
body .woocommerce-billing-fields h3 { margin-top: 0; }
body .woocommerce-additional-fields { margin-top: var(--s-lg); }

/* Odstepy w podsumowaniu */
.cosum { margin-bottom: var(--s-lg); }
.cosum__head { margin-bottom: var(--s-md); }
.cosum__rows li { padding: 13px 0; }
.cosum__total { padding-top: var(--s-md); margin-top: var(--s-sm); }
.cosum__shipping #shipping_method li { margin-bottom: 6px; }
.cosum__shipping #shipping_method li:last-child { margin-bottom: 0; }

body #payment ul.payment_methods { margin-bottom: var(--s-md); gap: 10px; }
body #payment ul.payment_methods li { padding: 15px var(--s-md); }
body .woocommerce-privacy-policy-text { margin-bottom: var(--s-md); }
body .woocommerce-privacy-policy-text p { font-size: 13px; color: var(--muted); margin: 0; }
body .woocommerce-terms-and-conditions-wrapper { margin-bottom: var(--s-md); }
body .woocommerce-terms-and-conditions-wrapper .form-row { margin-bottom: 0; }
body #place_order { margin-top: 0; }

/* Pasek kuponu nad formularzem */
body .woocommerce-form-coupon-toggle { margin-bottom: var(--s-lg); }

/* Wiecej powietrza wokol calej tresci */
.sdoc__head { margin-bottom: var(--s-xl); }
.costeps { margin-bottom: var(--s-xl); }

@media (max-width: 1000px) {
	body form.checkout.woocommerce-checkout { grid-template-columns: 1fr; }
	body form.checkout #customer_details,
	body form.checkout #order_review { grid-column: 1; }
	body form.checkout #order_review { position: static; }
}

@media (max-width: 860px) {
	.sdoc__head, .costeps { margin-bottom: var(--s-lg); }
	body .woocommerce-billing-fields h3,
	body .woocommerce-additional-fields h3 { margin-top: var(--s-lg); }
}
/* ==========================================================
   GESTOSC SKLEPU
   Sklep to interfejs do klikania, nie tresc do czytania.
   Skracamy skale odstepow i stopnie pisma, zeby wiecej
   miescilo sie na ekranie i dalo sie skanowac wzrokiem.
   Cele dotykowe na telefonie zostaja duze - na koncu pliku.
   ========================================================== */

body.eva-pdp, body.eva-shopdoc {
	--s-sm: 10px;
	--s-md: 16px;
	--s-lg: 24px;
	--s-xl: 36px;
	--s-xxl: 56px;
	font-size: 15px;
}

/* Naglowki stron */
.sdoc { padding-block: var(--s-md) var(--s-xl); }
.sdoc__head { margin-bottom: var(--s-md); }
.sdoc__title { font-size: 28px; margin-bottom: 2px; }
.sdoc__sub { font-size: 14px; }
.pdp { padding-block: var(--s-md) var(--s-xl); }
.pdp__crumbs, .pdp__notices { font-size: 13px; margin-bottom: 10px; }
.pdp__title { font-size: 22px; margin-bottom: 5px; }
.pdp__lead { font-size: 14px; margin-bottom: 10px; }
.pdp__usp li { font-size: 13px; padding-left: 19px; }
.pdp__intro { margin-top: 12px; }

/* Kroki zakupu */
.costeps { margin-bottom: var(--s-md); gap: 5px; }
.costeps li { padding: 7px 13px; font-size: 12px; }
.costeps li > a { margin: -7px -13px; padding: 7px 13px; }
.costeps li b { width: 18px; height: 18px; font-size: 11px; }

/* Przyciski */
.btn, body .button, body button.button, body a.button, body input[type="submit"] {
	font-size: 15px;
	padding: 11px 22px;
	min-height: 42px;
}

/* Koszyk */
.ecart { gap: var(--s-md); grid-template-columns: minmax(0, 1fr) minmax(0, 320px); }
.ecart__items { gap: 8px; }
.ecitem { padding: 14px; gap: 14px; grid-template-columns: 82px minmax(0, 1fr) auto; }
.ecitem__thumb img { width: 82px; height: 82px; }
.ecitem__name { font-size: 17px; margin-bottom: 7px; }
.ecitem__price { font-size: 22px; }
.ecitem__side { gap: 7px; }
.ecitem__qty span { font-size: 11px; }
.ecitem__qty .quantity input[type="number"] { width: 60px; padding: 6px; }
.ecitem__remove { font-size: 12px; }
.evaspec { padding: 9px 11px; gap: 3px; }
.evaspec__row { font-size: 13px; }
.evaspec__k { flex: 0 0 116px; font-size: 11px; }
.ecitem .evaspec__k { flex: 0 0 116px; }
.evaspec__dot { width: 13px; height: 13px; }
.ecart__actions { margin-top: 12px; }
.ecart__coupon input { min-height: 38px; padding: 8px 14px; font-size: 14px; }
.ecart__tools .btn { font-size: 13px; padding: 9px 15px; min-height: 38px; }

/* Pasek darmowej dostawy */
.shipbar { padding: 11px 14px; margin-bottom: 12px; }
.shipbar__txt { font-size: 14px; margin-bottom: 7px; }
.shipbar__txt strong { font-size: 17px; }

/* Podsumowanie koszyka */
.ecart__side .cart_totals { padding: 14px; }
.ecart__side .cart_totals h2 { font-size: 17px; }
.ecart__side .cart_totals th, .ecart__side .cart_totals td { padding: 9px 0; font-size: 14px; }
.ecart__side .order-total td .woocommerce-Price-amount { font-size: 25px; }
.ecart__side .wc-proceed-to-checkout a.checkout-button { font-size: 15px; min-height: 46px; }

/* Zamowienie */
body form.checkout.woocommerce-checkout { column-gap: var(--s-lg); row-gap: var(--s-md); grid-template-columns: minmax(0, 1fr) minmax(0, 340px); }
body form.checkout #order_review { padding: 16px; top: calc(var(--head-h) + 12px); }
body .woocommerce form .form-row { margin-bottom: 12px; }
body .woocommerce form .form-row label { font-size: 11px; }
body .woocommerce form .form-row input.input-text,
body .woocommerce form .form-row textarea,
body .woocommerce form .form-row select,
body .select2-container--default .select2-selection--single {
	min-height: 40px;
	padding: 9px 12px;
	font-size: 15px;
}
body .woocommerce-billing-fields__field-wrapper { gap: 0 14px; }
body .woocommerce-billing-fields h3,
body .woocommerce-additional-fields h3 { font-size: 16px; margin: var(--s-lg) 0 12px; padding-bottom: 8px; }
body .woocommerce-billing-fields h3 { margin-top: 0; }
body .woocommerce-additional-fields { margin-top: var(--s-md); }
body .woocommerce-form-coupon-toggle { margin-bottom: var(--s-md); }
body .woocommerce-message, body .woocommerce-info, body .woocommerce-error { padding: 12px 14px; font-size: 14px; margin-bottom: var(--s-md); }

.cosum { margin-bottom: var(--s-md); }
.cosum__head { margin-bottom: 10px; }
.cosum__head h3 { font-size: 17px; }
.cosum__edit { font-size: 12px; }
.cosum__rows li { padding: 9px 0; font-size: 14px; }
.cosum__total { padding-top: 10px; }
.cosum__total > span { font-size: 11px; }
.cosum__total strong .woocommerce-Price-amount { font-size: 26px; }
body #payment ul.payment_methods { gap: 6px; margin-bottom: 12px; }
body #payment ul.payment_methods li { padding: 11px 14px; font-size: 14px; }
body #payment div.payment_box { font-size: 13px; padding-top: 7px; }
body #shipping_method li { padding: 8px 11px; font-size: 14px; }
body #place_order { font-size: 16px; min-height: 48px; }
body .woocommerce-privacy-policy-text p { font-size: 12px; }
body .woocommerce-terms-and-conditions-wrapper { font-size: 13px; margin-bottom: 12px; }

/* Sekcja z filmami na stronie produktu */
.evawhy { margin-top: var(--s-lg); padding-top: var(--s-lg); }
.evawhy__title { font-size: 26px; }
.evawhy__lead { font-size: 14px; margin-bottom: var(--s-md); }
.evawhy__grid { gap: var(--s-md); }
.evafilm__title { font-size: 18px; }
.evafilm__text { font-size: 14px; }
.evatemp { margin-top: var(--s-lg); padding-top: var(--s-md); gap: var(--s-lg); }
.evatemp__value { font-size: clamp(40px, 5vw, 68px); }
.evatemp__title { font-size: 19px; }
.evatemp p { font-size: 14px; }
.evafacts { margin-top: var(--s-md); padding-top: var(--s-md); gap: 12px; }
.evafacts b { font-size: 24px; }
.evafacts span { font-size: 11px; }

/* Naglowek serwisu */
.shead__strip { padding-block: 5px; font-size: 11px; gap: var(--s-lg); }
.shead__inner { min-height: 56px; gap: var(--s-md); }
.shead__brand { font-size: 17px; }
.shead__brand img { width: 32px; height: 32px; }
.shead__nav a { font-size: 15px; padding: 7px 11px; }
.shead__phone { font-size: 15px; }
.shead__cart, .shead__cta { font-size: 13px; padding: 8px 14px; }
.sfoot { padding-block: var(--s-lg) 12px; }
.sfoot p, .sfoot__links { font-size: 14px; }

/* Cele dotykowe na telefonie zostaja duze mimo zageszczenia */
@media (max-width: 860px) {
	.btn, body .button, body a.button, body input[type="submit"] { min-height: 46px; }
	.costeps li { min-height: 44px; font-size: 12px; }
	.ecitem__qty .quantity input[type="number"] { min-height: 44px; }
	.ecart__coupon input, .ecart__tools .btn { min-height: 44px; }
	body .woocommerce form .form-row input.input-text,
	body .woocommerce form .form-row textarea,
	body .woocommerce form .form-row select { min-height: 46px; font-size: 16px; }
	body #place_order { min-height: 52px; }
	body #payment ul.payment_methods li, body #shipping_method li { padding: 13px 14px; }
	.ecitem__remove { min-height: 44px; display: inline-flex; align-items: center; }
}